public inbox for archer-commits@sourceware.org
help / color / mirror / Atom feed
* [SCM] scox/strace: Handle T packets and all signal types.
@ 2019-04-01 14:18 scox
0 siblings, 0 replies; 2+ messages in thread
From: scox @ 2019-04-01 14:18 UTC (permalink / raw)
To: archer-commits
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 4531625 bytes --]
The branch, scox/strace has been updated
via 9e8f1a71428e1266d47d8cf4a809257c363b1933 (commit)
via 2ad04d13ca374ad23978e3869604ada84f03cb94 (commit)
via 45147410465dfc606c31cfa699ce713fde14f28c (commit)
via 99972adf78af3e7bdbbfe0fd0f562f9a7952d2a3 (commit)
via 8f531a8d1f9b9b9061368ddd89d1b7e7aafe9e38 (commit)
via 31aceee86308321c2ef299e50773d0043e458e7f (commit)
via 109be305bb6acf7604f95411f333549f33a673bb (commit)
via f11acc5ec0b9cd35e3582b8f9eef6be5d3c59ad7 (commit)
via 9e237747bd1fd7b371fed5edb91dd9baace4b2dc (commit)
via bcecc11da243fe5c333f9d2d914663d09f4b868d (commit)
via 8a6b075bc07f66678ed0176f895847df3ea7fcef (commit)
via ddea148b3da27eb681504bf341f45abb7a74580b (commit)
via f86e17aacf47c7b49ed0f6b23a481784f3946133 (commit)
via bc52d49c1d0e9b5d196132efb41addaf0bddad4f (commit)
via 0632eeea6eb1096fe7ddbd7f81bd74b360d1f511 (commit)
via 715537181e9ba6ab371265fc4455d89533202fc5 (commit)
via 2eac3da184459607a476ebb5dcebd6e0acf9fefa (commit)
via 4dd4e6394509d58685daea52cc6947c45fd7ee9d (commit)
via 9819647a63bfca45a879650ac23fe80f51b89edb (commit)
via 58a211d2602df0a39779c84a344b1b4d12deb2d0 (commit)
via b50c9f31661be05bcd73fb1158e02f606e696948 (commit)
via 931d03b75aa934abc10a70f1aa3ca1192f32ed3d (commit)
via fd71a3756e2dd1eae116d77dc5ec58391c4840d8 (commit)
via 563c7eef61a1835973b857eaa7372ec66fc91d64 (commit)
via 0aaca1d90a2f9f075852b2ea5907937cca037044 (commit)
via bbae6b11eb3a3c4a4c2f589d6c2b30e3c6b97c04 (commit)
via 50cab6efce0f96fb1901595dc7a516de865f9c80 (commit)
via bb20ccab70b378cd3f9cdb6a4c84e2d350e2de8f (commit)
via 8e6a5953e1ddb327d870b79e6ccd2fd4a92d6fde (commit)
via a4749e56cacefdc1a571231744a9b87a3f5458b9 (commit)
via e60f4d3bdac25f02875afe36b7436bc2dfbbb978 (commit)
via 713f1b445a18af04eafbf8df6f844bed8243963f (commit)
via a31abe80ea4c45b544f3ae04bc63ccaeba530e0f (commit)
via 833d985d1c7f69f953a5c7ddcf2af1d001504961 (commit)
via 12dfa12a3cfd4552c0cc4d7b271ab3e9c439589a (commit)
via 9446bd8ad68d5e20151f3066104b575534c9ecda (commit)
via 675accbdcb5b50182a10dd112b7179b5b6337191 (commit)
via 470678d7c92df4c016c6b4d8dadbd5d5e86cb5ff (commit)
via 814fa4f632006dace09b131021b949021dfb58bf (commit)
via 3c6dd3d1c76a4a55555a2df85140ede39e8363cb (commit)
via a1fb41caab99ca970a595af4fee7915019d2e9a3 (commit)
via 34156b23862e9719355569182d594c7a9e38047e (commit)
via e8bf1ce461df242811e49de807f85c2e7ae17b77 (commit)
via d54cfd762b060ad167bd8e947e4ea212c0eb9b83 (commit)
via 396ce9988361a812ec620ac392839dbb9594db62 (commit)
via 285e3f99c77510344021b1252c594b28fe7971e8 (commit)
via a4bcd733712abd892aa7fe0d79a3f999b461f119 (commit)
via 3ba2ee38a648b7f52e77700325b26137f6332fe2 (commit)
via c175004a5380168cf16b489d58c9402ff3d75039 (commit)
via e2b7af7242c99e503747a43775d94beda90cb24e (commit)
via 8b578f9c7626f57f5adb9e4a52f5b0d6c8f6e0a0 (commit)
via 87f7ab7b84c5c423f11e8ad0ebefd69e9d08c401 (commit)
via 1cc62f2e4443384e300586683aa1f8197c81cbc5 (commit)
via e1c3a3737536c57e43d4ad693341717e326f4e17 (commit)
via e8d8cce69b34481a27562267d94a1aff19b05518 (commit)
via 33ea299c25134ce23805faa6b2b1e7fe6327f6bb (commit)
via cdcda965ea4c70c80b9f8c294597e991417ff9d5 (commit)
via 38642de318119d116c47eaff52ad9a7edb032c11 (commit)
via 656efb5e2691b2bd29573d9985d20206c47b6927 (commit)
via 92dcebf3fa5ccc1cae8fcb93eaf08ffea52957e2 (commit)
via 68b9ac18cf6ae8d76828357982c106d57c695ad4 (commit)
via 0b4d000cc4e8e77c823e43fb547aa5e3a7247e87 (commit)
via b555fb21f98143582541e1a3bf58695037ca617b (commit)
via 1443936e967d4a0a49acb8756e3f808dc3628318 (commit)
via f32a4a593963d4c377fd59f4164c9df2cd6a7590 (commit)
via 64f57f3d7d7b8e7bf9f57caa1389ac5ee3ecfec7 (commit)
via eb77c9df9f6d2f7aa644a170280fe31ce080f887 (commit)
via 664306bcceb99fbe021ceb701a7192d62234f327 (commit)
via a66cf75c9cbd7ee9abfd3ca2f3a82fb32ba83387 (commit)
via cd53832b008b25222ec55bf947e3700528ee0814 (commit)
via b4e093995600e8f482c10467379f9395b4871ca2 (commit)
via c1230d1bab8e36e1aa40f3bbadcef9b5d9ddc041 (commit)
via 4d5d104997da3b7beaaf7920caee40dcff8a78d9 (commit)
via fd332753fa7050bb9d7c89147e32d285099fe402 (commit)
via 9c3adfb9a409a240bb4cf087f0adeb8b1472f67a (commit)
via 80e24d09860dbeba7d435b4a4f0990f85dbc084e (commit)
via 6a0b3457ee0c51fcc0708b630cc3cdd66226e9a6 (commit)
via 6cf3675653e477ae0755195171a6a256a2aa8ac0 (commit)
via 431f22cc098a118a862412c1bac1a8aa1bc6ceb7 (commit)
via 7f53228719a0111e41c66da6c9c3b2ed1fd2aab9 (commit)
via 30a7953dbfe3659c7bdc5b9b4c96f46903cb0254 (commit)
via 727a29badd95a68d08b86fec0b98702ce756c660 (commit)
via 5c87f94bb85e5b8e715aa7f947ecc602960f20ee (commit)
via 55d5520ae35a2b0ce788bd6d43dd619043e887f7 (commit)
via 8d1015a887c18c363d9bd707b13348daf4e5f556 (commit)
via c2e863866d9b206c387d8fdc0f1bfa9f246e4355 (commit)
via 98a17ece013cb94cd602496b9efb92b8816b3953 (commit)
via cad26cec079bf79d078bb92ecc6b7cf1df2e5845 (commit)
via a3d7226832e5750211ec300c5929dc0f035a3661 (commit)
via 8fc91c409847f0d4e3e4cdac8161158fafd78636 (commit)
via b0d99ba9e9c7d7967b53e271e683b7563b710dae (commit)
via 9da2bd6ac9b1c15f6ba4f6e87fc8571aee8efa18 (commit)
via cd948f5b2be612b784591dbe438dc518f6b80d61 (commit)
via b50a8b9a916ea2fe1379bcd8f122feef8129a0e9 (commit)
via 36033ef57cd048588f9a3d5523712147066421f2 (commit)
via b3279b601e67ce47263082ef86cfc86e25607c5e (commit)
via e418a61a67a3476826259163383e5deb661042cc (commit)
via 29be4d9dee1263b36e33421dd8ea69b9b7308391 (commit)
via 974e68446388769f023c6c9bfb1e67ed75199618 (commit)
via c8ee3f04a66141d5fa930cd77bc53ac0bc17de32 (commit)
via 82b5e646c22b25862debc68a30d44957a9e5e3d3 (commit)
via e0a7911fa24e838e3e11481903dbe9c3970306d0 (commit)
via d321477b39b44f2b55834ceae7911563d9f5db15 (commit)
via 12615cba8411c845b33b98cc616439c66a34f03a (commit)
via 0d4cad90ca7c4394a1799efaa79c784f84a18161 (commit)
via 6951e9f3e219cb6867beccb48dde39530e48d582 (commit)
via 4c39bc03545798694b4ed2a5cd5caedd7ce3cc50 (commit)
via fd2b4de5e63ad5994baf9c57b5d0c49d1f1dd4e4 (commit)
via d7ded98f4cf9891cf04fe6af5c90b6af6709dff8 (commit)
via 77c6f5fcdae65da0428ff75fa81059f1b5271cf0 (commit)
via 8a61382623e271fe2df0fe8f7558ea545db8b561 (commit)
via 8d619c01db64c533df3ffc706b694f293347f0d8 (commit)
via 81ab84fd6cdaab121988e0c424f8cdc0ae472e14 (commit)
via 232bfb8644f0a083969d8359a37bc23764642611 (commit)
via f2cf6173f33bbb562881c571bfecd129fe94b158 (commit)
via 7ca18ed6d22398dd3009ba72d3a1e7747e40753d (commit)
via 93b4691f0fe1f8249de3c3f9d2e271cb0ba3254e (commit)
via 71733a7bf696fd54b1c75a2c9c16fd61819c0ddb (commit)
via 3d907528ca584b522125ce4ac818f45dfe7a9a24 (commit)
via 500f01a0e2f79d64cc08011ad70c6ffa1e1c7694 (commit)
via 7ed29001c4a965520f6a243ec7ad41c156f96a20 (commit)
via 5c849b222b154cd5f481fee9d6f3971bd2eeddc2 (commit)
via afde3032dde478a2bbb2e0c4b0cb4256b27eb949 (commit)
via b971899198607b844f5a37e39dc561766c3b331a (commit)
via 0b0eff8b1d8b4fe51ad3a14f60816f98bc0e963a (commit)
via e8138a6b782685a5b5b262b793cea90ebaec1d37 (commit)
via b69e1ff3507b3ba841f59dcf9bb121fcdd78044e (commit)
via ac732bc9fd501d1e9288b6087848cc3ecabafe0c (commit)
via bfcc0eba9e66f3793feecc059f80e97d03dbdbef (commit)
via b352ceb6b4fc9f026944d307704076d1e6894de9 (commit)
via 50db9ef4c014d28dd64b2d660b043a40224a1a27 (commit)
via ee67fd7f3f6ca78eede2862e309c0bcf266bbd7e (commit)
via 0a640d719684f25bdb88ae60148c6978e6131701 (commit)
via 0e139b87870258ce666826efd14fafd543c778d0 (commit)
via fe1a5cad302b5535030cdf62895e79512713d738 (commit)
via 8c246a60c08d82066b16973bcd622e671300eb02 (commit)
via a76dc3b7705c5c85efc00521ebfac49e80c3fedf (commit)
via 4df46df7a4643c0f6f93a2739c4b7bc0e83bcdce (commit)
via 20784627bfe0a33e954f8af786eb3a518ace5dff (commit)
via bea556ab08927862bc2e052d3b93f1d82055d37e (commit)
via 35ed81d4f45855b98ea0c517b396662c3ae2a8c5 (commit)
via 79b8d3b090bcbfbcffa8bdd195476c6db172273b (commit)
via f47998d69f8d290564c022b010e63d5886a1fd7d (commit)
via 51d21d60b37f1e1a0aa6fd1f5439b22591fa6d5f (commit)
via 88f5cc8cf8606478832c7d0d7b74755f3f625015 (commit)
via 0a163825df5e98ad55de13eb3d3534d875943047 (commit)
via 6d0f8100c1a3053c967bec716e34b65dd054cc39 (commit)
via f19c7ff839d7a32ebb48482ae7d318fb46ca823d (commit)
via 2849d19feb458ade67cdcc6a82f0e7b1be99b46b (commit)
via 405b61965ff7608840cfda36083c1be1f926ccdb (commit)
via 420ecd9ce8a3d61f950bf24d8d7b8827d09f59db (commit)
via 45a0eaf77022963d639d6d19871dbab7b79703fc (commit)
via 102def4da826b3d9e169741421e5e67e8731909a (commit)
via ab419ddbb2cdd17ca83618990f2cacf904ce1d61 (commit)
via 8e3152af14a91df65af8e922a0e8e77c60ed99ba (commit)
via 5a77b1b49f49cc5cfdb30727d8fc1bf456cad429 (commit)
via 0dbfcfffe9abbc5198bce95eb8c66b6bc9b364be (commit)
via ba37fe2e8b13194a1ef216f4224d7521e748e1cf (commit)
via 3399f1b3030c3419859f1230bc66a981154d176d (commit)
via 270b9329b713fdc166f95dfa3a0a2f72f3a49608 (commit)
via 192c2bfbd7a6d4b2069f6b94b020d274a483c198 (commit)
via 1f38083f425e03faf55595414daf291306738222 (commit)
via e1748c54a200f45d6e88c232ca97171be23ba0b0 (commit)
via 38cf168be5816b098cc05abffc482fc905db86a2 (commit)
via f6efe3f842e72e23ec6d8a57d683ce90d2e89785 (commit)
via 925047fed0d6ab86e6fe86d3e22e1aa9dde7b3eb (commit)
via df80d00c5f4da112b6803ce472c1396c0c4a342b (commit)
via b8265d61940e9e61db1c7d48c9981b50670d81a2 (commit)
via 4051d2d65a73f02cfd2baebf8803fe2880dbd76c (commit)
via d6677607c2e96c28178467894fa3fe9ba6db7c27 (commit)
via 1a088a2e2628409832326254ce1c42ccf671e847 (commit)
via e4c2619ad1f31cf73d275b027e8c0cf9c6e9597a (commit)
via ac85e67c053f1555def2c111962f4e68740794f9 (commit)
via 91ae256e33f7c068443d877fe3e2b2ffd91cf60b (commit)
via fe19e45ff30986ed0751332b2128c0737efd2838 (commit)
via 7806cea72329a354c36ed8b2177d03f9d5e2673f (commit)
via 84371624ada07e6f107ee14c48a609466055fe0d (commit)
via 22ad8107d35d833db000e5a5050c0f53af7af51f (commit)
via bacb77d0188ff37bacdbb211edd7e2419406b864 (commit)
via 74b3c713184abb8e07f92c4e069ebafde78c0a0e (commit)
via 0667c506823489f2fab1938d3fc8ee27f8a7c651 (commit)
via ba543ca5afafed5bda2db52e8f424f20ff605173 (commit)
via b04480b11925aff2a1d2fbca30908801fd46c7f3 (commit)
via 2c6ac8d7ce6e018168c17b11d978b25dba721554 (commit)
via 2bc69f2588c0beef39a56f057f61f6a063ed4405 (commit)
via 1f1ae3a34faf8217bd253fa12b4d0abaaa42c2d2 (commit)
via 0b347048e7e33070212a408dc2371075ee60b556 (commit)
via 33d64ca5db656f1f377de18f94403d8b3b91e3a1 (commit)
via 08acaf5caf47225ff94dc5e64ce8edce6664615a (commit)
via 94c18618a8e29894a7b3104375e0510d71a568fb (commit)
via f63085d15f05eb296744ba634edfc68ca806e578 (commit)
via 812cd6eb0502fa87b6e1d3e751ac2e9239680cf4 (commit)
via 841ef605eed1e91c1ef450e6931216644999f04d (commit)
via 89eb3c547018af6a41ce9b3614cc2ab9a679168b (commit)
via 6f3b1098e820cef84709ef71c287c4b72e6c671b (commit)
via d500b4f23fc329f5c8cce6ee8fa3629c0f130038 (commit)
via 4de5434b694fc260d02610e8e7fec21b2923600a (commit)
via c69f6b80965608480be970c3c42f9da1b08a3ef0 (commit)
via c4b90788516fd431c86c22deac5001d6c4648227 (commit)
via 66e6f0b760c2480e4ebdac8169adcee1fc31f689 (commit)
via 48dcd4ea064ae86364dacbf4dd7f035fba56151c (commit)
via 8df73d5cc3a87101f3bd254f33820fcce61bc971 (commit)
via feceaa596ebd1da9d8315c8ce74e45df4384da15 (commit)
via 08ea4a7805705668c2c4c63b858b6641d052f7e7 (commit)
via 63a33118e05a84fbae40cbe3ef955b52bad359a7 (commit)
via d53eec4ef86cf85841ceaec7db99753827f2beee (commit)
via 640be958cd6bdc339211f29851e69a297033e172 (commit)
via 0e0dd7f1e8b64efff9a981d0421ffeaeff70cd20 (commit)
via 933e62b1c17b1cf396f8bf8e17a066d03226533e (commit)
via bf2dd8d7cf4114b8a60dbb83b340f76b9b2474d1 (commit)
via dc86962bf15e7b8dfdcebc17d83b9b48be0bd9cb (commit)
via cf8d3709ebe8895591cb3bd5c8f79bdaef9f194a (commit)
via 0930cb3021b8078b34cf216e79eb8608d017864f (commit)
via 2bf2bf23da5237f465fdbb759657aeb7825a08a3 (commit)
via 8bca297856b2e54ac093674554f6abd82e7ce6b0 (commit)
via 032c98ec5206ac120374aa9d990c1d58bee976a4 (commit)
via f9c49bffe616013ba97f679afd3446a8c87d80a7 (commit)
via fe4ba873246386204af4da6bcadd8c01bb7f86c7 (commit)
via d4330bde6891c74498cea8866ce9992181798861 (commit)
via de564eb5cc8c67fc38f9910937935eef5ebc17d8 (commit)
via fbe61a3661b083a666e6550b3b0c2de364e6d4a6 (commit)
via a9597defaf39e2277c4c5ff510e708f226f54fbc (commit)
via 30653a8a7da3e7b7d3b17b0bd8ffe7c6d40b7193 (commit)
via 8ecfd7bd4acd69213c06fac6de9af38299123547 (commit)
via 33b031ce7a9b8b1b7c729518af965b7cb70a1cd6 (commit)
via 2cb2ba9a5b7fe39f30604650efa64cff05cb72e4 (commit)
via 673fe0f0a7a0624819f1b4cdc289f43691567e91 (commit)
via 43f6cd0588a735c202934789d67b6ed4302f255d (commit)
via 8ab159a96565be6e60f8d88ba3a4638116f7e9d3 (commit)
via daff3a48c17625ade8b57cf770fc77b4c1815df2 (commit)
via 163cffefafb1d427ab46603d98bbfc45e813c9a0 (commit)
via eff98030f90d3dab4c7d133ab0b0cb02d1921543 (commit)
via 104fefeebb544b7745bb353b63110afa46119647 (commit)
via a97330e723cf3c639a951329ac5fe2797528249b (commit)
via ff6054520cc86ac2f34c21bcc2e44ede50b56cdc (commit)
via af4bcb4ce6939da1738c847a06789d2223b67ca4 (commit)
via 3fd229a447cd28a70bfd921f617bc6c3553b8fdd (commit)
via 2ac435d46608be7ef90f80aaf9ff48443aea571e (commit)
via 68dfbb92ef5f013a315d652c88ede2082c16a88e (commit)
via 13c60ad7e1211ee1dfbf6bfb5e35110a33e4eed5 (commit)
via 70d561813cd4da84109395c36662a187411a4d97 (commit)
via 58bbcd02dee8ba018b97706c068ed8ed7afac15d (commit)
via 04fd5eed91c0a960e1706fb627912ad6350ae391 (commit)
via 1c2649ed7481881cb963bb53251a79bfb8b1047e (commit)
via 35dc7e6b77c6d379dda8072e9f0b88a24c008d06 (commit)
via a0c3048e3f397a595a14208e82e21399131f782b (commit)
via a51bb70c8a1570f2e6fa74432578bcdf7f2785aa (commit)
via 74792ff782431ec6113b9a8a8e85b95f46094c7f (commit)
via ed65e20bc7cd18406081cf5ba29f9c9bccd4e52f (commit)
via 498f740792fe0edd2955c5cee6bb864f60a5b173 (commit)
via 9f6b697b0efd4ba4e2cb21ac17d2b18a23f81abd (commit)
via 780f601cf3bfd2eb141c2ea32b673b5bd0956a33 (commit)
via 80f3ac5d61a5d01d7cf951de0e24ecdc71c545cb (commit)
via f3e660db14a0a95f3953496d8beb7c58ef34c6d5 (commit)
via 64029e93683a266c38d19789e780f3748bd6a188 (commit)
via 7358942661ccb0ea1e819fd2f5d47914cebf0aa2 (commit)
via 5d695627883b32cf33adb529c8fc7271b46dcf55 (commit)
via 1b9e270b09c140464a7892c95c28eafa812c6b08 (commit)
via e0c3dfa2eebcf862d45b05f363a81f57ca30dead (commit)
via 00bee008e9f7d0b3adf3278962450944653787f8 (commit)
via c258c396faa626a4c7929a5ec97ee9b294073c5e (commit)
via 25cbdcbbc5d2d4ca834790b1d370fe5159b560de (commit)
via 9e1698c6186a3239479058d2abe195a384d5ee6e (commit)
via de3e5eca9908ef76b53a091c356be4855dcfd1e1 (commit)
via add5ded5e476918ef8b05823801531de2f51fa9c (commit)
via 51e78fc5fa21870d415c52f90b93e3c6ad57be46 (commit)
via f9e48344d54f45368a5e449fb2ccca70a723cd3a (commit)
via a8a5dbcab8df0b3a9e04745d4fe8d64740acb323 (commit)
via 2a8be20359dba9cc684fd3ffa222d985399f3b18 (commit)
via 2fb009bbd1d65a837e5032e744ba30b49c7f472a (commit)
via 9e9b8787e962890a5df7ca109e40e87697610cb0 (commit)
via 7a9569281a63e472750e3b7b481e2cdf5c931ed8 (commit)
via e04caa70901ed44eb9537ccdbd286fe9b0a46ce2 (commit)
via ce3a1736b59a05128049459fcd6c91c221f40257 (commit)
via a4e78aa5fed5ba2cc343c76b78d062291a6fb659 (commit)
via f8740dc531c006311ee9f7287180550fe46a94ab (commit)
via d1c86cff1ecdd1027bd224d38f2161196e9955fa (commit)
via dad0c3bfb5e32ff3f2a03830dc189fe207c7ae00 (commit)
via 7fadb25d6faf2665305016ceb4aeaeeb86015569 (commit)
via 23f233a595dc7d8b9a6ababe7c4527f743c0cec1 (commit)
via 96643e35c077ed36c74b231ceefa4c30b3b02e28 (commit)
via d951f98b3c8bf202571327d8679ae30ca1da9fdc (commit)
via b8c888478d517a39d8b0104857d573e47620a3d1 (commit)
via ef789dc484a35159ad825c98c4a2502f2097aed7 (commit)
via 3fba72f7612c071f07fc7e65887bd1e8e056e272 (commit)
via 795afcbbb4b6c9a47597b9da57221b1bf9fdc88f (commit)
via da4ae14a4d1614015f6e8d4a37df1b882806630a (commit)
via b926417afaea99ed17663e06d6654d0048536017 (commit)
via 1f88d0c87c37d3a15fa6376335e8b0d1c79d85aa (commit)
via 1f041c6edf49a896b99db253066fce427a7d2264 (commit)
via 07f5f4c683879e844d20d0d4963bbaf1b7cd47b9 (commit)
via c8e98e3692cec125b92c995d8f881d9bdf1fac00 (commit)
via f2c1801f6255a3f9f483ae2f07c7d7da0ddae4af (commit)
via 1c4f3780f7d939402cfe555007ebff45c8e38951 (commit)
via 4677effd9e320d9f09337ef17bf0dc0377a9e8ce (commit)
via 5c4481cc9bf9dfec3c35aaf5d95b08542ab8970b (commit)
via 96b1ad866b1c861f772c5a11b556766c73c3d1ab (commit)
via d2f7dcb218cc281288a5c3ea800a186c68f9d2ae (commit)
via 3e1b4df89cfa5171c52245d79434774f4b570ae1 (commit)
via 5ca8c39f059b30991b7090e7a662e4eb35d11133 (commit)
via e79497a160f38368688107520d7d1bd0aeafc1c7 (commit)
via 3453e7e409f44a79ac6695589836edb8a49bfb08 (commit)
via 6afcf761c2d8ffcb04ede75d1e670042e196bc5b (commit)
via 22068491adac735905948fd4c2e9aaacf9e22e06 (commit)
via 9fdd7193e7fd041e9ff311a69dc02aecef53070f (commit)
via 3f2cf4dcd578d60fcdbbc28e720badffe8c15661 (commit)
via b35334aa98b75e4e166d30d673fd3bf1238dc7b7 (commit)
via fef1b2933d911476c52418ae7c207d94e13ebb97 (commit)
via 4f9bdf7fa52ba0d520647d0b69fe94e523fabf56 (commit)
via dca0df07ae4ab31c51a40edeb3e5cda7587f9beb (commit)
via 6d0a6093c5fe82eb4c2b67d3d10fa44eeb0bc98b (commit)
via 875e539851bb2702f3292f819e220545a8776242 (commit)
via a4cf95167c83c0b8c9dcd55f475a3b028eb883fc (commit)
via 8634679f82df75cf482b0c0814c2b3865da91d22 (commit)
via f35d5adea1cee8ce9141ad85a7e59d008c2e4d42 (commit)
via 1dffa580e7e083a43216fd7cbcadd72c760cf29d (commit)
via 5e70ee0905a848701bb929a66f84ff2e212cfa81 (commit)
via 4dd1b46077b2ae7331f274f7888733de5166445c (commit)
via 20562150d8a894bc91657c843ee88c508188e32e (commit)
via d359392f976d48b04a27e6a09b5b61846b0727f9 (commit)
via 0101665f864383147448c5871a67286a3f7a9a28 (commit)
via ad69edbb4b230582ecd1863e68d0c2044f5ad901 (commit)
via 780942fc2422d80a49b748e484890f11db31f49e (commit)
via 10657c047e4e0257440c80fda5f4e23a3452616c (commit)
via fb9bbfd7f2d39a1d4850fcf0f63ef1f077f55e4b (commit)
via 34c0fc000f5202dc8f5feeb35d682913ee508230 (commit)
via 1887ae7304dced5b081ee200a9e27fbb8f180143 (commit)
via 23e463ed7c0d289e2291aaefd576bf02efd98df8 (commit)
via e66cfcef729d758a5e605d57600530ad9b1bb9c3 (commit)
via bde90be2cddc06371ee80a258bf6855d0f346324 (commit)
via 4f5d2536289c0aedc3234f1bff6e9f4284f267c5 (commit)
via a68f4cd235a36776d3d9fea7291163b8d8e35869 (commit)
via 755b748fd9fbee8cad2e55535d23298e8ac76b15 (commit)
via 1d4823943d92e7fccb0616f885c029d9952cfb0e (commit)
via 7e84b55d8f973b011f55f604a76c2d1d989d0b6b (commit)
via eae424aef0b14e1765602088ac866b95d14d4a22 (commit)
via ca98345e0b3fda08ae79e4cb07632eab84ef6ef2 (commit)
via c8d3f93237d77f76d14e09e44bc770ce9428b0e4 (commit)
via 527b9e87ac1915aec4c26f96951c3b49a145bc88 (commit)
via 8e90d6d2c2f84abf25efc669e10efa3ae29b1039 (commit)
via 007d2fe43e27fa38a0bc1e22c5f5fb4ee945830d (commit)
via 2398abf8bca3563ddab4bd41c710af8027fe2919 (commit)
via 53c30c89d160e83ba3870693a9b32363c6811ede (commit)
via 64a336ac134ebd7f9452a7088e90e29551465251 (commit)
via c1168a2f66553cd4730931cf59e3be8378a1a03f (commit)
via eb528ad18b276117cb1016edbb12419819786366 (commit)
via 3d5b1c0abe2c80ee454ad3057de8317579fd7c26 (commit)
via a0389de085c9caca66ec53bcf7faf830cbf24b89 (commit)
via ff34e6ae3867a5686b53ce3b69584c1c3b553d7d (commit)
via 6bb8890e2ccf2b1ae7860fcb6fe4579c4aa9ebf6 (commit)
via 05c71722fc5d9407d712b58b80eaf469ffbc406f (commit)
via c74e7cb96ffc525b0218cd329c292aacb16f94f8 (commit)
via 714e9a954a2e4123dcb26bb8da850e1344de4f5f (commit)
via 0411fca5ec2a6adb96ed768f70ed468435d778ea (commit)
via ab16fcd743b8fc963e736f7d00e3c2f039ce0d56 (commit)
via 2936af90155cf7f7647b4886dc5b9568d15ca298 (commit)
via c834917fda58d9e4cd72b67f7793e2f429ccce57 (commit)
via 854b8506815f7786b3c82f7824557e7f32a64ac5 (commit)
via 12b164e9a96f75ffd030d04a7633dfbb64862806 (commit)
via 7c619dbdae11bead6f85863b7ce25f8b8610c59d (commit)
via 358ffcf28cf6e7c23311e91869ada4c480527d93 (commit)
via 43b7e92b0c73d693d3b656b84b2a1181e40477ca (commit)
via 3795e814428a269a3528d3d9a86da957449fc5b6 (commit)
via 4176f14d9c9e509425bffc01404c751e238b1f01 (commit)
via a95746f91769c0f65e9393ff83aad0871d1a666b (commit)
via 224d30d393654ff0689429505a3e725cdad1cca5 (commit)
via 15ec67475f486077ccb45d80c46416bf4949e053 (commit)
via dd2037827180f69e7e312a2080affcbb03c98d70 (commit)
via 105cd1d7a6a7e6c5dce2e2eb32cdbfacc221a5d0 (commit)
via c82a2e6ff60596266e7c1a419f8e81cb7a0ae2b3 (commit)
via 7f0bd4202c239b44b22645b9ae31fc0eeade1da3 (commit)
via 6424bdfcfc3af751531b927ad3549916d98d8763 (commit)
via 79c1bf3c71fcf5d453733ee45321e3fbc57b04b2 (commit)
via f37bc8b13c898fa39731c20d8565b24e006c13a8 (commit)
via 2283a21049cdefb87cdd0f11df367266e3e029d1 (commit)
via f67ffa6a785bee26bc23550670f85c6db578641f (commit)
via 5f9aecea0dfd9e8b0a728c332e8ddb105bae6054 (commit)
via fec3f4ea46c3f27206df97f379da3b70d4306cf2 (commit)
via 9fc3183f0f8ab8ec85f0e5f65bae9e18ddf545a0 (commit)
via 115d0c14437a07c686e58d8c0bf30755fb379c68 (commit)
via ca60b3af44a74d2f430870ffbabc8ce158721dc4 (commit)
via d354055e6ee0b2640006e1b9f900eb0e91a6883c (commit)
via 853924149dfc2a3b67fda0a491dc5716d7322a74 (commit)
via 896ee09882933a707d2adef76aaa184249e8de05 (commit)
via 57dbb3afed804c8e0c350563339f5f3de2ded910 (commit)
via 7504c64dd98ef6c85b15599a0d267a5179b70f50 (commit)
via 5ef237932919a19fe85f70fc37f7d3a0660b7665 (commit)
via 3d6e0c015aa832f00ccd4fe3f5f43b90357258e8 (commit)
via 49b036f1e0616b57294d85b06d3eb001b34f9958 (commit)
via e95bc8bb1dd5c7f55b3abf0fb1ee73c0c6b5596e (commit)
via 28fc25e06b449be061ceacf868e9040b14464aa3 (commit)
via a05f27b68934c2ea3efa028a0af2cd968db1bd2d (commit)
via 551703cfd409faca433626a0af077a43011381b7 (commit)
via db72737006fc383cb8838bf7f3dc8e641e60c38f (commit)
via b5a9bfbebec0a42d3c5b4fe3b7a62bd31cecc440 (commit)
via ae778caf097e08497f2e9218cf68b254b8da38f1 (commit)
via 2b4ad2fe4300489fd40dbe07e1675ff1cf0bee58 (commit)
via fd3ba736db19d4c7cd928f3735329339a8c8ef47 (commit)
via 39a24317ac65837663ce1e1b0adcf880758ddc8e (commit)
via f5769a2c696affc3ae1274e2329777d7d4d7e8be (commit)
via 1c1e54f6b4b6de83aa3f31e6584f5bb4d6242930 (commit)
via fb4fa9469c5f5d87a956d45ed3b36fecc1fc31b9 (commit)
via e6b5f1e9f5aace67505b4eff43570c82b56139b9 (commit)
via 6031ac352c05c5c9f44e24fa1c5a8222a7a7d02d (commit)
via 65773341ee5ad9e2882fcb1aed7c3096e6b4f190 (commit)
via 1db88d2272a776200db950c2af46e64e98ef056b (commit)
via a44294f5ed9fe09fdfc9427f6f83677843590524 (commit)
via 0c0a40e0abb9f1a584330a1911ad06b3686e5361 (commit)
via 948f29603949cca8ccf581e0a09c08576d52c7b2 (commit)
via fa0bb0c9f598d524305b889e0625781bb9fc9179 (commit)
via dfc616fa26e8ee363a6dbf748dd9490896679412 (commit)
via f24ff6e9b5adc7983c3ad7cf28375eb49921b3ed (commit)
via a767a1c4d3c7c5dd2f32cc106a21c1e01eddebcc (commit)
via 4daf19021fef36767e70845608a8a2c3b4d72f99 (commit)
via 0192e8aeeb1f54ba10318d1b5a838749e20d233b (commit)
via b8426d169d3f8ab820f3bdaf45fbc64f8bb827ed (commit)
via 95475e5d6b7529309ca804fdc2c2e04d654c3978 (commit)
via be9a9af90654c29c2e90375a64b4d18ef75c56a0 (commit)
via c6a1c98cbc7cea017f030b3fb9c3f9581ee4ec33 (commit)
via 3def145413e9707c985fa9c1dfda0682be750e55 (commit)
via dbfcd05365abb8c919517df8b6d718bb85b0aefe (commit)
via c475f569191cc0257bf0959c3475ca08644125b1 (commit)
via ddb77fcccbbff14d6426d01357942e88d240dfbe (commit)
via 17f6ade235fc96b4e572b5251b344d426c5f1cd5 (commit)
via a466edac5f9913e3373e59335607e9666a0ac8c7 (commit)
via fa9d2bd6b819ce143c149cee83456fa9dfe729b4 (commit)
via 16de26a611b78bd353af5b86ce67ace81ec1bfec (commit)
via 53b6d6f5b2d8681cc4a061e05fe28ef896900908 (commit)
via ed3162adc45291b3de496be25911ebfd39f43a36 (commit)
via fbaf61ad525eb2818598b699d44df32e46583925 (commit)
via cf93e9c2cf8f8b2566f8fc86e961592b51b5980d (commit)
via 4206c05ea1542c413a4a361c29cbbd206861946c (commit)
via 3d282ac37064ec0105d3aa3f379f7fb8af98759c (commit)
via 8c93fae61550ee343ad15e98a6636c56bcb0dc9d (commit)
via 8674be792462bc4469b04723484c63ab4c7ad895 (commit)
via 30838132997e6a3cfe3ec11c58b32b22f6f6b102 (commit)
via 4ee9b0c53a8055b869dfe424846bc00eb0cd0c8f (commit)
via 343a4a21eba7383a023140c33a5763ae1d547fc2 (commit)
via 79b32f4a3a109321cb9a99014293b0ade57535ab (commit)
via 07147793e678dac92f6a16f140678f9a5aed21e7 (commit)
via 23be8da7396ffc4d5492d976e244daaa543eaac9 (commit)
via 7307a73aed246eaccec9277b11e045f974322796 (commit)
via 13db92d3f48cbd6784f50bbd0ce10220e0d48ee4 (commit)
via 7e00df65a4e3e281604acab2450812a5fb275743 (commit)
via 7f0cfc6eb8bbead5c9a1ff3a8dec11d93304f5ad (commit)
via aa654ee8f830ca0d4d31bad0ff18b9e6261267fd (commit)
via 3d50f1706348142d0ad64cd9fad044e68951655e (commit)
via b567ca638c274e27969975403b885973af9ccae6 (commit)
via 48219c6a06091b873f39c64c5df12ba7ec37a2e0 (commit)
via 73f1bd769a5216b3debc1025faa62a466c5a1e68 (commit)
via 8b11311136c0acb5c4d3fbc9c1c92f259feb6beb (commit)
via 7e69672e4dfa532607e4ecef99623680264a87b3 (commit)
via 57c2a98a4c7e5ad4e62c876eb5cebe9d17a51ad0 (commit)
via e98ee8c458f3a8405eb93e71b00f801b4bbe3635 (commit)
via 725e299974632e529be8b9c004a72118240da9f1 (commit)
via 2afffa7f629da4c07510014098294d1fd141f5c7 (commit)
via 9f235e09e4d3dc6820e2d667200fe09b3e73b623 (commit)
via 5031d0ae0b9fb1a42eb8ff9d2b5098a56774cee1 (commit)
via b4c0d1a440d054cd198041ddf0ba43b83794186f (commit)
via 7a6d2b458f95030f433a0dcdabd5cda7ee695a9b (commit)
via 40f03055a23b7d77e18e14264046d8e21b6abf67 (commit)
via c9e0a7e333107ad140d9e15110f8820115921555 (commit)
via 8ff71a9c80cfcf64c54d4ae938c644b1b1ea19fb (commit)
via 3ff2c72e14b7f4381c785ee35608c2812ef8610e (commit)
via af81c43b51e17c597c8eb5bfaa02fa7f5f6dbe72 (commit)
via 206c1947c1cb8e4ac6abb8e6803c762200167cde (commit)
via aff4a1199121481fdecbd34c63dca5ef87efe6c6 (commit)
via 6eb5dbce1e29e74a3ed1661fa8634d455e41f34a (commit)
via 62b1765c90ddce54c04a97caac86425d50f2cc56 (commit)
via ae292b3afc0fce65c12014d2cc4621d7a0e661fd (commit)
via da658607ed24bc5a4dcfcfb56b6e1440ccab33d2 (commit)
via d35da542a7a7f62b909cef636f69c9da928e7d9b (commit)
via 4e2b18982ade10897e62590896a1dec496269877 (commit)
via 461464f22632163209937ba5128d1f9f32554ea3 (commit)
via 04e2a1829ea137ac23ac96e98fd60f9d720dcdcb (commit)
via d5f787c2bc90793c1d781b7291758e77067daad5 (commit)
via 03751133023c5623cf60f8d3222cb79a376331f9 (commit)
via ec6f095abc396e60f46e1b4724d0eb2e4d18213d (commit)
via d839b9149957d9a8842c368caf97ef378d8c97af (commit)
via e6cd1dc1e6c0d081382ee21c156b205204efc75b (commit)
via c12d9fa2afe7abcbe407a00e15719e1a1350c2a7 (commit)
via a4b9568c7ee95891de6f5ba846f2d1aaf61569cd (commit)
via 0b1352e04caa6b562a532354dc48f775e6a1135b (commit)
via 8c9604b6a2c553bc1edc6d80b934b99112292e58 (commit)
via 6fa52824c316091c2beb22fceed9ba96d17f37c4 (commit)
via 8588b356927dabd582d1d67f87a161027cb2aed1 (commit)
via a0a8a9340dc79116297627a0884c6a01543e4b34 (commit)
via e6213e09ed0ef6ee40d00981c38baac6964aa95b (commit)
via cb5248409d7a5a10748c2aa70824ecddf2f913d5 (commit)
via 2d844eaf9c60832756cff80af67e16969c0e11fc (commit)
via c7c4d3fa80d2fef74fd4bd6b1e22c0399b19455f (commit)
via ee841dd8fee73c355587533027aecc8983bd5478 (commit)
via 117f580a97f721465d62d0630594dafdcd89e4e8 (commit)
via dd848631cb96f7d25270faeee4c9736577230a29 (commit)
via 1a3389079dd5c93419846f44d42027a526ce19cf (commit)
via 4a137fec2e1a8a6372da8fca1040ee582c62f78d (commit)
via 8ff03f0bfbf0dc7d125f6ea0b844636c0aba74f6 (commit)
via a1cd91dc2f4e369983fab631f18e96f5e46119bc (commit)
via e08ef628a7e3098699ec6939584e2c9f7a9e1952 (commit)
via 43276309ded887327f434374b37572d1bc0778eb (commit)
via 57d5aa265f50b8c8c1ebbe4e67285aa9f5a53369 (commit)
via 19f1fffecd5359a9858151154d3de848f20a5990 (commit)
via e6d9d9285574ba3e157a29bd40cf6ab4bbaeeaf0 (commit)
via 808325d203f629208ed1988c8a90321c470ebcff (commit)
via 94c8b7253a5e165ee92f7302f3247764d69b55e5 (commit)
via db1337cc8300bb44f8ccf9dced3e122b6e50b4c9 (commit)
via 0a9db5ad8a6c49cec7adb7e3ef29c558fcfbf11b (commit)
via 3c7aa30778a1615d88c13508c04138ef2499112d (commit)
via 8743a9cdd20055e02a20c24c37b5312e3e626691 (commit)
via 752312ba4e53fea8e77ae240a35a7b508c6ca619 (commit)
via 65e65158c50dd7e7a5fbc9dcdad9da6df31e01c4 (commit)
via f4bab6ff22a0ddb799c1c492117a15fe0501ff1e (commit)
via db4cc66567397498a9e9eaedb8d0bb8889744ef7 (commit)
via 6e809f2dfa65fff42e3ab20e0d7490454288bbcc (commit)
via cbaaa0cafcac0630c6f07f81663a1b10a4e197a0 (commit)
via 3c3741435f315fba956bbace8c4991215e283510 (commit)
via 8ffb70eb57f527817840ff33982c085b0bec86bc (commit)
via 99bcaeaf0ff692348194ed6f30162c3a0cfb9655 (commit)
via 4abd8e8de725118c4b01cf71556ffcb4367344f8 (commit)
via e643ed088a085f35b724413140846f739413a78a (commit)
via b47b60aad847ba86b7fa7cd77e18ee8af7418f09 (commit)
via e8d88459e6f60c13c83c3b640ccc495402e36eaf (commit)
via 04ade4bc669b28b3994197d154cb392515c758d4 (commit)
via a3a6aef4090ca13d065d116f5d77f4e3f7bcbf9a (commit)
via f70e088ff4ebf79a4bea45e84a8b042706e6e083 (commit)
via 6c414b69235baf00bd8846cef4d31d8b42436c16 (commit)
via 2fabdf3381dfc4bc89f6339c3db3e4bfe7ca8b14 (commit)
via 982d0151e9ada98e2b5577f9af797b396e48f815 (commit)
via 47275900adcda29161e2853179c1fbde4da4c86a (commit)
via 98e10ffadbeb42c5adef14c1d5dd4093d57d57a1 (commit)
via 6057dc97e4df5ca9692ddd948798eaa543c74cc7 (commit)
via a000f8817b32eadd4aeadf9185634350a59e6649 (commit)
via 606cc04085a08f5e04eda6ef67f516bf81b691a1 (commit)
via 6865c0435a54e6d5f1fcc5cdcd56895e9a3c5484 (commit)
via 70df6fc9bc9e114f46532dbe58caa98e495b119c (commit)
via d20dee9efad3c23c9098f03ac785037572258483 (commit)
via 5074ad8a66ab2e955cf3ae4dba5773d5aa67b29b (commit)
via b4b08fa2aa25f245c77921ad2405c15d30e421ed (commit)
via fe75f42ee15944a0d14d3d42b242676fc2417352 (commit)
via 87b240d48512fa30aab8b5963914a9093009fd68 (commit)
via 1fcd7e871c38ac1049dd5d5509ea1f11a456bf16 (commit)
via a4cd947aca23d58966ead843e120f4c19db01030 (commit)
via 556059dd13a8a9a30b23eacbefbe7b85e74ce7b7 (commit)
via bf326452537c11deece2aabe16b6b9d62388a2d9 (commit)
via ca5f750004aa313131b15e648d4b862cbc4ba18c (commit)
via 2361b0fb1d99e9c0b97f4c1f42f89f862d757128 (commit)
via 7d2215128b84d9dec4a264021427343d895fdc6d (commit)
via 97e67fc62045723db7af6d323ce9c428666ab6f5 (commit)
via 803c08d083556154cd4d27368e58b359e9de8b93 (commit)
via 5b4cbbe357aaf6462a68e1a15c9532dd3d01e06d (commit)
via db68fbe2f946cb36359c8672548fde198f812c4e (commit)
via 74d3fbbb3e35129526392718b63df41be3b0e88b (commit)
via 0ae1a3211adcb8e7518b0b656b2309ebbc45e9ae (commit)
via a40bf0c2e93daac4ae4ce7dd1c43ab6135e76720 (commit)
via 4a3fe98f885a2d1db804584e7ea265ab3ccef4d7 (commit)
via 098b2108a2b61531c0bc8ea16854f773083a95d7 (commit)
via 80ca5f98b86c9b209f392cb52dde8b8471856c5a (commit)
via 319dbdfbb78d82470498704bca21729e057464f2 (commit)
via 1256af7d1afb123c15ae3935de4470becdf7c512 (commit)
via 508d0c9b5945d30bcf163b9b88213d277949e9a8 (commit)
via 5be12fc1ad9e47e82bd8902ad6a1f71946c58805 (commit)
via 41d1ab6a6d96937fd0db04e53746f93f53687807 (commit)
via 79f0fa25b95fd82122ee76d61fded661cc3ece87 (commit)
via 57f6375ec10415fc26bbfaf4fdc19effb313a06d (commit)
via 2589a7e59bdd0c3f9647bf79e5d0ab107216f976 (commit)
via a760eb41aac52948ac28f4a47563565396a7c37a (commit)
via e90426589d7c783b7e458162baaac1431fc33bd5 (commit)
via 9caa306f8020d5c9bfa84b88f4922f60763ea77a (commit)
via fb6ce599e05d86784e357c3d387c8785dc16a07f (commit)
via 6a8da8866974e139642b4bb41d7c252d509fd2a0 (commit)
via c7f279191fd49f9e4e302cb65268e6df595f2761 (commit)
via 0f407ee9f45d704dfed7207f2e2122cfa197ff70 (commit)
via 2fbbbee5e78e590ecee718e8da4f229fb59fe9c5 (commit)
via 2b02b9a2abfc773ad3cce49ecc36c37a1a84bcc9 (commit)
via 963c68aa4af4bf9448aa1d2ee03fc13cc88da0f5 (commit)
via 64e025c3a16d05c640d20192ac32728b05ee0415 (commit)
via 47603f888def989f5dcb370f84420cf0484d53e2 (commit)
via 0001cfd00ce30c5a06c938eb0fb203451870ef85 (commit)
via be4b452e28df8a18cbb7f3af929512722b003ba1 (commit)
via d09a13943b71ac9b2212e93fa578925bb025f1f3 (commit)
via 07599e13ac3a65c5dfb692bf9891758463949cfc (commit)
via 1ee3e48715c188bab4db68476b54161535839d6a (commit)
via a5f580e51a77f278b66e87d7d1784225aae51cbf (commit)
via 49d5d12d0e5b80afc376c6bb9be4976efb53425c (commit)
via f5eb1d70fb8ed38290413acae2617fe899a1663c (commit)
via dbbc8b7e629fa666affd9a3f475d0bf6e5264677 (commit)
via efb192033ad82855bcfab207f8494e8b1f3e243b (commit)
via 64c49ab3fb5eea7ba382cf7b0955795ae15e06e5 (commit)
via 07d5e9534b11ea9df17eb9d01799000a10c7567f (commit)
via d276ec695e8954330e922807d6886b8212d6323b (commit)
via 031e33500e82fb8ef525595ea684473774dfc669 (commit)
via 4cb3152d95f08b054e5b74f0cc5c8dff019b3a8a (commit)
via f117a62c5debd8a46fb4f76eba784d433d1bb875 (commit)
via 88f22c34d0f39ee4aca87940bff2cbf47e64b9d7 (commit)
via 4aa8e6c2387e796649279c2190cd499b579d028c (commit)
via 3c025cfe5efc44eb4dfb03b53dca28e75096dd1e (commit)
via 3e68067fb2d59ea93ea95d713a6c27b635332912 (commit)
via c221b2f7708017593d572cf90560dc305bc3bf51 (commit)
via ed84881fcfd45edfee0d3f9e9af0d3eb3bafe362 (commit)
via d6be54ef73eacaaf5bf28bafc7dfebc80ebac832 (commit)
via de1ec836c8cc4eeb68e3e4eb8223eeff9840546e (commit)
via 6f1107b59311300cb44379022f19af42db98b1e4 (commit)
via c0934311c7d1275cfab63df6472c860b9a746621 (commit)
via e2fc52e745757a11f7a4a256984cabbe5474f55a (commit)
via 5e8754f90abbbf832987477eea4ee91a9d2f694c (commit)
via 8ec235834d454a66a89fe16bc62e11497eb79078 (commit)
via 1f5d1570c0eaadbb72d450211f70b24c4c23ac8e (commit)
via d91e9ea81dce83259f2a7f32f43876373f3e7981 (commit)
via cc330e39bc938cefd4cfc581639177ef4c6bcbe3 (commit)
via b9c50e9a9ac48662b2132583c52d46976efb3512 (commit)
via 736ade86ea3dd3df31120b6c617d64c88bcc86c1 (commit)
via 2963898f38dab323a9e381d7c41a26b9c3498882 (commit)
via 849cba3b83f8b808521ef5b1aaa8fb33c04bd9fa (commit)
via 27a9fec6aa2637715a4631f79fb46372a37f868a (commit)
via 9da10427ddcfae7313c462f729407e0c7c59e2d8 (commit)
via 0d2a583976a87221d11c2639ede8f764e0c26059 (commit)
via 05c6bdc1a935243d19eb9dc3799321c96b660d68 (commit)
via e7b5068cc22f1a5707a9fd0310234b8d7300f227 (commit)
via fb5af5e335202bc94c292c83eaa328633cd5d924 (commit)
via 521b499b963562793e5dbbcc1df8357cdf2757a7 (commit)
via 4a5a194ae8a871a781d4cdc73c7ba3ae7deafbaa (commit)
via f5a476a7b19f43dce8d15ae3e5deb7027f71ab7b (commit)
via a154931ef1ef1c588c0e7da5e5fd4658c5dd28f5 (commit)
via 60c0454d3dda99635d331f6002f3f04fe34546a7 (commit)
via 088a96da059ce14fe1dff369873b1dcf7151e29a (commit)
via 22eb9e92ea9b5fd1ed83cfc093d7da6d18643149 (commit)
via 23c4651c060c123493de004ef61d8ed052d46113 (commit)
via f9853190c8d90e9f7d43fae90478a0db291f9c03 (commit)
via 78f8307c93755eb581c20ba049f1b092f161d513 (commit)
via a5c5eda7e412aa7f3cb843cd48b3b4c0101718a0 (commit)
via 1aac008f1c2f0a239b7ba26efe9d6b68044cddf8 (commit)
via 332cf4c9251a31f0addc2ce2970c9a8bb0c16f96 (commit)
via 0653638f9f0efdb1561db8e2faff2580e09658af (commit)
via 424da6cf3b30b889ff577b1babd09777148dc0e0 (commit)
via 95f39a5b2755e5aaaceb6248e585f8a593542331 (commit)
via 16b9eb7bfa56f060d183aa44165bf75cb3c414d8 (commit)
via d8ce91275e421dfe57aa4e79bb9a58824c155e96 (commit)
via 0d81f350ec01630ef7cd9ae4385a1dc504c54d73 (commit)
via 57aff202b4b17a05d73e71680a26fe12a817f110 (commit)
via fb44b1a737ee7d53d5d88c4f2a3d449e8084d6c2 (commit)
via 2a62dfa93f1980fd8d5b0651753c550942fa30b6 (commit)
via d1908f2d6b9f161b6a31449e83e1b671acb99620 (commit)
via 9da4dfd6816fa2198bd80fd6a7b12fef4d6c8361 (commit)
via b8c876004b48a05bd1117731e3c60e1f13093b5f (commit)
via 96b6697fd807428f3832bdab1527ad55156e88d7 (commit)
via 7235dd9f9092d719121a635f73ae2c72102f0263 (commit)
via 739ab2e92e1840c9285f3cfce1f1236c0fa68730 (commit)
via d82b3862f1218134f5301ed990c6db48fcb82b2f (commit)
via cc5a5ae5b7ea576bb8bf4bbebeaa70366851eacd (commit)
via 137be54029ed2d2fc95120bba2af88311e5a198a (commit)
via deee88e9810fe5a3e73b071713ff6fa03b5c016d (commit)
via f1628857d783fee0171f16f1bad0b7816460dec5 (commit)
via af39b1c216ffb11e6ca8e8607b00749e0fc1ab41 (commit)
via 4f075c06a3adbccdc2712c3e24afc7d4814149c7 (commit)
via 081bca4d622143b229cf02a1dda4afb9b457eefa (commit)
via e4a62c65fa8fe6a48b6ff564f45c1ac535f10f14 (commit)
via 2b69821e70c7f648fa31f5d5110021a156158432 (commit)
via 5e627001a08badbcbc890400cf620eab5534ff52 (commit)
via e920c014ecd9fbb630c76576d2771aa4631d93f7 (commit)
via 8410d65b77164d020a45cc9aa17a0147dc76862d (commit)
via fcc9b044b7f563023633a9964810e76f4cde40d4 (commit)
via d53d543682d9add652a82d267681cf6426aded42 (commit)
via 8dc9fd87b0965f24e21922f295c4af9c3f624985 (commit)
via 3322c5d9a102f9af099bd87cc65a1e2a70f91c78 (commit)
via ba2bf2aaba97866f4c9c67239666916caa7bb150 (commit)
via dd083ee23d23903e8bc595b64aa8ea62379491cd (commit)
via 618a8fdba6fc86a6ed88df257bf5f44d85e9071b (commit)
via 6c9d681b07e32d07f7ca0774360be62bbf065b82 (commit)
via 70f95c89a14485b148251a126ba0de48e412b327 (commit)
via 8744470deabb6a2fae35be0f66c60ee4ba094c1d (commit)
via 78a3b0fab8200fdca2b1b934645c29e7bd502d36 (commit)
via 23e60e7a4ea772eabb6ae4788913e228763755cf (commit)
via 20a4d0bd98969ddbfead7288e6027639dcbd9a21 (commit)
via b6f00d89c7f960d427c908be30379086e079b4eb (commit)
via 2542e49e21e6b7270f72c7be0fc4ff1a986371da (commit)
via 0d9a433be406220413671495a9b0fab577a48b5e (commit)
via ec8da87a225ae9f86cf47765bcc56d6afa30d835 (commit)
via 23a29771e0a435fe7fb3df00ae2feefb38557f44 (commit)
via 5c889512f325e0447a6182f70cfa7e1d9e407167 (commit)
via b986869b6605e45044626c5b3111390ac4e70b82 (commit)
via d431d6279bdcd475feb921a3aa8ecf0cf3ffc6a6 (commit)
via be192bc284b329fa0b38646bd3df9a02b880a704 (commit)
via c8c81635739435a31860ff5f1e49743d80321f43 (commit)
via aef9346c25b0a0c665bce793c00797f5ab82ed37 (commit)
via 0c8885885ab1d62971bbae22d4b5e335c31b19c9 (commit)
via 7ea65f08fa1b8279b65133a958de02fe84767eb9 (commit)
via 7eb65fafed7b50511f52664e98e22b20eb697197 (commit)
via 6e1453f681aeec2ef6e3d4fb42f10df9da2a8cd2 (commit)
via 4d1c6335455aeeda9de8a5eb58998f919ea35a1e (commit)
via dab999b116b507ad431c70fab0a28074dfea29df (commit)
via 3d58e1fcfbedad71be7e539dfa2045ab2768f013 (commit)
via 4a9699735b04d4629bd3dc418c265e7f0bc1f9ce (commit)
via f891966ff66639673a5207b94bd68ec928fb68bc (commit)
via 4bb3c591b258d12dd0f743e538b7214cbb92ebf7 (commit)
via e9d644e8fb2e7fa2f61e4b978f75881d906e0dbc (commit)
via 9a8d6a757d29ad8c80dc7640ac902d722b1b473f (commit)
via 5e8a54c6c4c753b6bbd447c74f5df8707bb0a06c (commit)
via 2550e95256ed7bbb1a4579ec4bd379417ad59b23 (commit)
via 0f60cce3e191b9e72e7577a0da73ecc5e9ba353b (commit)
via 6c0d3bdec7f1728a064a916145c6d79058e6e3d7 (commit)
via b4a3a7b44c98a9f78a27bd34d0d98741a0446e23 (commit)
via 0cb8eedc9173b873db7a8990fb780d9fdeb1f41e (commit)
via 40bac49b63b2f391eb702e1fc18229472c0deab7 (commit)
via 43135d3b15ce10a786704f9bb4736d834d6581a8 (commit)
via a869991180094d4cbeb0bd2f275fc7b30e513fb7 (commit)
via ff3a05b3f87093e5ac2bcd5e510bca4bebf1bef2 (commit)
via 0b3f9efc044d2971aa0d9bb39a4c76678bc4ea6d (commit)
via c67f2e1518a829c4ae4f346c316701ef5d56a30f (commit)
via a0dc02a6df86011462293cc11b4e35c0f18effd0 (commit)
via 385e5b9039d12d3c2ab25023e827ee9a681c1aad (commit)
via fdad7678b74a170ead1ef967007be087435715f7 (commit)
via 4c971803c4fb225b029420f812229941beabd42e (commit)
via 450629c8d5a968844271bb02b13d159f6a69ceb1 (commit)
via 078a020797210f4d8f9491bbfe16ec31e9efb652 (commit)
via fcaad03cc027ec2cdf7f2cff70d792867d43c57f (commit)
via 7e41c8db84bc6f74843dda40ae443d41977c0d20 (commit)
via 63e8c3daad1eae11cef5b6d1833507d9d4d6b0c0 (commit)
via 4dedf84da98ca7dcb9fc80895044d09b5787c1f0 (commit)
via c2a031c5822b4256f116254def47b9887c230e68 (commit)
via 3553eadc8cb5f087ea0fb72ebdd1c52264304e0b (commit)
via 7243d0118af6f72e3e72db1eb66941fec4530963 (commit)
via 2a90824133f9d46970c9c52b68ef2ccbeb6389ac (commit)
via f6c4e3e8a3af94fbecce2a38d3fccc0980616c6d (commit)
via 73c13fe69a4275433544533a610275861346ef44 (commit)
via df28970fcc741fa744a51aece29bb755c20eceab (commit)
via 4d3928d7e0a141e0fb16405d33b375cbe2f13123 (commit)
via 7a6dbc2fdb2323c35e981f93236f323e9d7c0b24 (commit)
via b0f492b90f3d13da8ac80437e6ecb9a87db4a75b (commit)
via 2362e7f76adb395df19c867cd27c75f77a0ade6f (commit)
via 9108bc33b1ca0b2e930c0cce5b1a0394e33e86be (commit)
via bd782c07b914f28fd927cec42eacd8adcf556dca (commit)
via ac8cb70f3690b4eace1325c7ff918dce9073da7c (commit)
via a693765e23934996abbe4e44c4ba28eabdece4f9 (commit)
via bdc6c06e3b08ec48ec5ee2174dedc846969c36fd (commit)
via 716c08de28589a5560b3337f1b935ed84a49b5e5 (commit)
via 36eb4c5f9bbe675a4522a763652f463e5519a955 (commit)
via 4f4aedebed5397ba285c2abcd13fa0206d8af291 (commit)
via 0e745c601150523093323c3fc77835604221a634 (commit)
via ea92689a179c8c03af2ae46989339336d1dd48cd (commit)
via bc672693ccec6ef2faa057726b06e9515339bb74 (commit)
via 160fc977b6f33e5ef51f6c1f3cdcb57965c522c8 (commit)
via ad202fcc2277f351d41d4d4e897ad4f6d7c9f043 (commit)
via ead9aa39bfc80007336bc96c6374df7f79341485 (commit)
via 999700cd99a227bd6848e95cdc99117b2185e84c (commit)
via 5fe3f3e4633df1ea76ff24a2732d7c73dc983b90 (commit)
via 858d8004b05b572c07a414ae3933299976880bab (commit)
via 5445ebae0e94658741668188e91f430a798b1fa4 (commit)
via 416a69af890a34e58c722ae2e6fe218438fcf3b7 (commit)
via 9d24df82ece4e87a0328173d6bd31cb9ff558bb4 (commit)
via 626887ddc306b336e1406cf661f23398bed8be66 (commit)
via 90c745dc545408a6a3115ff97485672826649ade (commit)
via 3bf9c013e4a7b72aaa7e242e163a776ad7347c26 (commit)
via 65b3d26e7d53ea03eb99791dd324d56c599f4c99 (commit)
via d3d8724aac2f207467b1004b1424fed0446b6f8a (commit)
via 1885053bcb12dd05a6f129146cf514e966082c27 (commit)
via b4f183d23ec5f99765f0d6c64c1e3139e1d54093 (commit)
via 8406672eca8d008dc0324198ec2f653a16fb9d21 (commit)
via ec40cf90a02ebe3e2636ffa92245677e18233917 (commit)
via 7bc02706c3e23b58e1a74ca47fada84fc68699c7 (commit)
via 70ab8ccd4f382a6c7e59c523c22b07fe03a95f52 (commit)
via 896a7aa6a119ce9d4872de87dabb81176489b1a3 (commit)
via dd33d41d54654093fb5e0ac7a6edd0c6a8c998dd (commit)
via 2cd0bfe0549d796b210bee0f4e80c326815cfad0 (commit)
via c645cda49e2b5fcf35773089d1ae16d6fc3481c6 (commit)
via 39e7af3e4b4e6c9f39d8d58cae73a2d307e6e1a1 (commit)
via 3d9c8f6b3f033a6092425b7344647fb51dbed5c6 (commit)
via ed60adf0a31db8ebc95edd09088465470a296671 (commit)
via bbbbbceebc342d583057a11d88bae85f451cd904 (commit)
via 7a815dd566f3dd32435ac73aa0a0cc948d525e06 (commit)
via bbf6c6b8ca19efd7b0c9bf789bbafc1262a27517 (commit)
via d98fc15be2b8dd5699c1852db7d9d979231123dc (commit)
via da3c873831707454d45cee6705075b27a1732f09 (commit)
via 3da65cd27e9b36ab205ce7820ce566534272da22 (commit)
via a9eafb08b3f3dd4cd59757f0b99b44e896d620f1 (commit)
via aa7bca9b2e30cf128966631382731369f7b753d8 (commit)
via 772758ac42a5717d2c2043cc36aa6600c2bfc120 (commit)
via 4575aaa96412f01f6158057aa602312360c5b6e4 (commit)
via 450d1e88e32ef433f25959358521c953050f0037 (commit)
via 9644dc3a478d9ae85f1ca327ab3fa5ac0ce9fe64 (commit)
via 59adbf5d03f5d9380f9870e22262c59f5f9beec8 (commit)
via 2b1ffcfd6fe5b88d50b6ad1c2ab3e9623ede5e35 (commit)
via e94802301b37de0e75e9329a96b0e70d38e5ead9 (commit)
via fc811edd39fcdf6e52c95ebd2d975debee700223 (commit)
via 2d5f09ec45f81a9c89a98c4629662d812774dfd0 (commit)
via 26457a9cf3c0ae49a3a2d0d0d0f25e2658b5f0d4 (commit)
via bfb218e3e404a6168888df51c03827eacde9ceea (commit)
via b0ceb98aec8e1ab610deea9fee9ee75c5911bbc0 (commit)
via 12a0d0f66172b9504e29000fa4f4e5c34109d6db (commit)
via 2cd65cb935bcf1511c7e7bb77ce7bd46234300db (commit)
via f53ad3cf2b2dc34114a9b74439da5a418ac40e3d (commit)
via 14732552e70bcb0c85093c404a7091627eea4e38 (commit)
via 7dd36a6f1ca92cd4ca4776064c604cda7755bc44 (commit)
via 44c2eb66808a928b8101f1b880f3482312cbcc1e (commit)
via 38cf70ca4d7adaad7ef085ce34e24e1e0bbee945 (commit)
via 334d4ced42d3d54a70a19f1323ff41c5a5f4ff5e (commit)
via d0abeec8d45514fbec790f27e3cadceb576df9b5 (commit)
via d3f467568f08dc18e6ed871c58a71f15cc0323f1 (commit)
via d1012b8e33aaebe988aaf0723d26ddef9e155dbf (commit)
via 17658d46e48ad4a7f6fb850422639b06c9d963aa (commit)
via 4e2aa472847923f94b99f138d7fc4c77796f8239 (commit)
via 9eef0608951ba0e551dd6dd079ce1e20bae11f6b (commit)
via ae739fe7b8cffac2332666d62ad37cab679a7758 (commit)
via 467dc1e2ea5a8b300b61194aa8565829ce7d65bc (commit)
via 6d52907e226ade45d5f5196eaed8386affda5156 (commit)
via 6f4286c4f7193606fd6200e46b152ff0934f9cc2 (commit)
via 3da64fe404031c093e8b59565d935fed214e28c1 (commit)
via d000b7630e07e808098cbf079c9cdf6c891e6e5e (commit)
via 9758a8f84b245f42cfa85be7a65b0728eabca491 (commit)
via 1461bdac5c1034467d7095b6d109689e02d03987 (commit)
via ebf983a4447174210bcf40e1df4f2a7533b2c99f (commit)
via 86b9fea102b36b9147d581f2fff3f495e9dd7601 (commit)
via e8a648884df318b3c6be170ecdc9c42f79e56bd0 (commit)
via ac1e2e51c0927676dc87f0e090c6d8e4c42f297e (commit)
via 4e57b456393946cb4f90131b78e162cdec903c8a (commit)
via 4895f384b47628c8c354dccbb0bfab45b8c33984 (commit)
via ae19acf3201ee0b921cde8e70e278fe123e82105 (commit)
via c8455dc98666030e930cddd8178b1b4074749b04 (commit)
via 6efa941c381b603fbf9d0f951eff87bcb805fa94 (commit)
via a4497d2f8486502ab5140ec5168d5f13ec375155 (commit)
via 06d743b72334ad4f9297c206290a47c261aa8e5f (commit)
via 66b09c7ea97ffa4e0a175393fa7a8f240b00fbde (commit)
via 9dcbfff1e02778bac6fb723640724c38001a8f0a (commit)
via 9cf7e5687f823a1009d25cb25ff653ee8372e517 (commit)
via 46807bf45106af5523ad06cf84e7b825dcb9f089 (commit)
via 706704c88344314646e4edcc0840cb18a9cb4c82 (commit)
via 487096bf0bd5499b1d23ecbe5fd64f9f0079c0b5 (commit)
via 08a8fe2ffd9766877a74a52922b4391d37e85491 (commit)
via fe22d84fe472a5a1f19c56cf0f888c86a635dee7 (commit)
via c44deb735ef492f8799cbb35c5f2566fc2dba19d (commit)
via 865dcc8a4d397e4d9d032785e8ff318e28355d76 (commit)
via d203b41ac79b011d63bc1e2467f9c8a81f468eed (commit)
via ba1c4c6fee7e8794481412fd8604462f04b2765f (commit)
via 8ca28cdfbec3efd7dab10f13919dc0b1cf778ded (commit)
via be2d111a878e1422c921226bc7714131a5c470fa (commit)
via d604f19adeb96f96213f4825e56053fac50723c6 (commit)
via 7d140d1a0be24da37c9103ed6cac98b0017829d9 (commit)
via ae3a7c47e6a95d69a09838c11f9fd3c9cbb25cb6 (commit)
via a6b786da4e3353bf634ec7d9c7bffbd7569e73c6 (commit)
via f41078422a4381d4943f36aa1ef95b1d7c85ee7e (commit)
via 7ba3ba91a3dbc43f7ff16c4899f7f1cbef056db0 (commit)
via 2e72a56e451cf26fb01712d6004d3b6a70749756 (commit)
via 506b86a4f5fe2aff90e62940a07c9e275d406cd4 (commit)
via 503c367dc237e6fec46d0b8ccf3e74f7406b3260 (commit)
via 89fbedf3abc90b62fbb7f08782ed78d87b3fccaa (commit)
via 12582533306990c9406aedd960fa411c317a67de (commit)
via bfb1e8c15a6b7d02cd0b9a124d01722a07ebf09a (commit)
via 2ecae92e2372102ac0fa774fce4c4c0d6f8c85f5 (commit)
via c1854f1d5a8fb5d86c7ac6d118348759cfa8c393 (commit)
via 2cdcc33021214e77c2c185aa78ad4f9ae1b9e565 (commit)
via 3b7b80752fdb3544b5d822f477dc5a9863959393 (commit)
via 495143533ad95369811391c6e3c6dadd69d7dd67 (commit)
via 07aff30e92ead6c6d662462efc6ebdf83c6b8de3 (commit)
via 1bc60e562458b1e1c25be808a62adb1cb6c20ff0 (commit)
via 26fb3983d7062c6f6bc43028ae2074cc29d22c7e (commit)
via 67943c005fafa4397535766787b4fbda338ac07d (commit)
via 2a50366ded329bfb39d387253450c9d5302c3503 (commit)
via 08887f4a644fb31fd04faa4208c523dbf9b4f93b (commit)
via a97b53dda99526d7c2890aeb9637008790cbdfa9 (commit)
via 98641896ad52915448c0dd1ab4b4bbe23148a582 (commit)
via 0c76e06d5cc83a42ec05a377c3b3c211c8e85151 (commit)
via b7fd65b9dc0a9f132fba362493ec21dadc2994d7 (commit)
via a616bb94509c22c96ae8bf1432ec28a7f3e31778 (commit)
via facbd8bd3d6d51c907494a269dc13a2a0a75bc4e (commit)
via 988daa317c01a610b5298bbcd80be8642ee66094 (commit)
via 8e92e6d4b214ea9e0169cb25f3716c912f828e9e (commit)
via d871f3f48388d57721d8077e281041ed16a745cf (commit)
via ab9e342807d132182892de1be1a92d6e91a5c1da (commit)
via 1dc9e2d63e37839ff1768346b2e3f52e338baba5 (commit)
via 7cf9ebc6958462c3ef1372071d1ced5dae7bef3c (commit)
via ae1f3b64e5818eed2354aa43740d4324ca18efcf (commit)
via a9925d4f9982ad897bc85f98076e5924e70232b1 (commit)
via 48e30f5238c70e738f44474d595c476ef4e4ec38 (commit)
via ad3a68e9b9b01fbdc09854fb7fd655db652c482f (commit)
via 0cfbf43085c4191f3f4b4b4a834f1e19bf42d4a9 (commit)
via 946d3d10e7609e074be30db8662cb9c4a3d8961d (commit)
via 9cdfd9a26ef63ef2fee58c0e7475b5373b61e5d1 (commit)
via 18cdc6d8f8e8b55e84783e0a2b5a80b41a0e917b (commit)
via b7dc48b4a8006abb552c5e7d22f9841c86f2537d (commit)
via 6f36b6d29fdff5be77ec6dfdac693d5e4b5dee50 (commit)
via bd923e510884a92514a4f9d90d79592d248d5d92 (commit)
via d7f449c026181e14162a67407842462e4bc0d8bd (commit)
via 19449d7c67690c641b1ec9c13ff3531677a5afcc (commit)
via 9c973a29df61c411e24ce51b13401333c6f6e0e7 (commit)
via 11459a79d97842a64961a35472bb8d67ed0fcf22 (commit)
via dbd534fee4a3d6479e4a84f0cd79bd188d94f4d0 (commit)
via db850b68654e26232a1fbd8c182ce0b4dfc52a23 (commit)
via 52a187f8e78eeaefa38bdaff04aae1fd9a69d788 (commit)
via 3c77f97eb0825f5808f4a3a01aa5cc2fcffd5ed4 (commit)
via 90ad36544c2fe5ecc423d99058116514d9fe718b (commit)
via aff4e1751ffeae9684b80d5f528ee07bac34a5f8 (commit)
via 06ab921988f5dfd64630a0b92d05dd94792e0a08 (commit)
via 83c8d318d1aefecf3cc43015226c10bf4126df87 (commit)
via 3a53fb12c870d67537c883b9abd80d6a4ba408ff (commit)
via 7c5c05effd92cc5732bee527303077fc2e6b62af (commit)
via 5ff2bbae198cbd615885f26aa7d065b8cec8c278 (commit)
via e5bbcd0f04911d671d0c43d57df9886c06018705 (commit)
via 57285adece935b4c827d02eae10c6ae6d60c92fc (commit)
via 6404ab993797d1d6cd3d9e97cc281e3cb6226c12 (commit)
via f40f4a11d12025d18be2b0f9072f6ddcc94d3cdb (commit)
via fdbac7d8d1c9403a857db6e0c1dc92ce7bb65925 (commit)
via 83202f7ae849e538c04656923312d0eab32f6cea (commit)
via 5c720ed8861b461193a507e61e3665b1cc840055 (commit)
via 411baa470ef354e50b488c0c736ac7af8d856ded (commit)
via f384a1f025084a4a6370d7ada6dc7198ad3454e4 (commit)
via f7309df20c4e787041cedc4a6aced89c15259e54 (commit)
via 9d4a934ce604afea155c39f06834cdbc47e92a6e (commit)
via ff36536c9273734af6f84832b583c10f44c5010e (commit)
via f6f9ed015ea683ee2b00591aa31a4cacedb7a810 (commit)
via a9fc784bacd65a47c0d524c4a048453d1d32d765 (commit)
via 045cf012860ed0fd6c01892505cab747ee27a21d (commit)
via 09ce46f230fee766c386384cd1f5672d12fde276 (commit)
via b825f3a90e33ab6f333d12d676d51419f8fed77b (commit)
via 9c61296405d4299b7000e445a6e07c0232bb0342 (commit)
via 7d11235d04ded4832430cd40013ca785a3896e4d (commit)
via 87d6a7aa931f2bd4cfe784344b6a2cd595f6f2c9 (commit)
via 8a99096f31142d7a58962066c801a35b4c5c8bfa (commit)
via 5c831bb1eb6b22cd1705b98188b7d1b0633e7c54 (commit)
via 4485a1c1d8d2b4a20fca2e2b7d1aabcff383b222 (commit)
via 528e15722bf67d126e17218708c0314bcfadbf6a (commit)
via 96d68bd48c77fa44e517c3380ee8f224cbce00e5 (commit)
via df136d64fa2fd23052d7a5fcb7059c29d8e6385d (commit)
via e81b4c933c1b88e29f4b27627dd9ea0bf9189944 (commit)
via 99f8774ccaca5b1bfa4a035c6c705bc7ef47e75f (commit)
via 8f9ea98bebb629f0e6993be015f042bf45dcdd18 (commit)
via 71f6efc44e1bc525313f62dc6e30b4706fc644d3 (commit)
via 877877f5d5a7484601d79ad965d8e41af7c4596b (commit)
via 3a12c78d1491c4877928e7294c8cdbe8171dfeed (commit)
via a7f25a84f4cc1df5248c46346337f19a2a66af5a (commit)
via dc1f2887c513c4c2110d2d997ab33ce36b9696fc (commit)
via 296956befef3711ed458c7cba8041fde0dab9c50 (commit)
via a04b9d62a234923826e431a209d396a628661548 (commit)
via 4277c4b87addb5354cc47b98d7a73e44cfaf22c2 (commit)
via 3df3a985a475db004706d64f83d9085f99053611 (commit)
via aa6f3694ce867884e43d1c0406c64df08ea24bd3 (commit)
via 05abfc39c719e740530000059bb963ad33462479 (commit)
via 02d7a79e1b93240729a52246432d9a84583bcf82 (commit)
via 5a6996172e6294ea37054b1a9caa3a923a8fe399 (commit)
via 63741043bde141c20f0a08dada84ed7bdf333d99 (commit)
via 6af0448446f9212df4dc62e7618174d5d3f5e43e (commit)
via 2fd43d7870803bf0713f76118cc0fcb89407e873 (commit)
via db1e1b45b417dc3e7d37f401828afa18328d8508 (commit)
via b6523c37fb52fc38da6e152328341caffd793749 (commit)
via 821a26825bdcb96358a51f5c2140475951429470 (commit)
via 5bd18990b01406ff41dc44d92db1c34018b61923 (commit)
via 953473375500a809fbb3eca3efa4dbb670c3a32f (commit)
via e968fc9b638e48a89e9a96804896c88a400e9be1 (commit)
via b01474366f651f3ea3eed4038e1e0b37588d243d (commit)
via 99c2d522f7a7259947aa84c1b385a7c8147fa46c (commit)
via 05d0e962f08af24f18cc79b890a68176b42bcb78 (commit)
via 3f6ff4799bc50e6030bb707b2b2b525fcfdd2216 (commit)
via 1a6204c9a73d10fe65c0b0b54d542cf73d156a56 (commit)
via 3fbbcf473a59df74a0b5d9ee343169f778fbd054 (commit)
via 5e7f20ca9a7abc3fa8e053643eaa422dc9fbf3a4 (commit)
via 39aac631baa1c5c540d16e45b64c2813a14f95b0 (commit)
via 425699f52d8fb875c2197b202b9e05bdc09d0115 (commit)
via 4aae6e5abddb84e1225cfd696b8fd2c6832f9fb6 (commit)
via 2688aab226c6d8871af4cf53ea5651e06f104744 (commit)
via dbf8be89edf7b6443fa0b7d31ca6d6ad202fadae (commit)
via c48dadc9a87f4fc3408987fc4dbd312bed50da9c (commit)
via 3ed12f02a20a487ce46b463746c52c2905e16c03 (commit)
via 13755f406d6615e0750213edb04a023ec2ba7b9b (commit)
via 3e1d3d8c2494c021718ba957e83395958ee08a0f (commit)
via 1584354913285389063622a39f845851f332eb9a (commit)
via b5bddbbbbcece5d52115bd3e1299cec2a3b362f0 (commit)
via 8094f49a4dd9679c294e6254e928ea75c229aa95 (commit)
via 8a28fa1b4beb3b4c77c9b3963f1e32235591470d (commit)
via d0042c6ed311694e791ecea8c132b3f01278b7ee (commit)
via 36a900f483789dc2ec4bfd31386e29b52fd2e019 (commit)
via 09a8cc152be1b6ad2e309ac2d61caa5a4a1c3a54 (commit)
via c198a1ecf835c5896ef810ebe1ded06729039dcd (commit)
via e256144888a28eae9326f86cd95282b807aa2f6a (commit)
via e30985fa2b495a6b932e1376f287cb51252572d7 (commit)
via 3cf2b6691cef024f7cdb48aaec5fab5189e1cffa (commit)
via c25179e71fee952ace322ce26b3fe6b722ec77f9 (commit)
via 4a9f7d653c089fdd8ca66a51caab7c9687f50cd1 (commit)
via f03fb29221a00c294e14850f1fa1af343cded926 (commit)
via 103da91bc083f94769e3758175a96d06cef1f8fe (commit)
via 50320b1d4a1dd06db70aeea485e0ffd9871548e0 (commit)
via a67ae9b01af7eb2b1f8e5c517338a4b12167ce40 (commit)
via 1aa4214141d30f99f941266a3bedbc332d674c04 (commit)
via cb86a42aba5b6e1c135433e1c0c26223fd0f7a7f (commit)
via 33633d9f5b138a211405d482436db2f7661b190e (commit)
via 07cc045019bf655b84692465232e9f0faf7d868f (commit)
via 11cfdeb3863c5ddf8e773147e6cf5a14de15aee8 (commit)
via f61cfa0740987a13a1e14242b3039caba73e901e (commit)
via 5abe0f0cc79a753b80bde28d9c0c7fec9bff3c10 (commit)
via 472fa5eec2cc521ad5ea37091ea2424ea46552ae (commit)
via 1c28969efcca7c214e41c496f599bc4de2c56dbe (commit)
via 1424ad867742286be44932bf29720539add19ae0 (commit)
via ae2387feae3f0798dd77c98a7107fdec38a99fe3 (commit)
via fa77b93ab76cae42e9394592d7474c795bb28f7e (commit)
via 6ff00b5e12e7256738d9a4dac66e5a7745b771ea (commit)
via 7a8655d2bbdc788786cb28e925e1d4303cd960b0 (commit)
via e951d5ca3d73cfd71a002b91c16d6036240213e6 (commit)
via ef6ba1ed0d7831c35cd241c382ed3026c156b641 (commit)
via fb66cde8a42a383b111f0f1f48eb9f6daf9d736c (commit)
via eb41b24898e9858852c98f9275e7a4adee860d7b (commit)
via c8f2dc0dc967222673d71a0493958a587c53ae3c (commit)
via 629cfaf1b0fbb32a985607c774bd8e7870b9fa94 (commit)
via 2409af1e94de228ccd7a1d34deb954541fbfa37c (commit)
via d0ba5758c269263a6cabfbb69ee23358ebdbe9cf (commit)
via 463c08d160e55d6eaf0f9bc3729781ce90f4de3f (commit)
via dba7455e76f87abe81cc9e4e9b1f979c1da02846 (commit)
via a05b9f5e1eb8f01eea23eff3902fa57f1f28a4e1 (commit)
via 4570c3d98c0a35e52fa4117d07b78d4f461b6f26 (commit)
via b8891f8d622a31306062065813fc278d8a94fe21 (commit)
via 7d8a31665739412395f6dd370d2279acd322e78e (commit)
via 906c6f2c54425f18eccb30e3ae54cbe620f0fe86 (commit)
via 29e6f4745eca5ed82c7dcde09cb0bdde1f8a2eaa (commit)
via 51b79795294ad32c7bfeafaebe4c921db75491ed (commit)
via c708f4d256f1f1a92310fcb323a108d95d5fd5da (commit)
via 37cc0caeca4c9a8552370040f4cfeaeceaa03369 (commit)
via 5842d7025f1307a2fb37ae5c4f25fdacfb827d35 (commit)
via d19969ffbfda0576fab881e0b00c2fefae3aa8df (commit)
via 129eb0f1f16dc7a49799a024a7bcb109d954a1e7 (commit)
via 1286ab788188bb8f0b0da2a3def4641fb3817f10 (commit)
via 469d3b57cef3d9e02d4bc584a9cc814ef22cdb4e (commit)
via 370e4b5079ff8d62be3adee7396948d4c5795091 (commit)
via cd4d353f812a3ecb29cabf0e62319253daf510fa (commit)
via fe57a8c9f51516feb4fe999d2ff079157db42c26 (commit)
via 5b73b52bccfc73172bc472c1e223f54f07a3e858 (commit)
via 2bb9bbe2e8faa7fd9ee156da0254605720eb16d6 (commit)
via 16065af1b0497ea33b53948dfd1f64f551787959 (commit)
via c93cb6280f66565c7ab3dd3077227f8a0039d678 (commit)
via 6af79d7b5a21a40c4036541fbfa821f9d1260ebf (commit)
via 1f75763aa1bfe2f998f4347f0de436092a126980 (commit)
via 7974897237f7708d440c45bc74cdfb70a2db8124 (commit)
via 52948f01e4a11f5fcebdca112036f907ac69e7ad (commit)
via 4ae976d1df96aee0ecd97ea1235efc4490562932 (commit)
via 02e9e7f7e2bed3b82cb6541f566caf07256b9b2f (commit)
via 8a6d4234503bfe1c656d8cd335cac828507df9a3 (commit)
via 08994e1ddcc8e5e1e003602409662ae799a1ff30 (commit)
via 63b4ecf76fec65c6853ea01ffab31642533801e9 (commit)
via fa758a70467c37cfe7b261e1dc20d431be3db62e (commit)
via b358827438360cb5d04fbc59d594583fb506ba65 (commit)
via 3c3bb0580be0027a1c7187b78c747af74dcfa884 (commit)
via 33cb30a1f932b5a211aa319a01783d4957ae5d57 (commit)
via 6cf212b445b4222bef4f74544896a3be332d5a12 (commit)
via 9e7f3bbbbf5a13e879a4cc3cfa958412ffac0d9d (commit)
via 4a1b91eabbe77f4d906a0895121d76a0653c3cf3 (commit)
via 506f5c41cab71dbc3e562ba367d2dc6b355b64a6 (commit)
via 16f808ec99b141bf03091d3b309a335c68d4e9e0 (commit)
via d7154a8d08b142d1258dc2e4189ff0d00cd26493 (commit)
via a45389f60d4372bdb3484e432935f3169037d88c (commit)
via 54691107334ee13f3237e0f754d458c52d5b145e (commit)
via e3d39609d16dccfef8fd1f02090fcd1df82736df (commit)
via 491993044ba6cfb2b0fc93c8b3032d5c91cccda5 (commit)
via be3e27bb5554e45d54d7cdc74353dda246239475 (commit)
via 5fbad1b90943710ff622e119d1ac6211fda500d0 (commit)
via 380618d68a2b4ee60cebf3941d11a5af4e0aeee0 (commit)
via 4b17aefe753a8d62ccd491b6a39dabdc69e91445 (commit)
via 29d17e4773334ae60ffac7ea7f92d507c23b70f6 (commit)
via 56522fc5af76ec88f650d8d305c0aa3d669c2849 (commit)
via 1d97232ae3655ad4f2661af34f4fa6038d492a25 (commit)
via 7b8d9e8cec30b366392aaebc513063eff0115548 (commit)
via 67ce483baa43121a17195efe4b14a183e9fd8232 (commit)
via 4174bfff8a88f21659446cf631dbbbad615b4a9e (commit)
via f47194a9cde616ed1c207d618d4827d1216ef650 (commit)
via 2ae0bdddef8193e3d2ffc352f4fc035808b5fce4 (commit)
via f5e263426f1f191ae85584a82dd793cfd3c951e9 (commit)
via da90fdf9936c532665e2a743d2fc5cf5e8f6816c (commit)
via f82863d797e461b936dff2b659a3aa65088ee87e (commit)
via 5d3a462f05cba5b0c0c96de899b84fb84155c760 (commit)
via 01bcaf636ad0b1d5fe44a21917ec900af86072a8 (commit)
via e2b7fbc46d08605bd2807678475e01be42e589e6 (commit)
via c265869848bc3f3715161ed4174d7ae73e495fc3 (commit)
via 04e65276fa99a0de996142b054bb76f8491ae103 (commit)
via 47e6f81c7c269ab5ef2b3004bb5ebe0de5cfb969 (commit)
via f02806be1ff3d25fdf4d9e06ced33c4b138458aa (commit)
via 898ade12ee835c3a55460ae4fe311f40a01cf586 (commit)
via 49ddb0fbdad2bdf5ff4fcbcf50470f16c0f1f34a (commit)
via bb71536f2841449252952ac4f759c1e0eca7e137 (commit)
via cf4088a92f240b01e6db8f39a5a3abfa918f6f2c (commit)
via 6018c5acdf8b33b8f816de4757045379485f6ad6 (commit)
via a0de763e32b381369896fef63d221376f29a9113 (commit)
via 3b20124b3d6df31b5bde0f6bcd718cc40de8d49b (commit)
via b0a7723d29ddd39345a4af30c130ebc89c623d21 (commit)
via 8c8807f43924ec0f936b9bb59fd73d8fa4956e9e (commit)
via c486b6106a31e442cba13c74a103aad8463bbd20 (commit)
via 494f80a9321dccb939bf39afed66649702b563fe (commit)
via c51f6a54c28aaf2039f95553ff897338475fe8bf (commit)
via 374fd1fd7b9bbefc15c003f14f4229ccbfc1bfc8 (commit)
via d5e9a511c4bbb25a7e6844169aa9e5b3fc7ef453 (commit)
via 996d693a07973411897103a36e89bccee6c94479 (commit)
via 157663703656814c751998747faadf41711e51ec (commit)
via f4e80e1301f916ae7952abaf4ff1ebeac00951b3 (commit)
via 8d49165d8382e29bff8d60d208934596e3994305 (commit)
via c7213af9b3e47d3341f95fe24549681029a53853 (commit)
via 17cbafdbbef78d7e05ade53d4cc867fa8ac2f432 (commit)
via dcc0660f04bb74948299fb33c98620cfd1ceabb2 (commit)
via dd40ce22d01afa0676d2eb5163d77ca3262e01f9 (commit)
via 2376f038d10f901d3e1a2777407f350e4e54d284 (commit)
via 0ee6c332f36222a73abee41bc5168bacf78c9189 (commit)
via bef891d212194e71264a6276094efffddb06c586 (commit)
via e2e31f1039e614b11277f5f1acc4182cd7fd3f2c (commit)
via 7a54636a02e089436f69446a631451593ffeca30 (commit)
via d5f4da5e334dc4d87d7751a816c15d2bf4db3d43 (commit)
via 2d38991535ecfcd092f3c57da84844efc3d49877 (commit)
via 241e64e3b42cd9eba514b8e0ad2ef39a337f10a5 (commit)
via cbb09508e4b515501273288aaa11a8ef5e15e0ff (commit)
via bfe2e011c004b88687ae4514cfdb00072a9cee63 (commit)
via 0e6f30610fdb50b4974b349ed3673b744d03e9a9 (commit)
via 804d27291b2922f01fe5cc2d9ae759533d4a2f6f (commit)
via 80e649fcac86101a8a4581317e867e89de015d28 (commit)
via 0baae8dbd38534c0f3dcedc7b9204bbc8f18de1b (commit)
via ab209f6fa9dbaf0d3d0c42e2a8f14bf3ff7dfce8 (commit)
via 74c72eac237232e9c23c2b4e21d24941d804dae9 (commit)
via da6580e59c5c2c5dda086f9c407688e79377e49e (commit)
via 4a2125f531114e80d68334a67f2d4ea2335a865d (commit)
via 6b213a4778fae60d40257aee37c3fdec837ea574 (commit)
via b80a981d0867f554d382eef9fc16081b12ac0543 (commit)
via ddb7060226028e5e18c340a6d072337ead3209cd (commit)
via b37dd3bcaac70cede547ba41fdac7878a0f4c67e (commit)
via e148f09d75af9e5c6af5136fee3a5a298114d41f (commit)
via 93b8bea4143cafae79076076c64aaa4c46a9b73c (commit)
via f62f6af5da07eba0ac5425365da3d82c43f3445c (commit)
via 1d376700df2476d8a8ca4fa503bdcfb0b425b683 (commit)
via c233e9c641a84e69603bd94d0e85050c361b64a6 (commit)
via 5ac045503de7dde6793b318f89d251addc161f66 (commit)
via 7ea05a7b634a895128e87c8c71e8e611758cd4bb (commit)
via 3c65e5b31cb5587773deff979099435b9687a0f4 (commit)
via a60f3166aa946336c68e7a873d5eed6061b5733c (commit)
via 56ba65a04713fd8ff23908d4c57f75427317b8bb (commit)
via 3ba174474d3cc063d6b7abf0bfdd6021bbaf8a90 (commit)
via 232a00325b0f97e108014148c68ae314e90cbb36 (commit)
via 3391569f218cd5d05e96769f47559d5828be3acd (commit)
via 8095d2f70e1a982c006f306be1a9e1c892758914 (commit)
via db841b6fcd8b3bc2e6d6774e81c14dfbb9ac815d (commit)
via 0458ca44409420c3d5cdbbb21561ee71fd930d31 (commit)
via 79f5b65e3e7b10d914b1328ce6e9ad7c9ae39c63 (commit)
via 8f153adc1db75601619dbead97fdbe621fbf69b0 (commit)
via 4c6933327e2e30c97ea4e49dc6f7e0f48941fd6f (commit)
via 4581dc8297381651284e2f4a9f835eebcc6f2328 (commit)
via fbb1d502eeae135dbe6ac3b0b122e574a9b888d6 (commit)
via db3410f80f793189d3c8afb8b80951333d3fe007 (commit)
via 442a6ce858c0da0c5fba3eeb57a646254adf107a (commit)
via 43cc6c3adb7f6ac45c06011f439ed06161d1d770 (commit)
via f559b440bb6dc6eb853125039dfaaee84f3a7522 (commit)
via 5f32791e1ea970cabd6ca764f1cc282d9e8fef22 (commit)
via 625cbd7ac121a6df6d237c8368262f6634fb61ab (commit)
via 86b15c32040ae35c74e84b18f7b65dea94436458 (commit)
via cf769ed505ed9b3eca24df67bb9cfc0adc1a033f (commit)
via 8282b7ad0dfaffce380cb668dc2a8ca473758760 (commit)
via 755908cce568d1cb5f2a3f1cc64472ed43eef8b5 (commit)
via 7091c612013ed63fedabc26b1662c87071e41fd6 (commit)
via c30be56ebf7989e36f5c7d4a703cb00f7d4ca2ab (commit)
via e387da76fc6ee61f6bc30edfa1210be173e96db4 (commit)
via 3a5f2a48ffe3941396d7a19d9398c9a4945b4e5d (commit)
via 557e56be2648db13cd5d9876f702ba119ee9e7fd (commit)
via 42dc7699a26be0157c438dcaeb89da38287c6d2d (commit)
via 6592ceed489043051d02d41dc71f51e8ef8aa6f0 (commit)
via d3554ec1ed057f4ecfee35d4bec81f9d5a545cb1 (commit)
via 972450a72cb9e75a5dda614d29b04bf738d38cb0 (commit)
via 11a322db5c8bc23009e97af30180d6b14d86dbd3 (commit)
via afca762f598d453c563f244cd3777715b1a0cb72 (commit)
via a38137289e91fd548fc27fb6566a439233b94d65 (commit)
via 0984c34e7683e1e987eaf4f9e057b678cb67efa6 (commit)
via 012ab4137393b948e7d5c9eb7e0124296eba72f2 (commit)
via c6c6149af440c3032eb7d02c2852907c61aac470 (commit)
via a1a31cb8dce7d1bfa7878dc08c28af330ef2ed69 (commit)
via 15bf30027bcb167833a0ca2c619c03f177ef1ba4 (commit)
via 7eb1a66c26b57803bb4245f84cf15278297bb649 (commit)
via c691de6a16a87adc686ce5cd6c9be54ee0b1a8c1 (commit)
via d5c928c05356b22af08450bf43b262ccc1b1d8ee (commit)
via 27724bad005cd734eb0b990205d315f8e2d3bd35 (commit)
via ce73f310150418a9a1625ab60a527d959096a9e2 (commit)
via 056dec39ed11e0027ae399018c3fef3a719718b9 (commit)
via 4735f0edf4265e3e260e10a12921baf17987a020 (commit)
via 0909f342a21207c0b096e8caa7462b1c6809298e (commit)
via 117a0e996dab2abae985a2b4251ebfb092955dc8 (commit)
via 3fd217186c573ccbe22ad1512578fd316cd7870a (commit)
via cb2366c198d4c22b4bae6fca8f9ab4b0234c64aa (commit)
via 8a67aaa8186ccfa10374027d0b3645548eb5f30c (commit)
via b4792091ca60bd865064a501d50661f522e26636 (commit)
via ec74dcd894ce3087dad2b6d0da96c572d5e0c7c6 (commit)
via a700e753e5b019fb5d783c4e15cb29f165a339d3 (commit)
via 8b411ff8d537ae34f1336ba1e9694d694ddde27d (commit)
via 5d691c8829d0e5c4c4b9cfb147c8a873ce18085b (commit)
via edb0470b99a9f399ccb5d666173c4315f6cb02c0 (commit)
via 6cccc9a89160455aab634784c231af4590d943f3 (commit)
via 652788a73137d8c16ac67a0cf9a8e51dd336d09e (commit)
via 8419ee5331d5b3253d2bfe1a039f12a167292dfc (commit)
via ccdac490bb3b568e88626afc84017c79e2d086e7 (commit)
via 43130d6f969cebcd407e210fd06e565647401ba9 (commit)
via 77d6f1aa16685bc715c95decf6e3d3ae2e70dbc1 (commit)
via 2c722d18f32b1c1f82c7546b1e41edec47d88dce (commit)
via 5985ac614d7e8ae65faadf62e9302c1c096b5647 (commit)
via 6b84eeb21628a89b40c985b527d3d5db7806c93c (commit)
via 2150c3ef045a525b1d74c06eb8b0811621f264e3 (commit)
via 0ec44fc067ca71f968a4fedda1c17cba2e5ad0ca (commit)
via 81cc346dc98678c5d196c7110795d8f2edfd8f50 (commit)
via 2c99ee5c4f44d52258fa176563cc6a4cfbf0069d (commit)
via 530fedbcbf61b6d74c76a8ba720fe29d98896831 (commit)
via 6a976300e78cf6c90b5b70626ff1b28f495d8bab (commit)
via c0015d4497e0057536b5ec7e0fed8f8bca07572e (commit)
via e62cca7ccb9ea47d18a0812a2c27f00e5048367b (commit)
via 905eb0e293820ae91941100ebed291a8f74e1f12 (commit)
via b248663fe5654192101fc95dbe0cbfb389564359 (commit)
via ad96220cc73a2daa24b1d2b2e4afed557879e6f4 (commit)
via 0a8288f78ad4d8d273b3dc7ab10b0fd43464d0aa (commit)
via 3ac21baa8498d3aa9951f79e2c3336d532eeff7b (commit)
via 4ad422a6354ee4c9a5c6e0236b4f9ded36039bb9 (commit)
via 4869c5854e255b545447fdda31a6f1a69d937fee (commit)
via b63ea3389dd991ebdaefe3ee264855ad923cf700 (commit)
via 1074bc6d41f480e9e7b8f2e68f778225da2559b7 (commit)
via 1b115e8e0e051d65d0747f0a8a84eb6453866729 (commit)
via 6cb624f8a02a844885025dd6d756f9dd1d380023 (commit)
via ff27d0737ef0c9433a6a7c83c1e678ac57a27699 (commit)
via 1e65a4a40e778e1eb58fb5d3b8d00be879f7ee63 (commit)
via 31375626546b074268b2e1ccc7b52704b04bdb6c (commit)
via 6a15ecf5e0538ba416f6578403fceb9e5af98120 (commit)
via 7f1f7e23939adc7d71036a17fc6081e3af7ca585 (commit)
via 027a4c30d03e3f434ddfa61e7f026e3b15f83daa (commit)
via b84f59efc6d6d8e97135a1b92ca224d1b2cffe16 (commit)
via 4ef4710f5c3e417dc43057e10d7675699bb38431 (commit)
via 5c1eda30f55e9c543de26fec0246f4d7655c81e4 (commit)
via a780ef4f27f8bc44082be81fdbee44bb11f1049c (commit)
via ef2ddb33bd29a7c4f7027b9e37e55c74c15af825 (commit)
via 9451a3b9a1af46cbe988c3a2cf4c4754d7e84143 (commit)
via bc7b042bcb22320ddc1b54d45b6a1d264dcbfbe6 (commit)
via 5759ebb3b35f4bff8aba7ba06e8b0eb88d9d0831 (commit)
via 3606ccab0fea904adce8487ce4b2b26253a861e7 (commit)
via a14c4daab2fe90612e63169425e74098e74d5f28 (commit)
via 0a2323003c1ecc356252426f6ed3f45309849ad3 (commit)
via 1fe75df7eb1fcdf56bbf3041b473bd9a80120054 (commit)
via 6a70eb7d9bf1646e7a7379eb8efdba30c2cb9c92 (commit)
via 529c08b25ec7b9ba2a0b94083a08ec8d1a6e5528 (commit)
via 78da84f9940586202deb4e43decea6d32d237080 (commit)
via f880fcab1ae7713037ec85a56268f853fe6ca835 (commit)
via 64b5847236593f23564bd37afb0ea503f751165c (commit)
via cde3679eb5aca10a6d09f6aa4f846ac99a3371dd (commit)
via 45a28947f3fe5693560e9a1d6373807a9e82c04a (commit)
via 55cc53e98b86d9be559073c4f062735e2099d1fb (commit)
via 639eff935742fda1f8d5fd629dc877eda9975c96 (commit)
via c7ab0aef11d91b637bf091aa9176b8dc4aadee46 (commit)
via 4c7333b308f5178813745f40e641231efb1cb763 (commit)
via 31445d1036f7fc41de2724cb016913c9b1461bb1 (commit)
via a6f88f6e4458e672b8a72ee0c0998fdc79cf601e (commit)
via 16ff70ddd430b63ca4dd68bf1d52828f2ed4f030 (commit)
via cb19713281c69c3625dd447a0c2ce539761989e2 (commit)
via c597cc3d6eb76802dd079b1262f2d425e07da3eb (commit)
via 1cb83cac9a8974bdb12aac90018ad1165ba86274 (commit)
via 9143e72c6d4ddefbcb41c0f6361ad140354145ef (commit)
via 04879304dea94c02f19fa5c219d2cbee6269f9af (commit)
via 12863263d6f610ec161aead53df89586787b2ce4 (commit)
via a79eaed6a5075ca062d6d8ff3d7a5ccce5d1908f (commit)
via 2fb5be8dac9db623ef6e2a61b1f5b09fd246872b (commit)
via bd59a6313dbbf349dff197975f1b6a78be51b7d6 (commit)
via 7f5cad304773ecbfe8b390e0b5d79fe11edb2a6b (commit)
via f0a85b07061964d6c608e6280ce61aa3fed1eabf (commit)
via 76d3a78a498e814fa1fea713091849cba7896f7a (commit)
via c7df3df443db7b1840735c86a38e00243a2902f7 (commit)
via 1123588c0bf1d777a3eb9c01f2370473a14a1ca5 (commit)
via 71feec82131fd692711dc773b1f9ae9365b51432 (commit)
via 500c05ddbe989926d6b1298bfc88e6788426e0ef (commit)
via 5270eddc6ed6b5d8e4e2817491bb44b784fa6f81 (commit)
via be570f06848d262853de218e0b24245c93cb402b (commit)
via 1594e052d4fec8690b6bfabd369bc030135eb91a (commit)
via 624940689a97573ed1e24ae054dcb2fd6906f557 (commit)
via 3541979fff2861c9537f299e31ac17a436bf1228 (commit)
via 8c49aa89abb92516dfc3507b540f736ca6339c0c (commit)
via 42ecac1732194293568ab6093c742ca74c1dbdf6 (commit)
via 7153abac62fd8d7f20a307c85e3aa77a020ffc42 (commit)
via aa4bd7e6aef39f3d9264901fbb31473bd639bdd5 (commit)
via c3c5e486808bc473d1642bb4ba84d80689c8fca2 (commit)
via 8d4c0995eb0996fdbc0ee490317e3765a94723d7 (commit)
via 4b8377e7dbd9e53149268685ba4810a7b09fb0cb (commit)
via 055303e28f70880f7b2c3e44df0ba7646fc85cf8 (commit)
via 2af4d0d938d76e96ccb862a23d05862154262de9 (commit)
via 8a8c916960b0e1b00a5d323fc478f4b4ef1072f5 (commit)
via 8f7fc65182f74dfa8e2aa9f81a1cdf786a3bdbe6 (commit)
via 9dcb0ba4457b8845fb704635e824471bf1faf092 (commit)
via c8ad9b9a31aa3e6039567fc1f152dd454c946d5f (commit)
via 8fd32c1ce66c66b02b2eb506a038cfc615aad1cb (commit)
via 31278b5193ea6025c09110aef2d67d81a952ebcc (commit)
via e5fd1493fd9c2d8d55fd15b9bd6539781ee56209 (commit)
via 981e0c0c1aabcd78409184c79e8f88b5de918e38 (commit)
via 14ccceb2e24df7defd5264ec3d078f79ecfa1b76 (commit)
via 5d3c3a68c3ffe37c06a7a8dad30c19241bd39f7a (commit)
via 1998086d5436499e8eaf16772e300459662c3d7c (commit)
via 4c7549492b301d7d118379c3e98afc0b364d1935 (commit)
via 6497f1dd035530c483fdae22aaa6fcc715775f58 (commit)
via 97a34db94284f42829e5e5c9c4fa65b216739bcb (commit)
via 872899f1efeda1e93ed569d322c6b2ee85ce885c (commit)
via 61658d78f08920e6afe7b43bcaa287521da196aa (commit)
via f5a1cdde80a5cc5f1b86be7e94fb062d3fd4aca9 (commit)
via dc7fc9ab5dc4afe62af8703a26968acf08b4437e (commit)
via a47a3dc8fb3512865a0115e86fc901758a62e0eb (commit)
via 25289ac1670fb164770b0753116b1e909beed4cb (commit)
via e83f4d97504515f8c5f290eeb25eac87cca6892f (commit)
via 674e55f7b11e4d3ac6d321cdb0b70c68f24fe564 (commit)
via c451bb34ae8bd2d0669bd563366883cfbcf0de9b (commit)
via ad1cc4e492e51ff334df81b5e8610f91b50e373a (commit)
via f311ba7ed84d66ae2cd77bd969747d7ab959d866 (commit)
via cba05feb51cb97f75f9a7814b081ce45245ac7b2 (commit)
via e0e5e971ae89da1ded13013bb7378dc5f09363af (commit)
via d20e98ab59ea49d3f90bf05ac7b16c0d3588ce41 (commit)
via 2e48456f0236d39b6de98feb7168f56cef155912 (commit)
via 269965964e8a6586a07912a60e08eeb0053bfb2a (commit)
via fe75810f8e0cc33384f22d0479506711d4014c60 (commit)
via 724436fccb68156ff53b7b03cb7f41547a65c30c (commit)
via 6821842f15efaec045d9e38f115af01ddffdaede (commit)
via bb11866d6a635fadb9285d18e2fb819d2de2c28c (commit)
via 01b5d12f284e1ce5a1441ce6ac383a59f3e4b05a (commit)
via a5628fa8443f2182fcd799e03de31d1f8759df83 (commit)
via 56ad703d56ffe5dc55d5e719a6ec41fd6cf9bfbe (commit)
via c524414837791938eb5aed58a3334c4f8e04fe4b (commit)
via d8dab05495df17d8c961be8913e7a1e152670382 (commit)
via c530603c59efb5630ce67446be64d42c0522fee2 (commit)
via 4a91d0ba307eb24eb87ad27f4ea8fcde823c3e61 (commit)
via 4423fa967210f4132b81d5fe80a1f6f3ec0ab1c8 (commit)
via a7d0f0f000b39269c25509a22a12549c6ef26b1f (commit)
via 6242c6a690ce8e18aad711103902bfff00cc2757 (commit)
via 4e5b2f8961a385056922f45a5cbb02bbbad4a737 (commit)
via 538ccc4a222e8da14236fb5639ffe6b5ed1931a0 (commit)
via 1b919490e8ba30bf1d6941df0ed112b0e557017e (commit)
via 94d401b8b88a76b1372ce44e805516756a4f737b (commit)
via b14b7ff14ffe911ec562004304841cf7d2775a19 (commit)
via db40acb0bed088872837f916029d8800c33f9f94 (commit)
via 1ea5da02629b4bf9c4cea50aee189f94fa7d1a3b (commit)
via f51e0e20bd303a9b366084ac719db10978402713 (commit)
via 9b960ba18c83e3f9aad16fe8bf845f5c469712bd (commit)
via d7e15655a40e9133a1cbf53ea071f82cd6745ac8 (commit)
via 26a57c9256d7ec2b4da2f1d85a9fba830948dbd9 (commit)
via d2a107e3f9e84808ae0860693f1c488b1e3f5559 (commit)
via 15a9e13e521ec3acb4bd3616f349b9d19780cd48 (commit)
via 0e998d966be13e548721109a4e44b2887fc5cb24 (commit)
via cc6bcb548d67a5a0a7223d81bd43c299312320c8 (commit)
via e38504b39279fa86cbb2c4a45ab8ec34e3aef90b (commit)
via e99b03dcf42606425eab8bd12eadb8aa4007f35a (commit)
via f2907e49910853edf3c1aec995b3c44b3bba8999 (commit)
via fd79271bd9dd6bb1626fb6f5ec3a415dc24950b1 (commit)
via 057302ceb3b1c171afe9bfa24642af208a60b6e9 (commit)
via a50c11c666e07b922d64aa5bb2747f180ce17c03 (commit)
via b8a6ced79668ec8af3180e50b76f7517ebbab0d9 (commit)
via 8d2c8c3d17926826864f4b739362f66af547428f (commit)
via af0bfb9c4283ce80fe37ad6360d12cae8ec38696 (commit)
via 1825c89e221b1bf80e73e858f1f2afcfe51272dd (commit)
via 12f09816cecc4e4ee7574a86846b3a17adbf7904 (commit)
via 14c80123c05ad7cbb52fbb5d35c08b46a0e72d7f (commit)
via 156f2c001e22dfeee69c92bdb380d5eb28a3de78 (commit)
via 30e5322741b7cb8fe90bec43ab93eecceaaec0e7 (commit)
via 471b9d15076fffb738f1bc6fcea41d0dcb59c947 (commit)
via b638b5d57fafc84a8dc0ff91d7579a3c24aad90c (commit)
via eac61af65bcd24a48633da375527eb3f36ab47ed (commit)
via 41823f29a811bb250ae274652281a6294fdc2530 (commit)
via c0c468d562649df0f695737262b6230b7a56a4bb (commit)
via a05a5b64cf33d36d93a92fd03ae900e18dbe5572 (commit)
via f2075844e2d4dc0f3f0d15b1acf20651f19cbb33 (commit)
via 3e4ce31cb84b1b28dacaa5bb577da1e9d2740891 (commit)
via 4119873a48042e532f7485b84cca83ea0bf1fcf6 (commit)
via c0867626d277101afcead91e94f20cbe89a3aced (commit)
via 6d3c4956402409b711738f2c0afc02f6c9d5782e (commit)
via 41206e32fb909ebacf6db009fc1f177bde74a652 (commit)
via b9c04e5a8289507fdeb783c337f59a76ff491685 (commit)
via de52b9607d2623f18b7a7dbee3e1123d8d63f5da (commit)
via 75acb4867dc8bdd701983af6899d823c9e2e53a4 (commit)
via c76a8ea36c9567b2b194285ceeae29bbfc26b20a (commit)
via cd2bb709940d33668fe6dbe8d4ffee0ed44c25e6 (commit)
via 991ff2922affa0b3afb837d2246d01f0c1fdb364 (commit)
via 356819b6bcc793afea9495243c588da989b4e6e1 (commit)
via 49af4b7012b682470bba3d66262bd34f48b9f500 (commit)
via 262e07d0115adc08cf7481689d9d146a01ee5bb8 (commit)
via ee9439704485a1e9413470fe2634b164fa31644f (commit)
via 369c9167d47e69aad2e260cc1db17f8c894c138b (commit)
via fd1ae9058720aa2738cc4852647097dd89c2bb88 (commit)
via 44cee4fdf46a13b63d90ed706c815d9c81e972e3 (commit)
via f2ffa92bbce9dd5fbedc138ac2a3bc8a88327d09 (commit)
via ecdc3a72c89e43e0e13c5478723b4f70b3964e9f (commit)
via d95d3aef9e63242e732e293e1f081d40d0d27eda (commit)
via 2512d7efdf49a1b8953932626bfdfa1da2367d9d (commit)
via be1b6474f0d471c01f5c4d1f33e4f13df9ffb82c (commit)
via 291f9a9643f87fa4eb6a7c280eaa3877c11e3a1f (commit)
via d81a3eaff36b41ed67758a119a6864b50f60a60d (commit)
via ed6dfe517ee323ed631aa8b9816289ea35219409 (commit)
via d4d429d589c4d6a4450146fbcac8e1aad445114d (commit)
via 39b27ab6ae77d4fe1735417f2de90eada658dc6b (commit)
via 1b47b6a21896902a959becf9f06650612a9cb0cd (commit)
via 41827fc34de3463891160a9d57df9f5c58c0b65f (commit)
via 0c6aef226ede6ef6547adb170fb5afb002e96257 (commit)
via 6317728958287f0876f04941267de5d87eefa578 (commit)
via e76f78a05299f34605fc8ffa8b371a50b9446bab (commit)
via 9a14af7b1a6765a353d4bf710d267a1c47a162fb (commit)
via 189366cd86ce2e5758c27054b7f62d1f769a0825 (commit)
via 68ad5fb9aa5ea8d00f95a19cd0c3ab211fb21f83 (commit)
via 141ec9f67f11a34bae5953b2923bb71fc74dd52f (commit)
via 4c4e7ad46ed77f552e2624d2f711c0ce51714395 (commit)
via 7ab6656f274b450942deb8800257c0d2e060fa84 (commit)
via bd583225a52f920f71e417ef87092d25553dc85e (commit)
via e11078da44268a4813ed81a27853143af86c3e24 (commit)
via ac0734dea70e4d3d548ebd9282e88d65947b28a9 (commit)
via 9a325b7b3ff056647de536941eaba911d1d794ad (commit)
via a33ccfc7afd9e32dd310f54d04719efeec8df342 (commit)
via e0c547d14ae1d5c06b59178f4b1dd1f5e08b3feb (commit)
via 30aa13067f70ba1d11c35d13be753118c457842c (commit)
via 791755f59dde1d1bc191fd3742d32929091dec83 (commit)
via 2822b09ff6024d042f1258194d6938c5a401b4fb (commit)
via 2db70efacd3f8f208a1ab7946c34f79fae33092b (commit)
via 2393a7e3e6b3ec51bc404c6adebffea5db9f04b1 (commit)
via eca4b721468e239a6a1ca7c9bd9c967085067dfe (commit)
via e4a882f4b042bf44bb2668373132be2b678dfe47 (commit)
via 75cbc781e371279f4403045be93b07fd8fe7fde5 (commit)
via b7a08269ca53323c5fe190370da281358dfee6b2 (commit)
via 1021d1cb1214771711c61117ba0923c73a3ff431 (commit)
via bb69498c61638ea88b626f78e911afa74ed22da6 (commit)
via c1080aae0f87ad55d1fc6003c76dc093b3c0749d (commit)
via 79d89b552486a1f65b803115c8f99a93cc5c7486 (commit)
via 71300e2c0c24442979a3d01b8423cfaf8ea83003 (commit)
via 5127f207329b795f865234f4461b230d159e2a22 (commit)
via 719d8288507d9f35c76bdeed5b597348bd345883 (commit)
via 6706f7706241eda253d26ce4c927dd5bed4942a7 (commit)
via 155ea1bc92f5c9b34aa5251045d08d6409ca1de9 (commit)
via add4131108de4b4a0f3003cb542e9548914fbed1 (commit)
via 750ea5ed38abbda8a6f25e276bff3dfc8e4ce0ee (commit)
via a2575bec2413d361c6ecfc4aecb2a31c86123f95 (commit)
via a1893a821c4a2e953d13b97360b85650f2127134 (commit)
via 2e7a29d5701d6b320cddf0b1677116d2fe49587b (commit)
via 6d72d289c4718c72f36880876d7460d6da4fa21a (commit)
via 6c04fd9b2fb4396c0189cb414ce598161ac8673e (commit)
via 8e7767e3f782c46451a548d708f5582669d7a6d7 (commit)
via 514cd3a0f589fa48ca7bc9504c36436c0cbefcb2 (commit)
via bfd60e344c8001910825a358ad674003738ebb6b (commit)
via 8ea3acd6262f066f651b250826eb2c476de42dd2 (commit)
via 385e4d0f27945ef38e19a8fd3ec4cd76ff3b87a5 (commit)
via cea6ffbd06a6ebb5c21cb51e7775b8ebb5e34f38 (commit)
via 1ced1a5f108fd0a0c88d2298dbdd2dd2a2ee38f0 (commit)
via 334cd8a780840d6aee86790fe2fe5f02fe56edf6 (commit)
via bb29b84d8c2cc2e91f8dec7f7eb64f03470bd03c (commit)
via 25eb8346acc04b10d62295eb4c67c928b01a8aaf (commit)
via 00431a78b28f913a9d5c912c49680e39cfd20847 (commit)
via 33bab475a6984afedac8a036b3bb40b5555b4127 (commit)
via d388f64333fb977c1b975cb9d26c762b143f4cb9 (commit)
via 8363f9d5f2fab2c8b5a25c35c572f0426a716b66 (commit)
via 57c0d77c2ce5e583dab322e05f8291bcbad0ccd3 (commit)
via 0d0b0ea29af6abc0790d22f843a3d0cb09424a3a (commit)
via 6ff79ccd1ca06a4c557ee81b73e0a535b9fd6001 (commit)
via 302abd6e9facdfec3473e19ff65a5479f850ad62 (commit)
via f00674fe074f6ea778503a50132c3214a9c6aec8 (commit)
via 19f3f25f370fbf7f5c2aa12a909d57f6e38ee2da (commit)
via 6077de0645ce12a9c4e99f8839a846b42a535b0a (commit)
via 1d554008b3747c6ccaa8e3a08cc797cfade242f3 (commit)
via b939d8a0dedbe0f0667500e1741e25baf03fe64c (commit)
via fc6141f097056f830a412afebed8d81a9d72b696 (commit)
via c6643fcc058d6b4aebca75818fbbb705837a9fa3 (commit)
via ebb1332297da904a4adab0d3696a5512604f5edd (commit)
via 160d1b3d74593bf42155da24569f54a6e7140f65 (commit)
via 4ef2c1b90ecca33c2948b7b009860767d64c6398 (commit)
via c8dc28bcc04532f3074a827dc940c033be4be4e7 (commit)
via 27ab04240bb40e052f288b2960fb99210b6f67b1 (commit)
via 7c69913eaa31cdec6bdc9e7709f7d01f81ef8c55 (commit)
via 789ff5b6c26ce7e4ebfcfa5a9a695407c17fa4ea (commit)
via 6a382bceadc7228d20746079570a15f115e55d0c (commit)
via a4eb69274d3b220b6ec22d019a8994e136f9dce5 (commit)
via d0ac1c44885daf68f631befa37e3f3bad318fbbf (commit)
via d856f9a8d64ef35b66000c42981f2f66f133d794 (commit)
via 6ae502670996ec6e8b574dbaa4577d79fa9e9799 (commit)
via 61b04dd04ac2c64d455bc6e17f08a106305b06b3 (commit)
via 3a075e5628e345701902fd696b4f27941a6b87d0 (commit)
via 39e07931b1be69b13acb8322687f825bd00afe91 (commit)
via f63b508a8709da08448ea68c9db7c5d9f168da0c (commit)
via e31716b076446c171d2fcd6a4d4ab7d04e618525 (commit)
via e054112458e12cb562cf84cabcb1970ca5ef1ff1 (commit)
via bf2977b5f3d25779cdc06ba79c05244d70bd8b59 (commit)
via c4eb05ff9a3739378f8a846751da4d0e221b4c8c (commit)
via f709fabb61246953e68ae46478a3b269c0615fce (commit)
via 668eb2f045ea535976cf484355831a8808b5ff35 (commit)
via 309822ca289d602b9f9baf4760329ddd08b1d204 (commit)
via 06424eac62da949519c0c641fbc3e8372a9c7f0b (commit)
via b4be9fadea469e2c937c81a8f1d3243206f9bcfc (commit)
via 3f0dbd670b59aade6224aadcbc3a1943a4645a68 (commit)
via 69d340c68449f238fe665abf4a3a7989cd2d8376 (commit)
via db67d458959d211835f78d8f2aebb5ae84eb42e7 (commit)
via f57a3bca61357a599be99552aaa6084bd8276682 (commit)
via b0f49e3fd776bd64d55c76f001f353c1327d3001 (commit)
via 978588dc5854b02dc24e0eed18741415176753d8 (commit)
via 37f980dc03cc85795ea2e4de4ca69d3d7d1153c7 (commit)
via 77236b8349e95c869179b1efa4e6c2ee5c878141 (commit)
via ed1299fe460812ad4bbdc2192d0c0cbeba3d6b66 (commit)
via 02895270ec7243f46ea3e84dc385515533dc0139 (commit)
via e9902bfc28b80190c76ffe5fad3bb73fd4a2ba28 (commit)
via 17a1cc89b5706f0ad8142ab85d62bce33249e905 (commit)
via 0fe3a558306ba4792c96e7258bd7209a206e2867 (commit)
via fd8079f900805d333e4b39657b8da1bb13dfe8cb (commit)
via 8887b88af8e3cba76ed9f28c7ee8eef78ead36ec (commit)
via 7010835a6c5fd3679feae7e6345f2f10d4d761b4 (commit)
via c8e17638904b9cbe845ddf9a7b08149f9db63866 (commit)
via 479b3ef4a35ce578417af4619c5e87477e658333 (commit)
via 5785bb826b2618831af26bc19cf7db2c80efc380 (commit)
via 8199b8f4d45b2240d09142f1df70849dda2cc638 (commit)
via 55c748a1c01f33cec0f762969db1bae457e8bcca (commit)
via b9a3c020eab9f6e73a439592b3ba8f8cdadcaa1e (commit)
via 6f20c942c3dbc08d02f74e4d508e19f8617bc5e3 (commit)
via 8993072900ae3980957f704a1e3e033a22a4dcac (commit)
via 74fdb8ff707f0a02b587630324d29c0755e6b5d5 (commit)
via 87a8eca781910ec2079426f309145be18df8106c (commit)
via 0dbfed25e9d4a01ea3f57b76d77ffbd8c066de0d (commit)
via 14897d65b5a279684289bf6b99136de60c31f1c0 (commit)
via 5d9a06087942ddf4f9ab724b5b4c1a45507d8321 (commit)
via 1f6f5dba57ffbc073b1ead89647288feaaed2caf (commit)
via 7b045207d1b8980add1c87b643504e3ef987e7a2 (commit)
via 11ae5818f76e0af4dcf7ee069e0756ccf6901ebe (commit)
via a898ca0e0c5893c58b60a7f76225d104df240549 (commit)
via 1d39de443a38448226ffc408290c17c54c598c39 (commit)
via 70ee000084aa4fdfc00bd5284a024b65023dad35 (commit)
via 11f4b608e6977e7800fbe5625c542be8cf7e241b (commit)
via 7f923b7fd2a7c55f2337b3b79a2b2081a7bbe22b (commit)
via ff91d2f0e20fc91b6b101a0b20cbd38ab2d7fb50 (commit)
via ab89b5a57cff984d1edbcb6ca19c8f4a77c511a8 (commit)
via 7be6cc928461bce11f52c01653b1eb916ecfbb8e (commit)
via 730c31740a69eaee73e0fc5430d80daa683c26e7 (commit)
via a08ac84b963facb4c4a85c4d5df057d44e2a276d (commit)
via c75d3d4144fa8b5312bf581451bf800251b7bd71 (commit)
via 7a486e6d2ec4aff56cf280dbad18f3f651f45714 (commit)
via 62c808aef64d77d5585f54c792ebe3f388a960a9 (commit)
via c75c496d6db058628694329fed8a40fffb17fb54 (commit)
via 1840d81a201932a2d5ad5b089aad85943a5a0a82 (commit)
via 9516f85aea1d9a34d1cd3f59b7b9eeb590e58c70 (commit)
via defd21729f1ceb51999afcb342310835f8ab2faf (commit)
via 1d3bf4a0a07d0758842fa5cc584b95771e7c226c (commit)
via 212b9bc7b4cfa7702005928dc3bffb3ba3a6e19a (commit)
via d89c18895bfdbf092ff34fd7c593cdab4105b5cc (commit)
via 7b23e0874de0b15fdb33fdd2e8c3563ff67a4f60 (commit)
via 69c67a0b2a93ba8c431d1ebb90d57a1e4d0ec3a1 (commit)
via 90b345f613e3ae8b21d2b5efd00a6970f57e578e (commit)
via 41fc26a2cbc1dc1d08da003d363b2b5821f62076 (commit)
via 092a534fe14be3eda270256fb2799fd893a1f57c (commit)
via fefa175e8f518f17121a1870270a415c851cbacc (commit)
via 5a485b38994ca09481863fa509cff4643552e1ed (commit)
via b91ad3ff949be78a43653b6138cbd515d4bdb637 (commit)
via 65d4cadafd7d9d5bb84810cde98a8c3a007a0594 (commit)
via f868386e72baad6f35d4288f433266e03ed2753d (commit)
via 9c861883169cb9eec4581ab6db3a1b711e79ee10 (commit)
via 953edf2b6cfe765ca7176c414e9f63aa62bdb09c (commit)
via 1ddbba9df5fda9b1af5306fe182a5f1c3197f53a (commit)
via 219605fd6adadadfd40234e39254077e044741d0 (commit)
via 71b73764977a3895b0dda3e7260eece7a8d3e60c (commit)
via 65a68903e2294fcd1a5496a4fe467a5b28dc0f27 (commit)
via 4360561f5a326d9765cf1d95e5f779c5ab51045e (commit)
via d14b92bf8a7f4c57eb6c5fca559c7bbb8a747358 (commit)
via 835dcf92618e294d3c6c2bedd94af712809c96a3 (commit)
via aac0d564cea04b1c5f386e8cea924ca59057e8b4 (commit)
via 09897e3330d41699b6146f9b8767734f92587dcc (commit)
via 405918449085378e96dc841a3d536ce161ce1539 (commit)
via 77ad7394454c29cc7a4a865cd226491df457f6f6 (commit)
via 191cca638351fcaf9bee93a396bd4f8b74f915eb (commit)
via c5d0225d250b4c6537a0d22f0a89975834bfd294 (commit)
via d68033ea86780183c2a2a28077fe495acde5887c (commit)
via 653e0a1e047b00d77bf9b094f06a9781d6d45589 (commit)
via 2f8b83ee9629c41a171d795ff600cccb00e1b119 (commit)
via 30d42fef63b418428c92f6081172e0e5d62b6d36 (commit)
via 6341380d5cb8e645d79953a24701219a048f426f (commit)
via 03349c934525d0f78a3f971a351b1202ea21ec94 (commit)
via ecf99cc09236316db27fd8ffaedca864f81ea081 (commit)
via aeab512851bf6ed623d1c6c4305b6ce05e51a10c (commit)
via 5045b3d78903d1f6faa4cb511fa801e50dfacf48 (commit)
via 2f4f025ff15b900706c8597060003a506107cf23 (commit)
via 7ebd13590ca56ba32350dbfd1b66c5dc2468268e (commit)
via c2a0f9293adfad7fc1ee6a264f2f4f2a29872e64 (commit)
via 343b0027aed57c5a2d499e7e6e228608969a10be (commit)
via 8dcc53b37f4fe4797825c2a43bb1fb3df56b30d1 (commit)
via cb36699271e2f3308b6f1aa40086950111308020 (commit)
via fd161d860f1df7140153eab4726705cc3e2727b0 (commit)
via 4f652d7b9a15cd3aae25de38f51baafe7e529646 (commit)
via 13e3c6088e4456ed27dfdf9127c20d252895d874 (commit)
via a1740ee1573d6e0e21692f815b322e3d062bbbee (commit)
via d6ca69cddc3fc6ef61fdfe3c3803d13b0b4e13e9 (commit)
via b6a8c27bb8fb383be6f57724eb9aafa9f2f83aa5 (commit)
via 8b88a78e63526b84d540b9c7d5f459593a248d5e (commit)
via c7110220be62590222e35525dda499902ee49a89 (commit)
via 2a9b2c1abe29e1063240604d2464b8de9a46011f (commit)
via 63bad7b636870e3a0af4fc97cc2b8ec5c2603a41 (commit)
via 066b621238bb79de517564284ec58e99fb33e6bd (commit)
via fc6041a7763e330413b7a6e7f77c38cbf2b67793 (commit)
via 527278f3360dde3e5439b8d10f3f635155b35aca (commit)
via e5a77256e8961294b3ea7d483124834311ca363b (commit)
via eb5c42e511321b51849735a6d2762941fd5d6520 (commit)
via 08f22593f0069b1ed00fb4fa18b696064a1cef54 (commit)
via ce72cd46ec611fe6440053f282b1b6cb7e977ff6 (commit)
via 773ff7907c05313aebbcd5e8319e5b869ac4f792 (commit)
via c61b06a19a34baab66e3809c7b41b0c31009ed9f (commit)
via 115f7325b5b76450b9a1d16848a2a54f54e49747 (commit)
via eb6af80922a56b67228f7564facc4cb4aa44a0ae (commit)
via 5c4ce239a3ab9263163a0fe8e7487b39a41c43d1 (commit)
via 27b0767593284f97384b3597ebd211164f8c8b47 (commit)
via 8347745522002d5c0093bac584a2eaf9386ad219 (commit)
via 112ba8675ec7756ef8065feb655df2d4f39ee731 (commit)
via 84e219e23cfb7d2632dec0d1c3ac2d942b620882 (commit)
via e6d079c2fb797e84d7d234f9c8277fbe4558213b (commit)
via 54d343a24019367e85bb2e90966f2da483868637 (commit)
via 178d6a638693d1a7a66b0553f16b1df95b4f27ee (commit)
via 4b8e28c79356265b2c111e044142fb6d6d2db44e (commit)
via 8255c61b8ad5ac933672d26e5c9454aaf09ccaeb (commit)
via 95da9854466ada2572b42f5528711a06a2d42db1 (commit)
via 62b74cb8b00ca2b42de30ceff4d2f1552b77a10d (commit)
via baf00c2d75351de7a42dae32aea3a71c8902cd25 (commit)
via c12a5089640109567e2e06f0c5d2d1bf4fb3f5eb (commit)
via 23081219bfe58dd07b1e0a110728d7195155d0e2 (commit)
via 214b073cedadbdc7a0d272dc5ede79a5ab7785ea (commit)
via 3c5cd5c3b4dcb88da4ff980186b63fa169ba9263 (commit)
via 59f413d5412217c5c6f9e25d0279a1997426d60a (commit)
via 1332a1400145b5cca04c4d1ea77e0191d8dc5727 (commit)
via ba2d2bb24ea593c7fb17f51ef23f122064bb17d7 (commit)
via 39bfb9373c5cca78948c94174d46891c1a3d3613 (commit)
via ff183b0d8287db69c9fe9ea63cc1fdb51f392f78 (commit)
via cf7a5066b92552b62ca4d247c241a19d1a6e599d (commit)
via 137b5cbd204241ec47873c353cf7e41b47182d53 (commit)
via b15fe636afad8bfef76940823bed96f2c1860c30 (commit)
via 41c60b4b2668947726fb5762de95d57b931a3200 (commit)
via a1313186709b5d714c44f9a7d4e93ee36de5ef84 (commit)
via 7b640f726819bedab1515ce49f03c0de26193b3b (commit)
via 98e69eb381347eb06dfedaa0b185ad26818ce5cd (commit)
via 49265499d81d40ed07b71481749f35f209521f5a (commit)
via 55b6c9849624fc105539e08222fb8ff128a5f7e2 (commit)
via 3513a6bb20ef286e303367d4ef4963b5dab877cb (commit)
via e9cb46ab59ff2ea94a7fd9fa857a084d3a9b8b39 (commit)
via 8e817061976910fd1ac7bb8f689dbd96123ea593 (commit)
via 55e99962b24d9f2dc8a64b473259ca12e369fd20 (commit)
via a737d952e0a9122dd0d439ba2a2ca531b070e6bd (commit)
via e86ca25fd6cc06488c9dda936cf83f0fcdf6b58b (commit)
via c1ec8cea7ff53eb76cb7c354b813c67fde755409 (commit)
via bc8453a7bb617a5f14a465516f9f87c2ab6e05d5 (commit)
via 739e8682ff1cffc2809c91853efeef232d29e582 (commit)
via 3a00b02d277023ccfc5ccba3fcd4bae7aa485a49 (commit)
via 733bd0abdd059beff9d2c3be94fcd3b72fd44aaf (commit)
via dfd27d41831853da1c7694e2d9e765eccbed22cf (commit)
via 44846f29ab3a5fdab229cb63d9cd42323ed85767 (commit)
via 4787f4a5860864337c4f1261713b9462b79ea16a (commit)
via e0c7f900259ee54a6fdbc5d4103f30209dbec1bc (commit)
via 647957107595c7f8209686577739240b7a222aba (commit)
via 030157d8a65afcc6292a4d3d183b816ed2ff7c57 (commit)
via 61a9a607b5f515c50c0a13d7e1b6bdf9d20d295e (commit)
via 984ee559a26e138d8bcc1f850c1cacb9eded2b1c (commit)
via 7729052b5377bfbf1c5ec5eaab59dd5071d4c5b1 (commit)
via 8a60efe714e636c9f958058a8dfb12de81bdcbfa (commit)
via 4b2dfa9d877a919e05817e6bfa4eda3addaf1b34 (commit)
via 122394f1476b1c925a281b15399119500c8231c1 (commit)
via 95228a0d790f16deae3436e18f41b70fc711a5b2 (commit)
via 22467434fdc240e7c166f77f371909a8a07fc358 (commit)
via 5b372a4d35bd5874c1a6db2b89f42c7ed3097c63 (commit)
via e4554bf70235e3ebb10521ddbcbb2bf17abe4865 (commit)
via 5969f0dba74e17c694faf333b120f1e0b95783ed (commit)
via 0034eed03a7428c4902244a33a286763bca65016 (commit)
via 4a4459db18a8dfa5745e129ea5cd654f8db0f2f0 (commit)
via 61367c61574e4d1f422e0f560672c4e63116fd7a (commit)
via 34a79281e4bd5d1a7f1d22a5a5be1ac2db56a3fc (commit)
via 73e1c03f93f0294b464dc2b67de1f9aaae84838d (commit)
via e4c4a59b48b2cec10cffac4f562937de00cb5f3f (commit)
via 73bb0000525a67694c1e8921e7c34ee0d985787e (commit)
via 46a45e9d5b067e484971e3972fa3eae0a224324f (commit)
via b66f5587de2a096f357124b20376b2bab980238b (commit)
via 6aa7d72401387cacc5a7699520045ce9083a526a (commit)
via 4f0420fdabda76f462bd29a02d9be575e0e0cce7 (commit)
via 502fe83eb549476fac09ec62c7fd66447791ba2a (commit)
via dca08e1fe158d04517ba3ddd7ece9dd1596c8e8c (commit)
via 10eaee5f56611ce5f92ccd305849c0cc6addd130 (commit)
via 0b8835861cde41744a08f215b48fccd135815b63 (commit)
via 0b47d9858ca0805cd52ba959276d08899c7b9f8c (commit)
via 0ec9f11447514a797ae13760825fa45f9deedd8c (commit)
via 222312d359fe0a68f8583ba315583ee8cc94f252 (commit)
via 1869e86f2eb13a9e1d1c42b97cdb98fef88afd83 (commit)
via fdbe37e35fed48091296434652101a63fa4360cf (commit)
via 421acf18739edb54111b64d2b328ea2e7bf19889 (commit)
via f7c6f42310233479ea6339430b7c1ca1f9ec68e1 (commit)
via a9660a6f4063c7e1fb892ec709c954c56896ab8d (commit)
via 5294170687db7d997a00f88b765ef353121aa441 (commit)
via 51af6fa066ee6e4ce0ef203678b3281d71f29cbb (commit)
via 64cc34d87089ff24b43e0a8760be132b7afa6f34 (commit)
via e7ec8713ec12a633fcdfc5524c9ee050389b6f9d (commit)
via bcb430e4cd5bcd913813236536031f1fc7f72aee (commit)
via 894882e344735ace5231f179484086f7697d27cc (commit)
via 10b2ded43caa3298cded1df8b620caaaee3f9209 (commit)
via 4f7deebe0c56863f0c97edfe9ac9931dfdfc8f0a (commit)
via fe1658217f3f55c5fb2943715536302ff170e952 (commit)
via 92e68c1d65f844c0027f471a0c9e1722d781ef7d (commit)
via ac98f9e2275ffcca560eaa0bddd282a1ff94fc28 (commit)
via 03fce1c78c01a9b0e30e91be60e7af717a10bb2c (commit)
via bb3b5316332875b436b4a88d1ec6968eba46a870 (commit)
via 46207bf3b5b9880804ee4b527cc22b314eb5daba (commit)
via b8283aea9e599f17dbae7f52223994e3a9168143 (commit)
via 121dac5822d98459343bde74d5235b988206d965 (commit)
via 099bb8fb97d79d03a20926d6014a5fc27a5ca75e (commit)
via d7460de3eadeb5b7665ad8569f54e59eccdef378 (commit)
via 41a883c8edf98e86176d007bc8ad1c86c9675528 (commit)
via bf259e253f0d27323756fb434ba6e94d50846021 (commit)
via d525a99be1b02dda6c69007e31dd06f276378aea (commit)
via da505cff6e29b18244dc9f6886bcb4d436263dee (commit)
via 29f943408122a7cffa25abb41def99833436f097 (commit)
via 716b8bc52eef6044f1ff361e3e2eeb9307849034 (commit)
via 753ff9bd837e2ba183e3ff789847a81221561392 (commit)
via 5ca3b2605cc9ab5b33032c6478147366be60cd95 (commit)
via 3173aa2fc212389268f76433e70b35116a936a8d (commit)
via 09a5e1b570eefbc029939fd43c99152996060d95 (commit)
via d8dab6c3bbe6432ff20237e621f2f3a3d30d4d4b (commit)
via 3c69da406c72423afa4bd0e4fc4c805ec0b944a1 (commit)
via 277eb7f64ae0c949715751a382350368ef14e95e (commit)
via 629dabe3b731c6194499652301935f34c3c20e0c (commit)
via f9885f5602476e402626bf305d6bc328eaf626c3 (commit)
via 39f0c2040f13ae0eb3405b8cf2ff6491c6f354a5 (commit)
via d392224a0942df2f23b1149a71f62afc7f34beb8 (commit)
via a974b5ec9a253d330290d132098065b77f29bd36 (commit)
via c8a15b78e676b9101045b729a38128cbe5673701 (commit)
via 55063ddb8e9a3179b65047db21f4c8607782d075 (commit)
via 02d016b71fd38648fad589c1557b83135b1dd552 (commit)
via 7c9ee61b9f5fcad94fda11af1ab7469d78f17fbe (commit)
via 0a8ba311d0c4facef158af3d79c78489d5efcc4b (commit)
via ffb2b66cabe9deefefa1312ef0b7bb064656e611 (commit)
via bf212be198a7dd7700e08862f241ed85f88408e3 (commit)
via 99806209a4f89fc76d338982239ab8c214df4b4d (commit)
via 0cab2f1e91f92130c5e0d89a99ce639ebd8ec1b0 (commit)
via 784e4b3e80c1093203ae1a0da33be7a670942713 (commit)
via a3c25011e4b0519dca984d23a8a2843b92b9ce2c (commit)
via e80ae1906b63e092f3900addbc869f0836f8d71d (commit)
via 45f25d6c83c31a48a01ef8293bb3978f5e58e653 (commit)
via d9f6d7f8b636a2b32004273143d72a77d82b40de (commit)
via da05d921f0b7b9f9f07ac4e78ee228e7ecf847e0 (commit)
via 08163f025e414bd3cebe0adac83ed4a7ce13625e (commit)
via 9ef6d1e31f380349c8f329d1adb47ee53ec1f6c2 (commit)
via a8be540e8ae8d16da5854c75d4724f3875aeba2e (commit)
via ff1cf532dbabdee0d34974a77809bf2fa23d43a5 (commit)
via 7ff8817441fcebe3d32343dbd9d514366bfe8e23 (commit)
via de54e1a5d231c5857e870acc788f9b843ff5f050 (commit)
via 2ac237e52beb08e09037ff917924319246b5ea6d (commit)
via b98664d3862579c5a0d23901b1e2fc1f595f39ff (commit)
via 4e9668d0d1ddad73af7c20a92a00704fbea2a8d9 (commit)
via 43ba33c7689a9eeb20a3c36ecb9867574963ee0e (commit)
via 2b9496b2b4781b21bc30a70337e24205f8a923d8 (commit)
via 81e25b7c91efcc3ff54605b11859375a5c885c8b (commit)
via f2a3bd7da2bcd3a4d7ff33bec738f2ef1c0dacc4 (commit)
via 035522c0228be33b2124ada2f178187e7e53aa6c (commit)
via 35f1fea3fcd44546a6cf074029c284c64ad25b3c (commit)
via 7e947ad3438b2954e0bd248fd2c95a86bd9fe33b (commit)
via 6b8edb5101861228778b7c2d014e20c5ba0c156a (commit)
via f5db4863f51b83bc6b54504d61e1731011cfdec2 (commit)
via cc0be08f80d4348e8f81471c80409710c4d4cd1a (commit)
via 9607784ac00f9278094e962963f6271472b1dfca (commit)
via 0e9a6b2f040e016c9dd7f9841a0272e488ed2fd5 (commit)
via 43c3a0e4735033ed2fe3a4cb65f911cee69f55ae (commit)
via 9d6eea31325e4027b5f035e941864fa6d780a8ca (commit)
via dd194f6b36727987dc7f0d707512bd886982099c (commit)
via 440b7aece49b9a1e9ff4537214134c3cd06425d9 (commit)
via de44f5a73576b426b32b605e0d5016d4fae9b4b1 (commit)
via b1b60145aedb8adcb0b9dcf43a5ae735c2f03b51 (commit)
via 0ec848ad25bb77edd9c9c3c097c3dd5b8874a6c0 (commit)
via 0fb2aaa15e04238644471f7d89be3667784b19c0 (commit)
via 2c3305f6b0432e37d26ce7761d0c4415ab5ca911 (commit)
via 1d75a65809b49d41e97518b99c551a4bb2517500 (commit)
via d078308a2ed1290e587b4365e2d7382d951a26af (commit)
via 7273b5fc4baef93f8caaed678476e8cb3625338d (commit)
via 2e077f5e67aeff78e096a250bd225cd4658a35dc (commit)
via bd64614eb737096f40b976fb505ddd42e7f1614c (commit)
via 241db429d5735ae8875e38991c82204b310c2ff5 (commit)
via 215f527155ea776fff3f2f836d5da1e300e8c370 (commit)
via 7455c018e45766ab7193cbd45f98f781e0dc7d84 (commit)
via 29e11a0437ec618a8799dd152ee8a7b9bb9c172b (commit)
via 34a87bb07a4a3b2202fc25167a6b0f12575edc87 (commit)
via bae363f1146378207e1dffe5f23845644a1d0b7a (commit)
via 75d74ccace05f6166a45dbaa352abf753891d3be (commit)
via e54bb2a017cde382a38ca68464e287893a009dd2 (commit)
via e4439e4346ec0d2cb0e65b497d26382e1054c93b (commit)
via 98553ad33eba6353b0e4181ae51dfdf2d7e652ac (commit)
via 122b53ea6a99c8811fb9cb84869b949b1ac55b22 (commit)
via bc18fbb575437dd10089ef4619e46c0b9a93097d (commit)
via 790217f6736cc0f0a177a681ba1c7cc5f995cfe7 (commit)
via 6f46ac8531ead61003c96b8e2fa6a383ea8d8c58 (commit)
via 15b6611c69f6fdb7a20cd50d33d9acf8c5c32037 (commit)
via c0c9f665d9d4cdcef59cc7951396d843a7ea6a48 (commit)
via 22ca247e9e29c11ccfc99b5d187c7dc925608b78 (commit)
via 184cde7552b5434196b8380be23b39ff4a5a17e6 (commit)
via e39db4db7c553ae1c4aaf158cd0ebf3cf6d478fb (commit)
via 284a0e3cbffa92ee5c94065fcdd5a528482344fc (commit)
via b1aed5de0cc075ab5061453f88cedbf2d3e97ff6 (commit)
via 205f121826140cccbead2078006fd2545a87bce7 (commit)
via 59f66be3aca7ef310c1d4464e93b251fe87135e0 (commit)
via 50c65c2d60b371b8b85a804a5a71bf967ba9b355 (commit)
via 2dd50e74b7e313e0cb3ada6da2649b1020f9f46c (commit)
via 97373b2eba6077d5059370a95931b93a8b118813 (commit)
via 941036f4ffb95a553fd1a0c44313d72ddcf5cbf0 (commit)
via 7ff8cb8c51adec9cd1b461f9b670223d01223fef (commit)
via 7f99954970001cfc1b155d877ac2966d77e2c647 (commit)
via 400174b12a46fffbfad7c2504c33bb3ac29f3ef9 (commit)
via 3063847f29cb83bae0cdf018c2dca68b65a50780 (commit)
via 6487709f3fca687ba1420b6487db5cd1e7cf8cde (commit)
via d3d02dee8d33ef46ed91b3e87ea1b377b14ec845 (commit)
via 1d143c36eedc0f0b124e6aa6fb3b98b1e6ff74b0 (commit)
via ce1e8424c69793139ec8d2a60c4a21ab136ae9e0 (commit)
via 7b4ae824289504c173a597e86a00ceab452095b7 (commit)
via 011b32fd4270fb7111ee1f63695ccd44562ee7df (commit)
via 4bba0fb1c6d391a217c25e44398a7e1c7090155f (commit)
via 8722de9c419c98ce2fb1f294097244c0bc45e030 (commit)
via 0b4395434942ecc6f3006004784d19d9a4fbbf55 (commit)
via 29e0f0a144fcabb6fa088c58b49e5924d7c43967 (commit)
via 838c49a4f3df728ed08bb77fb86ebaf199747b04 (commit)
via ddfe970e6bec29f779a60b071f12590e53cfe6eb (commit)
via b17992c1c02a2d8a832a887c2de23a7f3ab869f8 (commit)
via 58f0c71853f98afe623ab89c4362682885905ebb (commit)
via 809276d28ad0212dd5a3f9074090e1425e5e4d8e (commit)
via 3e6188349fbf16e9da69837e5e1211537805e422 (commit)
via fe10fe3131e688d528877706db1e98e15434c0dc (commit)
via 1a87f0eedcf3fb54b665d6c92007c721c6b25218 (commit)
via 1d7611244c140a1a08f3365cd5881120eba7749d (commit)
via 49d519ec2fe80b48f404c0209b41bf8fee47cf39 (commit)
via 1624c9ca3fd32bf25b2cb63f99270abe41f718f5 (commit)
via 06333fea767dc1eaf88ac286293fcbaa0ef2de9e (commit)
via 921222e2e8e8427c6a609b1ff66265dceb0d07eb (commit)
via 3acb7083a675fb3077739a2ae41a4a4cd6ef9cc3 (commit)
via 7cf7fcc83ca9fb4c4b591b3142bcf12e6e8a2aa5 (commit)
via ff329288d503d392de11f34ce64c7fdd3c62e50f (commit)
via 0255c1a349ebd368c4c1bafd95118e7cc71eb973 (commit)
via f9830ec1655e7cc2aa88c9c34a20503978d9dc88 (commit)
via 7d02540ab73206249779ced77a6abe0be156442e (commit)
via 561a72d4ddf825ffaf8e88551e9bd6707cd6c59f (commit)
via 4e6ff0e1b86f736ba20a5034509ffe9f8f05b971 (commit)
via ea33cd9290063d977fb2c31ea6a8567da585ab88 (commit)
via 0726fcc61a8b7c943de513ec598b2189c5f67715 (commit)
via 810ed4db984d378ca9c8e3d152966fb81c23ef95 (commit)
via 1678bd35a35a3bace2d4aee39b64d96c638651f0 (commit)
via 293b4d4fe9f8a9624531fdd37f365d1b683d4623 (commit)
via aa82c0d347b6380c0d80263be0613bca88ca4536 (commit)
via 679ca9753b0176852bb28bac335eb9f0d3e70d95 (commit)
via ee7545fe36b20119c41124ae664804ec7f4f825c (commit)
via 2d79090eabe8aa972b07cb71a3dd73ef9498acfa (commit)
via 864bb26cb34ce6f0a85f83ed38757d5512d07b2a (commit)
via c3533c4c7c5db84b27e4dc8994a3c3a893077c03 (commit)
via 4ec0995016801cc5d5cf13baf6e10163861e6852 (commit)
via 9bc935ef3380a2d471b9447e2bf8e61297654e2f (commit)
via 85bd2d83f8a3d813718418df11c2bee2a50c1274 (commit)
via de7bbc27f9f3f1bdd2fb5c0cd1912937370b6362 (commit)
via 861d86514a78b9215a67275e15c30242ccc2d7c8 (commit)
via 9933dc52736dd349503e00a68cd0b9be4388f5a9 (commit)
via c64c5aae285146dce98f651d175f2ad1a437074f (commit)
via cf4912ae570ceae019b344785e4eeaf8cf273df3 (commit)
via 67e6f569eb32332b8a70a919b0b14012247d320a (commit)
via 3afc23a6817c7f9da663ec87e9387bdd8ac33ae7 (commit)
via 1524450719d3867e10fc6a8dbc051b8dc7924898 (commit)
via 451953fa440aa0ade02b652159155fae689483a3 (commit)
via e540a5a22319f2ab5661db882639839d1d867542 (commit)
via 633cf2548bcd3dafe297e21a1dd3574240280d48 (commit)
via 702dff05e5fb05b05246dd04cb22b5802bb94f50 (commit)
via 55271bf969c2c09b98aecd97b36170fbf76c3fc4 (commit)
via 1a34f210bb9389e58d93caf4384800934fc7113a (commit)
via 6688183925d82d4049931e95bc4e963ab66e770d (commit)
via 58ed5c38f52511e73c9748b86c319320177fb0ca (commit)
via 190852c8ac75cb62a737c58edfadfb0e1fcef78a (commit)
via 7dbac825b09f0847e608b50c80db816ef20d9315 (commit)
via 906994d9d50eb40dc89a5bf0830e15ed10938641 (commit)
via 637b19704cf8325875de8df4f8b000197d261e3b (commit)
via 8727de56b0dbe25b7b4a3bd04f72ac41992463ed (commit)
via a45a8f9178448171b51d9fc80d45ede73e99e399 (commit)
via 6fe88226c25fa3fdea506538688897272d42822b (commit)
via d0ad159d6848fbd42f5c213f8b051735793101e4 (commit)
via 06cfb1c89510d08217da8b3ccea05ecd4cdb5bc6 (commit)
via 37d9e0623102352e0ae27c311760a9e6569ae5e0 (commit)
via 60cb2c8a331ed8e4ad20afc51f9cdb3d8d18a869 (commit)
via 493ffac5aad8c39215702435c2506fd4d3077191 (commit)
via 84f9f8c33021593afd79fc89cc419db44f7bc112 (commit)
via a7287b941e83afd99d8d1054730a9b28e4b57460 (commit)
via b4560c7d159f598c82a64b214e30fd00d88aa1fb (commit)
via 53db9cf9fc363fd8ab3a9d97cdcb2ea1f639a243 (commit)
via 937d92afc38858e21bf2a8dca1262959ee26d7f0 (commit)
via e6f372ba661bb0d8eec1e22a6dc1ad9937336e4d (commit)
via 7402fbcae1c282e27aafd5c5c90aca7eabbdf45c (commit)
via 10d980882987d8cd9b2e34651faceff29176148b (commit)
via 8ee22052f690c007556b97eed59f49350ece5ca9 (commit)
via 886d542809fd73fba55ba72da1bd64ba50164222 (commit)
via f413a91378902aadbe4e338a6dc8f33f5f7148a0 (commit)
via 7785df4880f3828db8cf1715038127e6b858a670 (commit)
via 968ae51bac6201d2c63e0c2b4405832dca0795f0 (commit)
via 95a6d23566165208853a68d9cd3c6eedca840ec6 (commit)
via a87a64780fde9dc8d1c3af8eda93fc1b878cd3cf (commit)
via c0a30a9f0ab48fd7cb0fed0cd6710fe478650a7f (commit)
via 75c0a438994f00240ecd1baca3e3c11cc3b219e5 (commit)
via aff689d36d66dd45a59008f3778d3d22e3cfcb9b (commit)
via ce887586b48acd02080c36d5495891116f886e8e (commit)
via 2ceb7719f763b9e541a379d8ac7d53a72794fdd4 (commit)
via ce4ec1a9b6c442a9feefa18dd8734372a718665c (commit)
via 7bd8862c3ad0ee291d27837ae3cd30288a00b922 (commit)
via fe5bc53b24ea5b61b1ff280b737db5ed14c00142 (commit)
via 57930ca905fa38203fb62d8786bab4fc6cf42a44 (commit)
via 6ec91bb19f9b4dc97f11c695f193990732f70192 (commit)
via 82cd47d5d1d9b90fb4c74a3119cb39472d36b11c (commit)
via 85e26832a019ffc00dad9f1eb7e670b85c8eca7f (commit)
via 449b1ac7ad5f3da9ef689c91144aa057cb253df6 (commit)
via 15c9ffd6977a93869243dce04988cbaa8340bb00 (commit)
via e3829d13f6d0615f663d2a85ef4281a4365a947c (commit)
via da0e15638de59238ad811cdc3cc1d1a7803829c7 (commit)
via 0019cd49ca954c03737cef3a8ee60c233d081d35 (commit)
via 565e0edacc48c86adfb12515ed6911c08c1f64d9 (commit)
via 621846f4e258167be2147894e013c85e42de1447 (commit)
via 86a73007627a3c52d1c624ed430ac0e74fb8cc3e (commit)
via 4e6fe7477a4e9260777cbaa01f70df7ae5f063bb (commit)
via 56bcdbea2bed27ea83bf0e4fe472ab744b4beaa1 (commit)
via a913fffbdee21fdd50e8de0596358be425775678 (commit)
via 60b3cef2e49ba72dea55181a8ad0cb8dbf3f8a5b (commit)
via 7a2c85f25977ff9b11728ba85b1417538e22c246 (commit)
via 295dc222a712b700d9afa7e2462a68b866b120e1 (commit)
via 1263a9d5f1c6198cdb4e73bafe86ca451d35684d (commit)
via 12973681f5d46a2407a8dc97c3352fa6c9971716 (commit)
via e2fc72e2c594968084b936bc5dc4702a2c0694f8 (commit)
via a3b60e4588606354b93508a0008a5ca04b68fad8 (commit)
via 45fe4a03b495f778013f0a0deb06512913e1955b (commit)
via 05bc7456b872b81044d3b0e7c4d74c1de57217fd (commit)
via 2f433492bd9dd3af10aab8d92dc0bfbf8ff6c5e8 (commit)
via 9be2ae8fc6b908746d9d7ebaf77aec8abba5dd2c (commit)
via f0b3976bdcd29e308bed185630a24806037a717c (commit)
via 862d101ada6b6e8496e545c0bcd801cf8b9a46c1 (commit)
via cb7de75eb33b2ceda391c903cac5e5ed63933b99 (commit)
via 49d83361cda4614f571f46c6bc0464092daf3dc9 (commit)
via ade72a3453670d518ba14fe47bc7a64df81ce766 (commit)
via 2be4d7f0e0f733ba0acc2120fdff62bd83fb8b3a (commit)
via 69b6ecb049143078f43a9372b68ac90a4601dc8c (commit)
via 11859c310cd6b6fd892337a5ee1d36921e6d08d8 (commit)
via bf27f0e2c76839af8524e053cca271934150a90c (commit)
via 089a949083dcd5c679376033e975d54093007408 (commit)
via 602f16570454a1597c2af28af66852133432d1f2 (commit)
via a27ca19c95ad3ebc5bd73f072facdd71b5a976ad (commit)
via d1e9de16dfb8237307e12945be5a1010e91a4dd2 (commit)
via b5e2df0d1ab9d62dc6708fcad94c6f0649f7892d (commit)
via 4ea17de8f1985273215b515d48fbd59b2ced3cd1 (commit)
via 9b0797e268d96e8b46c328792aec3d6289585aa2 (commit)
via 3be08ea4728b56d35e136af4e6fd3086ade17764 (commit)
via bd732259bd3bec9494a2f1f39f74255dd4a9be85 (commit)
via 7c8be091a26540a834797715434820112cec838e (commit)
via d9f719f1adb653ab40a55e4c1b8c300215b400ff (commit)
via 135340afdf3b333cde11e4429fb16271d5170335 (commit)
via 57810aa7e8032c598897454daea14ed17df0f89d (commit)
via ad6a4e2dd69f9d343864181b638e166ff1458861 (commit)
via f6ac5f3d63e03a81c4ff3749aba234961cc9090e (commit)
via 3fffc0701a26bc0baa563fdc793cafb3d3f02a93 (commit)
via 6798487f5bc66ab9c34ad81fa28ba25d32a00bd9 (commit)
via c1955e179201e76330a10c400bfa92cab2afbee0 (commit)
via b5c8fcb1b40a61be5015b02e8cf456a56c258b5d (commit)
via 77d3c63b0dc9d275a87d4ea2191ebd3830f6ca4a (commit)
via 0489430a0e1a3ea302c22c540f3629e471591f23 (commit)
via d966ab2dc5c10626a1389c87e9bcf924a99e9dfb (commit)
via b3ac5c6c286c5b5c1909628e85754edfb403cf1a (commit)
via 8e4bd9922ae37809021ca660782295fc2de3ee73 (commit)
via b5778783adc7c3e69b02b95d77a08285c6259982 (commit)
via 1063beb58c9a2f69913682b6923b08e6a7d192aa (commit)
via 1632f8baf04e7351f387e58957fc04498d90987d (commit)
via e31efe56455e4a0e84d2157e942e51f8ac94e9fc (commit)
via 0ca1fc291305ee1701b8236c0e26e8d8c5eaf0a2 (commit)
via 767619365467fd825c6f3906a49d97a7a6afafd6 (commit)
via 2d33446d4d58edcf993f42957cfe9627c88f112f (commit)
via f3c6ababac34f3a291997f8d5ea6a63949b58b87 (commit)
via 40c03530b197d8d6ef550283ecd6684e8d49301b (commit)
via 2038b7fdf30c39bc4d528cc2e5fbf5403e0ba79e (commit)
via 4904c3c6b69d5c7b5e4682220c1d9503e00a457e (commit)
via 7c66fffc1f3dae0b921ae3cf8139824804cf0705 (commit)
via bbfa6f00867946985b954bbec233c0f25f14ac5c (commit)
via 1831a9f9d3346dbf61202d2aba6935f0093487dd (commit)
via 7c1b5f3db73d7ecab03dc4e866e291582935fb04 (commit)
via e11fb955fbab035748fa53ffc30c103157a284b6 (commit)
via 2fff16dd8c25831fb5fbf198ca86d5befff629be (commit)
via 6d7bb8246b3beaf60ea9c2abe183705e876519cd (commit)
via 007e1530347330d4dbba387c4e35aae05bc06498 (commit)
via 2b4424c35b9ebabaab8588b2ba6c38935a48efec (commit)
via fe944acf8f858cfe6bcfd00670a88847a464717c (commit)
via d33bc52e51fdb6c464c1c8e8fdf9b2007b522b57 (commit)
via 425050ff8dd355e315fa612f25c9588f9cd55a1a (commit)
via e28b63a989caffa4a6fba1aaf0d8992b37d13da8 (commit)
via cd8c76e410a5f16a170cc680be1ae2ecb5528821 (commit)
via 1c831f565445d824811ae43c81b094459458eede (commit)
via 0d40a647f206dbea61efe81eb652c0c4892e3c50 (commit)
via 476d250ee86c37386b02b0634a59aae13d07a038 (commit)
via 6873858b7e464e114f9a877e216949ad8350b4cf (commit)
via 632e107b32c0fe8aede62e070b00756e9fdd2c01 (commit)
via 197b262f98ff01516921b3d3056d86a9577535be (commit)
via 6d9dabbbc6e5205a969cf9643cb8040842f5e313 (commit)
via aa178437393fd97f706c3f8bdf60ab2cc53a8cb4 (commit)
via ffa389a39655f4b35d583783e49fa5b31c288e8f (commit)
via 04383fd15b3b82d824df9c72e3ade88c43bfb5ac (commit)
via ced8ce28a4f72cfd8eaee0d17cf090997cc2fab7 (commit)
via b75abf5bb636869fd893ecf98414b8b2fe0d4a12 (commit)
via a914a7c95895161c99533d5919b8504b37ea54a0 (commit)
via 0df8ad28f0f727fab3a696d6c98b9a8a77ee1024 (commit)
via aa684341294a9125c528041f81d17c488bed5552 (commit)
via 79188d8d27a8885aee2ca4ff55238219a6aa7228 (commit)
via c7075ad5030c4c2e79a04f3517689b751ff41860 (commit)
via bfa5bd2ab31a8abb23cb442d51fe6c3836028880 (commit)
via f50776aad58a1df6b8f7f2a7d25a3b10aa074f7b (commit)
via 20944a6e20324cd897bf6c4c5fd20ef7224dacaa (commit)
via 1adeb822668d3bd7182ca9b8cf42a7261deb3c7f (commit)
via 42ddae103c9eb20fb87378548ee95b4bd23648a5 (commit)
via a0aca7b0e13d884f43ba77c4c6d752d9140cb54b (commit)
via 76af0f26356580771a18c37de4ebccdfbc449356 (commit)
via 3467ec66bc1f30cf3ed7f9fe75234c96fc9c92d5 (commit)
via 28f4fa4d0540ac6a23930202f39782167667e373 (commit)
via ca31ab1d675c1e20cee5f8cb213c52e3d7352496 (commit)
via 8388016d7ff8b88d29f2427963f26a6b8bbb03b1 (commit)
via a376e11d84ba7ea8cc7333c77043e20c7b0cfc91 (commit)
via 02e169e2dac9b0354162eb0e7ee3fc95134b232d (commit)
via e2195274d4a0752459ea89ffbf50b2704fb0c0b4 (commit)
via 7a69eac330adff3913a8698eac450cc7968ba8b0 (commit)
via 1d3f82868db8881cd9ce79ad151fb0a7ebeb2c5a (commit)
via 59ef5df41e8a2addac4c74bb838fe8295cc79ebf (commit)
via 6e041cf4b0b00e85bee85bee98c411f16bd15747 (commit)
via 1adf7f5604558489bca6e3f8e6ee5e12089f06ef (commit)
via 0e0eea782025d92f894f6d132aae2507c6a90a7b (commit)
via bed3d976b7a4fd111f3e291f1bd896cf441b3479 (commit)
via 48db9223e95625a2156f60e8f7f339e4bbde3533 (commit)
via 2f1bada2dc2e7215cd633b6c39a6c31dbd875bc0 (commit)
via dcd7e323760ab296262a2e18e9869d37ff59f340 (commit)
via 6b8d358865b10f3f8269d0d89ece1b19b114be0d (commit)
via c47b0ff06d0d17be67ec76cb5e661083901cfb40 (commit)
via f1ac0afe481e83c9a33f247b81fa7de789edc4d9 (commit)
via 59029f57eba1763bad67167c2805d8df3dfa2285 (commit)
via 4b86cbe91c130077f967fa84b0abdbb68e9ec742 (commit)
via f350fc2e37d79119afa73361f331b8be1174cf40 (commit)
via fac7bd6475c4058e7c1e0df29dac50579e427b34 (commit)
via 29e9b073e3b356aae4c249bf3e265b2a608aea6c (commit)
via cb10292c2a6c26349c02ec275e4087147fd1cdf0 (commit)
via 5c5a4843ec385a60954fbbc4bcf5b64763639bd3 (commit)
via 7801f98f84fefa495941c86e2a859ea8c6c37770 (commit)
via e8b09b87102504a110f839e67a712094d63dcbab (commit)
via 188fd7aea619d9f66a822bad881d8f56892b60aa (commit)
via 18a203380502fb3ee75633fd464faa3c83cec710 (commit)
via 617a5ada88c7d4b6aae201ad5b295f3d2ef07c10 (commit)
via 249b57335279b1051456884f1a908cdec907f43a (commit)
via bacd145775e3ca1a9d1a6d0b65c4ba10b307e167 (commit)
via 10bba94bd44045559cfd048cd34376090dd8107a (commit)
via 1e84581ff0b66168d15270079e8a4d2d12948925 (commit)
via d99b4b92c8ed0f7ef98f370bbf65a360ed66ad7b (commit)
via 651d16203867f8013a0f78a2f2e24df8c02d1377 (commit)
via 2ac93be706418f3b2aebeb22159a328023faed52 (commit)
via 00ae6230f072e5f0d570c29985f5526cd6bfde35 (commit)
via 890d155592e66dc01fc4a9affba806c4e9fc36ba (commit)
via f67c0c9171508672167b6868c67211571421a1c6 (commit)
via db0c309f4011ca94a4abc8458e27f3734dab92ac (commit)
via aa4a8c2a2a67545e90c877162c53cc9de42dc8b4 (commit)
via 0a8ddac418d3e8e12a1bb51c3b0da90155f83403 (commit)
via e427af1889e6d169c3390f6960f1efdd08dca883 (commit)
via 05b1d8d6fcde4805d25c9121f5b051f59580887a (commit)
via 0f703942d7c4f373e2aea5000081dbdc9ef8e2b1 (commit)
via a95c7daba4c74e61ac37ffaaaa0ba49bf16e474e (commit)
via 458412c36845f20bcfef47eef3005fb2054a7695 (commit)
via b9f26d2e29bb56a0404216c5612d6d7fee54a769 (commit)
via bf82069dce1b1a88560e5d7320342c78372b627e (commit)
via 5a6312e8c015d4a98020038f3b6e144db230f3ca (commit)
via 5373441d20b652d5b0332b6cada74524af3ae707 (commit)
via db86b02b3ac8426f3fc0754f48f3645235cc2ae6 (commit)
via b2c5b54ee3b2906d72d390f90722d517e2f96e85 (commit)
via 00aecdcf6224e44fedf31a07340e9da11500fcfb (commit)
via 5a8edf8ece80a436a0ed786488e8e772bc515fa2 (commit)
via 3d75146d2baea3ad8e8b3a099f0255b71389d86b (commit)
via 7106056554c9f25e9a857b69b4595c9b3c7c4639 (commit)
via 5c8f23cdab2a7cde2dae6fcd5f9b18d089efecaf (commit)
via 4352556b36ab4f1c6f81a0ac3daf4619a419558d (commit)
via 1a1de166f4e18227760b42301e3b615d71a62dc8 (commit)
via d27d16bfdc3f275b379793214db9bd9467b6f0f8 (commit)
via ebf7373d2f63c7d50f3620bbf0165370cef60813 (commit)
via 224608c3ca1575bcbea82562f05d3fdd0390abcf (commit)
via f31c089e788f7b45c9030ac399cd34eb3ccdb9c1 (commit)
via d83d54033545c0e7b668950b127753c88a33f950 (commit)
via f6a8b8c7ac2d5369070a6b76a94ee0f3052433ff (commit)
via 8e415ce8fee234cd86f29d8f4ebbbdf0f9c0b031 (commit)
via 8dc99ac8fc592b03907fbce5591543678ca4b907 (commit)
via b319b0984b505e9a5e653c3da8ae7d5af76c8f28 (commit)
via 3b74854b8db5836707af828b256c1322a71241b3 (commit)
via e98577a9dc4da048ded601920dc6471dcab375aa (commit)
via ad7fc756d12a841d4b8dd707568426d875e26755 (commit)
via d278f585afe8e096e9232b8fd80404ab5fae5719 (commit)
via eee8a18dd2d4b62ed5e03324b099508717886193 (commit)
via 82ec9bc7055ca76f1f7dd344f3f58bf6aecec7c8 (commit)
via ea3e7d717982e3c467edc7886b1d6cc2807195af (commit)
via a7504f87d41694d441fabb3308631df4d2750c24 (commit)
via 82deb12e5f96af0b767abf6ec83d5e95f408c8d0 (commit)
via f792cedd00443d453fa76c2e1e239cc08546b7d3 (commit)
via 3596d8ceb2cdc35b4fd702ee9daace5a2d880174 (commit)
via d9dd20453a5e1ace27b71c66ca2b92f49c7271c2 (commit)
via 8f56f7a23911b6a48b372c8f0893343bfe7ed2e9 (commit)
via e4e6a73d26ef82622d3bd190749aad508534abe6 (commit)
via c65c21e1ffd1e02d9970a4bca0b7e384788a50f0 (commit)
via e2e4f0fdfd81c7871866d4c99dacc37b6cbe64a6 (commit)
via 884d4d8aa754da5748ac4c48bfc30f43db1945f9 (commit)
via 9e558a506b5d8ef9c807e9915b33e66c28b833a5 (commit)
via 3f0a5f17d7fe1f3d0911ad67a5993be59983fb00 (commit)
via bedda9aced2b3a8ab05e0fbf1372e394e32afbde (commit)
via a037790ec570ae9f9bf535cbce25f238f90e8b4a (commit)
via c7dcbf88c6557f35d9e75ae6223a3e61e1f70578 (commit)
via 808346fcfcff1c3f2471c98e48613afd7bce3679 (commit)
via c4a91159afa222c1025f1535f42e382b91dc6b73 (commit)
via 56d8f8a952f7565e8c2232ba57abb9f8d114ad70 (commit)
via 6327533b1fd29fa86f6bf34e61c332c010e3c689 (commit)
via e9301e762ab6d533f7110d6c9c1dbe8e68e875d7 (commit)
via bdd7c8fc34dc65806ec14df84c76e17690a16f50 (commit)
via 6aea08d9f3e3d6475a65454da488a0c51f5dc97d (commit)
via c48935d75f720ecb006c81b37f4058e751f1dc31 (commit)
via f954747f10467071b0acde07ee5f5e268ab606a6 (commit)
via 0d6deb358dcc45315bb35cd7d0e1b50ea7cbbf9b (commit)
via 07d28c777757148d13e429c4463da52cbb50d297 (commit)
via e3a91079b5e5669567424d3b2f31b48b7b89ef72 (commit)
via c77852c8916415b089e56271b6ab9f793fdb413c (commit)
via fc7aa874aad7eea29014c5591174d57f81500d69 (commit)
via d7867d174c060f65dfff61e7db7725b30b1e1a32 (commit)
via 8a3de5e1a3fb7bdf89195388f127ecf429294f6f (commit)
via a2a79012fe7ad4bcc354c14410679ccb705d5326 (commit)
via e9af4700bc7435e593dd74d4d2e099b3d7c01eb6 (commit)
via ddb000396c9246649e02669e0bd6ad3949973e5a (commit)
via 5452f388a51463394553b29469e32e7765d874e1 (commit)
via c9098af41e3246586a30f4f0bdb0ee4367e9a5e7 (commit)
via dc12032bca08554cf0a72d224e44f755f7789ff3 (commit)
via 211dc24b8744ed14ee5c293e7ac164d02e1fa1fe (commit)
via 4db9937a27496d2f62ac1dde76565809acd4ecde (commit)
via 9f5d15933be033c9d54e41d605d7824f57fbed4e (commit)
via a9a4b30244006a0087c5a7bf73cbb13927f1d9f1 (commit)
via 04cb01fd5a3bc167ae26486bbc2bf941e96ad805 (commit)
via c2bf1eecf99abc4d546bb52a008a25e64a29d85e (commit)
via 6793974daae8ff3f8ad4e856a9f0e3bbe4fdf9a3 (commit)
via e82aa7944d2b00c54e9d3c1a47c5ed4a0e39393a (commit)
via fe0bf0fd57ea3ef8458d2e8661b428110fc026e2 (commit)
via fdef3943443987525aea4f3ebe1f569f7070fcc8 (commit)
via de96689e03235bfd65a33704a9d398cb666140f4 (commit)
via 5972ac7375e9b6a6f0c4bdef31d3da574fb1b65e (commit)
via b4b594e304d44458e25e106ddb4824a37aaf556c (commit)
via fceadf09517d8b37a0fa77852e26a789fc160d94 (commit)
via 5a48b83f3f41236f56046fd1a1354ebca789278c (commit)
via eda4efb12763893b8a49c10c6f2823a465c1c6ba (commit)
via ae1d38437284b31d5a1c604bcf391d4543be00a5 (commit)
via 7c31c22f1a18d91e104f1ffd5df8895d2459fe48 (commit)
via aae8280935aab812c3666d1c5c0ea099e96927cc (commit)
via 702d167134149f420ea3bcbc194d63a2653a0c27 (commit)
via 03aa968462e0345b2d846ca240b8c723d713761a (commit)
via 24acfe5e2b7d4e6c0ccb72ffffc349d7fa88838d (commit)
via fb70ec1714f6be66464f5a9dfab1681cf8f4ac3d (commit)
via 68e91e42492551e165b103d819c021c4953da10b (commit)
via b744723f571815e6cee43df371c8e733e34e1edf (commit)
via 4a4495d62d185bdae17ed6aae6ea8249ad07c799 (commit)
via 69f90c75b369cd2d66988a67bbc2a000dd6b9816 (commit)
via b85310e1ec0419c4e1ca091cdd48f7597ebbefd3 (commit)
via 1d509aa625f891e20b37b8cee4659771e87b1ba4 (commit)
via 7a2711e437c50041c0a83761a90ea5e6c9ad8b98 (commit)
via b4be9bfdabb57f40656e72a50a8466af4f7bd37d (commit)
via 53d7df28bcbaecaf2dca7f8a4bf829e3dd786693 (commit)
via 70b33f195b0d76e140921db40c0bea5a7c9abc42 (commit)
via 436411b1c6cb93541fd502321cf5470fe0392b91 (commit)
via 86c6c6df007cee29f4a723df1a6af1889183fb2e (commit)
via 67f846b59b32f3d704c601669409c2584383fea9 (commit)
via 73a05be215ce8ccd7a6623f9a24d86223dd7d2f3 (commit)
via f7ebc2b18a48f1757b20de5408221df18b3f2262 (commit)
via de89d0a34d52a2d2d28a4ce569e926dd9c7a7d13 (commit)
via 6295b6da16f73d5113d24424d1897edbce42bc6a (commit)
via 50146e7022cedafe615bfc9884358d291a00689f (commit)
via a8eb42a8b7d48ff6bd12ac83b0e31967b4f5abf1 (commit)
via c43b2c546be1fead208b816b59c8bdcdf9562571 (commit)
via 20db9c52a2073246a5c46a0274569e10b317866f (commit)
via 5ff79300aef4f4c991194541ec3ad9a2618ff24c (commit)
via 18e404c4e2eb15443cc6dda93cbd38bdfeb17667 (commit)
via b6572eb07009b41f192b494e761f43dfa7a9e324 (commit)
via 6e22e10d63addd60f39114cef81ade290b15b2c8 (commit)
via f50d8a2eaea045cd6e9b8d6d5cf8da55e2047ffb (commit)
via 731f534f918cfaa35c20b5eb6220a8eba4819f04 (commit)
via d4ae1932770d9ec76f3d0a429aab45f1cb15e964 (commit)
via 6c7c5081f01c8fc04474ff858240f1c3cd900d6e (commit)
via d5f4488f09b811b0ca44e687da2acbc286d84d4a (commit)
via b24531ed171b5751a3a64c461728c9ad62092c8a (commit)
via c252925ccc8c3c2ce2a65d12a50acfee53914ce3 (commit)
via c9638d2669ced9348eac869dadc7be24df85a9a8 (commit)
via fdc116781b03f5d30e93f5013159f39c4c0f3471 (commit)
via 8345c4a2670711eafd41c8b6a8726cf8b0771d6e (commit)
via 7adcdf08e792dc30e09af4eecbf1e479a2f56612 (commit)
via 41260ac25d541d9bdd039a0ce82c9ad31fceed35 (commit)
via c4a614e2395a7673395208cfd55d590e3c6c114f (commit)
via 0bee6dd4aa42b928c2a7a496596490b694e5722b (commit)
via d52e3d06e5db7041913278caace3389504c0478c (commit)
via aec2e0d252342aa7575aff608e999a36f27a9147 (commit)
via 3f97ba9fc82dbb1bca72fd8a137b2de132348367 (commit)
via 9ccfa98b4cbc86ac34734ecf9d35466461c7e34c (commit)
via 3e04d7655bf63f4e5a0d0354c21aa3fa2ece3681 (commit)
via 23cedd1dc90d05c4b80d4a4b000ed5f37b9c3268 (commit)
via 2d7ad24e8726ba4c45c9e67be08223a146a837ce (commit)
via 49c09209d06885dc8350042ce77e442bfbb5bf27 (commit)
via 08be322439408ac02cff2ac9b5eca4f7243a0277 (commit)
via 37da22e5c85375b30e1211ecff1b261f425375f0 (commit)
via 51066b93507b79e46bcd6c998b760a2fd4b3d0a9 (commit)
via ec5fd53433d354608013e86bd8cacce044a030b6 (commit)
via a0be7a3671e6252c0f3353d128f84c641005fa06 (commit)
via 9b73db36739a72d216eb14d35edac2acfca7faa3 (commit)
via 6f14adc55864818ec3754460f5df4150c2addf42 (commit)
via b2bdb8cf395f491319264cda42e41538f55a86d9 (commit)
via b76e467de35d6b107edff1d4b9de15fb7ebacbbd (commit)
via 12359b5e8f2a4034e1e4cd7f0b454fb03151df4c (commit)
via ff4c9fec8413fa4e0b11ef092a86669305894a7a (commit)
via 5ca3fcb669bc655e2e79866be086e8ac564e472b (commit)
via b2e586e850dbf1dafc10beea3250d22e70add4b5 (commit)
via 7c4e78cf63f6436ae43e8289badba78d81e2eb2c (commit)
via 5dc026d3f04ac657378308202ff7d43a1613f14c (commit)
via c912f608be7bc2598b919da2b11721b3c262d154 (commit)
via 26540402495f35d5f19762ceba66605bca8fa63b (commit)
via 9018be22e022e6db2ba07c4e407c7244022bc69a (commit)
via 43193fe9fc39138c912095ba6f21c4302abafe5e (commit)
via ef4bf13b1f47b59b69335178367734dfc9ad166e (commit)
via 14c88955a138c24577e703d11f4d25c44a64d0be (commit)
via 0c7e6dd852f01b3ea38b98c39a2bb36280b02b55 (commit)
via 2c8331b987f41fa53ed371d0bbeaa3cea50bd514 (commit)
via 466ce3aea9cec006b8b0e348c9021ac2c8106022 (commit)
via 062d818d2535d4bc9ccd5dbf3c6702b9f3e763cc (commit)
via a6535de1903d9caad8c10c1d81c51a29612456a6 (commit)
via b562120198d9fa2c191823508813daa3b62a3a37 (commit)
via 4d0266a0e0d9e9b615b04ff209a73d3725495835 (commit)
via b4d61099ba840824fd0aac9800403f6278476347 (commit)
via 9b5587295bbc57e5e0453b659e24d7c2b504b894 (commit)
via 850645cfe82f5854af90ce73f2056712e20fcea2 (commit)
via 22bc8444e6d377fd016253926c2a2597ff944842 (commit)
via 7f8a5d38ed00ad4ecc920322c4b852f3cf905a94 (commit)
via 2008a0dbe3de7206a14b53a5778af73cbabfb57e (commit)
via a6fd92b0578c5d2172799d7f38ddbda1bd87ea03 (commit)
via 85d8342bee77c2e1654e1d5e6956dbf357f30e68 (commit)
via 3cba8b6c93ab8c573ba4678255df11486de61c54 (commit)
via 552d4da4178cc5e8d567ee150462a28d51f08fc0 (commit)
via c54b27d1c04f53043688d5d3141e74ae5c23aba8 (commit)
via 2d8c1a2318a75f43491bdc7acbeb24590145d7a6 (commit)
via 494e49c9855c75e5cf95a2c031401d2d4f5e21fe (commit)
via 67faf1f4c206516837fa44f6b7d131966be6bf0f (commit)
via 043e9508be0a4ea7ab56fd5716e4c06d609d13be (commit)
via 8a76bd3ba43205b76226f41fe73e2840c2444742 (commit)
via 8e8d776ead8187343652bda8aa373babe505bd4e (commit)
via 9b2f85815c57d2eb4322a3d87464b5686cdbb391 (commit)
via 459a2e4ccf9aadfba9819facba1c9be5297c1625 (commit)
via 9be2c17a900178df75a2208fd112ceb4325a70c1 (commit)
via f73c6ece7888af880d3b03b2d57ee7782f2a539b (commit)
via 53a0f8a250199af97ff8708e3899835086c7a24d (commit)
via a5b5adf529fa64391bc1ef733b3e78f15d94c4b9 (commit)
via 6a307fc5f59179005e070bd5a5a4cf78a9ecefd4 (commit)
via 41c1efc614472cdc74397e734f5a66018362a80a (commit)
via 65bd20451fc7e5aea1f0283433f95fb2fe60771d (commit)
via 2f8ceb38991ea2ee595afbdd5da51ba1a53cbec7 (commit)
via aad7be454bb3c8e2dd44c10cc16c80bacf8f04c0 (commit)
via e778be0dd1a16cfd29cbfeec519c24d299334b91 (commit)
via 544838989ab6143242108ddc39e8ea47e4fa8c4b (commit)
via 0e8452bb2297b5eb98a447f357ac82bece4e7024 (commit)
via 89f60df20bc0cb3ac3047d67fcdd4a365cfac931 (commit)
via caf0678c84b5b55fbc4bcc853954745a4ad8b658 (commit)
via 142b7a144b46af91cd59a41a8f87f5f3b0338cdf (commit)
via 9d8e8f445c1a021a1e381f4bd0bbc756b4258038 (commit)
via 317ff0084bc68bfae2eabd82015e9239a68b5195 (commit)
via 4fb0d2b912ad079263ed98a3c4d78e5a7ccc93b0 (commit)
via f1ca0d6d8b3fccc92bf63d5c3c10a206f36debde (commit)
via 8ee55178c22326c3624ad5872dc5382341ddcd2c (commit)
via 5d7c8b80485d75242e7c78e79b3ecb4c71abaee3 (commit)
via 707bad1b21c18cf8e570fb8df8f7c5961fb0f3a5 (commit)
via 0cc919dc6abede5e61b9d8234028fba879166088 (commit)
via f428698edfd845a21639f5145cba3772eb92abc2 (commit)
via 7ed6f92aaffdcc0995b0247379fb8ea621854dce (commit)
via 270baac0079c128ca6780098c086444d115f4afa (commit)
via c5edbf3d1c58d59135788f084a3bf681a49e0f9a (commit)
via dfdad367e475ae5ba88d9517cf95092df8e71ce0 (commit)
via bce5a025d2ed7eda2c5bbb85bd9b33333ca5d556 (commit)
via 8849a5e9edda5f00d727490c7bb8be3c616742ae (commit)
via b39efc483ac8caefa8b6480b7a01231230bc2298 (commit)
via 121ad66c941718bb0b1f7caffe0c555829d2fd2b (commit)
via 79f18731714e7f07af6e78b8da8a1ffacf4247b7 (commit)
via 3d6b3b8221c97c58a2496dfc7dfff30ed07d911a (commit)
via 09473be85c13eab0d794e363d898b74d66431d72 (commit)
via a9f4c2f56f87c838c76b590b0ff5a66294e7e20b (commit)
via ec1f2d91e07522a77cbef7a438e132ff4a2a7839 (commit)
via a16ffec0da37082ed80116a7afb1971eec9b8842 (commit)
via dc20d41409e645106730e59342a62c317d4ff82d (commit)
via d8611974cf819e5f8cb9eb36907251f3e2d721c6 (commit)
via 17d08cd4137063dbc43d9989b9a5cb315171174f (commit)
via a18ba4e4c9d64eeb2ea65e5315fbd8b4261a1756 (commit)
via a7961323e2fce4f831e117cc43e20e5144192240 (commit)
via e83e4e24021acb4b095b1e8a45a51c2ea088a1ed (commit)
via 263db9a1f4105b76ddf00829d50430ea0a3bcba6 (commit)
via 5dafb3d176ab8d9b9f0a46111d7040bb51ad8f8e (commit)
via 11ed8cada64e717900117364c2fee0132c1eb099 (commit)
via 9ae79dac31c2bcbd2f5418da2e12af94060e139a (commit)
via f2ab4b4206781d75c76962b3ef7dd08b3489c40e (commit)
via f7c486b165059e9d429c89e4152197061af30c31 (commit)
via 75def2abc3dafb52418405905cd49e9c107c2640 (commit)
via 515d75a48606ba4537b69747774c5a93da4d6ebc (commit)
via 8b6a949ae55d3adbade84af4e11415d764647fc9 (commit)
via d81270c36986a4e470b0017bad5f415a2f916616 (commit)
via 60dceb8d3b04ad8d19b6b6a5ca99b4077d2bb818 (commit)
via 24538276c675851520d45714661e7cf9bedd55bb (commit)
via 8205a328f8b852086652841dfc2aff4ca0b16d45 (commit)
via e04ef02299ad4aae08da857e8535d98e8643a274 (commit)
via 84f1b9fb081372a726fd70dfd8258a707833caef (commit)
via e82e6b2b19eb796fed161b1658de6d5f763c18de (commit)
via c39e5b267180a5d61a6434b24bcc7888bf3c0ca7 (commit)
via 8e6e0792d17be5d4321def520d12c1764dc0ba2a (commit)
via 9f123b911ec8c460304c3e1a3f18f1c2a311d97a (commit)
via 9646c87b5a6c0462e8a9b6305d9e449bd099f19d (commit)
via f8745e1cd139b5c6a5bd8a30ea84ccbd45dec81c (commit)
via c8d59609b1cf66eaff3c486e483f5e3d647c66ff (commit)
via 9c75b45645acb30c42f09b80cbaadbde391aa7b2 (commit)
via bbcd71b48044bdcee3641b93272c7bc968093907 (commit)
via 5aa892761c6a9f76c5b5ec2a9509e994b4f4de07 (commit)
via 1dbeed45b6a81ddcb725b68ff12236e7c8386a47 (commit)
via c819b2c0b216c69a4ae5bfba0eac71ffdf1b3596 (commit)
via 608219fb2917d407058952adf164eb616880662b (commit)
via 3fcded8f30b6b0c1930d4f82914476315027aa2e (commit)
via cd4fb1b2ffc88911e4109444ff729e31920d01ec (commit)
via 59cc4834e53565da1de4a7b615ed8890ed55c7da (commit)
via 675015399bf80896706865e3d77d3af7fc925932 (commit)
via 76c939acfd21928957b45816bf78935363438b0a (commit)
via 9507b29c0a00fb62f015fe69f82aaf8f5377ab35 (commit)
via eb68e48764d4b038858dd4255ed248dbee6c4c0e (commit)
via 1f111921a0f8e3f62a19808349ff9bcbd4e54043 (commit)
via fb7eb8b5826f059e2b7a18e42ff9c20972e626bc (commit)
via 4ca59a9f3616ba324952632233acc657fffa8be1 (commit)
via 92256134f3e5557dcc321c63c48e8175ea90ca27 (commit)
via 7a630bc2f99fcd55ddd83274574531d526ca1925 (commit)
via 63283d4a2983eaefd5d0860ddffcf946f0fe92db (commit)
via 978d6c756fcb0332ddf12e19305dd0e53b98a93d (commit)
via 1cf7e64086d1490649dc56e1c0505be91c600218 (commit)
via ea3b06874c8a1037bad4fd5b9396d196e6963ac6 (commit)
via 07dca93f3bbc2426d89eba460c925863e4ebd636 (commit)
via 9f034d7573ec4fb4bd3879ce66fef0a20167a2ba (commit)
via ce1459e528772057d51a507fa0c2bb1c8cbdca97 (commit)
via 0b7a4aa6ba5a144b7ce616e80e95d9ff944fec2e (commit)
via 4f7ae6f5059924a5acc4490880449d6410dc5c93 (commit)
via 5cd3e386e0ac84b0ba1e0737853f4504ba24f677 (commit)
via af9d57d205eb656a01b9688c3efa591ad8f1a2a9 (commit)
via 3e5ef9a4de7919971130f7f2ca3052898a069e76 (commit)
via c88d2fccb148d38ca53d379b7b71eb0467e1a2cc (commit)
via bf54968b128a2133174d81c438d402ecfaf83042 (commit)
via b3ee71e749f3c93c51cd6fb3fed51ffd54243117 (commit)
via 8da9a904f41bb78fca5568fb94004120682b1653 (commit)
via 3215deaaa6abbb7663fa3ec13a03ad74fd58b705 (commit)
via bce02d8884d6baa72c537d0d7c59f924cb290799 (commit)
via 9a96cf38344355c529bfb47251a01ad679d75459 (commit)
via b7fee5a3268c340975a1dddb131733abfd153d5e (commit)
via 291158a341260e97125db5638cd47c1e9aea5e8f (commit)
via 2cc9b3048bcbb827e69059fb6beacb9bccbc5d7c (commit)
via dff7492c9b221aacd4efa6675bb288dfb5d50f80 (commit)
via 8fd75781892c7458702f72b3b9cb1927609716de (commit)
via f6c4d4b152a985f355cd1552ce01c99a589c936f (commit)
via 376be529a7c99a70050bc48c51d891f1bea9777f (commit)
via 066cfa988ddf88ad32b7a114f2e984a13a3848c8 (commit)
via d80e524238a17878eee0c620d56e2fad072556bc (commit)
via 079670b94ade4b5792fa74b29a6b5b4626f27185 (commit)
via a2b2bc12af45f48617729c1413a1a01c0ee957ca (commit)
via 8ff5bf3db34b0a8a3a9fe5a03f8cb95ce2a3d038 (commit)
via 7a8f494c7b171f6cbad20a14ef03a5d7acaa6ccb (commit)
via dd6d677f0b06341dce90d259785c9d513d2e3935 (commit)
via 26d6cec4a9291f154e549fb6f4318ace6cfaa2a5 (commit)
via f69c5afb18871a773af88484a24d7da12c3a104c (commit)
via 32546502f3f43083adbe35b005a71d2c3bd42e55 (commit)
via b8c169f359dd99900994baff60c57417f13351b3 (commit)
via 96bc132a736fe44cc021d5d4e8ed6780b9520f22 (commit)
via 1212781b35c9e0080db6ee546cf5e7ebd45d6b09 (commit)
via 9f79e88693dae859f838bcf684158e6e6f8f3b6b (commit)
via d6793fa1acf384a93c83db6eb916e3b9eedd9ef4 (commit)
via f776822506b417ce25170c67c33cc05870b37adf (commit)
via 5d9310c4b88f807c1a3f1a0b4d7b6c10925dcaf7 (commit)
via 62c222b6d9fcce8adf65f48fca2e528f777afeeb (commit)
via 92c00f4228afac1bead526bf63aca42581d4c858 (commit)
via 7eb2418fa4641c60f6713986de7d3a50fd7a22c0 (commit)
via b1202ffa53484b65d95787fddef1bc6175e05ca9 (commit)
via ce29f8439f94adfa56655940e657afbe07a0c99e (commit)
via c49bd90bdb03f3013a796ea920830547cacc3c48 (commit)
via 7edb9bd32ba23247a509cbe9d44ccb02da97b66e (commit)
via 0ccf57bd817a73e7d7cef714039f1302fa5298ec (commit)
via 4bad6366a74c9cdf92e6aef3849c29771c77af36 (commit)
via bac3c8c5e7fb88ddb3615b895ad57847b9842171 (commit)
via 6a3858a69e6bdff1d10136c59bfcf7a0cbe47059 (commit)
via 675e28092f9d92c56c38d40d13ad5b766bdede05 (commit)
via dca9fbc845f297db70dcb2202624b1497df5593c (commit)
via cbac223123dd1b460fa10c31d779c5f73f637849 (commit)
via 7cbe16e99d8a61a168579354487902ee50413e08 (commit)
via 8c5b71ad6db208355947c639d1959de7d770ad2d (commit)
via 4ee89e903de920496a69c01df70db13a70a2a0be (commit)
via ed3818775569116d7f09df3d81e22cb8169a8c06 (commit)
via 7e1001406d02053fb1b94bc33ccb8a3f14dfc9cf (commit)
via 416c34d683f2a17aefe19afb466af4316c7c603b (commit)
via 9d6aac5354566288d7bc734213e5ed0c3cb3c4ca (commit)
via 926300415b642367cdc2febac6619f8cb8a80b46 (commit)
via 76727919ceb590f03ff0f6db08b7ceab5b7aeaff (commit)
via 194ed4130dadb7dd1668f6af87405bdcd8041199 (commit)
via 315aa1cf834a3d78a567263fa3fbda9b2027457e (commit)
via 1cb1f3dae747fef1a576fe38078891e545fa92e5 (commit)
via c820f6a44d3b937d409c863b36f4a4c2d0333ea7 (commit)
via 2e1d1be5280a407373f82b710033c7f6d9ba12fa (commit)
via a06ab151cbab6f3da8735d2e5e06ede9454ca4c1 (commit)
via 770623f79f7fdff38f62c641438759748cf3f138 (commit)
via 04153a3e04ffcdf3a253f38676521aed4b3f22c9 (commit)
via 39be3c7e98728df57cfddd37fb7747f1339a319b (commit)
via 37e136b1684929df204ddd09c38978c705fa7228 (commit)
via 8b067d2cf5bf801eb143b4b04da5c22607673471 (commit)
via ca2fd32c5508ff1b68781ba5b82e6cdbf9ca100a (commit)
via 03afa6ef8ac9e5acfa68b1005aec6756eaa1d093 (commit)
via acc834c7ab79521fe06f9851c24138f25b767092 (commit)
via 0854d50445a11847f80e655482fd180d7c4e4d00 (commit)
via 202d116e5714a0c21d0c38b7dd45b5d4ee494880 (commit)
via f9671640954362a918c669700bcc9a57be25782d (commit)
via 8bb251a84a34586bd2c7b9078ee12523ef129205 (commit)
via 399912428d50cddbdd2e6e36085a9887f534459f (commit)
via 0e35537d754f1c687850d1caccb2d78d2e418391 (commit)
via 3ae9ce5dd7d1119ca2c94c63a07b04921048ebe3 (commit)
via b8c2339b2f46d4885b933b832fc5b37c7ca101a6 (commit)
via 80ae639d3cc4f1e83f1ad48686f87417c06ca6dc (commit)
via 0d671d99a6125e8406e4d06efb58542d3f0aa955 (commit)
via 7dda8d3cf3b089bb7e03c4cdbec827fc6a188c88 (commit)
via 9e223787a474c672c5f1cfd4574857241ae4eafa (commit)
via bf48520113c4265017769d374f6b1a7ce3fc8e41 (commit)
via f8ed12daa1f383f43504570e401729e699f7ecfc (commit)
via b577b6af8e7f4cc53e73ee01188d1700fb8d3b82 (commit)
via e45ad1239d7d8591d5e80d8cbba7d404c6c3640f (commit)
via b4a3689a68d88291d5aa73b9179322f58b562db7 (commit)
via 81db3241f2c888c4fae1884444953085be224815 (commit)
via 3e33b239450771394fa6c83b67b9de80169f35e8 (commit)
via b0d186effc0af8d5f5f012895a194e7e01d4804c (commit)
via 89a3b63e52be3e9bcf4b3d15e210652a5cb839c5 (commit)
via 984c72381ccd9f950a87d4d7edecc6fa30db8b41 (commit)
via 933522d1dbc9162fbc69453f0ab5f72998df2955 (commit)
via be2daae6b8df45f3f6de5d94a1938cef54336a72 (commit)
via 484cf504af0e9403e3437a5d2c5fb361c73daa90 (commit)
via c20bca94fa17fa59bacd7702acbbbe87a64c0193 (commit)
via 69a52a7b7a5272ceac5ac7004b553826d3c1f6a7 (commit)
via 7d4f13635fd26bceb34ba5002ee9008463755bbe (commit)
via 80c34c3812f8bae13fb902dbaaa287ca207857ac (commit)
via f657f8c4a1dc0ac69b16b1dc6eacbf5286f1f0a0 (commit)
via 9bd8e0b072ad5fc5b8956fd5d3e51dc5a9b0f236 (commit)
via 0ba3a73180afa69e6920ba8c220f0323cb4fb896 (commit)
via 5dc1a7047a77f86de7518a99805af64891d4e22a (commit)
via fdf07f3aeba5906fec462fba33801c173862f241 (commit)
via 0089daceaba4338046932e65a1b5882065416633 (commit)
via 567a3e54d211ab8d09119f99fed10b57db895450 (commit)
via f6d8ae8f07b63c711d4b62403e1766b5eea90103 (commit)
via 00b400574aa75c1c5fe469233ab16930e2d8a4c8 (commit)
via a8dbfd5853e3a5f7f2a3ca817e96d9e0759061a2 (commit)
via e6a58aa8a70c7fd17d9930e7df8d158a7e3c8c8e (commit)
via f6e8a41e6724e641d3b831983e4d158ff069b8ed (commit)
via 4872dc464db25a003c66ef91773b616495cc504f (commit)
via e4fe3756763773940b003159649f224a5ac42ee0 (commit)
via d3d50934a9101416c3106497d6ea9ce548760253 (commit)
via 347a87745eab23d8427349787bde4a938a1e8c3e (commit)
via bd5dea8822e515faf305690ca5c5281132d95587 (commit)
via 4ef0bef68cfc777e59156fce1563583c0ffb76d9 (commit)
via e771e7c9fb79487d7b192769bc2d91fbe4118ba6 (commit)
via ed438a93f18024da926eb4f56a0f96f597254a55 (commit)
via 454172a99e4aebafa2cd42d389cd63a8733a046a (commit)
via 3682415023547d90050dbb7ac8507e0c77109906 (commit)
via e7f5c0a99ec597c097cf65e0c8503b7075e32d16 (commit)
via 25a4277fec9efb37b107f6bb6c9246f05cd3c348 (commit)
via d2224064f1a70969a77a8a82b117489793d6653e (commit)
via 23e42951f2f2cca539c69a843ae31d9c6cdb194b (commit)
via 8819ada6c48777c0dd0835d46f4a9dd3ecf2b0ec (commit)
via 548d0ee6e726c366fda3f37251f329ec51decc6d (commit)
via 929f69fa966f9ed7a1a8cce19a168348295863c2 (commit)
via ab592e757ed0a4117f68c6b722803e8ba108bf66 (commit)
via db12e14ea0f35738dbde263a8d37610995227853 (commit)
via b9d498173c0394b385f0ddef636b87e6235564da (commit)
via bcb1753ee643a7d5ac136189f9bc06717dfdfb64 (commit)
via 1b193f0b1263a677f630fb419d13fc14a1d99981 (commit)
via f2f6a710f46e3e7b357128d907002945751afcfd (commit)
via 6e3e5c9e4181562682ffb60c562c4bce263b71a0 (commit)
via 38e314eb064ae94318deaa9544c2da3f46f5d319 (commit)
via d53e6b98a2599ba4ce6ad14f711b76e44a32eea5 (commit)
via a477a8c4f4f7e827d32abc1fbb45bdb3c37cff09 (commit)
via 2907c2f55555de6b1df9a0262629003f4856807d (commit)
via 73053c1fc454fe8554db170f1a30a3442546824e (commit)
via 6a7524c6aa18f5afa4977314eb01f0360e752789 (commit)
via 3fea0c3b3fe53ea805f1289ec9ff5e785024362f (commit)
via 6d4f21f6eee9933a2883f2a214953432c13ee1c2 (commit)
via bdd2279f13c6415e19a9ba0fd91dfff00a9cc80a (commit)
via e0d3522b888033febd153a4a7d3b7c5c13641f09 (commit)
via d6ab64818b9d212691c200c292dc0f18d193598c (commit)
via 779bdadbea9a62e5a2203651703e15edd321b9d6 (commit)
via ea005f31ca7a823680c70a75ae073bee52487859 (commit)
via 0c1ded8dc0be9c61975e04a0b416b064223f7bda (commit)
via e95a97d41a186ac65077ba3103dc10e5d41fe7b5 (commit)
via 3ae729d5a4f63740ed9a778960b17c2912b0bbdd (commit)
via 52fe4420b771a0f3b4fc7c6535bbd6e9b279f775 (commit)
via 0118219e1850a05ceb181a4f47a6906c01c17c83 (commit)
via 1ab3e66438fdf173d245ca8e53aa412e73260960 (commit)
via d8344f3d05565ae24a39a8f02533c396b544a780 (commit)
via 770aa8a3d3da978a35520af5f205ab2d8a5371a0 (commit)
via 9add17f218409f357d5ed8b831c777ac93f41ec4 (commit)
via c9486dfe2753a3a9683dbb131ecfb4f5808a27c1 (commit)
via d74aff3d95928db6647a11865c396204c50bc157 (commit)
via 7ea78b5973525193eda8e379cc351c7804653216 (commit)
via 531270084129e069772e68ead40c97404d1c0dd7 (commit)
via 228f15081e22abed7ea336126caba26de5a3b791 (commit)
via b2970c238e24e6239760b72c924ee7dd2df9ccd1 (commit)
via fb2946557216c813310ed062a06b55d5dc466bb0 (commit)
via cab5bb9d1f9fcf674d5b4c82aba7622597b1fd35 (commit)
via dbbb1059e62e9fed10b429c030f76f782cbc1fc4 (commit)
via 5dc4391345f6e86906a57af1434025cfb47b4100 (commit)
via 52bc7e85d938e7a6582d31eca071e43429d6fb00 (commit)
via 0e70b27ba900581df8e23cbbd4612176f869d796 (commit)
via 3dea1ef72c646d808e5b287e98253f3b8670c450 (commit)
via 5e3290e9733d522b0eada1e6e65d1d6483d93b1b (commit)
via 7efba073e2b83803a47fd89e701fe60b98f2debc (commit)
via 386a86761838df16c1459275d465ed21a1c35d9f (commit)
via 12279366d71627bfbdd74d1a6675dca825d8feca (commit)
via 72f53f22dfc1bb79ae0141a91b8f9786e1964f41 (commit)
via dfb93f11587ca08b820c7c785278366f2505cfd1 (commit)
via b9671caf8fe1abd737846edf7dcd627870f986cc (commit)
via 54693cf5f11bf292ae308604caf6e866dbb03e6f (commit)
via ccb2231cd848c89f04ab2e1e54b013d69ea34893 (commit)
via 6fb16ce6eaba92b86a22eac58eb0eb61b3fd8804 (commit)
via 564b1e3f2906bbbf53d003d6fdbcfc83661385e2 (commit)
via e80aaf6183c6692ecc167bf26cbdc53f8f1a55f0 (commit)
via a6743a5420aa02a0550b0f7be004f6c06e90ce21 (commit)
via 5c1f594e585818719d5c19346e73a1cca3bbce2b (commit)
via ab818ade016bcd794980438775e15c7a74f054f9 (commit)
via ecc054c097e7ced281d02ef9632eb0261a410b96 (commit)
via 9a2ebffd4dd9cffac395177e997f6f47408b4782 (commit)
via e7da50fa4b4f770240feda51ba60f6255073e54f (commit)
via ed2592386c36bfc0b82049ce88758303b16ca075 (commit)
via e1e6f073a9f5d7c3183cb8096fb24a42c28ba36b (commit)
via 788af978df01c3667be99a1607b774f5fa844113 (commit)
via c7b15a66dc9ef2285f0983759d41baf5b9933505 (commit)
via 4d354d8b8932d450c77fd52f3501662827523014 (commit)
via d11ae95ea3403559f052903ab053f43ad7821e37 (commit)
via 0cb7c7b0bb79be910e261f3d30c58ace6b0d06d1 (commit)
via 8305403a1ffa8e551fd1c7bd88af1a65c0ba747c (commit)
via b1223e789040e9e8cdc6869a8a1fd1fd7acc109d (commit)
via ca8e0133c4a99d9828beab2fc95699e9fb73815c (commit)
via e184813fdb0578fe7c5a3f3fc39b56d0ee4d1505 (commit)
via 5224fa039966557e869338d2591e7945cdcecb74 (commit)
via 815615463b1171cbff7c5e54f62fc708cc1bbc99 (commit)
via 25e3c82c0e927398e759e2d5e35623012b8683f7 (commit)
via b4987c956dfa44ca9fd8552f63e15f5fa094b2a4 (commit)
via 3083294d65393a31522586e058500f6abda29b83 (commit)
via 12c963421d045a127c413a0722062b9932c50aa9 (commit)
via 116acb2c268c89c89186673a7c92620d21825b25 (commit)
via 889be5dbd230ee47a90d4a83f682b13ed7e3faae (commit)
via eef104664efb52965d85a28bc3fc7c77e52e48e2 (commit)
via 0d329c0a83a23cebb86fbe0ebddd780dc0df2424 (commit)
via f169cfdc08761a3d9fcd587ad8661102672403ec (commit)
via 0b25598b35eaf4a45be9c769994633e14e13a6a1 (commit)
via 8f065d3b4a814b5a69b3f39700fea7034c79c492 (commit)
via e05cac70d855cd404eae9aeea5fcfb83ce8aabcf (commit)
via f6aec96dce1ddbd8961a3aa8a2925db2021719bb (commit)
via 55089490f79ce1ddb9610fd6abeeaf896825fb71 (commit)
via 5b616beff49ce5fe10c5efc2784b6b234bb8cb4f (commit)
via 0c305b6176408347afd8452abb8fe974a7e3f999 (commit)
via b6f8c7c45229a8a5405079e586bfbaad396d2cbe (commit)
via bc7c0509f28d3a448adf4c2da335d0251ef69892 (commit)
via e8f5af786c7665141f6644998b8c427ad466d474 (commit)
via f3185997ac0951edac802e29df03dfc0844fda34 (commit)
via b643315decd3e566e68ef374a0794371a4bddab3 (commit)
via 1f4bace8d6e4d8f627bd31dc01061c31fd590128 (commit)
via 6f6372fadcfffc89ef511d51323678f88624be5c (commit)
via 3275ef477498e0500d7ea440f1bc51787acf4610 (commit)
via c5196c9298b7df29652c0ebe24a43ac6c9c76b0d (commit)
via 37c33887bda54afb8fbf4786d400ce549c0e3de8 (commit)
via d4dd32824a1194718c81773804017ab546cb3aab (commit)
via 6893c19a8b81a399953edbf26aaef6e714a7ab0e (commit)
via 2ddeaf8a7d64094f4caf6cdc412d8162f49f73a1 (commit)
via c9317f214b274b805190b8e878c79f4181d93bb4 (commit)
via 7c22600aabfd10e190e98fff0b7c2d69cd191325 (commit)
via 15ce8941e7d2807a3396a6874c528b24c387660a (commit)
via d7c798565e0f12a821dd399ac3bbf5d49271169a (commit)
via 48fbe735fb8f0e65976d2b9dd345bf2f947ad258 (commit)
via 52356b79d76fb299a67685510ae584f3b0179734 (commit)
via 35cc7ed70ced98eedf9c065faa602abb1dfac537 (commit)
via 6f06d47ba0965013203af25c17854c01caae5544 (commit)
via d590ff257c81d5aac51928148ce74b0131bbf81c (commit)
via fd0a254f815b133c67230c50dd84eb0d4b31a93d (commit)
via cd9983dd5f16803aa60e9fe1692b7e6716ac3927 (commit)
via f46cd62a69b8050c7c30a53b29a781a9b5e9f062 (commit)
via 46c685acda0034ffad9d767a51aa3aa5df139356 (commit)
via 6838f2bed6459514c1b0c549e6aa3fc7dbb1d7ec (commit)
via df5f2391f7b2e3cab7e677ab7dadd02aef06e269 (commit)
via 33589acbfea909ca2a26b977ff2f672332990747 (commit)
via e95b887f85a192eb1597cd5d358673520029ad14 (commit)
via 128a19de3d4387888e1c46df0c3c8964881b4274 (commit)
via 38f14ab8fcfa4eab8bab417a5a165b7403ef9b0e (commit)
via 6e05870c978aaa057b5ae0f525a2e9b803047ac8 (commit)
via 59d08d6ce8cb6c41691266e133304c961c270e85 (commit)
via 90b6238f06197c2abff953ab5920ae5b6d39f97f (commit)
via 2c1c96795601a19554fa3a86700a1b9e9d57c931 (commit)
via 9793eb77929a4ab2c0192d9bf5d3f8d20dd17394 (commit)
via 0aa13feeeb78fc9323bee329c4d91c30f25de121 (commit)
via cf97bcb0c3f33460e9cfa57a2890df1c38a497d7 (commit)
via 6f6d0c269ecdc11aca9166940534ec61b6dbc39d (commit)
via 4de41a68ed98818db42c2238d66764e5757102ed (commit)
via 9b292f68805700c7ae46fc149231fdb79554bd17 (commit)
via 281d762b1a56317171e462666b98d50bfa31a08a (commit)
via d4333bab0a097f4bfa36d2e49f4dfb12c73dce24 (commit)
via 11b031457e89d5739922ddd0bc65c9d781b6db35 (commit)
via 9d8780f0d0f53d9d326a9d64b7919fe1a628b767 (commit)
via 01f7e10cf2dcf403462b2feed06c43135651556d (commit)
via 340d33e565ee9749b06d31e55cb0222fa98bd546 (commit)
via e859f6558cc027261fb733e4e86938e1d31c13ca (commit)
via 9c70c5223bbdfe1feac122d4b7606a46de5c22a5 (commit)
via 5bce538d6a6ec216bfbfa7484f356b396dd4da9e (commit)
via 0b65c07b97c43e8891c2e14061270878a85222c8 (commit)
via 0bccfb2994d307601ceba5c3a6223b7ca7cf5338 (commit)
via 7bdf778b10b1ab85553a31c104097073214f6430 (commit)
via 6b6b680700699c15e22b6c36975729035676eef1 (commit)
via 39334a61e63321352304cbae77b37fcba4fed662 (commit)
via f4a69c9aea8b2f86abfdc35757c7e8c53e714f64 (commit)
via 54a27fe598e6d44eb59bc94882f7f56585bfd5cd (commit)
via 8ec57239e91f22f427f8065eb742e6c8bfa223f1 (commit)
via 3eac2b654808f9e233885f910045eea9d2ca0aa0 (commit)
via 6ccb583f751e020a6db768d517c2dd3ba6d93cc4 (commit)
via c113ed0ca238bbcbc161f059ffe9b064e3ece333 (commit)
via 4c74fe6b84d82066eb3f004bacd4a376cd82d140 (commit)
via 796bb0264184e8d9343f041c2f11cb898c0d18ac (commit)
via 215c69dc9a7d8f868198b5523abcf41458fb6e4a (commit)
via f3384e664de76c4bb9f8fd9920afcec86557f1f0 (commit)
via c8ec2f334c3751c28d5f952d07dea9c0558ca0a0 (commit)
via daf6667d1f94c7e74df4076daf021cd28a2797b6 (commit)
via fc5b87361580d915e28ae5f3cc4794b75b671b5a (commit)
via 849d0ba802323fe05e3039ed5b22957db2c85a67 (commit)
via 31716595b5bda8524fc841378468fd1c47510dd3 (commit)
via bbad996200720297c10313ae45906be80cf5f260 (commit)
via 50a98a5b430ca2cc6bca434ad908a74411fad537 (commit)
via 1f1e0a5d0eb8474321a1a6431b4171f67a438231 (commit)
via 75f31665204bf965cc5b3dd699636be12fb6bcfa (commit)
via cd665a945eccba1406696c65ac7eebb12a355446 (commit)
via 7104e59bece90e387d70f617eb7ed4c34087283d (commit)
via b0ab9c4549148435114b95edf38cbf4b6d9fec21 (commit)
via 6e8d06db1a6e63e0da80035114dbfefeabf63d87 (commit)
via 2d8adcbd07fc12a3212a9f045605ef712f5fb3ab (commit)
via de65820cd69a4d9aaa87079a809c70364571efab (commit)
via 8811c8f495557bb05a65d2c09eb529e2675b6a57 (commit)
via a543c5ca7c1285548726e6d92ca6044dc1963340 (commit)
via afec267febc1bad9e8b24ac92c434cca06ccd325 (commit)
via db1ae9c5b6660b22812d126c60778d5e298d2ea9 (commit)
via b248d650a44fb49d59a548ad173a3e60646159da (commit)
via 6798f8bfa617c72240036571cb12313fef353090 (commit)
via 8772de117d8366988bc60c9f9c571e262ef75932 (commit)
via 4f7fd351a727ffc44d3dd4e00ddf5222cd2063c5 (commit)
via f2b740ac53a3347b7e0fe1a09e52f6311265e709 (commit)
via 8979927ae719d1a16d2acd01a11cc17ed3c78dfb (commit)
via 2dcf00ce6c001c42c89e6f6baace708b706994f2 (commit)
via c1c8c1ef9acdeddf719f358b91590545440cea68 (commit)
via 871b3ab29e87cf0de15f7e49ad19acc4f7f6f84c (commit)
via f61f94ec1bf9cb3d32b38a90a1f5c2d58ececbfb (commit)
via e207bc53a407b274e0c771b781d73321b91612ce (commit)
via e535d0ddb3ca97c849bd3dbab997dc756625cc9e (commit)
via b5884fa7101cc528f07fd57c3de445a3680964a6 (commit)
via dbc88fc14992c556b94e77de563a8f7abcb0b653 (commit)
via d5c78119f7d4f6a6a3d51d7fb7ff97758bf0a880 (commit)
via e64676d21c373877e93f83ba3fc9a0b55aedb40c (commit)
via d85502cffa5e41db6f2f2e1ba11d4285918dccdb (commit)
via 34b00afa0396871f762190b8c436d2a5bf91c9e1 (commit)
via 92d9e363b5ab7f96a2c8e6d3ae86cf8cc91dca9d (commit)
via 62a02d25b6e5d9f92c205260daa11355d0c62532 (commit)
via bb57c12e551e7b66db9d5d8623e2f294091f03c1 (commit)
via 325ba6fb34be799c885fad9287d883e86b835c84 (commit)
via c2596c4a72213391e5badda35b73f00d0e6aba76 (commit)
via c441b6234389c02408b9273a1446b46ee99a94f4 (commit)
via 197741f19d8e6304f45efd8e960ffce4712e3ea0 (commit)
via 7c9f387aefaca3606975868c5953a0820afd0986 (commit)
via c9d3eb5f61c5756b78e5aebe1822df7ff977eb74 (commit)
via 679a5bc8624a8d4bd96ca62c27f7ac8c4342bf20 (commit)
via 62e2b91b9ae508a9f875fb7f15c2173dbbfa6f25 (commit)
via 9f4aec8d9788d7d6b03c48d4c4e7f90ffaa7a62e (commit)
via 410a69a0228c3445bb57687d0b60e789483b96dd (commit)
via 75bd00e87e3af7c3b43ae162394d0bd3a3385f26 (commit)
via 760b28930013fc479fece0007b3db79ade49155c (commit)
via fd90ace4c1e77c94e90d2942cebe84e9a2019c0f (commit)
via 75cdede09952b5aa8c6d4ceb0de10c5e93002a6d (commit)
via d00dd7dc5e415503de88614bf2ea4aafa2bca819 (commit)
via 3281b315c89caf1d539a316e41cc095e46482f75 (commit)
via 43859909e2982252d136e19258431f3aa8afb890 (commit)
via 09ca4b9d9bd61ecb779386a6cc7796cb05dde1af (commit)
via 2a0d98534964649bc6884b7833c6c4089159a6df (commit)
via 49ded53def53ae60926433b924db9525aae1e631 (commit)
via e513bd38a6b91401947d90ba5f301f01d3991b8e (commit)
via 85046ae23f853bfd01db6b4a840e80220487bffd (commit)
via 355c559b74518b67eb113e635363cc890058746c (commit)
via 074bca956e20b7c0044df9ae2f41d5fda2ae1026 (commit)
via 980548fd880338d2cdf4ce641ca39632dc040426 (commit)
via 692d6f9760bc67b68a5c96baac47067fd7dfa711 (commit)
via e0cc99a62f9ceb9a0db0b5bc28711fd8c82a6151 (commit)
via b46a8d7c1d50c06e641af99b58301db0499111b9 (commit)
via 797bc1cb25b9dbdbc663cf711aecb0acc2450276 (commit)
via 12ef3f5a7c5a6b89964842fd3da047b8d07dec91 (commit)
via 451875b4f976a527395e9303224c7881b65e12ed (commit)
via f98b2e334fcca666afaee3c6546b9fc91a4963d4 (commit)
via d4dd94f863014a0d2daf42d94f393d294e9baa7e (commit)
via 85f2093ddc13e96585e9a44ee03b52f848ffbf75 (commit)
via 60f763ee16fca2cd1ec9fa6960f765de9b26ef70 (commit)
via 9abc632d37bb6ab554da89301ab1cb65164ea4aa (commit)
via 1031c264fd23641111df1e12a35d0a8f7e82fb80 (commit)
via db5d5ad16fb02ceb636ccef232ec846086c6cef3 (commit)
via 24b9144d4ba83d37751786b08b48ad62fb7aef26 (commit)
via db7bf1058d28b2b5e931c60435a13f6db15df6af (commit)
via bd7ab16b4537788ad53521c45469a1bdae84ad4a (commit)
via 80c96350467f23a54546580b3e2b67a65ec65b66 (commit)
via 68d206766637a041bbbeb89c8a1bfdd76317e192 (commit)
via b29d26411c62fef6b1401aff4f2c6a157053de4d (commit)
via 87993319a56af838d3ab7e251fa4902476ca63c8 (commit)
via 30147392ca2b686b17e022a9cf8bbbddae785ff1 (commit)
via 6e5e9d58c1eeef5677c90886578a895cb8c164c5 (commit)
via f2731e0c374e5323ce4cdae2bcc7b7fe22da1a6f (commit)
via 387cd15b93fdca3a66bbda427c4e1d9340bfb532 (commit)
via 0f3f3a55b561e8560a6df2560363143751b5d9af (commit)
via b303c6f688c6cd1ffd986ae65ac3f2dc11f27b93 (commit)
via 12a43565addfdf720b3ba8cc45eab6daf66f85dd (commit)
via d2159fdc0f0ac1d0aaafab725b930e78a8793494 (commit)
via 830db0485e19000985ccfdbacda4d4d5d62583bb (commit)
via 7e784da5439adaffebd2041c4abbb8a9c1e396dd (commit)
via 0b8683b7eb25cc150c7738ddc0d237f255e0fa70 (commit)
via 6444b19b244d7c84537fc796005ef756917135ae (commit)
via 94fe5757db7a4dbb33743b87bf748e906444973b (commit)
via 7eb84119d88e6aadb0323951f42e5dcd92817835 (commit)
via e5bc5e207b2e70c33286dfd5f5de8b6b85f2c937 (commit)
via d805612e3816191fa4fd4f57235dc23741c64b15 (commit)
via a8735c82b8519d8b18915765ca983fc07154a17d (commit)
via 5d0fb5ffdfbdeb913ac94cc0c81cc2d105aa486c (commit)
via 3b4c384407ebbdd9ed4ad5057080b3be038b8748 (commit)
via 9c3630e983df43e68006b526a92c2a9a2b64dfd9 (commit)
via c4e126313219ecde255a644a2c74008831edff5a (commit)
via 88711fbfeadd6e4663d986962dfcd7ab660c61d1 (commit)
via 17ad2a4f466f22b7a75b5ebf8a68446bb328c40c (commit)
via de6242d3075700ec4b73bdee583dc216f3a0b046 (commit)
via 9ee23a853c18da3c83530c7957464bc6b6e9fb16 (commit)
via 5c3284c1ec2edc28b0697532fd094d93d5ecf31b (commit)
via 84696f37ae92280ded0e6600074ad8bc518255fa (commit)
via ea4a0888120dec61348cae460ffa08de663e2852 (commit)
via 869e8290ea62f594d2472476303bb74604e9326b (commit)
via a37a2ae7080898244de86d136961de81fe28a434 (commit)
via 4e7253479941cd6d59a0c8efbb1113d3734b7f56 (commit)
via 15b23f3612ffa19bd7fb20ce07485cdb3c06162f (commit)
via 4d6945e70a0ce0c939d06e29c5883e57501f1e20 (commit)
via dc11dea21281758b71113c03a8d8be92d175a46c (commit)
via 3f48fe4a95ec0e67b81d5d606762c91ad9a6b799 (commit)
via 9a897d43f034544cd09292d0fb6fded7eb64ae8d (commit)
via 58ef3771fbbdf7fd891fceefdd4bf2720c6c1ee7 (commit)
via a9abc4345150a3f3e30da78f8d68c1f9e0198772 (commit)
via 84f27c6fcbbf580434c7d56e68fa42fe7cf7ccb9 (commit)
via 0354904bdacb9bf1ebdf3ebdf3723f8a550bcdab (commit)
via 1739cf248ff21b21271d1e9d5f77a12589c3856c (commit)
via f6c2623eb8ac7296b6d7a76657394272a71f5aee (commit)
via 8ce47547b34fddec16d1ccd801f025a56976af95 (commit)
via 45dd3607e24aaf515b5d75c666b351575410392b (commit)
via 8de3a6e2afe21ac93d610fa46fbc579a81ea2277 (commit)
via ef135d4314fd4c2d7da66b9d7b59af4a85b0f7e6 (commit)
via a9479dc051ab00f311c04cdd5b299a70739f67ed (commit)
via 02ecce62be3516c03f523b1665c9d151a16a39c6 (commit)
via c2e0e465f9488970c7e460a41e3fb7c366530619 (commit)
via 407aa07cee4d075c8e7996a5e994c02e76f19276 (commit)
via ed01220cc81fac2f65abde945d9b77b11d004361 (commit)
via f3342ae0302f2059324a7b90bc466b0d15fdc2aa (commit)
via 3f8c94b478c8f2e5c82a1425fd49e977ed969a7f (commit)
via c20c30f615756ddfccc4bb75c65ccfc1a399466e (commit)
via bca65a2394ce11bb4a0b001b8a986961c2e84881 (commit)
via 583e3f90612f50fc9792a5a68fa16f7924ac94d9 (commit)
via 46d09186d340407fdcf066fea25444682e989512 (commit)
via 8278e7cec35536046caf596f4e55c7c037d06cf0 (commit)
via 68807c3cd64ccc4f0e9261df3e840d30d9a19b51 (commit)
via 64e234d417d5685a4aec0edc618114d9991c031b (commit)
via 422f3d3d6d5713bf9235b7b7696818a70b3b578d (commit)
via 9d0e82daf9c650b92f0ce96c4df231452133d37f (commit)
via 72dd27306224497c8ba97f391d30b774d4d973fb (commit)
via 279b2f94168ee91e02ccd070d27c983fc001fe12 (commit)
via f3b91ed8f96a4d41eef1c64a7e77c406ec763612 (commit)
via cd04836359da82ae1dc67e5a05565536f4427b51 (commit)
via b8df6ca79e69678a07d3216b9b2b552fce27cda8 (commit)
via 89424b1d6965bcda21a225d0f545f43d9294ff21 (commit)
via e65b1a78686f840ab46fe97355d674919185adc8 (commit)
via 2d6dda71611ba6cc16fe2bd21ac816d5f7d1e74d (commit)
via 7550610057c51d47e3815ef93893d4f4faa7e03d (commit)
via 78c8836415d45839875a5f312bfaa3d3ceea189a (commit)
via f174ef9fb2d7d858fc77807045b6308e9502bd82 (commit)
via e813d34aaabee0ca034fa5ddd50e76ade80318bc (commit)
via 0eb876f52f348ff08be24bca6cbca00e302839b2 (commit)
via 27d2460e7af28398649afd51acaf32a1f392a4db (commit)
via 9f7393d8fc8b79a92b027cd8ac6fda9441d3fff9 (commit)
via c5b47a421ef9829ab45bed248c6be320f11de00e (commit)
via f721678315fc6bbec25341bd616a906976d72693 (commit)
via b0daac83d78c82f7998287bb717063c4d01d4f97 (commit)
via 138a158f0a561d406bebb8b91eba0dd6dedd430e (commit)
via c83344582375e65643c5efe68b3739e87db482f3 (commit)
via d73daf84d6c95c9f7854ed76cc566ea5b240bc97 (commit)
via 7f02625eb48105e100d2da58091d56978ed041ef (commit)
via 0625771b9e29116dc1fb0b597501f18e4bb0e18c (commit)
via 5bb0830d10b19230f9615694fa3c1230b32794b9 (commit)
via e54d3c943bb3999aeaf1667b4975dc035f7b554c (commit)
via d830549dba59f4e11412fd6dc18b7b1d4c6cf557 (commit)
via 59498c305e6f1db2a1ed8d44cb58f0d24ec092fe (commit)
via 17545aa1bfa291def4674c6700c1c7a3575ee5c1 (commit)
via 2d9e6acbdbc528563a9df5445584a8a150a86527 (commit)
via df95a9cf09867c237ddf9b4eb65a990e86de1e17 (commit)
via d4d38844faaff1576b021558d0835dedbd415e8d (commit)
via e99955cd8eca9ac8eff828e8c7b676955fd46e04 (commit)
via f2023ce7e8d70b0155cc6206c901e185260918f0 (commit)
via 35f48e217ab6f909510bf9ca07325ec16122ae88 (commit)
via f000c2b940e82736d8a58387d73ac48bc38a4220 (commit)
via 07e5f5cf883c64f7bd8a2afa4302c0479670b03f (commit)
via 450b6317357b67dfcd0ab951a83432d3fc2a65bc (commit)
via 8988502d75343349cee39575c0e4a0b33f7c80e0 (commit)
via f3a9baf18db14707276a8c911d4a6409ad965926 (commit)
via 3045b47554503c6f154e446662204e295fc769a1 (commit)
via f6cfb42730ed37bfb32cb27ef627df930f437f08 (commit)
via bf3077a6c3c9ff21c072a6f42c91bffefd35bc15 (commit)
via 823143c6ca8ef4267e67ba03771991e08d09fabd (commit)
via bea298f9547372e6cb7854fabc2c0646e1d3d9be (commit)
via 56ecd069f031d6bcdaa46664c68a16cb27b379c3 (commit)
via 4fa955b25e31cd071ca7f3b03a2cc89811f9705d (commit)
via 395507f62b98a6a1f6778295a5667110b0fc4b57 (commit)
via 929b5ad40f70fbd5bdf37d30281a761d56c87b59 (commit)
via ab1fadc6b2f057b817e1fc093650b63d9f6dd6c5 (commit)
via 29236ca20ad953ead58ab791ec376ee7921624b8 (commit)
via cc41a04afb7dae98c3595b05e7e9223307138826 (commit)
via 52b2f30022323367b2cd727f402c9876bdc53b0d (commit)
via fcabedd5cb9079268d34b47489a8e4ee669f6868 (commit)
via c81e88797907fc0698abec09767e49cee33b2bd5 (commit)
via e671cd59d74cec9f53e110ce887128d1eeadb7f2 (commit)
via 9c3a5d9319648db16b30a91253ad02d41d242cef (commit)
via 040b4a9eb8430dc5e0fc657da88b08ab730b97ee (commit)
via 76cb3a89a6615cf3418fa1efe8268bf6673a5c8a (commit)
via fc413dc467e4c46013f6e5a60dc5db24d63f72ea (commit)
via af667f2218ecf772ac2f8882ceba6a16ddc18ddc (commit)
via 822520337789f93b528fe0babc7dcfb03bb50fcd (commit)
via f49db8befafd5a716a83fec75c90145c58af7418 (commit)
via 016548df729bf84d155a90564c6a64beaa7fe690 (commit)
via 36b8fda5d614cb5aaf701a92befa9919bd0b195a (commit)
via 185cdb8cc7c0102140d41fb6272a5ee99994d72d (commit)
via d85815e2d16f7c042d7912f1fa85bf1b9c28ca44 (commit)
via 86b24e15c45bfe5085ed88280e1a5479120edce6 (commit)
via 69ab5edb4d601611ba7b4d05e56689d4b60ca3b1 (commit)
via c32b891ab6a558745a9eaa045069febd327b0db4 (commit)
via b431b4ea88c8cc1b75edc4aeaa592942a905c18f (commit)
via 98d72909f8f216fb9fc4d7c2c8e48dbe2823cd0b (commit)
via eb77f6a4621795367a39cdd30957903af9dbb815 (commit)
via 0d5e2f6abee322730eea6d7c175ae24631d3b089 (commit)
via fc8e7e75c2be02237a7961688b06869814f36a18 (commit)
via a8d6d6acff570b1a65167ec0a5151f43cbc41abe (commit)
via fef75122c0fe3abafb99d79a63545c1531f4107c (commit)
via 8d3b78ce4563e65466202c0d29d0603877846323 (commit)
via d580dcc7aac21dc8396e8e90ea6d05ec32d6cbb9 (commit)
via 9a5db26e6d9494e8285d4c177ee3d32292c7a35e (commit)
via b2a426e2c5632644b6b8bc0dde4cd32d42d548e2 (commit)
via de54ee813f35cdeee51729c6d50b82935dc88634 (commit)
via 7d73b4c8dfc8ae59dc1334e67c7ae2ea493dd121 (commit)
via a2f6c13ea591a8658b3a1139781a43bc385fa3fd (commit)
via 2ebd05b80b22ebf0e6c8b597f165c1e6bd6867f4 (commit)
via 1e3f554897a3f52e12fffc1fecbb250f272e71e1 (commit)
via c00f0d7a8a680a2496c7e575f1da6505a8a4915a (commit)
via 0bdd8eac9b4512fb392415da65cc7eb7186a50c5 (commit)
via 56ae9dc397bdf08c4e8f1ef0b64f4320bf88ba3e (commit)
via 94c2436bb8aaafc4f85130755c63c11b985df6d2 (commit)
via 7433498b7f1a79bf98ba272fd461f0ff9f1daa02 (commit)
via 32253bb7963ac7caa166ec41e336372f2ffc03d4 (commit)
via ba21f5646454c418e75eb06f6bf1a00a173641ca (commit)
via 8a69c6d07bd9bd94ce5915fa9d09a2b7e1d163c7 (commit)
via 38e64b0ecc7f4ee64a02514b8d532782ac057fa2 (commit)
via bb363086e7743506d78bc6b1e56face0fb1fc93f (commit)
via 3e53a58e1f557f9b799506b62ac1cbf456b34647 (commit)
via 0f59d5fc1ce646348dfae3ca90b32f9228d1d514 (commit)
via 1daf502a16e052b55a28bd52b4fde185ccc3b27b (commit)
via 322474019df79a1305e83ff7620a72f31a5c7b55 (commit)
via cc40406d1d033abc21de1af5a30f2a5fbb692507 (commit)
via 0984958bd1d20245e4d42888a697b6015dc6172f (commit)
via d04239d32f256ca2971a951ecdf8ec053bfe4eed (commit)
via 62fd0a980b2dc8a3332ad6ee3f8e7c8c841ff693 (commit)
via 1c5e4ee9ab4c173aca017d488cc074ef66562a12 (commit)
via be3a8dca2d7241878302ca55f45129d532b6f746 (commit)
via 3233d7d074e59b83f68a22071cff597f00d5ae81 (commit)
via b4f6242e95340a31b0519187c5fc329056ddecfd (commit)
via f866b262e8ffaa4339dac8698932e097756a8880 (commit)
via 14c41f479f2eb6b34ab2d2bb0cedb88e9d51f211 (commit)
via ef8914a4d7d231fe3590f3e004316613e25f3617 (commit)
via d6e5894564754ed81faaa3dc92f0cc0e90d7994b (commit)
via 9c0b896ee1d4edfe30c783b027ed5c081845a63d (commit)
via 7042632bf7976d29889ba89fe4867654c5f38e2d (commit)
via 650f5e137006fb7aea98e33d2ca9c6ac6712334c (commit)
via 47c9317e71768ba9788c6dc055fb6932d0f0923a (commit)
via 095085d8473689d86e00cd7d9a63680ca8faeda6 (commit)
via ab9bcc67975f2a04dfa0e670096fc8161d7840b9 (commit)
via 21f6f5ffc652e116e518fee29ebdc8fbfeeaa734 (commit)
via 0eb97953adcb12aa49e4924d1e28ce6af046d6e2 (commit)
via d820e164e4baccacd8d4e7e3761ec547402ae828 (commit)
via 75c80ee120e7d1bfb78570aa89d8d8fec6812d0f (commit)
via 1ea332d6931ea097d0128578a578528262df8445 (commit)
via 5c319bb260fa9637048cfae5fceba807e7849b39 (commit)
via d65ce302abcb260e14ca5f201b78e8e6d4a2e720 (commit)
via 49da480ff6208abc419fe66e030dfa052c11ee1b (commit)
via f433138f1f9e6b8bcd93145a40ebae6c5d996792 (commit)
via ec7a5fcbfd90b2f67f1a0e3f9866b11c5968ae61 (commit)
via 11f57cb67ecf5c69911eff21b54e05e93bbf2734 (commit)
via 03f50fc878f75fcdebf0e3273f201fb4b62b0bae (commit)
via dc71152484248c0d8075618ec2146db4ea173b12 (commit)
via 3f5a868b2277a3678f7eeb8fdf88935913b5918b (commit)
via de4cb04a20782b817fc80b49bba83b43cf1cb85d (commit)
via a9e408182d2faaed5c2457b68ea3276c719a590f (commit)
via 3b76a4a069d43c5a641914707554a6e90dbd2fd9 (commit)
via e707fc445e68ccfa136a52cd4989b0cb778d1ca7 (commit)
via 03d0bf7b78b142a5e03dfa1c80100893753d0022 (commit)
via ae45162705fb76ee534336474a67b11373209c62 (commit)
via aee1fcdf979d65c7623533ddd6d871767be9de13 (commit)
via 396af9a1527b396c251e70b5c79b5fc83fd1d7ff (commit)
via b1b189e04cb5ea5da1cbb07bd6cceccd4d2ac969 (commit)
via f49464e4287179069ee98b27fcbac793493f18ac (commit)
via 8a1b824af786989f879ab1421a4279f60bba141a (commit)
via 44301db1ac68cd26c559df225fe6d1bbc96638a0 (commit)
via fcfcc376969c4d7a6d20827c47b584db389a32b9 (commit)
via 634c1c3109a2ffdf43ef9dab839c88108d9980f3 (commit)
via a0aad53764f45a634462288befe4c2eaecbf302d (commit)
via 5a6c3296a7a90694ad4042f6256f3da6d4fa4ee8 (commit)
via bc09b0c14fb713a9aec25e09b78499f3bc2441b5 (commit)
via 6e1e1966bac965c5a26b5e5cae69cb0ed21be4cc (commit)
via 6bd6f3b6569945700386847f624dc9e8b7f57450 (commit)
via a3ab6cb01950e7d00519ddb3ead50eddff4fdcb8 (commit)
via d6ad07fdef94777bb512f072361706bcc743d51c (commit)
via ee3fbc1ebb0cdd0785f4c328c5daaa4a4cdf3f91 (commit)
via 88af8ea80b9732f951e61a4ed8868e722f337c8e (commit)
via dea445b940545f9564972c5410ac8792b72cc9c3 (commit)
via adf8243ba9220966bbb8f67460b2d323e00cbfdb (commit)
via 1ebfa86a3c2a1dc2169da072dc65c32c56a2f254 (commit)
via f7968f08b782bee249c66162736f1e82d7b39159 (commit)
via c5bdb022609634970dd981517d478e6cc332629c (commit)
via 85ed4f7ecea48a92b33f4c6b3f8d9e0e858ed617 (commit)
via dcc069254040954ee72b3ed65b772d48cdff93df (commit)
via 25d4fd80936744adfa49f133524e3f342604a1cb (commit)
via 4a17f7688fbab8f170144fa13ffcd06bc749e6ec (commit)
via d679c21a43852305c5eeae957854f6e13d6f884c (commit)
via 691d2e9af211ff8dd5fa8c96cb961b73a78394d7 (commit)
via 7ab820379890dc68699ba5acf8ab4f03053fa2b0 (commit)
via 2f89d95b71478464a898147fb20dd50ece260168 (commit)
via 7d937cad0acdccd0ff485435fbe16f005e994c66 (commit)
via e925c834ecdb4a0ce595ad8d3da9c7d4f499ede0 (commit)
via 9e14690d06ac55136b7f051a2d2b8e173fa3bbdf (commit)
via 50a820477b5d48d4c2d28ca1c22ba6d93c9fd7cb (commit)
via c89b44cdc52b6a9c0848a795689895e292ad1f46 (commit)
via fcd3b13d80a2d0e5fc31ef6a245be62db6a11420 (commit)
via 685af9cd2283b07a222157723e239f09d6ea2682 (commit)
via 5e2db402c8e665b0c6ac81047a10cbf4e26329f2 (commit)
via ee7f689e15a2357eccbf8109459864333af56521 (commit)
via 416675305692976aca45860e24b963982a2e682a (commit)
via 4d9b86e17505063c96a01d40cdf5b4fc2080a798 (commit)
via a7b2d0fbeb4ca22ffbf56d19d06b7d1cb774e383 (commit)
via d777820bf5abea433c36e956b53b299502e0f708 (commit)
via 4bfce1283654832d83a01b700e61518233c8bbda (commit)
via f517c1805ac50c64c2dbb086c16b3bcf33b15a89 (commit)
via 7045b1ca73b8c0cb12d1158f3bc59d251dca0fa5 (commit)
via d8447b6b9fd288ebd35620178ba720b1f0ce7ebf (commit)
via c75bc4f76fe456c57ef1e446db5378182692c429 (commit)
via 1be5d8d3bbec4c9a112114993ac5c85b2b26c4c4 (commit)
via 9e390558cef76767a98123994c422d0642d86cf8 (commit)
via 78742b93a5fef4b88b1391817e7bcc6738000044 (commit)
via 0dd86f32bcb1675e9d1db5e7b916a347667709d3 (commit)
via f6efed019b4e49a4c27b518afbdf2d9bf0652843 (commit)
via a960d29fb7b2186e495360887a334e780c03a6c6 (commit)
via 9a70f35c8d872bb5542e98e34b8b044228dcb844 (commit)
via 46a7082471545e05e7161737fa3b6f597e150b72 (commit)
via 2721d702a055fe0f7621386123b103b5c4d84662 (commit)
via db422fb2120e311318657d9c7dd0e7b0b5a5eac9 (commit)
via 86d6a90c58ee3fb924bcbca154f4e32347437e6c (commit)
via 930b5f8bfb8e2d971f459c570d248714183a08d5 (commit)
via cf3cf39d53c3fc6b9cf27d97deb6ffecf0a7f6e7 (commit)
via 2875ce2b55bdda40107ef3500edfeccfb29f14e6 (commit)
via df9909b8675c8c9b6fa88c5d13afd2efa66dcf68 (commit)
via d726cb5d3784f7ed96318a2214ea777a86f9faad (commit)
via 616dcb87abe148edf7278581e04cf23aff97411e (commit)
via dbfa452355153093d4d6841515f9891c9572113f (commit)
via 801728126e4a627305c2c7dc8e6d3eb30a5cb506 (commit)
via 1f8e8a3540865686686e1a87e6b5e16dc6011595 (commit)
via 19e2900bd399d1ba272afe8b5b50b1b29a948bbe (commit)
via 3957a4963f38fb249eced6c880efacd22f10eb28 (commit)
via 769c7ea507209948135facd04bf8defc3f21a8a4 (commit)
via faf766e31794722b7e2c24e44e920d0476cede32 (commit)
via 9176ac5bfce8c1771063c2514b7d46efa613cc1b (commit)
via 27f7b092c26b84633a4a266ba8ff01154d915035 (commit)
via da4b575911f7e705b3b906e1622b19e9da1faff3 (commit)
via cbcdb1aaddb4dd1a388eadbea6b6ec342c7ab067 (commit)
via ba643918cf869fa0d064d733f69b453b6fe642ea (commit)
via 906b4aac4c1d3cdb2b1ea7105133cfbe25e04e14 (commit)
via b4b07ef1d11452018477d6a4166a0cfe1122d09d (commit)
via eea61984abfea2c0acdc7e46ec182a14698b3bf9 (commit)
via bdf2a94aa535016a1640d56e9b2b539c4376bf31 (commit)
via 98ab9e9603cdf52faab5b838c078c24be4e1364b (commit)
via 564e11c9a9d9570b233b38cd995f1b4eb7c757e8 (commit)
via b5b62006522c6d8d42028754bb1be165f00fe210 (commit)
via 5ae5d3fd10c4bb520d767b25c59bf86db764adef (commit)
via a78eea1623aa6d05a395a73414bf01f6c8ae81c6 (commit)
via 87e79a6515951fece72ee08871dd6e112b1042ba (commit)
via 58807c48a5a317ad3e2d39a8755168a3d4d5fdf8 (commit)
via 97a232d7335f3bd0231fd9cd39455bde1d563922 (commit)
via 33eff4ce18fbee82ef39838b7c8623aed17dea60 (commit)
via cf9e7f1f07efa2ce6846d8a29015dd8fb70197b0 (commit)
via d346bb277c7f194ece73a7200d1ed6417b1194e5 (commit)
via 2888249fc9eb38b6d6e4bd969ce63c26e3753d5e (commit)
via 47acac12c83f173481debc64618626b50ecf7498 (commit)
via 6181e9c2c5ba252ac016f51903dc35d7bfbbca71 (commit)
via 89a7f793f1963b14bd649afc4154903d22591ae0 (commit)
via d664fd41e15f058aab41b70c567ad09f2fab1115 (commit)
via 71d378ae60a4f072ce392046878d471255f6c8a1 (commit)
via 8b6f4cd34fdde524ea035c65f7d48aaa3fb449b5 (commit)
via 65f14869fd3fbee8ed4c4ca49de8aaa86dbc66cb (commit)
via eab62f2f018417121e2520acb0623985b1708b02 (commit)
via 8be965c5f058f79554ec3376afac994e6e3ad1b7 (commit)
via b3b9f8d3e99cf46c2f85445cc5189db4c4f47407 (commit)
via 6bd0a312a4cb6803b9d6aa2f5646b610d213a1fe (commit)
via 754452f07e701448e5d9bd004cb108ddc48a8d67 (commit)
via 3cada74087687907311b52781354ff551e10a0ed (commit)
via 888a89da7fa5d219695234c3a8dc7b8a57dfe8ee (commit)
via 710d7eae846428d25dcfc6f51e8722fc65bd26ee (commit)
via b90d5ba0b6e068db21650ad42ec9dea22426df00 (commit)
via 618daa933cdce21424d3759ea95a4e2f5c69a1c2 (commit)
via c63d3e8d12f0b08cda95f89aa13274defed215f0 (commit)
via d4c2a405cb7535d25b88e9b8dad0e557242950ca (commit)
via 8825213e97f0476068dc3b52b1b61df96b40708a (commit)
via 7ec0cd50bf2c93854ef02b9c1f3b4edc4b70cd46 (commit)
via bf41f30dde0f2ad09c2b7a9894fd7992e4b36a16 (commit)
via 2a8ae7146cacb006105e2e9c6f4635aca543e7ec (commit)
via cbda583ada32e16bf8b6c6aff730cc9eab63b364 (commit)
via c9e9227878d172d93bcbef51dfc76d96f027751d (commit)
via 35fd2b2bcf370837a03f077acf1222f0a7e9c4d1 (commit)
via d9ccd460fdbe0e0f3dd9263175aa4b23b207a51e (commit)
via 2d97a5d9d33aea87c3bd02fd1fa417f5d4e1fa05 (commit)
via 92fce24de299a8b9a9a1c0c6b98e0e9c1656f99c (commit)
via 262f62f57d987269152412a55c458a03adc6ddd6 (commit)
via b999e2038dbc54e2c8b1c390f8b8fe50d0f1d10a (commit)
via d2176225dc982c22640215a0e611e997e8eeb030 (commit)
via 74ccf6db1188b7b05c716f8382d28b276ec578ec (commit)
via 91d8b670661883fc0472fd05cf0e54d0e357c187 (commit)
via be2e7d95414eb78f29312f30e62d4cabd55f9fda (commit)
via b1dc1806fad00fc5b2589164e964646c02a700fa (commit)
via 6cef73f96f58ca3f0e0b2f594b324602c7590611 (commit)
via 7615ca1dc941bb9f225a1c50df7fdd8d31afc9e8 (commit)
via 933ea656af9d40604e4823b07b83e74714f2516e (commit)
via 9c4ac400f0f7d8daa8483dbe73b5699782ae3e22 (commit)
via 704a705d7aaab8041df76e2981e2a1efc014aad0 (commit)
via 605fd3c6590fbed834107a2e1d1df0ba58834576 (commit)
via 1e5ded6ce688ddee065fa852053dda07fcce959e (commit)
via 9f86398b29d53a5a0aaea390ce813628715b3125 (commit)
via 30066b0b00a2c09baed08e49437c2ae3c44bc4e0 (commit)
via 102e9361c88882756ad7ffceb0713a794c991e69 (commit)
via 04bafb1ed002df1f25ca5a5773d87723a4baf46b (commit)
via e09efd5931daf7eede1f4da46313a1aaadd4dbfa (commit)
via 518817b361167ac91e7cdad8528b4d90cdc3fb26 (commit)
via ed2dc618b3d2b0be01ffdf74c4c75504b707bcf1 (commit)
via e3b94546125849c6c513114cf20f78d2a7aa9db2 (commit)
via 2cc050302cd365fd28fac65d49b6c817eed74faf (commit)
via b01ba14d4d5391e59fd0e1a3608fd47287edc008 (commit)
via 4d0fdd9b357aff1fea3ef3def55d12464a41bf5b (commit)
via f979c73fd0be9a8a683f79af40c7b939c2a65d9f (commit)
via ba18742c3a1b62ff218db99bee47bb932af6dab9 (commit)
via d672364615e87e8c366b536940f269fdc3141330 (commit)
via 35eeb78fa9535df6a273c053d8f102e046261b89 (commit)
via 77a502c03a347f0eb31e53e94cab528190c5bd1f (commit)
via be1dce26256aa9f6c7742e81c8c3db9eacff079d (commit)
via e379cee61f3890e535e995828e8846b020ef2a32 (commit)
via a655456c134e5e02bab33941e1c738ca33905d23 (commit)
via de63c46b549d1cf4f7851e47872cb759a12983f4 (commit)
via f98fc17b3ac4750842ec0fe28a18b51691ddfbda (commit)
via 342f82403949c74517a6353baec73b94d18549ad (commit)
via 7150d33cda60fd543e9d9d68eb58d4e6155fb878 (commit)
via cc0e770c0d00acececc43826f4673896d09b3dff (commit)
via f79da888eb68d5add4eaa7f336923cad95367335 (commit)
via 672a41aa12fb24fe24dbf52d2e78a3a846dc0225 (commit)
via e3861a03138e24e7f2f0e8c4982bdad2a6e1dbaf (commit)
via cd385f94a7888b619c84e9ab007bac5093c5e894 (commit)
via 09aca9495c4794e586680f359e612ece173148ec (commit)
via 5219ac6237c272b938c28517bf371429260c71e7 (commit)
via 645a2c5b46e18013ac9cb16b66ba7b6b97cd01c5 (commit)
via 7365ec2ff4a7028503f39655bd2628d54418106c (commit)
via 289483b6a06c7a24ee9ae9021d2728ca4700b7a6 (commit)
via 344420da6beac1e0b2f7964e7101f8dcdb509b0d (commit)
via 66fc87a0d50d2b91322cc24d17461c07925fa867 (commit)
via c40d7e49cf0a6842a5cf072772a48d1f6e6eeb11 (commit)
via ddb2bbcf0624ef5f75c0a007c6b192c09b6fa70b (commit)
via f13974bda3d53e47b7fe5a358e963073184ba17e (commit)
via 6f156d7a4ad1c245b357dc50f63f3564d397839e (commit)
via 9f757bf7fcb8834ead780e0c4a76d6029b1402c2 (commit)
via 219d1afa89d0d53ca93a684cac341f16470f3ca0 (commit)
via 1e563868718a69231c80a1d86698cee0cf847e72 (commit)
via bd570f80f6e47c93f4b1cc1e94688cdde33ca931 (commit)
via 39f2fa1b0fdfd1b15f3d381c4fc4359c9733e657 (commit)
via 43724d16bebb38fe6794f6a3741352a7698038de (commit)
via 806ab1c045c4cbb5c906f79bcb2e0c3058f4c6fd (commit)
via 1508bbf535b03e3b9105d01a9e19f29f131b3d1a (commit)
via 9fe561ab7fc5ee3a06061dae6909cd61b49435df (commit)
via a405673cc5b56c260de4e1202cead709d1a4f24c (commit)
via 74a2f8ffb83172de1af0da6751a65c08a722986f (commit)
via e2882c85786571175a0b0bfc3bcd2f14620b1ea3 (commit)
via 1690bb24d855c387211f7bc5a77334c11cc75f4b (commit)
via 0f0c98a8a1ca2fa2e73170849b1db4876c3ea954 (commit)
via 82e1e79a420734bcb1fa255a1e7b3250e6acee65 (commit)
via 053f54e57f64ca88596999f37bf3bd329b497d20 (commit)
via 87e4655d674c00ccefaf3682b5943505e1c90b92 (commit)
via c76ff6936bd0c7f8a331e57939b1b12d84466b9b (commit)
via 47fea877452b84b94ac6ffb26f194f12845526fa (commit)
via cfa27c399ec9236a100ef794505d35f60da41a6d (commit)
via 132448f8359a268f34f074b0908b5255b568da06 (commit)
via e9d9f57e11db6427db347bc5b9b100071355e63f (commit)
via a594729cfb10457e0046359d2dde0c28b4185449 (commit)
via fc898b42e355fef58e6a029799fdd71b9dda5dc6 (commit)
via 0436426c7f7798b8eb4b48be9867495da8ef28f0 (commit)
via 502a625ab01da27e851333b598c893d6f2c20bd0 (commit)
via 4b2dfff9e78c6b615a92c727758f08f595aadba2 (commit)
via ffd727ca6e52d448137c8cddfbd361c67532e4e1 (commit)
via d9be0c189a9a9b77a6bf4501f8891544b8ce9593 (commit)
via 4ee2b642ddc70393d5b3ab04956fadad02954d4a (commit)
via 0f833180d3e7a4551ffcd00ee9b6d2483ea23a8a (commit)
via cef0f8684e818f8b6c71c44dc9cc28a6d0ac3754 (commit)
via f7efd549485db1fd84dbd2f2ee36d80c2739f224 (commit)
via c1166ca9f3543b28e8b0057ecaf2cd3251cd51c5 (commit)
via b67d92b06e6155a392a0c2d413f87d050880dbf4 (commit)
via 76bce0d1d5c4e434736ce4331bc987c7a1ee702c (commit)
via a811763d7467c8c0c819d7f0a93c4406b7c049dd (commit)
via dc6af97a85961f06b3b4e14707dad2bcac39921a (commit)
via a6c42a6e7404cc469db89a382d2eebd31d794d5b (commit)
via 6e8c24fe27098f407000812e61fa8210095a7970 (commit)
via 5c8833d2fa4bcb6a0ef4249dd095bcf29a240465 (commit)
via 845756abe87ee8a272171edf032242ce4ad13865 (commit)
via a8d2e5856f87a658d69018fe1ccd56482eebdd59 (commit)
via 27e9ff87a627614fda7ddd89ddef745de5e988bb (commit)
via 6eab0eaa1b71025cc1747396fdba127d25c209c0 (commit)
via 21a186f28061ea51e422ae47d062793ceac2180f (commit)
via 396d3980f518cfc9a936e3fb8138b0492399525a (commit)
via 175654b9cdd3113a01174b019ac286092398246b (commit)
via 0a16b291e0c181223a97b68a5252f99fa38193ca (commit)
via 00c2093f698e8f40c04340cb1832d09e11ece237 (commit)
via a3b3345ae62503982698171bcfce0afe23bd8a31 (commit)
via bef7475fbda88374ca488b0acbbfe1d3d4ab3e5f (commit)
via be62dcaa1771b5f2a47f0cfd78f89828f087efff (commit)
via 63f452a8bfd9c89b56dcc087cea84151e7a9ec24 (commit)
via f795c49463234dc347ddd9a1b07ee5b506295b96 (commit)
via c54207d32681bb205c28facba73b6173ef15eabf (commit)
via 4f588891ac7d4653e1bd861ca38c2a4e6d5e907c (commit)
via 10c17abdd052c5f8f9c2bcdf8b01dffe5d06baf0 (commit)
via 1b54b8d7e4fc8055f9220a5287e8a94d8a65a88d (commit)
via ca0d63fe0703ed36af1a7bda6097958805895b3a (commit)
via dc821c5f9ae5208ad1ec438718f75e224f856deb (commit)
via eccab96d54a9455557d3c4d5bff431f6e526d0b7 (commit)
via 0e2da9f01334a01d1a6e224ecd592d6fbbb22515 (commit)
via cb923fcc23e07fe3dfb3837f47249aba79cdee6f (commit)
via 7d47b066d0e5ea1df82aa24fde2dd4e38814627c (commit)
via 390c91cfcffe1a0d75b6100d1542cda2544993b3 (commit)
via fd7055f4a7f8eef9dc926fae698ad297279726bb (commit)
via 38af1824019684e819ffb880bdf7fb03a2c2000a (commit)
via b282f0f2b56903c7b58f1eb94b88e468851928e8 (commit)
via 46afe196ec282505dcd2727725bfb5ef87ea4b21 (commit)
via 09da3ecf04d75084ea7d9c43e3cc0b18b2443ea3 (commit)
via 7c1618381fdaa0697a211721ac31844f884797ac (commit)
via a27ed7d613ec91c3a79965d6bdab1fa96d559c85 (commit)
via fc076a47fd716ca75447d432251abc67a19ef908 (commit)
via 68f81d60196eb201b209873cf53258f13b0046b9 (commit)
via 1af17fd9cc3a453e55ce5b8f556c51859bf40363 (commit)
via 97d4fac10fb9dac465d1d7e7a26c6b9cfb0b1326 (commit)
via fbc2255575afc0d332b28fd4991235e020cda667 (commit)
via 141975a1e53798a48917271295962fb1a7e967d0 (commit)
via 93b71a266695669cb9aa8ddf2717a1ccd53c925d (commit)
via c5d0745b0d3edfea9e82a4b304ea1847790d72e4 (commit)
via 2778747c56d0837ec7defb80e756a7e6ca81b8ce (commit)
via 828d584679845b6a1d01151f7df3592d15fe8405 (commit)
via 1e5dd7c95a56fd61e6f2deb145ad99153d5336e5 (commit)
via 8e557e52b3fd45a56fb42dbbaad3d6ece3694eb4 (commit)
via 863f7a5f4811c24d9a5863ffb541ff3da1511450 (commit)
via 4baeffab22b564735be14a90f658c1aee1ceec58 (commit)
via 8af5c486ea6153bb84b9257def4e5faa4bc72421 (commit)
via 79e8fcaafa92e7b4a74e510c5487e87c60ff1945 (commit)
via e05fa6f9df82886043e1f1df30e0b9be3fee2d55 (commit)
via b3e7dd3c9d05064d845afafe52a7539948823788 (commit)
via 25982ee0222196381863a17dc135fc1d2763b385 (commit)
via b89641bab55496e52094282fabe146289c57b6d1 (commit)
via 6892d2e4df57160f7103fef0340ae3f55ac8b2b3 (commit)
via a22ecf70263eff75ca2c5878fe7e8d0311d6737f (commit)
via 60a20c190789fd75d1955576160cbbfe94c792fb (commit)
via 0b982d685e840948eed4619843a0cc5ce8991d6c (commit)
via 79e741920446582bd0e09f3e2b9f899c258efa56 (commit)
via 9664701462aec634d304923df8dc9c52c5a92caf (commit)
via 3bbd9f1877bfc5f37ebff1fef2af9eb783f49ace (commit)
via 024d185c10a48339ae06634d0738dd796a159cd8 (commit)
via 10e7c0457cb7531f8b205e29e88b3e191cfa6037 (commit)
via 9937536c23ae005422cec23d38a6b7f6fa8e1f48 (commit)
via 2c66e1634c92040a8fcb9590cd80fe881def0b20 (commit)
via 702d582e2c5ab9fbd6e9a68f26d49575bfe7e062 (commit)
via 0cd79707332aef140efa2275363c40aaaeba1c22 (commit)
via 6e51bfa75535439cc66039bcf4e8ebf16e8fe124 (commit)
via fa8b7c2128cd03135b7d31ae2ecbc2d3273e990d (commit)
via 58884b0e451043ed2fb4d2fba18134f0fb451ce5 (commit)
via 07b95864f35f19636e2a95eaf3083a8b18ac7cda (commit)
via 638d913757609367eea219d00296a0a3d45010c2 (commit)
via fe49c6f559b67fee381f0c2a6f67c10ca306ca8a (commit)
via c3d186206bf04a40244e727fa381f78a1600f196 (commit)
via a994fec4f8f7a886be61cfb3023c354cd2483b9d (commit)
via db9077b7275e86637218a7a7d165cb85a4de116f (commit)
via a933405894161c8b15f675c48d077b7f7d6aabf2 (commit)
via 4b1c0f7e85f2aec3df3498d04b5beaf45813dea8 (commit)
via dce4fb839ca81ba4aefa9f5dfde8c8041826b3bb (commit)
via c4e648430f3c5c135310f87280d45dba581aaa7b (commit)
via 4c5ae11b42433dbffc33fbde75c9e415594504d8 (commit)
via 3c0aa29aab3949363f8b23d062c2e0cb1ccf017a (commit)
via f2f9e7ecc1f02bfe5da83c38cf356ea96d428c6d (commit)
via c5f9cfc894373abd00ee56c6723ee0ba95a84f95 (commit)
via 08f49010a10b1fc98f65aada96e788c87c56ad85 (commit)
via a9c135fc7d0c005246849ff6b205fd5090248137 (commit)
via 75323ba0a7588fcd6c8505077719abd50cae71e3 (commit)
via 57a2957f2ead9ec2464a1b6fbdb250e90d27afab (commit)
via 8bcf9b03922298bb6870b7163be90163c422973a (commit)
via c5ba17787d077249ab7071192566a2c0205fc97f (commit)
via a3c5fafd2e0bc8c1ea98c579c0a044c5b324967b (commit)
via 44ed8f3ed0264016a12cfde3126f9148c07eabfa (commit)
via f00a2de2a7556c59bce93f7ced44afa8e1bbf7c3 (commit)
via 927aa2e778dce440f4de5de8fc37ead1683a804e (commit)
via e5fa6583a7b1e5e0e0f33a4964a1f271e189cf35 (commit)
via 4b514bc80885fa91e57b9d80f74ea267df343c46 (commit)
via abccd1e7b7a37385159610ca4e0bc2632a547e9a (commit)
via 437afbb81e3a04cbd933fc534a50c686eaa63b19 (commit)
via 6432ec65a8822246db5bcede0c6bd3ed0e464a0b (commit)
via a9d44aad42e127adadbad35f23931d8d83aa40c1 (commit)
via 92469284a650232768523564f2c715c4ebb57906 (commit)
via f17d9474776e50ae47aa71c52211ea6e21adf5d5 (commit)
via a0de8c21baf46c40ed8e62faef5f750b1e5453ea (commit)
via a738ea1d41daeec0cccb4ab6671f4f6d53bd9e18 (commit)
via 8e481c3ba86e512b39b16b41de24e87a17f7d968 (commit)
via 10af2a65c8891435d0d63411a3e694cc74c9447c (commit)
via 1cd9a73b4280cb133b305ee31a0e87f114bd1be8 (commit)
via 6b05c8bd437152d7a3ecfc19074ab243ee6c92f2 (commit)
via 336ef6d22a5dba921eed85eb4fa75ed22a02a633 (commit)
via 2d054e6bfdfb0f58fb9cc501c29327df34fec697 (commit)
via c8bed57010e8789212a6841db4b397b175a00f9e (commit)
via 63a22aee30c7109adec9e9f503a086210683109e (commit)
via fa6eb693cf43b427474b1d96ce093f6ea9e5da6a (commit)
via 883fd55ab1049333364479a7f5b0c7e61a310bac (commit)
via ec72db3ef415ebdcedaf36a1d83bd6624ec063e0 (commit)
via 99598d713f45d1b26015ec3562d160dc2b3792e4 (commit)
via 23a8d1862b7e5b95f0fe9d724c6be326e545e6d1 (commit)
via a8806230241d201f808d856eaae4d44088117b0c (commit)
via 30970df7d56bd65657c97296f31fe9862bf27e1d (commit)
via 824cc835aa9a4d585d955db4ab2a5dd4c17cc22c (commit)
via 9c226a8689db8bced43b94f551e118551219ce54 (commit)
via 7d6de425dad59050131ac4ffef84068e57bba7c4 (commit)
via 931c97c81a55dffed31e20e0cd109aced62221e0 (commit)
via 05a5feafdd3869b81533993a23c344d60baa56de (commit)
via 34ac47f671d870c62635cac209d8df4250f20192 (commit)
via 649a140ccf129ff79ea55ac0cc23ebddec0f02ef (commit)
via 9a93831ccc0ba3ba447552069f230e6d93dcbf3f (commit)
via 1c9c7ce078427891a94dc7604ce9e62175ebfda5 (commit)
via 7cc244debb587d0f6179d80b5ca9b0ee86e9ab72 (commit)
via 846fefbdb2280374ad91afca3d24fa0c3fa26f96 (commit)
via 9c1ce1085070f42718e341d89a28881edd96161f (commit)
via 07d6d2b8345ef3dc82eab49635acac9ee67dbb18 (commit)
via 65281396861dfcfa993eb5af4769d6837104890d (commit)
via a3cc9aad2e3de033462d64c8e028e1a3587c63e9 (commit)
via 3bf083ed23b1337341129b810ed5da29ba8207f9 (commit)
via dce2246a6c934bf35157e8970d0da5a11aefb282 (commit)
via 8fbc617a46b015098876a7515c3a7ad6d1682876 (commit)
via 0527614a9b805d1f640f477f51f9780403487ef8 (commit)
via 858c9d13240e695bc3b750368f5d4e524b12112e (commit)
via d4a0e8b57d6f85e4ee4a31e0e6929ff5b4fd9823 (commit)
via f0cddbef410cb626ea87b3a954bd4e3d7526115e (commit)
via d05200d155f065b93e2dc353a7d33408c7574e9c (commit)
via 082b9140d953b9e6a78271384ec48ff5d0ba8fad (commit)
via 53c934e9fed9a35542661690e4e71febcbebb539 (commit)
via a8142ee195063e8c7202429e80ee58185c34b3fc (commit)
via c9c895b9666e33a2b910faf9c1b667ea665f00f1 (commit)
via f65ff9f9a4add415e5ae332a094b2134c1625517 (commit)
via 3eea796c5daeb7b60531fc3d707470fa91a86e11 (commit)
via 40e2a9835f6cf47b630babef3fd788e413ef2dc5 (commit)
via 129c10bcb9b3bc2ed9682040aa9a0d144bb5e959 (commit)
via ed9376bd95c52ba00aa37b224b4407030a00d184 (commit)
via 798a7429f980a00844c22dfdda9475c451c635d4 (commit)
via da02107a39f3eff5e0b6d6321da4e88f9564350a (commit)
via 4d7efb8ce25f6d2c74c8073fbca880211cedda34 (commit)
via 3e1a70a0189ae8d2dacfef93790e42e42e721762 (commit)
via c179febe79bf2fe2f64852c827813fc46da819f5 (commit)
via cd93789b89f55355d3eeda6c31ed7bd0ed318acd (commit)
via 1e52e8495a074c9d1f7ef17f13b9060b76be6f41 (commit)
via afa840dcc021eaeb975dcde3bedbf46ea0511717 (commit)
via 7403715e305f7733d8dfa4a8e1739f12f5180cb2 (commit)
via 50a1fdd59c1777672a9be0e81fe2301c2a115fce (commit)
via 826c3f1edc2f9da4594aed86b57a7b447a46016d (commit)
via e21126b7b381a9083e6670ca9adaad6060e376d1 (commit)
via c88f7cba81551fe60246af61ac41effa2d51d36a (commit)
via 48f7f3036a792c655c98b0742574841743e38f58 (commit)
via 97d4213f68ce37efe4c957f761e500a13b19f16f (commit)
via fed44c60b3a3ded5e60982af7412d20603054910 (commit)
via 1e97a22796cced8bba3359df46e8c2883653516f (commit)
via 10f64178412d9c6e4f2faade0da271ab8be273c9 (commit)
via f0fb2488c93c00fa1436a4813a375faa00a94de5 (commit)
via f143cb5fc655e1ed0a6e15e6ba33af0d79ba1802 (commit)
via c0e15c9bfd6fb4bf36e5240838f6ebed1e1f4a7e (commit)
via f004534791145669d7765f8122e48f21e1deeb94 (commit)
via 9521758bf967360fc1e18b2a2195d97ae19cb80d (commit)
via 8f86d7aa8504e9a557e807a3e37718055befcd84 (commit)
via e2b4407579df508f85de961dd693c9028e79d823 (commit)
via c80825ff32ba805982ef5e66e4fa1a80e019d47d (commit)
via df3e4dbe661e522cc63d3dab15c3974713fba4dd (commit)
via 5a6b0a41dfc9b860f285ddb3a1e518299f614cd3 (commit)
via 39a64da5fc9ce6decd7e5ba0bacfeb2144d2bd63 (commit)
via a1385b7b881d2b129f8c26fac8ad20bc406a1a6d (commit)
via 454296a2c1f3afe163e49730b9b396ffdd985e1f (commit)
via 6b2a85daf5a5c20c6d4832de1f19109d9e1cf17a (commit)
via 798a38e8de5f0fb5f7b17ae757b2bf4c5139c023 (commit)
via e4eb0dec0b9219a27ea6b9769f098fff34612779 (commit)
via 83e1b6c13a285b4e1e852e1647667f09bb26892b (commit)
via 8dc7b443a6295da4b3d7ba22f3a7695990bf4f39 (commit)
via da25033cd92a60f4462e1468abfabfee02d0b8d9 (commit)
via c91bb56b06b52d45de7c8871a6d44ddae61ae977 (commit)
via 634a3254c8fe1728c0202289afe594928094d860 (commit)
via 6d83e819df0c71868d04db46c60ff0ecf8cf1914 (commit)
via 035d856f2c3a30750e1260c595eca1e92e94421f (commit)
via 222b39c283e3fd7823ad95ccc58ae94e76b63237 (commit)
via 158600eb989bcbc364c6d18259f1cb32ea9dc478 (commit)
via 0af4ccfc5bc7ded4d87f813e3754486eb5a75349 (commit)
via 059256c7465164fc070482dbe04ebe4e2ccf1a08 (commit)
via 97cbe998d0dd5c13a0317fbb24d745da367d8caa (commit)
via 754fa8997d48bc9da80e8c2e0baaf36a313ba74a (commit)
via b57e49f726f854e65b2ce5e87dc7ee664daac1fb (commit)
via 40fc416f4e22913ba2a2bafcc8da05f59c677b7d (commit)
via 7f0f8ac8b15f5f5327116614b4137e5dd533ada2 (commit)
via 7ef67ba53397c52a87375403aa614c52b94ccc73 (commit)
via ec6a20c268c3be4c34b951bc7d02543dca956108 (commit)
via bd2e3511f74940beec6a39914480ed6ff88c0a71 (commit)
via 71739b698d47945463f183619078ff680c277f0f (commit)
via e2e321740ce2e36a97be2a410cd56eebaa2304aa (commit)
via 0f873fd58b51a2906f31bb445ab685da04a1be23 (commit)
via d0df06af9b70c5a6a2aa496437364f219e669067 (commit)
via 2ee0c9b3eedca5d1071870334d2721be80a77ea1 (commit)
via 92f402a7e03f5d747bc9a09c8da2f61cc539ac33 (commit)
via 1cc75e929ff4e99b3bef4ca0e93250d5b1b126c9 (commit)
via 7b2d20948528f94b405af3e951931758e92e8e4d (commit)
via 0fbdde942914bd9834860b65f2943577be1e46e5 (commit)
via 40363a913b8c1292af97b4f50a0b2c5e6fdd04cb (commit)
via 63c1f59d665542359de4737e3e48033c588f44dc (commit)
via 254cefe35f012977d567af0bbad2a8091d90e22b (commit)
via 875fb7a785e78fddef6da270636e8f4efbfd3e0d (commit)
via fd6798fa2d6f0374d45449c4212869da93623b1e (commit)
via e0feb133429709603eeeb382c1ebb6edd0a886aa (commit)
via 036aae79303c43c56b604bc215ce4a70fc2a6474 (commit)
via 4a7e52349807017f9bc09ea25f07924f2ec971b3 (commit)
via 6f14765f9f448bbe03750634eb42c4a9db6521b8 (commit)
via f1af7b94c16029f2c6da9eae4076f64cd9383687 (commit)
via e3919f3e898aa5ab9a98dcaf9e242a9ebacc0757 (commit)
via 44122162aefcbabb2fbe5b531412d157da5e59fc (commit)
via 7ac20022477c163983de77e5b16c016d518ca7bc (commit)
via b5014f7af26ff0fbc1128b5fabdaf3bd5918dd94 (commit)
via fd4e0347596acf79642625f4faad9e37c8fa0f0e (commit)
via e21440ba622e17a2f12a858a87a6a75ef90654ca (commit)
via f425ec6600b69e39eb605f3128806ff688137ea8 (commit)
via e8020e54f4b9ac05150c4b02fa81e228d6cf1f6a (commit)
via 668247656d5dec815a57761e98720dda09f72481 (commit)
via 7505954411a168f5c5b9adec23eac55b1532fbe6 (commit)
via 8029e59279e861071234decddf6a493119e0cb98 (commit)
via f5a91472120952bbc40f277561626b8ccdf7b194 (commit)
via bd69330db86b2367aac8aac5915f1686451c9d5d (commit)
via a20714ff39f621961151d0c204e89062ab2107eb (commit)
via a207cff2da9f154e4f581b19dcde215593bfccf9 (commit)
via 4024cf2b8d864279ff87af1a2ade77ab6d710d50 (commit)
via 5dcf52c19f7045fb179f703426d345b8a81d2210 (commit)
via 6cf829987c6bc9ae61c7c9e8b4c71c4eea8ba2f9 (commit)
via 36877bfb88f99dd0e4336f98233f7caaa1d594a7 (commit)
via f923328821e2e835c725822bce2aac6e10c52dd9 (commit)
via f10e937a1cdcffcca748c226ed78d09369fc4cd0 (commit)
via 4581a1c7d304ce14e714b27522ebf3d0188d6543 (commit)
via f6f1d339d4169a60362f1438221bd03f8f021f04 (commit)
via 8ca2f0b9ac024db56ca40f2b37c0b6b2bfcd139b (commit)
via 02ca603a481d55e175765ab5bff30a04b86e905a (commit)
via ed6c0bfb2643861636581ac8775144efa1728c7c (commit)
via d785b7d4b877ed465d04072e17ca19d0f47d840f (commit)
via 08f650e6b657e59959d7db8af100720721bd10a2 (commit)
via f106e10e5e80265e1c43532bba4cb997a7dfa022 (commit)
via ca39c2f4dd0fedcaaee348be7a913f0c14876796 (commit)
via ed9c7ee03780b8d5acf091091ded29cd40df8254 (commit)
via 5dc824ed42cd173c1525f5abc76f4091f11a4dbc (commit)
via 8de0e07bf381f677bb93a8da72185a54e5b014bd (commit)
via 144653ec15141907a3276b6181c4d1114f71be13 (commit)
via b0029dce6867de1a2828293177b0e030d2f0f03c (commit)
via ff174d3ffad13af17a61583db3e1cd9c0c6cf237 (commit)
via 82ed9683ec099d8205dc499ac84febc975235af6 (commit)
via b23dc97fe237a1d9e850d7cbeee066183a00630b (commit)
via 6c6bc899302deb7c9b14f71da79c0fffc992204e (commit)
via 165f707ac88916aedecc96fa518be8879704d6da (commit)
via cd5b2babea487b0a71a14b593af98330efd8d73e (commit)
via a83ef4d139c377e0e87d105977d85c6ef9fbb162 (commit)
via f0531ed6a429b0e6e6509e6852ccd3586f3fa1bd (commit)
via 033bfb739b525703bfe23f151d09e9beee3a2afe (commit)
via 57c1b6811a2d97a3de229351ed19201853245a5d (commit)
via 18ca73470a0d7eb96a807c97559cbb9fddb4b461 (commit)
via 66599a7dc0369583229c0c51e5e009cfa7cceb73 (commit)
via 4f04fba813785f3d749376d9b434c0f94f835dbc (commit)
via b5adff3b5e14a45501f5761877d587019c94368a (commit)
via afa0a4115985939f242bcd54211c98345eefe16b (commit)
via 8fd8d003de32661ed703ae9fd7e1a856f1b58f81 (commit)
via bd810fff78006d38e3c287b7bd241319f4d763be (commit)
via 75787ac19cdf7e8aa9b4c28f9421837ba479cf51 (commit)
via 5c8a943144f6972dc0854f2d01d7cb365b06fceb (commit)
via a26aa30cc535c9bde457cdd00daf0c82f25da0af (commit)
via 6f3cdf9a3bfa2c0a22fa9dc40b45578e2ea7957d (commit)
via f06afa533665d88c651617de528b9640eb4e8611 (commit)
via b22c88c2ca013cc25d7a8fcbc748122bb1a349bb (commit)
via 407e1140841f7fc337e90a7ba4482fb5a10c1701 (commit)
via 148d6384291720bcaaa062badf1179b6215f6da3 (commit)
via 76a493ab99d9276180db6e791f95d1d6d86d2954 (commit)
via fe6c2f1b6409867a03dd32214679dd825f74ec48 (commit)
via 46888d710015aa8d4bb3c2dac7aa6505d6ac8227 (commit)
via 1c2649f50f4e40c07840f45c4d237efcdd02e8e2 (commit)
via fec68fb168d580c188358347f3834072a8960ddc (commit)
via 120bc8b8b91cba4a8d4092ea0fb3d76bcbe98712 (commit)
via 10329bb27fa5531bf97da184c4d0ed9c4ed85605 (commit)
via 6dda7875a8021787f11bd95a69d81a079e408a57 (commit)
via a377ae2ad683d3c16ae74dba440ee441120a7d8a (commit)
via 64973b0ac4c34e80821a56561ae1af15f7d6e809 (commit)
via 4dff97b2ce94bbb9c0c16e0e4129060b9a894f13 (commit)
via e3d40582166056dd1dfeef2a06ba8f5897b673ee (commit)
via ee9a09e959a5b7c152cc72028d4f6c879bc901c9 (commit)
via e8e7d10c39955e7ff99ff42f6f16d6befe2fa12e (commit)
via 7db85adb3b988560d9d4706d826e193e83ae7cd9 (commit)
via 6a997029fb0fca1a9e2832db80a3afb9bccaaf59 (commit)
via 2b63c337d99fe12220e6ca12a71dac6cdd3224d3 (commit)
via 41272101db08e20f044dbf0f09b6d79a0fa6c1ac (commit)
via 44287fd89091a833451e74c79e46404c23fdaf9b (commit)
via 8e2495f2f75120baae14f9dac9d29b043c539b2b (commit)
via 58f7f0bf542ff9b712ef1ed6a6e1a6da563b9054 (commit)
via 617cd4bc366e47f92ecee3c3f9850a0fd2e6c6a9 (commit)
via 5ffd2cb722440053267d0db52df8bbd278fd6d91 (commit)
via e5a8dd426de76af279cb6eff0c761ec866e97dc8 (commit)
via 0e5457dca14e2e0474432566dc7a603db6c990f7 (commit)
via 685de8c2990a04fba5e2954b7ff089a2c641071f (commit)
via deeeba559bd0c18e06dba19f44571ee8a218fcdb (commit)
via a81aaca0578ee91ce1cee56c0a31e26c2a5ef581 (commit)
via 6a3c6ee41898743234d8fd9f9cab15f2ecdaba49 (commit)
via 13450e7c7fdbdb9b25aae68c60475d061ed427d3 (commit)
via 8955eb2da31d78690c762748fab3a16832ef1f81 (commit)
via 0662b6a7c1b3b04a4ca31a09af703c91c7aa9646 (commit)
via 276da9b31bd6e3eb8d1dd814c867266f59f29093 (commit)
via e547c119d043f2ecffb70452020ab9150d083a91 (commit)
via 5f1ca24acd8fd4e21c4f6f3ed2bbc4e2365215fe (commit)
via f5291a6f321ba6d657aab447ebb6a168ae48d40b (commit)
via d7fcdff980f113ccf77f8dd2f8fb3de3d6addaa3 (commit)
via 4e25ac038efbe5293885cc75d8a3e08b23da7cc9 (commit)
via 0fbc35681ff0825be97802efcccf953bc4573a45 (commit)
via 8b77421a20c22c9a66048e7d1484b149da060b67 (commit)
via 30649c145114fe3aac089bf06e9457238d46341b (commit)
via 7696f5c95761be03db7ac62683aa027ecea30fa7 (commit)
via 8172f16b5b8bf3007d0aafcb38964a408f0e844f (commit)
via 7aabaf9d4ad52a1df1f551908fbd8cafc5e7597a (commit)
via 21fe1c752e254167d953fa8c846280f63a3a5290 (commit)
via 089354bb0613ca1559813f0a79fbe73655113785 (commit)
via d044bac8ce5e6737d13e7e5180f5a5641053e690 (commit)
via e8d58cbaacb9ca54ad32eee1a38301202e09f878 (commit)
via 650444eb540f9fd85e821567a3f943b4bc41b8be (commit)
via a63f2d2feedcfce401ae1d7d03d119bfa5e4d8bc (commit)
via 1b30aaa56607a563fa263b9d2ee9eba89d79c1b4 (commit)
via 6654d750c7c584dd83b93f062c5628f15c675480 (commit)
via 49bdb7ee48a10581e9f7254782f2eb953c4a164b (commit)
via d6d7ce56231ca8c233e64b2ebcb910fe334d6ff8 (commit)
via da434ccbc3e0ed843700790cd16c1d4bb5882460 (commit)
via 98ead37e9735438986934f9f1f35f020a093fe07 (commit)
via 62ad7ce71b243df3e8d7d4f8b8560a7316233a9e (commit)
via 506fe5f4996738f25b7c26f126a84b231429ba95 (commit)
via 6d2cd6b2084d980a4baf5b4bdce8499c2295a672 (commit)
via ac465521a50102d589a6a05a1e722dfa349d3181 (commit)
via 00ea2e2ad34edd202f58d9a1eea2081f0905f9f2 (commit)
via 7e8006d14c544a069619dc2bb2c9d2d2b7fd99a6 (commit)
via c139731b13f83da3c9436f92d52b915e94ff7480 (commit)
via 5f71e59e1a284eec67ba2a91851d0ec8319b0b95 (commit)
via f45e2a7704c738ba8195a667f910297c4155924e (commit)
via bd046f64a193405f2fef2d5120fab4be25feaa8b (commit)
via 4c37490d92c0168e5192ce109a791c4b3fec9f8e (commit)
via eb02c04dc3600e18bb06dc1ef8fc3cf9a967d550 (commit)
via 7c3c1aa885b720e25b25af6ac05f34f9ff0e3dfa (commit)
via be7d1531e1ce34efbdb9367f1483f9cdad477059 (commit)
via 287c7eaf0d90cc1bbb5a5463c665b163c6ee04e7 (commit)
via ab2477e15cbe067ff119f1bb5dea05de3cadbdd5 (commit)
via 60d67dc84bbc7d73672d297d714f8a4a0547618d (commit)
via 9d9c67b06c1bf4c4550e3de0eb575c2bfbe96df9 (commit)
via 65f3ed048fa0741e874c7aa372f9ddba153a2949 (commit)
via 43083a502b8d658b8d096111e54afcc73b0215a4 (commit)
via 9bb129e82f0506fe78d61670ea2b4140388955dd (commit)
via 66f1eba0b7e83f293573ab42bbbe5d7d5c905d91 (commit)
via 38bf51134d1a58f155c89f2b1c7bf885c2604ead (commit)
via 9c23b42ffa67b866cd7562c1d8caed70db5d6840 (commit)
via 0e9ae10f5f97824067365af4813b843973297573 (commit)
via 935676c92feb5f35e4634ef58c20ffdfd0979b07 (commit)
via 88108bf28c4a726af84dfec2f85b8404cc2ac0bd (commit)
via 8f6cb6c33815f38b41e1e93e59f12869db07c070 (commit)
via 479f8de1b3b7e69ca8d557bbe9d843c7d1bc89c5 (commit)
via 41bd68f52c05f5654bed49f312f6562c8d048897 (commit)
via 7e2fd2f47b37185505f68e45c5cf016c7a16e1ce (commit)
via 0604393c22f626f26b5a4a30e57da40404f5aa5e (commit)
via ddf0ea085b626ddcbb14f88f495bcb677b7ab6e9 (commit)
via 9e5b9d2b295d1771647a9e4bc942e398142ccf9b (commit)
via 2469b3c58447e98e073ffe7ab6c9627dbbd1aa81 (commit)
via 2ca23e65f562bd0efa7c483a99b49cc3d5118a58 (commit)
via fc35dab1a62541858cab1c82aebc6cd166e39f5b (commit)
via 1daad298d699383bb4f35aa919a1acfa0ab8e16c (commit)
via 88465e872cb6649c42863e5c47011bae9e17bbdb (commit)
via 94b98370de3ee157e039f26865390b5994c47c3b (commit)
via dc196b230b7366683799755b4461acef5cc95be7 (commit)
via 6f19e86dac3a191945b5eb08ae767deced660a00 (commit)
via c7478d028e8829402b05478f571eb5e1916c63d3 (commit)
via 5aa75429d0531ac6cfe59efd80f1ab01311865b3 (commit)
via 2400729ecfd2c7be8b18aeaa822fef5a4b503f8a (commit)
via 7a26362d360ee34de1e8e927bd7159860fe8354b (commit)
via a9f26f609e3a1b6ae3aab300b55442e0a81e2bce (commit)
via 29f9a5673764c1b2711c0ceeba380a6ee764d1b2 (commit)
via dc958481429708ecf91f9b2c445063d43397f07e (commit)
via 0ad71725d917c51b46ffacbad25744dd889e87da (commit)
via c757658ed60fb1027a4335358bd55eaf6c23190f (commit)
via 3b1b69bffe522f22d269723856d2caa901041819 (commit)
via 54aa6c67f5a0d52dabd428cc40ce02781032acd3 (commit)
via cf3fbed4a00e668ffcad1b878eccec87334fdcff (commit)
via 9edcc12f9b714149f84bcf20dbdad91f030e62de (commit)
via 65d40437e2704e635e7144319e956edf3e7fa026 (commit)
via e02544b292a3d537b43ae9cff890ea040b944d01 (commit)
via d6251545e230b243abe60e334bb3f78c5e564fa1 (commit)
via ed0f427344d0befead629d9267aecd01bfb72721 (commit)
via a25d69c6dcbabf3f6629b847246ffb4ddbc29472 (commit)
via 2824e1bd4fc93f112875969b1ba606980aaa55ba (commit)
via bd560f571fe7a83755a17e7b5951e70f5e4c5039 (commit)
via 50d2740d562edc68b2fbcacc0585c3acfc2c302f (commit)
via d85bf2ba86fea1cf918f065d179b98eb4ddbde86 (commit)
via 0fc7642151cc5e62f05ac8ea91fe4d5b44bee11a (commit)
via 0ee5a0e48314fec3522f7eabadd5fea920628077 (commit)
via bf3d139947aa7f846b463db4a7c4b6059a183e11 (commit)
via e6b2f5efa97c7f3de8a3947c6782c40ec6172686 (commit)
via 5c58de74c9acb346513c974fcdede270be2a77c3 (commit)
via e1ef7d7a5166f846b14bea5a77acb0dec76661a8 (commit)
via 9752982420bffb6cace1a25830a92db7fcd1dbd0 (commit)
via 73fcf6418ddce47ead4ffde4fc9fea8e8bd1f4af (commit)
via b77db948f4175e479bb3310ba86346c9554ab9f5 (commit)
via b7486a74a62527412cfd2dd50a9a100118265c28 (commit)
via 28e07a0510ca896311014cddf125aedfd7a8cd52 (commit)
via 578290ecafb83e93f0ac695df586b65dac5e8c5d (commit)
via eca55aec1d919b69e0d61c91367f8b4d25bc7c43 (commit)
via 25c28b4d153ced950cc8702aafb054d6f14f6a02 (commit)
via 5fdda39248cc4a3311efbff3cf2350123d638232 (commit)
via fcb056a58dd38cfe7bcd34b7889138bf807c40b8 (commit)
via 139720c5b32963ce52c5f691e179920ff84a2237 (commit)
via 6d1e5673fec830f0f1c86632a5d9333e34582bb3 (commit)
via bbf550d50e4c85666877456f014421089503e83b (commit)
via 00192f771796a144fe27f5f1d98d8e6f66976221 (commit)
via 2bee2b6ca4cb1a736f963a168dd2ded2831c540d (commit)
via 0b360f1926cb15edc39c661dac2f1a433fb288c0 (commit)
via 9c512d88c36689cffc3caf5875bc4a08b0ea05f4 (commit)
via 20dd9c210ef05fc6e87afe07670d8ceba530a1c5 (commit)
via bde954a064b0a983d1db37cec4777d576d7a9d56 (commit)
via 671275c35e71d3bcdde173d8817e34e89b984241 (commit)
via e4ec19878f7a6d99d87ec12cbd7b313062f64fbe (commit)
via 160b1a618ad94988410dc81fce9189fcda5b7ff4 (commit)
via c977a5f0280f29136631cf043d6ce6cfdbc47b99 (commit)
via 033366417daedf6bf044608df1c7a8dfe01a0de2 (commit)
via cf724bc93ee954a6f7aac0557afc41c1316dc80c (commit)
via 68e745e38edebd2a12d60ef7b5774066db3f1c40 (commit)
via 71a3c36949407eafea744bf00334c4e0c136f927 (commit)
via 7468702dcb37013edbbbc62e247e23c4b2632379 (commit)
via f27866ba9c348a72a899f5a84dadf1f943c89720 (commit)
via 37269bc92ca6a79f9e56fe83718f3c86a1db845d (commit)
via 5c632425957f0150a0d5d1e747f0425f74622132 (commit)
via ced9779b4c45b9bc9c16dd98fa30d7a620e93a55 (commit)
via 3cfd3dd0956fe854a07795de12c1302ecabbd819 (commit)
via 2c244f9b0935e577d7c20bb5706e27438e48227f (commit)
via 6a6196fc71467e39e9009d6306ef13de008c6fe3 (commit)
via b7e228508255359e473611fdf7c067b0b79cadbe (commit)
via fdfffb6ea04ab0e857e8bdc17841a7372b187bd0 (commit)
via a0922d80dff15d4fbd5d469f56bcd1696846b90a (commit)
via 9ccabccd15603dbf9fe988c86708fe644d1398a7 (commit)
via d930703d68ae160ddfe8ebe5fdcf416fb6090e1e (commit)
via 38dc2859c464733314c591d30a5359db20167f7f (commit)
via 688fca4fe6c83a6802731faa8455d177998d614d (commit)
via e2c33ac745108550dcc2dc61d23378fb2fa9e911 (commit)
via ea04e54ca8b935b01155c3d40381d879dd6ba683 (commit)
via d723696126beb185dc1f8f3196be7cb29948148d (commit)
via d0f7791c6659081f3a62e220289417c010997baa (commit)
via fadfa6b0020b934500356e7aea8934a4565657d3 (commit)
via 68ffd9368a020fb685520da51f8c672c720869e4 (commit)
via e9dbdd80cb02ac66cf7d4cd1207ec11928db2c95 (commit)
via e849ea896bcdc3da8caff02eb6dc91dc85dd8a7e (commit)
via 80a0437873045cc08753fcac4af154e2931a99fd (commit)
via d8ae99a7b08e29e31446aee1e47e59943d7d9926 (commit)
via 38b28f7088057d70497de7312cd983ec8e408a76 (commit)
via 5f847646eeb0107cb8c5e44c8bca3a4c88c91673 (commit)
via 968a13f8362072b5f7eae8584d490b53d7f97ca5 (commit)
via c2b9da16088f8c500ab93e9a4e3001ab7393cb38 (commit)
via 8c8cad3aa839747e368cc5db58331756a2b70e8e (commit)
via c632b6456b1f220475fbf61f19ada28230449ff6 (commit)
via 1d0aa65c24f7c6406718cb506bed912aeec1d5c9 (commit)
via 3491a34c4f7de10dbd19c719052642d8471c45a6 (commit)
via be7f7611881bae0fb9e26c892ecd61387d32542d (commit)
via a014b87a9ac665d2b92cfc66384d1af3ddd345dd (commit)
via 9476501135dbbe1eb2e104ff219c7988920d23fc (commit)
via 625ad4406d301f670b823a7767528f3ba7e292c6 (commit)
via 71774bc994e3f2a09c3b1988dbf2e99b86f53e2e (commit)
via 01f48020363f1ca9b31df2ee0b2afedc38db1259 (commit)
via c0c11fa91dbbf91b9c9d04384fe9f3ef5a6e7145 (commit)
via 34a7ebaff9e522913afba4e9cac9d8d5064e5480 (commit)
via 5334ef3907e2fbb98aef6839df23e41dccfaf701 (commit)
via be74fad95edc8827516e144cf38d135b503249cd (commit)
via a5065160868895e91cac8515263d9783f8120818 (commit)
via dda8d76d0dd2b07df769f6cae20aff483468b342 (commit)
via a602f924c8e281d40868844b0f0747fadff3f29a (commit)
via a714b0d6928ba195623ec2825b00c446939f6e59 (commit)
via 390a67891e4f1ed334e266cf084ba8948da5fcdf (commit)
via 3a2430e05b1503653ae09cb21feb2a0d4ea51ec7 (commit)
via 0645f0a2a75ad77d9786595978591d3f302f9647 (commit)
via 99847db8ea741f895d79b9312114c13ccb660d83 (commit)
via 583712f5ab935948b6c28f1b8b686308f0652ddf (commit)
via 4fbd5513b100b94b6b9fdb51975f79c38b6b1040 (commit)
via 754842fba3981b8d9d4d516d6cfc65d3992fa4b2 (commit)
via 47f19c17d6eaa45dc756a057c299a5194ad0b75c (commit)
via 92ffd475192030a46a6046177c732372b4dadad5 (commit)
via 074319087452e3a8b1a0e84279a82555dd798d69 (commit)
via 06bcf5416feae129e239476ab1408e038bba171d (commit)
via 640d0ed874167d73b11dfbf5e838c65cc43e6a63 (commit)
via be92cb147d77d0ebc6a084a18627d800a9da9f95 (commit)
via 2645e1d0798da9487def06d14bb744c33dba702d (commit)
via df145ef65632dbc6bb31f8d01a088f8600b6c7f1 (commit)
via 2d0d44d514d9a2e2b0f7ae8129d52b02160c9897 (commit)
via ddbb44cf366b652dc9edf2ccd4605f1ed0e2e62d (commit)
via 8f8a20af3ff322f868ce8adfeb86c6f698265a2a (commit)
via 58e6cc77b7605e26cbf3fccc166089c01ceee95f (commit)
via 5616b6c32f7454987ae167ba35589e095c0172fc (commit)
via 5b2b928e83538b23eb1b3f585b14c3d6cf1bfd7e (commit)
via 6465780617638ce65bd7458e30b34ebdc1a99f52 (commit)
via 5be87c8fa74c9ae6684bea571b4157ad1966d008 (commit)
via b76bc5d54e36f15efd954898d9aa075c2bea02dd (commit)
via 897e603cb98c50968ea21d1b3baac5bc020ccc06 (commit)
via 1187cf29b1f77b4d806c3bbe1fcd86fc7387eeb9 (commit)
via 2abc2bec4d8c241c1cd3972b64162407128b4daf (commit)
via ed1794ee7a2bd8adc22e5bb8e7343b72758d5692 (commit)
via f4d18a54667ded2b50894a3d0740f93825f2a3e8 (commit)
via cba6246d3ad332ab353afeff0016b195ffc69e05 (commit)
via d7475e036f69ff7ac78252db74a65fe4d617c4ee (commit)
via 0f99513f2a52b7d73b94a1f77b8c6de9159b50d7 (commit)
via f882209d9aa5b68d68c45c5849e129ffc228749c (commit)
via 53892e6d2395b818554b825cabf6129fed7e2aae (commit)
via ce3ad333570333287842ed20f55220534ad4a025 (commit)
via e3e53eed9c2f1ab82ae4a7683f474b4f6eb162c7 (commit)
via 529fe20eeb0030ea5d653d0ebec433f9e3145874 (commit)
via d95639024585ce43e8fe0557ac85e706452e1515 (commit)
via f617a0f6ceeb34dfd39d8673b0ab225c9127aab6 (commit)
via 9080294593eee9e09625e62b2201da57ee150e11 (commit)
via 09a5b18a6ae9fc5ad30f88d646b7f7313a14929e (commit)
via 584a564f366de16d1cecd1910ab0be8ca6167415 (commit)
via 5ed7a928acc231ccd13af71cf6df9900250cf884 (commit)
via a60e07381c812ab82aff9abae203fd192f460ef4 (commit)
via 2c88253fc469fbf40be7f0d1f7060b81055f2eb1 (commit)
via c7a3851716f98540396b9e02be7d2fcd3bff2d29 (commit)
via f29f4b6ba198674096fddf2aa38fa8d028d387b2 (commit)
via fb24d531e9ef7ad7831ca62298d21684717cbe38 (commit)
via 31432a672fd40058a714eb2791ea1c3168ccc4f1 (commit)
via 52c6b71b65139cad73ada8df81293fd645eac173 (commit)
via 981b557a488f7c3179dee1e34515ca9b10cf885c (commit)
via 793a194839bc8add71fdc7429c58b10f0667a6f6 (commit)
via 1a7ed57c840dcb0401f1a67c6763a89f7d2686d2 (commit)
via f42f1a1d6ca0cc84e43d7f2b85044a2565ca00f2 (commit)
via e793c052f9d9548442a46817998a46cbca4ccb70 (commit)
via 7e8835c5f44931d02ecd8c8ba3d167e891981d24 (commit)
via b6b9ca0c3ec9589d0dd40b2b86ba748a361b48eb (commit)
via 21b81e67c73368dbbc9f6356ac5a7eb274789a32 (commit)
via 286acbb5c25c5895832d3dd3be3398d3f2d64fad (commit)
via b44ec61915f10a953ca85da5bf7a97911554f1aa (commit)
via dc8d2d90da3f191ae0461900ab98e3b29cc2b280 (commit)
via cb1a122cce8a7eefe1025d8d189c52f96da6138f (commit)
via 62d7ae92341b53ef10b709464edca759d6738500 (commit)
via 333d0055f6f162c334c36f1946b6fcdb5c92b681 (commit)
via 08228b11557016f6f12d537ebff5f169fdf9bc6c (commit)
via 280ca31f4d608082e1b61cd0b6d90fdc3450b9f3 (commit)
via c9ec0e8945d057979a361e3545d42b3f15adf04a (commit)
via 9031cb4af0adcf1c73cb9b8c73ca2d989023af2f (commit)
via 2f4732b0e622d9d5d899c29e2132e4cd2966aaad (commit)
via f9d67a22392f8f52c779f68a2561eb35c2f86b81 (commit)
via 56d87ef769e6adab27af77fa86ea294ee7c6ee72 (commit)
via 1b0261195e3f11932c0f5657a74028f5814168eb (commit)
via c62446b12b32ce57d2b40cdb0c1baa7fc1677d82 (commit)
via 61920122ba93d58cc2e8c78a30475c569c2506fd (commit)
via 3f563c840a2c891ec2868b3e08bfaecb6f7aa57f (commit)
via b5ec771e60c1a0863e51eb491c85c674097e9e13 (commit)
via 5ffa0793690b42b2a0c1c21dbb5e64634e58fa00 (commit)
via 2a1dde5da23779fd0d269c3e51c7814aba9001dd (commit)
via 2841837fac18861bb62e039a20321075d1e76248 (commit)
via c0e7cef7156b2bc15ba43441ad14c6e83c09df8e (commit)
via dec41383fff7116c9f66cdeca3105e968047a4e6 (commit)
via 6e98b3428bdd0bf388c3c72eb205105926b15a64 (commit)
via b346cb961f729e2955391513a5b05eaf02b308ea (commit)
via 95a6b0a106fac6ea35670421534d461a3663c0ba (commit)
via eb4c3f4aaae2ee1b27c210e951260a7e699133b4 (commit)
via 5fed81ff351121887a93b5b57caebb86667cbbd2 (commit)
via 1d12d88f186fe1ae66deccf877b5509c506c4d39 (commit)
via 0b39b52e6e92cf6d465d48499c657fcb17a63c7f (commit)
via 85c4be7c83b80acf647e6ffcaed0f0cdbcb8c3eb (commit)
via 022643b4456ee13752b0f3a8411238ab8c53bf6d (commit)
via 5614fb77203f5ea01edfb2d739e9d4f3d570dc09 (commit)
via 6be9a197d96c3c346271b46ec6270bd719eb9932 (commit)
via c2252c0dd8dcf3bb95598149aecd3158e89c31d7 (commit)
via 1ee870c5249864d36717a08864c60d7166b6b292 (commit)
via ee7ddd713206fdf02512a9fb3fe928a210200c11 (commit)
via 52eab766df54915f8d3d71475235868285c4ca82 (commit)
via 016f5a3777ab6ce33616917be7795a7501f29dd7 (commit)
via 180093c76385b4037128109f452ce4a2414af124 (commit)
via f77bb6c56b4091ed863d8cd03333a79a8d554ce1 (commit)
via 1270b047fdc68d89f05668ed919d17f5fceeba2a (commit)
via a02b41a7e604471e584dc2151fbd36714842710e (commit)
via 95e95a6de2e4a050870c49bf52fbac0239847b63 (commit)
via cee62dbd8771e22856d950c2615fb463305a9fcb (commit)
via cc638e867c240546b4dbc791761099d3ca5fe4a9 (commit)
via d0fe47010fc3289e081ba547a0bfcc6d07906cd2 (commit)
via 0198d5e6fc331d50dc19b7f250ac4bc510a8dbb5 (commit)
via db84fff3f888bb3e6d51ad24b6bfa2c6e2c3a206 (commit)
via e54e9ac577591f53bd9552210b1062c6230030be (commit)
via d3a49aa80b8a6eab1c684deddad3542c4cdaa497 (commit)
via 992a06eea4acfb674659a0ce19b5fb9c985e9bc1 (commit)
via f3ce9b3a00229e5c6087180a74bf533d0e5201f3 (commit)
via 6003e27e764ff62c1269a3ac6b5806b3fa3a1740 (commit)
via 84d5321fdfdc5c086734f441fb31fa9ace2e86aa (commit)
via 635dc5b2e5cda5b18d32c4b0f6c19cba3ef05c67 (commit)
via 556e5da51349d00307bc05b7a6a813f71ac58664 (commit)
via 46f67f80ddfeea11d4a8134b347c74581faff8f6 (commit)
via d1928160a324c1b6cd14afeecd4c81ab927883fa (commit)
via 6aa899ce25d73c397748e4df926da3fd7e5870e5 (commit)
via a94799ac1e430404fda5cbc181406cf5f3630108 (commit)
via 726e13564b615e5d8e9540b509623e58dfce2012 (commit)
via 1cfb73dbb7503d1cfb088c14d1125a5030a1f386 (commit)
via b07e9c466ed24af614090ac42d6730a291608f69 (commit)
via 3b2ca8248cae742c00cb4e94138edf1403d43d47 (commit)
via 14ad9311720fc17bd646b2ff08483fe60a489959 (commit)
via 50eff16b85073287b1b184a257a8fd80e960fe02 (commit)
via 66c02b9ed1eabf1d7981c0c27ec9fd3c17fc5d35 (commit)
via 50637b26f85dc3e59b616f1b01ca8885cf98f0b4 (commit)
via f69fdf9bca80ac703890a51e124e408cbccbb743 (commit)
via 701000146a01f1966c59f50d7b638915917b6378 (commit)
via 74be0bdc3bf8ae5b2e70992730539bca1d1b43ee (commit)
via 26a9301057457ae576b51b8127bb805b4e484a6b (commit)
via 7167fe4c70ea74f1bb74a6130bb7e6bf5ca354ee (commit)
via 0724bd460babc0c3c31aa67b5f8385a4cb5279f9 (commit)
via f15d0b545b9e9dada8d1398163693f67792e9e79 (commit)
via 98bbb1b86180324b278842d8d73c79cb5d76d349 (commit)
via 2e684e75ae3939f5f14fb89ca8a300b610d093dd (commit)
via 127e8e9f62ed0e7145dfa1172c6253275fc150dd (commit)
via ab4b1c4699fecd1f2461cecae108e7c583c15bc4 (commit)
via 454dafbdf2d1293a9b18a6fe9e9c9e0911eb740c (commit)
via 331b71e5ee226cb5455969899274f0e43e83aa1e (commit)
via 9f584b37e36b67009fa23b6cffbec1bf691ef9ba (commit)
via 779bc38eca950c7f3b64173e99e25f0c0edfbe3b (commit)
via ed2b3126d1828d55d57880c6b6045a4e58c05cde (commit)
via 7f6743fd09d0f3188dd9dcdf31acf81131f9bf1f (commit)
via c80049d3b615691dc902762d5d97551aa9664442 (commit)
via 167b0be1b5ef36a5605fcdfba0c84db2ed475e1e (commit)
via 5eae7aeaf754549d3645a0c590c5ef9f0134a32d (commit)
via c6bcad5ffc9b4021253487e46a8754e5804135cf (commit)
via 20dcd8cae7d87910f6c3936bad72e78b647a8de6 (commit)
via 33c7c59df060e9952fc2f608c3a6ff0a23ecd40d (commit)
via ebe6dbc2645081e3a166865f057e7cc9643e7e12 (commit)
via 79b0c981b8f0c912208ec305d48e775bcb6d2624 (commit)
via 67fa57cfa536cefb5ae7cc4635db66d03fdbd8bb (commit)
via fdddd2900f39584e7d6cee27127593fba2cb0cf2 (commit)
via 7605d944531519ddf9026bf059475a4347c83aa4 (commit)
via bf59c5d5f4f5b8b4da1f5f605cfa546f8029b43d (commit)
via 3334eba7f4aeaa06926d5f1fb51446c5cea43e42 (commit)
via 50ab6ace3803ca317f265dae6064494e3b7fa8cb (commit)
via 6cee897971d4d7cd37d2a686bb6d2aa3e759c8ca (commit)
via 8e68731c8a4aecb3481803e91b9bcd2df182c135 (commit)
via 3d47a7fef640b0a5a90aa7494c41982cf84a4092 (commit)
via c05e0c5af35ebbb1ca39bb1efffae2adecdfa253 (commit)
via 6ab2c4ed51f9c4243691755e1b1d2149c6a426f4 (commit)
via f26ae15b471aaddee81d9d6c03af1cb0f2081735 (commit)
via 6c6e9412e930c96f48b8ee78a389437328f5283c (commit)
via 8b86c9592117b3ba52921af11868dc0b81ce4858 (commit)
via a01bda5221f75031ea2b6d05860e46c7b9b58b55 (commit)
via d999647bc427ce2e083c4449b683705449d0bb58 (commit)
via 4e888c281cd19f019248bd165d7055af88641c80 (commit)
via 2e1b49b32ab9aec1aca94f424cbe275e5f6f9ab4 (commit)
via 6c5218dfdb7b38cc1617be7753cc1ec6d0612382 (commit)
via 852735806aa4343ba4bbe89656041800cf482918 (commit)
via dcc31d286ad05aa93577181f9a8292009622363e (commit)
via 89f3c4b6b9b565720f88636d966f22923c03e9cb (commit)
via 81b42bcab16f4462eb4c91db2cf09cd76e17402e (commit)
via a67d66eb97e7613a38ffe6622d837303b3ecd31d (commit)
via e0115a844607b280449986e661f551dff49a9031 (commit)
via ee357486aa87b17782111295c5e7bd4ac9e6970f (commit)
via 4070243b5c1f66a36dd43a7b722e991ac9fc40e1 (commit)
via 3988aed54acce3c682a877b51b0e09cce1079e81 (commit)
via e48f0c8f1b9fdb195394dc7afea02ce55e4ba5e4 (commit)
via 46b06a98d112ee433a8f81c700a8852c92ca8132 (commit)
via 3a87ae656c283e4f46ddf7d92c06ecb8992c2bf6 (commit)
via 4d01dee4804d39c1671bc220caf32a327e7e4b10 (commit)
via 09b847f3a85ca29ec20ada375fe67843755b6413 (commit)
via 0bb6961f18b8e832d88b490d421ca56cea16c45b (commit)
via 45ac8f4f107f50d77a8514ee8a244b82c1a8ea0c (commit)
via f871c4853a9725682011c2314ea4308f3c34bd8d (commit)
via 916296ccea146c9b9517e00494bde307f2af7efa (commit)
via b020ff8074af22639e3f3c0f700f45d067521249 (commit)
via 1b81856f5b00e7ba860e4de2f3a426f342327165 (commit)
via 31b833b3eab69d91df67edc3e9a21792abc3f93e (commit)
via 4a25033455f1e4e0325fdd249e30a79efc856689 (commit)
via 16c5c17e43b34c6cc5337b40e927bc2d05c38300 (commit)
via 7f9cb5d275e71a75e97230241ec7da6718a7a0f5 (commit)
via 81742b83e9f25895eaaf3a07ac1651a4e9a68251 (commit)
via d336fa6d820f50235c271ea327fadbf4ff6e1edd (commit)
via 2b2d16760741356447ae10acc93695678db5e5ee (commit)
via 7ca51576b94fb59a41050957d5ee822d21711abc (commit)
via c1342859dc02fd57e013ef544037a9ead4f23f60 (commit)
via 692af2271947dee1918585c2fad36618a5d47d21 (commit)
via 484d8d361de65a8489252d14511b77c142d859a1 (commit)
via d91f0b20e561e326ee91a09a76206257bde8438b (commit)
via c0e331c794d6bd75d9be9bea6145513074c33f39 (commit)
via bac608e7e11fa83a648c0980883f810ebd1874b1 (commit)
via eaddb425928bb4ae21c0c6644b4bedf3d16cb6fa (commit)
via 99078d344db25efc376877e0e4c95157f0c36c60 (commit)
via b5540b5f2b9cd5fcbac6504359b856d3f43267b5 (commit)
via 5a9dcda14c240eccee5c1de53cf4ae936230ed0c (commit)
via 45461e0dcaf4193b5b4478031f515ffb7911ad85 (commit)
via 43dce4394513d15ba8122c3bf442ec1028d93feb (commit)
via 6a1b9516d824a4d364040887455ba910f955f065 (commit)
via 593e3209f3e4e525030bc8768850f3876fd0b850 (commit)
via 32fa66eb88d029576cfd8f5698d0579662d2f045 (commit)
via af5f32f82b0ece140641484d8178ead655f8a0a5 (commit)
via 4a27f119f59a44395e0a34b1526cee709e1d3fce (commit)
via bb11dd58391459bd5ba54ec405adab663ac59e89 (commit)
via 32ef30002cee3661eb645cd14bcc4ff77ea10f45 (commit)
via 7453e6b2ea451dfba68cf4442e58706d51f88411 (commit)
via a43f3893f6cb66dfca7f628cd159a008009ad06f (commit)
via 95904ac43c21694a609b4b8016b7fdfe8c2fc0fb (commit)
via 23cc4e1b28d445e23827a09c454aa806f2b8c720 (commit)
via 514f60231cb5a0a070712729a7c29447cae86453 (commit)
via 814b8da0637e36ca7e6b6ebb79f47945221f16dd (commit)
via 506981afaf6c77fbc26bcdc2eb4c24edca4255ef (commit)
via 4062f504eba4835579bcc360e9eff3e7d92f5a6c (commit)
via 6abc18bbbf03dc4aee0b0f2cd851d9bc9a983e20 (commit)
via bd5225139c83a80aad542e46efb66fabf51bff91 (commit)
via accd0bcdfe6914193bba8dec9e6311e608b5c498 (commit)
via ca3e4ea52d21c5f48e12c302179daae80e5cd420 (commit)
via 238c141b9807b43a0b04923dee64ba87df79e698 (commit)
via 8df93cb5652730d99242e7de86679d3930a2a1b6 (commit)
via ac7936dfd0c85e5de2dfec45ca0dbf72baeffa51 (commit)
via edd079d9f6ca2f9ad21322b742269aec5de61190 (commit)
via e5d70d6b5a5c2832ad199ac1b91f68324b4a12c9 (commit)
via cc628f3dbb12c720dbc9ab714feeb197dc739944 (commit)
via e601d38b7cc222345d4128f45db18529b9fb477b (commit)
via 94092126a05ee625bf05d48cb331472b8f87d235 (commit)
via 711f5e559e8009f8033f3709d4fbe70c961a403a (commit)
via db283f44015de0ae0129688bf0e8e4e02672f6ea (commit)
via 2e30886f1fa22fd28a1a91f5aae2ec033e2e54a9 (commit)
via 792ccf005f391f46e295e250f285d040ab105ab7 (commit)
via 63a25ea0de6d2f6d45b26af8d9c808aa35962256 (commit)
via 09a7c6aa7a07f874f5357cde62b5753a10a5e107 (commit)
via 8ba0dd515c1ba23318f28c6bb04c9da573855b50 (commit)
via 16e812b29e68c4a6fcad73b033716c4f385ce94f (commit)
via fdf0cbc2b710cb5e01249e18f5a377a55eddc39b (commit)
via 3342be5dabeeaf2218dfbf4d38f92214612436f4 (commit)
via 3779bbe01b4ec1e5ae0a5c555f838999ba88ac50 (commit)
via da5f19a2534936376228943de85fdd60f6ddd839 (commit)
via 5033013f17524964564dac5d422739ae5214729e (commit)
via 93f4de3929aeb3e21d57950bfa96539599a92f2a (commit)
via eb2bfbadc159ff1463e58daf24c4ad5d1a23796d (commit)
via 1f75a6516a4b480b5521dfb4e1a0721887ab5cdc (commit)
via 779990d9f0a169215b3619a8a1cd120550320793 (commit)
via ad9b8f5d022f777f32cceab9856f47a5b6afcce1 (commit)
via fee6da6e1d96796f8aa8308b3833a3e4cdb409ff (commit)
via 10389c2c8b56b2519441e55bf16f77882fb897cb (commit)
via a80e65a9d590f8817e4acd5a62363319b6a1f961 (commit)
via 2c3f27ed0d6a91bc0812bb2fc6965fd03a413fee (commit)
via fee0ea1f2d3079f7fc3d48109c2a81cc7b7f241c (commit)
via 4a8f9fc2b2467ae8bcfb75392c10fde5a0053740 (commit)
via 2739ef6db8e9a152f7b0ef8d012b394eb41a5dc5 (commit)
via 66cae56016a12f7cbdc94be6f82c1cad1c59b521 (commit)
via fe4e2a3c9281851c9da99a6e36a2bc96e4279476 (commit)
via defc8e2b3576c28fd5651763348ae23c18a94170 (commit)
via ee6872beb1912af41a506c8aea34af7d2f873d04 (commit)
via 8cfcb7659cb844dff00efbbb644c15b650fb7e8b (commit)
via ff1982d53a1fba573e7f9a3b455f7644440cb336 (commit)
via 8dcf1fadf2b0763962639fc5dcedc1892e502265 (commit)
via 48521003d5300e1390d78dbbcae83febe5808aaf (commit)
via 53467f5707ec796c0490d55e74854258a78013f8 (commit)
via f6af9f3428fa86030ba8ecd2da7d11e4ee1ed989 (commit)
via 67c04379acee0da10f148edc3d8903859d928f68 (commit)
via 56fbd041853a4008532d20b898f5b41f594a868f (commit)
via a73ca552593ec2903fd5485b8c8f40a250645110 (commit)
via 4e15b78be4bf008fb4f97bffbc0865dd0e4833ce (commit)
via 4d3bb80e5db40cd2308157db3c446f35ae97a915 (commit)
via a664f67e50eff30198097d51cec0ec4690abb2a1 (commit)
via 6e17c56511104abd605bd2d122104467fc4f0089 (commit)
via cfba98720f62473abc54457a376a3b7aa7ab1e40 (commit)
via b392b304b92ddd81ecfb4902c3fc3501ff90e999 (commit)
via 881b33774d75e632ed9099210c41f16c33dc7db8 (commit)
via d63613596fa297dd19781eec61269186653f544d (commit)
via 3b4190ccb31be262a5aac78238e6d659746f1f0f (commit)
via f3012016f008030b48597b578a5fb1e550907374 (commit)
via d5833c62d93e8176b70e8509ab36cc38801c3ebd (commit)
via 06d5bbc8e5f7541b13509c33b8b3eb8afac27b2f (commit)
via 2712ce2e659f82168154d4533f53d2963ae82571 (commit)
via 15763a09d4aea85fc3153d6746c040dd48565637 (commit)
via fcc8fb2f3de370f2def30bb18c98243ed4f3fb8c (commit)
via 808811a36951c6bc2ee9d56124603d7ef88a019e (commit)
via 36862fc052b7006c78024952c4024c60b8a2733f (commit)
via 4c2287b0bdfbed95d37d09222fc253f4c5086ada (commit)
via b5f6e7409243ca9b016753966a6404cdcfd41d95 (commit)
via 3d415c26bad3a15eed00d2ddf85c4268df77a4cc (commit)
via 395423c418da2cba1240e39ae944510fe9ffcccc (commit)
via 54f70bc14586878ee14891ecb11efb8a90405874 (commit)
via 49a4ce2eae231ae627ab9a312256c6e402b5a27e (commit)
via 63929e843d54d327676bed4d86dad280f4675547 (commit)
via 9d06997adb88a71487a2f5627de032c6fb994604 (commit)
via ff6f4d9b2d6c25ac144bab869df6e3d6123a6f8f (commit)
via 95e42ad4425f0ab0ebfb90035a891be576f9fca4 (commit)
via a75868f50ba72e9aa906702ae038fa29feda7743 (commit)
via 2edf834e298b15c882678db22e86745f701807fa (commit)
via 280958942b74f3164708700f195188c4d3446f58 (commit)
via 1ba1f393faac96f6ad80499d7133df23d6187b8c (commit)
via 0fb7012e88683b8bd67a4fb8f782359fa0e11724 (commit)
via fa57faa0dad237b3f418f17e7ee2114c32da818a (commit)
via d7dd155841641df62761f79a35362371811d9739 (commit)
via 8e354058532d48dce19fdf0b2e0653609a69f19e (commit)
via 8dfa5d5a6389b7f0fdd7baaedc5f316f05debf63 (commit)
via c8ba13ad37c98262b94f99cc4f84ac0066c48cc2 (commit)
via 3753468682a9c7982b6eba0fca58fbfc1cd5b9fb (commit)
via 2a6969e1738859ea8c12837fb0cba3845bc87ceb (commit)
via 8ef027f00ba0252e22ce548c3d270db978184b5a (commit)
via 94ea37b3e93d4400cb0ae1e97b1241a552a4ab5e (commit)
via 8071ec0990927fd747483ffaad3b5d3b16355643 (commit)
via 482366c31ebf90361f0da350608887bf7b6f0f41 (commit)
via 28c7c158766513a1c6f599c08f85851fcab855e6 (commit)
via 5396a86e439653fb5cd714b955708250777a32e5 (commit)
via b7213666d6035713c3a2786ee418085e07cb3cca (commit)
via da15dcb0aadfcd73cd3ed3ef2e2abf1c743f8ef8 (commit)
via 412294daf8786fd9060059b8be7fc59a35e13922 (commit)
via b27de576d41eed16936cf639857df4e1e27a8e9e (commit)
via be459434b6f98abe587f51a374abc38821be304d (commit)
via 8484c9554519c25c73a349d0581cc269f102c5d2 (commit)
via 30f0b1015897466fb88ed26c56a0b4f42808edbc (commit)
via 57e12da97f8dbe2ad5b4f59bf89c709c4d66600d (commit)
via cf54ebff3b7361989712fd9c0128a9b255578163 (commit)
via 7b7009999ab8daac9db776c850b7df6e1f586334 (commit)
via d3037ba6a398d37585b3d34ff9ed439848ba98a1 (commit)
via 7a7cdfa04b0225dfa6879384075e08d73eaee862 (commit)
via e675d1703fbdec643ec42aa67b9720cb199f4375 (commit)
via 7eb4e0f95641edebbc28a710f28111f0ecb9f0d1 (commit)
via 60d6cfc99e67c3f94e31e26112873719b12b738f (commit)
via 0301ce1486b1450f219202677f30d0fa97335419 (commit)
via e6e2dfbdc1e0df3844401f7a8be64e98823a7846 (commit)
via 83d5a34dd4e11263f6c6dd356b410799c6cb7970 (commit)
via 487958d1e995ab05420f9a8468535b4399602a3f (commit)
via c191a6875b118fce30e7dc4d9e4bd20eff850270 (commit)
via 087ce8fa0249fa0167a73f25be51e12fb1a2b336 (commit)
via 87028b873938aa3cc756c99e33a328640dbc30bc (commit)
via b7b030adc405017f01e996a90f85e40730ef8397 (commit)
via b80406accc70791a1789e40f24d64161bc41de34 (commit)
via a90ecff85af9d9275f540227825ba62bdafc976d (commit)
via 2dc0e219715356c6acbc3bea85ddec288f752f1f (commit)
via b05628f0a878cdd64492bbc49d60003d699763ad (commit)
via 739b3f1d8ff7072dcc66240c25b026c6433bda1a (commit)
via fe68b9530f6ec45d57838b96dbe11723b90467f4 (commit)
via a79b1bc6f690f3d146a3caddabd9f13a886c856a (commit)
via 63f0e930d4667eb7dbc95c78f770cd58acd328ef (commit)
via 5c3261b0e834647cf9eb555320e20871b7854f98 (commit)
via 5bfda25568c34410129c91042cdfdf10c143edac (commit)
via c40c7bfcf12408f9f8fb1bb61882f1ffd78d4e8b (commit)
via df27ae6a09c6e1d3e92e67b19e43c24d5f1842b2 (commit)
via 8676616596351876612aa84be798537625348086 (commit)
via 86e17b6fbc9b224ecceece7a8bb4dd7989f07c7d (commit)
via 631859b65bf9f242c1d408d54052df25d5e983e7 (commit)
via 851b6fa13707d187e068c8773f21d376391387a9 (commit)
via 9577f60b5a19ce93536f49cba3af4be39e39c327 (commit)
via 5d84490bf6ac806c15781a833f0e1e7a191f334f (commit)
via e01c16a83893b03433c8edf4ccae536d9b9f4831 (commit)
via 6ee6e05af482b356f9be4b0db877802fb47b2a12 (commit)
via b27bb18f45a99330600ab57892c3620343425910 (commit)
via 31a53da5418528b9ba94bb80a97f0084f40e0c64 (commit)
via 112fef4084ff0bdd6dd9aacca85f5fe62e1a5423 (commit)
via 5056ba1d4df19006b873bc8e752f85fcc712b65b (commit)
via 60c1b909dfcc984f3aecb70032e90a34d71b44bc (commit)
via db41f6eb5234ea3c74c1ce4798cf9923d4a45a98 (commit)
via ad9512030937e79e28d08108fde7adf18635c58b (commit)
via 95b03e4ad68e7a90f5096b47df595636344b783a (commit)
via a3cd202aae50abe5a571fb8c186b6b6af68edce2 (commit)
via ddb7fd0f7b43e4c755c4b8c7752948e050363525 (commit)
via 62cd30f167be56e68cb0a37789d400b47bbdbc6c (commit)
via 824dfcc311958af08c25d29956da2bab99e240c9 (commit)
via 9c80ecd646a604fadcc290fca23b34c9454f5feb (commit)
via 9179355e655d78cf44ffdfb432e134eabceaebab (commit)
via c9cb8905b489d094c6c42e103d4bc6e231e00cf0 (commit)
via 2098b39391a5ade9ed308d76f2dfc7ceedd2d9a3 (commit)
via 4cdd21a8d3fd943d6993e9d053edf09583802744 (commit)
via d0d292a27402ee2d3f91d541371f134f91730373 (commit)
via 8d3c73ef6b1aff1b22296bd48ec302b4b1d4808c (commit)
via b129dcac882da87767cb863ad8b2572f90e9e5bc (commit)
via af5bf4ada48ff65b6658be1fab8f9c8f8ab5f319 (commit)
via 3ec5942fbf8501db10784b0dff7d24222a113728 (commit)
via 867d918419528a1bc18286f4f13ff69fcf17e0c9 (commit)
via 300b6685f17cae131166eaf2fcafe10dab06466b (commit)
via 50500caf810fcc6c05e3fd89bc37fe8f9e4adb07 (commit)
via dad0c6d2f7410d3b451800f856f3c6818303c316 (commit)
via 8b0553c18f0dc63ab0ae930f2e8eed2bce4cd32c (commit)
via 2399fe6ab0b6ee64c569992e4bc3bbae3b5b2193 (commit)
via 4bf3f4a810813214213ad4f7d869eb24e79d77af (commit)
via 354bac403e9a19bbbfb676d854db5f11f0e84c27 (commit)
via 9e86da0760aa1e52178cc5b90cd92a7cd4a338f9 (commit)
via 7594f6236073fcc8696c43e1f5267e61f7d5c226 (commit)
via ebe3b40202042fc644df5ea3bd111425ba1aeeee (commit)
via 42f1b1617e4f8c8f485318897c5154cbff58eeb0 (commit)
via 8d6ef72b0470dfb1133525c8c4556d3578744ac4 (commit)
via d7bcd5b8e55c54543389196fd18453db6961e314 (commit)
via df479dc6e045beb77052f96280798e48ee1feb6c (commit)
via 23fb630af09f2601e7cb75233837399d67cfd017 (commit)
via cc77b1dc33790bcb852c8c72e2efebaa3b505b01 (commit)
via 27c9e813f93974c2d1e237f3c4f25029627bcb58 (commit)
via 5e830d9807b91f806524ff822d953443c8fb3d2f (commit)
via c2508e905f956c5a5e0d2a7fff58b4c746180237 (commit)
via 3b4b0a629a972bf80fc0ac6202f89681fab1df37 (commit)
via d268bbaff7da90caf5fbc94456ae58315ffa1802 (commit)
via f5ca00321dd8da526b8a6a894465bdc7a14d30ac (commit)
via 52a58c224d5d45cc6d7749e2d93827c218562a30 (commit)
via 8aed1c0d04e6d0eb7d0790c4691665cffef573b7 (commit)
via cfa34c871c6644bd7b132b5ca7f2217880f5fa9b (commit)
via 9192b7decc7256a41502bf68df36f429cceffc89 (commit)
via 74ffa566739c7e98568a9aa8b5ab8d8f3730d30d (commit)
via a900ff724a725ea951ba8b17232577e1a4b4866e (commit)
via f7b7ed97a23e2bf4a2ec27bef0fe0af55a080a94 (commit)
via 04ec7890fccfa5ddd9cc92961a4df58957ca181b (commit)
via 466eeceef409597388dd2b4e8b907cf080bedcf1 (commit)
via 6bf0052db8bbeed41e512d1d3ce14ba2a446723d (commit)
via e48ef82dd2fc85560d14a45a632c82eaaadca7ce (commit)
via 8d7aea574a8ab3a235088866860df75b542ae4a3 (commit)
via 30440677f3d0cdd2085bea40496774ffa24f6bb1 (commit)
via 4e04f0450f83d8d0ad08579b5e6c8b4e8a8e693f (commit)
via 871a186e41aeb7f966c6570b8f1659aec9d2c15d (commit)
via 6c19b93bcd0d136f7be4d1e1e3f2e8d7b5917009 (commit)
via 1d75a8e26e6def4f492c84a5f678e41ddebda799 (commit)
via 9f8575350f980aa6da8c488c6aa30862620eaa1f (commit)
via 359987e21867b730564ff46ddceaafdc93d0fb49 (commit)
via 22b1ee183d19a92cc57859c04307d31c06792d13 (commit)
via 559192d89d743834951fc386530c6bc7f89b358d (commit)
via f5233a1611d7d459a762b5fa93d7594a6965971f (commit)
via ff0769882d2338d334eb799179332c39bb9d8ddc (commit)
via f71c8822611a552e76843142a52b8197be0ea34a (commit)
via 981a3fb3594dddae266b7a5014c3001727200d7b (commit)
via fdf44873ec6e37417bf8c8ce33bb9b1a6b4ddcef (commit)
via 81b1e71c4a1370c77ad1d462e1a761402d48b1c0 (commit)
via 4b97e3893ed2af7bdb9dcaa34fae1a207e2d7042 (commit)
via 853ee16fcdf7e60f297b3456353b3a69f4822bec (commit)
via 4f9d99066edcefab0e5868d20cb9ddaa7b76da52 (commit)
via 7176dfd28d1a2a74e6d8dd698aeb857eb6edfb98 (commit)
via 39865a7f420ab4ca4dec6ed27339618a5d5dc366 (commit)
via fe22022617a7122491aa83c893a10a8d861cde73 (commit)
via 3c9a7b0d6d84425ea24d222a1a31e206e587374f (commit)
via a2f63b2e7a5da01ff828b45c7e0e57265ee24131 (commit)
via 72bc1bb934ba99bc9182179a866c0d2c77d027c8 (commit)
via 458ca1d02e47db0af0e22d524df0e4b88fc54b6e (commit)
via 905014d7205d4f171c5cabf695fe1ec3da9b33d3 (commit)
via 56d704daee44b036d1eff86123de6dec0c55f61b (commit)
via 8f314ad58ec824ce6c8467af29f11583f79a80ea (commit)
via 04914e3707e210a071b3af3c52cc5e5b2ad41a61 (commit)
via 7fa29be949a96f68ee65dcdb4f56f132609170db (commit)
via d9b477e3b7388732ed5293d929ceb5fc609916fe (commit)
via d003af558092dc521f93d16628b9ccbf434370e3 (commit)
via e8b8ffd3c0676f69d1edd3859d4eebf10d1d62d7 (commit)
via 0f09b4d8d8f7c5d249c8375c5c42d4eba3bdc858 (commit)
via 2f20e312aad64c0f5257b9725fa5ffa3e8a93ca2 (commit)
via eb8c0d308be8525f7c25962a9c581f44af23a364 (commit)
via c85fa91b5c0dc70641d75d6ab9315ad547487c1f (commit)
via e4905c7464d23367248bdd5d8eccaebb495b8274 (commit)
via 22b63797983f485041a2a424e6cd7732f4318885 (commit)
via 65630365f7d073430e62b4fe65f34dcdc0a4b05e (commit)
via bf4692711232eb96cd840f96d88897a2746d8190 (commit)
via 6c699715f68be7d8c468e965fbefce997f7ed937 (commit)
via ae7e78255666733d238e676a0bab14986a1483dd (commit)
via fc3c534364ca6d6de4f0dbcaf347ec85f5e2f8ff (commit)
via b9399fcf4ec90d898a610e39bd9141e85c008fbb (commit)
via cbd3b1c155ed4f4986bf50754b1c57ad85700f7c (commit)
via f8f762b2fd203755c51875e979dfdeb69b66743b (commit)
via 1a56bfa56ed967c5f6ed98f75834408417a062ff (commit)
via 0c478e2d060bebea341696806fed6f67122efab6 (commit)
via 478c006f9b4a64d59c31aed081c14c1d7dd4ba68 (commit)
via 9d45a7de8b80336b9965ee99353c34be85b1b98f (commit)
via 777a42f1f86b60d11cfe0e5964036823e6920f79 (commit)
via cbd2b4e316370ab740433b06ed65786831232c8f (commit)
via a181c0bf7461c28cdb72a4074c6d7608119fb575 (commit)
via 6e66f7538112d2f5fb1af17dbde33ba37a7171be (commit)
via 8e464506d2131fc931c4f81a22cc7125b7adf434 (commit)
via ee6767daf13a13867f8e716c2a53b748ab0da536 (commit)
via 890e97902a21a3b88f9b6028852736b813303029 (commit)
via 109483d9eec3f0d0c3eaafd5d829435059167c52 (commit)
via c474ea1a5f1524668cb8ce91c3682cb0cb837e08 (commit)
via 6753e38a5c71b4b4ae81bba41fb67890abfa4e0f (commit)
via e61933afce961c4b23c5e173b4b8f46b949bef30 (commit)
via 5c9e4427a745e5e26fba320ecc62e4285b613e4f (commit)
via 76f361eb4934dcda0626517c311b34fbc92d09b9 (commit)
via 5d3b558acd329de9dcbd63d9bb04242b31fad490 (commit)
via 4f2358bca6910cafbe9b37a713fd96e5ab84d4e8 (commit)
via 791afaa233ca9f4baa59aa16062296a00aa2c4da (commit)
via 30a9c02feff56bd58a276c2a7262f364baa558ac (commit)
via 757325a3f24e01bf8e7b7214f33c546bc52d1d12 (commit)
via b9c04fb2681dd5706d2cafa5dcc6bdcd99016cf4 (commit)
via b55ec8b676ed05d93ee49d6c79ae0403616c4fb0 (commit)
via a72f95f7760bf85693af393c5e01dd3aedbe5bde (commit)
via f9799aae8e51948c1d87fbe7249b3d76dcb4585d (commit)
via effaa0a1e8d63a7063e8c7b42fe1f9b98a4da2fe (commit)
via 4c7236d3cb7b971bbdc97b6aec348a4aa0594a9b (commit)
via 70090aa5f629dcbdfa88b20c29951fa8f50f0545 (commit)
via f0f07ad1825e9b7f539e410562993b25f76e5627 (commit)
via b05c287c1820c5a86e08afec26f5f73b65b416aa (commit)
via 2458d83bbc190f92f7718b30438dd7e5775e0d3c (commit)
via 0ee6e554c4f8b23cdd629774ae94a74af5826976 (commit)
via 99180bccaf09413c9ddb28e51fa30f1ca4966583 (commit)
via 98b273dc13b1e45db8c66821efc9e514884f3c25 (commit)
via b3b7c423883ad8d8b81f166ad2d2d4b637086bc0 (commit)
via 544c67cda1686c1b204cb96c0d7885b08d37b8d6 (commit)
via 0d28b0a5caa6b04129e21a9aff371d4032c7ef17 (commit)
via 71917808c3490b4d4df9c6e848e3c5d75f5278d2 (commit)
via 2081b2b2ca30d7c3b6464a3e167ce2c336c0465f (commit)
via e0d8f43169368abf354e596c7725dee1dd609cb8 (commit)
via a1b85d282f408dfd18a27539874846197f7e4044 (commit)
via b79f7801a2c555ee4ff4bc3050141e83158f66d4 (commit)
via d97987e219b80c670e37eb0e25e31b36fa295509 (commit)
via f38307f593cb8189c82fb39e46e0cd899022e2fb (commit)
via 2f924de654ff8f719faf60b84948397809baaac6 (commit)
via ff38b4cc55dade4c9970cac2149a946d5dc0adc7 (commit)
via f3180fa9ee8917fa9547cd5f79c822761f5d87a0 (commit)
via e74399c47c76b8111651f41b52a05401852cf799 (commit)
via aebcc8ffd201adbee973b414818b01876dabe1a0 (commit)
via cf1070f1a1ca1f8be1cd88aa6ece55a25e6a887b (commit)
via f70656b2604eff12cea2e9bef27c1e00a3077f30 (commit)
via 1f92404c505db7ca2255dad73647889234013a0a (commit)
via 2eba97c207399d8b541092a7b0a4428dc02f5cf1 (commit)
via daf1c414a48baf090f005ce4b319b6881d5d6872 (commit)
via 51537393bd939e79f6e9291629fb65a17e6f19da (commit)
via e98fdf1ab07243fe467caadd0d033b44b8ca20c7 (commit)
via 0caf6c82ab23ece570d14499ed02653968cd8abd (commit)
via 46e31de783dd29036370f2a1a233bd0e65ab2dd0 (commit)
via 2fd9d7ca17539ce983862b25e0abc27cfb706189 (commit)
via d13b8493cbd2891b5886e6176d468eb63c73606a (commit)
via 3b4b2f160d288b85a1379d24fd0f4de19062f3fd (commit)
via 1841ee5d0300cf00022c8aadfe16725c5e86fe1d (commit)
via a80a647180bf92692e0f01efe7b323afe7d317c9 (commit)
via 6d5be5d6b8b4412e65bc037472aa2e727c25ccf5 (commit)
via 12c4bd7f53e9cefcf7c3a7f8cbf9e552526cb963 (commit)
via 2bfa0cdfadd313f3cc35329a17ba3c62865208a3 (commit)
via 97953bab05cca82bd3119de4d5cf26103b649597 (commit)
via 64f7152491727daf8d0b294aa5ddf49f08c63ca2 (commit)
via 94750c06e89e273751d54148b649098677ecdff2 (commit)
via 007873f54e41eaef2f7a89b8adbb63a563d98b65 (commit)
via ea8fae9fe75706235ac49c507f1c5e039f4b4e1e (commit)
via 5c144731ed7b9ad39c947f8411b1dde4fbdda2e6 (commit)
via ef336cb09a4193b3c86284a875c7bc4c2978bfad (commit)
via 9c0f3d3f2017829ffd908c9893b85094985c3b58 (commit)
via c91933e9e33654c7b8973cb449b93f5152afcbcb (commit)
via 2ca7de3746be7484aa5affceafa1ad2e1d789381 (commit)
via 7d36e2799141d206651410c68080f40b88809a3b (commit)
via 8c6716e57eb991ba6ceb07011045d626652aaf01 (commit)
via e6fef60069f64ee19600e96dbb1f56f80b388bc8 (commit)
via db4677b8bd90b49f826807352c6c3c7eb0d57814 (commit)
via 5cd63fda035d4ba949e6478406162c4673b3c9ef (commit)
via ed4227b7c6d62767c9c323dd95d8ead75be51a6c (commit)
via 55b11ddf16b97b9c50ed480bc9da8b3e1c6c4198 (commit)
via 4c71c1059f876fcca9809f7b6372b721ddb83635 (commit)
via 73dcd72d4eeec176f769660ddcdefd1f25d0a2ec (commit)
via 44704526e482d24baa104764495ca376561a85bf (commit)
via a87c142792e4dcbec2bb3825e71f3ace044c2096 (commit)
via bc3b087de2401c65c02730d346e8bea4dc0504ae (commit)
via d092c5a2465ece3435131ae6fef1ccb6e70986cb (commit)
via 7da0a8867419fc4a2a64d49cc71a14bd145cebff (commit)
via a5259595e7a6faac0240d257f7e9cfa599557d2e (commit)
via 9ba5f27cdd15d22d6c5739ff5d2b1c81d796e114 (commit)
via ca2a727a5b9389190ce86c52b0303ad8c3e2bcc6 (commit)
via db8dd1601ee4d0629957bcc8b4156d65f42a218d (commit)
via c0107b0f57bc958b640dabafd4c6c618ea023397 (commit)
via f8bfbf22251f6c2772a9a1059c3180c638ad2830 (commit)
via 5178ed487f813639e660fba23215fa7ba69a769e (commit)
via 8cff8730f43548d17530c9d31aac1d381351addc (commit)
via 895b8f306b1f54d85915ca0d24368f40b2e42554 (commit)
via 0efef6405493c0bf438486819bec70b304276e16 (commit)
via 245ad7d373aef22013b347504d30d2306da1bdbf (commit)
via e05550d7a409a0637d87bef377e5d4b9a4b379ac (commit)
via b95de2b7aeb30081345954cb15970a582b49a866 (commit)
via 070365117b5727394e271399c5738a27bf9716d5 (commit)
via 9194f82dc372d5045ae06c617a49a5a9b17c1d24 (commit)
via 40c0777b1709480526429f90eaa354c8e0da2dc8 (commit)
via def5c83c02fcc1c91d3f0da21005e0503b8ec881 (commit)
via 45320ffa0450b27e232d933d2a1c6a09d94ac18b (commit)
via b3e3859bc577db5b79bb3d39048fd46c0a0420ef (commit)
via 01af5e0d09ac9c621e7b280f44a2c7ef55784493 (commit)
via 888e3ddb20f541220f18709fce832ad0163c3e71 (commit)
via cc536b21677586455973f81ee05257ada8efdcb8 (commit)
via 289a6840c1ed80f71d58632bb6d702d97d114387 (commit)
via dcd2b8a0144f4f5f81887861542609ef858a28c9 (commit)
via 7a0c60fea0f237b9de95e47a0f75200ac9ebaa28 (commit)
via bfec0f11eadd7ed3597bc9b550a5595421a4cb31 (commit)
via 8cb1232a8cc0d1a6db2de51398acfe978a5c7e68 (commit)
via 20230942fe3674150ab661738d72f1618b3d4b1b (commit)
via d2e6c9a3682f0ac811ac1676d221c55162938b61 (commit)
via 4b04bba2eb6b646e11a2c38c77667875b3db6828 (commit)
via 4f1881b94473f1034f950feb863b464435a8fb5f (commit)
via 3678b25d0c5fee04a91ad90ed2965513ba0ca11f (commit)
via 2715765b0fd357b4b58166850a23f509aacde161 (commit)
via 386c8614d5e65431e977b1b20cc4642f944faca1 (commit)
via 789c4b5ea14b0c441e6021f07503e61ccfacb427 (commit)
via ab816a274505933da2f854014b54901c3c3db9d2 (commit)
via 52f9abe4c739f42cc5f80b2629276493ac6306f9 (commit)
via dcd5ddccd7d7917caf42b8d429a7535857c6e9b2 (commit)
via 45d288cc64e08dd68938f1d9bcc70906b5343652 (commit)
via 6afe2f4a39badf0ea1ccf9fd34417e729577c6e6 (commit)
via 9813429a729dbcd761dfbb02d2d7a3449af0881d (commit)
via 2d6960b4568869baaa3cb40f75caed4021938e1c (commit)
via 784c453a4f1aeee237203dd6257a6ed24bee28c3 (commit)
via a9bc57b97840a874ad2802e29a44fbf557668808 (commit)
via 9754d8c4c48209eaefb044d03dc25f14dca8a263 (commit)
via 99ef965c6e812cc73691873c965cff0d2d5b89a0 (commit)
via 42518ba746b5b6cb7c169a55430e73551be345f5 (commit)
via 726b2169b4cda6a0267cb2986ada758270cff093 (commit)
via 55b064321eed6cccf511fd698c732890e3ba4c6b (commit)
via 8abcee91738bf0be98e949049c559839ef811ae4 (commit)
via 6ad94bc76615933a234a219368f1b9af2a64d746 (commit)
via 2003f3d839fa887811ff65380191e0beaeff719e (commit)
via 8f8accb58078b1f249dc6865b8784a0a8e8881dd (commit)
via 200aa7b154b25423eb72ceecade0fcd76edc4686 (commit)
via 606aae8a73177dde47ff01a6eb7ec883309bdfa6 (commit)
via bd413795d364d3bed8dbb8c596cb45c82ed31041 (commit)
via 8b5b25295998e10723bd51d127c87249a779f628 (commit)
via 1755697b1df1286cbee20dc487d656025964a7a9 (commit)
via 256642e857886f1e3da86ce2484f9df5a5a6b904 (commit)
via b6bb34680b9c99961b6cd635853552ec6569a2a4 (commit)
via 5b9ca4d43ba0313612e8ad6e50221e8f20ebd129 (commit)
via 94c207e097a3a30ce71fc8f700325113968c276b (commit)
via f6ac8c52c955b487dcb56d05fc93fced7b203294 (commit)
via 1b8f6c7f827726b5f91745149f7d4329f10de7fd (commit)
via b2f8eb7a30dcf7c33ea26dfca31401a6786dcd99 (commit)
via 08302ed2cb8b175e3bbd4308879154baf64e6d98 (commit)
via 231ca753239211b72eb761593083a0ee859274e7 (commit)
via 1a3b5c34fe371f618402f811a981839c9191ff9f (commit)
via 50300765aa46894d9347f760fd10dab829d564f7 (commit)
via 96a5a1d3780a46b578842d9aeea3e98211dc20ec (commit)
via 0db7851f9f490f0b60689df5a218ccce60896e3d (commit)
via 77b7c781e9f03cdd903dad76f47ea0bb25277b06 (commit)
via 8e43602e34ba404d82f7c74f6629f01e40c740e0 (commit)
via f21b4d5c59136c38bb6d94eb6a29ad80d02043f4 (commit)
via 643c2ffafea7397461daea339bb8f0ef2f23b31f (commit)
via 510e5e562796a5d2bbd4c7208155bd8a3c03b50d (commit)
via e503b1919bc5d06684ba6b1d09a6ccdf0a50b879 (commit)
via 4e00131263d4de2e8b7a1d0da7e27e423d94fb52 (commit)
via 7776370010db4d85a89a0dfde391aa9170ac1bbe (commit)
via 4495129abde9922d77215233837fb47738722de9 (commit)
via 3088cf40a57ec7b5276f192238603684b4608a90 (commit)
via 69f476a36f475210807cb70d10183df9b838a9eb (commit)
via c4a3e68e33b78c68d63c35bbed01782ff9eff4d1 (commit)
via c9d31bd6579d5bbd672937a76258031675d40f34 (commit)
via 1f3f85eba696bfff4fea5e66167ee001c07c4b0b (commit)
via 9c504b5d34803ca2520e554aceaa2e69c141dc89 (commit)
via 6663cf9161f7ed9cbd1ac1c0afba36c952d84140 (commit)
via 34e5fa26b758250fca879799375f27c1fd8ed36d (commit)
via 8384c35618fdfa66ea3ec6e84072cccc6192dd48 (commit)
via 884beb0c41d8479e3c05f3492cb65da05ed882d1 (commit)
via e0b2930cdc0153d871f80ad728d6e3fa90324b5e (commit)
via f938677d425cd0453e26f7f51d9e94c87c92a25d (commit)
via 8949cb878d5daae969db6326e1e1323bfa3ad9d4 (commit)
via ac88e2de8314efd9aaa9132c5643ecbf715de508 (commit)
via bd4c9dfe673d8af39cf400ba0118ffadb0e6111a (commit)
via 5e93d4c64bbc3b4fb306e54cdcd79bc8ff86b2f0 (commit)
via fc41a75bee01fbd0883e6df1e031d4d9e998c437 (commit)
via 67810076681180b74d92f98d11c4a3d94885c9e5 (commit)
via 1d8b34a7a233d89938fd173389f7884aa7d105b3 (commit)
via 442019e118afb6bdbae490c0b072e8f024f2d9a2 (commit)
via 2983f7cbdb245e516799f1a5b8ddc0450bce98c9 (commit)
via 4fd41b2486e0c3407d39a6a4c0bbeedd057eb20e (commit)
via f2fc30156cb71a3e616186f09f0ffa0da26780fa (commit)
via 8c2f95f4346a4ed6593b1e0cb60d1839176e42c2 (commit)
via a0d65762f11272996095870affe18f4c2cf354dc (commit)
via 58971144622629bd11acc82b61140f8c47f0e306 (commit)
via c482f52ccfbd5609aef5482fb0872545bdcabaf2 (commit)
via e100df1a2ea356a8a311114bc2927215a33eefcb (commit)
via 31d56ade0e943aca57acbc030334d65ae0b6f866 (commit)
via b961da0bb033e0058059695fdc28c5fbe0057c1a (commit)
via e2d8ae16c0c9a4f6c61ddb9af3d6ec8b2b71db2a (commit)
via 863779b0c64917a1580a9e505762642ef5833575 (commit)
via cdb34d4a1cf2553a58dc993bfb6f78716e0d1c43 (commit)
via e99c83e741949cb7ae9f4ed449768e8f89ae02bf (commit)
via 32faf971cd86d0a13c6b3db4626d4c8bd119e6c5 (commit)
via 2cf311ebadb5058afb983c61363fc2595c01b9e4 (commit)
via e6738699f704ae1ece43e9758f60d084b45e5308 (commit)
via aa360cd5dd21a527f67f93ef75db92bac6cf02d5 (commit)
via 898241a5ba617eb3e0bad4eb0bafaa9320320178 (commit)
via 2d0ac1068babfe8800607b17ddb2f31189bdb334 (commit)
via dede02ce4d2267d044db41a0896af4d670647a04 (commit)
via d3cb6b99c5127911f94c782be8214e2093fbe82c (commit)
via 1970a12f32f788f22b641737e846350e1ff9dd04 (commit)
via 41243651350688a9a0f3a3542871d37e7f3c5f20 (commit)
via 4465d9db2f8962640f3799a17851bef3b1be1a33 (commit)
via ad25e4234a3f370a693b9c392c5b54216aab4592 (commit)
via d64097b17c88ae18781ecce59d1b265b41e9551a (commit)
via 4d4589ef76b975eead8da6bfa65db4a9dc85089a (commit)
via 32a7bf17c94a81c08535ea045f43fe8c8271d3fd (commit)
via 4a47555179bfcfd3c9e4ad2752e38ae398fc7dcd (commit)
via 990b9f9f5a301cef9c16035c341a7b0b7ccc983d (commit)
via c281872eec33c92db0565afdbfdee91558e5d8e0 (commit)
via 5b64bf744c04f550a9d15b49a8cb0245904afb13 (commit)
via 4ada038f6a8330b27769ad0227c7f716aa29b649 (commit)
via 57f5a81bd240459edbdac1628800291e7535ed02 (commit)
via b0a8e6c4431a2e762dac88f3d73efca4bc47c90a (commit)
via 8d97dc1cea4d1dafff2ce2f55e0b84cfe444e6cf (commit)
via eb7c454d737322be2d810e1a5a2dc7b88fd636e6 (commit)
via e4e3333549c96d2915bb888b7b347566c938e75a (commit)
via 0450cc4ce8b4775c47e9aaa1c5a34e181b10ae98 (commit)
via a9bbfbd85fddfea2db30810c33c4bb130a2ef773 (commit)
via 19485196044b2521af979f1e5c4a89bfb90fba0b (commit)
via 6bd6a03d6975a96802b37741a99644570e52a72b (commit)
via cd28e7aaf35f7de5033ecd619b56064136bb190b (commit)
via 25c7861f70b2fcde6c4e3454c269da20ff141883 (commit)
via ac69a0d75bf472a140e5405c8a90420d5f63a998 (commit)
via 5230b05a94b964da335a0758686b92a8efcc823d (commit)
via b32b108aba2c0119d0e231d203d3284539da2379 (commit)
via 75352e283fb2b265d14c750859156943f6eb2693 (commit)
via 5007d765ae09c10c7f3b18bb16841b9d2d59e181 (commit)
via 262c0a877f91b9102fd42523598b46ea79a8970e (commit)
via 00956d3a8ab1b56fcdf63aee4ed5c5a1d46a7a48 (commit)
via 33e0a9a056bd23e923b929a4f2ab049ade0b1c32 (commit)
via 30d0157a2ad64e64e5ff9fcc0dbe78a3e682f573 (commit)
via 281c4447738409888d9659924937da182a65b4e1 (commit)
via 39b06c208fb7b7edb98866252cbd05ba0918f666 (commit)
via 1b86808a86077722ee4f42ff97f836b12420bb2a (commit)
via 5c1c468d0eddd0fda1ec8c5f33888657f94e3266 (commit)
via 28d810f7ffd7fefd88117e9d830e7588591fd35c (commit)
via 58a0b827444d0d6baad47f5fd010f33e541ed16e (commit)
via 78b2179a8e085b34ad7872450e5fadff4f7e5eb0 (commit)
via df8899e5c8b60ffbbe93e35315ebb76a9c80ee37 (commit)
via 66cfc0fd0d9daadc2dac5a783b69b4050c0b1722 (commit)
via 6c3e20f177102519cf4f8b3c7e7e17996ed7cd7f (commit)
via b292235f666ff2123e26794db73d5a27a685e7be (commit)
via 9ac86b52da268147b2565e4920357432bb7a34c3 (commit)
via c0e383c63818baee1daf51b8fb1bae34d1e0597f (commit)
via 791199cc75fd294a4f5a228f83abdcbfb4c64c7e (commit)
via a54018b72d75abf2e74bf36016702da06399c1d9 (commit)
via e338894dc2e603683bed2172e8e9f25b29051005 (commit)
via 898f57a89f3f75d542892c891e0736a8d91f42d3 (commit)
via 8dba52b60488265e66073130ef77c03f05dcaabc (commit)
via 289e23aa03084b22c73ebdcf18371f1e6666ead0 (commit)
via ad3396348e0ebb61fdf71cff307bac08175ed366 (commit)
via 1b63490c9173f8c9770b7885def720516aa9b9f8 (commit)
via 96235dc1ac3730c4e490d19db2e8287c0a40f307 (commit)
via 1da5c9a485f3dcac4c45e96ef4b7dae5948314b5 (commit)
via 11855d8a1f11b102a702ab76e95b22082cccf2f8 (commit)
via c361faae8d964db951b7100cada4dcdc983df1bf (commit)
via 57a024f4650d7562e963efb6b00c4a4cd74185c4 (commit)
via 5b3fd0aac2b70d860ba34f0e290d87773b09bd11 (commit)
via 52b36c51e5bf6d7600fdc6ba115b170b0e78e31d (commit)
via a26a013f22a19e2c16729e64f40ef8a7dfcc086e (commit)
via 52a93b95ec0771c97e26f0bb28630a271a667bd2 (commit)
via d8010d3e75ec7194a4703774090b27486b742d48 (commit)
via 515f23e63c0074ab531bc954f84ca40c6281a724 (commit)
via 0d76029f92182c3682d8be2c833d45bc9a2068fe (commit)
via bd61e135492ecf624880e6b78e5fcde3c9716df6 (commit)
via 8d296e2d4d8ed6ffbe29bb8cc6548a3871de6ad1 (commit)
via b4a7c699688bd88313893cbb59ee0df5b8cd009b (commit)
via 4102159923c90abd636d73e78777b98b1c680e53 (commit)
via c2f97536b77f9d9531a1a2c37008b454eb67a82e (commit)
via 61e3bf5f83f7e505b6bc51ef65426e5b31e6e360 (commit)
via 59ca4c1bbd48a47073eed2c4b933045674cafe41 (commit)
via 9f272209118972864b2c3799ddf2b39683c1a7b7 (commit)
via 43573013c9836f2b91b74b9b29dac35fdb41e06b (commit)
via 6ec2e0f5bddc69d55e09fe56792edf7a109ff8ae (commit)
via 0cf44ec826eab1f149285b8919aa9dc4140d8d78 (commit)
via cc4d742f4ce05bf933397a513b953c0feeae0663 (commit)
via b69e9267d15a09ce3f3d4599eae2952dfc6df502 (commit)
via be2b629f6427812a24f38802ba1c472a2cbfab7d (commit)
via b877d21f34211915953487d68a07697f4cb4f771 (commit)
via 432ae719d35c81324e01ae6bd9970cc43e69fa5e (commit)
via 4fa7574eecb9a92ef40f77de572541e402a2749e (commit)
via 7790bd6c748fc8e46c621b065562729735114f6b (commit)
via ec76901011c5af6a565936d4ad87247c51901b58 (commit)
via 11bb0c7abcb26fcc4ce75c66c38eca1f7b3e3480 (commit)
via df52f331ed2dd79fc8461784abfaf3c1a9c827dc (commit)
via ef272caa7482bd9031e82a2e6f1b81870fe2129e (commit)
via 42c0794e961fd7922ad1358bd7221a8c85278ccc (commit)
via 757bf54bb48a8417154cfdd7128c1775d43478d8 (commit)
via f2ff95c5837bd41848e7156aa2677498518d0d18 (commit)
via f6327dcbf0bc91bb9d99e12232d2b1a2f959fce6 (commit)
via 8629910955a751a93f2f12389ff1f497556cc260 (commit)
via da2c323bff3405add97c37333668de3aad36ec70 (commit)
via fbbe5337a6d839309c0415765803a19f3e38f6e4 (commit)
via e04ee09e24563f013c35cdebd7e9de3092b99b83 (commit)
via f557a88ab120b75ddcc507c03d565c28e5f88c16 (commit)
via 8fe09d7421db51bc13c9228547d63e6315bd6bd0 (commit)
via ba52cbb9d024f2e51bd50fac36a18a15ab88344c (commit)
via 1e5b66ed4285ecf063e7801a46178ebb0ce5be41 (commit)
via ebe48ba0856dcccaa7a60d873c61e6f1f96f5887 (commit)
via 0a0bf5dc149ad79b325cdffb6b4e57be6c5ecbc2 (commit)
via ea5cf0fe291966845fb62f173d407a0dad69819b (commit)
via 88240b186d224d634633d9996832f1235364b6d4 (commit)
via d1b0a7bfd3df05fd2009b62b19b7535bbc6555c0 (commit)
via 48649e1bfe2ef4cceff15a34e5a9e37201894ecd (commit)
via 04afa70c8e1c931dd44db76eb9f0ddd4949ed00c (commit)
via f5b358c8aa564c58b0a3201b82cc782124d80bb9 (commit)
via c83833f49353e1fe7fa727291210be751161ade1 (commit)
via ca464aac1b0a444f7debb8fc1e5e8b3f30602a35 (commit)
via 223ffa714ce1cf1dc6e0c361189fa80417ff90d9 (commit)
via 013af3fc8eba48d081f0e83303cd800097e5b7a8 (commit)
via 06871ae84096ed1672eb76f44cea4d5dbe79ae24 (commit)
via e5f25bc5d6dba5a5c4dd36e08afd57e918c63dea (commit)
via 1b7fa39ed9678fded7264636c1e5cc14c6d6ebc6 (commit)
via 37dd0825964048f8cb2b1ec0e5e43ab73b8bb69c (commit)
via 6470a84860b11ba6e7258604ae78f047a1af2f5d (commit)
via 64b5d6d785eb4c337b7c071ab9607186541a8b14 (commit)
via dba74cb2b725ee8857dee865fb7f49c86aad1aed (commit)
via 4e5a4f5850487740eb7549f1d0b8625ce577faab (commit)
via b7f54058d9cd409ada192bfefd4c99c98caaef2e (commit)
via aa70c9f1950b25b48f8fd6770f5d38a8252c24a4 (commit)
via d6541620447f43985b34e9a39488bafb38158221 (commit)
via 25516cc573ff3551a7ac0538e1d3de5811c7199e (commit)
via 3d13f3e9bda5aada68915f5d958f731ae79ed41d (commit)
via ab502e635e78a6c6c9c8abf3072bfeedaca9c26f (commit)
via ced154d810b8e6ef10449030ba94fc8e66add468 (commit)
via 94670f6cf11fc29cc6db6814b38c4305d9bcac96 (commit)
via 0615127c587253a6386fe49468fd64abf827273e (commit)
via e4114cb89e65c53839d5beb80cec956476ecb5dc (commit)
via 35d3b1d74fd5e17174c97dac422f8c8d4ca0d8b8 (commit)
via d9d0d1bc3f90ce4c1a86070a9832f706f2fb9200 (commit)
via 04fd3ba9b63936653fff2b1657b3824c94a8efd6 (commit)
via 5e1875543df7413d3cbc3831390445e347064b75 (commit)
via c3d7b541fa920e6ecb0f06ffe1e0e3f070fa295d (commit)
via 1526853e34c063bef25bd7d0eb15c1449c28e999 (commit)
via 5846367a24e24f334077ceb7f7389acbd072b11a (commit)
via bd77e8ff276864d6622f2433b8a499bf4332fa65 (commit)
via c4dfafabc575f4995a5aa18241adc275e63c846c (commit)
via ebee3285b3a44ef2854e9ec84a0c92f5cca4da68 (commit)
via 26a67918a501370a8fe62db18a74761a0073016f (commit)
via 124aceb46dfd1f836f35d6075ead4e00e705f6f3 (commit)
via 96cde54f0adf2315404f3eba35dc3dfbc57f98c8 (commit)
via e8ca139ed036e6da8adf42fc6fbd93973b724d3c (commit)
via f8a4e1192032044cdae544848865636f6e07a925 (commit)
via ef87240fd95c5f29a697eccf20b2f1f6dc3593a6 (commit)
via 0eb0a40713c6479e782e5a257793d28f647e38bd (commit)
via 3f8a7804287d3153fb4a8676b7304e67cca32be4 (commit)
via 785922a559529420ce9b11342d7abe6ad32b3595 (commit)
via 8d20070632b608587f372cf2d36ead339487e49c (commit)
via 8fd138c43b3a820e1d7deec80c9290b458f09d63 (commit)
via 817b77113459d8b66a75f4fdbba0a3f5f6936c9b (commit)
via 21d0a60620b306d6471ddedff04ac23912596cc6 (commit)
via cc3e190059e6c817203049a52c8bc4b37b58ce74 (commit)
via d185219da329805075ba5e0e72ec4c89c925cff2 (commit)
via 79254a5260cf49887b4017700bd75b27f483b322 (commit)
via 5e5e02aeca4a6edccbf11b5f900d95bba59b9932 (commit)
via 26e53f3eace35cabeec4559d417df99a48f6477a (commit)
via eccd80d69487586578b7e085d8bd48657a4d7322 (commit)
via 690098826e36cbadf618e15eed5f6ebf606cbf74 (commit)
via 1e467161932b6385b51d0bd365a91cf205b399b9 (commit)
via 4d465c689a8fb27212ef358d0aee89d60dee69a6 (commit)
via 255300f5a96079a9860934c44bb9521e7aca45de (commit)
via 2578f2f307f7e80caa0bce32c7fa880d579e736b (commit)
via 0952b7101e85b205f93389216a7733caccb8f267 (commit)
via f47432d4b99a453f9107b7fd5e173384f983e679 (commit)
via 9f2815a079efa19ae520293c455ec2910a9879ac (commit)
via 0782db848b52ecaf29e13d9f12a2c7cfabec2bdb (commit)
via 1eac6bea98f41ee12ba9e750a9578bd8585011c9 (commit)
via aaa63a31909946c4f68da64a93662147d67630bd (commit)
via 331f81b22cb6b2a8dec2acc0a728c4159c1c7b5e (commit)
via cb85b21ba1c0014787129d3f53cb8755aba64930 (commit)
via 8fbc99ef16dfb49981e275f735cb591e68983d08 (commit)
via 50feb4bd435b86c73ea55049b7cf87cc709c1388 (commit)
via c6dc63a16299e22fcb5bc13b34cb402a1bfcf6b9 (commit)
via d6b9b80f9483b6c1a3a018c0fcaf813ca098d8af (commit)
via a9921622de0a7332a333c5206ce8cd632803df97 (commit)
via be0d7abb5e3b0be4cb928845e70a9134f1b19700 (commit)
via 00f675ff65ff6f78712a46e9699856e935d86d86 (commit)
via cb791d59489576280e416262eb61ab59765a0baf (commit)
via 2039bd9f0ce667f3f0ee99c18e25de1ea18a2288 (commit)
via f1735a53a63040cc4b4a735bf18a3f20d308e519 (commit)
via 7d221d749c0239f06ca571be6c9452cd22b5d582 (commit)
via 35c61a1dd5462ceab42618c48c9a60238245761b (commit)
via 7c96f8c1dae023c7d0b1cabc5e50c4d18fd06960 (commit)
via 4ec521f238627f7682306d699c8826390a2cc9e7 (commit)
via 555cb1688148f41582b1e7e9af57e2fc3fbf21bf (commit)
via a059f00c857d088a7fe55d2dbded9d3210af4989 (commit)
via cc397f3a236509257acfd5cd17c2f15f87a482d7 (commit)
via 72542b8ee6558677bed21dd880b68dc2e541c9c7 (commit)
via 502b834c1a6712d9bbe0beba98727c8365429cd2 (commit)
via 0d64823e51de0b0e0a94bdf88940310342a6e6fa (commit)
via eb1e02fd05688c28686a02f197c5e7cb0a5d6a27 (commit)
via 0fc21fd8cf92de78c3c383378e70a2955e2631c3 (commit)
via 49663d051c70e1366f9b94f586459a329e9b7053 (commit)
via 0b868b60c97b13566cefc8c8f1984225b0165eec (commit)
via c0470d489b47f0bbe57893b31d56d2d4ef945f4c (commit)
via ca5909c7de7353d8005bf8fdcc020b8f14cc1603 (commit)
via e6a2252ac3e3dc748df33b38ac66cd78c80be5ad (commit)
via 393702cd59d21237c7db99c26dd8c4737a3ae303 (commit)
via 76f9c9cfd42eb8df90ce8455a92109c0f71b41e1 (commit)
via dc9fe180a4437b437015a8b835d05e32d64dff3d (commit)
via f8cc3da6e4548529eabb1ff4e9693261aae1cfee (commit)
via 481695ed5f6e0a8a9c9c50bfac1cdd2b3151e6c9 (commit)
via 2420fff633eff03ec1f85eba82a926cd0ecf4229 (commit)
via c5bce5c69721af8dae5c607e085e545cdba33ab1 (commit)
via 8fbf0ba18c8a63bd4974086f6709b2bf050b0b0b (commit)
via 4e9ac44a8925c7da81735ef24beb5456a0c0fa24 (commit)
via 0a27fed72d4190cc70025c671b5133e6c58d9c09 (commit)
via 90d499086b5d35ac5b58c925f23513f6af2c3639 (commit)
via a611b5cb00f47a47426bf1d4fdca9cf3b7eadb53 (commit)
via c7df954fc4be9eea78a812d04beb6a5534d9a5e7 (commit)
via 469412dd9ccc4de5874fd3299b105833f36b34cd (commit)
via e0f86435f8b3c61e21070a232a07c03928c2d544 (commit)
via 9e9af4be9f656f82922e6aaeb3b6421508403ea4 (commit)
via a5ad232b3e6f39cf2955a8ec3aa4355359a9f72e (commit)
via 1de031c80b121db6f59d189d150ab2b69f6ede21 (commit)
via 7a382c1c50fca0d4bc4c2e618ff6ac222c4e2137 (commit)
via bd757a5bf293aaed6c6aa79776bbef13ca2da92b (commit)
via ed0816bd936492aa7dc00e4fbbf8ff8de1253854 (commit)
via 9eb7b0acb54e18e7cbca196a8bdb320844a858b3 (commit)
via b1308d2c3749cc454f00b70768ee33724d919527 (commit)
via e50142270b699c4960e56824a0300865589dc292 (commit)
via 63c99141deff52f22aa36b9d6cb02e7331aedd1c (commit)
via 6999821f8b1e898f02d0c1196c4c83337c3b565e (commit)
via 639257e981e61472e5fc215eb60c5d545ac5e2ab (commit)
via 69c1e056df50e931ca9cbb4b5881e574583cf9ab (commit)
via fef704bfec3fdec29b08fca2bd0a5226a04c3113 (commit)
via 5613c5857a020ca5189a73df7b58a234d0311bfb (commit)
via eae49211e13efa075d57ab354ea4207666eadc96 (commit)
via 73b9be8b5301c4ac056e10c38a47414867ee892a (commit)
via 5c887dd5f699f953e274ba5981fe331eec8e224d (commit)
via 5aec60eb2f6f0905bfc76f5949fd5d55c6a10f10 (commit)
via a102602bc56e418f9794d653ef103a65f08a5a49 (commit)
via 8f8f815255bf36800cdfff93fd88a62aaa39ce16 (commit)
via 28ad437d7af2fe5bf83dafb4e733978d0b142edb (commit)
via 351787dd4cb8439c0b49472648dd97ebedb5f575 (commit)
via c0f84956d0df0f004e31a987ecc77ea0d293e62c (commit)
via 7610297ab578854a5e9ff1247a77398a60d70f91 (commit)
via 78984959cb385388e29dcc88dc169449344f22d7 (commit)
via 419414eafcee7cd749ee4622ef25020e48b52cc4 (commit)
via fbd1b77155bd8139033b72871dbe7bf5be6031b1 (commit)
via 39250b0a1c788215a39aea51dee9ba4f9937d404 (commit)
via dc089072135ec2e30337879b1f6147b77c77b341 (commit)
via 5ca79eae06a692cca5bb795045ffb8961e2b8ae8 (commit)
via 8b43e456886c5b3aaba1ef93195ed888b15de242 (commit)
via 5eb5f85062a3d43bf449ded1b256d761d487f0d6 (commit)
via ae780a21f25455e4ca4b2fa7e350e7f994e0f198 (commit)
via bf93d7ba99319c4ff5f23f35d9645dc9c3d391c2 (commit)
via 1bb7c059779218d2db7dc4668f998617603e86df (commit)
via fc8098275751f48404a547fd027b2671c5350302 (commit)
via d2fcdd85466668c06dda0fa02ac8c1f4cef3910d (commit)
via e69570ee1886d64fb60c5d9d31f2e6ed76ab2dfc (commit)
via f17e9d8ab58474cfa24910f9066f3b9823e190e7 (commit)
via 22916b0786336394bf84f68ba71875ac3cd48fea (commit)
via 0854b7b1878dc9f8b8519e2efed605acecc14745 (commit)
via 38602d55e09bc9a28b5476ec3614a2483153ccaa (commit)
via 44b886ff15eccb555dda65f93c269ac9d8dd793b (commit)
via b4570e4b3032f9f4a508dbacd8136f79cf42c249 (commit)
via 6c73f67f9c545425befde590f06d690a068a69e2 (commit)
via 9d3d478be5e21151d3755d7b2e6f1cd8ff92d726 (commit)
via b9f1d50ffcac4c4b65cb05c2971106cb06e8774c (commit)
via d1f28ea24a5232d3ea690de9bc8abfb77837f2c7 (commit)
via 25a93583f34f5abfe9c1b24393738547a8de657c (commit)
via 188c9e6dcb2f1342f1ca51e8f68c22852522277e (commit)
via 5f035c0716c3b6b310a736841b16088d984be917 (commit)
via 0abe8a8992948559d225ff120095e42a1a6a36f4 (commit)
via 0a188386c032126045979b7fb7c238d715c81eb5 (commit)
via f49ff00066929bf7c38f9c89ad640561bbb331f6 (commit)
via 2b68ef2f11daef3ab3c6941ebf53dfcd0fb79fbf (commit)
via f7000548a2b79d7e5cb924468117ca4245e6b820 (commit)
via c9a5e2a5b2b20d83f60026459d3a6b68481566c9 (commit)
via d6b687ac7a2bfd0c3962f45ea5e1a72310f4e07e (commit)
via 625ce09c1cfb557725310f602ee66ac1475d780e (commit)
via a379bfd00effbbb0fb4df02dc686c2c110023cea (commit)
via f7efc967ba45350b688e0f661a31eecc15d5e052 (commit)
via c49fbc6c79e0c479371e0ba7be0c8d1137016864 (commit)
via 26562e73d8eb20c9b8289911cee557de8e5272c3 (commit)
via 0097251b8a2fcee7f536807328ea2b73a2f7c41c (commit)
via 83eef883581525d04df3a8e53a82c01d0d12b56a (commit)
via 31cf148787509fcf33bc6adb05bbf16bee48835d (commit)
via 5b9f8a7c6e3873f97365569f50883a866b0a984a (commit)
via d69cf9b2076d63bad3842bc6406a679598851727 (commit)
via 3693fdb3c8ec14bd8ecb4ebb39e4384b330a2999 (commit)
via e68cb8e00166d2f8a9e23c60f68bec04ef0a90f0 (commit)
via 858be34c5a03bb8973679ebf00d360182434dc00 (commit)
via dd5901a6a5bba75f3dee49f9a27640eedad90afe (commit)
via 46a4882b3c7d9ec981568b8b13a3c9c39c8f8e61 (commit)
via fe13dfecbf7d5a9ba3a5d9f52e33e0ddacb39bcc (commit)
via d008ee21562d9f823b3d081b9b60e86509a5e85a (commit)
via 827d0c517e2000102ac7d457109baa63e085c435 (commit)
via 2c5a2be1902b50e34411baa57ff0b747e8e20e8b (commit)
via 74ea4be48e1247b8f7c50fd3578c468f2ff1ae25 (commit)
via 7022349d5c86bae74b49225515f42d2e221bd368 (commit)
via 54990598c4c74b6af113baf801064d3b1837973f (commit)
via 34d16ea2a144cdac8a89050d9aab723fb675cb45 (commit)
via 9a24775b97646827396073d0d7e510b9694331ab (commit)
via 9521ecda6835b338d61b1b06e1a91706711b1d0b (commit)
via 80a65e9b8fbc93d4a7548ac17b8094ced23f66a7 (commit)
via 6b66338c70422d670637623cea8dc3b62e05e7de (commit)
via 50a421ac3ad82886afb0916b112ddeac4f9f73dc (commit)
via 51abb421302bdd86946827727aebc878b5c756e3 (commit)
via 6c5b2ebeacc2538cf342cfd13c4c98ff018e6c9a (commit)
via 7c44b49cb63662b76c6301fdc8e022d7aca655bf (commit)
via e439fa140afdaedb28a97acaa2b0432b884d8a91 (commit)
via 7525b645dfaa302091591d0f87d9682ce988ed13 (commit)
via 6c869779dad0cf028bd787e6ebbc0780ee4afe13 (commit)
via badc00202024619e1c868b8cf70fe6351fc028c3 (commit)
via d78bdb54ac94e1c38dc4b8f0d50b5fd202890887 (commit)
via ca1fa5eef2912262a0a33875e9a23f2e79a72328 (commit)
via 2434b0199ddcd9419c55742552953b0a79d00ebc (commit)
via 0860c437cbe4efd8752531d0464007f448fc8274 (commit)
via a826403eb6f0ad2fb8c88b45ea3cf5ba39cdaa75 (commit)
via 0638b7f90293ac01233dc6406e4c9d5da0ed9e24 (commit)
via 8f84fb0ee87e8f149523e13815c58e1b664d184f (commit)
via 18e9961f02b326923553f34682f4dcca0f25702e (commit)
via 453437863c82afc8ed5bfcb937a2e297957fc212 (commit)
via b57af50345945f32e6615391ac62a4f589c0fada (commit)
via 6eecf35f97e1d37e49e385ba599797dd1c8afd1f (commit)
via 56496dd4d6519c26bb375a78588bf56b28b13512 (commit)
via e91a1fa7d49482565b5f96a2ca9e51ce6327c4ae (commit)
via 7ffd83d70f2792a8a538e8599959a6ed7f5b751d (commit)
via 1ccbe9985f607b291bb6fc920beda60225f1bf83 (commit)
via 0e30d991804de9dfd368653d6a88bf3766a27ffc (commit)
via 1cf58434bf9d90ea0669f97514c63dc1ccf38f7c (commit)
via 23fdd69e42180578b3e15ba8f053fadde965bfe8 (commit)
via f04bdfa7b261402bfa9dbdde58b2feb14becd8a3 (commit)
via d47a80260cd52e800ffea7eaea366c34a31e663c (commit)
via 2ac3a7f5ce10dfdbda70a7d16414ba780677fe38 (commit)
via aed02419fb32cdf3153e81aa3474ef41248f34b0 (commit)
via 5e2ac45d561dffec63af4c83a545b46db032c70c (commit)
via 2926eb2c326c625f54db61796fbe034b31f0958f (commit)
via 92c10f5f61e8342eda76fb6927dcc1c885eda96a (commit)
via aa595247af472bb95bcd36c166335c851e3e752d (commit)
via b9ce864ca8dcd0e52e2b7c655603b181fa19cfbf (commit)
via fe53b4a4c47df9c0bb2fa7f0de5a241f21cf352c (commit)
via 9ff114ca5d2c2753f1ac110f8586d0040c27a7a3 (commit)
via 503294e755498eb6545ca72b338c5037facab7f7 (commit)
via 9a742a902f48369144cdbf5333392f128c74ab7b (commit)
via 6b9553e2a5d2ba0e43d0bdf382bbc6b5011032a1 (commit)
via 1fa4ec6ae707402c6b61cde33cfe4bdeafd53f82 (commit)
via ad71ce8de7dba823f5fc478e6d5eba03f1a2e822 (commit)
via 96d01d93c4025cddeff197c98c7947e2b8f427bd (commit)
via 96fbe52eaafef0e7abffc3e4d25fd89ae8464c88 (commit)
via 4f501a245f67d0b43f245b09515c87bfeec983ec (commit)
via eeb2f20a764bee3a6a1edb9872467d044aaad848 (commit)
via 18da07cd128d8d33bb6d01b2c59f12bd7f77324a (commit)
via c6295c2290d4dd89e588e26f6772c023ab154858 (commit)
via 39946cc227a1bfbae6d6a2a968f4935d9f8b92a7 (commit)
via a6798baba212170e427d2f9bd99af12f1078b162 (commit)
via 376dc015f275575e0aa7be9c46476db5506ff836 (commit)
via e10c9c620c3335731bb0052987affdc40942fd71 (commit)
via 1c5c938ad860811644774ecea66e044110967cf2 (commit)
via 7e8b60085eb3e6f2c41bc0c00c0d759fa7f72780 (commit)
via f8ad2513754f5a53fecb407cf64fcb586836b60c (commit)
via 2a143b99fc4a5094a9cf128f3184d8e6818c8229 (commit)
via 5c811d30d12b6f7c6c6f4ce6d03408d987154548 (commit)
via 1f0c13579f6833edc85b5399486edf95b4b9630e (commit)
via 0a2dde4a321d2f7bd2ded9a558b9ae92892de0e2 (commit)
via e4f2723003859dc6b33ca0dadbc4a7659ebf1643 (commit)
via b55f3386e45d8ba4af1a70f0684bc0089060d600 (commit)
via d7de64088c7ce0d642c73feb66f408c601cffb0d (commit)
via 686335cd3c7d4eef6ce4e3e54ef0e75929b5e4fb (commit)
via 9866ffe25a0fe73f5153f2720650baf0dd9cc828 (commit)
via 654670a4f0928e3eddc6395d6804deb2e61a0614 (commit)
via af471f828cc74d65b50a7531ba2c69522266cfe9 (commit)
via 3321e42bf2b5819b76ca36e8964fe7cf9a8ae9a2 (commit)
via 59e8523bf8f92db8371d3a10bd7e4d7fe03d417d (commit)
via ef32532f22be7e98c25480449fbc7a80d1030e1e (commit)
via e234de6be5cc96286e0efb90e8d9fce51239e901 (commit)
via e69f32654ac724c46c0f4f645c8a49189c7b43e4 (commit)
via 5dda32094f668a3e9738ea9b3aaea530d2bba7cb (commit)
via f493882dab762fb49ecb8685c18a85edfab5e6d3 (commit)
via 5b86dbf4549af98c4428da4764182e03f22c58ab (commit)
via 765e526c75506a7d9644bc7c137ac1923fdb1369 (commit)
via 70e65ca8e5d1fc984d58f6137c290e807fe772a5 (commit)
via 37b2d327512baf2f39020e44958fd1f11db46a91 (commit)
via 7c0ed39626e3193adb70aeb98d3633787579d6ec (commit)
via 0f2425c4c8fdaa7822555bbb61468b46d4e4af20 (commit)
via 443701f5098e8c069d5858ca597bf7a8ba4a8006 (commit)
via e491e58adce317f8ed46aa7a15dc563131996c50 (commit)
via 9a23f96e919ba91587d077b1d399246dde4002dd (commit)
via b9f04fe0dfe64bc6224e7bb96378607f17da7446 (commit)
via c7dffc390cf861b313001fd08049a5fd8d758d0d (commit)
via 22e5c8027aef0cef99f7e215046e2f72eeda0347 (commit)
via 7755ddb77d227d1d5c1b211e989fafb17e26765d (commit)
via 5f0f0847e23a57d4e95c2c639e803e6f51914efc (commit)
via 0afcef5384c656b69706fed61d91f6d886c4c0f1 (commit)
via 823cb06774ad6a2aee0afcf6f011c3a134f25747 (commit)
via 37c0b6ee65941d54fa8064c21b39f97fdc318156 (commit)
via 7ef3addbe195b6283d0baf59e081146dfb211c97 (commit)
via 3819af136deb7ba6bc2058d7848cf80b33dbe51c (commit)
via 34e0882b83aedc6fb9c7532c89afaf8e0043b7ce (commit)
via 34ca2bd7ace5e208d46fea6e7a56a5376de0abfe (commit)
via f2d394fce1f37a07148719c4bc919ca7b7a0b025 (commit)
via 972d8a18db78974f59e1a6b1dc02f7e5b7d226d2 (commit)
via 0fb0a7677827aea3e7ca1fdb2dfd1ccbdf6c2f71 (commit)
via 5e89eb3ab04a378133ff3da1ed23d4bd89a56b5e (commit)
via 3804a3431ae02bfedfa1347864444d9520161604 (commit)
via fd437cbc432d5421492a5b0e371750de104cce93 (commit)
via 90efb6422939ca031804266fba669f77c22a274a (commit)
via cefdd1cd64f3b67aba1b219547b8f895c22d48ed (commit)
via 565ed01a4e0e3584f24580177822a5271b1c0c8b (commit)
via 41e52377486950e32a1bc121e4c42abc8561aee5 (commit)
via 596dc58f33e20bd2784459dc0931e92922465444 (commit)
via a5b4ee9451dc9ffb6aa29376fc03943c53c6da0d (commit)
via aecbb010f9d74b574ba89a64f45cde2407e53dab (commit)
via 7c8bbca5e670b5ea44b61ff30c5c7fcec47ee405 (commit)
via 988f6b3dc615173d6d78a76ac26c109b4582da74 (commit)
via 5fdda9d6a4c3520f4787d96c4ae293783fe6262a (commit)
via 7d5b8b81d33e3cda028d814737015a7efa6b5035 (commit)
via 6afd337d1a1a789b71d77b157529c08250eb9093 (commit)
via 1445030f313d9b251a6a27c8bdf52197520396e2 (commit)
via 176047c9f2ec8ccb4e0b6bfade4f21cb25d986e9 (commit)
via a2d64ef20ba133be3bff20d45494a65dec6503be (commit)
via a160cc4628aa125959dc65983d805500fc58512c (commit)
via 074f6066845cb564751d4fa604e5f591c8265b41 (commit)
via 28e6a46bcb00e9972540e4d12a98cc3f6fbb9d87 (commit)
via 663c44ac4d4336e99c282705b1d289b365b273d3 (commit)
via 7073b5b9edc9e06974bd733b7e4b3845d6d6f690 (commit)
via 5b5f4e6f8cd250e07ec98278f7223e57b3d3bb0c (commit)
via 34bb2571d40e1ca323a1b60e0827a25047890faa (commit)
via f1902523c9b7941775a2c64af89de0f111b8924c (commit)
via 74081948353b117fcbe870fc3cc9ebe0f18fdcf8 (commit)
via 647d4de92e061a3a2be83740d7f1bf63e5669630 (commit)
via f8d31560e1f64ea35a4e6b67c2834c5f89ffef20 (commit)
via 49263c56bbc622d5a42cfd37b4f5fb6863cd7d24 (commit)
via 87215ad1651ca3094d813eae06233fd7259b37e5 (commit)
via aab921adcb656e4eefcc7d0f14241f3d7504400e (commit)
via b1bb697ea1259c0977c38f1ec5f2239cbe669869 (commit)
via 73784fa565bd66f1ac165816c03e5217b7d67bbc (commit)
via 6e41ddec97d402c6c150701da0f70d40bd6ed5ca (commit)
via e68c32d53e44ac0fe9f48637c0113da42b62644a (commit)
via f6a36b0c9e537e4525f3b0687a4f76b4f77bf173 (commit)
via b80c727008fc32d5271f3966be4e2a43badf8055 (commit)
via 452bf675ea772002aa86fb1d28f3474da70ee1de (commit)
via 58afddc6c7c5eaacdb68cdc3cacd0f76a3d01490 (commit)
via 98973784dc4775dbce3470b0933d1cb13f8c5a87 (commit)
via 9d3420f5df5e14aa6ad43299d20b60652f0ed7cc (commit)
via 46434633f9cee98afac1cf945ad00c9d4fdf5a4d (commit)
via bb4b64b0dbe015a4b3fb3993273f8b9b0f8cb421 (commit)
via 11db943032396e1fee31440b0a331511dc0f4c00 (commit)
via 8dfb7cbf8401be97077f5919ac7473bdbfa8b692 (commit)
via 67d888f5c801eeda240508c567775fc1d66ae178 (commit)
via 5277199aeb328247d5d37ad6f34e4cf200fe42fa (commit)
via b270e6f9e09814c82e198859f218b37118eaf098 (commit)
via 36bd8eaaa0afe3ff8e8b1b1b9edc9686f5c159e6 (commit)
via 56f37645249752378520a1c2430225c9cee09161 (commit)
via 0b581c69fe7186d7d0ea1283c7ecf9839a8827cc (commit)
via 14278e1fdbe045df184d6dd546ff6a1e9e3c3797 (commit)
via 4971c9a74b47103582834e46d0185390379e60b3 (commit)
via e3e41d588adbe26a6ca54338dd4915382d981a3e (commit)
via 0d999a6ef0f98b22430d70951408869864c979e0 (commit)
via 329d5e7e56f852dcf9956683be4345c165d277db (commit)
via af3881e612908b6c0b1283c67d18312cd219ca13 (commit)
via 487b6440dad57440939fab7afdd84a218b612796 (commit)
via e3c2f928b8f9afce6fdedaa1ddedfaa1d305aa9d (commit)
via bf223d3e808e6fec9ee165d3d48beb74837796de (commit)
via c973d0aa4a2c737ab527ae44a617f1c357e07364 (commit)
via 284d826d9f57e3ff47e41f61f3250c8d029baaa3 (commit)
via 454c9bb956abd5451b6a46c96327c5ec0884eaed (commit)
via 7f3d21db922ae120961f4e8e2cba7b8a919817c9 (commit)
via 45aee2da6b48c72c55e40ed36fc089b7e29617b3 (commit)
via d7dec582d122314fd496c862e23e16bc7d52b2dd (commit)
via 2989a3651d3f6ad8c7cffb225f77f4fca8868890 (commit)
via e60eb2880368b4e4752577c626ab0dadf0499cb5 (commit)
via 6d580b635f8963183540b816b20bb9c240154497 (commit)
via 86dcbf50fe5f59fbc35f38f02ab6c1803c29f383 (commit)
via 7649770c8e52afe2696a70bb50ac3039c844d381 (commit)
via de25939739ffe9a9ad7cec07a35bb2a1e430fe39 (commit)
via dd66b39984d2b8a24b97638d65eef5cfd7dcbc5a (commit)
via b0cba12e07cc17683b13c6275f58a6a829f96d06 (commit)
via 4c8aa72d0eb714a91ca2e47b816d0b4a0cb27843 (commit)
via 714da62f64ef5527a22a3e897f7e21f69e442ade (commit)
via 545bc2b377db80aa6edd0cf00cde6f963735f8d1 (commit)
via 12601963cf4de26be1db45ee58ac3e282936aca5 (commit)
via ba7139188c75a9c620cadea59158c5ffcab28acf (commit)
via 44d0fb3a0a47c00a296f52a045a47dd0f1ccb810 (commit)
via 8c1d4b8799912076b2db1edb1ae65a5d62a11723 (commit)
via a5afdb1665ab0e030034d40f871b5cc17cda3969 (commit)
via 1a457753cfad05989574c671a221ffce2d5df703 (commit)
via 66c3b5f87cd9a12be6734587720bde4040819369 (commit)
via 47613aeb8a42e89e21e63e1dcedfa2cde6791e53 (commit)
via 9c3cc99930a08934e16b630e92a0d285a434f228 (commit)
via 206726fbfdd521fbb184daedb71b85030453bf0b (commit)
via 0335ac6d12906bfb4b48410d8a7229c21c727cf2 (commit)
via 8975f864092f0a1ba561622ba137b305da4a362f (commit)
via bf0ec4c2769236d9c471685409605f50b01479e5 (commit)
via d3abe1c8ef1ec9a90932b801138a144dcae95100 (commit)
via d6382fffde99214ce4aee99a208ddb703c647008 (commit)
via f978cb06dbfbd93dbd52bd39d992f8644b0c639e (commit)
via 2f5404b3581d125a96f14d92c4a7985e8156d1d6 (commit)
via 0c54f69295208331faab9bc5e995111a35672f9b (commit)
via d7f00f429aa525816cb3895462113326b6cb2fe2 (commit)
via 79a94a2ad1e6e2f227de07427481e4bb8be84504 (commit)
via 34c4758cc210e2ca042b0373938e57fd6844f89d (commit)
via 6d545e31f520d42d921c6164ec592e8d7614d315 (commit)
via 9ba349b5449bca9678c1f0840074761d1d3c5261 (commit)
via ca145713f354ebd5e45ddf393ead46782d1f8b1e (commit)
via c2c2dd9f09130fcdfc6bee999705206644f1f17f (commit)
via 483767a333faed7ac25783459c0c9b0be4800932 (commit)
via 1a682d061c5afe8ffdf3a594730693fb7d447848 (commit)
via 98c5dfc99444094652c2f2259126f70e5cacf56f (commit)
via 93ab9c0de7ba4a477720622c7e772d76f646e3f5 (commit)
via 9593aade74f0da0c08a4ab55e4c59173b07b1f63 (commit)
via 76db0a2e171d2c6780e0388840e3a10ffe7e9ee2 (commit)
via de7985c3cca1358b21b49a9872455e2032f48ee3 (commit)
via be7d3cd5f13196dd070978aa48c2832c351c25b6 (commit)
via 1c90d9f022469629c255d44664b4452998168359 (commit)
via afe37d6be57a505e6abd01778474a2b73dff52c4 (commit)
via b348037fd8c0de5c39cc43970697c51048a8ec9c (commit)
via 5af3691c758717e295ba4d03b800f3462a404056 (commit)
via e7c9de26788dee7a620ea9cdabd7466fb07639c4 (commit)
via ca6f2be7f6bc638fd4fad48def1fae4ae4d7906e (commit)
via 4c2da80c2bdff7761eb5b3d9c03ffa0c9958b6b9 (commit)
via 957e1fc1c5d0262e4b2f764cf031ad1458446498 (commit)
via 3ecaa9fd728f6dd23de85efa0ceacf40da444c86 (commit)
via 7ed1dab994fa1c0cf49d10608b8e77271c9804b4 (commit)
via e8c6b620f70d8cced4a93d8857ad2a57f08a361a (commit)
via e4a26669b914a1a1d519325b3bddf4bfe5078ea8 (commit)
via 142311d325b962730f7d0247cc456f06e5c7b62b (commit)
via 978c05401b0f0ac7a94cca7db19b1dec0c5bd698 (commit)
via 0968fbae6b16ced72c356c14aaadfe366280a464 (commit)
via 42fa2e0e1b7b135ab30f2f78074c3bfffa04d0cc (commit)
via cc4a945a2687184c7cd4a0572e02965829517408 (commit)
via cd3af38d7b3e66117e7964b6fea45e57d47169ff (commit)
via 0f76ffafce1e93156094b393cd79489f4fd8de3f (commit)
via b1a6c1cea365f80b90c0bca795c8d16fa0681560 (commit)
via 29592bde87d250ea56e8431053918899d3d0c16b (commit)
via b33404388e5bbd8a1fddfde73cd4593ae2b557e8 (commit)
via e88e8651cf3415ba440ee17eb1b22b7d2e8368be (commit)
via f5a29eb0a6637abcafb1e54d53fae9bcaa6fbbd8 (commit)
via 57757c2f092ae7fb384e64df66c9921ac30957bb (commit)
via 25d28c91b89d8f4a7e78b98b01e2c2382cea3e60 (commit)
via 9165f4548be8612161fb90cfad9bd0cc6a752c90 (commit)
via a26c49b78ac3cac3ac812304bc06cf2beb1379aa (commit)
via fe22cbc418b35ed6ea3252a204bd351f8c201e0b (commit)
via 24d3e51bf0612c6cf5e9a824b982e7ed38e741c8 (commit)
via 1fea592a7dc4c6639ad21321a2cf7b1f0bb55592 (commit)
via cea7a285058bcba5a54d6493d6914c720f5c40a8 (commit)
via 206c9c79ee24759c0e0af96e6722298b413f2716 (commit)
via 5d1ceb0b871a78601bbd4789ce137ff39c934a6f (commit)
via 2760f24c4942853eac7b921e4b8843d57a602654 (commit)
via 8f5e83fb735af978b99ea6e22574560bf667d1d6 (commit)
via 7b005726f910af908f0b5ba48b3466d119453b06 (commit)
via ba7b109b296feac8cf8cab74db5f824dfa631610 (commit)
via b28b8b5e31903f59b00a4664b8204409e1e5bb91 (commit)
via 2980ccad5958af178f80fd2a2a0fa781bf91b0aa (commit)
via e347efc38b8b1eb6561248875c4bb2f9b074894b (commit)
via 0dba2a6c09c4010dfb2eb5abdd991208374947c4 (commit)
via 16eb6b2db49e6cf2fdca56efd37689fcc170cd37 (commit)
via bab55c0522f47e692e367bfa341f4e19495cd8ad (commit)
via b3293efaf8ddef1eba52de14be47e3d33bbce35a (commit)
via 74cbb09e74dda17fc79e2ce709116780a90310ef (commit)
via b7a18930e3925c4092bd975e95bc3603aa1418d9 (commit)
via 2010d1a3f87927c3f41b3a2509dec13f4f72ef19 (commit)
via 1d4af308ae58f459a2bfc50de70832284f1d3d2a (commit)
via a4819f54c0006554179631189131080be859eefb (commit)
via e2a084f2c152f6358ba926df22a313d3ef8d8509 (commit)
via ee0c32930c355b73172b2bef987e2a48ea909b12 (commit)
via fdffd6f4118652bdfdff383943f13664af4b9a45 (commit)
via 3232fabd2d0094d74bd942a1f2c5c284b0cd9260 (commit)
via 55ef6584ca8466e293e9f1b310c0bf44500c11b6 (commit)
via a66930b357fee4ae716bfc8816e78c0f9c024005 (commit)
via f02fd7745d003d65fd3b981618e07b874b721d79 (commit)
via 91975afd35bb0c6c0fc5ce0794ec0ae8ebe2f805 (commit)
via 9f06dab1e3acfb675669348a3ff331580d4eaf1e (commit)
via 223b97ba9d9d1aa61bf22058f637c779c7621e6f (commit)
via a30d3a7990e73c54e0bab9933e48989376770162 (commit)
via 2331fa3af560ee880d50e28bf841e1bc05b0c3de (commit)
via 744e4fe1db7099d91f71c50c83708cfef5d3d0c8 (commit)
via 1c034b67a03ed928eb3916034eb1e782a8188520 (commit)
via 773a1edcd1086fc76a91055bec67e2d14d76940d (commit)
via 0d50bde32b92821c9f1f660d273e6c996d26dc9f (commit)
via 7f968c899f21643322dcfaf807ec7d7bee7c9974 (commit)
via 3c9ebddd93ffb8b44b8cc69f3be9db08c861368e (commit)
via b51b225eb9b03b627967108ee3de38ada5de219d (commit)
via ac991630ca57ba6a00d0d1358786164248d140fc (commit)
via 898e0c8e879394ce0fb8a08fe85929a29f3ce55b (commit)
via 26fcd5d7572ea1bf0cc697158969749420900e0b (commit)
via 7c218e6c9c88cb8120adf1a7a530cfdec23aaf81 (commit)
via 31b68d4ad72ebb153e48e16c8d9edf3676a8af38 (commit)
via 2ec845e758762030f2333c21fa532fc57fe3762f (commit)
via b3bc84537bc6de78e2bbd550ce9c57dd4b7e2ec6 (commit)
via e3ad2841b1c75837a901618651fed23013643e3f (commit)
via b80cf838447322778f04059a1f58b78ffbbeb597 (commit)
via fad0444a57f4715c1afc9b0331014374e6faccb6 (commit)
via 6e7bc05c53fe65089f290757a72508356b491a6f (commit)
via 4a45905b825ef230a3fbf6bb7857339b39e5af16 (commit)
via 7cd06d6e89c9c17d358d8edf0b7faa9dd87edc3e (commit)
via ed1669453be56d71351c77377acee097aefe83b1 (commit)
via d419f42dd3f3635fc036413258ed530676998191 (commit)
via 4a2b031d5452226cf7894f313b3aac603f7ec5fb (commit)
via fd9770d81fba7ad860e8bcfbc13c77f21041f1f3 (commit)
via 2e9246e077cdbbff0a56a810c5750cc895382ba3 (commit)
via 5f66bad45bdf1c9a9806ed27e64b724d6ba50b16 (commit)
via a4f320fd1b535bb80dc9a3ba7c50ee0061ec0c6f (commit)
via db99ecc08f5b66fbe9cb72e90352c7f77ec71a6e (commit)
via b8f4abd342cc54bc2b90c796a2aae93e6c3bda6b (commit)
via 70b0cf90bc6c071895b989666bcf3e6eca7b99ce (commit)
via 73d5923e480944e2d66bde8c59f4dff298ec57e3 (commit)
via ddff3d84be42fa80c2c9aaa635f2b9269e74e4f9 (commit)
via d84ed528d4817b0ff854006b65a9f6ec75f0407a (commit)
via 75800d2cd6a6cea6071dcf8f0c2ea871abeeaf99 (commit)
via 262cdac76d010307e601d1a7da49a0cc1a53be05 (commit)
via a5be90a4d95b535a67e4e249e733b208d36c1e56 (commit)
via a2f1f308535745e1e8b1896945cfe4ce0aae59e7 (commit)
via 1ef692ea23714876cc30b1a3ab3ef33a1369f17a (commit)
via 4d36230d59903b92fbe2b53b31ed64a884860f0e (commit)
via 60c4393c5085dcae64c84a51590f8a98199f9221 (commit)
via be897fb774abfb0a44b3b87fe77bccafa336e638 (commit)
via 51b69c74c6464c59a5621d6f3d3967a576043fa8 (commit)
via 2141b1100568d4b10d6f22e6cf1741f1816dc348 (commit)
via 2e957b16d45b8fe4396b16775f0b3fa77f71f0a0 (commit)
via 575934368531e7592a7576a39a4320d88007ce88 (commit)
via c48a4d983400ade9cfba0531905245eb454afe08 (commit)
via 7e5ed83b229681f57d807f79fbea3703c8121afa (commit)
via aacb3b6dfc7a9162a049dada22f1079809188f02 (commit)
via 54387c7fe27848e41a51c1eccc6a24b3d6d3441f (commit)
via 791fb3d7a58b86e5f30229625dfd33659f33fd6e (commit)
via 4bbd4ef219c5b4c7d437618ba8937af86dd1032e (commit)
via d44c746aedeb31aacd867edc2da30dedc1e63e15 (commit)
via 93e0a1eab1c7963d77513aa503b129ea03cd6d39 (commit)
via 10683b8d116a6b6c8063dd2e10263b3639816c6e (commit)
via 8b5f1ed8777df405f3c7b87472b1506f5125aebe (commit)
via ef080e7ed4a373037231e709bfa1a909f4eae0f9 (commit)
via 49ba15a23a9d3d8a109ce2fd5053822eee7f1fdf (commit)
via 894dde0ba7eb0789fbc1009c9541ac6d68389968 (commit)
via 79c12faeea57e61364b6a7a3e411b096edce989c (commit)
via 2b94abd48aef2d91bae1c35c8c10ebfb8757247d (commit)
via a808670465869100d4178a572da8a1503d727f3b (commit)
via 242f30e67cbc2aba8314ba3bf702efb1aaceaad6 (commit)
via 4c9dc8114942ec02e1adacf9aea6d65dc5849e9c (commit)
via f726cc1cb69ab0e0303209d08effb10b99007080 (commit)
via 8bdf0be19d2777565a8b1c88347f65d6a4b8c5fc (commit)
via 63d4980d60dd137996fa282ae1df2e3fcb4519ee (commit)
via 104f0515d038716599728f8e2b58aefe3fc188aa (commit)
via 27d41eac62a6a1aa803dfcfba2be61431e7b3d13 (commit)
via ea03d0d3c32b22aeddfeb139a4a515f7e5961347 (commit)
via 25aa13e522c595cbdbb3868f1daa434a17ba2ab2 (commit)
via 6eb1e6a8c1c83d0fb5b06192d1ec218d3a358f23 (commit)
via 35b4818d03e8d63a926afb235a21c2cb64b14b23 (commit)
via 8e2141c6fba6daea1555e042da9de49ec8b1977d (commit)
via b468ff4cbf14744d512e464b4be9681d3e0302ad (commit)
via 229d26fc9ebca61b8d899cf8fe4342a6cc9795ff (commit)
via 11f10936902160e9b1474fd0a06ea44a5a6445ee (commit)
via b9c0e1b40ee4e7eeb3e2850720bf30f28e2e17b1 (commit)
via a04b53379a18c66376b4130dc3b4936e6433a0e5 (commit)
via 133193b8aef9f74abce69ec84beca227dbd7f9a4 (commit)
via 7cbc739c71fcd82fbfbf180ff636e3fbee4f30a1 (commit)
via 46a62268b87bd5e8215636b695380bca9a9f3b63 (commit)
via 02ad7fc29f824a9742f8386bcf5793b81ff798f5 (commit)
via c26bb06769ba85818bcf61126c94c2d517182fd9 (commit)
via cfe7b9bd58c634bda974e291ce95030b1e42a690 (commit)
via ec06425629516e11f3106d51fa85f49da147765f (commit)
via c6b78c965a96fb152fbd58926edccb5dee2707a5 (commit)
via d4aaa2a0744a28143f0b923802b6d1fa8db15887 (commit)
via aafd38357af0c9c225f56afcb93cc3a4da763ccd (commit)
via 031ed05dd2756557c3f5cda6690a9f3220918ffb (commit)
via 7684e58062af4886aceb05ecd83a956bfcd14aaf (commit)
via 8a2df5e2df374289e00ecd8f099eb46d76ef982e (commit)
via ca4cf9b9c622a5695e01f7f5815a7382a31fcf51 (commit)
via e8d84ca1b46f899b0b140fdd146fc7b14515267b (commit)
via 47aeb64c10ec9c9f06d2d2f4451f417d63b023e1 (commit)
via 645b28002711eba22e8a4df3733a01206ab7d36d (commit)
via 8ca02f6a216eec3ada5936f189947c424d83d766 (commit)
via 723dfee7b84099118e849c90e4e95dc275cb9d97 (commit)
via 15a3a14fdd725c049d6b2aadbaf66c9be5ed36a8 (commit)
via 5c2c0020fbe7110e6780ec1ee85ff11833779f8c (commit)
via b6f48cb022118f838357c07d32d122e9434c0209 (commit)
via e12c9b7a0cda47a87b8203ee9906fd12f68e3666 (commit)
via 4fa8aeac1972ed07261919ce652c886160d8cf2f (commit)
via f746a1544499acc20aa28dcdbcd2ea6df5548889 (commit)
via dbdda973f31f275e514c311362a98b5f0f3480b8 (commit)
via dcd27ddf875d6b913f1ddb0573c22b0931e36061 (commit)
via 82c780662512c53c3a2c7f1e1f66474ea6bc04bd (commit)
via 13bace4ab963a56102d8646cb16a8ec505536107 (commit)
via b57e815ca1e75b7897caa99c2d351f11a543c4fe (commit)
via ba8826a82a29a19b78c18ce4f44fe313de279af7 (commit)
via 47826cdbec2548cd1d25acf4cfaf908ae88f3325 (commit)
via 33d69f87279fd33a951eafd025b4d188bc71d97c (commit)
via 47e77640be31fc1a4eb3718f594ed5fd0faff065 (commit)
via edb0c9cb22e5be90a76b8698b45e9eaee596f315 (commit)
via a778f165ad24111597fa48beb4a62359501e0076 (commit)
via 42edd901a220d9d963d2121d7014b81d43c1ac66 (commit)
via cf3252992378872212eeaaca090fe3b1491bcd3f (commit)
via 62d2a18a2e4bdb3c278ecda54c8317f179375d28 (commit)
via 2d2dbad0605c85bb75662d2f219b1b886d5ab4cb (commit)
via 8e8f892f7033096576777216f37f922364bfe24e (commit)
via 2018ef80ae7ebbe410aed0e30367fca27e3eb2d8 (commit)
via f2e6a8430e72d58e70aaaaefbb32dc3953d5cf33 (commit)
via 6c4e7b6bfbc4679f695106de2817ecf02b27c8be (commit)
via 909e4e716c4d77e33357bbe9bc902bfaf2e1af24 (commit)
via 62a5222fdab2acdc129b7c7d3713e7f349e26029 (commit)
via 29866fa186ee3ebda5242221607dba360b2e541e (commit)
via 70b448ba7c521d6e0881f38aaf20d330fe510716 (commit)
via 7179e0e6b2e0ed7b220af8836a88ef308faf5898 (commit)
via 684d5a10b1332e2a1b03a1d6e7a899ef87b3ea16 (commit)
via e4943f2c7569a829eb6129f10f7c5401a96aaa08 (commit)
via 804a4093182a4bdbc30abfd3081a3f58c3bd2329 (commit)
via 801f648cfc26f588aee8fc37ddc4ac959f331bd0 (commit)
via 927960f053ec6e361236964c3780d2acd5de4084 (commit)
via 9a0f1d5099fa375299115afaa1ef3acbddc47f51 (commit)
via de194d8575765da6c7905d09b8675c59fad035e9 (commit)
via c5ed057625f886b14d9def3fa7488fd8bbbf7dd3 (commit)
via e4e21d9ed14c74304bc060a9d892c0edfc4c8ab4 (commit)
via 27841e762c975f6b1ffa0adbffc22405241262df (commit)
via cfb7e58b483faa7ca4a3a8bb0030ed3e990b2c5c (commit)
via c646b4e87f4b3445f83d48fa7d85999dd702c50f (commit)
via b6a577132682c291255f91a6bb56a3817048e905 (commit)
via 386535dd91432b784f6a46f8a92c6a599ba30174 (commit)
via 0a79bef4f206d89214c48454a4302d6b6f8f68c0 (commit)
via 25bda061bfe001db0b10a99e289293cadad5a0c9 (commit)
via 89d249d2f26884b5e62301541aa9ab43bcaecb67 (commit)
via 8e85f840e1870b17dce6a5bdb330c5bcd85a022a (commit)
via c45ec17c07d8aa4554b0b2ca67a5f4dc2c87acc4 (commit)
via be966d4207ff8df6572a23b911e5a69a2ab9370f (commit)
via a245927022bc4351fafd9e6275e217021ec93e08 (commit)
via c6756f62e04846d68c24ee922ddb0377d4bd17f2 (commit)
via c5bb8910e80c6cd80c63541f86471c18375c8198 (commit)
via 1d550c828c00978860de9ba35b9ab5b182b968bc (commit)
via dd57c19c1abd19c71538631cd9e5b0f70eff5a5c (commit)
via 8090b426b57bd9ebfa4c593ba3e6f939b2911739 (commit)
via 6a2c1b8790e58ce0688507b5b1f8369aa621a665 (commit)
via eb3ff9a55175dcdac8328b558d54951a14d719b1 (commit)
via 6e1dbf8cda1c66256179d0b15c96bc97ea5cf7b3 (commit)
via 78b13106edcd14d87b4cc0b7f8dce8db8c2be489 (commit)
via bbf2f4dfaec5cf2e21b0935300b4921f0b5a8eb7 (commit)
via 330cdd98910dbd34e969f60d48688fb81c2b374a (commit)
via 2a925816fc3848f1d48c4783df3dd54116907a57 (commit)
via f27dadca0ad18d5a0ba032c3d3f6a60ea55d887b (commit)
via caa74962b638d9d468e77dca3e410b061af9aa43 (commit)
via 676ee2b5fa6ae41342a9fcd2b7ca18693fa0535b (commit)
via 046c08c44b786410bc743963578ce90b5c21e468 (commit)
via 5bd68487223b73dd5f929878654f0e3e2c66c89c (commit)
via 71d01ca93b880d4fef93f52062c674ed62768e45 (commit)
via 8880f2a9cb5151ce1c2714a75d123ba0f63668ac (commit)
via 65547233e04b32e087f74f8f5e9d3ffb6fe2c198 (commit)
via 8f14146e1317b7b416ce298fad1a4f3d1ccbeb2b (commit)
via 0f6329bd7fcc8952aed5a386617d12529771415d (commit)
via 86038de0d810f8639d22573921d2589a99829b36 (commit)
via 211b0bed95b3f6b177a541ec52302b8febd6b49c (commit)
via 2347965cd99810f5ff6f638880e4eb498a8ffa82 (commit)
via 40f4af2873b0631bc5f1d4ded2070abe2de2217c (commit)
via 053f805718fb3a77169afebba83cc665e9509e7b (commit)
via 6661ad487334212e043ab584030f533da358ecf2 (commit)
via ee77ed019f9993ed50613a687bd2a19241c98aeb (commit)
via e58ff055fa744a16d8e854d2fda9cebce164b600 (commit)
via b4365d025e0b5c025658c7ffc4108502d56030f9 (commit)
via c55a47e7237ebac17df73183d214d90400a49455 (commit)
via 5d2cbaa526279a02cb1b70e29246099f0b8287d0 (commit)
via 55efceabc6149e96134c10676adb2b1e79e0ae13 (commit)
via a502b0bbb8f3fb7dca4f2a12aa04afa28173f0c2 (commit)
via bbe7ef6699236cf94d0f4e597bdce99158905edc (commit)
via b7d7d4598c7c7fff209a1055cbbd829a0a68d7e4 (commit)
via 429d795d5074db648fe07dfd811c1c150b78066e (commit)
via 0bae9e9ec550c940e263b37f577bf11b2dabf934 (commit)
via 2fe40b6792e98dfe27e4521b2b33fe0f335ea1f0 (commit)
via d42c267e9b129279994dc623c0bdd698a2b67286 (commit)
via bd6a8c1905edff5e8fbfc94272240574ac9af231 (commit)
via df2f63a6a0fc19c54e58aab8afe262baf3cb1a3c (commit)
via 0aa37b654c0f31e446ab47826f0bcbec15d0112f (commit)
via 48aeef91c248291dd03583798904612426b1f40a (commit)
via 61a0857c0fb512ce6a2ba4315a37fcce744f6045 (commit)
via 04ac15ab07e6360320a1c8fab82d25340c22a21f (commit)
via e3fbc3da1342714b4943300a5a590b73f00acf08 (commit)
via 70391b29cfc701f99b21b76100dc69531bf9eeec (commit)
via 2c4d9cbe519e4050d067069e2d8910c42dab0157 (commit)
via 4162bb66c684478bfd0f6f0e121c25b6830d8191 (commit)
via 11cb57160f4053e9dce292b461c035dcc563fdb7 (commit)
via 36cebdda8069aa04272e8fe6b5ec751a4ed55c68 (commit)
via 6dc8d7579d1857460a4d0575660ade2e0462b08d (commit)
via adce5b398df497da54e67772233be1b4849666ed (commit)
via 77c501bcea87d4606367ddd87affddf9aed1aa57 (commit)
via 2e1e43e14021573158dfd170f8e67e02a4c6b4b4 (commit)
via 3d99e817a90b2a37860d527f2fb5643e7b861e7d (commit)
via a074796714dcf281f5305540e3c5293d94f653f8 (commit)
via 14357de15f6594468950d17dbaac8da0ab05063c (commit)
via 266934d1ad029100f4073f9e351f8685ea175b83 (commit)
via 0327869232a2f447474306a4d88214324d8abd40 (commit)
via f4db828807aa2ad2279b6afa582c64bb5e3153d5 (commit)
via 12c1f20d6fba9dce0011f3ad11a7de60f7df4a7f (commit)
via 4b654465bfc3034c969d2d942c14b2cedfd3e3b6 (commit)
via e6f3b9c3194c0d89efffd6e5b59471950f979e5a (commit)
via 0b9305edf1d0b15913643b132dad02d4ca4fbb43 (commit)
via 2af9fc4432bbda5ebd805bf5b56d81cd80d0cbf5 (commit)
via 382b69bbb7a4fec5213d2382fe70a68d7a46b3e7 (commit)
via 6e5eab33abe09041b29e0ce484f684ad0ffe80a5 (commit)
via 929edea98d27cf9d72305c1584ee77627da7fa96 (commit)
via 762c974a09746bda8a5d64ed3ee887adeae742b9 (commit)
via e54cb31aa33a124f746ff40c134e20e6d2bc6c34 (commit)
via c620a2b5471b9158e9e0da176e098ce3f4335b1f (commit)
via 7639175c9add472d9271318996547a57acbcc062 (commit)
via 532cc31305f46a979ddc4f98866b67e4d3a9d45c (commit)
via aff6079bc770cb97f29f0bf15467f8c04bd1383c (commit)
via 1cf9552bf1c77df8850de01d48e1057a27415314 (commit)
via 9691e722c654054cbf2a6992097c730b8cc50435 (commit)
via 33c5cd75874c36374c0966c59feeaf6f17512499 (commit)
via a0b7b105236d5bc65e8d3a35f1b4f34bcc5e3705 (commit)
via 4b617f5235fb680563571cecfdb03e3b3493444b (commit)
via 8455d26243aef72f7b827ec0d8367b6b7816de07 (commit)
via 1d827a720c9659cc8d54059ccc3efae24b875c03 (commit)
via 15a7695fdce108548169ca265cc440b049d63951 (commit)
via e4bdd679556e4e4ba71bcd066cc98ee7c2f4fca2 (commit)
via 60c96dbf02fcdb30942b9db7a138afcfc2b7220e (commit)
via 033ea118c0f5b33bd4d9af541e5c503119aad37a (commit)
via 4da3eb35ef0545aac35dbd09070e5bf925f947d3 (commit)
via 40c7d50720e04c3d1ef1695a8097f735bafbe54f (commit)
via 0d702cfe5d9195f2ba8d110120374a8da6d20c73 (commit)
via 55a09eb6df557934bcb7e96d8ab4e9e7ca0670be (commit)
via 564e46b795ea9ef95ec662f01139a97717de1603 (commit)
via 0041f7df741692954ebc112c69e5326afb0115ba (commit)
via 568fc4f4f857d1a06d06ef5d74f8deaa0c8ae182 (commit)
via d8cd8c1f482018acd16cab1f1f2a081786a04c6f (commit)
via 15e6ed8cbf65f0b7cc7e384d78a56802d8d0244b (commit)
via 19871f45ddfa7681f8f7585e73409f4fe5b51258 (commit)
via 76cfced5addbd827652688a13f9cfa02afce51a5 (commit)
via ce9116fdbfba8926a7bc25613d39bc3b2ed942fc (commit)
via cd9af601e60240bb38dc58ce7e69abd5f2972ec7 (commit)
via 33c734b2f860f77badb1e25d16e144e9db77d1bf (commit)
via 8d219acda1f7bc5f7adcecf479c9017196cf2c70 (commit)
via c8cf1feee1bcb793d919b14853355a7ba09ab836 (commit)
via 7e70564caed5f56b4937ef3f5a51ae2159cabef4 (commit)
via 5bfd255c414e89f23342f38975d09b18f2c1b2b7 (commit)
via 2040444f336594dd2dabb35388b6fa97785754ab (commit)
via 613643582c4f6145063fe1522d57bd01fe7bba02 (commit)
via de837d77bca30483e8e926044fa497e3d49f7972 (commit)
via c6eb149dfacbd7a5fc22d7cf7fa8df6bf1d6a637 (commit)
via bae7501e87ab614115d9d3213b4dd18d96e604db (commit)
via 25c5412713badef8cf779186174200ecd880b329 (commit)
via 3c465ea0ffd372bfc7f07eccef4c0b1bd22efc71 (commit)
via 834a65aadfda9755d8bd6ec76ba8b3a6d20a1beb (commit)
via bbd27b7684baf424bdaa7f0a1d39a2cd5b0d6134 (commit)
via 9f00292e69635d48623372c7a3e390dc5d159a8f (commit)
via 32f76c677333510350f21a40db062a8d17995c53 (commit)
via 33f466961ce01a7db6dbec6b39aafb7af1855645 (commit)
via b1d3c886aa30083236bf60c50d519bcc978139fb (commit)
via dc4bde35d16df749e529229657b3468417937cfc (commit)
via 51ed89aa0dce3db46561235efdc4bbc0661bcf37 (commit)
via 60a02042bacf8d25814430080adda61ed086bca6 (commit)
via 4151f6842850876e93c8e5d870d7c9147065788d (commit)
via 909b4e3d5fb8579b3721651c9e64a11e7ec27e5f (commit)
via f5b2fd523f8f180e11f77b84a107279c562672cd (commit)
via 9785fc2a4d220322ce6cd1d79e768345ea5234d2 (commit)
via 8d011e87dfa4e1719bd909b9adcbd1a0f5a75228 (commit)
via 60804c53a0c365f0802e90c12dfcbe6696b861fe (commit)
via 92cebb3dbea282bbf7357ed2f3f03bc92fee8c7b (commit)
via 3df5cd139455a1448de00e1e173f3ce566a25a48 (commit)
via eb17d4137dc83a373b8968cd20b256fa8073a4ca (commit)
via 195bcdd5183f2c137399db23a68a26a4e4193f8f (commit)
via 2e74f9dd8ae79ddfe7f0f84b890c962016fc8f15 (commit)
via e1e94c4994151ebe0e3a103fd0d27f60bd806bbe (commit)
via adc764e7d217d3e56af988ce20cedc98d8c4cc73 (commit)
via ec1acaba1381d0196c45965a7db9942b67fbd88d (commit)
via ff07562f1e369b6e37eafb2a888dc48fa2453e86 (commit)
via 2aff25ba76035d2f1f48ea8a6c4b7e498ee31790 (commit)
via 88ab90e860a46a1123fcfd13bfe51cd360e9c3f7 (commit)
via 1b19ec971047a074486e6b775dc1969aa13f30fb (commit)
via 328ce951b2513a102711bb640496a2f1b5f8d3dd (commit)
via 47fdcf63c04b5c220974affc8ff1d9ef8a041919 (commit)
via 6e75794e9da0e12b44c36272e16d18449d25a03d (commit)
via bc491f2e76df1f2cec877eb07e88209b609ddecf (commit)
via 88305e1b9f4592a2ab129015ce409fcc16613ebb (commit)
via 65a55fbbd949868f7df3c65d39eb8d4455515132 (commit)
via c604a79ad4d47070bbcc0bc082188fb16892ceef (commit)
via 41664b45ab6387184bd0e7512fcf7a72c58744e7 (commit)
via 819e1f86976dbbd13e0de004cdd3e3089e4c3fc0 (commit)
via c7d289d129cde92c0d351446c5072c5f744040fe (commit)
via 38bf472a15210c222bb3885820e763c47760a704 (commit)
via 9991e9d77fe04c4fde9b88964c6f25119a781e0d (commit)
via 6da67eb10df978c1237ca863990f38cdd4ca2e95 (commit)
via 23732b1e32dd58f7c731d9aee56ff0b22a645d53 (commit)
via a4d1e79aaa4b9d994cd9790fc3b756748dc5571c (commit)
via 2d68166e8704569eeceb76ac743ea1e7cca2af26 (commit)
via 8268c77870de3c27ef598348f3023ba159fd0fca (commit)
via 6806377956c76c23ae96a3844e29412ae117e07a (commit)
via db665f427ca781d631d9e29b1bb744fb11ffcbba (commit)
via ea9aafc41a764e4e2dbb88a7b031e886b481b99a (commit)
via 79cb3f75debfeb1355f8883143f0f6dc98f70080 (commit)
via b0bd097ef63edac71b6720e850b9a04605a87f7f (commit)
via 2438385a4dea36eba111ee931a2fe2d159c676c8 (commit)
via daba08c913105615c5e57dddcfcfa5d8c4237eb9 (commit)
via 7575e6a752ecfa66a41a5d4636ed79524cb50ccb (commit)
via 1284e99a6ce362d342d6468e5caa39ddab574721 (commit)
via b1a2d7a0e57abc06e6ec99c88ca9992780f45f71 (commit)
via a6cbf936e3dce68114d28cdf60d510a3f78a6d40 (commit)
via 7211ae501eb0de1044983f2dfb00091a58fbd66c (commit)
via dc819143fe1d44970a3da4b9ebc7828fa2337115 (commit)
via ab27f80c5dceaa23c4ba7f62c0d5d22a5d5dd7a1 (commit)
via 1f473e3d0ad285195934e6a077c7ed32afe66437 (commit)
via b417536f2350881ad28952b3906a025a54d241bd (commit)
via 0630b49c470ca2e3c3f74da4c7e4ff63440dd71f (commit)
via 515a4464176efc6ac31c83bd40b5c67f61c3b044 (commit)
via 873c08142c4c377d2d3ed0b1b1b9e262ddc06c61 (commit)
via 8b5a7a6e8ceb34f8e82aa361ee91ec25e0049774 (commit)
via d1435379df189d1c358ebd9776af8824a9158533 (commit)
via 04e15b4a9462cb1ae819e878a6009829aab8020b (commit)
via cfd14a500e0485374596234de4db10e88ebc7618 (commit)
via 0602cdad745472ed2561d8096a4bb021c8d0301d (commit)
via a3aea05a66ec325ddd19b0c8dbe504958a295cd3 (commit)
via fd52715cfa77b7e06f4ab5eadfe7946d22180adc (commit)
via 93ec5e23766a9f75aa4950748cf73964028a8d1b (commit)
via 49fa50ef9c59aa6d03bc2e33a25b2d832a9e692b (commit)
via cf9bdae906f897ae13563c03c65f325cad05bf1c (commit)
via 46adbd17408fda28aca5320e2247ede30b7e9649 (commit)
via 57963c05b9911c3555add356a7cd9952d391dfe4 (commit)
via cc75e0fdaeb179efc66ddd1cb1b6da40e6adacc1 (commit)
via 07809eafc959a0c588663c0c949eaf8044a1b40a (commit)
via f076f0349cb958b451872ce4a7987821533c2f49 (commit)
via d7e2ebe7e73105766a854f4f0e3a5c509fd0e82a (commit)
via 2d3392bd42e16b5c8894c357f250dbde245e96fe (commit)
via 5cc4ca837deac7dc962d8a3741aa120c50ab41da (commit)
via b21351faa29dfa6deab3afcb5a2ee78548239274 (commit)
via 0cda1e190dffc804d1f1ffc4bd849ffdca694914 (commit)
via bff0500d7abc215bbc6d4e9332047c023f4ce2cb (commit)
via ced40572e478927f43a849d5c39f794868da8d38 (commit)
via 173205ca3356cab0590c2debaac97107fb9a7fcd (commit)
via 926770baf44bb47c41e85486957f4ae70b694837 (commit)
via 9bdfdbf929d581cf845ffc815ae94a39d9f7b032 (commit)
via 94f78a777c396fa1ce2f40d34afed1b6b5012196 (commit)
via 4aa57d6a2bfc4e48fa6a685bfa164db5ae2e1c1c (commit)
via 7ee7ff7015840f2d0156bf386a050bd728d22fc4 (commit)
via 7e57d19e48f94ff9a19a9413cf25d1887e3a7f52 (commit)
via 0e158763b0c5671cd40cdd2faee48d6659489ddd (commit)
via 0dd5cbc56307afaf6a366a8e78ef25cf9cefe514 (commit)
via b4cbbe8f7294070cc93a71ace78f134965ddad82 (commit)
via 790ba5c89893f31dabb6d8e85c8d4be61c52ad99 (commit)
via 0056441823b1b1b2488dcf069b4feb55b00137ba (commit)
via 5d8763a38211dd79459485ba0be4f76849ef8200 (commit)
via 922109c7182858b005f55f6ac69bb6af145fc710 (commit)
via 84da4cf89efed1df483914d06210daae79ce3eb8 (commit)
via d4c6ce5b011b03c7e4a84b530cba1f9b56441131 (commit)
via e652757bad63e4cf8c0c72df6e95c0c826f8e29d (commit)
via 329b5ba137687c4cf00413534a08ec33c8acb556 (commit)
via 9d1c54ed7f3a4a70f35f85658c311697c17a95f5 (commit)
via 16892a0323ce6cf41ca80e384dfba12524247902 (commit)
via d7dcbefc724e59aa49e4ac2ac2337c8e1b8c367a (commit)
via b30ff123fbff63d6c8be1115320efd0158e49a7f (commit)
via 4fa847d78edd4a3901414655bd4b31234b91ba2a (commit)
via 48580982ef41907a45cda259a63d9e6878cbbea3 (commit)
via ee2fdd6f36c10ceb84e05c7234983bcfbe6146d5 (commit)
via f4906a9a7441ef9c2758513420568994a1e7fed3 (commit)
via d269dfc64fb5307dbbaecbc5d55861a705b729ab (commit)
via b45a120833d862aeeba6803b2cc131724ef89dda (commit)
via d19237d98d5c227bc33693057eb466702386cdfb (commit)
via e7d39ed3e0ca36d0dbd6ddd4cb955aa73b0974e6 (commit)
via a765d0724259ec77ab69c3dbb1cc2e16e2e038e1 (commit)
via 194747873fbe037e923eac3a61481ba16e50e322 (commit)
via 6b7373708821500a7388a8248b6c19fa1826c514 (commit)
via e5c89b096d9cb9e5956e98cd5863519c87c6890b (commit)
via 127d08c03f8bdb515389359ab605b6ee548996fd (commit)
via 68193357e8d0fb53a229114713db9f0385f60ed8 (commit)
via 75312ae3ab577c3a72ada54512533fec8bfae7bb (commit)
via 7f2c8a1d37af46c46828909b7b748c79aa4b7ff0 (commit)
via 2c6b98ea6fcc1358639253d4e96c9b55a672fb0c (commit)
via 6879f5a99e25c068fec34126b6b0fe4325223aa0 (commit)
via 2234eee61c42ad3f4d17894236873e04b633e969 (commit)
via c2f7640243bdab93cafb3bf516e17a72fcc2f051 (commit)
via 9fef80d683d79934bacd3221f5252ce8c14ff5c0 (commit)
via 7adc0a8174f1233f6d92edd0671c18c9870e64e7 (commit)
via 3d030cdb4a8d338c87e48b249338a4870fdcd322 (commit)
via 54bab2816dfd025fc53618e46be140573d5bc02e (commit)
via bdab445c82ba93bc9aaad1ae974a3cf5c4aa8a26 (commit)
via 6e1816be66892d06e1a983f08407135fa7f7fc17 (commit)
via 81209eff905bf76a01bbc3dc07b8973d1d0cdaad (commit)
via 6c290d5387f770a6b098162f0a0f9ea420de540d (commit)
via c168ce07e5b4a2a0258c796748899e1ba2e6dc7c (commit)
via 996b5569bf24fe29dcd832a068d9f42b2903f48b (commit)
via 20bd1b6ba53491e4979c03a4f679d0d17b9b9046 (commit)
via e4da2c61669d199c75b96a1be25e13e3b8254e89 (commit)
via 3de58d950c984bce176d883a8e7bcf3415be8c84 (commit)
via cb06d03ad92ffcfaa09c3f065837cb39e9e1486d (commit)
via c458d0079cc5e8ff29256355e6532ad2f96a8aa6 (commit)
via ce49701009db42a9a53e5dcf172a6a211b1025b3 (commit)
via 1e29262747bed568c673b8765d214a4a16772da1 (commit)
via eb83230b4d5c0129174937846ded9eaa9f78ff28 (commit)
via eceb74ca646e78adab1fa9f5c3b7cce51e894bc3 (commit)
via 69431babfb54b26000fdcc016323cf811d48e862 (commit)
via a206891ad10040bdee41999019af3cbf45abb5d6 (commit)
via 96160d605128658378af73bb62732d1cbfa73d8a (commit)
via 9a6c7d9c021cfeb290d76584db7a01e57e7c3d4e (commit)
via 75c554cf9c375432af6e93653880d5498cd5f918 (commit)
via 72ddacb77e3301a0481003a23b2d8dced7116de5 (commit)
via 94de2a2c57b7f6b2870f72ecdcacc6d909c6421a (commit)
via abfa390dac6ffcfc6de9659c0b78cfe524347450 (commit)
via a6cab9afd2c81465265c8d09569e3e6ef43d2954 (commit)
via 325c9fd4aa054118b80c621262f10fc6ffe98e25 (commit)
via 66953522c9061874047d2e9832c206af783c971c (commit)
via d16fdddb4e96e9e7bcfce6fe487b321c54b2c7c7 (commit)
via bc21b167eb0106eb31d946a0eb5acfb7e4d5d8a1 (commit)
via 0f6d864de2469af4223391993b430b0d45573dcb (commit)
via acb56a83016611bcb5f0a32368fddc8c213f7dd0 (commit)
via 80053e466b3a8055334b9be9bac7d99e0d617cbe (commit)
via 16b7a7199881fa26fc863279bbf08741e5674b5d (commit)
via 72e84f969481f52daf6741c6bb4d0e92f9668389 (commit)
via 875ffa3edc5f27f0ad5e3d95d96782832edad00e (commit)
via 1c8e01c96054973c50ec1dec2f220af4734e1de5 (commit)
via 65ce7763dfbca7f74c951767050ad2da0739869b (commit)
via ffce45d2243e5f52f411e314fc4e1a69f431a81f (commit)
via bdd32e03c5e87bd38e63e9cc3fd35375241db58f (commit)
via 99149362b110c0b243eecff05cdbda0d7260b412 (commit)
via 1d4fbac99e05c2d2ea98984f9bc6f7d7f1a183b7 (commit)
via ae3e2ccfe75e5c62749c15ead5c95e052aad21ca (commit)
via 8465943af6a6f756c3d4b077eb1081ade927b26b (commit)
via 3e019bdc20eb81b91ab5bc774386201b874c0bac (commit)
via cf0dd6f02cd45d6dbb6bd87dde25dd3ed74eb7d0 (commit)
via 291e62953900e0f4998224127bc56239e421cda9 (commit)
via 6f98355cda4ac718855d247fd942553b1706549b (commit)
via e197589b72e7b7b2db95c63acd58abb574b4249c (commit)
via 4b48e2f6a50e85e5acc316289c4a6af693ad98f0 (commit)
via 7dba9362c172f1073487536eb137feb2da30b0ff (commit)
via d68f19767dfbb33c1813563d5a4af0731a1855c5 (commit)
via a87dc45adc983a8e6ec3db8d18cd31c35abd2048 (commit)
via c092b67bf0adb0fc1e179612b161e19938929e66 (commit)
via 00fd923b247530bd30f695b5bd899467536ad4f8 (commit)
via 75e06f9753af16bd8a4d864431ceb1a4cdd13f58 (commit)
via 6353d82b8fa825c2143f41e84b0d5d4446c6e99a (commit)
via 8cac017d35ef374e65acc98818a17cf8a652cbd0 (commit)
via 0d96e4df4812c3bad77c229dfef47a9bc115ac12 (commit)
via cd3ea7c69acc5045eb28f9bf80d923116e15e4f5 (commit)
via 62b76e4b6e0b4cb5b3e0053d1de4097b32577049 (commit)
via 63634bb4a107877dd08b6282e28e11cfd1a1649e (commit)
via 63323b5b23bd83fa7b04ea00dff593c933e9b0e3 (commit)
via 76800cba595efc3fe95a446c2d664e42ae4ee869 (commit)
via 08c7881b814c546efc3996fd1decdf0877f7a779 (commit)
via 37de058ab2e9619fbb6dea52ec2773a5d65619c4 (commit)
via 45159d6ad394fe7db840b2b92eaa69508b8a8fe7 (commit)
via 6e89f899896fd596527d24de6a8a98bc633805fb (commit)
via f7e16c2a9cc405707e646e951397938d2b4eea48 (commit)
via b46c4cf0908b05ab493d4f30e9a52a887ee118fd (commit)
via e64519d1ed7fd8f990f05a5562d5b5c0c44b7d7e (commit)
via f461bbd847f15657f3dd2f317c30c75a7520da1f (commit)
via ae87f7e73eba29bd38b3a9684a10b948ed715612 (commit)
via 6394c606997f88acfc80de4dff33a4ae2de987b4 (commit)
via 99031bafd6e81a41553803886c6b245cb0ab89d9 (commit)
via 8eca1095d96c215409371c5687573aac89a0a980 (commit)
via f78d1b3ae1cee2bc1a2be4b3c30df9627e13fdc1 (commit)
via b6947a7f08011375120186688bf2efd866f7d148 (commit)
via db5fa770268baf8cc82cf9b141d69799fd485fe2 (commit)
via 5524b5250e319f41933605420e9526fb74cfb9ae (commit)
via 4c0b797e0d2005780d8f0300f0ccc14b9d7c13b5 (commit)
via c53d2e6d744da000aaafe0237bced090aab62818 (commit)
via d5722aa2fe9e1d76d98865a9ab77a7b9388743c9 (commit)
via 05c966f3c98d6126404f1cd7f233148a89810b5d (commit)
via 04f963fd489cae724a60140e13984415c205f4ac (commit)
via 319c2dbe240a797c6f9436bfd64f5c16045ad5a1 (commit)
via f9a36b297d470a72ead64ed07cd5f313d9d7a502 (commit)
via b27685f2016c510d03ac9a64f7b04ce8efcf95c4 (commit)
via 01ec7a272201de84be1ca2c557e58d97891f288c (commit)
via 848d907446d738604d11ab4061f3b0a8b23d4504 (commit)
via 3b912944f4257dd935c91b77a51bc2e4baa1018e (commit)
via da614360f520b84a9c87506eb0c880f7a056468b (commit)
via cbd0eecf261c2447781f8c89b0d955ee66fae7e9 (commit)
via 6490dc678bc35f2204afb38449de5127ef8bcca0 (commit)
via dc74becf498f60c842d81eb6e98cfcbc3f167c22 (commit)
via 8569cfa78c2cc8b5ef66b0bebddcc0e63231fb51 (commit)
via 55acdf2242372ae52abb25c80db8e75df5578b23 (commit)
via f65e204425b5b46a5927d9501c42f25d98a866ce (commit)
via 23f945bf8cebf348154aff43782de2e1977e9230 (commit)
via f236533e3c6a2693bea879b2a4d24d1229864ac9 (commit)
via 65d84b76164dc8ec1a1f0f0e0fd41667065ffd4e (commit)
via 242d31ab7c3901e02bd68c1824d1d3610e02562b (commit)
via 03c8af18d1a8f359fd023696848bda488119da60 (commit)
via 840989c113433c069f54872d7e051e1572202326 (commit)
via 3bf310110722b03d9ff9c4f34f5920a9be2878d0 (commit)
via 359b19bb24d048750aa5367ad56a33267300d1a8 (commit)
via 07c9ca3bd8e6f83bcec49c922b52422c538f60f7 (commit)
via f1cc987420d9d2489eb453bd1c87139666cbe7fd (commit)
via cdaac320fd62bff75562aaa3e466494dc72dd175 (commit)
via af547a9614969e1d1ea6fcec6b59cd77a606380f (commit)
via 805acca042afed8e8431c92ab031167b03475676 (commit)
via ddd7882a582637d86a321c1ab835f6cdbeb6d017 (commit)
via e93523245b704bc126705620969b4736b00350c5 (commit)
via d5d1163eff2415a01895f1cff8bbee32b3f0ab66 (commit)
via 0567c9861e113a573cc905002a59cb1bc3d78450 (commit)
via 10bbbc1d790836122c417fe4fef7233604bb3982 (commit)
via 032bb6eae8a0166f9b5d2eac6960383c532ef6d1 (commit)
via a0688fac4b1662e34a9a08e233112beb7403f642 (commit)
via 973e9aab63a70311dffa2993dac52bd63ea461ec (commit)
via f12f6bad7d4e8de1d1f4c9c1811757571149c8f1 (commit)
via d9109c8080ac0a2caeaa5f3d51e8a3b4891a68a8 (commit)
via 4ac0cb1cf04f105586746a6cce5b0f93d76f2b33 (commit)
via 30a254669b16b86166fed1f9a4c4f9cc55a07fdc (commit)
via b3464d0316235899d9facf81896d7a427d5cd6d0 (commit)
via 4b76cda9938e4cb200bccffb6e020268c6a51b89 (commit)
via e8f8bcb35f22965c8e4309c4aa4227241c485fe7 (commit)
via 70a1152bee7cb959ab0c6c13bada03190125022f (commit)
via c2f134ac418eafca850e7095d789a01ec1142fc4 (commit)
via a81e6d4d261b7471428408f4ebba1b8113c16ccf (commit)
via 6fd931f2d66af8398b2fae3ab5f5afe091b8362f (commit)
via bc8f2430e08cc2a520db49a42686e0529be4a3bc (commit)
via 5c3ce2bc8adea307917d3bfeef53114795764db6 (commit)
via 3704e3589d3d187fbf76e688388b1a92fd627c8d (commit)
via fd0219988dada5b4ddb04b691f71c9acdd87b739 (commit)
via c4dcb155c446cee135101d72172b47e3fc99caf9 (commit)
via 9b97dfbf8049bed3b2f79c6c785afaf18206dad3 (commit)
via c7198f97e026f2a2d53de8dda090c04619355a36 (commit)
via 561bf3e950e410fbcac06523d43039f1f58150ca (commit)
via 6d45d4b42b5b360c0b80259e101c01d650d0be23 (commit)
via 9845682bda4149b5b3648f2d49a041aef5bc1af5 (commit)
via 654f3b6a2af84ba0f9c6a4c011364b8f650d66a6 (commit)
via dbb2bcd0059f8d91de5a792f8684c8908c316720 (commit)
via fe7bb2d5ab1f47163f38d2070dc1e62c1920bb44 (commit)
via 2f91880f3afb3cc521111dfcc99b214c77aa97a1 (commit)
via e3d1d4088ad3b4d0fed39df62ad295ed60707807 (commit)
via 64aa8e030360ba68e32ca15fa5aa426160a2efb1 (commit)
via a0abe74332bd25aeb68acfadd74280c0f117c493 (commit)
via f4e6805f98d2b3eae305f66ba26ab25aae1485f2 (commit)
via cd6402916febae6d8a4e62c572ea6fd487eebb61 (commit)
via 7ef0acc15ec011371a3901a997c867165bf7a733 (commit)
via cc89d0b3344614ae97456df84034096b698e5790 (commit)
via 9d5c718b7a9c46132940f899f40556a77ca462a0 (commit)
via be9e3704f91190c1e1c5d253494423b13c982d93 (commit)
via b8b6e72f3db1f798680742c02f3dc220175d0757 (commit)
via 5369082e7b786dee2c185f768b126a9a18cb2915 (commit)
via 4ec192e6abe86319b9e9af6f2ae4cf0614b1e2b3 (commit)
via ff4ca5ac6a2e85177dc7efe5cbda7b956bb71fd5 (commit)
via 6322e5c5cb7ffe1c26c50f117765503717b0431c (commit)
via 51fa2693add9ead8288f475d380f4aec7372fe5a (commit)
via bc327528fd2ccdc6c29ab6ae608085dddbad5cc8 (commit)
via 81b6fe3bf9f3be2b6b81d05d08ac58d2a6dcb760 (commit)
via 3030551ec55042d7c87bd55fd29db2b06fe06df9 (commit)
via aefd8b33d97bded58e51d75271f99e1eaec9fb28 (commit)
via 2090129c36c7e582943b7d300968d19b46160d84 (commit)
via 043a49349c713dc329a2dfc413b082c3826ecdb8 (commit)
via 156525114c1cbbace0dec223494b842ffc60d52e (commit)
via 2d7cc5c7973b6d1bdd9205288863bedadeaf8b41 (commit)
via 62e20ed45e3da5f3ba695e4ee109317668180fe6 (commit)
via 50d6adef3b8509c4e7e37b4b708e0593d43ed347 (commit)
via 4a8a33c843681410eeba4e05aa749abda8a8341b (commit)
via d1be909e7fbf753fd3aa18681089e3bcacbcf51c (commit)
via 4936f23592b910d65cc9f077115559366f9c4662 (commit)
via 58f59b7616851b2f3737e385ec9095765eeeffa3 (commit)
via 78e8a2ff5f01799874be41fdc919d34c670496c6 (commit)
via f4a6504277d861057aedd2b88369493d644935c6 (commit)
via 9f7fb0aa2b6eb9fb185c1c2ae4159d783acadc0e (commit)
via e1e01040aa83ddef0bb5c60a8b187f769b2b1ec3 (commit)
via fbe654c8bc78eb06b6d7ee4fcec64e9e34e7a9ac (commit)
via 9949827bea788753c29b7bb503d6d5dda6ea21ff (commit)
via 5c8ed6a4a1d197658086e9175f820227ebffebec (commit)
via d24b756188bd63a422671a73e31af718007264ca (commit)
via 0ee3a6dbd06b88a4e02f3f46c3ec036fd951400b (commit)
via ae0d01d663a2bac65afb8b94bbf1a91d95298f68 (commit)
via 670b1a13351f34c38ea1abb6cb20e247fb002015 (commit)
via 7bdf4127c38081c7764c0bf1db55d0b2e56391dc (commit)
via 458ad2b83ecf4d764703767bccf19723ca741f00 (commit)
via fbebaf4a56dd03251bc2e12fa6834d90555aa82a (commit)
via 056bafd472efccfb2d7f44f6469dfa08cdf7414b (commit)
via 61756f84eedc470c975f8bafe6ddf10acaca6942 (commit)
via a6ba6751c9cf5ef909e47d09609c28ad1509dfa9 (commit)
via d9409498813c75c1a9e9287ac6e5100ed3130390 (commit)
via af54f0eb968ba8cb3862fd3cad097a3f3363467b (commit)
via 91001320a22466d1580e169bcb023d3b822226b4 (commit)
via 6734f10ae9af6cfd47e70baa2cd3e326afabe5ed (commit)
via 3ea0007c8ca3ec851df6ab5391a98467b4021f92 (commit)
via 49cf576c221b1d45d222f8cddaddbddf29336461 (commit)
via 923ca33982401c5700421a592d2b0ee083cbefa1 (commit)
via 26b6a6aba5567143ed0f59388663b8f50e5cfcab (commit)
via 22827c51338ce25574ed7b204a2e5bd40f45bdad (commit)
via 0af6b29b9dcd8ff2c34d07a76e3416acf3758bfc (commit)
via 4a4a4a27ba5c731044d3d3594545e6f06b0ec0e5 (commit)
via 0e05cf3a61e1996829359e1c32eedb6820930331 (commit)
via c1fc2657206188767cb66813d07b9ecbb5e9ec51 (commit)
via 3b0871f44a3402f4e1e811ae81c8ba1293c1c7be (commit)
via a5e364af4a3d745bb79cfc9a1d533632d4d04b57 (commit)
via e7cd2680e089327e7fefaf1cf5a58ec09e379f0d (commit)
via 0efdc7237e8eb2c75b9c74bc60175ef50719b8b8 (commit)
via 6cf3bf8875d84aff854fe5fe5a04141033d5ee6f (commit)
via b5430a3ced5fe5ba484bd9b3215b9ae19ced0160 (commit)
via f378ab099d535f5540f292fed07fcf4b1fabd314 (commit)
via 19fb31c0060f646a9f84be1a84ed1bea04e7ed57 (commit)
via 580dfe9d4cb936535927fb954bdc96a2320c6244 (commit)
via ae3b3f34ed96f121af37018b8ff3a78810881ad8 (commit)
via ab12fca3906c9c76ec25a9de52f5142f5736413f (commit)
via 13ace07792fa75aa276e2d7c3cb03cec117d63a4 (commit)
via c56ccc05b2c98510f360d7f454f38169eb3bdb06 (commit)
via 5b4a1ff337973732ff9a5ad9b1cb84d74a7e6185 (commit)
via 90b4491842980d57a0e572167a168e04a476bca5 (commit)
via b9c6833008dfb3c45354f4e810e631a77f3c9cb3 (commit)
via 1b1810b5e01968cdfc16d537b4d5c27adab8a173 (commit)
via 8c65b54f18c03ffb844e1cbaa3b46b43444ff9e7 (commit)
via 10045478d984f9924cb945423388ba25b7dd3ffe (commit)
via 940171d08654a9ff5bf9b8886f76e8189a02cf09 (commit)
via 64984c22f7045d53590f816e7ba0b9b9fa1dbbe7 (commit)
via 37cd38778dfb73d28e533fd1ddabb88b4b3a5771 (commit)
via 8e2f54bcee7e3e8315d4a39a302eaf8e4389e07d (commit)
via 08c3f6d234761d92b50d3c56d3cb4b82fdd58c77 (commit)
via 8ffd39f2e42151b383616923ae922e697273ec8e (commit)
via 4aeb0dfcc42acfc108d3f870384d1719adc9569b (commit)
via eb8f2b9c44619eecdb3b77da01da910fcf05abed (commit)
via 42bfe59e3a3fef26be6809168756f40740fac1d0 (commit)
via b54b03bd874936ab3c91f23e5dff3a87153c4e36 (commit)
via 8286623c113daf97a45cde5fc8ef9587b85c898b (commit)
via a0f1b963327b9cc349a1e6b4c543a29fbee68fba (commit)
via f158f208759703b94dbfc6de2222ae7740420faf (commit)
via 521103fd00e593c08a6bedb619c5a9f8f7cc5a91 (commit)
via 17b89b34b8d7a5a8b713c92a9ebe689c6edd6798 (commit)
via 2b51eddc5503ea84d48c5b3b3ec3388eba440451 (commit)
via 70c16c04ac76a90f18e920aaea1026bde90c493c (commit)
via db6be0d5e31f11c10004f1f2ef2de05d213da1f4 (commit)
via 8e86a419d7f8753f4e77cf23aa53bc02ac6febf1 (commit)
via ca87ae741fe9c8aad9db1afbf109dc070d0168cf (commit)
via 67aa8be4cb43cd94bc322fed8bdba48b3c8719c4 (commit)
via ffc61c5de1a5a89e3e37fb9376725c32a839c34d (commit)
via a09f2586017aeed82fa07c8bfea6c75859295bd9 (commit)
via bfcfbe611b4d7e650236f8b8ba7d0706cfe6a0b7 (commit)
via 6813cafe52236a95289accb138032c1d6dd3272e (commit)
via 146c3d9d5993289ae0af7c1c872eebaa8662d2fc (commit)
via b40889f2c860d768fa72662d8a3ce7e81ea79aac (commit)
via 2153e1dc0512822ed070de220e33a1a03ea7a4eb (commit)
via b057297ab63a9124aae1773566815cd8c4bde8e9 (commit)
via 22e7d2933103f1384c1d54dff6188cd57cbe171a (commit)
via 64aaf98419a0485fe3490dfb53417ac9958c7327 (commit)
via b77b02a5ca5a021ee8b5e5453e8843447d1132b2 (commit)
via e521e87e8514b9d3497208b70bcd067f132c58ed (commit)
via d8e07dda92366be0f6fc2e7128620d3dd53494e3 (commit)
via 8c8f9122ce6e6c00f72914479af57a7b87244554 (commit)
via 68fce50f04f495980f4ea81746339a9de5b52ebb (commit)
via 88954b49e47574cdd048a23ca391a85fb6f77f47 (commit)
via e3ec9b69cde4e07d95eaadee75566fd4a8091df5 (commit)
via cdd238daf949385bd6ef188e24b40d9fcb83a0e8 (commit)
via 7a3929c417b1388c689a0cd6b0b2f6579d85ec78 (commit)
via 88c1242dc0a1e1ab582a65ea8bd05eb5f244c59b (commit)
via f4985dba0f53b38efcca4eef42cfbfca5ef44ee2 (commit)
via ab20fa4ae95212c58e369916de347f3d518530c2 (commit)
via f532ab94387d1bc47de619ae08ead522753d89fa (commit)
via 39503f82427e22ed8e04d986ccdc8562091ec62e (commit)
via 003ca0fd22863aaf1a9811c8a35a0133a2d27fb1 (commit)
via 60fd657792228e3eb59e87c26fcdeccbfe94d224 (commit)
via f7241d4f27cd59357a75bf802e9ffa7d95036deb (commit)
via d489d81d0934c4fda8c8aa68fbec1b1315cf8df0 (commit)
via 6e92fed5946111a76064feb8a2a184d224deae1a (commit)
via 590b87ffa386ea403e2cb61525c6aafef77097a2 (commit)
via 6e3f3473e2136e77d6346d5bca894c38e5389116 (commit)
via 8e7f04f17c60069143078dafd3d3eb8cd15f10fb (commit)
via 575dcd27f8be6ecd3f89539a8210a8d3f0a271b1 (commit)
via 903b2a564d78b8e47f2460a2a452f442e6e5e979 (commit)
via 176efed15cabb932a7e9fb2c5e6ef0753e8351a0 (commit)
via 04ef582ace91cad765d056cc95624478e0421144 (commit)
via 25f94347373b1b6f4bfc79eeb38e79d383195779 (commit)
via 9a6465c207ed4e34be92741316d78fc00f0836e4 (commit)
via 3c0367d0e2df21717b7345a1ccadef39183457ab (commit)
via e11b3cdc565c5e86e43ef79d25fc5e8b88162ec1 (commit)
via 0f068fb5e5b65038c3ded3cfd2a4b8805196956c (commit)
via ca49a96781f723d43ec49471cbbb50aa511d063e (commit)
via e6cf65f283b8be44014fad0ad0aebfbcc71fceac (commit)
via 56298620acb02ab589ce3ddf398788227ab20211 (commit)
via b4f5b984e5e771e75cee43942e56455531a02e68 (commit)
via 43cc5389bc4662b31cad02a9f13358bd367d0ab3 (commit)
via a9dba87af1aeabffb01769004ab893173f3ef472 (commit)
via e5713223cbc1025f484fa2548d58f74173646b8a (commit)
via f0681695daa9d4fd493f3ca88f194675c9affbff (commit)
via 64517994807b0d6bb3c6fd106f117c03242fac72 (commit)
via 92f7d783c1038841beacaba28a5f5d740a5ccad6 (commit)
via ae0264a6474d777650d65da261732748126f0190 (commit)
via f4203b2b8830e66e5229b7f9d30cd29b088566b5 (commit)
via 6e7e1744e96abbf1a4229d5f269caf2cc921ec58 (commit)
via 7a6e7fcc77997bf7679cce4f1cfebcd57ba8af70 (commit)
via 1933fd8ee01ad2e74a9c6341bc40f54962a8f889 (commit)
via eb026f09eb6fcb96a5de1e655cdde041ba44affb (commit)
via 50e1d299ef1d21b0833c2fe1484d3cc374e6486f (commit)
via dd47d677f0164800ceba1ab67f6cd2add0021101 (commit)
via 8038128b23576f93a56caf7779a4406a84716727 (commit)
via ec8df23454873916c6b6b918967af631b268acd8 (commit)
via 3e3e7faebe89bfab0d245040b19fd7347d186065 (commit)
via 3aa2d05a728216bbb99dbb5718be9bb36429cf41 (commit)
via 59cc050d893d1e8c75547de950a35e809588f12f (commit)
via c8f6abd10d62f82874e31959bf986606bd919d39 (commit)
via d2a03b77450dce58f6b4f9f7fdd3c346a555bcf7 (commit)
via 9d43118ee54de3fbffea27a5a10ae11ba5ee00d0 (commit)
via 535b785fb0c97220dea23a18f07baad6b5d77ae5 (commit)
via 087ea22225435ab5800e6c29671acab40dc6ca82 (commit)
via a406db9163e45ab55c3addff2ce1e61796f1bddc (commit)
via b7c871edcd83ccdc5fcd8148a7f433efd6b52255 (commit)
via 0d5c69990c1992289f7b286600a43de4d5d44062 (commit)
via 21873064e835ffb16e92048482e34f19e6a415da (commit)
via 2b351b19efc8dd36ac8a8bda005c7411536b93ec (commit)
via a0a110b0dd5077373c4102d1502130eb159c366b (commit)
via 4ebcabb38ef8acfb6e26d2b40e00abfe10aea895 (commit)
via 854062337d056ffc8b805e0d5a8c1a66b99a4076 (commit)
via 0a7d38897b9fb1ec7a064ca3347cbac3ba49e5ac (commit)
via 91cb9803fcf6d1c7001395d80f79120ae8e6338a (commit)
via bc4e12ded1d4c8d589d82b2a10ade6b47f219db3 (commit)
via 4070765b1a1640ff8f43483cd9ee06727f658dfe (commit)
via 8cc2a9796024f2dd472985cc8ed1c65a85ec9a35 (commit)
via 0c38a3d1942067100580e9673bcf0cbe27f3d6e8 (commit)
via d8cbc93b65ace8a36002839d5ee944efff59d643 (commit)
via 52a86f843b6dee1de9977293da9786649b146b05 (commit)
via b32465c97c12cc6049cefcde1beb3e2bfbfa232c (commit)
via 3f3467ffc4b0a397a7017b8ab729e4c0060b25f0 (commit)
via 70ab592fbae1725ac576012dd1242328e20e664a (commit)
via 25499ac7ee92bca177c9436383ee167d6a220066 (commit)
via 20c59b843a90300e5f9e07add83f5c72c8f994a6 (commit)
via 602b88e3ab372729b53d130068f069dd363032db (commit)
via c96425c560d640df9c416ff4e6a8c49c1f3b1119 (commit)
via 1a7bf198b67c4b99e9adeaeba38c6874ec354c12 (commit)
via e295202f606accec7623c961997a295a8e680247 (commit)
via c76081bc874d7d41eb6f41ea79a4ac0f906467d0 (commit)
via fdfb475260daf591d05407ea7affa39122a5b7f6 (commit)
via a54d5f8bb3eb4772a94779a5d37b644aeee72bca (commit)
via 32035f5151b6ec76af0b62d9db8774b76eddc091 (commit)
via 5f2ad7a3c73fcec0a7891794eb5aade73bac8523 (commit)
via 786e3eba7915df35df1d98a300e06f757336c75b (commit)
via fba2af917d78bb1d8ef0d508b9246ad32fed1afd (commit)
via cd85e51ad3921eabd7030974ce375123a0848cce (commit)
via 097eb00398891370779bb6562965bcdf357a292f (commit)
via 67f46fed806465c005b15c97d33947f4c0abb25c (commit)
via adf3dde510088ef8dc46d04df05baf36adb0ed1e (commit)
via c0c05aad81ef32899e809570c18932bcfb588009 (commit)
via 6bf56e7482e220ff98655b5285736a37dd602c17 (commit)
via 73caa85d4a97eb991e581ccba3ff4eccce5e2e1d (commit)
via 6830f270e7b6676e7a77c1b8080941e35003d918 (commit)
via 68f2f2e308a8585c39ddb2f391a9ae8d779c5029 (commit)
via 256afbc259c1e22fafba601a27cf3c8d7bdde417 (commit)
via be3f1006743f04f0b133de7fa8085a3e4c49b193 (commit)
via a4f89915135f6760917c01dc783de5b674234d84 (commit)
via de428bc53335d88c21eda38a823d5a4008468e52 (commit)
via 99e2d67a0edd1a8feca82036feb93709fee488fa (commit)
via f2c29a169242d0c564afb46ecaf160422b28bfbb (commit)
via dc2be3d2f6de530aac40983e79e29e050f40e759 (commit)
via f96f371cbb33454544a9f1827c239c4375f0b60e (commit)
via 7f401e8417160ba5cdad60a38c8a3cbce395a5c5 (commit)
via 40e5240e1f32b1cc36c45551eb3f59253c40f317 (commit)
via 5d69120bfff3e532242083acd636dc68f23ea831 (commit)
via 9fc1813479e1518197949105c3f34da8c2e30984 (commit)
via db84b98a160d20f30dbdae3e3405cfb0fa680fbd (commit)
via 2318686590bd252a47f494554dfc11bc18a3e58b (commit)
via aab82f4c201a2612c0fb6d5b66d8e4ce2f036f1c (commit)
via f78c0b915888ab388f9bdac826d7ac18dc944c28 (commit)
via 58667758b1f907f8983d8a065333e3c38e311e88 (commit)
via 53a346d8236aec06f1d3c767716d3340fb0aa013 (commit)
via 21d1fbeed4b7c4d006e399437445519e6505088f (commit)
via 8010f3ed8d459f98b8ff8b8577a0ed422c836e0d (commit)
via a6da46304894741d50a6f4ca2263b5cc158740e4 (commit)
via 94bb8dfe28219e4b747cb874aae401d18df91c9b (commit)
via 8248946cc5fd4522de630b9d86627af6e8fe0097 (commit)
via e645cf40b111daef4518a58547de577eb9379ccb (commit)
via d2732b697fe56ff4274a4bc45add9386c17f8a07 (commit)
via 56eeb7f2cbdb16f513b825af426ee38d8f7efe3a (commit)
via dd9e66ee9549c872fad36a21d521b68b14429f38 (commit)
via 38b123494b38ae09168387c0502acd1f23c1b601 (commit)
via d7ab4911f8aa3e1cd06ece40f74d0b4a532d6a10 (commit)
via f604c2a2a54ebf88e4a51986c7cdedffe7b3313a (commit)
via 046734ff424bc5a4c1b6a69630d5bb31aa67165c (commit)
via 313c59612298b022a408ca390bd5f73f28708015 (commit)
via 27bfc1d1c2cbcafccddef51ef82b309ef147c4a8 (commit)
via 146e6c5cc7b19ea56a033415511e38a2d0656e42 (commit)
via b48e3ca69abef81d729d01d7c720fb23697c3590 (commit)
via 618a737b59008a0153f6454ae9a6d42814384828 (commit)
via e50f25ecdb24505bccb695e6c63add45f0032b9a (commit)
via 21ea5acdd1bcfe89984b16b5bac730050c5cf05e (commit)
via 7b937cba77df45962ced7e0e03802561beab549f (commit)
via 7ed1acafa0b5d135342f9dcc0eb0387dff95005a (commit)
via e13cb306f099a8cd450c9fba0dfa22521aaa3c95 (commit)
via 323449189c3474d1ab352b49172f4f59670ea73e (commit)
via d512d31c395e3c45f83778e01b9824efe45cac5f (commit)
via 5ed8105e02d0c6648b7faea9f4e941237b932717 (commit)
via f6223dbb50b5d8780df633633adf0742c662173d (commit)
via 3c3ae77e68a9032ef9f174bf6b1cc992b6a4cb35 (commit)
via f91d48deb29d9e6f4b530f586db0140943ed0d83 (commit)
via 45eba0ab7d26435121facb68847fbd0cd4a313c1 (commit)
via b660e9eb7a45cfe99e719c5d16af35913a2fdc96 (commit)
via 8293e73636484b403150ae94a93619779bcbae96 (commit)
via 8507b6e79772ffeb83a0142d12a63e02dcc44562 (commit)
via 90cef2edd256c48d2ff9a03d4a6c1bcb575db07c (commit)
via b22908217d8593185af3f76fab6f0f01457b0600 (commit)
via f81fdd350e688bd0216486b30884a52ebc4f32b8 (commit)
via 35837774a77d641ba3ae75930a7b08ed853759ad (commit)
via c94fee56f5f8e5e26a115a1ca155ddada9d43b31 (commit)
via e78bb25cb636a331f27e9cc4cba5522939567695 (commit)
via 35387fdec5e10b281c218c9dc4f3dc33c3fcc522 (commit)
via 82d808edbc7a06f706b82064cec6c3ed88f0c4be (commit)
via 3d8505928a06e00b05bb162c1ad0dd612c1c16af (commit)
via 43e379d74c994fe431368b5f25f778bf601a2981 (commit)
via 763a5fa4f330d6d3859c94a69ba1fcab09330cf9 (commit)
via 640226f048b67d79da85742728e40114c9ee5da0 (commit)
via 2ecf0cc317d065cfeb960c61688897351521bce0 (commit)
via d17f7b365cf3896b3129b9077d55b3154fc43131 (commit)
via b560ebd6605503276e09b2ef75c94e1d10f176f2 (commit)
via f2f46dfcdafe6bd32152d80b5e832d2fab4e6900 (commit)
via a0ff9e1ad221c11f58a9d8d12a84c21579132d85 (commit)
via ea480a306d46efe3dd1839618137f0e73a80e9b3 (commit)
via 1395c6ce47510babad3dcb9892f6f2517a3f2b59 (commit)
via 73ec947d59c511411377ad51ef792a5fcdd3f0cc (commit)
via a4ddc54ec1cd187c844ca631fe0315bf1d78e96f (commit)
via 39ff1b79f687b65f4144ddb379f22587003443fb (commit)
via d050f7d7f474c7e3ba26902a9cbb185910921a11 (commit)
via 14f819c8c5f7d080e5eea9256f0ec7453aac750e (commit)
via 0ed5da759e34c6e85cb2a9ea0fdc7b680f897a81 (commit)
via 913aeadd9d6b8bdea5131b16dc7ede395097656d (commit)
via a3be24ad59d683d1b08df28e093739743a7cf256 (commit)
via ae20e79ae852fee8f7d42701a54a95de3b79ecea (commit)
via 8d0050ea192c41349c1f2b000866c1bdb761abeb (commit)
via fe50e98c9a22a89ca2e032b17aa7162452c3ad3b (commit)
via 122a483d4f19c8b0a7f3d265dad882bd4f2c868a (commit)
via 0aae7e72a2a11ef1fd2a3b4fd18c8d8d49e0c21b (commit)
via 3f380b502769e55bbcdf7b9587c62344913c6ee8 (commit)
via ee7e95efb98186c09dc2c39b32263aa15b147bb0 (commit)
via 6224c858130fe5c5e5d8b2abdec1cea35986d9e7 (commit)
via 020bf56c8e55bfbe5a53989eac0c72b8d2416feb (commit)
via a941291cab71b9ac356e1c03968c177c03e602ab (commit)
via 45ce1b47e4490993b5c1a04f4a8acb62d9ec5039 (commit)
via a93866c8bfd4ad4b32c81e73e6a73aa9d831d350 (commit)
via 0749542484129e77a30f1089d6d671197be5035f (commit)
via deb1fa3edaf10c65d1f39951779927da955e3a57 (commit)
via b421c83cb866120ab347d60fda20fb0e2011be8c (commit)
via ef79d9a3c6ed1e3ccd466bae76956019a7c5d376 (commit)
via f8fdb78eafb3f70661f6e4a43beb004dde9e0921 (commit)
via 9ccbfd7bc1b7228d67f2d4ca878224d493918264 (commit)
via 76e75227c37bc058449a09fe5017eeb40cda0781 (commit)
via 51046d9e60727cd6a4cfeae29a05ce2e1e394dc9 (commit)
via 4023ae762ed9b52e4925242b705d0b3a50f6ed13 (commit)
via af43057bafa7260dbcc453d2acc47eb63b974c50 (commit)
via b091120773f8a740065b6449617cfbf1e0e789f4 (commit)
via 6c401f72e979ddd7e2f890dcc88f93f683233d74 (commit)
via d0e449a1865c741c5e0c9d43a7d61a0621163aa7 (commit)
via 434a40239548115cf04a80410e4f570f35c361c1 (commit)
via 1670f9c1546818c4ffe02e8f460df1c1c4b1601d (commit)
via d6f48aed23d1004a4ed8ab3b2742b0bf7c838c1c (commit)
via 428544e8ae6252a615a3100889f3df7d2c5483c4 (commit)
via 750eaa47f10f48d19aacbec74ab6867da0164677 (commit)
via 4621115fe529869e938dca605bb90190ea52316a (commit)
via b06b2c92c06cf100f259f218337d007ee0b1c884 (commit)
via 4e3afec278d1fb55b983751d02119f65566bd094 (commit)
via d949ff5607b9f595e0eed2ff15fbe5eb84eb3a34 (commit)
via 339053c29abac25e5f86a1ccccd4e8e3b2d362df (commit)
via 7974a6050b6e2c44722a533e2d5d9131e7db00ff (commit)
via 343b374c61f793f745b820c3cf61f69186566b18 (commit)
via e15c3eb45bdc8bd5717fd5ceddcc30c3de07b58f (commit)
via 5b66fac4bad619766fb1a5f5179c08b67d48a8c5 (commit)
via 72bc1d246686ff38ef01f5a35769ebdbe39f023c (commit)
via de9a3c4285fad1914929ee304ddaa26e76af8031 (commit)
via da3d25afa26476bf24247b8696fd00ab31f39db9 (commit)
via fba37edd96c8dc65a63bd5b4fef5366de45b165a (commit)
via 1f78f649e868979d36490d7c2ea0b3d41abc5ec6 (commit)
via 55bcecda5703eb4647165cb3ddb86aed63fd44d2 (commit)
via 14f72d45a22f25f6d00a62fc03bcf9827df226f5 (commit)
via 1425c41dcd68350d9be9670910c547cc7ab91e0e (commit)
via 5c99fcf8031bcf96f2c948e9fc5d3b03c97f631a (commit)
via f2d830a50def7a00a911620a3e9c7d920e5ef0f0 (commit)
via 76c20d54ca5042e11af9ddf5723cc24cf47736ec (commit)
via d7153c4ac333c9127c18efcf184607d368bb142d (commit)
via 641338d8e9b62bde9672f13f0dca2324b61e46e2 (commit)
via 21d68fcd0c2f9113369d860ee1e5841bfacc35ff (commit)
via a61d92b7bd4da998dd5d73e9205b4871f7c4825d (commit)
via 7a81a73b2e5d00b76e15d97db7b8f0c9809ba1b7 (commit)
via ce8ad8721313d288a05a95b62d95ca43db584ebb (commit)
via 97d343d40012b1030f1fd219f91efcab180fb3ef (commit)
via 04b31182bf3f8a1a76e995bdfaaaab4c009b9cb2 (commit)
via d21f3ddb0d5f95aff5c769ae283ce5522262f48d (commit)
via 740a463062bd5d1641bdfb639295dafe89341b9b (commit)
via 3e6b644558f941d3fe482e15efbc53d8f39ef8b7 (commit)
via b41c5a85a734b9ca813d4a314b66ef4b4b4d1b11 (commit)
via 23ec1e32b1ab714649a7c25e49b5d721fe3bd3db (commit)
via c46cec3a8cfe02fbe0f6c67ba53abc5369c5c659 (commit)
via bbdd9a6894d7875407da59d490faf5588163d21c (commit)
via e63d123268f23a4cbc45ee55fb6dbc7d84729da3 (commit)
via c185f580b2b3baf7cee762c8ab31ab6925b9534a (commit)
via 19c4559475791cd70e319eaf5c1e23d23d9ae81e (commit)
via 03def0812a9ee962d9dcfe9b0ba37783e58acfb8 (commit)
via 4658f12e9c5ec0d2efb04f1688f6cd6bd9f1a47d (commit)
via c4ab9505b53cdc899506ed421fddb7e1f8faf7a3 (commit)
via 919383ac718c2a3187ee2a9ad659daa22da26258 (commit)
via 126124cc0f3f0417913bfd84d83e4e525b6facf9 (commit)
via be6a24d8eabdbeef32a9d79e81307af4491fcf56 (commit)
via d581dda88162831ebbd0757312fa93681d945327 (commit)
via 0348fd79d4c32243d91e8a55f20f408a9b4ec20d (commit)
via 6e3d1f0728d980a384c5aa63ce7f2ff3919c5024 (commit)
via adc1273cb27286452ed8b32c5ca3ea263b4854f0 (commit)
via debed3db4887483552103da36d180967ef0dca5f (commit)
via d28b6364b1fba1c0270c001f0d82a69e351e1922 (commit)
via b0b92aeb3828219075fce23543fb39fee8608e99 (commit)
via 16c4d54a71d8052988ed9c8005a03a7f934245f4 (commit)
via b5c3668253b909fd1f5b011893a35bb8dfd3be9b (commit)
via 5625a2864147f4d92b22edfeeab7600818988be2 (commit)
via 23bcc18f470ee4364bd362a8b78c6c1415a9dadb (commit)
via a49abe0bb18e04d3a4b692995fcfae70cd470775 (commit)
via 9e9821ddd80c0d0b3dda54d34cc8867f256d4583 (commit)
via 0dc9a308a1ec9675bf6b33bae9e8b1faa0bad9ed (commit)
via e1ba30532c6de26a14404ab4919bb591e8da3eab (commit)
via e662f84f5d6d014746550ce3d3f623583c043ff0 (commit)
via 1587442d37ee4266e54d59bfdc783574f0587aff (commit)
via 534455547021f3262fa60d32cabb626af01692a3 (commit)
via 8b353c47b70568ab9f0cfd619b7a19e931c2b0c8 (commit)
via 957f6b39cab6cac0e4c54e650c7f75109544ac1d (commit)
via 9ad8982091eeb76b380e459fe721aaeacf7b8f24 (commit)
via 42354845ae5e00ec1c3519e1f2166b79a9533401 (commit)
via 7034215fd6d99f275998f7f0f8a346ab35fcbee6 (commit)
via b02cd3e978e9273074f7cbe2ca1d5b372225a56d (commit)
via 7eacd66b086cabb1daab20890d5481894d4f56b2 (commit)
via bce964aa6c777d236fbd641f2bc7bb931cfe4bf3 (commit)
via 97e83a100aa8250be783304bfe0429761c6e6b6b (commit)
via f082820db966c79e47a143da774700055a1fad41 (commit)
via b43eea27e99f5fd270b3bec455054ea53ac700bb (commit)
via bf1554384b186b448904dbc13ee5374239c88520 (commit)
via 10f489e57677e670bf980e93896762594e9ad908 (commit)
via 0092b74da6d86185c4d0c0fa0f540b97647bf44a (commit)
via a14a62ddff9eadbb8a7ad101ab06b02e44b6c00a (commit)
via 46b9c12945629fffb61001a8f13a37c96675c0b7 (commit)
via 2e78302469502f4f8a98144b60c09d4d9b6438fd (commit)
via a8cc8a548eccdfd78ad76c826339f56db815bdb8 (commit)
via ebe553db6c639d7533650f8482d611109c2f98a9 (commit)
via 9be21bb4d4f30975766dfaa7d40b53ba10dcc3a0 (commit)
via b8ac4fa43d5d37e4028ba2a7cc2d9b100ee85418 (commit)
via e133d00576f3da89e7772149e8d2b6a059d26919 (commit)
via 3c5fce9bc29b216af7d10f8d6e4d8c3f11a48359 (commit)
via 0d4c07afb1e5e37e8e296858f8b14a3b4adf950b (commit)
via 4daf993d4d4686f2707810af3725038d2f289bbb (commit)
via 3ab87b688320e02db1bb7ed4bd45323d57737c77 (commit)
via ddef72cdc10d82ba011a7ff81cafbbd3466acf54 (commit)
via 792f174f8af4291c222d0a6de919118e488258bc (commit)
via 73b58fda3b5976ad1a60feb43695eaf61cdf62b9 (commit)
via afe9edbf486c4b27cceb258c11e104377512ec24 (commit)
via 0fad29560ee055f1253a8e40bfc09b413117480d (commit)
via 31321c8031315c8b5f7c6b73e464f14ad90310b6 (commit)
via 64575f782b79e310852e43947bc1b06f24af388e (commit)
via 59fa66c53823dc695f78669f40ec2eebab3aec42 (commit)
via c76886885987e543f9162809ad86a0a37b394e82 (commit)
via e492d2f8ac653b050019865ba1418fc5b057c00b (commit)
via a6c21d4a553de184562fd8409a5bcd3f2cc2561a (commit)
via 3a3fd0fd2c4c87fdd588c51d879961a49e38f0c1 (commit)
via 9bcb1f1630b05594fa86bfd017639cfcc966b11c (commit)
via 26fcd539dd38a27259d8179152d617118f016706 (commit)
via 101691343ce5f815dc70f6cfd083393e259a18d8 (commit)
via 954b63d4c8645f86e40c7ef6c6d60acd2bf019de (commit)
via 951787ed6d13f8f441d93fc3f6fb870c234774af (commit)
via fdd243b001585c5ca078342608332af77050c867 (commit)
via 4895cde29761f6c39fdb6c319ff4666ee39f5d28 (commit)
via bd8a901f9e34191e0645a5527556d124ba5c345a (commit)
via d35d19584cf56a50b4833ff9c003597e01022f27 (commit)
via 22796e972f18c5601cecb0251222411a352836b6 (commit)
via a7fc9b6193f830293066479aa439cea924418393 (commit)
via 010151c9146eb2a299686e41c714e57c344be8e8 (commit)
via d56060f08aa4ed5786042a066f62aa8e474cc0fd (commit)
via 6631d36456babbaf4c78b955165c3344f95ac5dd (commit)
via e6699019c4f363f804f9646974ab1d5e78785ffc (commit)
via 305d16a9beff2a817ee03b3881da68eb3a29edec (commit)
via 8bb5723165d4e7308fb69b21a95f396f9e61caaf (commit)
via c5d37467b152fe98f02ac1ff8188e32ecd0def95 (commit)
via c661778cb6b406d5b55fbf22ff88fbc85ee3f4c2 (commit)
via 94522e5f36e542a7f7eccc4e2fa31682e58f812c (commit)
via 725bf5cf125783c2a7ca4ab63d3768e220bab2db (commit)
via 096c92ddb3a5a959bc638cff3c4ffa0f48a737d7 (commit)
via 5dc74d659d1c84b8ffdb4fcbf2ef73dc974d8a5b (commit)
via 0550c9559522c84341edcb334af30bc9bf2df9fb (commit)
via e3d60dfc000a29959c78bd69b85100aab33f7ab5 (commit)
via 5fd69d0ab2c42d2be0781bf3a5d60e1d5b8d05dc (commit)
via c6609450b33960a0e9f8c1df045b02f0677e866a (commit)
via 2a00d7ce26a6ee15e3712b045c8b7932278ea23b (commit)
via 441d7c93782a1b1877bfa903dc8da56a6041bfb4 (commit)
via 7296a62a2a237f6b1ad8db8c38b090e9f592c8cf (commit)
via 1d15e434f43bc41a07bc7b0648fcb7e6ccbe8dcc (commit)
via 4274208406762da7af6dd697f44d8e6895061530 (commit)
via 808480f667e41e2fdb66bfdc9d5e047f1aa34a68 (commit)
via 8f0dd45fde9de100160f45cad3e537e4e01a5493 (commit)
via b1b45502bdef95b57125b56287b45c2eb26707d3 (commit)
via 63a5468afa8e2cf8843d87b99e780e9266b31014 (commit)
via dae82561a286618acf097ad9894eafba98377f66 (commit)
via c08bb8dd9bd9fd101018b287726187d7ed6a0035 (commit)
via 10463f39c79843c2c141481a0781091870695b17 (commit)
via 4af8774e1559b2a4e098ca0e4fc5daf857c633c1 (commit)
via ad3d022a77afdbaba4bb36ff4aa99be52892de42 (commit)
via e6ddc3bfedb4665c9d4baa2c85037af25167cdf3 (commit)
via bfb8cf9091a174b42beeff3d014173084413af4d (commit)
via f5336ca55ca0aca2507ac8c0f1d573d7f6b877ab (commit)
via 4f70a994900c2f7b235add7d4131cc069c181cea (commit)
via be628ab814f1c90e185d7482d27aa8a991ab5837 (commit)
via 8e9e35b1808481735e2d1efbf70ed7396a845d8e (commit)
via 16e802b9c085ce354b1ab9e2fd25d00bf7626fa8 (commit)
via d28cd78ad820e3a40ac5064b6a30f3a12ce70bf0 (commit)
via 711799d513206f6d8fc3dbfa81dcdecdb2ce6ece (commit)
via 52d214d3e1b2f6a1382feafbf2984acdb24c0c95 (commit)
via 4c404b8be6b1d8759eed50366207fc0e2e47d2b1 (commit)
via 156d9eab863f40fc812245cf1213abbe12d192b3 (commit)
via 4d89769a7b4e38e94a6e027281b36eff71fc8214 (commit)
via 4b217cc72b7ab04e2bea519f9fbd47d8952e08f5 (commit)
via 59d3651be7419fafa959f75a3fd46914f5ce395a (commit)
via b24b0d6c3be6b95d4b5e8da901e1ef315bd458b4 (commit)
via 80a3b8c578e93119183db5f5e34248f843e410a7 (commit)
via c83dd8672698bcdf48d27e267e481230075f5900 (commit)
via 0e8621a0bec2d0840b853c4104614f345f0569ca (commit)
via 67d89901506da74d00a482b7560237dce404b41c (commit)
via 93921405a46c0a58eae19fffb92e02416082801a (commit)
via ffc2605c41d026cf5710704848b7c3b1cdbdcf49 (commit)
via 8f10c9323357ad190c0383f2fc9d394316447905 (commit)
via 0a31ccfbd84660a91b133a9915e6f63c30033189 (commit)
via e9bb3fbbe81115b196b436cf513f0fd7b41d6a4a (commit)
via 53375380e934928af133bca69c1e1912c35e9c73 (commit)
via 53e710acd249e1861029b19b7a3d8195e7f28929 (commit)
via 5e0e0422137063ff3846886c8eeb64e98e7669d6 (commit)
via ab0538b875c054468aa205d8d36550d1223a3bfd (commit)
via 5430098f1807e084fe4ff5057040d68435f3d8a2 (commit)
via 7c5ded6a00c4817d56cdf04fbc1969bc33b2a930 (commit)
via ef6a5ae7bd1dd7b528f5cf368d98056603003c35 (commit)
via e4097f5ee55a0d14a6213bccb9da39d4878714c8 (commit)
via 537616aaeb44bc698af9848987e7c8e96d550595 (commit)
via ae0eee42821865ead8d391bb4f92bd2c136c6d43 (commit)
via a6acac06113f4b04fa0333ee2a3ab3025b43ee7c (commit)
via 64403bd1832e10aa8324194968f72bdc5feb5aeb (commit)
via fbea15088db59186960134d11b8bf98070224d6c (commit)
via b43c520dba2f909c9bbb3ff5f2657c1c9010939b (commit)
via c03dc33b606c17231e47f37ae0f00d1c9a6c0506 (commit)
via ef85eab0ec3d7c88ea05047538d11fe704806cd8 (commit)
via 9570835e5597037bee5042edf822675e715b3caf (commit)
via 9a85b496ac4e6488d427155c24f87367ab1f6b1b (commit)
via a5bef50fdbfadbc6b8911b458580ee91cbfcdafd (commit)
via 28d909e539567ab5ecd2bc20680e933869fdf889 (commit)
via a70f34c01c7f250858bd62df245c241263200f63 (commit)
via 9295a5a95da871bfdeec225a6fc2f52f7655bd1c (commit)
via 996812e3d43f78b17b6454d2948cd825ec98c63b (commit)
via 845b344fd54ba381a826b271dd33682d1f148438 (commit)
via 803bdfe43083475c7df3db38dc96f4e20d05457d (commit)
via 8c25b49760b854d0b8451e8ecffeb9860fc41158 (commit)
via 947fa9141488c1d39303fcdaa056332d2d0b2599 (commit)
via bb1dd176fb6f38ae3cc30dc61ce55a7fbf9d0d7b (commit)
via d236cfd444630bd9ddb63edca54c056d5825e673 (commit)
via 62adc51030ad83d09e6d20c455616fd9216e4783 (commit)
via 6f9dbcd42f2cf034a9a21f46842c08d2e88449db (commit)
via 37095d07b470ea94d578cd5ca2da032617200c52 (commit)
via aa808707033a46ee063263f4bc1bd06449851621 (commit)
via 8473b4472dce9ce87aaad35ff8e975e1487f914e (commit)
via 4a44171e07147c6b943412c90184736ca5dbfb4c (commit)
via 5e8bf44f4c94d430ac21257a1a953cfccd2ce79b (commit)
via b630840c9c22a877b2c6270880a214f7b451f546 (commit)
via ae27d3fe76ffb54e7d413a67d8c8d76ca78a9681 (commit)
via aebcde5eb475befba571ca9ae7b6c58126d41160 (commit)
via a7eaf017f95932eb2d654bd61f4c4a873ba71f77 (commit)
via 8170f7693bc0a9442c0aa280197925db92d48ca6 (commit)
via 6670ec13726c3afca789672f6235378a5e1f7d71 (commit)
via 49f4617bf4b86a0b057f3477d57ffbf7c998b229 (commit)
via ae3f8c28134b52414a4c31df2e156615087c46e5 (commit)
via ac8f0f721bf0db9ffd0c6602744f1859cb4dd8d2 (commit)
via 5c1f54ce0b21b19ac0b2a2c921c9ea2f33bbf5fd (commit)
via 498e34425b38f69ceba28707962e3593c281261a (commit)
via ba2f91bb5d69127da41b368c7226f596ee449eca (commit)
via 1fd6d111905e76dfa7af9fbee5229f3f1d360b4c (commit)
via 436252de3e9de546001c4312d0863ce7e10aa200 (commit)
via 1379e3aaea5e9454d7e75f293c3fe24c0d11c688 (commit)
from bbcfd44e17e4c85fd9dac9cc28188a8d4a32418c (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email.
- Log -----------------------------------------------------------------
commit 9e8f1a71428e1266d47d8cf4a809257c363b1933
Author: Stan Cox <scox@redhat.com>
Date: Mon Apr 1 10:13:57 2019 -0400
Handle T packets and all signal types.
commit 2ad04d13ca374ad23978e3869604ada84f03cb94
Author: Dimitar Dimitrov <dimitar@dinux.eu>
Date: Mon Dec 17 21:30:52 2018 +0200
Fix build with latest GCC 9.0 tree
A recent patch [1] to fix a GCC PR [2] actually broke the GDB build.
To fix, remove the stack pointer clobber. GCC will ignore the clobber
marker, and will not save or restore the stack pointer.
I ran "make check-gdb" on x86_64 to ensure there are no regressions.
gdb/ChangeLog:
2018-12-17 Dimitar Dimitrov <dimitar@dinux.eu>
* nat/linux-ptrace.c (linux_ptrace_test_ret_to_nx): Remove sp clobbers.
[1] https://gcc.gnu.org/ml/gcc-patches/2018-12/msg00532.html
[2] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52813
Signed-off-by: Dimitar Dimitrov <dimitar@dinux.eu>
commit 45147410465dfc606c31cfa699ce713fde14f28c
Author: Stan Cox <scox@redhat.com>
Date: Wed Feb 6 15:28:25 2019 -0500
Client state cleanups.
* server.c (free_client_state): Remove.
(setup_multiplexing, do_multiplexing):
Return if no multiple clients.
commit 99972adf78af3e7bdbbfe0fd0f562f9a7952d2a3
Merge: 5445eba 8f531a8
Author: Stan Cox <scox@redhat.com>
Date: Tue Nov 6 21:11:56 2018 -0500
Merge branch 'master' into scox/strace
commit 8f531a8d1f9b9b9061368ddd89d1b7e7aafe9e38
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Nov 7 00:00:16 2018 +0000
Automatic date update in version.in
commit 31aceee86308321c2ef299e50773d0043e458e7f
Author: Tom de Vries <tdevries@suse.de>
Date: Thu Nov 1 09:21:18 2018 +0100
[gdb] Fix gdb crash when reading core file
Consider the test-case from this patch, compiled with O0.
The executable segfaults, and generates a core dump:
...
$ ./a.out
Segmentation fault (core dumped)
...
When loading the core file, limiting stack size to 4MB, gdb crashes:
...
$ ulimit -s 4096
$ gdb -batch ./a.out core.saved
[New LWP 19379]
Segmentation fault (core dumped)
...
The crash originates here in linux_vsyscall_range_raw, where we call alloca
with phdrs_size == 4194112 (roughly 4MB):
...
phdrs = (Elf_Internal_Phdr *) alloca (phdrs_size);
...
While for this test-case gdb runs fine with the system default stack limit of
8MB, there are cases reported of 12MB phdrs_size where gdb also crashes with
the system default stack limit.
Fix this by using xmalloc instead of alloca, which prevents the crash provided
the stack limit is at least 112kb.
Build and reg-tested on x86_64-linux.
2018-11-06 Tom de Vries <tdevries@suse.de>
* linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
program headers.
* gdb.base/many-headers.c: New test.
* gdb.base/many-headers.exp: New file.
commit 109be305bb6acf7604f95411f333549f33a673bb
Author: Jim Wilson <jimw@sifive.com>
Date: Tue Nov 6 11:06:23 2018 -0800
RISC-V: Force variables to .data for code_elim.
RISC-V puts a global variable in .sdata by default, which causes the
add-symbol-file commands with -s .data to fail as there is no .data section.
This fixes 3 testsuite failures.
gdb/testsuite/
* gdb.base/code_elim.exp: For riscv, set additional_flags
to include -msmall-data-limit=0.
commit f11acc5ec0b9cd35e3582b8f9eef6be5d3c59ad7
Author: Max Filippov <jcmvbkbc@gmail.com>
Date: Wed Oct 31 17:10:33 2018 -0700
gdb: xtensa: use linux ABI code for uclinux
gdb/
2018-11-06 Max Filippov <jcmvbkbc@gmail.com>
* configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
so that it applies to uclinux as well.
commit 9e237747bd1fd7b371fed5edb91dd9baace4b2dc
Author: Marius Muench <marius.muench@eurecom.fr>
Date: Tue Nov 6 10:51:39 2018 -0700
ARM: Do not use FP reg when on AAPCS
GDB tries to dereference the frame pointer in arm_scan_prologue as a
last resort to create frame information.
However, the more recent AAPCS ABI does not make use of a frame pointer.
This patch checks whether the specified arm_abi is AAPCS before
dereferencing the "frame pointer". If so, just return as efforts to use
it for restoring frame information won't work.
gdb/ChangeLog
2018-11-06 Marius Muench <marius.muench@eurecom.fr>
* arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
when on AAPCS.
commit bcecc11da243fe5c333f9d2d914663d09f4b868d
Author: John Baldwin <jhb@FreeBSD.org>
Date: Tue Nov 6 09:47:21 2018 -0800
Note that PT_GETREGS supplies SSTATUS for FreeBSD/riscv.
This permits reading the value of the SSTATUS CSR returned by ptrace()
for live FreeBSD/riscv processes.
* riscv-fbsd-nat.c (getregs_supplies): Return true for
RISCV_CSR_SSTATUS_REGNUM.
commit 8a6b075bc07f66678ed0176f895847df3ea7fcef
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Tue Nov 6 09:38:33 2018 -0800
elfedit: Add --enable-x86-feature/--disable-x86-feature
Add --enable-x86-feature and --disable-x86-feature options to elfedit
to set and clear the IBT and SHSTK bits in program property in ELF
executables and shared objects.
binutils/
* doc/binutils.texi: Document --enable-x86-feature and
--disable-x86-feature options for elfedit.
* elfedit.c: Include "config.h" and <sys/mman.h>.
(enable_x86_features): New.
(disable_x86_features): Likewise.
(update_gnu_property): Likewise.
(elf_x86_feature): Likewise.
(process_file): Call update_gnu_property on ET_EXEC or ET_DYN
file.
(command_line_switch): Add OPTION_ENABLE_X86_FEATURE and
OPTION_DISABLE_X86_FEATURE.
(options): Add--enable-x86-feature and --disable-x86-feature.
(usage): Likewise.
(main): Handle OPTION_ENABLE_X86_FEATURE and
OPTION_DISABLE_X86_FEATURE.
ld/
* testsuite/config/default.exp (ELFEDIT): New.
* testsuite/ld-elf/linux-x86.exp (elfedit_test): New proc.
Run elfedit tests.
* testsuite/ld-elf/x86-feature-1a.rd: New file.
* testsuite/ld-elf/x86-feature-1b.rd: Likewise.
* testsuite/ld-elf/x86-feature-1c.rd: Likewise.
* testsuite/ld-elf/x86-feature-1d.rd: Likewise.
* testsuite/ld-elf/x86-feature-1e.rd: Likewise.
commit ddea148b3da27eb681504bf341f45abb7a74580b
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Nov 6 17:09:40 2018 +0000
Add support for a couple of new Mach-O commands.
PR 23742
* mach-o.c (bfd_mach_o_read_command): Accept and ignore
BFD_MACH_O_LC_LINKER_OPTIONS and BFD_MACH_O_LC_BUILD_VERSION
commands.
* mach-o/loader.h: Add BFD_MACH_O_LC_BUILD_VERSION.
commit f86e17aacf47c7b49ed0f6b23a481784f3946133
Author: Matthew Malcomson <matthew.malcomson@arm.com>
Date: Tue Nov 6 17:09:34 2018 +0000
[arm] fix testsuite breakage on pe-coff
The PE target can insert NOP's for padding to 4 byte alignment.
This was causing a testcase failure, this commit fixes the testcase.
This commit also escapes some full-stops in the testcase regexp.
2018-11-06 Matthew Malcomson <matthew.malcomson@arm.com>
* testsuite/gas/arm/neon-cond-bad_t2.d: Fix testcase for PE
target.
commit bc52d49c1d0e9b5d196132efb41addaf0bddad4f
Author: Matthew Malcomson <matthew.malcomson@arm.com>
Date: Tue Nov 6 14:52:11 2018 +0000
[arm] Check for neon and condition in vcvt.f16.f32
VCVT between f16 and f32 is an Advanced SIMD instruction.
Not all the VCVT alternatives need neon, hence the check for neon is in
the encode function.
The check on neon for VCVT.f16.f32 (and vice versa) is missing.
vshcmd: > echo 'vcvt.f16.f32 d1, q1' | gas/as-new -mfpu=vfpxd -march=armv8.5-a -
testdir [15:59:10] $
Also, the handling of the condition code behaves differently to other
SIMD instructions -- no error message is produced when assembling an
instruction with a condition code suffix despite the arm encoding not
allowing a condition code. (n.b. the actual binary produced is
independent of the suffix).
The instruction should be treated similarly to VSUBL that has the same
caveat of "must be unconditional" describing the {<c>} symbol. vcvt
half-precision to single precision found in F6.1.58 in the ARM
Architecture Reference Manual issue C.a, vsubl found in F6.1.240 in
the ARM Architecture Reference Manual issue C.a
2018-11-06 Matthew Malcomson <matthew.malcomson@arm.com>
* config/tc-arm.c (do_neon_cvt_1): Add check for neon and condition
codes to half-precision conversion.
* testsuite/gas/arm/neon-cond-bad-inc.s: Check vcvteq disallowed.
* testsuite/gas/arm/neon-cond-bad.l: Likewise.
* testsuite/gas/arm/neon-cond-bad_t2.d: Check vcvteq allowed in IT
block.
* testsuite/gas/arm/vfp-bad.l: Ensure vcvt doesn't work without neon.
* testsuite/gas/arm/vfp-bad.s: Likewise.
commit 0632eeea6eb1096fe7ddbd7f81bd74b360d1f511
Author: Sudakshina Das <sudi.das@arm.com>
Date: Tue Nov 6 12:13:45 2018 +0000
[BINUTILS, ARM] Add Armv8.5-A to select_arm_features and update macros.
This patch addresses the following
1) Adding ARMv8.5-A in select_arm_features.
2) Updating the feature macro so that the new ARM_EXT2_* features for
Armv8.5-A are moved to ARM_AEXT2_V8_5A.
*** opcodes/ChangeLog ***
2018-11-06 Sudakshina Das <sudi.das@arm.com>
* arm-dis.c (select_arm_features): Update bfd_mach_arm_8
with Armv8.5-A. Remove reduntant ARM_EXT2_FP16_FML.
*** include/ChangeLog ***
2018-11-06 Sudakshina Das <sudi.das@arm.com>
* opcode/arm.h (ARM_ARCH_V8_5A): Move ARM_EXT2_PREDRES and
ARM_EXT2_SB to ...
(ARM_AEXT2_V8_5A): Here.
commit 715537181e9ba6ab371265fc4455d89533202fc5
Author: Alan Modra <amodra@gmail.com>
Date: Tue Nov 6 16:04:40 2018 +1030
PowerPC instruction mask checks
The instruction mask bits should never overlap any of the operands,
nor should operand bits overlap, but some operands weren't checked.
This patch arranges to check the omitted operands, using a mask
returned by the operand->insert function. Some tweaking of various
insert functions is needed to support this: The error case must set
field bits.
Since I was looking at the insert functions, I tidied some dead code
and simplified some of the powerpc_operands entries.
gas/
* config/tc-ppc.c (insn_validate): Don't ignore mask in
PPC_OPSHIFT_INV case. Call the insert function to calculate
a mask.
opcodes/
* ppc-opc.c (insert_arx, insert_ary, insert_rx, insert_ry, insert_ls),
(insert_evuimm1_ex0, insert_evuimm2_ex0, insert_evuimm4_ex0),
(insert_evuimm8_ex0, insert_evuimm_lt8, insert_evuimm_lt16),
(insert_rD_rS_even, insert_off_lsp, insert_off_spe2, insert_Ddd):
Don't return zero on error, insert mask bits instead.
(insert_sd4h, extract_sd4h, insert_sd4w, extract_sd4w): Delete.
(insert_sh6, extract_sh6): Delete dead code.
(insert_sprbat, insert_sprg): Use unsigned comparisions.
(powerpc_operands <OIMM>): Set shift count rather than using
PPC_OPSHIFT_INV.
<SE_SDH, SE_SDW>: Likewise. Don't use insert/extract functions.
commit 2eac3da184459607a476ebb5dcebd6e0acf9fefa
Author: Alan Modra <amodra@gmail.com>
Date: Tue Nov 6 13:23:20 2018 +1030
PowerPC instruction operand flag validation
This adds another check that might have saved me a little time
recently if it had been present.
* config/tc-ppc.c (insn_validate): Check that optional operands
are not followed by non-optional operands.
commit 4dd4e6394509d58685daea52cc6947c45fd7ee9d
Author: Jan Beulich <jbeulich@novell.com>
Date: Tue Nov 6 11:45:49 2018 +0100
x86: correctly handle VPBROADCASTD with EVEX.W set outside of 64-bit mode
For the flavor having a GPR operand EVEX.W is ignored outside of 64-bit
mode. The mnemonic should therefore not be VPBROADCASTQ.
commit 9819647a63bfca45a879650ac23fe80f51b89edb
Author: Jan Beulich <jbeulich@novell.com>
Date: Tue Nov 6 11:45:11 2018 +0100
x86: correctly handle VMOVD with EVEX.W set outside of 64-bit mode
For the flavors having a GPR operand EVEX.W is ignored outside of 64-bit
mode. The mnemonic should therefore not be KMOVQ, the GPR operand should
not name a non-existing 64-bit register, just like is already the case
for the AVX counterparts, and the Disp8 scaling factor should be 4
rather than 8.
commit 58a211d2602df0a39779c84a344b1b4d12deb2d0
Author: Jan Beulich <jbeulich@novell.com>
Date: Tue Nov 6 11:44:31 2018 +0100
x86: correctly handle KMOVD with VEX.W set outside of 64-bit mode
For the flavors having a GPR operand VEX.W is ignored outside of 64-bit
mode. The mnemonic should therefore not be KMOVQ.
commit b50c9f31661be05bcd73fb1158e02f606e696948
Author: Jan Beulich <jbeulich@novell.com>
Date: Tue Nov 6 11:43:55 2018 +0100
x86: adjust {,E}VEX.W handling for PEXTR* / PINSR*
PEXTR{B,W} and PINSR{B,W}, just like for AVX512BW, are WIG, no matter
that the SDM uses a nonstandard description of that fact.
PEXTRD, even with EVEX.W set, ignores that bit outside of 64-bit mode,
just like its AVX counterpart.
commit 931d03b75aa934abc10a70f1aa3ca1192f32ed3d
Author: Jan Beulich <jbeulich@novell.com>
Date: Tue Nov 6 11:42:54 2018 +0100
x86: adjust {,E}VEX.W handling outside of 64-bit mode
Many VEX-/EVEX-encoded instructions accessing GPRs become WIG outside of
64-bit mode. The respective templates should specify neither VexWIG nor
VexW0, but instead the setting of the bit should be determined from
- REX.W in 64-bit mode,
- the setting established through -mvexwig= / -mevexwig= otherwise.
This implies that the evex-wig2 testcase needs to go away, as being
wrong altogether.
A few test additions desirable here will only happen in later patches,
as the disassembler needs adjustments first.
Once again SSE2AVX templates are left alone, for it being unclear what
the behavior there should be.
commit fd71a3756e2dd1eae116d77dc5ec58391c4840d8
Author: Jan Beulich <jbeulich@novell.com>
Date: Tue Nov 6 11:42:08 2018 +0100
x86: fix various non-LIG templates
Quite a few templates were marked LIG while really the insns aren't.
Introduce descriptive shorthands once again, instead of continuing to
use the less legible original forms.
commit 563c7eef61a1835973b857eaa7372ec66fc91d64
Author: Jan Beulich <jbeulich@novell.com>
Date: Tue Nov 6 11:40:25 2018 +0100
x86: allow {store} to select alternative {,}PEXTRW encoding
The 0F C5 encoding is indeed a load type one (just that memory operands
are not permitted), while the 0F 3A 15 encoding is obviously a store.
Allow the pseudo prefixes to be used to select between them.
Also move (without any change) the secondary AVX512BW templates next to
the primary one.
commit 0aaca1d90a2f9f075852b2ea5907937cca037044
Author: Jan Beulich <jbeulich@novell.com>
Date: Tue Nov 6 11:39:42 2018 +0100
x86: add more VexWIG
Commits 6865c0435a ("x86: Support VEX/EVEX WIG encoding") and 6fa52824c3
("x86: Replace VexW=3 with VexWIG") omitted quite a few templates, oddly
enough in some cases despite testcases getting added (which then were
recorded with wrong expected output).
Also adjust VPMAXUB's attributes in the AVX512BW case to match ordering
of that of neighboring templates.
For the moment SSE2AVX templates are left alone, as it isn't clear
whether they were intentionally left untouched by the original commits
(the descriptions don't say either way).
In this context I question the decision in commit 0375113302 ("x86: Add
-mvexwig=[0|1] option to assembler") to move the logic to determine the
value of the W bit ahead of the decision whether to use 2-byte VEX:
While I can see this as one possible interpretation of -mvexwig=, the
other alternative (setting the value of the bit only if it actually
exists in the encoding) looks as reasonable to me, and perhaps even more
in line with us generally trying to pick the shortest encoding.
commit bbae6b11eb3a3c4a4c2f589d6c2b30e3c6b97c04
Author: Jan Beulich <jbeulich@novell.com>
Date: Tue Nov 6 11:38:47 2018 +0100
x86: XOP VPHADD* / VPHSUB* are VEX.W0
Also avoid introducing further uses of VexW=1, by introducing and using
VexW0 at this occasion. Move the marker past all #define-s.
commit 50cab6efce0f96fb1901595dc7a516de865f9c80
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Nov 6 00:00:35 2018 +0000
Automatic date update in version.in
commit bb20ccab70b378cd3f9cdb6a4c84e2d350e2de8f
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Mon Nov 5 23:09:44 2018 +0100
ChangeLog for 'Fix 4K leak each time next/step changes of function.'
commit 8e6a5953e1ddb327d870b79e6ccd2fd4a92d6fde
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Sun Nov 4 17:48:57 2018 +0100
Fix 4K leak in open_source_file each time next/step changes of function.
When current function changes after a next/step, GDB shows a message such as:
(gdb) s
info_fun1 ()
at /bd/home/philippe/gdb/git/build_smallthing/gdb/testsuite/../../../smallthing/gdb/testsuite/gdb.base/info_qt.c:41
41 info_qt_inc++;
(gdb)
Valgrind reports a 4K definite leak for each such message (full stacktrace of
the leak below).
This patch fixes this leak, by transferring the current s->fullname to the
unique_xmalloc_ptr fullname given to find_and_open_source.
Note that I do not understand why find_and_open_source always tries to
re-execute the substitution rules on the provided fullname, as source.c
symtab_to_fullname just blindly returns a non NULL s->fullname, counting on
forget_cached_source_info to be called if search dir or substitution rules are
changed. Similarly, psymtab_to_fullname also just returns a non NULL
ps->fullname.
==15309== VALGRIND_GDB_ERROR_BEGIN
==15309== 69,632 bytes in 17 blocks are definitely lost in loss record 3,158 of 3,186
==15309== at 0x4C2BE2D: malloc (vg_replace_malloc.c:299)
==15309== by 0x5BF0987: realpath@@GLIBC_2.3 (canonicalize.c:78)
==15309== by 0x41F713: gdb_realpath(char const*) (pathstuff.c:72)
==15309== by 0x608833: openp(char const*, enum_flags<openp_flag>, char const*, int, std::unique_ptr<char, gdb::xfree_deleter<char> >*) (source.c:861)
==15309== by 0x608B89: find_and_open_source(char const*, char const*, std::unique_ptr<char, gdb::xfree_deleter<char> >*) (source.c:1049)
==15309== by 0x608D0B: open_source_file(symtab*) (source.c:1074)
==15309== by 0x609101: print_source_lines_base(symtab*, int, int, enum_flags<print_source_lines_flag>) (source.c:1291)
==15309== by 0x614ADF: print_frame_info(frame_info*, int, print_what, int, int) (stack.c:911)
==15309== by 0x614C45: print_stack_frame(frame_info*, int, print_what, int) (stack.c:181)
==15309== by 0x511D5E: print_stop_location (infrun.c:8044)
==15309== by 0x511D5E: print_stop_event(ui_out*) (infrun.c:8061)
==15309== by 0x40DD6D: cli_on_normal_stop(bpstats*, int) (cli-interp.c:145)
==15309== by 0x512409: operator() (functional:2127)
==15309== by 0x512409: notify (observable.h:106)
==15309== by 0x512409: normal_stop() (infrun.c:8334)
==15309== by 0x5156D8: fetch_inferior_event(void*) (infrun.c:3955)
==15309== by 0x4B3EEC: gdb_wait_for_event(int) (event-loop.c:859)
==15309== by 0x4B3FF6: gdb_do_one_event() [clone .part.4] (event-loop.c:322)
==15309== by 0x4B41B4: gdb_do_one_event (common-exceptions.h:219)
==15309== by 0x4B41B4: start_event_loop() (event-loop.c:371)
==15309== by 0x551217: captured_command_loop() (main.c:330)
==15309== by 0x55220C: captured_main (main.c:1177)
==15309== by 0x55220C: gdb_main(captured_main_args*) (main.c:1193)
==15309== by 0x29B4F7: main (gdb.c:32)
==15309==
==15309== VALGRIND_GDB_ERROR_END
gdb/ChangeLog
2018-11-04 Philippe Waroquiers <philippe.waroquiers@skynet.be>
* source.c (open_source_file): Fix leak by transferring the
current s->fullname to the unique_xmalloc_ptr fullname given
to find_and_open_source.
commit a4749e56cacefdc1a571231744a9b87a3f5458b9
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Nov 5 11:12:28 2018 -0800
Correct ChangeLog entries for PR gas/23854 commit
commit e60f4d3bdac25f02875afe36b7436bc2dfbbb978
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Nov 5 09:01:26 2018 -0800
x86: Disable GOT relaxation with data prefix
Since linker GOT relaxation isn't valid for 16-bit GOT access, we should
disable GOT relaxation with data prefix.
commit e60f4d3bdac25f02875afe36b7436bc2dfbbb978
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Nov 5 09:01:26 2018 -0800
x86: Disable GOT relaxation with data prefix
Since linker GOT relaxation isn't valid for 16-bit GOT access, we should
disable GOT relaxation with data prefix.
gas/
PR gas/r23854
* config/tc-i386.c (output_disp): Disable GOT relaxation with
data prefix.
* testsuite/gas/i386/mixed-mode-reloc32.d: Updated.
ld/
PR gas/r23854
* testsuite/ld-i386/i386.exp: Run pr23854.
* testsuite/ld-x86-64/x86-64.exp: Likewwise.
* testsuite/ld-i386/pr23854.d: New file.
* testsuite/ld-i386/pr23854.s: Likewwise.
* testsuite/ld-i386/pr23854.d: Likewwise.
* testsuite/ld-x86-64/pr23854.d: Likewwise.
* testsuite/ld-x86-64/pr23854.s: Likewwise.
commit 713f1b445a18af04eafbf8df6f844bed8243963f
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Nov 5 00:00:53 2018 +0000
Automatic date update in version.in
commit a31abe80ea4c45b544f3ae04bc63ccaeba530e0f
Author: Tom Tromey <tom@tromey.com>
Date: Wed Oct 24 16:45:41 2018 -0600
Return gdbpy_ref from gdbpy_get_varobj_pretty_printer
This changes gdbpy_get_varobj_pretty_printer to return a gdbpy_ref.
gdb/ChangeLog
2018-11-04 Tom Tromey <tom@tromey.com>
* varobj.c (install_default_visualizer): Update.
* python/python-internal.h (gdbpy_get_varobj_pretty_printer):
Return gdbpy_ref.
* python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
(find_pretty_printer_from_progspace)
(find_pretty_printer_from_gdb, find_pretty_printer)
(gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
(gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
Update.
commit 833d985d1c7f69f953a5c7ddcf2af1d001504961
Author: Tom Tromey <tom@tromey.com>
Date: Wed Oct 24 16:40:00 2018 -0600
Return gdbpy_ref from some Python string functions
This changes python_string_to_unicode,
python_string_to_target_python_string, and
host_string_to_python_string to return gdbpy_ref.
gdb/ChangeLog
2018-11-04 Tom Tromey <tom@tromey.com>
* python/python.c (gdbpy_parameter_value): Update.
* python/python-internal.h (python_string_to_unicode)
(python_string_to_target_python_string)
(host_string_to_python_string): Return gdbpy_ref.
* python/py-utils.c (python_string_to_unicode)
(unicode_to_encoded_python_string)
(unicode_to_target_python_string)
(python_string_to_target_string)
(python_string_to_target_python_string): Return gdbpy_ref.
(python_string_to_host_string): Update.
(host_string_to_python_string): Return gdbpy_ref.
* python/py-symtab.c (stpy_get_filename, stpy_get_producer)
(stpy_fullname): Update.
* python/py-progspace.c (pspy_get_filename, pspy_solib_name):
Update.
* python/py-prettyprint.c (print_string_repr): Update.
* python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
(objfpy_get_build_id): Update.
* python/py-breakpoint.c (bppy_get_location)
(bppy_get_expression, bppy_get_condition, bppy_get_commands):
Update.
commit 12dfa12a3cfd4552c0cc4d7b271ab3e9c439589a
Author: Tom Tromey <tom@tromey.com>
Date: Wed Oct 24 16:33:23 2018 -0600
Return gdbpy_ref from gdb_py_object_from_*longest
This changes gdb_py_object_from_longest and
gdb_py_object_from_ulongest to return a gdbpy_ref rather than a
PyObject*.
gdb/ChangeLog
2018-11-04 Tom Tromey <tom@tromey.com>
* python/python-internal.h (gdb_py_object_from_longest)
(gdb_py_object_from_ulongest): Return gdbpy_ref.
* python/py-value.c (valpy_int): Update.
* python/py-utils.c (gdb_py_object_from_longest): Return
gdbpy_ref.
(gdb_py_object_from_ulongest): Likewise.
* python/py-type.c (typy_get_alignof): Update.
* python/py-linetable.c (ltpy_get_all_source_lines)
(ltpy_entry_get_line, ltpy_entry_get_pc): Update.
* python/py-block.c (blpy_get_start, blpy_get_end): Update.
commit 9446bd8ad68d5e20151f3066104b575534c9ecda
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Nov 4 00:01:27 2018 +0000
Automatic date update in version.in
commit 675accbdcb5b50182a10dd112b7179b5b6337191
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sat Nov 3 15:03:34 2018 -0700
elfedit: Move ELF header magic bytes check to get_file_header
Skip the file if ELF header magic bytes doesn't match.
* elfedit.c (update_elf_header): Move EI_MAG? check to ...
(get_file_header): Here.
commit 470678d7c92df4c016c6b4d8dadbd5d5e86cb5ff
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Sat Nov 3 21:33:42 2018 +0100
OBVIOUS Fix a typo in ada-lang.c add_prefix_cmd for "set ada"
Correct typo in add_prefix_cmd doc arg for "set ada".
commit 814fa4f632006dace09b131021b949021dfb58bf
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Sat Nov 3 19:31:41 2018 +0100
OBVIOUS Remove a useless const char *type and its initialization.
Valgrind detected a leak for the line:
type = xstrdup ("auto");
as the compile probably dropped the type variable completely, as its
only usage was this initialization.
So, remove the useless variable.
commit 3c6dd3d1c76a4a55555a2df85140ede39e8363cb
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Sat Nov 3 19:19:05 2018 +0100
OBVIOUS fix the month of the last gdb/ChangeLog entry to be 11 instead of 12.
commit a1fb41caab99ca970a595af4fee7915019d2e9a3
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Nov 3 00:01:18 2018 +0000
Automatic date update in version.in
commit 34156b23862e9719355569182d594c7a9e38047e
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Nov 2 16:45:41 2018 -0700
binutils: Add AC_FUNC_MMAP to configure.ac
Add AC_FUNC_MMAP to configure.ac so that HAVE_MMAP will be checked in
objdump.c and mmap is used if available.
* configure.ac (AC_FUNC_MMAP): New.
* config.in: Regenerated.
* configure: Likewise.
commit e8bf1ce461df242811e49de807f85c2e7ae17b77
Author: Joel Brobecker <brobecker@adacore.com>
Date: Fri Nov 2 12:37:29 2018 -0500
(Ada) Add ravenscar tasking support on AArch64
This patch adds support for debugging Ravenscar tasks, similar to what
is done for ppc and sparc.
gdb/ChangeLog:
* aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c:
New files.
* aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
(aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
* Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
(HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
(ALLDEPFILES): Add aarch64-ravenscar-thread.c.
* configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
and aarch64-ravenscar-thread.o.
* NEWS: Add entry documenting Ravenscar tasking support
on AArch64 ELF.
commit d54cfd762b060ad167bd8e947e4ea212c0eb9b83
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Fri Nov 2 14:20:59 2018 +0100
QUIET flag initialization missing in 2 places.
Fix by Matthew Malcomson <matthew.malcomson@arm.com>
Pushed as obvious.
commit 396ce9988361a812ec620ac392839dbb9594db62
Author: Alan Modra <amodra@gmail.com>
Date: Fri Nov 2 13:59:31 2018 +1030
[GOLD] make clean
Cleans a few more test files.
* Makefile.am (MOSTLYCLEANFILES): Define.
* Makefile.in: Regnerate.
* testsuite/Makefile.am (MOSTLYCLEANFILES): Add ver_test_14 and
gnu_property_test.
* testsuite/Makefile.in: Regnerate.
commit 285e3f99c77510344021b1252c594b28fe7971e8
Author: Alan Modra <amodra@gmail.com>
Date: Fri Nov 2 13:04:31 2018 +1030
Squash readelf warning on zero sh_link reloc section
On readelf examining a static executable built with current glibc,
we get a silly warning.
Section Headers:
[Nr] Name Type Address Off Size ES Flg Lk Inf Al
[ 0] NULL 0000000000000000 000000 000000 00 0 0 0
[ 1] .note.ABI-tag NOTE 0000000000400190 000190 000020 00 A 0 0 4
[ 2] .note.gnu.build-id NOTE 00000000004001b0 0001b0 000024 00 A 0 0 4
readelf: Warning: [ 3]: Link field (0) should index a symtab section.
[ 3] .rela.plt RELA 00000000004001d8 0001d8 000228 18 AI 0 20 8
This .rela.plt section contains only IRELATIVE relocations (which have
symbol index zero), so it isn't appropriate to warn. A zero sh_link
section is deliberately chosen for such a section (see PR10337 and
PR23850).
So this patch disables the SHT_REL* sh_link warning. I've also
removed the .rel.dyn/.rela.dyn section name test to disable the
sh_info warning for SHT_REL* sections. While relocation sections in
an executable need not specify the section they relocate (the
relocation sh_offset field is an address, not a section offset), that
isn't true in a relocatable file where sh_offset is relative to a
section. If .rela.dyn happens to exist in an ET_REL object it must
specify a valid section.
* readelf.c (process_section_headers): Don't warn on a zero
sh_info or sh_link for any reloc section in an executable or
shared library. Do warn for .rel.dyn/.rela.dyn in ET_REL.
commit a4bcd733712abd892aa7fe0d79a3f999b461f119
Author: Alan Modra <amodra@gmail.com>
Date: Fri Nov 2 11:47:07 2018 +1030
PR23850, strip should not discard/move .rela.plt in executable
strip/objcopy can't deal with alloc reloc sections, not .rela.dyn or
.rela.plt in a dynamic executable, or .rela.plt/.rela.iplt in a static
executable. So, don't have BFD treat them as side-channel data
associated with the section they are relocating.
PR 23850
* elf.c (bfd_section_from_shdr): Treat SHF_ALLOC SHT_REL* sections
in an executable or shared library as normal sections.
commit 3ba2ee38a648b7f52e77700325b26137f6332fe2
Author: Jim Wilson <jimw@sifive.com>
Date: Thu Nov 1 17:25:15 2018 -0700
RISC-V: Don't allow unaligned breakpoints.
Some hardware doesn't support unaligned accesses, and a bare metal target
may not have an unaligned access trap handler. So if the PC is 2-byte
aligned, then use a 2-byte breakpoint to avoid unaligned accesses.
Tested on native RV64GC Linux with gdb testsuite and cross on spike
simulator and openocd with riscv-tests/debug.
gdb/
* riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
Set if pcptr if unaligned. Return 2 if unaligned_p true. Update
debugging messages.
commit c175004a5380168cf16b489d58c9402ff3d75039
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Nov 2 00:00:34 2018 +0000
Automatic date update in version.in
commit e2b7af7242c99e503747a43775d94beda90cb24e
Author: Joel Brobecker <brobecker@adacore.com>
Date: Thu Nov 1 15:15:41 2018 -0700
(Ada) fix "error in expression" when using watch -location command
The "watch -l EXPR" command with the language set to Ada currently
fails with the following error:
(gdb) watch -l global_var
Error in expression, near ` 0x000000000062d2d8'.
The error occurs because GDB internally translate the request into
a watchpoint on a different expression: "* (TYPE *) ADDR" where
TYPE and ADDR are the type and the address of the object returned
by the expression's evaluation (resp.). So, in the example above,
global_var being an integer stored at 0x000000000062d2d8, GDB tries
to set a watchpoint on "* (integer *) 0x000000000062d2d8", which
fails, because we try to parse this expression with Ada, when
in fact it is not valid.
This patch fixes the issue by implementing the la_watch_location_expression
language method, using a syntax that the Ada parser recognizes
("{TYPE} ADDR").
gdb/ChangeLog:
* ada-lang.c (ada_watch_location_expression): New function.
(ada_language_defn): Set la_watch_location_expression to
ada_watch_location_expression.
gdb/testsuite/ChangeLog:
* gdb.ada/watch_minus_l: New testcase.
commit 8b578f9c7626f57f5adb9e4a52f5b0d6c8f6e0a0
Author: Joel Brobecker <brobecker@adacore.com>
Date: Thu Nov 1 15:08:57 2018 -0700
remove trailing spaces in print-utils.c ("int_string" function)
gdb/ChangeLog:
* print-utils.c (int_string): Remove unnecessary trailing spaces.
commit 87f7ab7b84c5c423f11e8ad0ebefd69e9d08c401
Author: Joel Brobecker <brobecker@adacore.com>
Date: Thu Nov 1 15:05:40 2018 -0700
gdb.texinfo: Fix the output of the "info tasks 2" example
gdb/doc/ChangeLog:
* gdb.texinfo (Ada Tasks): Update the "info task 2" example
output to match the current implementation.
commit 1cc62f2e4443384e300586683aa1f8197c81cbc5
Author: Joel Brobecker <brobecker@adacore.com>
Date: Thu Nov 1 16:46:05 2018 -0500
rs6000-tdep.c:skip_prologue avoid negative left shift
the rs6000-tdep.c::skip_prologue function has the following code:
unsigned int all_mask = ~((1U << fdata->saved_gpr) - 1);
/* Not a recognized prologue instruction.
Handle optimizer code motions into the prologue by continuing
the search if we have no valid frame yet or if the return
address is not yet saved in the frame. Also skip instructions
if some of the GPRs expected to be saved are not yet saved. */
if (fdata->frameless == 0 && fdata->nosavedpc == 0
&& (fdata->gpr_mask & all_mask) == all_mask)
break;
The problem is that fdata->saved_gpr is initialized to -1, and so,
if no instruction is found in the function's prologue that causes us
to set that field to a non-negative value, the sanitizer crashes
with the following message:
rs6000-tdep.c:1965:34: runtime error: shift exponent -1 is negative
This patch fixes the issue the by only doing the shift if saved_gpr
is not negative. When saved_gpr is negative, we actually don't need
the shift.
gdb/ChangeLog:
* rs6000-tdep.c (skip_prologue): Fix potential negative left
shifting.
Tested on ppc-linux native.
Also tested on ppc-elf (baremetal) using AdaCore's testsuite.
commit e1c3a3737536c57e43d4ad693341717e326f4e17
Author: Jerome Guitton <guitton@adacore.com>
Date: Thu Nov 1 14:32:30 2018 -0700
arm-pikeos: software single step
On ARM, PikeOS does not support hardware single step, causing various
semi-random errors when trying to next/step over some user code. So
this patch changes this target to use software-single-step instead.
The challenge is that, up to now, the PikeOS target was in all respects
identical to a baremetal target as far as GDB was concerned, meaning
we were using the baremetal osabi for this target too. This is no longer
possible, and we need to introduce a new OSABI variant. Unfortunately,
there isn't anything in the object file that would allow us to
differentiate between the two platforms. So we have to rely on a
heuristic instead, where we look for some known symbols that are
required in a PikeOS application (these symbols are expected to be
defined by the default linker script, and correspond to routines used
to allocate the application stack).
For the long run, the hope is that the stub implementation provided
by PikeOS is enhanced so that it includes vContSupported+ to the
$qSupported query, and then that the reply to the "vCont?" query
only return support for "continue" operations (thus exclusing "step"
operations). We could then use that information to reliably determine
at connection time that the target does not support single-stepping
and therefore automatically turn software single-stepping automatically
based on it.
gdb/ChangeLog:
* defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
* osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
* arm-pikeos-tdep.c: New file.
* configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
embedded system.
* Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
Tested on arm-pikeos and arm-elf using AdaCore's testsuite.
We also evaluated it on armhf-linux as a cross platform.
commit e8d8cce69b34481a27562267d94a1aff19b05518
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Thu Nov 1 15:40:43 2018 -0400
Import mkdtemp gnulib module, fix mingw build
Building with mingw currently fails:
CXX unittests/mkdir-recursive-selftests.o
/home/emaisin/src/binutils-gdb/gdb/unittests/mkdir-recursive-selftests.c: In function âvoid selftests::mkdir_recursive::test()â:
/home/emaisin/src/binutils-gdb/gdb/unittests/mkdir-recursive-selftests.c:49:20: error: âmkdtempâ was not declared in this scope
if (mkdtemp (base) == NULL)
^
Commit
e418a61a67a ("Move mkdir_recursive to common/filestuff.c")
moved this code, but also removed the HAVE_MKDTEMP guard which prevented
the mkdtemp call to be compiled on mingw.
We can either put back the HAVE_MKDTEMP ifdef, or import the gnulib
mkdtemp module, which provides the function for mingw. Since the
mkdir_recursive is susceptible to be used on mingw at some point, I
think it would be nice to have it tested on mingw, so I did the latter.
Once built, I tested it on Windows (copied the resulting gdb.exe on a
Windows machine, ran it, and ran "maint selftest mkdir_recursive"). It
failed, because the temporary directory is hardcoded to "/tmp/...". I
therefore added and used a new get_standard_temp_dir function, which
returns an appropriate temporary directory for the host platform.
gdb/ChangeLog:
* common/pathstuff.c (get_standard_temp_dir): New.
* common/pathstuff.h (get_standard_temp_dir): New.
* config.in: Re-generate.
* configure: Re-generate.
* configure.ac: Don't check for mkdtemp.
* gnulib/aclocal-m4-deps.mk: Re-generate.
* gnulib/aclocal.m4: Re-generate.
* gnulib/config.in: Re-generate.
* gnulib/configure: Re-generate.
* gnulib/import/Makefile.am: Re-generate.
* gnulib/import/Makefile.in: Re-generate.
* gnulib/import/m4/gnulib-cache.m4: Re-generate.
* gnulib/import/m4/gnulib-comp.m4: Re-generate.
* gnulib/import/m4/mkdtemp.m4: New file.
* gnulib/import/mkdtemp.c: New file.
* gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
Add mkdtemp module.
* unittests/mkdir-recursive-selftests.c (test): Use
get_standard_temp_dir.
(_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
ifdef.
* compile/compile.c (get_compile_file_tempdir): Likewise.
commit 33ea299c25134ce23805faa6b2b1e7fe6327f6bb
Author: Thomas Preud'homme <thomas.preudhomme@linaro.org>
Date: Thu Nov 1 17:18:24 2018 +0000
Fix ld action in run_dump_test
run_dump_test proposes an ld action but when trying to make use of it in
a gas test it gave me some Tcl error. It turns out that it references
the check_shared_lib_support procedure and ld_elf_shared_opt variable
both only available in ld-lib.exp. I've thus moved the procedure in
binutils-common.exp and defined the variable needed in the various
default.exp of testsuite that seem to be using run_dump_test.
Since check_shared_lib_support itself references the ld variable not
defined in binutils-common I've defined it from LD in run_dump_test and
fixed LD and LDFLAGS to be defined as expected by run_dump_test in the
various default.exp of testsuite using run_dump_test.
2018-11-01 Thomas Preud'homme <thomas.preudhomme@linaro.org>
binutils/
* testsuite/config/default.exp: Define LD, LDFLAGS and
ld_elf_shared_opt.
* testsuite/lib/binutils-common.exp (check_shared_lib_support): Moved
from ld-lib.exp.
(run_dump_test): Set ld to $LD.
gas/
* testsuite/config/default.exp: Define LD, LDFLAGS and
ld_elf_shared_opt.
ld/
* testsuite/lib/ld-lib.exp (check_shared_lib_support): Moved to
binutils-common.exp.
commit cdcda965ea4c70c80b9f8c294597e991417ff9d5
Author: Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
Date: Thu Nov 1 06:23:59 2018 -0400
Reading signal handler frame in AIX
In AIX if gdb is debugging an application which has a signal handler
and reaches the signal handler frame, then we need to read the back
chain address from sigcontext saved on the stack, similarly the LR.
As backchain at an offset 0 will be 0, because we will have a
sigconext saved after the minimum stack size. So the correct
backchain will be at an offset after minimum stack and the LR at
an offset 8 will be of the signal millicode address.
If the back chain pointer is NULL and the LR field is in the kernel
segment(ex. 0x00004a14) then we can probably assume we are in a
signal handler.
sample output
(gdb) bt
0 sig_handle_aix (signo=11) at aix-sighandle.c:7
1 0x0000000000004a94 in ?? ()
(gdb)
expected output
(gdb) bt
0 sig_handle_aix (signo=11) at aix-sighandle.c:7
1 <signal handler called>
2 0x0000000100000748 in foo () at aix-sighandle.c:14
3 0x000000010000079c in main () at aix-sighandle.c:19
gdb/ChangeLog:
2018-11-01 Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
* rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
(SIG_FRAME_LR_OFFSET64): New define.
(SIG_FRAME_FP_OFFSET64): New define.
(aix_sighandle_frame_cache): New Function.
(aix_sighandle_frame_this_id): New Function.
(aix_sighandle_frame_prev_register): New Function.
(aix_sighandle_frame_sniffer): New Function.
(aix_sighandle_frame_unwind): New global variable.
(rs6000_aix_init_osabi): Install new frame unwinder.
gdb/testsuite/ChangeLog:
2018-11-01 Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
* gdb.arch/aix-sighandle.c: New file.
* gdb.arch/aix-sighandle.exp: New file.
commit 38642de318119d116c47eaff52ad9a7edb032c11
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Nov 1 00:00:29 2018 +0000
Automatic date update in version.in
commit 656efb5e2691b2bd29573d9985d20206c47b6927
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Tue Oct 30 17:37:03 2018 -0400
Fix PR gdb/23835: Don't redefine _FORTIFY_SOURCE if it's already defined
Gentoo has a local GCC patch which always defines _FORTIFY_SOURCE=2.
This causes a build problem when building GDB there, because
"common/common-defs.h" also defines _FORTIFY_SOURCE=2:
CXX gdb.o
In file included from ../../gdb/defs.h:28:0,
from ../../gdb/gdb.c:19:
../../gdb/common/common-defs.h:71:0: error: "_FORTIFY_SOURCE" redefined [-Werror]
#define _FORTIFY_SOURCE 2
<built-in>: note: this is the location of the previous definition
cc1plus: all warnings being treated as errors
make[2]: *** [Makefile:1619: gdb.o] Error 1
Even though it is questionable whether Gentoo's approach is the
correct one:
https://jira.mongodb.org/browse/SERVER-29982
https://bugs.gentoo.org/621036
it is still possible for GDB to be a bit more robust here and make
sure it just defines _FORTIFY_SOURCE if it hasn't been defined
already. This patch does that.
Tested by rebuilding and making sure the macro was defined.
gdb/ChangeLog:
2018-10-31 Sergio Durigan Junior <sergiodj@redhat.com>
PR gdb/23835
* common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
already defined.
commit 92dcebf3fa5ccc1cae8fcb93eaf08ffea52957e2
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Sat Oct 27 10:34:04 2018 +0100
gdb/riscv: Fix failures on rv64 in gdb.arch/riscv-reg-aliases.exp test
The gdb.arch/riscv-reg-aliases.exp test didn't take into account that
on RV64 (and RV128) the floating point registers are represented as a
union. This patch updates the test to handle this.
Tested against RV32 and RV64.
gdb/testsuite/ChangeLog:
* gdb.arch/riscv-reg-aliases.exp: Rewrite to take account of float
registers being unions.
commit 68b9ac18cf6ae8d76828357982c106d57c695ad4
Author: Tom de Vries <tdevries@suse.de>
Date: Thu Oct 25 16:54:49 2018 +0200
[gdb/testsuite] Factor out lib/valgrind.exp
Factor out common code related to vgdb setup and cleanup in valgrind-bt.exp,
valgrind-disp-step.exp and gdb.base/valgrind-infcall.exp.
Tested on x86_64-linux with and without --target_board=native-gdbserver.
2018-10-31 Tom de Vries <tdevries@suse.de>
* lib/valgrind.exp: New file.
(vgdb_start, vgdb_stop): New procs, factored out of ...
* gdb.base/valgrind-bt.exp: ... here, ...
* gdb.base/valgrind-disp-step.exp: ... here and ...
* gdb.base/valgrind-infcall.exp: ... here.
commit 0b4d000cc4e8e77c823e43fb547aa5e3a7247e87
Author: Joseph Myers <joseph@codesourcery.com>
Date: Wed Oct 31 17:16:41 2018 +0000
Merge config/ changes from GCC.
config:
Merge from GCC:
2018-10-28 Iain Buclaw <ibuclaw@gdcproject.org>
* multi.m4: Set GDC.
2018-07-05 James Clarke <jrtc27@jrtc27.com>
* dfp.m4 (enable_decimal_float): Enable for x86_64*-*-gnu* to
catch x86_64 kFreeBSD and Hurd.
libdecnumber:
* configure: Regenerate.
zlib:
* configure: Regenerate.
commit b555fb21f98143582541e1a3bf58695037ca617b
Author: Joseph Myers <joseph@codesourcery.com>
Date: Wed Oct 31 17:10:56 2018 +0000
Merge autoconf / automake update changes from GCC.
Top level:
Merge from GCC:
PR bootstrap/82856
* multilib.am: New file. From automake.
config:
Merge from GCC:
PR bootstrap/82856
* math.m4, tls.m4: Use AC_LANG_SOURCE.
zlib:
Merge from GCC.
PR bootstrap/82856
* Makefile.am: Include multilib.am.
* Makefile.in: Regenerate.
commit 1443936e967d4a0a49acb8756e3f808dc3628318
Author: Tom de Vries <tdevries@suse.de>
Date: Wed Oct 31 16:33:46 2018 +0100
[gdb/testsuite] get_valueof: Don't output value in test name
The get_valueof outputs the value it has read as part of the test name. This
causes test names to vary from run to run, and adds some noise when diffing
test results. e.g.:
-PASS: gdb.guile/scm-ports.exp: buffered: get valueof "$sp" (140737488343920)
+PASS: gdb.guile/scm-ports.exp: buffered: get valueof "$sp" (140737488343968)
-PASS: gdb.guile/scm-ports.exp: unbuffered: get valueof "$sp" (140737488343920)
+PASS: gdb.guile/scm-ports.exp: unbuffered: get valueof "$sp" (140737488343968)
This patch removes that, since it's probably not very useful.
Tested on x86_64-linux.
2018-10-31 Tom de Vries <tdevries@suse.de>
* lib/gdb.exp (get_valueof): Don't output read value in test name.
commit f32a4a593963d4c377fd59f4164c9df2cd6a7590
Author: Renlin Li <renlin.li@arm.com>
Date: Wed Oct 31 14:38:46 2018 +0000
Don't create got section while processing TLS Local Exec relocations.
For Local Exec TLS model, the offset of the variable from the thread pointer
can be computed at static link time. This doesn't require GOT indirection.
The initial change is a bad fix for a problem during TLS GD -> LE relaxation.
The proper fix is to check whether _GLOBAL_OFFSET_TABLE_ is referenced,
create got section if yes. And the fix is already in the repository.
bfd/
2018-10-31 Renlin Li <renlin.li@arm.com>
* elfnn-aarch64.c (elfNN_aarch64_check_relocs): Don't create got
section for Local Exec TLS model.
commit 64f57f3d7d7b8e7bf9f57caa1389ac5ee3ecfec7
Author: Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
Date: Mon Oct 29 12:05:11 2018 -0300
[PowerPC] Include nat/linux-ptrace.h in native targets
Patch "[PowerPC] Add support for PPR and DSCR" used
PTRACE_GETREGSET/SETREGSET without including the fallback definitions
from "nat/linux-ptrace.h". Include this header to avoid breaking
builds in systems that don't define them.
gdb/ChangeLog:
2018-10-31 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* ppc-linux-nat.c: Include nat/linux-ptrace.h.
gdb/gdbserver/ChangeLog:
2018-10-31 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* linux-ppc-low.c: Include nat/linux-ptrace.h.
commit eb77c9df9f6d2f7aa644a170280fe31ce080f887
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Thu Oct 18 14:04:27 2018 +0100
gdb: Handle ICC's unexpected void return type
I encountered a binary compiled with Intel's C Compiler (ICC) version
14.0.5.212, which seemed to contain some non-standard DWARF.
The DWARF spec (V5 3.3.2) says:
Debugging information entries for C void functions should not have
an attribute for the return type.
However, what I observed in the DWARF from this ICC compiled binary
was this:
...
<0><857>: Abbrev Number: 1 (DW_TAG_compile_unit)
<858> DW_AT_comp_dir : (indirect string, offset: 0x48d): /tmp/
<85c> DW_AT_language : 1 (ANSI C)
<85d> DW_AT_name : (indirect string, offset: 0x77c): filename.c
<861> DW_AT_producer : (indirect string, offset: 0x520): Intel(R) C Intel(R) 64 Compiler ...
<865> DW_AT_low_pc : 0x4378d0
<86d> DW_AT_high_pc : 0x4378f0
<875> DW_AT_stmt_list : 0xa37
...
<1><7ea>: Abbrev Number: 2 (DW_TAG_base_type)
<7eb> DW_AT_byte_size : 0
<7ec> DW_AT_encoding : 5 (signed)
<7ed> DW_AT_name : (indirect string, offset: 0x58f): void
...
<1><7f1>: Abbrev Number: 3 (DW_TAG_subprogram)
<7f2> DW_AT_decl_line : 268
<7f4> DW_AT_decl_column : 30
<7f5> DW_AT_decl_file : 1
<7f6> DW_AT_type : <0x7ea>
<7fa> DW_AT_prototyped : 1
<7fb> DW_AT_name : (indirect string, offset: 0x761): function_foo
<7ff> DW_AT_MIPS_linkage_name: (indirect string, offset: 0x761): function_foo
<803> DW_AT_low_pc : 0x4378a0
<80b> DW_AT_high_pc : 0x4378d0
<813> DW_AT_external : 1
...
So function 'function_foo' has void return type, but still has a
DW_AT_type attribute for a 0 sized type called void.
What was found was that when the 'finish' command was used to leave
'function_foo', GDB would crash.
The problem is that in infcmd.c:print_return_value GDB tries to filter
out void return types, by looking for the TYPE_CODE_VOID, this fails
for the 'void' type as it has code TYPE_CODE_INT and GDB then tries to
print the 'void' type.
This eventually ends in a call to valprint.c:maybe_negate_by_bytes,
however, the len (length) of the value being negated is 0, which is
not detected or expected by this code, and invalid memory accesses
occur, some of which might cause GDB to crash.
The above DWARF was seen on version 14.0.5.212 of ICC.
I have also tested ICC versions 18.0.2.199 and 17.0.7.259, on both of
these versions, the DW_AT_type on the DW_TAG_subprogram has been
removed, bringing ICC inline with the DWARF standard, and with the
DWARF produced by GCC.
I only have limited access to these specific versions of ICC so I am
unable to get more specific details for when the generated DWARF
became non-standard or when it was changed to be more inline with the
DWARF standard.
Further testing revealed additional places where ICC produced 'void'
related DWARF that GDB struggles with. When I compiled code that
contained a function with this signature:
void funcx (void *arg);
on ICC 17/18, I got the following DWARF (notice the void return type
is now gone):
...
<1><32>: Abbrev Number: 2 (DW_TAG_subprogram)
<33> DW_AT_decl_line : 2
<34> DW_AT_decl_file : 1
<35> DW_AT_prototyped : 1
<36> DW_AT_name : (indirect string, offset: 0xc5): funcx
<3a> DW_AT_MIPS_linkage_name: (indirect string, offset: 0xc5): funcx
<3e> DW_AT_low_pc : 0x6dc
<46> DW_AT_high_pc : 0x703
<4e> DW_AT_external : 1
<2><4f>: Abbrev Number: 3 (DW_TAG_formal_parameter)
<50> DW_AT_decl_line : 2
<51> DW_AT_decl_file : 1
<52> DW_AT_type : <0x6a>
<56> DW_AT_name : arg
<5a> DW_AT_location : 2 byte block: 76 70 (DW_OP_breg6 (rbp): -16)
...
<1><6a>: Abbrev Number: 5 (DW_TAG_pointer_type)
<6b> DW_AT_type : <0x6f>
<1><6f>: Abbrev Number: 6 (DW_TAG_base_type)
<70> DW_AT_byte_size : 0
<71> DW_AT_encoding : 5 (signed)
<72> DW_AT_name : (indirect string, offset: 0xcb): void
...
However, the function argument 'arg' does still reference a 'void'
type. This case doesn't seem as obviously non-standard as the
previous one, but I think that the DWARF standard (V5 5.2) does
suggest that the above is not the recommended approach. If we compare
to the DWARF generated by GCC 7.3.1:
...
<1><68>: Abbrev Number: 5 (DW_TAG_subprogram)
<69> DW_AT_external : 1
<69> DW_AT_name : (indirect string, offset: 0x221): funcx
<6d> DW_AT_decl_file : 1
<6e> DW_AT_decl_line : 2
<6f> DW_AT_prototyped : 1
<6f> DW_AT_low_pc : 0x400487
<77> DW_AT_high_pc : 0x22
<7f> DW_AT_frame_base : 1 byte block: 9c (DW_OP_call_frame_cfa)
<81> DW_AT_GNU_all_call_sites: 1
<81> DW_AT_sibling : <0xa0>
<2><85>: Abbrev Number: 6 (DW_TAG_formal_parameter)
<86> DW_AT_name : arg
<8a> DW_AT_decl_file : 1
<8b> DW_AT_decl_line : 2
<8c> DW_AT_type : <0xa0>
<90> DW_AT_location : 2 byte block: 91 58 (DW_OP_fbreg: -40)
...
<1><a0>: Abbrev Number: 7 (DW_TAG_pointer_type)
<a1> DW_AT_byte_size : 8
...
Here we see that the DW_TAG_pointer_type doesn't reference any further
type. This also seems out of line with the DWARF standard (which I
think recommends using a DW_TAG_unspecified_type entry), however GDB
does handle the GCC generated DWARF better.
If we look at how GDB handles the DWARF from GCC, then we see this:
(gdb) print *arg
Attempt to dereference a generic pointer.
While on the current HEAD of master dereferencing arg causes undefined
behaviour which will likely crash GDB (for the same reason as was
described above for the 'finish' case). On earlier versions of GDB
the ICC DWARF would cause this:
(gdb) print *arg
$1 = 0
In this patch both the return type, and general variable/parameter
type handling is fixed by transforming the synthetic void entries in
the DWARF, the ones that look like this:
<1><6f>: Abbrev Number: 6 (DW_TAG_base_type)
<70> DW_AT_byte_size : 0
<71> DW_AT_encoding : 5 (signed)
<72> DW_AT_name : (indirect string, offset: 0xcb): void
into GDB's builtin void type. My criteria for performing the fix are:
1. Binary produced by any version of ICC,
2. We're producing an integer type,
3. The size is 0, and
4. The name is "void".
I ignore the signed / unsigned nature of the integer.
Potentially we could drop the ICC detection too, this should be a
reasonably safe transformation to perform, however, I'm generally
pretty nervous when it comes to modifying how the DWARF is parsed so,
for now, I have restricted this to ICC only.
I also added an assertion to maybe_negate_by_bytes. This is nothing
to do with the actual fix, but should detect incorrect use of this
function in the future, without relying on undefined behaviour to
crash GDB.
I added a new test that makes use the of the testsuite's DWARF
generator. As it is tricky to create target independent tests that
pass function parameters using the DWARF generator (as specifying the
argument location is target specific) I have instead made use of a
global variable void*. This still shows the issue.
We already have a predicate in the DWARF parser to detect versions of
ICC prior to 14, however, this issue was spotted on a later version.
As a result I've added a new predicate that is true for any version of
ICC.
gdb/ChangeLog:
* dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
(producer_is_icc): New function.
(check_producer): Set producer_is_icc field on dwarf2_cu.
(dwarf2_init_integer_type): New function.
(read_base_type): Call dwarf2_init_integer_type instead of
init_integer_type in all cases.
(dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
* valprint.c (maybe_negate_by_bytes): Add an assertion that the
LEN is greater than 0.
gdb/testsuite/ChangeLog:
* gdb.dwarf2/void-type.c: New file.
* gdb.dwarf2/void-type.exp: New file.
commit 664306bcceb99fbe021ceb701a7192d62234f327
Author: Andre Vieira <andre.simoesdiasvieira@arm.com>
Date: Wed Oct 31 12:08:36 2018 +0000
[GAS][ARM] Fix ARMv8.1 AdvSIMD testism
This test never used to test the output of objdump as the old 'error-output'
check would exit after verifying the output in stdout and stderr from the
assembler. Given the use of warning_output now, the objdump runs and expects
its output to be verified. Assuming the correct disassembly of these
instructions is tested elsewhere given we never tested them here, this patch
removes the objdump run.
gas/ChangeLog
2018-10-31 Andre Vieira <andre.simoesdiasvieira@arm.com>
* testsuite/gas/arm/armv8-a+rdma-warning.d: Remove objdump execution.
commit a66cf75c9cbd7ee9abfd3ca2f3a82fb32ba83387
Author: Andre Vieira <andre.simoesdiasvieira@arm.com>
Date: Wed Oct 31 12:05:19 2018 +0000
[GAS][ARM] Fix UDF testism
The old test never checked the objdump output since the 'error-output' directive
would exit and thus never run objdump. When this test was changed to adhere to
use the new warning_output we started to run objdump. The expected objdump
output was old and had bitrotten, this fixes the layout, as the "disassembly"
itself did not change.
gas/ChangeLog
2018-10-31 Andre Vieira <andre.simoesdiasvieira@arm.com>
* testsuite/gas/arm/udf.d: Update expected output.
commit cd53832b008b25222ec55bf947e3700528ee0814
Author: Andre Vieira <andre.simoesdiasvieira@arm.com>
Date: Wed Oct 31 11:57:38 2018 +0000
[GAS][ARM] Fix failing Armv1 test
This test has been failing for a while and it could be argued that since we
started testing 'arm7t' here (and not Armv1) the test itself was wrong. So I
changed the assembly to Armv1. Given the changes to objdump when
"disassembling all" it seemed like a good idea to force the disassembly to
'armv2' instead and actually accept the disassembly of the 26-bit Architecture
variants of tst, teq, cmn and cmp.
gas/ChangeLog
2018-10-31 Andre Vieira <andre.simoesdiasvieira@arm.com>
* testsuite/gas/arm/armv1.d: Assemble for Armv1 and disassemble for
Armv2.
commit b4e093995600e8f482c10467379f9395b4871ca2
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Oct 31 00:00:40 2018 +0000
Automatic date update in version.in
commit c1230d1bab8e36e1aa40f3bbadcef9b5d9ddc041
Author: Joel Sherrill <joel@rtems.org>
Date: Tue Oct 30 16:41:12 2018 +0000
[src/erc32] Use ncurses instead of termcap on Cygwin too
This removes a Cygwin-specific libtermcap hack that was dependent on
the presence of one of the multiple alternative libraries. The one it
was hard-coded to pick isn't included with Cygwin anymore.
According to Corinna, libtermcap was removed from Cygwin a long time
ago, and libncurses is used in Cygwin for a long time too.
The fix is to make Cygwin use the same autoconf code to figure out the
correct lib as any other target.
sim/erc32/Changelog:
2018-10-30 Joel Sherrill <joel@rtems.org>
* configure.ac: Remove the Cygwin-specific libtermcap.a hack
and use the standard logic to determine which library to use.
* configure: Regenerate.
commit 4d5d104997da3b7beaaf7920caee40dcff8a78d9
Author: Tom Tromey <tom@tromey.com>
Date: Thu Oct 25 09:00:52 2018 -0600
Check return value of bfd_init
Alan recently added a way for BFD library users to check whether they
were in fact loading a compatible version of BFD:
https://sourceware.org/ml/binutils/2018-10/msg00198.html
It seemed reasonable to me that gdb should do this check as well, in
case someone is dynamically linking against BFD.
Simon pointed out that an earlier version of the patch would cause a
gdb crash if the test failed. This version works around this by
lowering the call to bfd_init and adding a comment explaining where
'error' can safely be called in captured_main_1.
gdb/ChangeLog
2018-10-30 Tom Tromey <tom@tromey.com>
* main.c (captured_main_1): Check return value of bfd_init.
commit fd332753fa7050bb9d7c89147e32d285099fe402
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Thu Oct 25 16:46:46 2018 -0400
Remove relational operators from common/offset-type.h
This patch is a follow-up of:
https://sourceware.org/ml/gdb-patches/2018-10/msg00601.html
It removes the declaration of the relational operators for
common/offset-type.h. As it turns out, these overloads are not being
used when a new offset type is declared, because, according to Pedro
Alves:
I think the functions aren't called because they are templates, and
thus the built-in (non-template) versions take precedence. If you
make them non-templates, then they should be called. But, the
built-ins are fine, so yeah, we can just remove the custom
definitions.
The patch also adjusts the comments on the code.
No regressions introduced.
gdb/ChangeLog:
2018-10-29 Sergio Durigan Junior <sergiodj@redhat.com>
* common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
Adjust comments.
commit 9c3adfb9a409a240bb4cf087f0adeb8b1472f67a
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Oct 30 00:00:40 2018 +0000
Automatic date update in version.in
commit 80e24d09860dbeba7d435b4a4f0990f85dbc084e
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Oct 29 13:28:24 2018 -0400
Revert "GDBSERVER: Listen on a unix domain (instead of TCP) socket if requested."
This reverts commit f19c7ff839d7a32ebb48482ae7d318fb46ca823d.
commit 6a0b3457ee0c51fcc0708b630cc3cdd66226e9a6
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Oct 29 13:28:15 2018 -0400
Revert "GDB: Document the unix::/path/to/socket of remote connection."
This reverts commit 6d0f8100c1a3053c967bec716e34b65dd054cc39.
commit 6cf3675653e477ae0755195171a6a256a2aa8ac0
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Oct 29 13:24:23 2018 -0400
Revert "GDB: Fix documentation for invoking GDBSERVER"
This reverts commit 0a163825df5e98ad55de13eb3d3534d875943047.
commit 431f22cc098a118a862412c1bac1a8aa1bc6ceb7
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Oct 29 13:22:47 2018 -0400
Revert "GDB: Remote target can now accept the form unix::/path/to/socket."
This reverts commit 88f5cc8cf8606478832c7d0d7b74755f3f625015.
commit 7f53228719a0111e41c66da6c9c3b2ed1fd2aab9
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Oct 29 13:22:42 2018 -0400
Revert "GDB: Only build for "unix:" connections if AF_LOCAL is supported."
This reverts commit 98a17ece013cb94cd602496b9efb92b8816b3953.
commit 30a7953dbfe3659c7bdc5b9b4c96f46903cb0254
Author: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Date: Mon Oct 29 10:28:40 2018 +0100
Provide get_shell declaration in procfs.c
The Solaris build is currently broken:
/vol/src/gnu/gdb/hg/master/dist/gdb/procfs.c: In member function âvirtual void procfs_target::create_inferior(const char*, const string&, char**, int)â:
/vol/src/gnu/gdb/hg/master/dist/gdb/procfs.c:3038:28: error: âget_shellâ was not declared in this scope
const char *shell_file = get_shell ();
^~~~~~~~~
/vol/src/gnu/gdb/hg/master/dist/gdb/procfs.c:3038:28: note: suggested alternative: âgetusershellâ
const char *shell_file = get_shell ();
^~~~~~~~~
getusershell
The following patch fixes this. Tested on amd64-pc-solaris2.11.
2018-10-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* procfs.c: Include common/pathstuff.h.
commit 727a29badd95a68d08b86fec0b98702ce756c660
Author: Alan Modra <amodra@gmail.com>
Date: Mon Oct 29 18:10:06 2018 +1030
Report scripts and libraries searched for ld --trace
The idea of this change is to make -t output useful for users wanting
to package all the object files involved in linking for a bug report.
Something like the following should do the trick.
gcc hello.c -save-temps -Wl,-t | xargs realpath | sort | uniq > files
tar cJf test.tar.xz `cat files`
* ldlang.c (load_symbols): When -t, print file names for script
files and archives.
* ldmain.c (trace_files): Make an int.
(add_archive_element): Print archive elements only with multiple
-t options, or when archive is thin.
* ldmain.h (trace_files): Update.
* ldmisc.c (vfinfo): Don't print both original path and path in
sysroot.
* lexsup.c (parse_args <t>): Increment trace_files.
commit 5c87f94bb85e5b8e715aa7f947ecc602960f20ee
Author: Alan Modra <amodra@gmail.com>
Date: Mon Oct 29 18:09:59 2018 +1030
Remove some ld --trace output
This output really belongs in ld --verbose.
* ldmain.c (main): Print emulation mode and "deleting executable"
for --verbose, not --trace.
(add_archive_element): Only print "no new IR symbols" for --verbose.
commit 55d5520ae35a2b0ce788bd6d43dd619043e887f7
Author: Alan Modra <amodra@gmail.com>
Date: Mon Oct 29 18:09:39 2018 +1030
Simplify --sysroot=/
Prepending '/' to absolute paths doesn't gain us much, and results in
the current implementation of --trace emitting silly path-in-sysroot
output, eg.
/lib/ld-linux-x86-64.so.2 (//lib/ld-linux-x86-64.so.2)
* ldmain.c (get_sysroot): Return "" for "--sysroot=/".
commit 8d1015a887c18c363d9bd707b13348daf4e5f556
Author: Alan Modra <amodra@gmail.com>
Date: Mon Oct 29 16:37:24 2018 +1030
Move struc-symbol.h to symbols.c
This file was never supposed to be widely used. The fact that it has
found its way into many gas files led to bugs, typically when code
expecting a symbolS* to point at a struct symbol is presented with a
struct local_symbol. Also, commit 158184ac9e changed these structs in
2012 but didn't catch all places where symbol bsym was being used to
test for a local_symbol.
* Makefile.am (HFILES): Delete struc-symbol.h.
* doc/internals.texi: Delete struc-symbol.h reference and out
of date local symbol description.
* struc-symbol.h: Delete. Move contents to..
* symbols.c: ..here.
(symbol_on_chain, symbol_symbolS): New functions.
* symbols.h (symbol_on_chain, symbol_symbolS): Declare.
* cgen.c: Don't #include struc-symbol.h.
(gas_cgen_parse_operand): Don't test for local_symbol using
bsym, instead call symbol_symbolS. Use symbol_get_bfdsym.
(weak_operand_overflow_check, make_right_shifted_expr): Use
symbol accessors.
* config/obj-coff.c: Don't #include struc-symbol.h.
(GET_FILENAME_STRING): Delete.
* config/obj-elf.c: Don't #include struc-symbol.h.
(elf_file_symbol): Use symbol accessors.
(elf_adjust_symtab): Call symbol_on_chain.
* config/obj-evax.c: Don't #include struc-symbol.h.
* config/tc-nds32.c: Likewise.
* config/tc-rl78.c: Likewise.
* config/tc-rx.c: Likewise.
* config/tc-alpha.c: Likewise.
(add_to_link_pool, s_alpha_comm): Use symbol accessors.
* config/tc-arc.c: Don't #include struc-symbol.h.
(arc_check_relocs): Use symbol accessors, testing gas symbol
section rather than bfd symbol section.
* config/tc-avr.c: Don't #include struc-symbol.h.
(avr_patch_gccisr_frag): Use symbol accessors.
* config/tc-bfin.c: Don't #include struc-symbol.h.
(bfin_loop_beginend): Use symbol accessors.
* config/tc-csky.c: Don't #include struc-symbol.h.
(v2_work_movih, v2_work_ori): Use symbol accessors. Check for
absolute symbol as well as O_constant.
* config/tc-riscv.c: Don't #include struc-symbol.h.
(riscv_pre_output_hook): Use symbol accessors.
* config/tc-s390.c: Don't #include struc-symbol.h.
(s390_literals): Use symbol accessors.
* config/tc-score.c (s3_build_la_pic, s3_build_lwst_pic): Use
symbol accessors.
(s3_relax_branch_inst16, s3_relax_cmpbranch_inst32): Don't
test symbol bsym.
* config/tc-score7.c: Don't #include struc-symbol.h.
(s7_build_la_pic, s7_build_lwst_pic): Use symbol accessors.
(s7_b32_relax_to_b16): Don't test symbol bsym.
* config/tc-sh.c: Don't #include struc-symbol.h.
(insert_loop_bounds): Use symbol accessors.
(sh_frob_section): Remove bogus symbol canonicalization.
* config/tc-tic54x.c: Don't #include struc-symbol.h.
(tic54x_bss): Use symbol accessors.
* config/tc-tilegx.c: Don't #include struc-symbol.h.
(emit_tilegx_instruction, tilegx_parse_name): Use symbol accessors.
* config/tc-tilepro.c: Don't #include struc-symbol.h.
(emit_tilepro_instruction, tilepro_parse_name): Use accessors.
* config/tc-xtensa.c: Don't #include struc-symbol.h.
(xg_assemble_vliw_tokens): Use symbol accessors.
(xg_order_trampoline_chain): Likewise.
* ehopt.c: Don't #include struc-symbol.h.
(check_eh_frame): Correct local symbol test. Use symbol accessors.
* write.c: Don't #include struc-symbol.h.
(create_note_reloc, maybe_generate_build_notes): Use symbol accessors.
* Makefile.in: Regenerate.
* po/POTFILES.in: Regenerate.
commit c2e863866d9b206c387d8fdc0f1bfa9f246e4355
Author: Alan Modra <amodra@gmail.com>
Date: Fri Oct 26 10:01:54 2018 +1030
ld -r script fixes
For ld -r, we generally set the VMA of sections to zero. This is done
to make the output of ld -r most similar to that output by the
assembler, which generally has sections starting at VMA zero. In some
cases that covers for backend bugs which would mis-handle relocatable
object files with non-zero section VMAs.
This patch fixes a few sections that didn't have zero VMAs for ld -r.
A missing zero on .note.gnu.build-id and .eh_frame_hdr doesn't matter
much since these are linker generated symbols only output on final
link, but it's good to be consistent.
* Makefile.am (ei386beos.c, ei386go32.c): Correct dependencies.
* Makefile.in: Regenerate.
* scripttempl/elf.sc (.note.gnu.build-id, .eh_frame_hdr): Set
address with ${RELOCATING-0}.
* scripttempl/arclinux.sc: Likewise.
* scripttempl/armbpabi.sc: Likewise.
* scripttempl/avr.sc: Likewise.
* scripttempl/elf64hppa.sc: Likewise.
* scripttempl/elf_chaos.sc: Likewise.
* scripttempl/elfarc.sc: Likewise.
* scripttempl/elfxtensa.sc: Likewise.
* scripttempl/mep.sc: Likewise.
* scripttempl/nds32elf.sc: Likewise.
* scripttempl/pru.sc: Likewise.
* scripttempl/elf32msp430.sc: Likewise, and for other sections.
* scripttempl/epiphany_4x4.sc: Similarly.
commit 98a17ece013cb94cd602496b9efb92b8816b3953
Author: John Darrington <john@darrington.wattle.id.au>
Date: Sun Oct 28 20:14:24 2018 +0100
GDB: Only build for "unix:" connections if AF_LOCAL is supported.
Commit f19c7ff839d7a32ebb48482ae7d318fb46ca823d added a new member to the
prefixes array which included a use of the symbol AF_LOCAL. Unfortunately,
not all systems declare this symbol. This change only compiles the "unix:"
member if the system knows about AF_LOCAL.
gdb/ChangeLog:
* configure.ac: New test HAVE_AF_LOCAL
* common/netstuff.c (parse_connection_spec) [prefixes]: Only compile "unix:"
if HAVE_AF_LOCAL is true.
* configure: regenerate.
* config.in: regenerate.
commit cad26cec079bf79d078bb92ecc6b7cf1df2e5845
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Oct 29 00:00:35 2018 +0000
Automatic date update in version.in
commit a3d7226832e5750211ec300c5929dc0f035a3661
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Sun Oct 28 10:43:26 2018 +0000
gdb/riscv: Add back missing braces in riscv-linux-nat.c
In this commit:
commit ee67fd7f3f6ca78eede2862e309c0bcf266bbd7e
Date: Thu Oct 25 12:03:31 2018 +0100
gdb/riscv: Use correct regnum in riscv_linux_nat_target::fetch_registers
I incorrectly removed a set of braces in violation of the GDB coding
standard. This commit adds them back.
gdb/ChangeLog:
* riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
Add missing braces. No functional change.
commit 8fc91c409847f0d4e3e4cdac8161158fafd78636
Author: Alan Modra <amodra@gmail.com>
Date: Sun Oct 28 16:14:35 2018 +1030
Correct ChangeLog
commit b0d99ba9e9c7d7967b53e271e683b7563b710dae
Author: Alan Modra <amodra@gmail.com>
Date: Sun Oct 28 15:57:17 2018 +1030
PR23837, Segmentation fault in resolve_symbol_value
Local symbols don't have a sy_frag field.
PR 23837
* config/tc-hppa.c: Don't include struc-symbol.h.
(pa_build_unwind_subspace): Call get_symbol_frag rather than
referencing sy_frag.
commit 9da2bd6ac9b1c15f6ba4f6e87fc8571aee8efa18
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Oct 28 00:00:46 2018 +0000
Automatic date update in version.in
commit cd948f5b2be612b784591dbe438dc518f6b80d61
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Sat Oct 27 21:25:44 2018 +0200
OBVIOUS Use report_unrecognized_option_error in 'demangle' and 'info macro' commands.
Rather than have some local logic to throw an error for an unrecognized option,
use the new cli-utils.h function throwing an error.
At the same time, fix some wrong indentation in info_macro_command
and fix a small bug in 'demangle' error handling:
Without the patch:
(gdb) demangle -L c++ abcd
Unrecognized option 'c++' to demangle command. Try "help demangle".
(gdb)
With the patch:
(gdb) demangle -L c++ abcd
Unrecognized option '-L' to demangle command. Try "help demangle".
2018-10-27 Philippe Waroquiers <philippe.waroquiers@skynet.be>
* macrocmd.c (info_macro_command): Use report_unrecognized_option_error
to report a bad option and fix indentation.
* demangle.c (demangle_command): Use report_unrecognized_option_error
to report a bad option and correctly report the bad option.
commit b50a8b9a916ea2fe1379bcd8f122feef8129a0e9
Author: Tom Tromey <tom@tromey.com>
Date: Mon Sep 17 12:29:22 2018 -0600
Cache a copy of the user's shell on macOS
Recent versions of macOS have a feature called System Integrity
Protection. Among other things, This feature prevents ptrace from
tracing certain programs --- for example, the programs in /bin, which
includes typical shells.
This means that startup-with-shell does not work properly. This is PR
cli/23364. Currently there is a workaround in gdb to disable
startup-with-shell when this feature might be in use.
This patch changes gdb to be a bit more precise about when
startup-with-shell will not work, by checking whether the shell
executable is restricted.
If the shell is restricted, then this patch will also cause gdb to
cache a copy of the shell in the gdb cache directory, and then reset
the SHELL environment variable to point to this copy. This lets
startup-with-shell work again.
Tested on High Sierra by trying to start a program using redirection,
and by running startup-with-shell.exp.
gdb/ChangeLog
2018-10-27 Tom Tromey <tom@tromey.com>
PR cli/23364:
* darwin-nat.c (copied_shell): New global.
(may_have_sip): Rename from should_disable_startup_with_shell.
(copy_shell_to_cache, maybe_cache_shell): New functions.
(darwin_nat_target::create_inferior): Update. Use
copied_shell.
commit 36033ef57cd048588f9a3d5523712147066421f2
Author: Tom Tromey <tom@tromey.com>
Date: Thu Sep 20 16:30:47 2018 -0600
Do not reopen temporary files
The current callers of mkostemp close the file descriptor and then
re-open it with fopen. It seemed better to me to continue to use the
already-opened file descriptor, so this patch rearranges the code a
little in order to do so. It takes care to ensure that the files are
only unlinked after the file descriptor in question is closed, as
before.
gdb/ChangeLog
2018-10-27 Tom Tromey <tom@tromey.com>
* unittests/scoped_fd-selftests.c (test_to_file): New function.
(run_tests): Call test_to_file.
* dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
temporary files.
* common/scoped_fd.h (scoped_fd::to_file): New method.
commit b3279b601e67ce47263082ef86cfc86e25607c5e
Author: Tom Tromey <tom@tromey.com>
Date: Thu Sep 20 16:04:04 2018 -0600
Use mkostemp, not mkstemp
I noticed that gdb could leak file descriptors coming from mkstemp.
This patch fixes the problem by importing the gnulib mkostemp instead,
and then changing gdb to pass O_CLOEXEC.
A small gnulib patch was needed. This has already been accepted
upstream.
gdb/ChangeLog
2018-10-27 Tom Tromey <tom@tromey.com>
* unittests/scoped_mmap-selftests.c (test_normal): Use
gdb_mkostemp_cloexec.
* unittests/scoped_fd-selftests.c (test_destroy, test_release):
Use gdb_mkostemp_cloexec.
* gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
gnulib/config.in, gnulib/configure,
gnulib/import/Makefile.am, gnulib/import/Makefile.in,
gnulib/import/m4/gnulib-cache.m4,
gnulib/import/m4/gnulib-comp.m4: Update.
* gnulib/import/m4/mkostemp.m4: New file.
* gnulib/import/m4/mkstemp.m4: Remove.
* gnulib/import/mkostemp.c: New file.
* gnulib/import/mkstemp.m4: Remove.
* gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
mkstemp, add mkostemp. Apply new patch.
* gnulib/import/stdlib.in.h: Apply patch.
* gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
New file.
* dwarf-index-write.c (write_psymtabs_to_index): Use
gdb_mkostemp_cloexec.
* common/filestuff.h (gdb_mkostemp_cloexec): New function.
commit e418a61a67a3476826259163383e5deb661042cc
Author: Tom Tromey <tom@tromey.com>
Date: Mon Sep 17 10:48:20 2018 -0600
Move mkdir_recursive to common/filestuff.c
This moves mkdir_recursive from dwarf-index-cache.c to
common/filestuff.c, and also changes it to return a boolean that says
whether or not it worked.
gdb/ChangeLog
2018-10-27 Tom Tromey <tom@tromey.com>
* unittests/mkdir-recursive-selftests.c: New file.
* Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
unittests/mkdir-recursive-selftests.c.
* dwarf-index-cache.c (mkdir_recursive): Move to
common/filestuff.c.
(index_cache::store): Check return value of mkdir_recursive.
(create_dir_and_check, test_mkdir_recursive): Move to new file.
(_initialize_index_cache): Don't register test.
* common/filestuff.h (mkdir_recursive): Declare.
* common/filestuff.c (mkdir_recursive): Move from
dwarf-index-cache.c. Return bool.
commit 29be4d9dee1263b36e33421dd8ea69b9b7308391
Author: Tom Tromey <tom@tromey.com>
Date: Fri Sep 14 11:28:45 2018 -0600
Move make_temp_filename to common/pathstuff.c
Currently make_temp_filename is a function local to
write_psymtabs_to_index. This patch moves it to pathstuff.c so that
it can be used from other places in gdb.
gdb/ChangeLog
2018-10-27 Tom Tromey <tom@tromey.com>
* dwarf-index-write.c (write_psymtabs_to_index): Move
make_temp_filename to common/pathstuff.c.
* common/pathstuff.h (make_temp_filename): Declare.
* common/pathstuff.c (make_temp_filename): New function, moved
from dwarf-index-write.c.
commit 974e68446388769f023c6c9bfb1e67ed75199618
Author: Tom Tromey <tom@tromey.com>
Date: Fri Sep 14 10:35:45 2018 -0600
Unify shell-finding logic
I noticed several places in gdb that were using getenv("SHELL") and
then falling back to "/bin/sh" if it returned NULL. This unifies
these into a single function.
gdb/ChangeLog
2018-10-27 Tom Tromey <tom@tromey.com>
* procfs.c (procfs_target::create_inferior): Use get_shell.
* cli/cli-cmds.c (shell_escape): Use get_shell.
* windows-nat.c (windows_nat_target::create_inferior): Use
get_shell.
* common/pathstuff.c (get_shell): New function.
* nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
(fork_inferior): Use get_shell.
* common/pathstuff.h (get_shell): Declare.
commit c8ee3f04a66141d5fa930cd77bc53ac0bc17de32
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Thu Oct 25 22:42:58 2018 +0200
Remove a bunch of usages of gdb_suppress_tests in 'runto_main'.
In the 'info -q -t' patch series, I started a new test from
gdb.threads/threadapply.exp, that uses an obsolete way to do
runto_main.
This patch changes all occurrences of runto_main using gdb_suppress_tests
to use instead fail+return.
Note that there are still about 220 occurrences of gdb_suppress_tests
but unclear (to me) if these can be similarly trivially be replaced by a
fail+return. Further cleanup can be done in follow-up patches.
Tests run on Debian/x86_64.
gdb/testsuite/ChangeLog
2018-10-27 Philippe Waroquiers <philippe.waroquiers@skynet.be>
* gdb.arch/altivec-regs.exp: Do not use gdb_suppress_tests in
runto_main, use fail + return instead.
gdb.arch/amd64-byte.exp: Likewise.
gdb.arch/amd64-dword.exp: Likewise.
gdb.arch/amd64-word.exp: Likewise.
gdb.arch/e500-abi.exp: Likewise.
gdb.arch/e500-regs.exp: Likewise.
gdb.arch/gdb1291.exp: Likewise.
gdb.arch/gdb1431.exp: Likewise.
gdb.arch/i386-avx.exp: Likewise.
gdb.arch/i386-byte.exp: Likewise.
gdb.arch/i386-prologue.exp: Likewise.
gdb.arch/i386-sse.exp: Likewise.
gdb.arch/i386-word.exp: Likewise.
gdb.arch/iwmmxt-regs.exp: Likewise.
gdb.arch/pa-nullify.exp: Likewise.
gdb.arch/powerpc-prologue.exp: Likewise.
gdb.arch/s390-tdbregs.exp: Likewise.
gdb.arch/vsx-regs.exp: Likewise.
gdb.asm/asm-source.exp: Likewise.
gdb.base/auxv.exp: Likewise.
gdb.base/bigcore.exp: Likewise.
gdb.base/overlays.exp: Likewise.
gdb.base/savedregs.exp: Likewise.
gdb.base/setshow.exp: Likewise.
gdb.base/sigaltstack.exp: Likewise.
gdb.base/sigbpt.exp: Likewise.
gdb.base/siginfo-addr.exp: Likewise.
gdb.base/siginfo-obj.exp: Likewise.
gdb.base/siginfo-thread.exp: Likewise.
gdb.base/siginfo.exp: Likewise.
gdb.base/signull.exp: Likewise.
gdb.base/sigrepeat.exp: Likewise.
gdb.base/structs2.exp: Likewise.
gdb.threads/threadapply.exp: Likewise.
gdb.threads/watchthreads.exp: Likewise.
gdb.threads/watchthreads2.exp: Likewise.
commit 82b5e646c22b25862debc68a30d44957a9e5e3d3
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Thu Jul 5 22:39:41 2018 +0200
Add a test case for info args|functions|locals|variables [-q] [-t TYPEREGEXP] [NAMEREGEXP]
Add a test case for info args|functions|locals|variables [-q] [-t TYPEREGEXP] [NAMEREGEXP]
gdb/testsuite/ChangeLog
2018-10-27 Philippe Waroquiers <philippe.waroquiers@skynet.be>
* gdb.base/info_qt.c: New file.
* gdb.base/info_qt.exp: New file.
commit e0a7911fa24e838e3e11481903dbe9c3970306d0
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Sun Jul 1 23:02:41 2018 +0200
Announce changes in NEWS to info [args|functions|locals|variables]
Announce changes in NEWS to info [args|functions|locals|variables]
gdb/ChangeLog
2018-10-27 Philippe Waroquiers <philippe.waroquiers@skynet.be>
* NEWS: Mention changes to 'info [args|functions|locals|variables]'
commit d321477b39b44f2b55834ceae7911563d9f5db15
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Sun Jul 1 23:02:14 2018 +0200
Document changes to info [args|functions|locals|variables]
Document changes to info [args|functions|locals|variables]
gdb/doc/ChangeLog
2018-10-27 Philippe Waroquiers <philippe.waroquiers@skynet.be>
* gdb.texinfo (Information About a Frame): Document changes
to 'info args' and 'info locals'.
(Examining the Symbol Table): Document changes to 'info functions'
and 'info variables'.
commit 12615cba8411c845b33b98cc616439c66a34f03a
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Sun Jul 1 22:56:56 2018 +0200
Add [-q] [-t TYPEREGEXP] [NAMEREGEXP] args to info [args|functions|locals|variables]
Add [-q] [-t TYPEREGEXP] [NAMEREGEXP] args to info [args|functions|locals|variables]
Main changes are:
* stack.c: Add two regexp preg and treg to print_variable_and_value_data
and used them inside do_print_variable_and_value to filter the
variables to print.
* symtab.h: Add a new function bool treg_matches_sym_type_name, that
factorises type matching logic.
* symtab.c: Add type/name matching logic to 'info functions|variables'.
* stack.c : Add type/name matching logic to 'info args|locals'.
gdb/ChangeLog
2018-10-27 Philippe Waroquiers <philippe.waroquiers@skynet.be>
* stack.c (print_variable_and_value_data): Add preg and treg.
(print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
and update callers.
(print_frame_arg_vars): Likewise.
(prepare_reg): New function.
(info_locals_command): Extract info print args and use them.
(info_args_command): Likewise.
(_initialize_stack): Modify on-line help.
* symtab.c (treg_matches_sym_type_name): New function.
(search_symbols): New arg t_regexp.
(symtab_symbol_info): New args quiet, regexp, t_regexp.
(info_variables_command): Extract info print args and use them.
(info_functions_command): Likewise.
(info_types_command): Update call to symtab_symbol_info.
(_initialize_symtab): Modify on-line help.
* symtab.h (treg_matches_sym_type_name): New function.
(search_symbols): New t_regexp arg.
commit 0d4cad90ca7c4394a1799efaa79c784f84a18161
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Sun Jul 1 22:46:41 2018 +0200
New cli-utils.h/.c function extract_info_print_args
New cli-utils.h/.c function extract_info_print_args factorizes
the extraction of the args '[-q] [-t TYPEREGEXP] [NAMEREGEXP]'.
New cli-utils.h/.c function report_unrecognized_option_error
factorizes reporting an unknown option for a command.
These functions will be used by the commands
info [args|functions|locals|variables]
As extract_info_print_args will be used for 'info functions|variables' which
already have the NAMEREGEXP arg, it provides a backward compatible
behaviour.
cli-utils.c has a new static function extract_arg_maybe_quoted
that extracts an argument, possibly quoted. The behaviour of this
function is similar to the parsing done by gdb_argv.
gdb/ChangeLog
2018-10-27 Philippe Waroquiers <philippe.waroquiers@skynet.be>
* cli-utils.c (extract_arg_maybe_quoted): New function.
(extract_info_print_args): New function.
(info_print_args_help): New function.
(report_unrecognized_option_error): New function.
* cli-utils.h (extract_arg_maybe_quoted): New function.
(extract_info_print_args): New function.
(info_print_args_help): New function.
(report_unrecognized_option_error): New function.
commit 6951e9f3e219cb6867beccb48dde39530e48d582
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Oct 27 00:01:21 2018 +0000
Automatic date update in version.in
commit 4c39bc03545798694b4ed2a5cd5caedd7ce3cc50
Author: Tom Tromey <tom@tromey.com>
Date: Sun Oct 14 12:18:21 2018 -0600
Remove DEF_VECs from symtab.h
This removes a couple of DEF_VECs from symtab.h, replacing them with
std::vector at the points of use.
gdb/ChangeLog
2018-10-26 Tom Tromey <tom@tromey.com>
* dwarf2read.c (recursively_compute_inclusions): Use std::vector.
(compute_compunit_symtab_includes): Update.
* symtab.h: (symtab_ptr): Remove typedef. Don't define a VEC.
(compunit_symtab_ptr): Likewise.
commit fd2b4de5e63ad5994baf9c57b5d0c49d1f1dd4e4
Author: John Baldwin <jhb@FreeBSD.org>
Date: Fri Oct 26 10:20:56 2018 -0700
Treat all unknown auxv tags on FreeBSD as unknown.
Previously, default_print_auxv_entry was called for any auxv entries
without a known AT_FREEBSD_* tag. However, this resulted in false
positive matches when FreeBSD added a new tag that has an existing
AT_* tag with a different meaning. Instead, only call
default_print_auxv_entry for specific tag values for which FreeBSD
matches the default AT_* values.
gdb/ChangeLog:
* fbsd-tdep.c (fbsd_print_auxv_entry): Only use
default_print_auxv_entry for specific tag values.
commit d7ded98f4cf9891cf04fe6af5c90b6af6709dff8
Author: John Baldwin <jhb@FreeBSD.org>
Date: Fri Oct 26 10:20:56 2018 -0700
Support AT_HWCAP2 on FreeBSD.
include/ChangeLog:
* elf/common.h (AT_FREEBSD_HWCAP2): Define.
gdb/ChangeLog:
* fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
commit 77c6f5fcdae65da0428ff75fa81059f1b5271cf0
Author: Jim Wilson <jimw@sifive.com>
Date: Fri Oct 26 10:32:58 2018 -0700
RISC-V: Linux signal frame support.
Add support for recognizing signal trampolines, parsing the signal frame,
and reading register values from it.
gdb/
* riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
(riscv_linux_sigframe_init): Declare.
(RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
(riscv_linux_sigframe): New.
(SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
(riscv_linux_sigframe_init): Define.
(riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
commit 8a61382623e271fe2df0fe8f7558ea545db8b561
Author: Jim Wilson <jimw@sifive.com>
Date: Fri Oct 26 10:29:46 2018 -0700
RISC-V: Linux signal frame support.
Make riscv_isa_flen available to the linux native code, and clean up duplicate
comments.
gdb/
* riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
(riscv_isa_flen): Likewise. Drop static.
* riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
(riscv_isa_flen): Likewise.
commit 8d619c01db64c533df3ffc706b694f293347f0d8
Author: Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com>
Date: Fri Oct 26 09:37:55 2018 -0300
[PowerPC] Add support for HTM registers
This patch adds support for Hardware Transactional Memory registers
for the powerpc linux native and core file targets, and for the
pwoerpc linux server stub.
These registers include both the HTM special-purpose registers (TFHAR,
TEXASR and TFIAR) as well as the set of registers that are
checkpointed (saved) when a transaction is initiated, which the
processor restores in the event of a transaction failure.
The set of checkpointed general-purpose registers is returned by the
linux kernel in the same format as the regular general-purpose
registers, defined in struct pt_regs. However, the architecture
specifies that only some of the registers present in pt_regs are
checkpointed (GPRs 0-31, CR, XER, LR and CTR). The kernel fills the
slots for MSR and NIP with other info. The other fields usually don't
have meaningful values. GDB doesn't define registers that are not
checkpointed in the architecture, but when generating a core file, GDB
fills the slot for the checkpointed MSR with the regular MSR. These
are usually similar, although some bits might be different, and in
some cases the checkpointed MSR will have a value of 0 in a
kernel-generated core-file. The checkpointed NIP is filled with TFHAR
by GDB in the core-file, which is what the kernel does. The other
fields are set to 0 by GDB.
Core files generated by the kernel have a note section for
checkpointed GPRs with the same size for both 32-bit and 64-bit
threads, and the values for the registers of a 32-bit thread are
squeezed in the first half, with no useful data in the second half.
GDB generates a smaller note section for 32-bit threads, but can read
both sizes.
The checkpointed XER is required to be 32-bit in the target
description documentation, even though the more recent ISAs define it
as 64-bit wide, since the high-order 32-bits are reserved, and because
in Linux there is no way to get a 64-bit checkpointed XER for 32-bit
threads. If this changes in the future, the target description
feature requirement can be relaxed to allow for a 64-bit checkpointed
XER.
Access to the checkpointed CR (condition register) can be confusing.
The architecture only specifies that CR fields 1 to 7 (the 24 least
significant bits) are checkpointed, but the kernel provides all 8
fields (32 bits). The value of field 0 is not masked by ptrace, so it
will sometimes show the result of some kernel operation, probably
treclaim., which sets this field.
The checkpointed registers are marked not to be saved and restored.
Inferior function calls during an active transaction don't work well,
and it's unclear what should be done in this case. TEXASR and TFIAR
can be altered asynchronously, during transaction failure recording,
so they are also not saved and restored. For consistency neither is
TFHAR.
Record and replay also doesn't work well when transactions are
involved. This patch doesn't address this, so the values of the HTM
SPRs will sometimes be innacurate when the record/relay target is
enabled. For instance, executing a "tbegin." alters TFHAR and TEXASR,
but these changes are not currently recorded.
Because the checkpointed registers are only available when a
transaction is active (or suspended), ptrace can return ENODATA when
gdb tries to read these registers and the inferior is not in a
transactional state. The registers are set to the unavailable state
when this happens. When gbd tries to write to one of these registers,
and it is unavailable, an error is raised.
The "fill" functions for checkpointed register sets in the server stub
are not implemented for the same reason as for the EBB register set,
since ptrace can also return ENODATA for checkpointed regsets. The
same issues with 'G' packets apply here.
Just like for the EBB registers, tracepoints will not mark the
checkpointed registers as unavailable if the inferior was not in a
transaction, so their content will also show 0 instead of
<unavailable> when inspecting trace data.
The new tests record the values of the regular registers before
stepping the inferior through a "tbegin." instruction to start a
transaction, then the checkpointed registers are checked against the
recorded pre-transactional values. New values are written to the
checkpointed registers and recorded, the inferior continues until the
transaction aborts (which is usually immediately when it is resumed),
and the regular registers are checked against the recorded values,
because the abort should have reverted the registers to these values.
Like for the EBB registers, target_store_registers will ignore the
checkpointed registers when called with -1 as the regno
argument (store all registers in one go).
gdb/ChangeLog:
2018-10-26 Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com>
Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
(tdesc_powerpc_isa207_htm_vsx64l): Declare.
* arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
(PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
(PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
(PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
(PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
Define.
(struct ppc_linux_features) <htm>: New field.
(ppc_linux_no_features): Add initializer for htm field.
* arch/ppc-linux-common.c (ppc_linux_match_description): Return
new tdescs.
* nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
(NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
(NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
Define if not already defined.
* features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
and rs6000/powerpc-isa207-htm-vsx64l.
(XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
rs6000/powerpc-isa207-htm-vsx64l.xml.
* features/rs6000/power-htm-spr.xml: New file.
* features/rs6000/power-htm-core.xml: New file.
* features/rs6000/power64-htm-core.xml: New file.
* features/rs6000/power-htm-fpu.xml: New file.
* features/rs6000/power-htm-altivec.xml: New file.
* features/rs6000/power-htm-vsx.xml: New file.
* features/rs6000/power-htm-ppr.xml: New file.
* features/rs6000/power-htm-dscr.xml: New file.
* features/rs6000/power-htm-tar.xml: New file.
* features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
* features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
* features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
* features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
* regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
* regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
* ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
fetch_regset with HTM regsets.
(store_register, store_ppc_registers): Call store_regset with HTM
regsets.
(ppc_linux_nat_target::read_description): Set htm field in the
features struct if needed.
* ppc-linux-tdep.c: Include
features/rs6000/powerpc-isa207-htm-vsx32l.c and
features/rs6000/powerpc-isa207-htm-vsx64l.c.
(ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
(ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
(ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
(ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
(ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
(ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
(ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
(ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
(ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
(ppc32_linux_ctarregset): New globals.
(ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
(ppc_linux_collect_core_cpgrregset): New function.
(ppc_linux_iterate_over_regset_sections): Call back with the htm
regsets.
(ppc_linux_core_read_description): Check if the tm spr section is
present and set htm in the features struct.
(_initialize_ppc_linux_tdep): Call
initialize_tdesc_powerpc_isa207_htm_vsx32l and
initialize_tdesc_powerpc_isa207_htm_vsx64l.
* ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
Declare.
(ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
(ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
(ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
* ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
New fields.
<have_htm_fpu, have_htm_altivec, have_htm_vsx>:
Likewise.
<ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
<ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
(enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
New enum fields.
<PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
<PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
<PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
<PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
<PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
<PPC_CTAR_REGNUM>: Likewise.
(PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
(PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
* rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
(IS_CEFP_PSEUDOREG): Define.
(rs6000_register_name): Hide the upper halves of checkpointed VSX
registers. Return names for the checkpointed DFP, VSX, and EFP
pseudo registers.
(rs6000_pseudo_register_type): Remove initial assert and raise an
internal error in the else clause instead. Return types for the
checkpointed DFP, VSX, and EFP pseudo registers.
(dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
checkpointed DFP pseudo registers.
(vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
checkpointed VSX pseudo registers.
(efp_pseudo_register_read, efp_pseudo_register_write): Rename
from efpr_pseudo_register_read and
efpr_pseudo_register_write. Handle checkpointed EFP pseudo
registers.
(rs6000_pseudo_register_read, rs6000_pseudo_register_write):
Handle checkpointed DFP, VSX, and EFP registers.
(dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
(efp_ax_pseudo_register_collect): New functions.
(rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
register logic to new functions. Handle checkpointed DFP, VSX,
and EFP pseudo registers.
(rs6000_gdbarch_init): Look for and validate the htm features.
Include checkpointed DFP, VSX and EFP pseudo-registers.
* NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
HTM registers.
gdb/gdbserver/ChangeLog:
2018-10-26 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* configure.srv (ipa_ppc_linux_regobj): Add
powerpc-isa207-htm-vsx32l-ipa.o and
powerpc-isa207-htm-vsx64l-ipa.o.
(powerpc*-*-linux*): Add powerpc-isa207-htm-vsx32l.o and
powerpc-isa207-htm-vsx64l.o to srv_regobj. Add
rs6000/power-htm-spr.xml, rs6000/power-htm-core.xml,
rs6000/power64-htm-core.xml, rs6000/power-htm-fpu.xml,
rs6000/power-htm-altivec.xml, rs6000/power-htm-vsx.xml,
rs6000/power-htm-ppr.xml, rs6000/power-htm-dscr.xml,
rs6000/power-htm-tar.xml, rs6000/powerpc-isa207-htm-vsx32l.xml,
and rs6000/powerpc-isa207-htm-vsx64l.xml to srv_xmlfiles.
* linux-ppc-tdesc-init.h (enum ppc_linux_tdesc)
<PPC_TDESC_ISA207_HTM_VSX>: New enum value.
(init_registers_powerpc_isa207_htm_vsx32l)
(init_registers_powerpc_isa207_htm_vsx64l): Declare.
* linux-ppc-low.c (ppc_fill_tm_sprregset, ppc_store_tm_sprregset)
(ppc_store_tm_cgprregset, ppc_store_tm_cfprregset)
(ppc_store_tm_cvrregset, ppc_store_tm_cvsxregset)
(ppc_store_tm_cpprregset, ppc_store_tm_cdscrregset)
(ppc_store_tm_ctarregset): New functions.
(ppc_regsets): Add entries for HTM regsets.
(ppc_arch_setup): Set htm in features struct when needed. Set
sizes for the HTM regsets.
(ppc_get_ipa_tdesc_idx): Return PPC_TDESC_ISA207_HTM_VSX.
(initialize_low_arch): Call
init_registers_powerpc_isa207_htm_vsx32l and
init_registers_powerpc_isa207_htm_vsx64l.
* linux-ppc-ipa.c (get_ipa_tdesc): Handle
PPC_TDESC_ISA207_HTM_VSX.
(initialize_low_tracepoint): Call
init_registers_powerpc_isa207_htm_vsx32l and
init_registers_powerpc_isa207_htm_vsx64l.
gdb/testsuite/ChangeLog:
2018-10-26 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* gdb.arch/powerpc-htm-regs.c: New file.
* gdb.arch/powerpc-htm-regs.exp: New file.
gdb/doc/ChangeLog:
2018-10-26 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* gdb.texinfo (PowerPC Features): Describe new features
"org.gnu.gdb.power.htm.spr", "org.gnu.gdb.power.htm.core",
"org.gnu.gdb.power.htm.fpu", "org.gnu.gdb.power.htm.altivec",
"org.gnu.gdb.power.htm.vsx", "org.gnu.gdb.power.htm.ppr",
"org.gnu.gdb.power.htm.dscr", "org.gnu.gdb.power.htm.tar".
commit 81ab84fd6cdaab121988e0c424f8cdc0ae472e14
Author: Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
Date: Fri Oct 26 09:37:55 2018 -0300
[PowerPC] Reject tdescs with VSX and no FPU or Altivec
Currently rs6000_gdbarch_init will accept a tdesc with the
"org.gnu.gdb.power.vsx" feature but without the
"org.gnu.gdb.power.altivec" or "org.gnu.gdb.power.fpu".
It isn't clear from the standard features documentation that these are
requirements. However, these tdescs would cause trouble in the VSX
pseudo-register functions, so this patch will cause them to be
rejected.
gdb/ChangeLog:
2018-10-26 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
without altivec or fpu.
commit 232bfb8644f0a083969d8359a37bc23764642611
Author: Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com>
Date: Fri Oct 26 09:37:54 2018 -0300
[PowerPC] Add support for EBB and PMU registers
This patch adds support for registers of the Event Based Branching and
Performance Monitoring Units for the powerpc linux native and core
file targets, and for the powerpc linux server stub.
All three EBB registers are accessible. Only a subset of the PMU
registers can be accessed through ptrace. Because of this, the PMU
registers are enumerated individually in gdbarch_tdep, as opposed to
having a single "have_pmu" flag. This is intended to make it easier
to add additional PMU registers in the future, since checking a
"have_pmu" flag elsewhere in the code would no longer be correct. The
tdesc feature is named org.gnu.gdb.power.linux.pmu because of this.
It's unclear if it makes sense to save and restore these registers
across function calls, since some of them can be modified
asynchronously. They are also not tracked in record-replay mode.
The kernel can return ENODATA when ptrace is used to get the EBB
registers, unless a linux performance event that uses EBB is open in
the inferior. For this reason, the "fill" functions in the server
stub for the ebb register sets is not implemented.
Since gdbserver writes all registers in one go before resuming the
inferior, this error would not be detected at the time the user tries
to write to one of the registers on the client side, and gdbserver
would print out warnings every time it resumes the inferior when no
ebb performance event is opened, so there is currently no
straightforward way to handle this case. This means the ebb registers
in the client-side regcache can become dirty when the user tries to
write to them, until the inferior is resumed and stopped again.
A related issue is that 'G' packets used to write to unrelated
registers will include bad data for the EBB registers if they are
unavailable, since no register status information is included in the
'G' packet. This data won't be written to the inferior by the
gdbserver stub because the "fill" functions are not implemented, and
currently the gdbserver stub doesn't change the status of the
registers in its own regcache in response to 'G' packets.
Another limitation for the ebb registers is that traceframes don't
record if registers are available or not, so if these registers are
collected when a tracepoint is hit and the inferior has no ebb event
opened, the user will see zero values for all of them, instead of the
usual <unavailable>.
Because these registers are often unavailable, trying to store them
with target_store_registers with -1 for the regno argument (all
registers) would almost always fail, so they are ignored in this case.
gdb/ChangeLog:
2018-10-26 Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com>
Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
(PPC_LINUX_SIZEOF_PMUREGSET): Declare.
* nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
Define if not already defined.
* features/rs6000/power-ebb.xml: New file.
* features/rs6000/power-linux-pmu.xml: New file.
* features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
features.
* features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
* features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
* features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
* regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
* regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
* ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
fetch_regset with ebb and pmu regsets.
(store_register, store_ppc_registers): Call store_regset with ebb
and pmu regsets.
(ppc_linux_nat_target::read_description): Set isa207 field in the
features struct if ebb and pmu are avaiable.
* ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
(ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
(ppc_linux_iterate_over_regset_sections): Call back with the ebb
and pmu regsets.
(ppc_linux_core_read_description): Check if the pmu section is
present and set isa207 in the features struct.
* ppc-linux-tdep.h (ppc32_linux_ebbregset)
(ppc32_linux_pmuregset): Declare.
* ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
<ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
<ppc_sier_regnum>: New field.
(enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
New enum values.
<PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
values.
<PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
(PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
* rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
ebb and pmu features.
gdb/gdbserver/ChangeLog:
2018-10-26 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* configure.srv (powerpc*-*-linux*): Add rs6000/power-ebb.xml and
rs6000/power-linux-pmu.xml to srv_xmlfiles.
* linux-ppc-low.c (ppc_store_ebbregset, ppc_fill_pmuregset)
(ppc_store_pmuregset): New functions.
(ppc_regsets): Add entries for ebb and pmu regsets.
(ppc_arch_setup): Set isa207 in features struct if the ebb and
pmu regsets are available. Set sizes for these regsets.
gdb/doc/ChangeLog:
2018-10-26 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* gdb.texinfo (PowerPC Features): Describe new features
"org.gnu.gdb.power.ebb" and "org.gnu.gdb.power.linux.pmu".
commit f2cf6173f33bbb562881c571bfecd129fe94b158
Author: Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com>
Date: Fri Oct 26 09:37:54 2018 -0300
[PowerPC] Add support for TAR
This patch adds support for the Target Address Register for powerpc
linux native and core file targets, and in the powerpc linux server
stub.
gdb/ChangeLog:
2018-10-26 Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com>
Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
(tdesc_powerpc_isa207_vsx64l): Declare.
* arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
(struct ppc_linux_features) <isa207>: New field.
(ppc_linux_no_features): Add initializer for isa207 field.
* arch/ppc-linux-common.c (ppc_linux_match_description): Return
new tdescs.
* nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
(NT_PPC_TAR): Define if not already defined.
* features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
rs6000/powerpc-isa207-vsx64l.
(XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
rs6000/powerpc-isa207-vsx64l.xml.
* features/rs6000/power-tar.xml: New file.
* features/rs6000/powerpc-isa207-vsx32l.xml: New file.
* features/rs6000/powerpc-isa207-vsx64l.xml: New file.
* features/rs6000/powerpc-isa207-vsx32l.c: Generate.
* features/rs6000/powerpc-isa207-vsx64l.c: Generate.
* regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
* regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
* ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
fetch_regset with the TAR regset.
(store_register, store_ppc_registers): Call store_regset with the
TAR regset.
(ppc_linux_nat_target::read_description): Set isa207 field in the
features struct if needed.
* ppc-linux-tdep.c: Include
features/rs6000/powerpc-isa207-vsx32l.c and
features/rs6000/powerpc-isa207-vsx64l.c.
(ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
(ppc_linux_iterate_over_regset_sections): Call back with the tar
regset.
(ppc_linux_core_read_description): Check if the tar section is
present and set isa207 in the features struct.
(_initialize_ppc_linux_tdep): Call
initialize_tdesc_powerpc_isa207_vsx32l and
initialize_tdesc_powerpc_isa207_vsx64l.
* ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
* ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
(enum) <PPC_TAR_REGNUM>: New enum value.
* rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
feature.
(ppc_process_record_op31): Record changes to TAR.
gdb/gdbserver/ChangeLog:
2018-10-26 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* configure.srv (ipa_ppc_linux_regobj): Add
powerpc-isa207-vsx64l-ipa.o and powerpc-isa207-vsx32l-ipa.o.
(powerpc*-*-linux*): Add powerpc-isa207-vsx32l.o and
powerpc-isa207-vsx64l.o to srv_regobj, add rs6000/power-tar.xml,
rs6000/powerpc-isa207-vsx32l.xml, and
rs6000/powerpc-isa207-vsx64l.xml to srv_xmlfiles.
* linux-ppc-tdesc-init.h (enum ppc_linux_tdesc)
<PPC_TDESC_ISA207_VSX>: New enum value.
(init_registers_powerpc_isa207_vsx32l): Declare.
(init_registers_powerpc_isa207_vsx64l): Declare.
* linux-ppc-low.c (ppc_fill_tarregset): New function.
(ppc_store_tarregset): New function.
(ppc_regsets): Add entry for the TAR regset.
(ppc_arch_setup): Set isa207 in features struct when needed. Set
size for the TAR regsets.
(ppc_get_ipa_tdesc_idx): Return PPC_TDESC_ISA207_VSX.
(initialize_low_arch): Call init_registers_powerpc_isa207_vsx32l
and init_registers_powerpc_isa207_vsx64l.
* linux-ppc-ipa.c (get_ipa_tdesc): Handle PPC_TDESC_ISA207_VSX.
(initialize_low_tracepoint): Call
init_registers_powerpc_isa207_vsx32l and
init_registers_powerpc_isa207_vsx64l.
gdb/testsuite/ChangeLog:
2018-10-26 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* gdb.arch/powerpc-tar.c: New file.
* gdb.arch/powerpc-tar.exp: New file.
gdb/doc/ChangeLog:
2018-10-26 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* gdb.texinfo (PowerPC Features): Describe new feature
"org.gnu.gdb.power.tar".
commit 7ca18ed6d22398dd3009ba72d3a1e7747e40753d
Author: Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com>
Date: Fri Oct 26 09:37:54 2018 -0300
[PowerPC] Add support for PPR and DSCR
This patch adds gdb support for the Program Priorty Register and the
Data Stream Control Register, for the powerpc linux native and core
file targets, and for the powerpc linux server stub.
gdb/ChangeLog:
2018-10-26 Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com>
Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
(tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
* arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
(PPC_LINUX_SIZEOF_DSCRREGSET): Define.
(struct ppc_linux_features) <ppr_dscr>: New field.
(ppc_linux_no_features): Add initializer for ppr_dscr field.
* arch/ppc-linux-common.c (ppc_linux_match_description): Return
new tdescs.
* nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
Define if not already defined.
* features/Makefile (WHICH): Add
rs6000/powerpc-isa205-ppr-dscr-vsx32l and
rs6000/powerpc-isa205-ppr-dscr-vsx64l.
(XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
* features/rs6000/power-dscr.xml: New file.
* features/rs6000/power-ppr.xml: New file.
* features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
* features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
* features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
* features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
* regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
* regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
* ppc-linux-nat.c: Include <sys/uio.h>.
(fetch_regset, store_regset, check_regset): New functions.
(fetch_register, fetch_ppc_registers): Call fetch_regset with
DSCR and PPR regsets.
(store_register, store_ppc_registers): Call store_regset with
DSCR and PPR regsets.
(ppc_linux_get_hwcap2): New function.
(ppc_linux_nat_target::read_description): Call
ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
features struct if needed.
* ppc-linux-tdep.c: Include
features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
(ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
(ppc32_linux_dscrregset): New globals.
(ppc_linux_iterate_over_regset_sections): Call back with the ppr
and dscr regsets.
(ppc_linux_core_read_description): Check if the ppr and dscr
sections are present and set ppr_dscr in the features struct.
(_initialize_ppc_linux_tdep): Call
initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
* ppc-linux-tdep.h (ppc32_linux_pprregset)
(ppc32_linux_dscrregset): Declare.
* ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
<ppc_dscr_regnum>: New field.
(enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
* rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
and dscr features.
(ppc_process_record_op31): Record changes to PPR and DSCR.
gdb/gdbserver/ChangeLog:
2018-10-26 Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com>
Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* configure.srv (ipa_ppc_linux_regobj): Add
powerpc-isa205-ppr-dscr-vsx32l-ipa.o and
powerpc-isa205-ppr-dscr-vsx64l-ipa.o.
(powerpc*-*-linux*): Add powerpc-isa205-ppr-dscr-vsx32l.o and
powerpc-isa205-ppr-dscr-vsx64l.o to srv_regobj, add
rs6000/power-dscr.xml, rs6000/power-ppr.xml,
rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml to srv_xmlfiles.
* linux-ppc-tdesc-init.h (enum ppc_linux_tdesc)
<PPC_TDESC_ISA205_PPR_DSCR_VSX>: New enum value.
(init_registers_powerpc_isa205_ppr_dscr_vsx32l)
(init_registers_powerpc_isa205_ppr_dscr_vsx64l): Declare.
* linux-ppc-low.c: Include "elf/common.h" and <sys/uio.h>.
(ppc_hwcap): Add comment.
(ppc_hwcap2): New global.
(ppc_check_regset, ppc_fill_pprregset, ppc_store_pprregset)
(ppc_fill_dscrregset, ppc_store_dscrregset): New functions.
(ppc_regsets): Add entries for the DSCR and PPR regsets.
(ppc_arch_setup): Get AT_HWCAP2. Set ppr_dscr in features struct
when needed. Set sizes for the the DSCR and PPR regsets.
(ppc_get_ipa_tdesc_idx): Return PPC_TDESC_ISA205_PPR_DSCR_VSX.
(initialize_low_arch): Call
init_registers_powerpc_isa205_ppr_dscr_vsx32l and
init_registers_powerpc_isa205_ppr_dscr_vsx64l.
* linux-ppc-ipa.c (get_ipa_tdesc): Handle
PPC_TDESC_ISA205_PPR_DSCR_VSX.
(initialize_low_tracepoint): Call
init_registers_powerpc_isa205_ppr_dscr_vsx32l and
init_registers_powerpc_isa205_ppr_dscr_vsx64l.
gdb/testsuite/ChangeLog:
2018-10-26 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* gdb.arch/powerpc-ppr-dscr.c: New file.
* gdb.arch/powerpc-ppr-dscr.exp: New file.
gdb/doc/ChangeLog:
2018-10-26 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* gdb.texinfo (PowerPC Features): Describe new features
"org.gnu.gdb.power.ppr" and "org.gnu.gdb.power.dscr".
commit 93b4691f0fe1f8249de3c3f9d2e271cb0ba3254e
Author: Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
Date: Fri Oct 26 09:37:54 2018 -0300
[PowerPC] Refactor have_ initializers in rs6000-tdep.c
This patch refactors a series of initializers in rs6000_gdbarch_init
for clarity. The have_fpu initializer is also changed to set the
variable to 0, like the other similar variables. This doesn't affect
program behavior.
gdb/ChangeLog:
2018-10-26 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
second initializer line for the have_* variables. Initialize
have_fpu to 0 instead of 1.
commit 71733a7bf696fd54b1c75a2c9c16fd61819c0ddb
Author: Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
Date: Fri Oct 26 09:37:54 2018 -0300
[PowerPC] Fix indentation in arch/ppc-linux-common.c
This patch parenthesizes the tdesc selection expressions in
arch/ppc-linux-common.c so that they can be tab-indented.
gdb/ChangeLog:
2018-10-26 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* arch/ppc-linux-common.c (ppc_linux_match_description):
Parenthesize tdesc assignements and indent them properly.
commit 3d907528ca584b522125ce4ac818f45dfe7a9a24
Author: Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
Date: Fri Oct 26 09:37:54 2018 -0300
[PowerPC] Fix two if statements in gdb/ppc-linux-nat.c
This patch changes two if statements to else if statements in
ppc-linux-nat.c:fetch_register for clarity.
gdb/ChangeLog:
2018-10-26 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* ppc-linux-nat.c (fetch_register): Change if statement to else
if.
(store_register): Likewise.
commit 500f01a0e2f79d64cc08011ad70c6ffa1e1c7694
Author: Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
Date: Fri Oct 26 09:37:53 2018 -0300
[PowerPC] Remove rs6000_pseudo_register_reggroup_p
This patch removes rs6000_pseudo_register_reggroup_p.
Group membership for the pseudoregisters can be detected through their
types in default_register_reggroup_p through
tdesc_register_reggroup_p.
gdb/ChangeLog:
2018-10-26 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* rs6000-tdep.c: Remove reggroups.h include.
(rs6000_pseudo_register_reggroup_p): Remove.
(rs6000_gdbarch_init): Remove call to
set_tdesc_pseudo_register_reggroup_p.
commit 7ed29001c4a965520f6a243ec7ad41c156f96a20
Author: Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
Date: Fri Oct 26 09:37:53 2018 -0300
Add decfloat registers to float reggroup
This patch changes default_register_reggroup_p to return true when the
register type is decimal floating point and the reggroup is
float_reggroup.
gdb/ChangeLog:
2018-10-26 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* reggroups.c (default_register_reggroup_p): Return true for
decfloat registers and float_reggroup.
commit 5c849b222b154cd5f481fee9d6f3971bd2eeddc2
Author: Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
Date: Fri Oct 26 09:37:53 2018 -0300
[PowerPC] Don't zero-initialize vector register buffers
Now that linux-tdep.c already zero-initializes the buffer used for
generating core file notes, there is no need to do this in the linux
collect functions for the vector regset. The memsets in gdbserver were
not useful to begin with.
gdb/ChangeLog:
2018-10-26 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
(ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
ppc_linux_collect_vrregset by regcache_collect_regset.
gdb/gdbserver/ChangeLog:
2018-10-26 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* linux-ppc-low.c (ppc_fill_vrregset): Remove memset calls.
commit afde3032dde478a2bbb2e0c4b0cb4256b27eb949
Author: Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
Date: Fri Oct 26 09:37:53 2018 -0300
Zero-initialize linux note sections
This patches changes linux-tdep.c so that the buffer used to write
note sections when generating a core file is zero-initialized. This
way, bytes that are not collected won't contain random
data (e.g. padding bytes).
gdb/ChangeLog:
2018-10-26 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* linux-tdep.c (linux_collect_regset_section_cb): Use
std::vector<gdb_byte> instead of char * and malloc for buf.
Remove xfree.
commit b971899198607b844f5a37e39dc561766c3b331a
Author: Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
Date: Fri Oct 26 15:31:36 2018 +0530
Fix SYMBOL_LANGUAGE assertion failure on AIX.
commit 0b0eff8b1d8b4fe51ad3a14f60816f98bc0e963a
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Tue Oct 23 12:10:23 2018 +0100
gdb/riscv: Remove redundant code, and catch more errors when accessing MISA
When reading the MISA register, the RISC-V specification says that, if
MISA can't be found then a default value of 0 should be assumed.
As such, this patch ensures that GDB ignores errors when accessing
both the new and old locations for the MISA register.
Additionally, this patch removes an unneeded flag parameter which
didn't provide any additional functionality beyond checking the MISA
for the default value of 0.
gdb/ChangeLog:
* riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
READ_P parameter, catch and ignore register access errors from
either the old or new MISA location.
(riscv_has_feature): Update call to riscv_read_misa_reg.
commit e8138a6b782685a5b5b262b793cea90ebaec1d37
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Oct 26 00:00:32 2018 +0000
Automatic date update in version.in
commit b69e1ff3507b3ba841f59dcf9bb121fcdd78044e
Author: Christoph Conrads <christoph.conrads@fluent.ai>
Date: Thu Oct 25 21:21:41 2018 +0200
ELF: update ld man page on `--gc-sections`
Commit 91ae256e33 fixes the behavior of ld when `--gc-sections` and
`--gc-keep-exported` are both given on the linker command line. This
updates the ld documentation to suit.
* ld.texi (--gc-sections): Update.
commit ac732bc9fd501d1e9288b6087848cc3ecabafe0c
Author: Tom de Vries <tdevries@suse.de>
Date: Thu Oct 25 16:09:57 2018 +0200
[gdb/testsuite] Move valgrind-db-attach.{c,exp} to valgrind-bt.{c,exp}
Now that valgrind-db-attach.exp no longer use --db-attach, rename
valgrind-db-attach.{c,exp} to valgrind-bt.{c,exp}.
2018-10-25 Tom de Vries <tdevries@suse.de>
* gdb.base/valgrind-db-attach.c: Rename to ...
* gdb.base/valgrind-bt.c: ... this.
* gdb.base/valgrind-db-attach.exp: Rename to ...
* gdb.base/valgrind-bt.exp: ... this.
commit bfcc0eba9e66f3793feecc059f80e97d03dbdbef
Author: Tom de Vries <tdevries@suse.de>
Date: Thu Oct 25 11:03:23 2018 +0200
[gdb/testsuite] Rewrite valgrind-db-attach.exp to use vgdb
The valgrind option --db-attach has been deprecated in version 3.10.0, and
removed in version 3.11.0, so the valgrind-db-attach.exp testcase is
unsupported starting version 3.11.0.
Rewrite the test-case to use vgdb instead (making it supported starting
version 3.7.0).
Tested on x86_64-linux with and without --target_board=native-gdbserver.
2018-10-25 Tom de Vries <tdevries@suse.de>
* gdb.base/valgrind-db-attach.exp: Rewrite to use vgdb.
commit b352ceb6b4fc9f026944d307704076d1e6894de9
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Mon Sep 10 12:05:22 2018 +0100
gdb/python: Make convert_values_to_python return gdbpy_ref<>
Make convert_values_to_python return a gdbpy_ref<> directly rather
than building a gdbpy_ref<>, releasing it, and then having a new
gdbpy_ref<> created to hold the result.
I also added a header comment to convert_values_to_python.
gdb/ChangeLog:
* python/py-function.c (convert_values_to_python): Return
gdbpy_ref<>. Add header comment.
(fnpy_call): Adjust.
commit 50db9ef4c014d28dd64b2d660b043a40224a1a27
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Mon Sep 10 11:48:28 2018 +0100
gdb/python: Make cmdpy_completer_helper return gdbpy_ref<>
Make cmdpy_completer_helper return a gdbpy_ref<> directly rather than
building a gdbpy_ref<>, releasing it, and then having a new
gdbpy_ref<> created to hold the result.
gdb/ChangeLog:
* python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
(cmdpy_completer_handle_brkchars): Adjust.
(cmdpy_completer): Adjust.
commit ee67fd7f3f6ca78eede2862e309c0bcf266bbd7e
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Thu Oct 25 12:03:31 2018 +0100
gdb/riscv: Use correct regnum in riscv_linux_nat_target::fetch_registers
In riscv_linux_nat_target::fetch_registers, if we are asked to supply
all registers (regnum parameter is -1), then we currently end up
calling regcache::raw_supply_zeroed with the regnum -1, which is
invalid. Instead we should be passing the regnum of the specific
register we wish to supply zeroed, in this case RISCV_CSR_MISA_REGNUM.
I removed the extra { ... } block in line with the coding standard
while editing this area.
gdb/ChangeLog:
* riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
Pass correct regnum to raw_supply_zeroed.
commit 0a640d719684f25bdb88ae60148c6978e6131701
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Oct 24 18:08:13 2018 -0700
ELF: Hide symbols defined in discarded input sections
When assigning symbol version, we should hide debug symbols defined in
discarded sections from IR objects so that they can be removed later.
bfd/
PR ld/23818
* elflink.c (_bfd_elf_link_assign_sym_version): Hide symbols
defined in discarded input sections.
ld/
PR ld/23818
* testsuite/ld-plugin/lto.exp: Run PR ld/23818 test.
* testsuite/ld-plugin/pr23818.d: New file.
* testsuite/ld-plugin/pr23818.t: Likewise.
* testsuite/ld-plugin/pr23818a.c: Likewise.
* testsuite/ld-plugin/pr23818b.c: Likewise.
commit 0e139b87870258ce666826efd14fafd543c778d0
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Oct 25 00:00:43 2018 +0000
Automatic date update in version.in
commit fe1a5cad302b5535030cdf62895e79512713d738
Author: Tom de Vries <tdevries@suse.de>
Date: Wed Oct 24 12:54:33 2018 +0200
[gdb/testsuite] Log wait status on process no longer exists error
Proc gdb_test_multiple can run into a process no longer exists error, but when
that happens it shows no details about the process:
...
ERROR: Process no longer exists
...
Fix this by showing the wait status of the process in the log:
...
ERROR: GDB process no longer exists
GDB process exited with wait status 8106 exp8 0 0 CHILDKILLED SIGSEGV \
{segmentation violation}
...
In order to run the wait commmand we need an explicit pid, so we can't use
any_spawn_id, and duplicate the "-i any_spawn_id eof" pattern for gdb_spawn_id,
and add the wait status logging there.
Build and tested on x86_64-linux.
2018-10-24 Tom de Vries <tdevries@suse.de>
* lib/gdb.exp (gdb_test_multiple): Log wait status on process no
longer exists error.
commit 8c246a60c08d82066b16973bcd622e671300eb02
Author: Alan Modra <amodra@gmail.com>
Date: Wed Oct 24 15:08:28 2018 +1030
cmse_scan segfault
elf_sym_hashes for as-needed libs will be zeroed if the library is
found to be not needed. More than that, the local symbols for such a
library should not be considered by cmse_scan.
* elf32-arm.c (elf32_arm_size_stubs): Ignore as-needed libs that
were not needed.
commit a76dc3b7705c5c85efc00521ebfac49e80c3fedf
Author: Tom de Vries <tdevries@suse.de>
Date: Tue Oct 23 23:54:21 2018 +0200
[gdb/testsuite] Rewrite catch-follow-exec.exp using gdb_test
The testcase catch-follow-exec.exp is written use gdb -batch in order to avoid
a GDB SIGTTOU. After the commit of "Avoid GDB SIGTTOU on catch exec + set
follow-exec-mode new (PR 23368)", that no longer is necessary.
Rewrite the test using regular gdb_test commands.
Tested with x86_64-linux.
2018-10-24 Tom de Vries <tdevries@suse.de>
* gdb.base/catch-follow-exec.exp: Rewrite using gdb_test.
commit 4df46df7a4643c0f6f93a2739c4b7bc0e83bcdce
Author: Tom de Vries <tdevries@suse.de>
Date: Wed Oct 24 09:49:44 2018 +0200
[gdb/testsuite] Handle removed valgrind option --db-attach
When running valgrind-db-attach.exp with valgrind version 3.13.0, we get:
...
PASS: gdb.base/valgrind-db-attach.exp: spawn valgrind
valgrind: Unknown option: --db-attach=yes
valgrind: Use --help for more information or consult the user manual.
ERROR: Process no longer exists
UNRESOLVED: gdb.base/valgrind-db-attach.exp: valgrind started
...
The valgrind option --db-attach has been deprecated in version 3.10.0, and
removed in version 3.11.0.
Fix valgrind-db-attach.exp to replace the ERROR/UNRESOLVED with:
...
UNSUPPORTED: gdb.base/valgrind-db-attach.exp: valgrind started
...
Tested on x86_64-linux.
2018-10-24 Tom de Vries <tdevries@suse.de>
* gdb.base/valgrind-db-attach.exp: Handle removed support for
--db-attach in valgrind.
commit 20784627bfe0a33e954f8af786eb3a518ace5dff
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Oct 24 00:00:40 2018 +0000
Automatic date update in version.in
commit bea556ab08927862bc2e052d3b93f1d82055d37e
Author: Hafiz Abid Qadeer <abidh@codesourcery.com>
Date: Tue Oct 23 23:16:58 2018 +0100
Fix failing cooked_read selftest for CSKY.
The problem was discussed and approved in
https://sourceware.org/ml/gdb-patches/2018-10/msg00514.html
2018-10-23 Hafiz Abid Qadeer <abidh@codesourcery.com>
* regcache.c (cooked_read_test): Add CSKY to the list of
architectures with a save_reggroup
commit 35ed81d4f45855b98ea0c517b396662c3ae2a8c5
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Tue Oct 23 17:00:33 2018 -0400
Avoid GDB SIGTTOU on catch exec + set follow-exec-mode new (PR 23368)
Here's a summary of PR 23368:
#include <unistd.h>
int main (void)
{
char *exec_args[] = { "/bin/ls", NULL };
execve (exec_args[0], exec_args, NULL);
}
$ gdb -nx t -ex "catch exec" -ex "set follow-exec-mode new" -ex run
...
[1] + 13146 suspended (tty output) gdb -q -nx t -ex "catch exec" -ex "set follow-exec-mode new" -ex run
$
Here's what happens: when the inferior execs with "follow-exec-mode
new", we first "mourn" it before creating the new one. This ends up
calling inflow_inferior_exit, which sets the per-inferior terminal state
to "is_ours":
inf->terminal_state = target_terminal_state::is_ours;
At this point, the inferior's terminal_state is is_ours, while the
"reality", tracked by gdb_tty_state, is is_inferior (GDB doesn't own the
terminal).
Later, we continue processing the exec inferior event and decide we want
to stop (because of the "catch exec") and call target_terminal::ours to
make sure we own the terminal. However, we don't actually go to the
target backend to change the settings, because the core thinks that no
inferior owns the terminal (inf->terminal_state is
target_terminal_state::is_ours, as checked in
target_terminal_is_ours_kind, for both inferiors). When something in
readline tries to mess with the terminal settings, it generates a
SIGTTOU.
This patch fixes this by tranferring the state of the terminal from the
old inferior to the new inferior.
gdb/ChangeLog:
PR gdb/23368
* infrun.c (follow_exec): In the follow_exec_mode_new case,
transfer terminal state from old new new inferior.
* terminal.h (swap_terminal_info): New function.
* inflow.c (swap_terminal_info): New function.
commit 79b8d3b090bcbfbcffa8bdd195476c6db172273b
Author: Tom Tromey <tom@tromey.com>
Date: Sat Jul 28 14:19:09 2018 -0600
Fix use-after-free in record_btrace_start_replaying
-fsanitize=address showed a use-after-free in
record_btrace_start_replaying. The bug occurred because
get_thread_current_frame returned a frame_info, but this object was
then invalidated before the return by ~scoped_restore_current_thread.
This patch fixes the problem by renaming get_thread_current_frame and
having it return a frame id.
gdb/ChangeLog
2018-10-23 Tom Tromey <tom@tromey.com>
* record-btrace.c (get_thread_current_frame_id): Rename from
get_thread_current_frame. Return a frame_id.
(record_btrace_start_replaying): Update.
commit f47998d69f8d290564c022b010e63d5886a1fd7d
Author: Andreas Krebbel <krebbel@linux.ibm.com>
Date: Tue Oct 23 18:02:37 2018 +0200
S/390: Support vector alignment hints
This patch adds the vector alignment hints to the vector load and
store instructions as documented in the IBM z14 Principles of
Operations manual:
http://publibfi.boulder.ibm.com/epubs/pdf/dz9zr011.pdf
opcodes/ChangeLog:
2018-10-23 Andreas Krebbel <krebbel@linux.ibm.com>
* s390-opc.txt: Add vector load/store instructions with additional
alignment parameter.
gas/ChangeLog:
2018-10-23 Andreas Krebbel <krebbel@linux.ibm.com>
* config/tc-s390.c (md_gather_operands): Fix for optional operands
following memory addresses.
* testsuite/gas/s390/zarch-arch12.d: Add regexp checks for new
instruction variants.
* testsuite/gas/s390/zarch-arch12.s: Emit new instruction
variants.
commit 51d21d60b37f1e1a0aa6fd1f5439b22591fa6d5f
Author: John Darrington <john@darrington.wattle.id.au>
Date: Mon Jul 9 20:54:26 2018 +0200
GDB: New target s12z
gdb/
* configure.tgt: Add configuration for s12z.
* s12z-tdep.c: New file.
* NEWS: Mention new target.
commit 88f5cc8cf8606478832c7d0d7b74755f3f625015
Author: John Darrington <john@darrington.wattle.id.au>
Date: Sat Oct 13 18:12:01 2018 +0200
GDB: Remote target can now accept the form unix::/path/to/socket.
Allow target remote to use the unix::/path/to/socket syntax as well as just
plain /path/to/socket
gdb/
* ser-uds.c (uds_open): Use parse_connection_spec to deal with the
comm form unix::/path/to/socket.
* serial.c (serial_open): Consider the "unix:" prefix when deciding which
interface to use.
commit 0a163825df5e98ad55de13eb3d3534d875943047
Author: John Darrington <john@darrington.wattle.id.au>
Date: Sat Oct 13 17:27:05 2018 +0200
GDB: Fix documentation for invoking GDBSERVER
The documentation did not mention the possibility of invoking gdbserver
with the new connection forms such as tcp6:host:port. This change fixes
that.
gdb/doc/
* gdb.texinfo (Server): Tabulate the various permitted forms of the @var{comm}
metasyntactical variable. Include the unix:@var{host}:@var{socket} form as
one of them.
commit 6d0f8100c1a3053c967bec716e34b65dd054cc39
Author: John Darrington <john@darrington.wattle.id.au>
Date: Sat Oct 13 16:48:01 2018 +0200
GDB: Document the unix::/path/to/socket of remote connection.
gdb/doc:
* gdb.texinfo (Connecting)[Remote Connection Commands]: Provide alternative
unix::/tmp/xxx example. Include @code{unix::@var{local-socket}} in
the list of remote and extended-remote syntaxes.
commit f19c7ff839d7a32ebb48482ae7d318fb46ca823d
Author: John Darrington <john@darrington.wattle.id.au>
Date: Sat Sep 22 12:35:41 2018 +0200
GDBSERVER: Listen on a unix domain (instead of TCP) socket if requested.
When invoking gdbserver, if the COMM parameter takes the form "unix::/path/name"
then a local (unix) domain socket will be created with that name and gdbserver
will listen for connections on that.
gdb/
* NEWS: Mention new feature.
gdb/gdbserver/
* configure.ac (AC_CHECK_HEADERS): Add sys/un.h.
* configure: Regenerate.
* remote-utils.c (remote_prepare): Create a local socket if requested.
(remote_open): Don't attempt to open a file if it's a socket.
(handle_accept_event): Display the name of the socket on connection.
gdb/common/
* netstuff.c (parse_connection_spec)[prefixes]: New member for local domain sockets.
commit 2849d19feb458ade67cdcc6a82f0e7b1be99b46b
Author: John Darrington <john@darrington.wattle.id.au>
Date: Wed Oct 3 12:26:42 2018 +0200
S12Z: New 32 bit Reloc.
Third party tools produce 32 bit relocs at index 6 with strange properties.
This change moves the existing 32 bit reloc (R_S12Z_EXT32) to index 7
and introduces a new one (R_S12Z_CW32) at index 6 to try to support code
generated by these tools.
* bfd/elf32-s12z.c (elf_s12z_howto_table) [R_S12Z_CW32]: New member.
* binutils/readelf.c (is_32bit_abs_reloc): Reloc type 7 is also 32 bit.
* include/elf/s12z.h (elf_s12z_reloc_tpe) [RELOC_NUMBER (R_S12Z_CW32)]: New enum.
commit 405b61965ff7608840cfda36083c1be1f926ccdb
Author: John Darrington <john@darrington.wattle.id.au>
Date: Tue Oct 23 15:33:18 2018 +0200
S12Z: Handle 16 bit fixups which are constant.
Commit 1f38083f425e03faf55595414daf291306738222 added a test
to check that the assembler handled fixups with resolved to
constant values. We were not handling this in the case of
16 bit values. This change fixes that.
* gas/config/tc-s12z.c (md_apply_fix): Handle BFD_RELOC_16
commit 420ecd9ce8a3d61f950bf24d8d7b8827d09f59db
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Tue Oct 23 13:23:34 2018 +0100
gdb/riscv: Give user-friendly names for CSRs
The recent commit:
commit 0dbfcfffe9abbc5198bce95eb8c66b6bc9b364be
Date: Tue Oct 16 22:40:09 2018 +0100
gdb/riscv: Fix register access for register aliases
broke the CSR names for RISC-V, now all of the CSRs have names like,
csr0, csr1, csr2, etc. This commit restores the previous
user-friendly names.
gdb/ChangeLog:
* riscv-tdep.c (riscv_register_name): Use the user-friendly names
for CSRs.
commit 45a0eaf77022963d639d6d19871dbab7b79703fc
Author: Alan Modra <amodra@gmail.com>
Date: Tue Oct 23 19:02:06 2018 +1030
PR23806, NULL pointer dereference in merge_strings
PR 23806
* merge.c (_bfd_add_merge_section): Don't attempt to merge
sections with ridiculously large alignments.
commit 102def4da826b3d9e169741421e5e67e8731909a
Author: Alan Modra <amodra@gmail.com>
Date: Tue Oct 23 18:30:22 2018 +1030
PR23805, NULL pointer dereference in elf_link_input_bfd
PR 23805
* elflink.c (elf_link_input_bfd): Don't segfault on finding
STT_TLS symbols without any TLS sections. Instead, change the
symbol type to STT_NOTYPE.
commit ab419ddbb2cdd17ca83618990f2cacf904ce1d61
Author: Alan Modra <amodra@gmail.com>
Date: Tue Oct 23 18:29:24 2018 +1030
PR23804, buffer overflow in sec_merge_hash_lookup
PR 23804
* merge.c (_bfd_add_merge_section): Don't attempt to merge
sections where size is not a multiple of entsize.
commit 8e3152af14a91df65af8e922a0e8e77c60ed99ba
Author: Alan Modra <amodra@gmail.com>
Date: Tue Oct 23 15:50:43 2018 +1030
alpha testsuite fixes
Fixes a couple of ERROR results due to .set difference on alpha.
* testsuite/ld-elf/shared.exp: Don't build pr19073 test on alpha.
* testsuite/ld-elf/pr18720b.c: Don't use .set on alpha.
commit 5a77b1b49f49cc5cfdb30727d8fc1bf456cad429
Author: Joel Brobecker <brobecker@adacore.com>
Date: Tue Oct 23 11:27:50 2018 +0100
gdb/riscv: expect h/w watchpoints to trigger before the memory is written
When using QEMU as a RISCV simulator, hardware watchpoint events are
reported to GDB before the target memory gets written. GDB currently
expects the event to be reported after it is written. As a result of
this mismatch, upon receiving the event, GDB sees that the target
memory region has not changed, and therefore decides to ignore the
event. It therefore resumes the program's execution with a continue,
which is the start of an infinite loop between QEMU repeatedly
reporting the same watchpoint event over and over, and GDB repeatedly
ignoring it.
This patch fixes the issue by telling GDB to expect the watchpoint
event to be reported ahead of the memory region being modified.
Upon receiving the event, GDB then single-steps the program before
checking the watched memory value.
gdb/ChangeLog:
* riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
have_nonsteppable_watchpoint attribute to 1.
commit 0dbfcfffe9abbc5198bce95eb8c66b6bc9b364be
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Tue Oct 16 22:40:09 2018 +0100
gdb/riscv: Fix register access for register aliases
Some confusion over how the register names and aliases are setup in
riscv means that we currently can't access registers through their
architectural name.
This commit fixes this issue, and moves some of the csr register
handling out of the alias handling code and deals with it separately.
This has the benefit that we can now directly access some arrays
rather than having to iterate over them.
A new test is added to ensure that register aliases now work
correctly.
gdb/ChangeLog:
* riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
register names.
(struct register_alias): Rename to...
(struct riscv_register_alias): ...this, and update comment.
(riscv_register_aliases): Update type, and alias names. Remove
CSR names from this list.
(riscv_register_name): Use riscv_gdb_reg_names for int and float
register names. Add an extra assertion.
(riscv_is_regnum_a_named_csr): New function.
(riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
gdb/testsuite/ChangeLog:
* gdb.arch/riscv-reg-aliases.c: New file.
* gdb.arch/riscv-reg-aliases.exp: New file.
commit ba37fe2e8b13194a1ef216f4224d7521e748e1cf
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Oct 23 00:00:53 2018 +0000
Automatic date update in version.in
commit 3399f1b3030c3419859f1230bc66a981154d176d
Author: Jim Wilson <jimw@sifive.com>
Date: Mon Oct 22 14:11:55 2018 -0700
RISC-V: NaN-box FP values smaller than an FP register.
The hardware requires that values in FP registers be NaN-boxed, so we must
extend them with 1's instead of 0's as we do for integer values.
gdb/
* riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
FP reg smaller than FP reg size, and fill with -1 instead of 0.
commit 270b9329b713fdc166f95dfa3a0a2f72f3a49608
Author: Jim Wilson <jimw@sifive.com>
Date: Mon Oct 22 14:10:13 2018 -0700
RISC-V: Print FP regs as union of float types.
A 64-bit FP register can hold either a single or double float value, so
print it as both types by using a union type for FP registers. Likewise
for 128-bit regs which can also hold long double.
gdb/
* riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
(riscv_register_type): Use them.
(riscv_print_one_register_info): Handle union of floats same as float.
* riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
riscv_fpreg_q_type fields.
commit 192c2bfbd7a6d4b2069f6b94b020d274a483c198
Author: John Darrington <john@darrington.wattle.id.au>
Date: Mon Oct 22 16:59:47 2018 +0200
S12Z: Disassembly: Fallback to show the address if the symbol table is empty.
* opcodes/s12z-dis.c (decode_possible_symbol): Add fallback case.
(rel_15_7): Likewise.
commit 1f38083f425e03faf55595414daf291306738222
Author: Alan Modra <amodra@gmail.com>
Date: Mon Oct 22 13:49:21 2018 +1030
gas simple-forward test
Tests that target md_apply_fix can handle fixups that have resolved
down to a constant and thus do not need relocations.
Also a fix for eqv-dot xfails.
* testsuite/gas/all/simple-forward.d,
* testsuite/gas/all/simple-forward.s: New test.
* testsuite/gas/all/gas.exp: Run it.
* testsuite/gas/all/eqv-dot.d: xfail tic30 and tic54x.
commit e1748c54a200f45d6e88c232ca97171be23ba0b0
Author: Alan Modra <amodra@gmail.com>
Date: Mon Oct 22 20:30:40 2018 +1030
Apply alpha BFD_RELOC_8 fixups
* config/tc-alpha.c (md_apply_fix): Handle BFD_RELOC_8 for fixups
without a symbol.
* testsuite/gas/all/gas.exp: Don't xfail forward test here..
* testsuite/gas/all/forward.d: ..do so here, removing alpha.
commit 38cf168be5816b098cc05abffc482fc905db86a2
Author: Alan Modra <amodra@gmail.com>
Date: Sat Oct 20 22:22:37 2018 +1030
PR23040, .uleb128 directive doesn't accept some valid expressions
What a trip down a rabbit hole this bug has been.
First observation: You can't use deferred_expression in s_leb128.
deferred_expression implements the semantics of .eqv or '==', saving
an expression with minimal simplification for assignment to a symbol
so that the expression is evaluated at uses of the symbol. In
particular, the value of "dot" is not evaluated at the .eqv symbol
assignment, but later. When s_leb128 uses deferred_expression,
"later" is at the end of assembly, giving entirely the wrong value of
"dot". There is no way to fix this for the s_leb128 use without
breaking .equ (which incidentally was already somewhat broken, see
commit e4c2619ad1). So, don't use deferred_expression in s_leb128.
But that leads to the gas test elf/dwarf2-17 failing, because view
symbols are calculated with a chain of expression symbols. In the
dwarf2-17 .L1 case there is a "temp_sym_1 > temp_sym_2" expression,
with temp_sym_1 and temp_sym_2 on either side of a ".balign". Since
".balign" and many other directives moving "dot" are not calculated on
the first (and only) pass over source, .L1 cannot be calculated until
final addresses are assigned to frags. However, ".uleb128 .L1" *is*
calculated immediately, resulting in the wrong value.
The reason why .L1 is calculated immediately is that code in
expr.c:operand after the comment
/* If we have an absolute symbol or a reg, then we know its
value now. */
does as it says and fixes the value of .L1, because .L1 is assigned
to absolute_section in dwarf2dbg.c:set_or_check_view. So, correct
that to expr_section.
Unfortunately that fix leads to failure of the elf/dwarf2-5 test with
../gas/elf/dwarf2-5.s: Error: attempt to get value of unresolved symbol `.L5'
../gas/elf/dwarf2-5.s: Error: attempt to get value of unresolved symbol `.L11'
../gas/elf/dwarf2-5.s: Error: attempt to get value of unresolved symbol `.L12'
So why is that? Well, it turns out that .L5 is defined in terms of
.L4, and apparently .L4 is undefined. But .L4 clearly is defined,
otherwise we would hit an error when trying to use .L4 a little
earlier. There are two copies of .L4! So, symbols are cloned when
that should not happen.
Symbol cloning is a technique used by gas to support saving the value
of symbols that change between uses, but that isn't the case with
.L4. Only one value is set and used for .L4, but indeed .L4 was being
cloned by symbol_clone_if_forward_ref. This despite no forward refs
being present. Also, .L4 is a local symbol and a cursory glance at
symbol_clone_if_forward_ref "if (symbolP && !LOCAL_SYMBOL_CHECK (symbolP))"
would seem to prevent cloning of local symbols. All is not as it
seems though, a curse of using macros. LOCAL_SYMBOL_CHECK modifies
its argument if a "struct local_symbol" is converted to the larger
"struct symbol", as happens when assigning a view symbol value.
That fact results in the recursive call to symbol_clone_if_forward_ref
returning a different address for "add_symbol". This problem could
have been fixed by using symbol_same_p rather than comparing symbol
pointers, but I thought it better to use the real symbol throughout.
Note that symbol_find_exact also returns the real symbol for a
converted local symbol.
Finally, this patch does expose lack of support for forward symbol
definitions in various targets. For example:
alpha-linux +ERROR: ../ld/testsuite/ld-elf/pr11138-2.c: compilation failed
This is caused by view symbol uses. On alpha-linux-gcc (GCC) 8.1.1
20180502 they happen to occur in .byte directives so were silently
broken in cases like elf/dwarf2-17 anyway.
/tmp/ccvtsMfU.s: Assembler messages:
/tmp/ccvtsMfU.s: Fatal error: unhandled relocation type BFD_RELOC_8
/tmp/ccvtsMfU.s: Fatal error: unhandled relocation type BFD_RELOC_8
md_apply_fix on those targets needs to handle fixups that resolve down
to a constant.
PR 23040
* symbols.c (get_real_sym): New function.
(symbol_same_p): Use get_real_sym.
(symbol_clone_if_forward_ref): Save real original add_symbol and
op_symbol for comparison against that returned from lookup or
recursive calls.
* dwarf2dbg.c (set_or_check_view): Use expr_section for
expression symbols, not absolute_section.
(dwarf2_directive_loc): Check symbol_equated_p and tidy cloning
of view symbols.
* read.c (s_leb128): Don't use deferred_expression.
commit f6efe3f842e72e23ec6d8a57d683ce90d2e89785
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Sun Oct 21 22:29:21 2018 -0400
Introduce gdbarch_num_cooked_regs
The expression
gdbarch_num_regs (gdbarch) + gdbarch_num_pseudo_regs (gdbarch)
is used quite often to find the number of cooked registers (raw + pseudo
registers). This patch introduces gdbarch_num_cooked_regs, which does
the equivalent. It substantially reduces required wrapping in some
places, so should improve readability.
There is a for loop in m68hc11_frame_unwind_cache that had iterated
until (the equivalent of) gdbarch_num_cooked_regs (gdbarch) - 1. During
review, we concluded that this is most likely an off-by-one mistake, so
I replaced it with gdbarch_num_cooked_regs (gdbarch).
gdb/ChangeLog:
* gdbarch.sh (gdbarch_num_cooked_regs): New.
* gdbarch.h: Re-generate.
* ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
* dwarf2-frame.c (dwarf2_frame_cache): Likewise.
* eval.c (evaluate_subexp_standard): Likewise.
* findvar.c (value_of_register): Likewise.
(value_of_register_lazy): Likewise.
(address_from_register): Likewise.
* frame.c (get_frame_register_bytes): Likewise.
* gdbarch-selftests.c (register_to_value_test): Likewise.
* h8300-tdep.c (h8300_register_type): Likewise.
* i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
(i386_svr4_reg_to_regnum): Likewise.
* infcmd.c (default_print_registers_info): Likewise.
(registers_info): Likewise.
(print_vector_info): Likewise.
(default_print_float_info): Likewise.
* m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
* mdebugread.c (mdebug_reg_to_regnum): Likewise.
* mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
(mi_cmd_data_list_changed_registers): Likewise.
(mi_cmd_data_list_register_values): Likewise.
(mi_cmd_data_write_register_values): Likewise.
(mi_cmd_trace_frame_collected): Likewise.
* mips-tdep.c (print_gp_register_row): Likewise.
(mips_print_registers_info): Likewise.
* nds32-tdep.c (nds32_gdbarch_init): Likewise.
* regcache.c (init_regcache_descr): Likewise.
(register_size): Likewise.
(register_dump::dump): Likewise.
(cooked_read_test): Likewise.
(cooked_write_test): Likewise.
* rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
(rs6000_gdbarch_init): Likewise.
* stabsread.c (stab_reg_to_regnum): Likewise.
* stack.c (info_frame_command): Likewise.
* target-descriptions.c (tdesc_register_name): Likewise.
* trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
* tui/tui-regs.c (tui_show_register_group): Likewise.
* user-regs.c (user_reg_map_name_to_regnum): Likewise.
(user_reg_map_regnum_to_name): Likewise.
(value_of_user_reg): Likewise.
(maintenance_print_user_registers): Likewise.
* xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
(xtensa_register_name): Likewise.
(xtensa_register_type): Likewise.
(xtensa_reg_to_regnum): Likewise.
(xtensa_pseudo_register_read): Likewise.
(xtensa_pseudo_register_write): Likewise.
commit 925047fed0d6ab86e6fe86d3e22e1aa9dde7b3eb
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sun Oct 21 22:09:24 2018 -0400
Allocate buffer with proper size in amd64_pseudo_register_{read_value,write}
Running "maintenance selftest" on an amd64 build with AddressSanitizer
enabled, I get this:
==18126==ERROR: AddressSanitizer: dynamic-stack-buffer-overflow on address 0x7ffdf72397c1 at pc 0x7fb5f437b011 bp 0x7ffdf7239740 sp 0x7ffdf7238ee8
WRITE of size 8 at 0x7ffdf72397c1 thread T0
#0 0x7fb5f437b010 in __interceptor_memcpy /build/gcc/src/gcc/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:737
#1 0x55a1f899c1b3 in readable_regcache::raw_read(int, unsigned char*) /home/simark/src/binutils-gdb/gdb/regcache.c:530
#2 0x55a1f7db241b in amd64_pseudo_register_read_value /home/simark/src/binutils-gdb/gdb/amd64-tdep.c:384
#3 0x55a1f8413a2e in gdbarch_pseudo_register_read_value(gdbarch*, readable_regcache*, int) /home/simark/src/binutils-gdb/gdb/gdbarch.c:1992
#4 0x55a1f899c9d1 in readable_regcache::cooked_read(int, unsigned char*) /home/simark/src/binutils-gdb/gdb/regcache.c:636
#5 0x55a1f89a2251 in cooked_read_test /home/simark/src/binutils-gdb/gdb/regcache.c:1649
In amd64_pseudo_register_read_value, when we try to read the al
register, for example, we need to read rax and extract al from it. We
allocate a buffer of the size of al (1 byte):
gdb_byte *raw_buf = (gdb_byte *) alloca (register_size (gdbarch, regnum));
but read in it the whole rax value (8 bytes):
status = regcache->raw_read (gpnum, raw_buf);
Fix it by allocating a buffer correctly sized for the full register from
which the smaller register is extracted. The
amd64_pseudo_register_write function had the same problem.
gdb/ChangeLog:
* amd64-tdep.c (amd64_pseudo_register_read_value): Use
correctly-sized buffer with raw_read.
(amd64_pseudo_register_write): Use correctly-sized buffer for
raw_read/raw_write.
commit df80d00c5f4da112b6803ce472c1396c0c4a342b
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Oct 22 00:00:58 2018 +0000
Automatic date update in version.in
commit b8265d61940e9e61db1c7d48c9981b50670d81a2
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Oct 21 00:01:05 2018 +0000
Automatic date update in version.in
commit 4051d2d65a73f02cfd2baebf8803fe2880dbd76c
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Sat Oct 20 23:00:52 2018 +0200
[PUSHED/OBVIOUS] ensure help set print type gives the correct help.
Without this patch:
(gdb) help set print type
Generic command for setting how types print.
List of show print type subcommands:
show print type methods -- Set printing of methods defined in classes
...
With this patch:
(gdb) h set print type
Generic command for setting how types print.
List of set print type subcommands:
set print type methods -- Set printing of methods defined in classes
...
commit d6677607c2e96c28178467894fa3fe9ba6db7c27
Author: Tom Tromey <tom@tromey.com>
Date: Sat Oct 20 12:18:20 2018 -0600
Fix "make info" in gdb
"make info" in gdb was broken by my last patch. This fixes it.
Tested by rebuilding; committing as obvious.
gdb/doc/ChangeLog
2018-10-20 Tom Tromey <tom@tromey.com>
* gdb.texinfo (TUI Commands): Add @end table.
(TUI Configuration): Remove stray @end table.
commit 1a088a2e2628409832326254ce1c42ccf671e847
Author: John Darrington <john@darrington.wattle.id.au>
Date: Sat Oct 13 20:07:34 2018 +0200
GDB: Documentation: Remove greengrocer's apostrophe.
gdb/doc/gdb.texinfo (gdbserver man): "it's symbol" --> its symbol.
commit e4c2619ad1f31cf73d275b027e8c0cf9c6e9597a
Author: Alan Modra <amodra@gmail.com>
Date: Sat Oct 20 11:12:46 2018 +1030
PR23800, .eqv doesn't always defer expression evaluation
.eqv (and ==) ought not simplify expressions involving dot or other
symbols set by .eqv. If such simplification occurs, the value of dot
will be that at the assignment rather than at the place where the
symbol is used.
PR 23800
* expr.c (expr): Don't simplify expressions involving forward_ref
symbols when mode is expr_defer.
* config/tc-spu.c (spu_cons): Parse expression using normal
expression evaluation if @ppu is not detected.
* testsuite/gas/all/eqv-dot.d,
* testsuite/gas/all/eqv-dot.s: New test.
* testsuite/gas/all/gas.exp: Run it.
commit ac85e67c053f1555def2c111962f4e68740794f9
Author: Alan Modra <amodra@gmail.com>
Date: Sat Oct 20 00:02:17 2018 +1030
PR23788, objcopy: failed to find link section
Symbol tables can change when a number of objcopy options are used.
I figure string tables are similarly changeable.
PR 23788
* elf.c (section_match): Don't require a size match for SHT_SYMTAB
or SHT_STRTAB.
commit 91ae256e33f7c068443d877fe3e2b2ffd91cf60b
Author: Alan Modra <amodra@gmail.com>
Date: Fri Oct 19 23:59:11 2018 +1030
Relax a -r --gc-sections requirement
A symbol root is not needed if --gc-keep-exported is also given.
* ldlang.c (lang_end): Don't error if no --entry or --undefined
is given with -r -gc-sections if --gc-keep-exported.
commit fe19e45ff30986ed0751332b2128c0737efd2838
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Oct 20 00:00:40 2018 +0000
Automatic date update in version.in
commit 7806cea72329a354c36ed8b2177d03f9d5e2673f
Author: Tom Tromey <tom@tromey.com>
Date: Sun Sep 2 19:41:41 2018 -0600
Deprecate and replace the "tabset" command
The "tabset" command sets the tab width as used by the TUI for source
and disassembly display.
This command has long seemed to be misnamed to me. It is more in
keeping with gdb design to call it "set tui tab-width". Also, making
this change allows for the corresponding "show" command to work.
gdb/ChangeLog
2018-10-19 Tom Tromey <tom@tromey.com>
PR tui/18388:
* NEWS: Mention tabset deprecation.
* tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
(update_tab_width): New function.
(tui_set_tab_width, tui_show_tab_width): New functions.
(tui_set_tab_width_command): Use update_tab_width.
(_initialize_tui_win): Move to end of file. Deprecate "tabset".
Add new "set tui tab-width" command.
* tui/tui-source.c (tui_set_source_content): Update.
* tui/tui-disasm.c (tui_set_disassem_content): Update.
* tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
Don't declare.
(tui_tab_width): Declare.
* tui/tui-data.c (default_tab_len, tui_default_tab_len)
(tui_set_default_tab_len): Remove.
gdb/doc/ChangeLog
2018-10-19 Tom Tromey <tom@tromey.com>
PR tui/18388:
* gdb.texinfo (TUI Commands): Remove tabset documentation.
(TUI Configuration): Document "set tui tab-width".
commit 84371624ada07e6f107ee14c48a609466055fe0d
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 1 18:44:33 2018 -0600
Minor cleanups in tui-io.c
I noticed that a couple of functions in tui-io.c could be static, and
that a couple more were unused and could be removed.
gdb/ChangeLog
2018-10-19 Tom Tromey <tom@tromey.com>
* tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
(key_is_backspace, tui_getc): Don't declare.
* tui/tui-io.c (key_is_start_sequence): Now static.
(key_is_end_sequence, key_is_backspace): Remove.
(tui_getc): Now static.
commit 22ad8107d35d833db000e5a5050c0f53af7af51f
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jul 26 17:54:00 2018 -0600
Clear static_links in reread_symbols
-fsanitize=address pointed out a use-after free in
objfile_register_static_link. The bug turned out to be that
reread_symbols does not clear the static_links field; this leaves a
hash table that is filled with freed pointers.
Jan's (now quite old) idea of replacing reread_symbols with a simple
delete/new still seems good to me, and it's worth noting that it would
have avoided this bug.
Tested by the buildbot and by observing the change with
-fsanitize=address.
gdb/ChangeLog
2018-10-19 Tom Tromey <tom@tromey.com>
* symfile.c (reread_symbols): Clear "static_links".
commit bacb77d0188ff37bacdbb211edd7e2419406b864
Author: Tamar Christina <tamar.christina@arm.com>
Date: Fri Oct 19 16:18:37 2018 +0100
Arm: Skip new binary decode tests on pe targets
The two new test I added require the use of the ".inst" directive which the PE
targets don't support. Because of that I excluded *-unknown-pe but the mask needs
to be wider. I am now excluding *-*-pe.
gas/ChangeLog:
* testsuite/gas/arm/undefined-insn-arm.d: Widen pe skip.
* testsuite/gas/arm/undefined-insn-thumb.d: Likewise.
commit 74b3c713184abb8e07f92c4e069ebafde78c0a0e
Author: Alan Hayward <alan.hayward@arm.com>
Date: Fri Oct 19 13:51:00 2018 +0100
Aarch64: Better termination checks for sigcontext reading
When reading the reserved section in the sigcontext ensure the
address is updated on an unknown section. Also add additional
checks to prevent reading past the end of the array.
Fixes gdb.base/savedregs.exp
* aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
define.
(aarch64_linux_sigframe_init): Extra boundary checks.
commit 0667c506823489f2fab1938d3fc8ee27f8a7c651
Author: Andreas Arnez <arnez@linux.ibm.com>
Date: Fri Oct 19 14:05:08 2018 +0200
S390: Fix crash when remote tdesc doesn't define vec128
I've encountered a GDB crash when trying to read registers from a remote
stub that provided a target.xml with vector registers, but without the
'vec128' data type. The crash is caused by NULL register type entries for
the "concatenated" pseudo-registers v0-v15. These NULL entries are
introduced by the logic in s390_pseudo_register_type(), where the tdesc
type 'vec128' is returned unconditionally -- even if it doesn't exist (is
NULL).
The fixed logic for determining a "concatenated" vector register's type
now returns the type of the raw register v16 instead. This also makes
sure that all vector register have the same type.
gdb/ChangeLog:
* s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
the possibly non-existent tdesc type 'vec128', but the type of raw
register v16 instead.
commit ba543ca5afafed5bda2db52e8f424f20ff605173
Author: Gary Benson <gbenson@redhat.com>
Date: Fri Oct 19 11:51:41 2018 +0100
Fix cli_interp::cli_uiout resource leak found by Coverity
This commit fixes a resource leak found by Coverity, where cli_interp's
constructor creates a new cli_ui_out, but there was no corresponding
destructor to free it.
gdb/ChangeLog:
* cli/cli-interp.c (cli_interp::~cli_interp): New function.
commit b04480b11925aff2a1d2fbca30908801fd46c7f3
Author: Alan Hayward <alan.hayward@arm.com>
Date: Tue Oct 9 16:42:33 2018 +0100
Testsuite: Fix racy conditions in py-cmd.exp
The test loop in test_python_inline_or_multiline was not checking for the
gdb prompt. readline_is_used then reads in the prompt causing it to fail
and the final chunk of tests to be skipped.
Spotted this error because sometimes the gdb prompt does get processed
correctly and the final tests are run, causing it to show up in the
racy tests script output.
Fix by ensuring the prompt is always checked for. To do this the list
style needs reformatting so that variables get expanded.
2018-10-19 Alan Hayward <alan.hayward@arm.com>
* gdb.python/py-cmd.exp: Check for gdb_prompt.
commit 2c6ac8d7ce6e018168c17b11d978b25dba721554
Author: Alan Hayward <alan.hayward@arm.com>
Date: Thu Oct 18 11:43:40 2018 +0100
Testsuite: vla-optimized-out.exp is too pessimistic
On aarch64 (and possibly other ports), for O3 the sizeof "a" can still be shown.
2018-10-19 Alan Hayward <alan.hayward@arm.com>
* gdb.base/vla-optimized-out.exp: Allow either optimized out or 6.
commit 2bc69f2588c0beef39a56f057f61f6a063ed4405
Author: Alan Hayward <alan.hayward@arm.com>
Date: Thu Oct 18 14:36:06 2018 +0100
testsuite: ovldbreak.exp: fix regexp
Fix the layout used in the regexp for breakpoints.
Gets rid of two FAILS.
2018-10-18 Alan Hayward <alan.hayward@arm.com>
* gdb.cp/ovldbreak.exp: Fix regexps.
commit 1f1ae3a34faf8217bd253fa12b4d0abaaa42c2d2
Author: Alan Hayward <alan.hayward@arm.com>
Date: Thu Oct 18 13:58:57 2018 +0100
Testsuite: compile-cplus-print.exp: Start inferior before compiling
skip_compile_feature_tests is only valid if the inferior has already
been started (see proc comments). Move the runto_main earlier.
2018-10-18 Alan Hayward <alan.hayward@arm.com>
* gdb.compile/compile-cplus-print.exp: Start inferior earlier.
commit 0b347048e7e33070212a408dc2371075ee60b556
Author: Tamar Christina <tamar.christina@arm.com>
Date: Fri Oct 19 10:31:42 2018 +0100
Arm: Fix disassembler crashing on -b binary when thumb file and thumb not forced.
The disassembler for Arm has some aborts in it in places it assumes can never
be reached. Under normal circumstances they indeed cannot be reached because
the right options are selected from the ARM attributes in the ELF file.
However when disassembling with -b binary then if you do not get the options
right the disassembler just aborts. This changes it so it just prints how it
was trying to interpret the instruction and prints UNKNOWN instructions next to it.
This way the user has an idea of what's going.
gas/ChangeLog:
* testsuite/gas/arm/undefined-insn-arm.d: New test.
* testsuite/gas/arm/undefined-insn-thumb.d: New test.
* testsuite/gas/arm/undefined-insn.s: New test.
opcodes/ChangeLog:
* arm-dis.c (UNKNOWN_INSTRUCTION_32BIT): Format specifier for arm mode.
(UNKNOWN_INSTRUCTION_16BIT): Format specifier for thumb mode.
(print_insn_arm, print_insn_thumb16, print_insn_thumb32): Use them.
commit 33d64ca5db656f1f377de18f94403d8b3b91e3a1
Author: Fredrik Noring <noring@nocrew.org>
Date: Fri Oct 19 09:47:55 2018 +0100
This set of changes clarifies the conditions for the R5900 short loop fix and extends its test with the border cases of six and seven instructions.
* testsuite/gas/mips/r5900.s: Extend the R5900 short loop fix
test with border cases.
* testsuite/gas/mips/r5900.d: Add extra expected disassembly.
* config/tc-mips.c (can_swap_branch_p): Clarify the R5900 short
loop hardware bug conditions. Correct note on the R5900
instruction count short loop fix.
commit 08acaf5caf47225ff94dc5e64ce8edce6664615a
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Oct 19 00:00:36 2018 +0000
Automatic date update in version.in
commit 94c18618a8e29894a7b3104375e0510d71a568fb
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Thu Oct 18 12:56:25 2018 -0400
Fix PR cli/23785: Check if file exists when invoking "restore FILE binary"
This simple patch fixes the segfault reported on PR cli/23785, which
happens when using the "restore FILE binary" command with a
non-existent file. We just have to check if the file handler returned
by "gdb_fopen_cloexec" is not NULL, and error out if it is.
A test has also been added to gdb.base/restore.exp in order to
exercise this scenario.
No regressions introduced.
gdb/ChangeLog:
2018-10-18 Sergio Durigan Junior <sergiodj@redhat.com>
PR cli/23785
* cli/cli-dump.c (restore_binary_file): Check if "file" is
NULL.
gdb/testsuite/ChangeLog:
2018-10-18 Sergio Durigan Junior <sergiodj@redhat.com>
PR cli/23785
* gdb.base/restore.exp: New test to check if "restore" with an
invalid file doesn't segfault.
commit f63085d15f05eb296744ba634edfc68ca806e578
Author: Nick Clifton <nickc@redhat.com>
Date: Thu Oct 18 16:58:16 2018 +0100
Update documentation of readelf's --unwind option.
* doc/binutils.texi (readelf): Document alternatives to the
--unwind option if it is not supported for the target
architecture.
commit 812cd6eb0502fa87b6e1d3e751ac2e9239680cf4
Author: Tom de Vries <tdevries@suse.de>
Date: Thu Oct 18 13:23:08 2018 +0200
[gdb/testsuite] Fix capitalized test names
At https://sourceware.org/gdb/wiki/GDBTestcaseCookbook\
#Follow_the_test_name_convention we find:
..
Test names should start with a lower case and don't need to end with a period
(they are not sentences).
...
Fix some capitalized test names.
Tested on x86_64-linux.
2018-10-18 Tom de Vries <tdevries@suse.de>
* gdb.ada/bp_inlined_func.exp: Fix capitalized test name.
* gdb.ada/excep_handle.exp: Same.
* gdb.ada/mi_string_access.exp: Same.
* gdb.ada/mi_var_union.exp: Same.
* gdb.arch/arc-analyze-prologue.exp: Same.
* gdb.arch/arc-decode-insn.exp: Same.
* gdb.base/readnever.exp: Same.
* gdb.fortran/printing-types.exp: Same.
* gdb.guile/scm-lazy-string.exp: Same.
commit 841ef605eed1e91c1ef450e6931216644999f04d
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Oct 18 00:00:35 2018 +0000
Automatic date update in version.in
commit 89eb3c547018af6a41ce9b3614cc2ab9a679168b
Author: Paul Koning <paul_koning@dell.com>
Date: Wed Oct 17 19:26:55 2018 -0400
gdb/ChangeLog:
* charset.c (convert_between_encodings): Fix unsigned overflow.
gdb/charset.c (convert_between_encodings): Fix unsigned overflow.
commit 6f3b1098e820cef84709ef71c287c4b72e6c671b
Author: John Baldwin <jhb@FreeBSD.org>
Date: Wed Oct 17 11:41:30 2018 -0700
Share the code to format "info proc mappings" entries for FreeBSD.
gdb/ChangeLog:
* fbsd-nat.c (fbsd_nat_target::info_proc) Use
fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
* fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
(fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
New functions.
(fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
and fbsd_info_proc_mappings_header.
* fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
(fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
New.
commit d500b4f23fc329f5c8cce6ee8fa3629c0f130038
Author: Joel Brobecker <brobecker@adacore.com>
Date: Wed Oct 17 11:04:14 2018 -0700
gdb/MAINTAINERS: Add Rainer Orth as Solaris maintainer for GDB
gdb/ChangeLog:
* MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
Solaris Maintainer.
commit 4de5434b694fc260d02610e8e7fec21b2923600a
Author: Alan Modra <amodra@gmail.com>
Date: Wed Oct 17 09:17:30 2018 +1030
PR23653, ld SIGSEGVs when attempts to link sparc object with x86_64 library
This patch improves dynobj selection. This allows the testcase in the
PR to proceed further before segfaulting due to other bugs in the
sparc backend.
../ld/ld-new --eh-frame-hdr -m elf_x86_64 -shared -o bug.so.5 bug.o ./libc.so.6 ./crtendS.o
../ld/ld-new: sparc architecture of input file `bug.o' is incompatible with i386:x86-64 output
../ld/ld-new: bug.o: in function `a':
bug.c:(.text+0x4): undefined reference to `_GLOBAL_OFFSET_TABLE_'
../ld/ld-new: bug.c:(.text+0x8): undefined reference to `_GLOBAL_OFFSET_TABLE_'
Segmentation fault
PR 23653
* elflink.c (_bfd_elf_link_create_dynstrtab): Match elf_object_id
too when choosing dynobj.
commit c69f6b80965608480be970c3c42f9da1b08a3ef0
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Oct 17 00:01:28 2018 +0000
Automatic date update in version.in
commit c4b90788516fd431c86c22deac5001d6c4648227
Author: Tom de Vries <tdevries@suse.de>
Date: Fri Oct 5 00:04:27 2018 +0200
[gdb/testsuite] Rewrite catch-follow-exec.exp
There are two problems with the current catch-follow-exec.exp:
- INTERNAL_GDBFLAGS (containing the datadir setting) is not used
- remote host testing doesn't work
Fix the former by using gdb_spawn_with_cmdline_opts. Fix the latter by
requiring gdb-native.
Build on x86_64-linux with and without ubsan, and tested.
2018-10-16 Tom de Vries <tdevries@suse.de>
PR gdb/23730
* gdb.base/catch-follow-exec.c: Add copyright notice.
* gdb.base/catch-follow-exec.exp: Rewrite to use
gdb_spawn_with_cmdline_opts. Require gdb-native.
commit 66e6f0b760c2480e4ebdac8169adcee1fc31f689
Author: Matthew Malcomson <matthew.malcomson@arm.com>
Date: Tue Oct 16 18:49:36 2018 +0100
AArch64: Fix error checking for SIMD udot (by element)
Committed on behalf of Matthew Malcomson:
The SIMD UDOT instruction assembly has an unusual operand that selects a single
32 bit element with the mnemonic 4B.
This unusual mnemonic is handled by a special operand qualifier and associated
qualifier data in `aarch64_opnd_qualifiers`.
The current qualifier data describes 4 1-byte elements with the structure
{1, 4, 0x0, "4b", OQK_OPD_VARIANT}
This makes sense, as the instruction does work on 4 1-byte elements, however
some logic in the `operand_general_constraint_met_p` makes assumptions about
the range of index allowed when selecting a SIMD_ELEMENT depending on element
size.
That function reasons that e.g. in order to select a byte-sized element in a 16
byte V register an index must allow selection of one of the 16 elements and
hence its range will be in [0,15].
This reasoning breaks with the above description of a 4 part selection of 1
byte elements and allows an index outside the valid [0,3] range, triggering an
assert later on in the program in `aarch64_ins_reglane`.
vshcmd: > echo 'udot v0.2s, v1.8b, v2.4b[4]' | ../src/binutils-build/gas/as-new -march=armv8.4-a
as-new: ../../binutils-gdb/opcodes/aarch64-asm.c:134: aarch64_ins_reglane: Assertion `reglane_index < 4' failed.
{standard input}: Assembler messages:
{standard input}:1: Internal error (Aborted).
Please report this bug.
This patch changes the operand qualifier data so that it describes a single
32 bit element.
{4, 1, 0x0, "4b", OQK_OPD_VARIANT}
Hence the calculation in `operand_general_constraint_met_p` provides the
correct answer and the usual error checking machinery is used.
vshcmd: > echo 'udot v0.2s, v1.8b, v2.4b[4]' | ../src/binutils-build/gas/as-new -march=armv8.4-a
{standard input}: Assembler messages:
{standard input}:1: Error: register element index out of range 0 to 3 at operand 3 -- `udot v0.2s,v1.8b,v2.4b[4]'
commit 48dcd4ea064ae86364dacbf4dd7f035fba56151c
Author: Alan Modra <amodra@gmail.com>
Date: Tue Oct 16 16:29:23 2018 +1030
Simplify PR23110 PE_DEBUG_DATA size checks
The negative size check can be rolled into the "exceeds space left in
section" check if that is done using an unsigned comparison. We know
that "addr - section->vma" is never larger than section->size since
the section is found by find_section_by_vma.
* peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Simplify
PE_DEBUG_DATA size checks.
commit 8df73d5cc3a87101f3bd254f33820fcce61bc971
Author: Alan Modra <amodra@gmail.com>
Date: Tue Oct 16 15:23:20 2018 +1030
PR23781, _bfd_pe_bfd_copy_private_bfd_data_common memory leak
PR 23781
* peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Free data
before returning.
commit feceaa596ebd1da9d8315c8ce74e45df4384da15
Author: Alan Modra <amodra@gmail.com>
Date: Tue Oct 16 14:39:03 2018 +1030
PR23780, assertion abort in function display_raw_attribute
PR 23780
* readelf.c (display_raw_attribute): Correct assertion.
commit 08ea4a7805705668c2c4c63b858b6641d052f7e7
Author: Cherry Zhang <cherryyz@google.com>
Date: Tue Oct 16 14:07:41 2018 +1030
PR23769, mixing split-stack and non-split-stack error message
Corrects which file is reported as being split-stack.
PR 23769
* gold.cc (queue_middle_tasks): Correct split-stack error message.
commit 63a33118e05a84fbae40cbe3ef955b52bad359a7
Author: Tom Tromey <tom@tromey.com>
Date: Sun Oct 14 12:50:32 2018 -0600
Remove unnecessary casts from TUI
This removes a number of unnecessary casts from the TUI. Some were
found with -Wuseless-cast (which, I think, can't easily be enabled for
gdb); and some were found by inspection.
Tested by rebuilding on x86-64 Fedora 28.
I'm checking this in.
gdb/ChangeLog
2018-10-15 Tom Tromey <tom@tromey.com>
* tui/tui.c (strcat_to_buf): Remove casts.
* tui/tui-winsource.c (tui_show_source_line)
(tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
* tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
* tui/tui-windata.c (tui_first_data_item_displayed)
(tui_delete_data_content_windows, tui_erase_data_content)
(tui_display_all_data, tui_display_data_from)
(tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
* tui/tui-win.c (tui_set_win_height)
(make_invisible_and_set_new_height, parse_scrolling_args): Remove
casts.
* tui/tui-win.c (tui_resize_all): Remove casts.
(tui_scroll_backward_command, tui_set_focus)
(tui_set_tab_width_command): Likewise.
* tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
* tui/tui-regs.c (tui_show_register_group): Remove cast.
* tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
* tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
* tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
Remove casts.
commit d53eec4ef86cf85841ceaec7db99753827f2beee
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Oct 16 00:00:36 2018 +0000
Automatic date update in version.in
commit 640be958cd6bdc339211f29851e69a297033e172
Author: Jim Wilson <jimw@sifive.com>
Date: Mon Oct 15 16:00:28 2018 -0700
RISC-V: Adjust __global_pointer$ value to reduce code size.
ld/
* emulparams/elf32lriscv-defs.sh (DATA_START_SYMBOLS): New.
(SDATA_START_SYMBOLS): Define __SDATA_BEGIN__. Don't define
__global_pointer$.
(OTHER_END_SYMBOLS): New. Define __global_pointer$.
* testsuite/ld-riscv-elf/pcrel-lo-addend-2.d (#ld): Add --no-relax.
commit 0e0dd7f1e8b64efff9a981d0421ffeaeff70cd20
Author: Alan Modra <amodra@gmail.com>
Date: Tue Oct 16 09:01:55 2018 +1030
Re: BFD_INIT_MAGIC
I should know better than to introduce the first use of size_t in
bfd.h.
PR 23534
* init.c (bfd_init): Return an unsigned int.
bfd-in2.h: Regenerate.
commit 933e62b1c17b1cf396f8bf8e17a066d03226533e
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Oct 15 15:52:03 2018 -0400
Add Alan Hayward as AArch64/ARM GDB maintainer
gdb/ChangeLog:
* MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
AArch64/ARM maintainer.
commit bf2dd8d7cf4114b8a60dbb83b340f76b9b2474d1
Author: Alan Modra <amodra@gmail.com>
Date: Mon Oct 15 16:10:27 2018 +1030
BFD_INIT_MAGIC
This patch performs a run-time test that a shared libbfd.so has been
compiled with the same size bfd_vma as that of apps using the library.
On a 32-bit host it is easily possible to have one libbfd.so compiled
to support 64-bit targets (or configured with --enable-64-bit-bfd)
while another only supports 32-bit targets. The two libraries will
have differently sized bfd_vma types, and if the wrong one is loaded
all sorts of weird behaviour might be seen.
bfd/
PR 23534
* init.c (BFD_INIT_MAGIC): Define.
(bfd_init): Return BFD_INIT_MAGIC.
bfd-in2.h: Regenerate.
binutils/
PR 23534
* addr2line.c (main): Exit with fatal error if bfd_init
returns an unexpected value.
* ar.c (main): Likewise.
* dlltool.c (identify_dll_for_implib): Likewise.
* nm.c (main): Likewise.
* objcopy.c (main): Likewise.
* objdump.c (main): Likewise.
* size.c (main): Likewise.
* strings.c (main): Likewise.
* windmc.c (main): Likewise.
* windres.c (main): Likewise.
gas/
PR 23534
* as.c (main): Exit with fatal error if bfd_init returns an
unexpected value.
ld/
PR 23534
* ldmain.c (main): Exit with fatal error if bfd_init returns
an unexpected value.
commit dc86962bf15e7b8dfdcebc17d83b9b48be0bd9cb
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Oct 15 00:00:54 2018 +0000
Automatic date update in version.in
commit cf8d3709ebe8895591cb3bd5c8f79bdaef9f194a
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Oct 14 00:01:07 2018 +0000
Automatic date update in version.in
commit 0930cb3021b8078b34cf216e79eb8608d017864f
Author: Alan Modra <amodra@gmail.com>
Date: Sat Oct 13 22:03:02 2018 +1030
_bfd_clear_contents bounds checking
This PR shows a fuzzed binary triggering a segfault via a bad
relocation in .debug_line. It turns out that unlike normal
relocations applied to a section, the linker applies those with
symbols from discarded sections via _bfd_clear_contents without
checking that the relocation is within the section bounds. The same
thing now happens when reading debug sections since commit
a4cd947aca23, the PR23425 fix.
PR 23770
PR 23425
* reloc.c (_bfd_clear_contents): Replace "location" param with
"buf" and "off". Bounds check "off". Return status.
* cofflink.c (_bfd_coff_generic_relocate_section): Update
_bfd_clear_contents call.
* elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Likewise.
* elf32-arc.c (elf_arc_relocate_section): Likewise.
* elf32-i386.c (elf_i386_relocate_section): Likewise.
* elf32-metag.c (metag_final_link_relocate): Likewise.
* elf32-nds32.c (nds32_elf_get_relocated_section_contents): Likewise.
* elf32-ppc.c (ppc_elf_relocate_section): Likewise.
* elf32-visium.c (visium_elf_relocate_section): Likewise.
* elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
* elf64-x86-64.c *(elf_x86_64_relocate_section): Likewise.
* libbfd-in.h (_bfd_clear_contents): Update prototype.
* libbfd.h: Regenerate.
commit 2bf2bf23da5237f465fdbb759657aeb7825a08a3
Author: Alan Modra <amodra@gmail.com>
Date: Fri Oct 12 12:06:40 2018 +1030
ELF ld -r scripts
"ld -r" generally should not combine object file sections with
different names. For example, "ld -r" should not combine ".text",
".text.hot" and ".text.cold" into an output ".text" section. An
exception needs to be made for linker created sections, for example,
branch trampoline sections that might be created even for ld -r.
"ld -r" also should not define symbols in linker scripts. Any
definitions are likely to conflict with those defined at final link.
A MEMORY spec is also not needed for ld -r.
* Makefile.am (eelf32btsmip_fbsd.c, eelf32btsmipn32_fbsd.c),
(eelf32epiphany.c, eelf32epiphany_4x4.c, eelf32ltsmip_fbsd.c),
(eelf32ltsmipn32_fbsd.c, eelf32xc16x.c, eelf32xc16xl.c),
(eelf32xc16xs.c, emcorepe.c, enios2elf.c, enios2linux.c),
(eelf64btsmip_fbsd.c, eelf64ltsmip_fbsd.c): Correct dependencies.
* Makefile.in: Regenerate.
* emulparams/aarch64cloudabi.sh, * emulparams/aarch64fbsd.sh,
* emulparams/aarch64linux.sh, * emulparams/aarch64linux32.sh,
* emulparams/arc-nps.sh, * emulparams/elf32_spu.sh,
* emulparams/elf32_tic6x_le.sh, * emulparams/elf32bmip.sh,
* emulparams/elf32btsmipn32.sh, * emulparams/elf32lr5900n32.sh,
* emulparams/elf32mep.sh, * emulparams/elf32metag.sh,
* emulparams/elf64btsmip.sh, * emulparams/shelf_vxworks.sh,
* emulparams/shlelf_fd.sh, * scripttempl/DWARF.sc,
* scripttempl/alpha.sc, * scripttempl/alphavms.sc,
* scripttempl/arclinux.sc, * scripttempl/armbpabi.sc,
* scripttempl/avr.sc, * scripttempl/dlx.sc, * scripttempl/elf.sc,
* scripttempl/elf32cr16.sc, * scripttempl/elf32cr16c.sc,
* scripttempl/elf32crx.sc, * scripttempl/elf32msp430.sc,
* scripttempl/elf32msp430_3.sc, * scripttempl/elf32xc16x.sc,
* scripttempl/elf32xc16xl.sc, * scripttempl/elf32xc16xs.sc,
* scripttempl/elf64hppa.sc, * scripttempl/elf_chaos.sc,
* scripttempl/elfarc.sc, * scripttempl/elfarcv2.sc,
* scripttempl/elfd10v.sc, * scripttempl/elfd30v.sc,
* scripttempl/elfm68hc11.sc, * scripttempl/elfm68hc12.sc,
* scripttempl/elfm9s12z.sc, * scripttempl/elfmicroblaze.sc,
* scripttempl/elfxgate.sc, * scripttempl/elfxtensa.sc,
* scripttempl/epiphany_4x4.sc, * scripttempl/ft32.sc,
* scripttempl/hppaelf.sc, * scripttempl/ia64vms.sc,
* scripttempl/ip2k.sc, * scripttempl/iq2000.sc,
* scripttempl/mep.sc, * scripttempl/mmo.sc,
* scripttempl/nds32elf.sc, * scripttempl/pru.sc,
* scripttempl/sh.sc, * scripttempl/v850.sc,
* scripttempl/v850_rh850.sc, * scripttempl/visium.sc,
* scripttempl/xstormy16.sc: Condition various parts of scripts on
${RELOCATABLE} in order to prevent ld -r merging sections or
defining symbols. Remove MEMORY and VERSION definitions from
ld -r scripts too.
* testsuite/ld-elf/group2.d, * testsuite/ld-elf/group4.d,
* testsuite/ld-elf/group5.d, * testsuite/ld-elf/group6.d,
* testsuite/ld-elf/group7.d, * testsuite/ld-elf/group8a.d,
* testsuite/ld-elf/group8b.d, * testsuite/ld-elf/group9a.d,
* testsuite/ld-elf/group9b.d, * testsuite/ld-elf/pr17550a.d,
* testsuite/ld-elf/pr17550b.d,
* testsuite/ld-elf/pr17550d.d: Don't xfail cr16 and crx.
* testsuite/ld-elf/init-fini-arrays.d,
* testsuite/ld-elf/pr22677.d: Likewise, and dont' xfail mep.
commit 8bca297856b2e54ac093674554f6abd82e7ce6b0
Author: Sandra Loosemore <sandra@codesourcery.com>
Date: Fri Oct 12 17:56:13 2018 -0700
Clean up gdb.trace test results on targets not supporting this feature.
2018-10-12 Sandra Loosemore <sandra@codesourcery.com>
gdb/testsuite/
* gdb.trace/actions-changed.exp: Check for arch support.
* gdb.trace/actions.exp: Likewise.
* gdb.trace/ax.exp: Likewise.
* gdb.trace/backtrace.exp: Likewise.
* gdb.trace/change-loc.exp: Likewise.
* gdb.trace/deltrace.exp: Likewise.
* gdb.trace/ftrace-lock.exp: Check for shlib and arch support.
* gdb.trace/ftrace.exp: Likewise.
* gdb.trace/infotrace.exp: Check for arch support.
* gdb.trace/mi-trace-frame-collected.exp: Likewise.
* gdb.trace/mi-tracepoint-changed.exp: Likewise.
* gdb.trace/mi-tsv-changed.exp: Likewise.
* gdb.trace/packetlen.exp: Likewise.
* gdb.trace/passc-dyn.exp: Likewise.
* gdb.trace/passcount.exp: Likewise.
* gdb.trace/pending.exp: Likewise.
* gdb.trace/range-stepping.exp: Check for shlib support.
* gdb.trace/report.exp: Check for arch support.
* gdb.trace/save-trace.exp: Likewise.
* gdb.trace/signal.exp: Check for signal support.
* gdb.trace/tfind.exp: Check for arch support.
* gdb.trace/trace-break.exp: Check for arch and shlib support.
* gdb.trace/trace-common.h: Add comment.
* gdb.trace/trace-condition.exp: Check for shlib and arch support.
* gdb.trace/trace-enable-disable.exp: Likewise.
* gdb.trace/trace-mt.exp: Likewise. Remove redundant untested call.
* gdb.trace/tracecmd.exp: Check for arch support.
* gdb.trace/tspeed.exp: Check for shlib and target support.
* gdb.trace/tstatus.exp: Check for arch support.
* gdb.trace/tsv.exp: Likewise.
* gdb.trace/while-dyn.exp: Likewise.
* gdb.trace/while-stepping.exp: Likewise.
* lib/trace-support.exp (gdb_trace_common_supports_arch): New.
commit 032c98ec5206ac120374aa9d990c1d58bee976a4
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Oct 13 00:00:38 2018 +0000
Automatic date update in version.in
commit f9c49bffe616013ba97f679afd3446a8c87d80a7
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Fri Oct 12 16:27:29 2018 -0400
Fix buglets in gdb.trace/tspeed.{exp,c}
When trying to run gdb.trace/tspeed.exp, I get:
ERROR: can't read "ipalib": no such variable
while executing
"gdb_load_shlib $ipalib"
(procedure "prepare_for_trace_test" line 5)
This problem seems to come from commit
c708f4d256f ("gdb: Don't call gdb_load_shlib unless GDB is running")
which moved the gdb_load_shlib call in prepare_for_trace_test. In order
to access the ipalib variable, we need to declare "global ipalib" first.
Then, this test uses nowarnings, for no good reason I could find. We
can remove that and fix the two trivial warnings that appear:
/home/emaisin/src/binutils-gdb/gdb/testsuite/gdb.trace/tspeed.c: In function 'main':
/home/emaisin/src/binutils-gdb/gdb/testsuite/gdb.trace/tspeed.c:87:16: warning: too many arguments for format [-Wformat-extra-args]
printf ("Negative times, giving up\n", max_iters);
^
/home/emaisin/src/binutils-gdb/gdb/testsuite/gdb.trace/tspeed.c:99:7: warning: implicit declaration of function 'sleep' [-Wimplicit-function-declaration]
sleep (1); /* set post-run breakpoint here */
^
gdb/testsuite/ChangeLog:
* gdb.trace/tspeed.exp: Remove nowarnings.
(prepare_for_trace_test): Declare "global ipalib".
* gdb.trace/tspeed.c: Include unistd.h.
(main): Remove superfluous printf argument.
commit fe4ba873246386204af4da6bcadd8c01bb7f86c7
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Oct 12 00:00:39 2018 +0000
Automatic date update in version.in
commit d4330bde6891c74498cea8866ce9992181798861
Author: Sandra Loosemore <sandra@codesourcery.com>
Date: Thu Oct 11 16:51:26 2018 -0700
Fix pathname regexp in gdb.base/solib-vanish.exp.
2018-10-11 Sandra Loosemore <sandra@codesourcery.com>
gdb/testsuite/
* gdb.base/solib-vanish.exp: Fix regexp not to require a POSIX
directory prefix on the filename.
commit de564eb5cc8c67fc38f9910937935eef5ebc17d8
Author: Nick Clifton <nickc@redhat.com>
Date: Thu Oct 11 11:38:10 2018 +0100
Prevent the --keep-global-symbol and --globalize-symbol options from being used together.
This is the result of an email thread starting here:
https://sourceware.org/ml/binutils/2018-09/msg00031.html
The main point of the thread is this observation:
* Supposing we had an object file with two globals, SomeGlobal and
SomeOtherGlobal, if one were to do "--globalize-symbol SomeGlobal
--keep-global-symbol SomeOtherGlobal", you might expect that both
SomeGlobal and SomeOtherGlobal are global in the output file... but it
isn't. Because --keep-global-symbol is set and doesn't include
SomeGlobal, SomeGlobal will be demoted to a local symbol. And because
the check to see if we should apply the --globalize-symbol flag checks
"flags" (the original flag set), and not "sym->flags", it decides not
to do anything, so SomeGlobal remains a local symbol. Although this is
a weird edge case, should this be changed so that --keep-global-symbol
implicitly keeps anything also specified via --globalize-symbol? (The
code seems technically correct with respect to the documentation, but
IMO the behavior is counter-intuitive).
binutils* objcopy.c (copy_main): Issue a fata error if the
--keep-global-symbol(s) and the --globalize-symbol(s) options are
used together.
* doc/binutils.texi: Document that the two options are
incompatible.
* testsuite/binutils-all/copy-5.d: New test.
* testsuite/binutils-all/objcopy.exp: Run the new test.
commit fbe61a3661b083a666e6550b3b0c2de364e6d4a6
Author: Gary Benson <gbenson@redhat.com>
Date: Thu Oct 11 10:19:26 2018 +0100
Fix interp::m_name resource leak found by Coverity
This commit fixes a resource leak found by Coverity, where interp's
constructor allocated memory for m_name that interp's destructor did
not free.
gdb/ChangeLog:
* interps.h (interp::m_name): Make private and mutable.
* interps.c (interp::~interp): Free m_name.
commit a9597defaf39e2277c4c5ff510e708f226f54fbc
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Oct 11 09:16:28 2018 +0200
x86: add {,V}MOVQ cases to xmmword test
I had overlooked these when putting together the original test.
commit 30653a8a7da3e7b7d3b17b0bd8ffe7c6d40b7193
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Oct 11 00:00:34 2018 +0000
Automatic date update in version.in
commit 8ecfd7bd4acd69213c06fac6de9af38299123547
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Mon Sep 17 15:58:55 2018 -0400
Add parameter to allow enabling/disabling selftests via configure
This is a follow-up of:
https://sourceware.org/ml/gdb-patches/2018-08/msg00347.html
Instead of going throttle and always enabling our selftests (even in
non-development builds), this patch is a bit more conservative and
introduces a configure option ("--enable-unit-tests") that allows the
user to choose whether she wants unit tests in the build or not. Note
that the current behaviour is retained: if no option is provided, GDB
will have selftests included in a development build, and will *not*
have selftests included in a non-development build.
The rationale for having this option is still the same: due to the
many racy testcases and random failures we see when running the GDB
testsuite, it is unfortunately not possible to perform a full test
when one is building a downstream package. As the Fedora GDB
maintainer and one of the Debian GDB uploaders, I feel like this
situation could be improved by, at least, executing our selftests
after the package has been built.
This patch introduces no regressions to our build.
OK?
gdb/ChangeLog:
2018-10-10 Sergio Durigan Junior <sergiodj@redhat.com>
Simon Marchi <simark@simark.ca>
* README (`configure' options): Add documentation for new
"--enable-unit-tests" option.
* acinclude.m4: Include "selftest.m4".
* configure: Regenerate.
* configure.ac: Use "GDB_AC_SELFTEST".
* maint.c (maintenance_selftest): Update message informing
that selftests have been disabled.
(maintenance_info_selftests): Likewise.
* selftest.m4: New file.
gdb/gdbserver/ChangeLog:
2018-10-10 Sergio Durigan Junior <sergiodj@redhat.com>
Simon Marchi <simark@simark.ca>
* acinclude.m4: Include "../selftest.m4".
* configure: Regenerate.
* configure.ac: Use "GDB_AC_SELFTEST".
* configure.srv: Use "$enable_unittests" instead of
"$development" when checking whether unit tests have been
enabled.
* server.c (captured_main): Update message informing that
selftests have been disabled.
gdb/testsuite/ChangeLog:
2018-10-10 Sergio Durigan Junior <sergiodj@redhat.com>
* gdb.gdb/unittest.exp: Update expected message informing that
selftests have been disabled.
* gdb.server/unittest.exp: Likewise.
squash! Add parameter to allow enabling/disabling selftests via configure
commit 33b031ce7a9b8b1b7c729518af965b7cb70a1cd6
Author: Gary Benson <gbenson@redhat.com>
Date: Wed Oct 10 15:01:50 2018 +0100
Add missing va_end found by Coverity
This commit adds a missing va_end found by Coverity.
gdb/ChangeLog:
* remote.c (remote_target::remote_send_printf): Add
missing va_end found by Coverity.
commit 2cb2ba9a5b7fe39f30604650efa64cff05cb72e4
Author: Markus Metzger <markus.t.metzger@intel.com>
Date: Mon Sep 24 11:33:11 2018 +0200
btrace: check for indirect jump return in _Unwind_RaiseException
Some versions of _Unwind_RaiseException, e.g. on Fedora 28, use an
indirect jump to return to the exception handler.
This messes up the output of "record function-call-history /c" since the
return is interpreted as cross-function goto. It had been detected by
gdb.btrace/exception.exp.
Add a heuristic for "_Unwind_*" functions to interpret an indirect jump
that ends in one of our caller functions as return to the first instance
of that function in our call stack.
gdb/
* btrace.c (ftrace_update_function): Add indirect jump heuristic.
commit 673fe0f0a7a0624819f1b4cdc289f43691567e91
Author: Jan Beulich <jbeulich@novell.com>
Date: Wed Oct 10 08:41:52 2018 +0200
x86: fold Size{16,32,64} template attributes
Only one of them can be set at a time, which means they can be expressed
by a single 2-bit field instead of three 1-bit ones.
commit 43f6cd0588a735c202934789d67b6ed4302f255d
Author: Alan Modra <amodra@gmail.com>
Date: Wed Oct 10 13:14:56 2018 +1030
HPPA64 .PARISC.unwind entries
.PARISC.unwind has 32-bit addresses in both 32-bit ELF and 64-bit ELF.
Well, strictly speaking, the 32-bit "start" and "end" fields are
segment relative offsets. (The 64-bit ABI says so, while the 32-bit
ABI says they are addresses but it appears they are segment relative
offsets in practice. Likely the 32-bit ABI lacks an update.)
* readelf.c (hppa_process_unwind): Don't use eh_addr_size to
calculate number of entries.
(slurp_hppa_unwind_table): Don't use eh_addr_size here either.
commit 8ab159a96565be6e60f8d88ba3a4638116f7e9d3
Author: Alan Modra <amodra@gmail.com>
Date: Wed Oct 10 12:17:54 2018 +1030
S12Z: Set eh_addr_size to 4
* objdump.c (dump_dwarf): Set s12z eh_addr_size to 4.
commit daff3a48c17625ade8b57cf770fc77b4c1815df2
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Oct 10 00:00:45 2018 +0000
Automatic date update in version.in
commit 163cffefafb1d427ab46603d98bbfc45e813c9a0
Author: Tom Tromey <tom@tromey.com>
Date: Tue Oct 9 13:57:10 2018 -0600
Make @pxref for Inferior.architecture point to gdb.Frame documentation
This fixes he @pxref in Inferior.architecture to point to the "Frames
In Python" node, as originally intended; somewhat reverting an earlier
build fix. The initial patch had typod the "In".
Tested by "make info".
gdb/doc/ChangeLog
2018-10-09 Tom Tromey <tom@tromey.com>
* python.texi (Inferiors In Python): Link to "Frames In Python",
not "Unwinding Frames in Python".
commit eff98030f90d3dab4c7d133ab0b0cb02d1921543
Author: Tom Tromey <tom@tromey.com>
Date: Tue Oct 9 11:51:33 2018 -0600
Disable the undefined behavior sanitizer by default
There have been a few undefined behavior failures reported, and Pedro
suggested that the sanitizer be disabled by default. This patch
implements this.
gdb/ChangeLog
2018-10-09 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
* sanitize.m4 (AM_GDB_UBSAN): Default to no.
* NEWS: Update --enable-ubsan documentation.
gdb/doc/ChangeLog
2018-10-09 Tom Tromey <tom@tromey.com>
* gdb.texinfo (Configure Options): Update --enable-ubsan
documentation.
commit 104fefeebb544b7745bb353b63110afa46119647
Author: Sudakshina Das <sudi.das@arm.com>
Date: Wed Sep 26 11:04:32 2018 +0100
[PATCH, BINUTULS, AARCH64, 9/9] Add SSBS to MSR/MRS
This patch is part of the patch series to add support for ARMv8.5-A
extensions.
(https://developer.arm.com/products/architecture/cpu-architecture/a-profile/exploration-tools)
The encodings can be found in the System Register XML.
This patch adds support for the mitigation for Spectre Variant 4 by
adding the PSTATE bit SSBS which are accessible using MSR and MRS
instructions. Although this is a mandatory addition to the ARMv8.5-A,
it is permitted to be added to any version of the ARMv8 architecture.
This is enabled using the command line option of +ssbs for older
versions.
*** include/ChangeLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* opcode/aarch64.h (AARCH64_FEATURE_SSBS): New.
(AARCH64_ARCH_V8_5): Add AARCH64_FEATURE_SSBS by default.
*** opcodes/ChangeLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* aarch64-opc.c (operand_general_constraint_met_p): Add
SSBS in the check for one-bit immediate.
(aarch64_sys_regs): New entry for SSBS.
(aarch64_sys_reg_supported_p): New check for above.
(aarch64_pstatefields): New entry for SSBS.
(aarch64_pstatefield_supported_p): New check for above.
*** gas/ChangeLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* config/tc-aarch64.c (aarch64_features): Add new "ssbs".
* doc/c-aarch64.texi: Document the same.
* testsuite/gas/aarch64/ssbs-illegal1.d: New test.
* testsuite/gas/aarch64/ssbs-illegal1.l: New test.
* testsuite/gas/aarch64/ssbs-illegal2.d: New test.
* testsuite/gas/aarch64/ssbs-illegal2.l: New test.
* testsuite/gas/aarch64/ssbs.s: New test.
* testsuite/gas/aarch64/ssbs1.d: Test with +ssbs
* testsuite/gas/aarch64/ssbs2.d: Test with armv8.5-a.
commit a97330e723cf3c639a951329ac5fe2797528249b
Author: Sudakshina Das <sudi.das@arm.com>
Date: Wed Sep 26 11:02:28 2018 +0100
[PATCH, BINUTILS, AARCH64, 8/9] Add SCXTNUM_ELx and ID_PFR2_EL1 system registers
This patch is part of the patch series to add support for ARMv8.5-A
extensions.
(https://developer.arm.com/products/architecture/cpu-architecture/a-profile/exploration-tools)
The encodings can be found in the System Register XML.
This patch adds the new system registers SCXTNUM_ELx and ID_PFR2_EL1.
*** include/ChangeLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* opcode/aarch64.h (AARCH64_FEATURE_SCXTNUM): New.
(AARCH64_FEATURE_ID_PFR2): New.
(AARCH64_ARCH_V8_5): Add both by default.
*** opcodes/ChangeLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* aarch64-opc.c (aarch64_sys_regs): New entries for
scxtnum_el[0,1,2,3,12] and id_pfr2_el1.
(aarch64_sys_reg_supported_p): New checks for above.
*** gas/ChangeLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* testsuite/gas/aarch64/sysreg-4.s: Test registers
scxtnum_el[0,1,2,3,12] and id_pfr2_el1.
* testsuite/gas/aarch64/sysreg-4.d: Likewise.
* testsuite/gas/aarch64/illegal-sysreg-4.l: Likewise.
commit ff6054520cc86ac2f34c21bcc2e44ede50b56cdc
Author: Sudakshina Das <sudi.das@arm.com>
Date: Wed Sep 26 11:00:49 2018 +0100
[PATCH, BINUTILS, AARCH64, 7/9] Add BTI instruction
This patch is part of the patch series to add support for ARMv8.5-A
extensions.
(https://developer.arm.com/products/architecture/cpu-architecture/a-profile/docs/ddi0596/a/a64-base-instructions-alphabetic-order/bti-branch-target-identification)
The Branch Target Identification instructions (BTI) are allocated to
existing HINT space, using HINT numbers 32, 34, 36, 38, such that
bits[7:6] of the instruction identify the compatibility of the BTI
instruction to different branches.
BTI {<targets>}
where <targets> one of the following, specifying which type of
indirection is allowed:
j : Can be a target of any BR Xn isntruction.
c : Can be a target of any BLR Xn and BR {X16|X17}.
jc: Can be a target of any free branch.
A BTI instruction without any <targets> is the strictest of all and
can not be a target of nay free branch.
*** include/ChangeLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* opcode/aarch64.h (AARCH64_FEATURE_BTI): New.
(AARCH64_ARCH_V8_5): Add AARCH64_FEATURE_BTI by default.
(aarch64_opnd): Add AARCH64_OPND_BTI_TARGET.
(HINT_OPD_CSYNC, HINT_OPD_C, HINT_OPD_J): New macros to
define HINT #imm values.
(HINT_OPD_JC, HINT_OPD_NULL): Likewise.
*** opcodes/ChangeLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* aarch64-opc.h (HINT_OPD_NOPRINT, HINT_ENCODE): New.
(HINT_FLAG, HINT_VALUE): New macros to encode NO_PRINT flag
with the hint immediate.
* aarch64-opc.c (aarch64_hint_options): New entries for
c, j, jc and default (with HINT_OPD_F_NOPRINT flag) for BTI.
(aarch64_print_operand): Add case for AARCH64_OPND_BTI_TARGET
while checking for HINT_OPD_F_NOPRINT flag.
* aarch64-dis.c (aarch64_ext_hint): Use new HINT_VALUE to
extract value.
* aarch64-tbl.h (aarch64_feature_bti, BTI, BTI_INSN): New.
(aarch64_opcode_table): Add entry for BTI.
(AARCH64_OPERANDS): Add new description for BTI targets.
* aarch64-asm-2.c: Regenerate.
* aarch64-dis-2.c: Regenerate.
* aarch64-opc-2.c: Regenerate.
*** gas/ChangeLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* config/tc-aarch64.c (parse_bti_operand): New.
(process_omitted_operand): Add case for AARCH64_OPND_BTI_TARGET.
(parse_operands): Likewise.
* testsuite/gas/aarch64/system.d: Update for BTI.
* testsuite/gas/aarch64/bti.s: New.
* testsuite/gas/aarch64/bti.d: New.
* testsuite/gas/aarch64/illegal-bti.d: New.
* testsuite/gas/aarch64/illegal-bti.l: New.
commit af4bcb4ce6939da1738c847a06789d2223b67ca4
Author: Sudakshina Das <sudi.das@arm.com>
Date: Wed Sep 26 10:57:16 2018 +0100
[PATCH, BINUTILS, AARCH64, 6/9] Add Random number instructions
This patch is part of the patch series to add support for ARMv8.5-A
extensions.
(https://developer.arm.com/products/architecture/cpu-architecture/a-profile/exploration-tools)
The encodings can be found in the System Register XML.
This patch adds the following:
MSR Xn, RNDR
MSR Xn, RNDRRS
These are optional instructions in ARMv8.5-A and hence the new
+rng is added.
*** include/ChangeLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* opcode/aarch64.h (AARCH64_FEATURE_RNG): New.
*** opcodes/ChangeLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* aarch64-opc.c (aarch64_sys_regs): New entries for
rndr and rndrrs.
(aarch64_sys_reg_supported_p): New check for above.
*** gas/ChangeLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* config/tc-aarch64.c (aarch64_features): New "rng" option.
* doc/c-aarch64.texi: Document the same.
* testsuite/gas/aarch64/sysreg-4.s: Test both instructions.
* testsuite/gas/aarch64/sysreg-4.d: Likewise.
* testsuite/gas/aarch64/illegal-sysreg-4.l: Likewise.
commit 3fd229a447cd28a70bfd921f617bc6c3553b8fdd
Author: Sudakshina Das <sudi.das@arm.com>
Date: Wed Sep 26 10:54:07 2018 +0100
[PATCH, BINUTILS, AARCH64, 5/9] Add DC CVADP instruction
This patch is part of the patch series to add support for ARMv8.5-A
extensions.
(https://developer.arm.com/products/architecture/cpu-architecture/a-profile/docs/ddi0596/a/a64-base-instructions-alphabetic-order/dc-data-cache-operation-an-alias-of-sys)
This patch adds the DC CVADP instruction. Since this has a separate
identification mechanism a new feature bit is added.
*** include/ChangeLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* opcode/aarch64.h (AARCH64_FEATURE_CVADP): New.
*** opcodes/ChangeLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* aarch64-opc.c (aarch64_sys_regs_dc): New entry for cvadp.
(aarch64_sys_ins_reg_supported_p): New check for above.
*** gas/ChangeLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* testsuite/gas/aarch64/sysreg-4.s: Test instruction.
* testsuite/gas/aarch64/sysreg-4.d: Likewise.
* testsuite/gas/aarch64/illegal-sysreg-4.l: Likewise.
commit 2ac435d46608be7ef90f80aaf9ff48443aea571e
Author: Sudakshina Das <sudi.das@arm.com>
Date: Wed Sep 26 10:52:51 2018 +0100
[PATCH, BINUTILS, AARCH64, 4/9] Add Execution and Data Restriction instructions
This patch is part of the patch series to add support for ARMv8.5-A
extensions.
(https://developer.arm.com/products/architecture/cpu-architecture/a-profile/docs/ddi0596/a/a64-base-instructions-alphabetic-order)
This patch adds the prediction restriction instructions (that is, cfp,
dvp, cpp). These instructions are retrospectively made optional for
all versions of the architecture from ARMv8.0 to ARMv8.4 and is
mandatory from ARMv8.5. Hence adding a new +predres which can be used
by the older architectures.
*** include/ChangeLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* opcode/aarch64.h (AARCH64_FEATURE_PREDRES): New.
(AARCH64_ARCH_V8_5): Add AARCH64_FEATURE_PREDRES by default.
(aarch64_opnd): Add AARCH64_OPND_SYSREG_SR.
(aarch64_sys_regs_sr): Declare new table.
*** opcodes/ChangeLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* aarch64-dis.c (aarch64_ext_sysins_op): Add case for
AARCH64_OPND_SYSREG_SR.
* aarch64-opc.c (aarch64_print_operand): Likewise.
(aarch64_sys_regs_sr): Define table.
(aarch64_sys_ins_reg_supported_p): Check for RCTX with
AARCH64_FEATURE_PREDRES.
* aarch64-tbl.h (aarch64_feature_predres): New.
(PREDRES, PREDRES_INSN): New.
(aarch64_opcode_table): Add entries for cfp, dvp and cpp.
(AARCH64_OPERANDS): Add new description for SYSREG_SR.
* aarch64-asm-2.c: Regenerate.
* aarch64-dis-2.c: Regenerate.
* aarch64-opc-2.c: Regenerate.
*** gas/ChangeLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* config/tc-aarch64.c (aarch64_sys_regs_sr_hsh): New.
(parse_operands): Add entry for AARCH64_OPND_SYSREG_SR.
(md_begin): Allocate and initialize aarch64_sys_regs_sr_hsh
with aarch64_sys_regs_sr.
(aarch64_features): Add new "predres" option for older
architectures.
* doc/c-aarch64.texi: Document the same.
* testsuite/gas/aarch64/sysreg-4.s: New.
* testsuite/gas/aarch64/sysreg-4.d: New.
* testsuite/gas/aarch64/illegal-sysreg-4.d: New.
* testsuite/gas/aarch64/illegal-sysreg-4.l: New.
* testsuite/gas/aarch64/predres.s: New.
* testsuite/gas/aarch64/predres.d: New.
commit 68dfbb92ef5f013a315d652c88ede2082c16a88e
Author: Sudakshina Das <sudi.das@arm.com>
Date: Wed Sep 26 10:47:40 2018 +0100
[PATCH, BINUTILS, AARCH64, 3/9] Add instruction SB for ARMv8.5-A
This patch is part of the patch series to add support for ARMv8.5-A
extensions.
(https://developer.arm.com/products/architecture/cpu-architecture/a-profile/docs/ddi0596/a/a64-base-instructions-alphabetic-order)
This instruction is retrospectively made optional for all versions of
the architecture from ARMv8.0 to ARMv8.4 and is mandatory from
ARMv8.5. Hence a new command line option of "+sb" is added for older
architectures.
*** include/ChangeLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* opcode/aarch64.h (AARCH64_FEATURE_SB): New.
(AARCH64_ARCH_V8_5): Add AARCH64_FEATURE_SB by default.
*** opcodes/ChangeLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* aarch64-tbl.h (aarch64_feature_sb): New.
(SB, SB_INSN): New.
(aarch64_opcode_table): Add entry for sb.
* aarch64-asm-2.c: Regenerate.
* aarch64-dis-2.c: Regenerate.
* aarch64-opc-2.c: Regenerate.
*** gas/ChangeLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* config/tc-aarch64.c (aarch64_features): Add new "sb" option
for older architectures.
* doc/c-aarch64.texi: Document the same.
* testsuite/gas/aarch64/sb.s: New.
* testsuite/gas/aarch64/sb.d: New.
commit 13c60ad7e1211ee1dfbf6bfb5e35110a33e4eed5
Author: Sudakshina Das <sudi.das@arm.com>
Date: Wed Sep 26 10:45:35 2018 +0100
[PATCH, BINUTILS, AARCH64, 2/9] Add Data procoessing instructions for ARMv8.5-A
This patch is part of the patch series to add support for ARMv8.5-A
extensions.
(https://developer.arm.com/products/architecture/cpu-architecture/a-profile/docs/ddi0596/a/a64-base-instructions-alphabetic-order)
This patch adds the data processing instructions that are new to
ARMv8.5-A.
1) There are 2 instructions: xaflag, axflag, that are added to
manipulate the states of the flag and are used to convert between the
Arm representation and the fcmp representation.
2) The other instructions are rounding instructions which have 8
versions based on whether the floating-point number is a
Single-Precision or Double-Precision number, whether the target
integer is a 32-bit or 64-bit integer and whether the rounding mode is
the ambient rounding mode or to zero. Each of these instruction is
available in both Scalar and Vector forms.
Since both 1) and 2) have separate identification mechanism and it is
permissible that a ARMv8.4 compliant implementation may include any
arbitrary subset of the ARMv8.5 features unless otherwise specified,
new feature bits are added.
*** include/ChangeLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* opcode/aarch64.h (AARCH64_FEATURE_FLAGMANIP): New.
(AARCH64_FEATURE_FRINTTS): New.
(AARCH64_ARCH_V8_5): Add both by default.
*** opcodes/ChangeLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* aarch64-tbl.h (aarch64_feature_flagmanip): New.
(aarch64_feature_frintts): New.
(FLAGMANIP, FRINTTS): New.
(aarch64_opcode_table): Add entries for xaflag, axflag
and frint[32,64][x,z] instructions.
* aarch64-asm-2.c: Regenerate.
* aarch64-dis-2.c: Regenerate.
* aarch64-opc-2.c: Regenerate.
*** gas/ChangeLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* testsuite/gas/aarch64/armv8_5-a-dp.s: New.
* testsuite/gas/aarch64/armv8_5-a-dp.d: New.
commit 70d561813cd4da84109395c36662a187411a4d97
Author: Sudakshina Das <sudi.das@arm.com>
Date: Wed Sep 26 10:38:59 2018 +0100
[PATCH, BINUTILS, AARCH64, 1/9] Add -march=armv8.5-a and related internal feature macros
This patch is part of the patch series to add support for ARMv8.5-A
extensions.
(https://developer.arm.com/products/architecture/cpu-architecture/a-profile/exploration-tools)
This is the first of the patch series and adds -march=armv8.5-a and
other internal feature marcos needed for it.
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* config/tc-aarch64.c (aarch64_archs): New entry for armv8.5-a.
* doc/c-aarch64.texi: Add documentation for the same.
*** include/ChnageLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* opcode/aarch64.h (AARCH64_FEATURE_V8_5): New.
(AARCH64_ARCH_V8_5): New.
*** opcodes/ChangeLog ***
2018-10-09 Sudakshina Das <sudi.das@arm.com>
* aarch64-tbl.h (aarch64_feature_set aarch64_feature_v8_5): New.
(ARMV8_5, V8_5_INSN): New.
commit 58bbcd02dee8ba018b97706c068ed8ed7afac15d
Author: Tom de Vries <tdevries@suse.de>
Date: Thu Oct 4 14:10:39 2018 +0200
[gdb/testsuite] Fix target_supports_scheduler_locking raciness
When calling gdb_start_cmd, it's the caller's responsibility to wait for gdb
to return to the prompt. In target_supports_scheduler_locking, that's not the
case, and consequently, target_supports_scheduler_locking fails spuriously.
Fix by using runto_main instead.
Build and reg-tested on x86_64-linux.
2018-10-09 Tom de Vries <tdevries@suse.de>
* lib/gdb.exp (target_supports_scheduler_locking): Replace gdb_start_cmd
with runto_main.
commit 04fd5eed91c0a960e1706fb627912ad6350ae391
Author: Gary Benson <gbenson@redhat.com>
Date: Tue Oct 9 14:13:12 2018 +0100
Fix buffer overrun found by Coverity
This commit fixes a buffer overrun found by Coverity, where
36 bytes are written into a 24 byte buffer.
gdb/ChangeLog:
* dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
found by Coverity.
commit 1c2649ed7481881cb963bb53251a79bfb8b1047e
Author: Egeyar Bagcioglu <egeyar.bagcioglu@oracle.com>
Date: Wed Oct 3 23:27:32 2018 +0200
Do not place symbols into a discarded .dynsym
Prevents getting an error about dynamic symbols in sections indexed
64K+ when .dynsym is discarded.
* elflink.c (elf_link_output_extsym): Do not place symbols into a
discarded .dynsym.
commit 35dc7e6b77c6d379dda8072e9f0b88a24c008d06
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Oct 9 00:01:10 2018 +0000
Automatic date update in version.in
commit a0c3048e3f397a595a14208e82e21399131f782b
Author: Tom Tromey <tom@tromey.com>
Date: Mon Oct 8 16:39:29 2018 -0600
Remove unused variables from riscv-fbsd-tdep.c
This removes a couple of unused variables from riscv-fbsd-tdep.c.
This allows a --enable-targets=all build to complete on
x86-64 Fedora 28.
gdb/ChangeLog
2018-10-08 Tom Tromey <tom@tromey.com>
* riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
variable.
(riscv_fbsd_init_abi): Likewise.
commit a51bb70c8a1570f2e6fa74432578bcdf7f2785aa
Author: Weimin Pan <weimin.pan@oracle.com>
Date: Mon Oct 8 22:14:11 2018 +0000
Fix the [-Werror=shadow=local] warning
Rename local variable in value_struct_elt_for_reference()
to work around the shadowing a previous local warning.
commit 74792ff782431ec6113b9a8a8e85b95f46094c7f
Author: John Baldwin <jhb@FreeBSD.org>
Date: Mon Oct 8 14:47:34 2018 -0700
Add native target for FreeBSD/riscv.
gdb/ChangeLog:
* Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
* NEWS: Mention new FreeBSD/riscv native configuration.
* configure.host: Add riscv*-*-freebsd*.
* configure.nat: Likewise.
* riscv-fbsd-nat.c: New file.
gdb/doc/ChangeLog:
* gdb.texinfo (Contributors): Add SRI International and University
of Cambridge for FreeBSD/riscv.
commit ed65e20bc7cd18406081cf5ba29f9c9bccd4e52f
Author: John Baldwin <jhb@FreeBSD.org>
Date: Mon Oct 8 14:47:34 2018 -0700
Add FreeBSD/riscv architecture.
Support for collecting and supplying general purpose and floating
point register sets is provided along with signal frame unwinding.
FreeBSD only supports RV64 currently, so while some provision is made
for RV32 in the general-purpose register set, the changes have only
been tested on RV64.
gdb/ChangeLog:
* Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
(HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
(ALLDEPFILES): Add riscv-fbsd-tdep.c.
* NEWS: Mention new FreeBSD/riscv target.
* configure.tgt: Add riscv*-*-freebsd*.
* riscv-fbsd-tdep.c: New file.
* riscv-fbsd-tdep.h: New file.
commit 498f740792fe0edd2955c5cee6bb864f60a5b173
Author: John Baldwin <jhb@FreeBSD.org>
Date: Mon Oct 8 14:47:33 2018 -0700
Add a helper function to trad_frame to support register cache maps.
Currently, signal frame handlers require explicitly coded calls to
trad_frame_set_reg_addr() to describe the location of saved registers
within a signal frame. This change permits the regcache_map_entry
arrays used with regcache::supply_regset and regcache::collect_regset
to be used to describe a block of saved registers given an initial
address for the register block.
Some systems use the same layout for registers in core dump notes,
native register sets with ptrace(), and the register contexts saved in
signal frames. On these systems, a single register map can now be
used to describe the layout of registers in all three places.
If a register map entry's size does not match the native size of a
register, try to match the semantics used by
regcache::transfer_regset. If a register slot is too large, assume
that the register's value is stored in the first N bytes and ignore
the remaning bytes. If the register slot is smaller than the
register, assume the slot holds the low N bytes of the register's
value. Read these low N bytes from the target and zero-extend them to
generate a register value.
While here, document the semantics for both regcache::transfer_regset
and trad_frame with respect to register slot's whose size does not
match the register's size.
gdb/ChangeLog:
* regcache.h (struct regcache_map_entry): Note that this type can
be used with traditional frame caches.
* trad-frame.c (trad_frame_set_reg_regmap): New.
* trad-frame.h (trad_frame_set_reg_regmap): New.
commit 9f6b697b0efd4ba4e2cb21ac17d2b18a23f81abd
Author: Weimin Pan <weimin.pan@oracle.com>
Date: Mon Oct 8 21:16:59 2018 +0000
Finding data member in virtual base class
This patch fixes the original problem - printing member in a virtual base,
using various expressions, do not yield the same value. Simple test case
below demonstrates the problem:
% cat t.cc
struct base { int i; };
typedef base tbase;
struct derived: virtual tbase { void func() { } };
int main() { derived().func(); }
% g++ -g t.cc
% gdb a.out
(gdb) break derived::func
(gdb) run
(gdb) p i
$1 = 0
(gdb) p base::i
$3 = 0
(gdb) p derived::i
$4 = 4196392
To fix the problem, add function get_baseclass_offset() which searches
recursively for the base class along the class hierarchy. If the base
is virtual, it uses "vptr" in virtual class object, which indexes to
its derived class's vtable, to get and returns the baseclass offset.
If the base is non-virtual, it returns the accumulated offset of its
parent classes. The offset is then added to the address of the class
object to access its member in value_struct_elt_for_reference().
commit 780f601cf3bfd2eb141c2ea32b673b5bd0956a33
Author: Tamar Christina <tamar.christina@arm.com>
Date: Mon Oct 8 13:33:42 2018 +0100
AArch64: Replace C initializers with memset
Clang doesn't accept {0} as a valid C struct initializer under their implementation
of -Wmissing-field-initializers. This makes using C initializers a bit tricky.
Instead I'm changing the code to use memset instead, which at least GCC inlines and
generates the same code for. This also seems to be the idiom used in binutils for
most targets.
opcodes/
* aarch64-opc.c (verify_constraints): Use memset instead of {0}.
commit 80f3ac5d61a5d01d7cf951de0e24ecdc71c545cb
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Oct 8 05:14:02 2018 -0700
x86: Don't add GNU_PROPERTY_X86_FEATURE_2_NEEDED for -z separate-code
With
commit 64029e93683a266c38d19789e780f3748bd6a188
Author: Alan Modra <amodra@gmail.com>
Date: Fri Oct 5 11:40:54 2018 +0930
Separate header PT_LOAD for -z separate-code
there is no need to add a GNU_PROPERTY_X86_ISA_1_USED note to force
program header in in non-code PT_LOAD segment when -z separate-code
is used.
bfd/
PR ld/23428
* elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Don't
add GNU_PROPERTY_X86_FEATURE_2_NEEDED to force program header
in non-code PT_LOAD segment.
ld/
PR ld/23428
* testsuite/ld-i386/property-x86-4a.d: Updated.
* testsuite/ld-x86-64/property-x86-4a-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-4a.d: Likewise.
commit f3e660db14a0a95f3953496d8beb7c58ef34c6d5
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Oct 8 04:39:09 2018 -0700
ELF: Properly group and place orphan note sections
Properly group orphan note sections. When placing orphan note section
as the first note section, place it after the section before all note
sections.
PR ld/23658
* ldlang.c (lang_insert_orphan): Properly group and place orphan
note sections. Properly handle orphan note section before all
note sections.
* testsuite/ld-elf/pr23658-1.d: Renamed to ...
* testsuite/ld-elf/pr23658-1a.d: This. Updated.
* testsuite/ld-elf/pr23658-1b.d: New test.
* testsuite/ld-elf/pr23658-1c.d: Likewise.
commit 64029e93683a266c38d19789e780f3748bd6a188
Author: Alan Modra <amodra@gmail.com>
Date: Fri Oct 5 11:40:54 2018 +0930
Separate header PT_LOAD for -z separate-code
This patch, along with previous patches in the series, supports
putting the ELF file header and program headers in a PT_LOAD without
sections.
Logic governing whether headers a loaded has changed a little: The
primary reason to include headers is now the presence of
SIZEOF_HEADERS in a linker script. However, to support scripts that
may have reserved space for headers by hand, we continue to add
headers whenever the first section address is past the end of headers
modulo page size.
include/
* bfdlink.h (struct bfd_link_info): Add load_phdrs field.
bfd/
* elf-nacl.c (nacl_modify_segment_map): Cope with header PT_LOAD
lacking sections.
* elf.c (_bfd_elf_map_sections_to_segments): Assume file and
program headers are required when info->load_phdrs. Reorganize
code handling program headers. Generate a mapping without
sections just for file and program headers when -z separate-code
would indicate they should be on a different page to the first
section.
ld/
* ldexp.c (fold_name <SIZEOF_HEADERS>): Set link_info.load_phdrs.
* testsuite/ld-elf/loadaddr1.d: Pass -z noseparate-code.
* testsuite/ld-elf/loadaddr2.d: Likewise.
* testsuite/ld-i386/vxworks2.sd: Adjust expected output.
* testsuite/ld-powerpc/vxworks2.sd: Likewise.
* testsuite/ld-elf/overlay.d: Remove spu xfail.
* testsuite/ld-spu/ovl.lnk: Don't use SIZEOF_HEADERS.
* testsuite/ld-tic6x/dsbt-be.ld: Likewise.
* testsuite/ld-tic6x/dsbt-inrange.ld: Likewise.
* testsuite/ld-tic6x/dsbt-overflow.ld: Likewise.
* testsuite/ld-tic6x/dsbt.ld: Likewise.
commit 7358942661ccb0ea1e819fd2f5d47914cebf0aa2
Author: Alan Modra <amodra@gmail.com>
Date: Mon Oct 8 08:44:50 2018 +1030
ld insert_os_after ignoring first assignment
Some time ago the pr19593 test was xfailed for alpha. This turned out
to be the wrong course of action since the test exposed a bug in
orphan section placement. On alpha, orphan sections were being
inserted before ". = SIZEOF_HEADERS" due to the test having two
assignments, and on alpha, an output section statement from
-Ttext-segment being passed to ld.
* ldlang.c (insert_os_after): Clear ignore_first on assignment to
dot, not any assignment. Clear ignore_first on output section
statement contents too.
* testsuite/ld-elf/pr19539.d: Remove alpha xfail.
commit 5d695627883b32cf33adb529c8fc7271b46dcf55
Author: Alan Modra <amodra@gmail.com>
Date: Sat Oct 6 12:24:28 2018 +0930
Use p_vaddr_offset to set p_vaddr on segments without sections
p_vaddr is currently set from the first section vma if a segment has
sections, and to zero if a segment has no sections. This means we
lose p_vaddr when objcopy'ing executables if a segment without
sections has a non-zero p_vaddr.
This patch saves p_vaddr to p_vaddr_offset, and to make the use of
p_vaddr_offset consistent, inverts the sign. (It's now added to
section vma to get segment vaddr, and added to zero when there are no
sections.)
* elf.c (assign_file_positions_for_load_sections): Set p_vaddr
from m->p_vaddr_offset for segments without sections. Invert
sign of p_vaddr_offset.
(rewrite_elf_program_header, copy_elf_program_header): Save
old segment p_vaddr to p_vaddr_offset. Invert sign of
p_vaddr_offset.
commit 1b9e270b09c140464a7892c95c28eafa812c6b08
Author: Alan Modra <amodra@gmail.com>
Date: Sat Oct 6 00:05:51 2018 +0930
No PT_INTERP when .interp is zero size
Some targets don't set a default interpreter, resulting in an empty
.interp section unless --dynamic-linker is passed to ld. A PT_INTERP
without a path is rather useless.
The testsuite change fixes a failure on microblaze-linux.
bfd/
* elf.c (get_program_header_size): Don't count PT_INTERP if
.interp is empty.
(_bfd_elf_map_sections_to_segments): Don't create PT_INTERP if
.interp is empty.
ld/
* testsuite/ld-elf/pr22423.d: Pass --dynamic-linker to ld.
commit e0c3dfa2eebcf862d45b05f363a81f57ca30dead
Author: Alan Modra <amodra@gmail.com>
Date: Fri Oct 5 23:35:01 2018 +0930
SPU overlay headers
Overlay PT_LOAD headers are moved early for reasons explained by
comments in spu_elf_modify_segment_map. This patch fixes cases that
shouldn't occur in sane SPU executables.
* elf32-spu.c (spu_elf_modify_segment_map): Don't insert
overlays before segment containing headers.
commit 00bee008e9f7d0b3adf3278962450944653787f8
Author: Alan Modra <amodra@gmail.com>
Date: Fri Oct 5 22:17:00 2018 +0930
Tidy elf_segment_map allocation
This cleans up elf_segment_map allocation when the section array is
empty. "amt += (to - from - 1) * sizeof (asection *)", when "to" and
"from" are unsigned int results in an unsigned value inside the
parentheses. When "to" and "from" are equal on a 64-bit host,
0xffffffff * 8 is added to "amt", not -8 as desired.
The patch also renames a variable for consistency with other functions
using a similar index.
* elf.c (make_mapping): Cope with zero size array at end of
struct elf_segment_map.
(_bfd_elf_map_sections_to_segments): Likewise.
(rewrite_elf_program_header, copy_elf_program_header): Likewise.
(_bfd_elf_map_sections_to_segments): Rename phdr_index to hdr_index.
commit c258c396faa626a4c7929a5ec97ee9b294073c5e
Author: John Darrington <john@darrington.wattle.id.au>
Date: Thu Sep 20 19:52:07 2018 +0200
GDB: Work around buggy dwarf line information produced by Codewarrior Version 5.0.40 (build 15175).
gdb/ChangeLog:
* dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
(check_producer): Check if the producer is codewarrior.
(producer_is_codewarrior): New function.
(lnp_state_machine::record_line): Ignore is_stmt flag for records
produced by codewarrior.
(dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
commit 25cbdcbbc5d2d4ca834790b1d370fe5159b560de
Author: Andreas Schwab <schwab@suse.de>
Date: Thu Oct 4 14:35:12 2018 +0200
Handle R_RISCV_32_PCREL in readelf
* readelf.c (is_32bit_pcrel_reloc): Handle R_RISCV_32_PCREL.
commit 9e1698c6186a3239479058d2abe195a384d5ee6e
Author: Andreas Krebbel <krebbel@linux.vnet.ibm.com>
Date: Mon Oct 8 09:48:04 2018 +0200
Python doc build fixes
gdb/doc/ChangeLog:
2018-10-08 Andreas Krebbel <krebbel@linux.ibm.com>
* python.texi (Inferior.Architecture): Add "@end defun". Rename
ref target to "Unwinding Frames in Python".
commit de3e5eca9908ef76b53a091c356be4855dcfd1e1
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Oct 8 00:00:30 2018 +0000
Automatic date update in version.in
commit add5ded5e476918ef8b05823801531de2f51fa9c
Author: Tom Tromey <tom@tromey.com>
Date: Sat Oct 6 22:57:19 2018 -0600
Add Inferior.architecture method
I've written a couple of gdb unwinders in Python, and while doing so,
I wanted to find the architecture of the inferior. (In an unwinder in
particular, one can't use the frame's architecture, because there is
no frame.)
This patch adds Inferior.architecture to allow this. Normally I think
I would have chosen an attribute and not a method here, but seeing
that Frame.architecture is a method, I chose a method as well, for
consistency.
gdb/ChangeLog
2018-10-06 Tom Tromey <tom@tromey.com>
PR python/19399:
* python/py-inferior.c: Add "architecture" entry.
(infpy_architecture): New function.
gdb/doc/ChangeLog
2018-10-06 Tom Tromey <tom@tromey.com>
PR python/19399:
* python.texi (Inferiors In Python): Document
Inferior.Architecture.
gdb/testsuite/ChangeLog
2018-10-06 Tom Tromey <tom@tromey.com>
PR python/19399:
* gdb.python/py-inferior.exp: Add architecture test.
commit 51e78fc5fa21870d415c52f90b93e3c6ad57be46
Author: Tom Tromey <tom@tromey.com>
Date: Sat Oct 6 22:55:19 2018 -0600
Update symbol domain and location values for Python
In the distant past, there was no distinction between domain_enum and
search_domain. At that point, there were two sets of enumerators in a
single enum -- which is why these were eventually split. This
confusion leaked out to the Python API as well, as noted in
PR python/21765.
This patch deprecates the constants that aren't useful to the Python
API. They are left in place for now, but removed from the
documentation. Also, their values are changed so that, if used, they
might work. Finally, missing domains and location constants are
added.
gdb/ChangeLog
2018-10-06 Tom Tromey <tom@tromey.com>
PR python/21765:
* python/py-symbol.c (gdbpy_initialize_symbols): Redefine
SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
SYMBOL_TYPES_DOMAIN. Define SYMBOL_MODULE_DOMAIN,
SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
gdb/doc/ChangeLog
2018-10-06 Tom Tromey <tom@tromey.com>
PR python/21765:
* python.texi (Symbols In Python): Document the module and
common-block domains. Remove documentation for incorrect
domains.
commit f9e48344d54f45368a5e449fb2ccca70a723cd3a
Author: Tom Tromey <tom@tromey.com>
Date: Fri Sep 28 14:32:42 2018 -0600
Use standard_output_file in a couple more places
I noticed a few files left over in the testsuite/ directory in the
build tree after running tests. Normally output files should not wind
up there, but instead should end up in the test's subdirectory. This
isn't always crucial, but in the past there were problems with tests
clashing, preventing parallel runs, and so it is better to be clean
here.
This patch changes a couple of tests to use standard_output_file to
fix this problem.
Tested by re-running the tests in question and examining the
directory.
gdb/testsuite/ChangeLog
2018-10-06 Tom Tromey <tom@tromey.com>
* gdb.base/gnu-ifunc.exp (build): Use standard_output_file.
* gdb.trace/unavailable-dwarf-piece.exp: Use standard_output_file.
commit a8a5dbcab8df0b3a9e04745d4fe8d64740acb323
Author: Tom Tromey <tom@tromey.com>
Date: Wed Sep 26 06:54:17 2018 -0600
Do not accidentally include in-tree readline headers
PR build/17077 points out that when --with-system-readline is given,
gdb will still pick up the in-tree readline headers. Normally this is
not a big problem, because readline is very stable and so the ABI does
not change much; but it is clearly a bug to do this, and could bite at
some point.
The basic problem is that OPCODES_CFLAGS uses -I$(OPCODES_SRC)/.. so
that #include "opcodes/..." works. However, this also makes it so the
This patch fixes the problem in a mildly hacky way: remove the
offending -I option, and change gdb to use #include "../opcodes/..."
instead. This continues to make it clear where the header comes from,
without allowing incorrect behavior.
Tested by rebuilding and then looking at the *.Po files.
gdb/ChangeLog
2018-10-06 Tom Tromey <tom@tromey.com>
PR build/17077:
* Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
* arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
#include.
commit 2a8be20359dba9cc684fd3ffa222d985399f3b18
Author: Tom Tromey <tom@tromey.com>
Date: Tue Sep 18 06:27:09 2018 -0600
Fix Python gdb.Breakpoint.location crash
I noticed today that gdb.Breakpoint.location will crash when applied
to a catchpoint made with "catch throw".
The bug is that "catch throw" makes a breakpoint that is of type
bp_breakpoint, but which does not have a location.
Regression tested on x86-64 Fedora 28.
gdb/ChangeLog
2018-10-06 Tom Tromey <tom@tromey.com>
* python/py-breakpoint.c (bppy_get_location): Handle a
bp_breakpoint without a location.
gdb/testsuite/ChangeLog
2018-10-06 Tom Tromey <tom@tromey.com>
* gdb.python/py-breakpoint.exp (check_last_event): Check location
of a "throw" catchpoint.
commit 2fb009bbd1d65a837e5032e744ba30b49c7f472a
Author: Tom Tromey <tom@tromey.com>
Date: Sat Oct 6 22:01:42 2018 -0600
Update help text for commands implemented in Python
Philippe pointed out that the "enable frame-filter" help text looked
funny.
While fixing this I noticed a few more problems in the help text of
commands written in Python:
* Trailing newlines
* Wrong style for metasyntactic variables
* Indentation of the text
* ... and finally, I thought the function usage lines didn't need
that extra newline -- someday I'd like to be able to write a
"usage" command that just greps for the Usage line, so ideally it
would be tighter than what was done here
This patch fixes all the problems I noticed.
gdb/ChangeLog
2018-10-06 Tom Tromey <tom@tromey.com>
* python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
(_RegEx): Reformat help text.
* python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
(AnyCallerIs, AnyCallerMatches): Reformat help text.
* python/lib/gdb/function/as_string.py (_AsString): Reformat help
text.
* python/lib/gdb/command/xmethods.py (InfoXMethod)
(EnableXMethod, DisableXMethod): Remove help indentation.
Capitalize meta-syntactic variables.
* python/lib/gdb/command/unwinders.py (InfoUnwinder)
(EnableUnwinder, DisableUnwinder): Remove help indentation.
Capitalize meta-syntactic variables.
* python/lib/gdb/command/explore.py (ExploreCommand)
(ExploreValueCommand, ExploreTypeCommand): Reformat help text.
* python/lib/gdb/command/type_printers.py (InfoTypePrinter)
(EnableTypePrinter, DisableTypePrinter): Remove help indentation.
* python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
Remove help indentation.
(EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
* python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
(DisableFrameFilter, SetFrameFilterPriority)
(ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
commit 9e9b8787e962890a5df7ca109e40e87697610cb0
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Oct 7 00:01:19 2018 +0000
Automatic date update in version.in
commit 7a9569281a63e472750e3b7b481e2cdf5c931ed8
Author: Tom Tromey <tom@tromey.com>
Date: Mon Sep 3 15:23:48 2018 -0600
Call nonl before wgetch in TUI
PR tui/28819 points out that, in the TUI, the C-j and C-m keys cannot
be bound differently in one's ~/.inputrc. However, this works in
other readline applications.
The bug is that the TUI uses curses' "nl" mode, which causes wgetch to
return the same value for both keys. There is a "nonl" mode, but it
also affects output.
This patch fixes the bug by arranging to call nonl before reading a
key and then nl afterward. This avoids any potential problem with
changing the output if gdb was to use nonl globally.
gdb/ChangeLog
2018-10-06 Tom Tromey <tom@tromey.com>
PR tui/28819:
* tui/tui-io.c (gdb_wgetch): New function.
(tui_mld_getc, tui_getc): Use it.
commit e04caa70901ed44eb9537ccdbd286fe9b0a46ce2
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Sat Oct 6 11:23:02 2018 -0400
Update string expected from "help info proc" on gdb.base/info-proc.exp
Commit 73f1bd769a5 ("Make the "info proc" documentation more
consistent.") updated the output from "help info proc", but forgot to
update the test on gdb.base/info-proc.exp. This obvious patch does
that.
Checked-in as obvious.
gdb/testsuite/ChangeLog:
2018-10-06 Sergio Durigan Junior <sergiodj@redhat.com>
* gdb.base/info-proc.exp: Update string expected from "help info
proc".
commit ce3a1736b59a05128049459fcd6c91c221f40257
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Oct 6 00:00:33 2018 +0000
Automatic date update in version.in
commit a4e78aa5fed5ba2cc343c76b78d062291a6fb659
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Oct 5 11:56:42 2018 -0700
x86: Add Intel ENCLV to assembler and disassembler
gas/
* testsuite/gas/i386/se1.s: Add enclv.
* testsuite/gas/i386/x86-64-se1.s: Likewise.
* testsuite/gas/i386/se1.d: Updated.
* testsuite/gas/i386/x86-64-se1.d: Likewise.
opcodes/
* i386-dis.c (rm_table): Add enclv.
* i386-opc.tbl: Add enclv.
* i386-tbl.h: Regenerated.
commit f8740dc531c006311ee9f7287180550fe46a94ab
Author: Tom Tromey <tom@tromey.com>
Date: Fri Oct 5 07:28:16 2018 -0600
Fix -Wshadow=local warning in sol_thread_target::wait
Rainer pointed out that -Wshadow=local broke the Solaris build.
This fixes it.
gdb/ChangeLog
2018-10-05 Tom Tromey <tom@tromey.com>
* sol-thread.c (sol_thread_target::wait): Rename inner
"save_ptid".
commit d1c86cff1ecdd1027bd224d38f2161196e9955fa
Author: Alan Modra <amodra@gmail.com>
Date: Fri Oct 5 19:52:55 2018 +0930
Set correct SHT_NOTE type for .note.spu_name
* elf32-spu.c (spu_elf_create_sections): Make .note.spu_name
SHT_NOTE.
commit dad0c3bfb5e32ff3f2a03830dc189fe207c7ae00
Author: Sudakshina Das <sudi.das@arm.com>
Date: Fri Oct 5 10:51:22 2018 +0100
[Arm, 3/3] Add Execution and Data Prediction instructions for AArch32
This patch is part of the patch series to add support for ARMv8.5-A
extensions.
(https://developer.arm.com/products/architecture/cpu-architecture/a-profile/exploration-tools)
This patch adds the Execution and Data Prediction Restriction
instructions (that is, cfprctx, dvprxtc, cpprctx). These are all
aliases to MCR and are disassembled as such.
This instruction is retrospectively made optional for all versions of
the architecture from ARMv8.0 to ARMv8.4 and is mandatory from
ARMv8.5. Hence adding a new +predres for older versions of the
architecture.
*** include/ChangeLog ***
2018-10-05 Sudakshina Das <sudi.das@arm.com>
* opcode/arm.h (ARM_EXT2_PREDRES): New.
(ARM_ARCH_V8_5A): Add ARM_EXT2_PREDRES by default.
*** gas/ChangeLog ***
2018-10-05 Sudakshina Das <sudi.das@arm.com>
* config/tc-arm.c (arm_ext_predres): New.
(insns): Add new cfprctx, dvprctx and cpprctx instructions.
(arm_extensions): Add "predres".
* doc/c-arm.texi: Document the above.
* testsuite/gas/arm/predres-bad.d: New test.
* testsuite/gas/arm/predres-bad.l: New test.
* testsuite/gas/arm/predres.s: New test.
* testsuite/gas/arm/predres1.d: New test.
* testsuite/gas/arm/predres2.d: New test.
commit 7fadb25d6faf2665305016ceb4aeaeeb86015569
Author: Sudakshina Das <sudi.das@arm.com>
Date: Fri Oct 5 10:49:53 2018 +0100
[Arm, 2/3] Add instruction SB for AArch32
This patch is part of the patch series to add support for ARMv8.5-A
extensions.
(https://developer.arm.com/products/architecture/cpu-architecture/a-profile/exploration-tools)
This patch adds the instruction SB. This instruction is
retrospectively made optional for all versions of the architecture
from ARMv8.0 to ARMv8.4 and is mandatory from ARMv8.5. Hence adding a
new "+sb" for older archtectures.
*** include/ChangeLog ***
2018-10-05 Sudakshina Das <sudi.das@arm.com>
* opcode/arm.h (ARM_EXT2_SB): New.
(ARM_ARCH_V8_5A): Add ARM_EXT2_SB by default.
*** opcodes/ChangeLog ***
2018-10-05 Sudakshina Das <sudi.das@arm.com>
* arm-dis.c (arm_opcodes): Add sb.
(thumb32_opcodes): Likewise.
*** gas/ChangeLog ***
2018-10-05 Sudakshina Das <sudi.das@arm.com>
* config/tc-arm.c (arm_ext_sb): New.
(insns): Add new sb instruction.
(arm_extensions): Add "sb".
* doc/c-arm.texi: Document the above.
* testsuite/gas/arm/sb-bad.d: New test.
* testsuite/gas/arm/sb-bad.l: New test.
* testsuite/gas/arm/sb-thumb1.d: New test.
* testsuite/gas/arm/sb-thumb2.d: New test.
* testsuite/gas/arm/sb.s: New test.
* testsuite/gas/arm/sb1.d: New test.
* testsuite/gas/arm/sb2.d: New test.
commit 23f233a595dc7d8b9a6ababe7c4527f743c0cec1
Author: Sudakshina Das <sudi.das@arm.com>
Date: Fri Oct 5 10:47:29 2018 +0100
[Arm, 1/3] Add -march=armv8.5-a and related internal feature macros to AArch32
This patch is part of the patch series to add support for ARMv8.5-A
extensions.
(https://developer.arm.com/products/architecture/cpu-architecture/a-profile/exploration-tools)
This is the first of the patch series and adds -march=armv8.5-a and
other internal feature marcos needed for it.
*** gas/ChangeLog ***
2018-10-05 Sudakshina Das <sudi.das@arm.com>
* config/tc-arm.c (arm_archs): New entry for armv8.5-a.
(cpu_arch_ver): Likewise.
* doc/c-arm.texi: Add documentation for the same.
* testsuite/gas/arm/attr-march-armv8_5-a.d: New.
*** include/ChnageLog ***
2018-10-05 Sudakshina Das <sudi.das@arm.com>
* opcode/arm.h (ARM_EXT2_V8_5A): New.
(ARM_AEXT2_V8_5A, ARM_ARCH_V8_5A): New.
commit 96643e35c077ed36c74b231ceefa4c30b3b02e28
Author: Tom Tromey <tom@tromey.com>
Date: Sat Apr 21 16:09:10 2018 -0600
Add -Wshadow=local
This adds -Wshadow=local to configure.
gdb/ChangeLog
2018-10-04 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
* warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
gdb/gdbserver/ChangeLog
2018-10-04 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
commit d951f98b3c8bf202571327d8679ae30ca1da9fdc
Author: Tom Tromey <tom@tromey.com>
Date: Sun Apr 22 10:46:03 2018 -0600
Shadowing fix in gdbscm_frame_read_var
-Wshadow=local pointed out that the shadowing in gdbscm_frame_read_var
means that the ultimate call to read_var_value will always be passed
block==NULL. The fix is to remove the inner declaration.
gdb/ChangeLog
2018-10-04 Tom Tromey <tom@tromey.com>
* guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
declaration of "block".
commit b8c888478d517a39d8b0104857d573e47620a3d1
Author: Tom Tromey <tom@tromey.com>
Date: Sun Apr 22 10:11:32 2018 -0600
Avoid shadowing in fdwalk
-Wshadow=local caught this buglet. fdwalk redeclares "result" in the
inner scope, meaning that this function will always return 0, even on
error.
gdb/ChangeLog
2018-10-04 Tom Tromey <tom@tromey.com>
* common/filestuff.c (fdwalk): Remove inner declaration of
"result".
commit ef789dc484a35159ad825c98c4a2502f2097aed7
Author: Tom Tromey <tom@tromey.com>
Date: Sat Apr 21 22:42:00 2018 -0600
Fix latent bug in msp430-tdep.c
-Wshadow=local found this latent bug. msp430-tdep.c does:
const gdb_byte *arg_bits;
{
/* Aggregates of any size are passed by reference. */
gdb_byte struct_addr[4];
[...
arg_bits = struct_addr;
}
... use arg_bits
Here, arg_bits can point to an object that's gone out of scope.
The fix is to hoist the inner "struct_addr" buffer to an outer scope,
and rename it to avoid shadowing.
gdb/ChangeLog
2018-10-04 Tom Tromey <tom@tromey.com>
* msp430-tdep.c (msp430_push_dummy_call): Rename inner
"structs_addr" and hoist declaration.
commit 3fba72f7612c071f07fc7e65887bd1e8e056e272
Author: Tom Tromey <tom@tromey.com>
Date: Sun Apr 22 10:46:51 2018 -0600
Avoid shadowing in linux-tdep.c
This is one of the uglier changes to avoid local shadowing. Because
obstack.h uses statement expressions, in some cases a nested obstack
call will result in shadowing. Rather than try to fix obstack.h, this
patch simply works around the one instance of this problem.
gdb/ChangeLog
2018-10-04 Tom Tromey <tom@tromey.com>
* linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
variable "size".
commit 795afcbbb4b6c9a47597b9da57221b1bf9fdc88f
Author: Tom Tromey <tom@tromey.com>
Date: Sun Apr 22 10:26:18 2018 -0600
Use std::string in mdebugread.c
This changes a couple of spots in mdebugread to use std::string rather
than manual management. This is simpler, and also avoids shadowing by
renaming the variable in question.
gdb/ChangeLog
2018-10-04 Tom Tromey <tom@tromey.com>
* mdebugread.c (parse_partial_symbols): Use std::string.
commit da4ae14a4d1614015f6e8d4a37df1b882806630a
Author: Tom Tromey <tom@tromey.com>
Date: Sun Apr 22 10:50:27 2018 -0600
Avoid shadowing in gdbserver
This fixes a few instances of shadowing in gdbserver. These are all
simple fixes.
gdb/gdbserver/ChangeLog
2018-10-04 Tom Tromey <tom@tromey.com>
* server.c (handle_status): Rename inner "thread".
(process_serial_event): Declare "res" in 'm' case.
* linux-low.c (last_thread_of_process_p, find_lwp_pid)
(iterate_over_lwps): Rename inner "thread".
(linux_qxfer_libraries_svr4): Rename inner "len".
* gdbthread.h (find_thread_in_random): Rename inner "thread".
commit b926417afaea99ed17663e06d6654d0048536017
Author: Tom Tromey <tom@tromey.com>
Date: Sat Apr 21 16:16:27 2018 -0600
Simple -Wshadow=local fixes
This fixes all the straightforward -Wshadow=local warnings in gdb. A
few standard approaches are used here:
* Renaming an inner (or outer, but more commonly inner) variable;
* Lowering a declaration to avoid a clash;
* Moving a declaration into a more inner scope to avoid a clash,
including the special case of moving a declaration into a loop header.
I did not consider any of the changes in this patch to be particularly
noteworthy, though of course they should all still be examined.
gdb/ChangeLog
2018-10-04 Tom Tromey <tom@tromey.com>
* ctf.c (SET_ARRAY_FIELD): Rename "u32".
* p-valprint.c (pascal_val_print): Split inner "i" variable.
* xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
header.
* xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
more inner scope.
* xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
* varobj.c (varobj_update): Rename inner "newobj",
"type_changed".
* valprint.c (generic_emit_char): Rename inner "buf".
* valops.c (find_overload_match): Rename inner "temp".
(value_struct_elt_for_reference): Declare "v" in more inner
scope.
* v850-tdep.c (v850_push_dummy_call): Rename "len".
* unittests/array-view-selftests.c (run_tests): Rename inner
"vec".
* tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
header.
* tracepoint.c (merge_uploaded_trace_state_variables): Declare
"tsv" in more inner scope.
(print_one_static_tracepoint_marker): Rename inner
"tuple_emitter".
* tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
(tic6x_push_dummy_call): Don't redeclare "addr".
* target-float.c: Declare "dto" lower.
* symtab.c (lookup_local_symbol): Rename inner "sym".
(find_pc_sect_line): Rename inner "pc".
* stack.c (print_frame): Don't redeclare "gdbarch".
(return_command): Rename inner "gdbarch".
* s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
"sp".
* rust-lang.c (rust_internal_print_type): Declare "i" in loop
header.
* rs6000-tdep.c (ppc_process_record): Rename inner "addr".
* riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
scope.
* remote.c (remote_target::update_thread_list): Don't redeclare
"tp".
(remote_target::process_initial_stop_replies): Rename inner
"thread".
(remote_target::remote_parse_stop_reply): Don't redeclare "p".
(remote_target::wait_as): Don't redeclare "stop_reply".
(remote_target::get_thread_local_address): Rename inner
"result".
(remote_target::get_tib_address): Likewise.
commit 1f88d0c87c37d3a15fa6376335e8b0d1c79d85aa
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Thu Oct 4 22:43:27 2018 -0400
Fix undefined behavior, don't pass NULL to fwrite
If a vector that we try to write using file_write is empty, we may end
up passing NULL to fwrite, which triggers UBSan:
.../gdb/dwarf-index-write.c:73:14: runtime error: null pointer passed as argument 1, which is declared to never be null
Avoid it by skipping the write if the vector is empty.
gdb/ChangeLog:
* dwarf-index-write.c (file_write): Don't write if the vector is
empty.
commit 1f041c6edf49a896b99db253066fce427a7d2264
Author: Stafford Horne <shorne@gmail.com>
Date: Fri Oct 5 11:41:42 2018 +0900
or1k: Add OpenRISC gas documentation
gas/ChangeLog:
yyyy-mm-dd Stafford Horne <shorne@gmail.com>
* doc/Makefile.am (CPU_DOCS): Add entry for OpenRISC.
* doc/Makefile.in: Regenerated.
* doc/all.texi: Set OPENRISC.
* doc/as.texi: Document OpenRISC.
* doc/c-or1k.texi: New file.
commit 07f5f4c683879e844d20d0d4963bbaf1b7cd47b9
Author: Richard Henderson <rth@redhat.com>
Date: Fri Oct 5 11:41:41 2018 +0900
or1k: Add the l.muld, l.muldu, l.macu, l.msbu insns
Also fix the incorrect definitions of multiply and divide carry and
overflow float.
Changes to the instructions are made in the .cpu file, then we
regenerate the binutils and sim files.
The changes also required a few fixups for tests and additional sim helpers.
cpu/ChangeLog:
yyyy-mm-dd Richard Henderson <rth@twiddle.net>
Stafford Horne <shorne@gmail.com>
* or1korbis.cpu (insn-opcode-mac): Add opcodes for MACU and MSBU.
(insn-opcode-alu-regreg): Add opcodes for MULD and MULDU.
(l-mul): Fix overflow support and indentation.
(l-mulu): Fix overflow support and indentation.
(l-muld, l-muldu, l-msbu, l-macu): New instructions.
(l-div); Remove incorrect carry behavior.
(l-divu): Fix carry and overflow behavior.
(l-mac): Add overflow support.
(l-msb, l-msbu): Add carry and overflow support.
opcodes/ChangeLog:
yyyy-mm-dd Richard Henderson <rth@twiddle.net>
Stafford Horne <shorne@gmail.com>
* or1k-desc.c: Regenerate.
* or1k-desc.h: Regenerate.
* or1k-opc.c: Regenerate.
* or1k-opc.h: Regenerate.
* or1k-opinst.c: Regenerate.
sim/common/ChangeLog:
yyyy-mm-dd Stafford Horne <shorne@gmail.com>
* cgen-ops.h (ADDCFDI): New function, add carry flag DI variant.
(ADDOFDI): New function, add overflow flag DI variant.
(SUBCFDI): New function, subtract carry flag DI variant.
(SUBOFDI): New function, subtract overflow flag DI variant.
sim/ChangeLog:
yyyy-mm-dd Stafford Horne <shorne@gmail.com>
* or1k/cpu.h: Regenerate.
* or1k/decode.c: Regenerate.
* or1k/decode.h: Regenerate.
* or1k/model.c: Regenerate.
* or1k/sem-switch.c: Regenerate.
* or1k/sem.c: Regenerate:
sim/testsuite/sim/or1k/ChangeLog:
yyyy-mm-dd Stafford Horne <shorne@gmail.com>
* div.S: Fix tests to match correct overflow/carry semantics.
* mul.S: Likewise.
gas/ChangeLog:
yyyy-mm-dd Stafford Horne <shorne@gmail.com>
* testsuite/gas/or1k/allinsn.s: Add instruction tests for
l.muld, l.muldu, l.macu, l.msb, l.msbu.
* testsuite/gas/or1k/allinsn.d: Add test results for new
instructions.
commit c8e98e3692cec125b92c995d8f881d9bdf1fac00
Author: Stafford Horne <shorne@gmail.com>
Date: Fri Oct 5 11:41:41 2018 +0900
or1k: Add the l.adrp insn and supporting relocations
This patch adds the new instruction and relocation as per proposal:
https://openrisc.io/proposals/ladrp
This is to be added to the spec in an upcoming revision. The new instruction
l.adrp loads the page offset of the current instruction offset by
a 21-bit immediate shifted left 13-bits. This is meant to be used with
a 13-bit lower bit page offset. This allows us to free up the got
register r16.
l.adrp r3, foo
l.ori r4, r3, po(foo)
l.lbz r5, po(foo)(r3)
l.sb po(foo)(r3), r6
The relocations we add are:
- BFD_RELOC_OR1K_PLTA26 For PLT jump relocation with PLT entry
asm: plta() implemented using l.ardp, meaning
no need for r16 (the GOT reg)
- BFD_RELOC_OR1K_GOT_PG21 Upper 21-bit Page offset got address
asm: got()
- BFD_RELOC_OR1K_TLS_GD_PG21 Upper 21-bit Page offset with TLS General
asm: tlsgd() Dynamic calculation
- BFD_RELOC_OR1K_TLS_LDM_PG21 Upper 21-bit Page offset with TLS local
asm: tlsldm() dynamic calculation
- BFD_RELOC_OR1K_TLS_IE_PG21 Upper 21-bit Page offset with TLS Initial
asm: gottp() Executable calculation
- BFD_RELOC_OR1K_PCREL_PG21 Default relocation for disp21 (l.adrp
instructions)
- BFD_RELOC_OR1K_LO13 low 13-bit page offset relocation
asm: po() i.e. mem loads, addi etc
- BFD_RELOC_OR1K_SLO13 low 13-bit page offset relocation
asm: po() i.e. mem stores, with split immediate
- BFD_RELOC_OR1K_GOT_LO13, low 13-bit page offset with GOT calcs
asm: gotpo()
- BFD_RELOC_OR1K_TLS_GD_LO13 Lower 13-bit offset with TLS GD calcs
asm: tlsgdpo()
- BFD_RELOC_OR1K_TLS_LDM_LO13 Lower 13-bit offset with TLS LD calcs
asm: tlsldmpo()
- BFD_RELOC_OR1K_TLS_IE_LO13 Lower 13-bit offset with TLS IE calcs
asm: gottppo()
bfd/ChangeLog:
yyyy-mm-dd Richard Henderson <rth@twiddle.net>
* bfd-in2.h: Regenerated.
* elf32-or1k.c: (or1k_elf_howto_table): Fix formatting for
R_OR1K_PLT26, Add R_OR1K_PCREL_PG21, R_OR1K_GOT_PG21,
R_OR1K_TLS_GD_PG21, R_OR1K_TLS_LDM_PG21, R_OR1K_TLS_IE_PG21,
R_OR1K_LO13, R_OR1K_GOT_LO13, R_OR1K_TLS_GD_LO13, R_OR1K_TLS_LDM_LO13,
R_OR1K_TLS_IE_LO13, R_OR1K_SLO13, R_OR1K_PLTA26.
(or1k_reloc_map): Add BFD_RELOC_OR1K_PCREL_PG21,
BFD_RELOC_OR1K_GOT_PG21, BFD_RELOC_OR1K_TLS_GD_PG21,
BFD_RELOC_OR1K_TLS_LDM_PG21, BFD_RELOC_OR1K_TLS_IE_PG21,
BFD_RELOC_OR1K_LO13, BFD_RELOC_OR1K_GOT_LO13,
BFD_RELOC_OR1K_TLS_GD_LO13, BFD_RELOC_OR1K_TLS_GD_LO13,
BFD_RELOC_OR1K_TLS_LDM_LO13, BFD_RELOC_OR1K_TLS_IE_LO13,
BFD_RELOC_OR1K_SLO13, BFD_RELOC_OR1K_PLTA26.
(elf_or1k_link_hash_table): Add field saw_plta.
(or1k_final_link_relocate): Add value calculations for new relocations.
(or1k_elf_relocate_section): Add section relocations for new
relocations.
(or1k_write_plt_entry): New function.
(or1k_elf_finish_dynamic_sections): Add support for PLTA relocations
using new l.adrp instruction. Cleanup PLT relocation code generation.
* libbfd.h: Regenerated.
* reloc.c: Add BFD_RELOC_OR1K_PCREL_PG21, BFD_RELOC_OR1K_LO13,
BFD_RELOC_OR1K_SLO13, BFD_RELOC_OR1K_GOT_PG21, BFD_RELOC_OR1K_GOT_LO13,
BFD_RELOC_OR1K_PLTA26, BFD_RELOC_OR1K_TLS_GD_PG21,
BFD_RELOC_OR1K_TLS_GD_LO13, BFD_RELOC_OR1K_TLS_LDM_PG21,
BFD_RELOC_OR1K_TLS_LDM_LO13, BFD_RELOC_OR1K_TLS_IE_PG21,
BFD_RELOC_OR1K_TLS_IE_LO13.
cpu/ChangeLog:
yyyy-mm-dd Richard Henderson <rth@twiddle.net>
* or1k.opc (parse_disp26): Add support for plta() relocations.
(parse_disp21): New function.
(or1k_rclass): New enum.
(or1k_rtype): New enum.
(or1k_imm16_relocs): Define new PO and SPO relocation mappings.
(parse_reloc): Add new po(), gotpo() and gottppo() for LO13 relocations.
(parse_imm16): Add support for the new 21bit and 13bit relocations.
* or1korbis.cpu (f-disp26): Don't assume SI.
(f-disp21): New pc-relative 21-bit 13 shifted to right.
(insn-opcode): Add ADRP.
(l-adrp): New instruction.
gas/ChangeLog:
yyyy-mm-dd Richard Henderson <rth@twiddle.net>
* config/tc-or1k.c (or1k_apply_fix): Add BFD_RELOC_OR1K_TLS_GD_PG21,
BFD_RELOC_OR1K_TLS_GD_LO13, BFD_RELOC_OR1K_TLS_LDM_PG21,
BFD_RELOC_OR1K_TLS_LDM_LO13, BFD_RELOC_OR1K_TLS_IE_PG21,
BFD_RELOC_OR1K_TLS_IE_LO13.
* testsuite/gas/or1k/allinsn.s: Add test for l.adrp.
* testsuite/gas/or1k/allinsn.d: Add test results for new
instructions.
* testsuite/gas/or1k/reloc-1.s: Add tests to generate
R_OR1K_PLTA26, R_OR1K_GOT_PG21, R_OR1K_TLS_GD_PG21, R_OR1K_TLS_LDM_PG21,
R_OR1K_TLS_IE_PG21, R_OR1K_LO13, R_OR1K_GOT_LO13, R_OR1K_TLS_GD_LO13,
R_OR1K_TLD_LDM_LO13, R_OR1K_TLS_IE_LO13, R_OR1K_LO13, R_OR1K_SLO13
relocations.
* testsuite/gas/or1k/reloc-1.d: Add relocation results for
tests.
* testsuite/gas/or1k/reloc-2.s: Add negative tests for store to
gotpo().
* testsuite/gas/or1k/reloc-2.l: Add expected error test results.
ld/ChangeLog:
yyyy-mm-dd Richard Henderson <rth@twiddle.net>
* testsuite/ld-or1k/or1k.exp: Add test cases for plt generation.
* testsuite/ld-or1k/plt1.dd: New file.
* testsuite/ld-or1k/plt1.s: New file.
* testsuite/ld-or1k/plt1.x.dd: New file.
* testsuite/ld-or1k/plta1.dd: New file.
* testsuite/ld-or1k/plta1.s: New file.
* testsuite/ld-or1k/pltlib.s: New file.
include/ChangeLog:
yyyy-mm-dd Richard Henderson <rth@twiddle.net>
* elf/or1k.h (elf_or1k_reloc_type): Add R_OR1K_PCREL_PG21,
R_OR1K_GOT_PG21, R_OR1K_TLS_GD_PG21, R_OR1K_TLS_LDM_PG21,
R_OR1K_TLS_IE_PG21, R_OR1K_LO13, R_OR1K_GOT_LO13,
R_OR1K_TLS_GD_LO13, R_OR1K_TLS_LDM_LO13, R_OR1K_TLS_IE_LO13,
R_OR1K_SLO13, R_OR1K_PLTA26.
opcodes/ChangeLog:
yyyy-mm-dd Richard Henderson <rth@twiddle.net>
* or1k-asm.c: Regenerated.
* or1k-desc.c: Regenerated.
* or1k-desc.h: Regenerated.
* or1k-dis.c: Regenerated.
* or1k-ibld.c: Regenerated.
* or1k-opc.c: Regenerated.
* or1k-opc.h: Regenerated.
* or1k-opinst.c: Regenerated.
commit f2c1801f6255a3f9f483ae2f07c7d7da0ddae4af
Author: Stafford Horne <shorne@gmail.com>
Date: Fri Oct 5 11:41:41 2018 +0900
or1k: Fix messages for relocations in shared libraries
Added checks include:
- Do not allow relocations to global symbols using relocations which are
meant for local symbol relocations.
- Require the use of -fpic when compiling shared libraries.
- Require zero addend for plt relocations.
bfd/ChangeLog:
yyyy-mm-dd Richard Henderson <rth@twiddle.net>
* elf32-or1k.c (or1k_elf_relocate_section): Add error for unknown
relocations. Add error for non zero addend with plt and got
relocations. Add error for got and plt references against dynamic, non
local, symbols. Add error when linking non shared liraries with
flag_pic.
commit 1c4f3780f7d939402cfe555007ebff45c8e38951
Author: Richard Henderson <rth@redhat.com>
Date: Fri Oct 5 11:41:40 2018 +0900
or1k: Add relocations for high-signed and low-stores
This patch adds the following target relocations:
- BFD_RELOC_HI16_S High 16-bit relocation, for used with signed
asm: ha() lower.
- BFD_RELOC_HI16_S_GOTOFF High 16-bit GOT offset relocation for local
asm: gotoffha() symbols, for use with signed lower.
- BFD_RELOC_OR1K_TLS_IE_AHI16 High 16-bit TLS relocation with initial
asm: gottpoffha() executable calculation, for use with signed
lower.
- BFD_RELOC_OR1K_TLS_LE_AHI16 High 16-bit TLS relocation for local executable
asm: tpoffha() variables, for use with signed lower.
- BFD_RELOC_OR1K_SLO16 Split lower 16-bit relocation, used with
asm: lo() OpenRISC store instructions.
- BFD_RELOC_OR1K_GOTOFF_SLO16 Split lower 16-bit GOT offset relocation for
asm: gotofflo() local symbols, used with OpenRISC store
instructions.
- BFD_RELOC_OR1K_TLS_LE_SLO16 Split lower 16-bit relocation for TLS local
asm: tpofflo() executable variables, used with OpenRISC store
instructions.
bfd/ChangeLog:
yyyy-mm-dd Richard Henderson <rth@twiddle.net>
Stafford Horne <shorne@gmail.com>
* bfd-in2.h: Regenerated.
* elf32-or1k.c (N_ONES): New macro.
(or1k_elf_howto_table): Fix R_OR1K_PLT26 to complain on overflow.
Add definitions for R_OR1K_TLS_TPOFF, R_OR1K_TLS_DTPOFF,
R_OR1K_TLS_DTPMOD, R_OR1K_AHI16, R_OR1K_GOTOFF_AHI16,
R_OR1K_TLS_IE_AHI16, R_OR1K_TLS_LE_AHI16, R_OR1K_SLO16,
R_OR1K_GOTOFF_SLO16, R_OR1K_TLS_LE_SLO16.
(or1k_reloc_map): Add entries for BFD_RELOC_HI16_S,
BFD_RELOC_LO16_GOTOFF, BFD_RELOC_HI16_GOTOFF, BFD_RELOC_HI16_S_GOTOFF,
BFD_RELOC_OR1K_TLS_IE_AHI16, BFD_RELOC_OR1K_TLS_LE_AHI16,
BFD_RELOC_OR1K_SLO16, BFD_RELOC_OR1K_GOTOFF_SLO16,
BFD_RELOC_OR1K_TLS_LE_SLO16.
(or1k_reloc_type_lookup): Change search loop to start ad index 0 and
also check results before returning.
(or1k_reloc_name_lookup): Simplify loop to use R_OR1K_max as index
limit.
(or1k_final_link_relocate): New function.
(or1k_elf_relocate_section): Add support for new AHI and SLO
relocations. Use or1k_final_link_relocate instead of generic
_bfd_final_link_relocate.
(or1k_elf_check_relocs): Add support for new AHI and SLO relocations.
* reloc.c: Add new enums for BFD_RELOC_OR1K_SLO16,
BFD_RELOC_OR1K_GOTOFF_SLO16, BFD_RELOC_OR1K_TLS_IE_AHI16,
BFD_RELOC_OR1K_TLS_IE_AHI16, BFD_RELOC_OR1K_TLS_LE_AHI16,
BFD_RELOC_OR1K_TLS_LE_SLO16. Remove unused BFD_RELOC_OR1K_GOTOFF_HI16
and BFD_RELOC_OR1K_GOTOFF_LO16.
* libbfd.h: Regenerated.
cpu/ChangeLog:
yyyy-mm-dd Richard Henderson <rth@twiddle.net>
* or1k.opc: Add RTYPE_ enum.
(INVALID_STORE_RELOC): New string.
(or1k_imm16_relocs): New array array.
(parse_reloc): New static function that just does the parsing.
(parse_imm16): New static function for generic parsing.
(parse_simm16): Change to just call parse_imm16.
(parse_simm16_split): New function.
(parse_uimm16): Change to call parse_imm16.
(parse_uimm16_split): New function.
* or1korbis.cpu (simm16-split): Change to use new simm16_split.
(uimm16-split): Change to use new uimm16_split.
gas/ChangeLog:
yyyy-mm-dd Richard Henderson <rth@twiddle.net>
* testsuite/gas/or1k/allinsn.d (l_ha): Add result for ha() relocation.
* testsuite/gas/or1k/allinsn.s (l_ha): Add test for ha() relocations.
* testsuite/gas/or1k/allinsn.exp: Renamed to or1k.exp.
* testsuite/gas/or1k/or1k.exp: Add reloc-2 list test.
* testsuite/gas/or1k/reloc-1.d: New file.
* testsuite/gas/or1k/reloc-1.s: New file.
* testsuite/gas/or1k/reloc-2.l: New file.
* testsuite/gas/or1k/reloc-2.s: New file.
include/ChangeLog:
yyyy-mm-dd Richard Henderson <rth@twiddle.net>
* elf/or1k.h (elf_or1k_reloc_type): Add R_OR1K_AHI16,
R_OR1K_GOTOFF_AHI16, R_OR1K_TLS_IE_AHI16, R_OR1K_TLS_LE_AHI16,
R_OR1K_SLO16, R_OR1K_GOTOFF_SLO16, R_OR1K_TLS_LE_SLO16.
ld/ChangeLog:
yyyy-mm-dd Richard Henderson <rth@twiddle.net>
* testsuite/ld-or1k/offsets1.d: New file.
* testsuite/ld-or1k/offsets1.s: New file.
* testsuite/ld-or1k/or1k.exp: New file.
opcodes/ChangeLog:
yyyy-mm-dd Richard Henderson <rth@twiddle.net>
* or1k-asm.c: Regenerate.
commit 4677effd9e320d9f09337ef17bf0dc0377a9e8ce
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Oct 5 00:00:44 2018 +0000
Automatic date update in version.in
commit 5c4481cc9bf9dfec3c35aaf5d95b08542ab8970b
Author: Tom de Vries <tdevries@suse.de>
Date: Tue Oct 2 21:47:54 2018 +0200
[gdb/python] Fix cpychecker error in pspy_solib_name
When using cpychecker, we run into:
...
gdb/python/py-progspace.c: \
In function âPyObject* pspy_solib_name(PyObject*, PyObject*)â:
gdb/python/py-progspace.c:370:25: error: Mismatching type in call to \
PyArg_ParseTuple with format code "K" [-Werror]
if (!PyArg_ParseTuple (args, GDB_PY_LLU_ARG, &pc))
argument 3 ("&pc") had type
"gdb_py_longest *" (pointing to 64 bits)
but was expecting
"long long unsigned int *" (pointing to 64 bits)
for format code "K"
...
Fix this fixing the type of the variable.
Build and reg-tested on x86_64-linux.
2018-10-05 Tom de Vries <tdevries@suse.de>
* python/py-progspace.c (pspy_solib_name): Fix type mismatch in
PyArg_ParseTuple call.
commit 96b1ad866b1c861f772c5a11b556766c73c3d1ab
Author: Tom de Vries <tdevries@suse.de>
Date: Tue Oct 2 21:47:37 2018 +0200
[gdb/python] Fix cpychecker error in recpy_bt_goto
When using cpychecker, we run into this error:
...
gdb/python/py-record-btrace.c: \
In function âPyObject* recpy_bt_goto(PyObject*, PyObject*)â:
gdb/python/py-record-btrace.c:783:25: error: Mismatching type in call to \
PyArg_ParseTuple with format code "O" [-Werror]
if (!PyArg_ParseTuple (args, "O", &obj))
argument 3 ("&obj") had type
"const struct recpy_element_object * *"
but was expecting
"struct PyObject * *"
for format code "O"
...
Fix this by using a new variable of the expected type instead.
Build and reg-tested on x86_64-linux.
2018-10-05 Tom de Vries <tdevries@suse.de>
* python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
PyArg_ParseTuple call.
commit d2f7dcb218cc281288a5c3ea800a186c68f9d2ae
Author: Joel Brobecker <brobecker@adacore.com>
Date: Thu Oct 4 18:04:13 2018 -0400
reformat parameters of gdb/psymtab.c::recursively_search_psymtabs
This is just to make sure one of the parameters doesn't end past
the 80 characters limit. And while at it, since all parameters were
on their own line except the first two that were listed on the same
line, it felf more consistent to just split them to have each and
every parameter on their own line.
gdb/ChangeLog:
* psymtab.c (recursively_search_psymtabs): Reformat parameters
to avoid exceeding 80 characters per line limit.
Tested by rebuilding GDB on x86_64-linux.
commit 3e1b4df89cfa5171c52245d79434774f4b570ae1
Author: Jim Wilson <jimw@sifive.com>
Date: Thu Oct 4 13:29:57 2018 -0700
RISC-V: Delete zero-size .tdata.dyn section.
bfd/
* elfnn-riscv.c (riscv_elf_size_dynamic_sections): In dynobj->sections
loop, handle htab->sdyntdata section.
commit 5ca8c39f059b30991b7090e7a662e4eb35d11133
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 27 21:31:14 2018 -0600
Simplify complaints even more
This removes the SHORT_FIRST_MESSAGE case from complaints, leaving
only a single case. This allows for the removal of the last argument
to clear_complaints, and also simplifies complaint_internal, removing
an extra allocation in the process.
After this, the "./gdb -iex 'set complaint 1' -nx ./gdb" example will
show:
Reading symbols from ./gdb...
During symbol reading: .debug_ranges entry has start address of zero [in module /home/tromey/gdb/build/gdb/gdb]
During symbol reading: DW_AT_low_pc 0x0 is zero for DIE at 0x17116c1 [in module /home/tromey/gdb/build/gdb/gdb]
During symbol reading: .debug_line address at offset 0xa22f5 is 0 [in module /home/tromey/gdb/build/gdb/gdb]
During symbol reading: unsupported tag: 'DW_TAG_unspecified_type'
During symbol reading: const value length mismatch for 'std::ratio<1, 1000000000>::num', got 8, expected 0
This is a bit wordier but, I think, a bit more clear, as the form of
the message no longer depends on precisely when it was emitted. In
particular if you compare to the output from the 'Clean up "Reading
symbols" output' patch, you can see that earlier gdb would switch from
the prefix-less form to the "During symbol reading" form at a point
that is meaningless to the user (specifically, after psymtab reading
is done and gdb tries to expand a CU).
2018-10-04 Tom Tromey <tom@tromey.com>
* symfile.c (syms_from_objfile_1, finish_new_objfile)
(reread_symbols): Update.
* complaints.h (clear_complaints): Remove argument.
* complaints.c (enum complaint_series): Remove.
(series): Remove global.
(complaint_internal): Update.
(clear_complaints): Remove argument.
gdb/testsuite/ChangeLog
2018-10-04 Tom Tromey <tom@tromey.com>
* gdb.cp/maint.exp (test_invalid_name): Update expected output.
* gdb.gdb/complaints.exp (test_short_complaints): Remove.
(test_initial_complaints, test_empty_complaints): Update.
* gdb.dwarf2/dw2-stack-boundary.exp: Update.
commit e79497a160f38368688107520d7d1bd0aeafc1c7
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 27 21:12:58 2018 -0600
Only print "no debugging symbols" message once
The "no debugging symbols" message can be confusing in some cases, for
example when gdb finds separate debug info for an objfile, but the
separate debug info does not contain symbols.
For example:
(gdb) file /bin/ls
Reading symbols from /bin/ls...
Reading symbols from .gnu_debugdata for /usr/bin/ls...
(No debugging symbols found in .gnu_debugdata for /usr/bin/ls)
(No debugging symbols found in /bin/ls)
Here, I think the second "no debugging symbols" message is redundant
and confusing.
This patch changes gdb to only emit this message when the objfile in
question does not have a separate debug file. So, in the example
above, the output would now read:
(gdb) file /bin/ls
Reading symbols from /bin/ls...
Reading symbols from .gnu_debugdata for /usr/bin/ls...
(No debugging symbols found in .gnu_debugdata for /usr/bin/ls)
2018-10-04 Tom Tromey <tom@tromey.com>
* symfile.c (symbol_file_add_with_addrs): Do not print "no
debugging symbols" message if there is a separate debug objfile.
commit 3453e7e409f44a79ac6695589836edb8a49bfb08
Author: Tom Tromey <tom@tromey.com>
Date: Sat May 19 11:25:20 2018 -0600
Clean up "Reading symbols" output
This patch is another attempt to fix PR cli/19551. Unlike my previous
attempt, it doesn't print progress. Instead, it just changes some
messages and adds newlines to make the output a bit nicer.
It also removes the "done." text that was previously emitted. The
idea here is that it is obvious when gdb is done reading debug info,
as it starts then doing something else; and that while this message
did not provide much benefit to users, it did make it harder to make
the output clean.
After this change the output from "./gdb -iex 'set complaint 1' -nx ./gdb"
reads:
Reading symbols from ./gdb...
.debug_ranges entry has start address of zero [in module /home/tromey/gdb/build/gdb/gdb]
DW_AT_low_pc 0x0 is zero for DIE at 0x17116c1 [in module /home/tromey/gdb/build/gdb/gdb]
.debug_line address at offset 0xa22f5 is 0 [in module /home/tromey/gdb/build/gdb/gdb]
During symbol reading, unsupported tag: 'DW_TAG_unspecified_type'.
During symbol reading, const value length mismatch for 'std::ratio<1, 1000000000>::num', got 8, expected 0.
gdb/ChangeLog
2018-10-04 Tom Tromey <tom@tromey.com>
PR cli/19551:
* symfile.c (symbol_file_add_with_addrs): Update output.
* psymtab.c (require_partial_symbols): Update output.
gdb/testsuite/ChangeLog
2018-10-04 Tom Tromey <tom@tromey.com>
PR cli/19551:
* lib/mi-support.exp (mi_gdb_file_cmd): Update.
* lib/gdb.exp (gdb_file_cmd): Update.
* gdb.stabs/weird.exp (print_weird_var): Update.
* gdb.server/solib-list.exp: Update.
* gdb.multi/remove-inferiors.exp (test_remove_inferiors): Update.
* gdb.mi/mi-cli.exp: Update.
* gdb.linespec/linespec.exp: Update.
* gdb.dwarf2/dw2-stack-boundary.exp: Update.
* gdb.dwarf2/dw2-objfile-overlap.exp: Update.
* gdb.cp/cp-relocate.exp: Update.
* gdb.base/sym-file.exp: Update.
* gdb.base/relocate.exp: Update.
* gdb.base/readnever.exp: Update.
* gdb.base/print-symbol-loading.exp (test_load_core): Update.
* gdb.base/kill-detach-inferiors-cmd.exp: Update.
* gdb.base/dbx.exp (gdb_file_cmd): Update.
* gdb.base/code_elim.exp: Update.
* gdb.base/break-unload-file.exp (test_break): Update.
* gdb.base/break-interp.exp (test_attach_gdb): Update.
* gdb.base/break-idempotent.exp (force_breakpoint_re_set):
Update.
* gdb.base/attach.exp (do_attach_tests): Update.
* gdb.base/sepdebug.exp: Update.
* gdb.python/py-section-script.exp: Update.
commit 6afcf761c2d8ffcb04ede75d1e670042e196bc5b
Author: Tom Tromey <tom@tromey.com>
Date: Wed May 16 23:30:43 2018 -0600
Make complaint output prettier
Currently complaints are not always printed with a newline. For
example, when I run gdb on itself, I see output like:
(gdb) set complaints 5
(gdb) file ./gdb/gdb
Reading symbols from ./gdb/gdb...DW_AT_low_pc 0x0 is zero for DIE at 0x437dd4 [in module /home/tromey/gdb/build/gdb/gdb]....debug_line address at offset 0x21bf9 is 0 [in module /home/tromey/gdb/build/gdb/gdb]...DW_AT_low_pc 0x0 is zero for DIE at 0x5a85dd [in module /home/tromey/gdb/build/gdb/gdb]....debug_line address at offset 0x2dc2d is 0 [in module /home/tromey/gdb/build/gdb/gdb]...DW_AT_low_pc 0x0 is zero for DIE at 0xab6033 [in module /home/tromey/gdb/build/gdb/gdb]....debug_line address at offset 0x4f683 is 0 [in module /home/tromey/gdb/build/gdb/gdb]...DW_AT_low_pc 0x0 is zero for DIE at 0x10028f0 [in module /home/tromey/gdb/build/gdb/gdb]....debug_line address at offset 0x75edf is 0 [in module /home/tromey/gdb/build/gdb/gdb]...DW_AT_low_pc 0x0 is zero for DIE at 0x1021364 [in module /home/tromey/gdb/build/gdb/gdb]....debug_line address at offset 0x76f62 is 0 [in module /home/tromey/gdb/build/gdb/gdb]...done.
That's one very long line. I find it quite difficult to read that,
and I thought it would be better with some newlines, which is what
this patch does. Now the output looks like:
(gdb) file ./gdb
Reading symbols from ./gdb...
DW_AT_low_pc 0x0 is zero for DIE at 0x437dd4 [in module /home/tromey/gdb/build/gdb/gdb]
.debug_line address at offset 0x21bf9 is 0 [in module /home/tromey/gdb/build/gdb/gdb]
DW_AT_low_pc 0x0 is zero for DIE at 0x5a85dd [in module /home/tromey/gdb/build/gdb/gdb]
.debug_line address at offset 0x2dc2d is 0 [in module /home/tromey/gdb/build/gdb/gdb]
done.
gdb/ChangeLog
2018-10-04 Tom Tromey <tom@tromey.com>
PR cli/22234:
* complaints.c: Emit \n.
gdb/testsuite/ChangeLog
2018-10-04 Tom Tromey <tom@tromey.com>
PR cli/22234:
* gdb.dwarf2/dw2-stack-boundary.exp: Update expected output.
* gdb.gdb/complaints.exp (test_short_complaints): Update expected
output.
commit 22068491adac735905948fd4c2e9aaacf9e22e06
Author: Tom Tromey <tom@tromey.com>
Date: Wed May 16 21:52:04 2018 -0600
Use filtered printing when reading symbols
While working on this series, I found some unfiltered prints that
didn't make sense -- many things, like complaints, are filtered, while
their context (in this case the "Reading symbols ..." messages) may
not be.
This patch changes some spots in symbol reading to use filtered
prints. I think this is preferable overall; in fact I'd go farther
and say that unfiltered printing should just be removed.
One of these spots was not strictly related (the change to
dump_psymtab), but I left it in partly because it makes psymtab.c
"unfiltered-clean", and partly because it is an example of filtered
and unfiltered printing being mixed in the same function.
gdb/ChangeLog
2018-10-04 Tom Tromey <tom@tromey.com>
* symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
(separate_debug_file_exists, find_separate_debug_file)
(add_symbol_file_command, reread_symbols, allocate_symtab)
(allocate_compunit_symtab): Use filtered printing, not
unfiltered.
* psymtab.c (require_partial_symbols, dump_psymtab)
(allocate_psymtab): Use filtered printing, not unfiltered.
commit 9fdd7193e7fd041e9ff311a69dc02aecef53070f
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 27 21:36:44 2018 -0600
Fix off-by-one error in complaint_internal
complaint_internal had an off-by-one error, where it would allow one
extra complaint to be issued.
gdb/ChangeLog
2018-10-04 Tom Tromey <tom@tromey.com>
* complaints.c (complaint_internal): Correctly check complaint
count.
commit 3f2cf4dcd578d60fcdbbc28e720badffe8c15661
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 27 21:26:11 2018 -0600
Remove some leftovers from complaints
There were a couple of leftovers from earlier patches in
complaints.[ch]. This removes them.
gdb/ChangeLog
2018-10-04 Tom Tromey <tom@tromey.com>
* complaints.h (struct complaints): Remove declaration.
* complaints.c (clear_complaints): Remove an unused variable.
commit b35334aa98b75e4e166d30d673fd3bf1238dc7b7
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Oct 4 12:06:33 2018 -0700
pr23658-1.d: Also xfail ft32-* and xgate-*
Since ft32-* and xgate-* use generic linker, SHT_NOTE sections aren't
grouped nor sorted.
PR ld/23658
* testsuite/ld-elf/pr23658-1.d: Also xfail ft32-* and xgate-*.
commit fef1b2933d911476c52418ae7c207d94e13ebb97
Author: Tom Tromey <tom@tromey.com>
Date: Thu Oct 4 11:01:53 2018 -0600
Avoid pagination in attach.exp
While re-testing the complaint series, I saw some unresolved tests in
attach.exp. In particular, the tests were failing because the pager
was active.
This is partly a new problem, introduced because that series changes
some prints from unfiltered to filtered. However, it is also a latent
bug, which you can see by shrinking your window very small and then
running the test.
This patch avoids the problem by passing -quiet to gdb and arranging
to set the window height and width in one other test.
Arguably instead of -quiet we should disable the pager during gdb's
welcome message. I can do that if it seems desirable; but meanwhile
this patch is safe.
gdb/testsuite/ChangeLog
2018-10-04 Tom Tromey <tom@tromey.com>
* gdb.base/attach.exp (test_command_line_attach_run): Use -quiet;
set width and height to 0.
(test_command_line_attach_run): Use -quiet.
commit 4f9bdf7fa52ba0d520647d0b69fe94e523fabf56
Author: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Date: Thu Oct 4 14:10:16 2018 +0200
Add self to gdb/MAINTAINERS
Joel asked me to add myself to gdb/MAINTAINERS. Done as follows, fixing two
incorrectly indented lines on the way. Installed on master.
* MAINTAINERS (Write After Approval): Add self.
commit dca0df07ae4ab31c51a40edeb3e5cda7587f9beb
Author: Jose E. Marchesi <jose.marchesi@oracle.com>
Date: Thu Oct 4 12:16:11 2018 +0200
bfd: amend ChangeLog entry
commit 6d0a6093c5fe82eb4c2b67d3d10fa44eeb0bc98b
Author: Jose E. Marchesi <jose.marchesi@oracle.com>
Date: Thu Oct 4 02:12:48 2018 -0700
bfd,sparc: fix the .dynsym sh_index when stripping all symbols in ld
The SPARC ELF BFD backend uses a hack in order to accomodate the
STT_REGISTER symbols mandated by the SPARC V9 ABI for 64-bit objects.
The hack works as follows:
- Early in `size_dynamic_symbols', it adds the dynamic STT_REGISTER
symbols and the corresponding DT_SPARC_REGISTER tags if needed,
i.e. if the input object has been annotated by the assembler to use
any of the global registers requiring annotations by the ABI.
The STT_REGISTER symbols are not local, but nevertheless they are
added to the end of the dynlocal linked list (eek, yes) to be fixed
"later". This is done so the symbols are emitted in the symtab.
- Consequently, when the `sh_info' field of the .dynsym section is
calculated in `bfd_elf_final_link' to be `local_dynsymcount + 1', it
may have the wrong value, since the real first global symbol is the
first STT_REGISTER symbol.
- However, this temporary inconsistency is fixed in the
`elf64_sparc_output_arch_syms' backend hook: the sh_index is
adjusted to its rightful value. So all is well and good.
However the 2015 changeset
commit 8539e4e89eb4c54bb6668582cd709765a3803588
Author: Alan Modra <amodra@gmail.com>
Date: Thu Jan 15 19:42:59 2015 +1030
Fix ARM fail of gap test
ld-elf/gap test was failing due to the ARM backend attempting to output
arch symbols when ld -s (strip all symbols) is in force. This patch
stops that happening and tidies the code a little.
made the `elf_backend_output_arch_syms' backend hook to not be called
when all symbols are to be stripped. This resulted in an incorrect
sh_index for .dynsym when a link is performed with -s (strip_all), in
64-bit sparc ELF objects.
This patch moves the sh_index adjusting code from the target
`output_arch_syms' to `finish_dynamic_sections'. It also removes the
strip_all check from `elf64_sparc_output_arch_syms', as the function
is no longer called in that case.
Tested in sparc64-linux-gnu and sparc-linux-gnu.
No regressions observed.
bfd/ChangeLog:
2018-10-04 Jose E. Marchesi <jose.marchesi@oracle.com>
* elf64-sparc.c (elf64_sparc_output_arch_syms): Do not correct the
impact of STT_REGISTER symbols in the dynsym sh_index here...
* elfxx-sparc.c (_bfd_sparc_elf_finish_dynamic_sections): ... but
do it here.
commit 875e539851bb2702f3292f819e220545a8776242
Author: Tom Tromey <tom@tromey.com>
Date: Wed Oct 3 16:01:12 2018 -0600
Avoid two uninitialized warnings from gcc
This avoids a couple of uninitialized warnings from gcc by
initializing the object in question. The one in coffread.c seems like
it could be a latent bug. The one in scm-value.c is harmless, but GCC
can't see that.
gdb/ChangeLog
2018-10-03 Tom Tromey <tom@tromey.com>
* guile/scm-value.c (gdbscm_value_to_string): Initialize
"buffer_contents".
* coffread.c (coff_symtab_read): Initialize "newobj".
commit a4cf95167c83c0b8c9dcd55f475a3b028eb883fc
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Oct 4 00:00:35 2018 +0000
Automatic date update in version.in
commit 8634679f82df75cf482b0c0814c2b3865da91d22
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Wed Oct 3 14:34:18 2018 -0400
Remove struct keyword in range-based for
I get the following error with gcc 6.3.0:
/home/simark/src/binutils-gdb/gdb/dwarf2read.c: In function 'void read_func_scope(die_info*, dwarf2_cu*)':
/home/simark/src/binutils-gdb/gdb/dwarf2read.c:13838:12: error: types may not be defined in a for-range-declaration [-Werror]
for (struct symbol *sym : template_args)
^~~~~~
Removing the struct keyword fixes it.
gdb/ChangeLog:
* dwarf2read.c (read_func_scope): Remove struct keyword in
range-based for.
commit f35d5adea1cee8ce9141ad85a7e59d008c2e4d42
Author: Tom Tromey <tom@tromey.com>
Date: Sat Aug 18 15:32:46 2018 -0600
Add --enable-ubsan
This adds --enable-ubsan to gdb's configure. By default it is enabled
in development mode, and disabled otherwise. This passes both
-fsanitize=undefined and -fno-sanitize-recover=undefined to
compilations, so that undefined behavior violations will be sure to
cause test failures.
gdb/ChangeLog
2018-10-03 Tom Tromey <tom@tromey.com>
* README: Mention --enable-ubsan.
* NEWS: Mention --enable-ubsan.
* acinclude.m4: Include sanitize.m4.
* configure: Rebuild.
* configure.ac: Call AM_GDB_UBSAN.
* sanitize.m4: New file.
gdb/doc/ChangeLog
2018-10-03 Tom Tromey <tom@tromey.com>
* gdb.texinfo (Configure Options): Document --enable-ubsan.
commit 1dffa580e7e083a43216fd7cbcadd72c760cf29d
Author: Tom Tromey <tom@tromey.com>
Date: Fri Aug 17 20:34:40 2018 -0600
Avoid undefined behavior in expression dumping
-fsanitize=undefined pointed out undefined behavior in
dump_raw_expression like:
runtime error: load of value 2887952, which is not a valid value for type 'exp_opcode'
dump_raw_expression will try to print the opcode for each element of
the expression, even when it is not valid. To allow this, but have it
avoid undefined behavior, this patch sets the underlying type of enum
exp_opcode, and arranges for op_name to handle invalid opcodes more
nicely.
Before this patch, debug-expr.exp shows:
Dump of expression @ 0x60f000007750, before conversion to prefix form:
Language c, 8 elements, 16 bytes each.
Index Opcode Hex Value String Value
0 OP_TYPE 89 Y...............
<unknown 3851920> 107820862850704 ..:..b..........
2 OP_TYPE 89 Y...............
3 OP_VAR_VALUE 40 (...............
4 <unknown 2807568> 107820861806352 ..*..b..........
5 <unknown 2806368> 107820861805152 `.*..b..........
6 OP_VAR_VALUE 40 (...............
7 UNOP_MEMVAL_TYPE 57 9...............
Afterward, the output is:
Dump of expression @ 0x4820f90, before conversion to prefix form:
Language c, 8 elements, 16 bytes each.
Index Opcode Hex Value String Value
0 OP_TYPE 89 Y...............
1 unknown opcode: 176 75444400 .0..............
2 OP_TYPE 89 Y...............
3 OP_VAR_VALUE 40 (...............
4 OP_BOOL 74616912 P.r.............
5 unknown opcode: 128 74615680 ..r.............
6 OP_VAR_VALUE 40 (...............
7 UNOP_MEMVAL_TYPE 57 9...............
gdb/ChangeLog
2018-10-03 Tom Tromey <tom@tromey.com>
* expression.h (enum exp_opcode): Use uint8_t as base type.
* expprint.c (op_name): Handle invalid opcodes.
commit 5e70ee0905a848701bb929a66f84ff2e212cfa81
Author: Tom Tromey <tom@tromey.com>
Date: Sat Aug 18 14:51:46 2018 -0600
Avoid undefined behavior in ada_operator_length
-fsanitize=undefined pointed out this error:
runtime error: load of value 2887952, which is not a valid value for type 'exp_opcode'
This happens in gdb.ada/complete.exp when processing "complete p
my_glob". This does not parse, so the Ada parser throws an exception;
but then the code in parse_exp_in_context_1 accepts the expression
anyway. However, as no elements have been written to the expression,
undefined behavior results.
The fix is to notice this case in parse_exp_in_context_1. This patch
also adds an assertion to prefixify_expression to enforce this
pre-existing constraint.
gdb/ChangeLog
2018-10-03 Tom Tromey <tom@tromey.com>
* parse.c (prefixify_expression): Add assert.
(parse_exp_in_context_1): Throw exception if the expression is
empty.
commit 4dd1b46077b2ae7331f274f7888733de5166445c
Author: Tom Tromey <tom@tromey.com>
Date: Fri Aug 17 20:19:13 2018 -0600
Avoid undefined behavior in read_signed_leb128
-fsanitize=undefined pointed out that read_signed_leb128 had an
undefined left-shift when processing the final byte of a 64-bit leb:
runtime error: left shift of 127 by 63 places cannot be represented in type 'long int'
and an undefined negation:
runtime error: negation of -9223372036854775808 cannot be represented in type 'long int'; cast to an unsigned type to negate this value to itself
Both of these problems are readily avoided by havinng
read_signed_leb128 work in an unsigned type, and then casting to the
signed type at the return.
gdb/ChangeLog
2018-10-03 Tom Tromey <tom@tromey.com>
* dwarf2read.c (read_signed_leb128): Work in ULONGEST.
commit 20562150d8a894bc91657c843ee88c508188e32e
Author: Tom Tromey <tom@tromey.com>
Date: Sun Jul 29 20:23:33 2018 -0600
Avoid undefined behavior in parse_number
-fsanitize=undefined pointed out that c-exp.y relied on undefined
behavior here:
if (c != 'l' && c != 'u')
n *= base;
...when a large hex constant "just fit" into a LONGEST, causing the
high bit to be set.
This fixes the problem by having the function work in an unsigned
type.
gdb/ChangeLog
2018-10-03 Tom Tromey <tom@tromey.com>
* c-exp.y (parse_number): Work in unsigned. Remove casts.
commit d359392f976d48b04a27e6a09b5b61846b0727f9
Author: Tom Tromey <tom@tromey.com>
Date: Sun Jul 29 17:29:24 2018 -0600
Avoid undefined behavior in read_subrange_type
-fsanitize=undefined pointed out an undefined shift of a negative
value in read_subrange_type. The fix is to do the work in an unsigned
type, where this is defined.
gdb/ChangeLog
2018-10-03 Tom Tromey <tom@tromey.com>
* dwarf2read.c (read_subrange_type): Make "negative_mask"
unsigned.
commit 0101665f864383147448c5871a67286a3f7a9a28
Author: Tom Tromey <tom@tromey.com>
Date: Sun Jul 29 17:16:03 2018 -0600
Avoid undefined behavior in extract_integer
-fsanitize=undefined showed that extract_integer could left-shift a
negative value, which is undefined. This patch fixes the problem by
doing all the work in an unsigned type. This relies on
implementation-defined behavior, but I tend to think we are on safe
ground there. (Also, if need be, violations of this could probably be
detected, either by configure or by a static_assert.)
gdb/ChangeLog
2018-10-03 Tom Tromey <tom@tromey.com>
* findvar.c (extract_integer): Do work in an unsigned type.
commit ad69edbb4b230582ecd1863e68d0c2044f5ad901
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jul 26 19:52:47 2018 -0600
Use unsigned as base type for some enums
-fsanitize=undefined complains about using operator~ on various enum
types that are used with DEF_ENUM_FLAGS_TYPE. This patch fixes these
problems by explicitly setting the base type for these enums to
unsigned. It also adds a static assert to enum_flags to ensure that
future enums used this way have an unsigned underlying type.
gdb/ChangeLog
2018-10-03 Tom Tromey <tom@tromey.com>
* common/enum-flags.h (enum_flags::operator~): Add static assert.
* symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
base type.
* objfile-flags.h (enum objfile_flag): Use unsigned as base type.
* gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
type.
* c-lang.h (enum c_string_type_values): Use unsigned as base
type.
* btrace.h (enum btrace_thread_flag): Use unsigned as base type.
commit 780942fc2422d80a49b748e484890f11db31f49e
Author: Tom Tromey <tom@tromey.com>
Date: Tue Aug 28 16:14:52 2018 -0600
Change dwarf2_frame_state_reg_info::reg to be std::vector
This changes dwarf2_frame_state_reg_info::reg to be a std::vector.
This avoids passing NULL to memcpy in the copy constructor when the
original object does not have any registers.
gdb/ChangeLog
2018-10-03 Tom Tromey <tom@tromey.com>
* dwarf2-frame.h (dwarf2_frame_state_reg_info)
<~dwarf2_frame_state_reg_info>: Update.
<dwarf2_frame_state_reg_info>: Update.
<alloc_regs>: Add assertion. Update.
<reg>: Now a std::vector.
<num_regs>: Remove.
<swap>: Update.
* dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
(execute_cfa_program_test, dwarf2_frame_cache): Update.
commit 10657c047e4e0257440c80fda5f4e23a3452616c
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jul 26 17:48:40 2018 -0600
Do not pass NULL to memcpy
-fsanitize=undefined pointed out a spot that passes NULL to memcpy,
which is undefined behavior according to the C standard.
gdb/ChangeLog
2018-10-03 Tom Tromey <tom@tromey.com>
* namespace.c (add_using_directive): Don't pass NULL to memcpy.
commit fb9bbfd7f2d39a1d4850fcf0f63ef1f077f55e4b
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Oct 3 14:11:43 2018 -0700
ELF: Add testcases for PR ld/23658
Add testcases to verify that all SHT_NOTE sections with the same section
alignment are placed in a single PT_NOTE segment.
PR ld/23658
* testsuite/ld-elf/pr23658-1.d: New file.
* testsuite/ld-elf/pr23658-1a.s: Likewise.
* testsuite/ld-elf/pr23658-1b.s: Likewise.
* testsuite/ld-elf/pr23658-1c.s: Likewise.
* testsuite/ld-elf/pr23658-1d.s: Likewise.
* testsuite/ld-elf/pr23658-2.rd: Likewise.
* testsuite/ld-elf/pr23658-3.d: Likewise.
* testsuite/ld-elf/pr23658-3.s: Likewise.
* testsuite/ld-elf/pr23658-3.t: Likewise.
* testsuite/ld-elf/shared.exp: Run PR ld/23658 tests.
commit 34c0fc000f5202dc8f5feeb35d682913ee508230
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Wed Oct 3 22:27:52 2018 +0200
tid-parse.c tid_is_in_list correct 'See' comment.
Refer to tid-parse.h and tid_is_in_list is explained there.
commit 1887ae7304dced5b081ee200a9e27fbb8f180143
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Oct 3 13:25:16 2018 -0700
ELF: Group and sort output note sections by section alignments
To support putting all adjacent SHT_NOTE sections with the same section
alignment into a single PT_NOTE segment, lang_insert_orphan must group
and sort output note sections by section alignments in both output
section list as well as output section statement list.
PR ld/23658
* ldlang.c (lang_insert_orphan): Group and sort output note
sections by section alignments.
commit 23e463ed7c0d289e2291aaefd576bf02efd98df8
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Oct 3 13:22:26 2018 -0700
ELF: Group PT_NOTE segments by section alignments
Alignments of SHT_NOTE sections can be 8 bytes for 64-bit ELF files. We
should put all adjacent SHT_NOTE sections with the same section alignment
into a single PT_NOTE segment even when the section alignment != 4 bytes.
Also check SHT_NOTE section type instead of section name.
PR ld/23658
* elf.c (get_program_header_size): Put all adjacent SHT_NOTE
sections with the same section alignment into a single PT_NOTE
segment. Check SHT_NOTE section type instead of section name.
(_bfd_elf_map_sections_to_segments): Likewise.
commit e66cfcef729d758a5e605d57600530ad9b1bb9c3
Author: Tamar Christina <tamar.christina@arm.com>
Date: Wed Oct 3 18:52:36 2018 +0100
AArch64: Add MOVPRFX tests and update testsuite
This patch adds the tests and expected output for each of the conditions where
the MOVPRFX constraint should apply.
The specific test cases are all documented to indicate what the expected
behavior should be.
gas/
* testsuite/gas/aarch64/sve-movprfx_1.d: New test.
* testsuite/gas/aarch64/sve-movprfx_1.s: New test.
* testsuite/gas/aarch64/sve-movprfx_10.d: New test.
* testsuite/gas/aarch64/sve-movprfx_10.l: New test.
* testsuite/gas/aarch64/sve-movprfx_10.s: New test.
* testsuite/gas/aarch64/sve-movprfx_11.d: New test.
* testsuite/gas/aarch64/sve-movprfx_11.s: New test.
* testsuite/gas/aarch64/sve-movprfx_12.d: New test.
* testsuite/gas/aarch64/sve-movprfx_12.s: New test.
* testsuite/gas/aarch64/sve-movprfx_13.d: New test.
* testsuite/gas/aarch64/sve-movprfx_13.l: New test.
* testsuite/gas/aarch64/sve-movprfx_13.s: New test.
* testsuite/gas/aarch64/sve-movprfx_14.d: New test.
* testsuite/gas/aarch64/sve-movprfx_14.l: New test.
* testsuite/gas/aarch64/sve-movprfx_14.s: New test.
* testsuite/gas/aarch64/sve-movprfx_15.d: New test.
* testsuite/gas/aarch64/sve-movprfx_15.l: New test.
* testsuite/gas/aarch64/sve-movprfx_15.s: New test.
* testsuite/gas/aarch64/sve-movprfx_16.d: New test.
* testsuite/gas/aarch64/sve-movprfx_16.s: New test.
* testsuite/gas/aarch64/sve-movprfx_17.d: New test.
* testsuite/gas/aarch64/sve-movprfx_17.l: New test.
* testsuite/gas/aarch64/sve-movprfx_17.s: New test.
* testsuite/gas/aarch64/sve-movprfx_18.d: New test.
* testsuite/gas/aarch64/sve-movprfx_18.l: New test.
* testsuite/gas/aarch64/sve-movprfx_18.s: New test.
* testsuite/gas/aarch64/sve-movprfx_19.d: New test.
* testsuite/gas/aarch64/sve-movprfx_19.s: New test.
* testsuite/gas/aarch64/sve-movprfx_2.d: New test.
* testsuite/gas/aarch64/sve-movprfx_2.l: New test.
* testsuite/gas/aarch64/sve-movprfx_2.s: New test.
* testsuite/gas/aarch64/sve-movprfx_20.d: New test.
* testsuite/gas/aarch64/sve-movprfx_20.l: New test.
* testsuite/gas/aarch64/sve-movprfx_20.s: New test.
* testsuite/gas/aarch64/sve-movprfx_21.d: New test.
* testsuite/gas/aarch64/sve-movprfx_21.s: New test.
* testsuite/gas/aarch64/sve-movprfx_22.d: New test.
* testsuite/gas/aarch64/sve-movprfx_22.l: New test.
* testsuite/gas/aarch64/sve-movprfx_22.s: New test.
* testsuite/gas/aarch64/sve-movprfx_23.d: New test.
* testsuite/gas/aarch64/sve-movprfx_23.l: New test.
* testsuite/gas/aarch64/sve-movprfx_23.s: New test.
* testsuite/gas/aarch64/sve-movprfx_24.d: New test.
* testsuite/gas/aarch64/sve-movprfx_24.l: New test.
* testsuite/gas/aarch64/sve-movprfx_24.s: New test.
* testsuite/gas/aarch64/sve-movprfx_25.d: New test.
* testsuite/gas/aarch64/sve-movprfx_25.l: New test.
* testsuite/gas/aarch64/sve-movprfx_25.s: New test.
* testsuite/gas/aarch64/sve-movprfx_26.d: New test.
* testsuite/gas/aarch64/sve-movprfx_26.l: New test.
* testsuite/gas/aarch64/sve-movprfx_26.s: New test.
* testsuite/gas/aarch64/sve-movprfx_3.d: New test.
* testsuite/gas/aarch64/sve-movprfx_3.l: New test.
* testsuite/gas/aarch64/sve-movprfx_3.s: New test.
* testsuite/gas/aarch64/sve-movprfx_4.d: New test.
* testsuite/gas/aarch64/sve-movprfx_4.l: New test.
* testsuite/gas/aarch64/sve-movprfx_4.s: New test.
* testsuite/gas/aarch64/sve-movprfx_5.d: New test.
* testsuite/gas/aarch64/sve-movprfx_5.s: New test.
* testsuite/gas/aarch64/sve-movprfx_6.d: New test.
* testsuite/gas/aarch64/sve-movprfx_6.l: New test.
* testsuite/gas/aarch64/sve-movprfx_6.s: New test.
* testsuite/gas/aarch64/sve-movprfx_7.d: New test.
* testsuite/gas/aarch64/sve-movprfx_7.l: New test.
* testsuite/gas/aarch64/sve-movprfx_7.s: New test.
* testsuite/gas/aarch64/sve-movprfx_8.d: New test.
* testsuite/gas/aarch64/sve-movprfx_8.l: New test.
* testsuite/gas/aarch64/sve-movprfx_8.s: New test.
* testsuite/gas/aarch64/sve-movprfx_9.d: New test.
* testsuite/gas/aarch64/sve-movprfx_9.l: New test.
* testsuite/gas/aarch64/sve-movprfx_9.s: New test.
commit bde90be2cddc06371ee80a258bf6855d0f346324
Author: Tamar Christina <tamar.christina@arm.com>
Date: Wed Oct 3 18:51:11 2018 +0100
AArch64: Constraint disassembler and assembler changes.
This patch wires in the new constraint verifiers into the assembler and
disassembler. Because of this the MOVPRFX tests have to be split out from the
generic SVE tests into their own tests so warnings can be ignored.
These tests are only intended to test the encoding correctness and not the
constraints.
gas/
* testsuite/gas/aarch64/sve-movprfx.d: New test.
* testsuite/gas/aarch64/sve-movprfx.s: New test.
* testsuite/gas/aarch64/sve.d: Refactor.
* testsuite/gas/aarch64/sve.s: Refactor.
* testsuite/gas/aarch64/sysreg-diagnostic.d: Update.
opcodes/
* aarch64-asm.c (aarch64_opcode_encode): Apply constraint verifier.
* aarch64-dis.c (print_operands): Refactor to take notes.
(print_verifier_notes): New.
(print_aarch64_insn): Apply constraint verifier.
(print_insn_aarch64_word): Update call to print_aarch64_insn.
* aarch64-opc.c (aarch64_print_operand): Remove attribute, update notes format.
commit 4f5d2536289c0aedc3234f1bff6e9f4284f267c5
Author: Tamar Christina <tamar.christina@arm.com>
Date: Wed Oct 3 18:50:15 2018 +0100
AArch64: Close sequences at the end of sections
Any open sequence at the end of a section or assembly is considered an error.
This patch adds a check at the end to ensure that all sequences have been closed
and if not reports a warning.
During disassembly it's not possible to detect this condition in the back-end so
the warning is only emitted from the assembler for now.
gas/
* config/tc-aarch64.c (force_automatic_sequence_close,
aarch64_frob_section): New.
* config/tc-aarch64.h (tc_frob_section, aarch64_frob_section): New.
commit a68f4cd235a36776d3d9fea7291163b8d8e35869
Author: Tamar Christina <tamar.christina@arm.com>
Date: Wed Oct 3 18:38:42 2018 +0100
AArch64: Add SVE constraints verifier.
This patch adds the verification rules for move prefix constraints.
The Arm SVE instruction MOVPRFX introduces[1] constraints on the instruction at
PC+4. Particularly the following constraints are handled by this patch
* MOVPRFX must be followed by an instruction.
* MOVPRFX can only be followed by non-layout altering directives.
* MOVPRFX destination register MUST be used as the destination register in the
instruction at PC+4, and is not allowed to be used in any other position other than
destructive input. This includes registers that architecturally overlap. e.g. x1
should be treated as z1.
* MOVPRFX must be followed by a restricted set of SVE instructions.
* The size of the destination register of MOVPRFX must be equal to that of
the operation at PC+4.
* The predicate register and operation of MOVPRFX must match that of the instruction
at PC+4
* The predicated instruction at PC+4 must use the merging predicate.
* Architectural aliases and pseudo-instructions need to be supported as well.
* MOVPRFX cannot be the last instruction in a sequence
Any failure to adhere to any of these constrains will emit an assembly warning
and a disassembly note.
[1] https://developer.arm.com/docs/ddi0584/latest/arm-architecture-reference-manual-supplement-the-scalable-vector-extension-sve-for-armv8-a
include/
* opcode/aarch64.h (aarch64_inst): Remove.
(enum err_type): Add ERR_VFI.
(aarch64_is_destructive_by_operands): New.
(init_insn_sequence): New.
(aarch64_decode_insn): Remove param name.
opcodes/
* aarch64-opc.c (init_insn_block): New.
(verify_constraints, aarch64_is_destructive_by_operands): New.
* aarch64-opc.h (verify_constraints): New.
gas/
* config/tc-aarch64.c (output_operand_error_report): Order warnings.
commit 755b748fd9fbee8cad2e55535d23298e8ac76b15
Author: Tamar Christina <tamar.christina@arm.com>
Date: Wed Oct 3 18:37:07 2018 +0100
AArch64: Refactor verifiers to make more general.
The current verifiers only take an instruction description and encoded value as
arguments. This was enough when the verifiers only needed to do simple checking
but it's insufficient for the purposes of validating instruction sequences.
This patch adds the required arguments and also a flag to allow a verifier to
distinguish between whether it's being run during encoding or decoding. It also
allows for errors and warnings to be returned by a verifier instead of a simple
pass/fail.
include/
* opcode/aarch64.h (struct aarch64_opcode): Expand verifiers to take
more arguments.
opcodes/
* aarch64-dis.c (aarch64_opcode_decode): Update verifier call.
* aarch64-opc.c (verify_ldpsw): Update arguments.
commit 1d4823943d92e7fccb0616f885c029d9952cfb0e
Author: Tamar Christina <tamar.christina@arm.com>
Date: Wed Oct 3 18:35:15 2018 +0100
AArch64: Refactor err_type.
Previously the ERR_ values were defined as different constants, to make this a
bit more type safe and so they can be more easily re-used I'm changing them into
an actual enum and updating any usages.
include/
* opcode/aarch64.h (enum err_type): New.
(aarch64_decode_insn): Use it.
opcodes/
* aarch64-dis.c (ERR_OK, ERR_UND, ERR_UNP, ERR_NYI): Remove.
(aarch64_decode_insn, print_insn_aarch64_word): Use err_type.
commit 7e84b55d8f973b011f55f604a76c2d1d989d0b6b
Author: Tamar Christina <tamar.christina@arm.com>
Date: Wed Oct 3 18:27:52 2018 +0100
AArch64: Wire through instr_sequence
This patch introduces aarch64_instr_sequence which is a structure similar to IT
blocks on Arm in order to track instructions that introduce a constraint or
dependency on instruction 1..N positions away from the instruction that opened
the block.
The struct is also wired through to the locations that require it.
gas/
* config/tc-aarch64.c (now_instr_sequence):
(*insn_sequence, now_instr_sequence): New.
(output_operand_error_record, do_encode): Add insn_sequence.
(md_assemble): Update insn_sequence.
(try_to_encode_as_unscaled_ldst, fix_mov_imm_insn, fix_insn):
Pass insn_sequence.
* config/tc-aarch64.h (struct aarch64_segment_info_type):
Add insn_sequence.
include/
* opcode/aarch64.h (struct aarch64_instr_sequence): New.
(aarch64_opcode_encode): Use it.
opcodes/
* aarch64-asm.c (aarch64_opcode_encode): Add insn_sequence.
* aarch64-dis.c (insn_sequence): New.
commit eae424aef0b14e1765602088ac866b95d14d4a22
Author: Tamar Christina <tamar.christina@arm.com>
Date: Wed Oct 3 18:22:15 2018 +0100
AArch64: Mark sve instructions that require MOVPRFX constraints
This patch series is to allow certain instructions such as the SVE MOVPRFX
instruction to apply a constraint/dependency on the instruction at PC+4.
This patch starts this off by marking which instructions impose the constraint
and which instructions must adhere to the constraint. This is done in a
generic way by extending the verifiers.
* The constraint F_SCAN indicates that an instruction opens a sequence and imposes
a constraint on an instructions following it. The length of the sequence depends
on the instruction itself and it handled in the verifier code.
* The C_SCAN_MOVPRFX flag is used to indicate which constrain the instruction is
checked against. An instruction with both F_SCAN and C_SCAN_MOVPRFX starts a
block for the C_SCAN_MOVPRFX instruction, and one with only C_SCAN_MOVPRFX must
adhere to a previous block constraint is applicable.
The SVE instructions in this list have been marked according to the SVE
specification[1].
[1] https://developer.arm.com/docs/ddi0584/latest/arm-architecture-reference-manual-supplement-the-scalable-vector-extension-sve-for-armv8-a
include/
* opcode/aarch64.h (struct aarch64_opcode): Add constraints,
extend flags field size.
(F_SCAN, C_SCAN_MOVPRFX, C_MAX_ELEM): New.
opcodes/
* aarch64-tbl.h (CORE_INSN, __FP_INSN, SIMD_INSN, CRYP_INSN, _CRC_INSN,
_LSE_INSN, _LOR_INSN, RDMA_INSN, FF16_INSN, SF16_INSN, V8_2_INSN,
_SVE_INSN, V8_3_INSN, CNUM_INSN, RCPC_INSN, SHA2_INSN, AES_INSN,
V8_4_INSN, SHA3_INSN, SM4_INSN, FP16_V8_2_INSN, DOT_INSN): Initialize
constraints.
(_SVE_INSNC): New.
(struct aarch64_opcode): (fjcvtzs, ldpsw, ldpsw, esb, psb): Initialize
constraints.
(movprfx): Change _SVE_INSN into _SVE_INSNC, add C_SCAN_MOVPRFX and
F_SCAN flags.
(msb, mul, neg, not, orr, rbit, revb, revh, revw, sabd, scvtf,
sdiv, sdivr, sdot, smax, smin, smulh, splice, sqadd, sqdecd, sqdech,
sqdecp, sqdecw, sqincd, sqinch, sqincp, sqincw, sqsub, sub, subr, sxtb,
sxth, sxtw, uabd, ucvtf, udiv, udivr, udot, umax, umin, umulh, uqadd,
uqdecd, uqdech, uqdecp, uqdecw, uqincd, uqinch, uqincp, uqincw, uqsub,
uxtb, uxth, uxtw, bic, eon, orn, mov, fmov): Change _SVE_INSN into _SVE_INSNC and add
C_SCAN_MOVPRFX and C_MAX_ELEM constraints.
commit ca98345e0b3fda08ae79e4cb07632eab84ef6ef2
Author: Sandra Loosemore <sandra@codesourcery.com>
Date: Wed Oct 3 09:16:53 2018 -0700
Skip gdb ifunc tests on targets that don't support this feature.
2018-10-03 Sandra Loosemore <sandra@codesourcery.com>
* lib/gdb.exp (skip_ifunc_tests): New.
* gdb.base/gnu-ifunc.exp: Skip if no ifunc support. Handle
other compile failures.
* gdb.compile/compile-ifunc.exp: Skip if no ifunc support.
commit c8d3f93237d77f76d14e09e44bc770ce9428b0e4
Author: Millan Wolff <mail@milianw.de>
Date: Wed Oct 3 12:06:09 2018 +0100
Fix the handling of inlined frames in DWARF debug info.
PR 23715
* dwarf2.c (find_abstract_instance): Allow recursive invocations
of find_abstract_instance to override the name variable.
commit 527b9e87ac1915aec4c26f96951c3b49a145bc88
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Oct 3 11:36:11 2018 +0100
Updated French translation for the binutils/ subdirectory.
commit 8e90d6d2c2f84abf25efc669e10efa3ae29b1039
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Oct 3 10:56:59 2018 +0100
Updated Portuguese translations for the bfd/ and binutils/ subdirectories.
commit 007d2fe43e27fa38a0bc1e22c5f5fb4ee945830d
Author: John Darrington <john@darrington.wattle.id.au>
Date: Mon Oct 1 11:24:15 2018 +0200
Make print_insn_s12z public.
Gdb can use this function in its stack unwinder.
* include/dis-asm.h (print_insn_s12z): Add declaration.
commit 2398abf8bca3563ddab4bd41c710af8027fe2919
Author: Tom Tromey <tom@tromey.com>
Date: Tue Oct 2 16:44:47 2018 -0600
Use pulongest in aarch64-linux-tdep.c
I tried a build on macOS today and it failed due to a mismatch between
the printf format and the type in aarch64-linux-tdep.c. This patch
fixes the problem by using pulongest and %s rather than %ld.
gdb/ChangeLog
2018-10-02 Tom Tromey <tom@tromey.com>
* aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
commit 53c30c89d160e83ba3870693a9b32363c6811ede
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Oct 3 00:00:33 2018 +0000
Automatic date update in version.in
commit 64a336ac134ebd7f9452a7088e90e29551465251
Author: Palmer Dabbelt <palmer@sifive.com>
Date: Tue Oct 2 08:26:32 2018 -0700
RISC-V: Add fence.tso instruction
The RISC-V memory model has been ratified, and it includes an additional
fence: "fence.tso". This pseudo instruction extends one of the
previously reserved full fence patterns to be less restrictive, and
therefor will execute correctly on all existing microarchitectures.
Thus there is no reason to allow this instruction to be disabled (or
unconverted to a full fence), so it's just unconditionally allowed.
I've added a test case for GAS to check that "fence.tso" correctly
assembles on rv32i-based targets. I checked to see that "fence.tso"
appears in "gas.log", but that's the only testing I've done.
gas/ChangeLog
2018-10-02 Palmer Dabbelt <palmer@sifive.com>
* testsuite/gas/riscv/fence-tso.d: New file.
* testsuite/gas/riscv/fence-tso.s: Likewise.
include/ChangeLog
2018-10-02 Palmer Dabbelt <palmer@sifive.com>
* opcode/riscv-opc.h (MATCH_FENCE_TSO): New define.
(MASK_FENCE_TSO): Likewise.
opcodes/ChangeLog
2018-10-02 Palmer Dabbelt <palmer@sifive.com>
* riscv-opc.c (riscv_opcodes) <fence.tso>: New opcode.
commit c1168a2f66553cd4730931cf59e3be8378a1a03f
Author: John Darrington <john@darrington.wattle.id.au>
Date: Wed Aug 29 21:51:26 2018 +0200
Allow remote debugging over a Unix local domain socket.
Extend the "target remote" and "target extended-remote" commands
such that if the filename provided is a Unix local domain (AF_UNIX)
socket, then it'll be treated as such, instead of trying to open
it as if it were a character device.
gdb/ChangeLog:
* NEWS: Mention changed commands.
* ser-uds.c: New file.
* configure.ac (SER_HARDWIRE): Add ser-uds.o.
* configure: Regenerate.
* Makefile.in: Add new file.
* serial.c (serial_open): Check if filename is a socket
and lookup the appropriate interface accordingly.
gdb/doc/ChangeLog:
* gdb.texinfo (Remote Connection Commands): Describe
the changes to target remote and target extended-remote
relating to Unix domain sockets.
commit eb528ad18b276117cb1016edbb12419819786366
Author: Cupertino Miranda <cmiranda@synopsys.com>
Date: Mon Oct 1 12:59:43 2018 +0100
[ARC] Entries to Changelog for previous commits.
commit 3d5b1c0abe2c80ee454ad3057de8317579fd7c26
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Oct 2 00:00:44 2018 +0000
Automatic date update in version.in
commit a0389de085c9caca66ec53bcf7faf830cbf24b89
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Oct 1 17:17:54 2018 +0100
Fix typo setting user_specified variable when parsing -Z option.
PR 23698
* gprof.c (main): Fix typo setting user_specified variable when
parsing -Z option.
commit ff34e6ae3867a5686b53ce3b69584c1c3b553d7d
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Oct 1 12:02:57 2018 -0400
Fix is_amd64_regs_target check in i386-avx512.exp
As reported by Jan here:
https://sourceware.org/ml/gdb-patches/2018-09/msg00831.html
the check that sets the number of available registers is backwards.
gdb/testsuite/ChangeLog:
* gdb.arch/i386-avx512.exp: Fix setting of nr_regs based on
is_amd64_regs_target.
commit 6bb8890e2ccf2b1ae7860fcb6fe4579c4aa9ebf6
Author: Alan Hayward <alan.hayward@arm.com>
Date: Fri Aug 24 10:33:10 2018 +0100
Add aarch64-sighandler-regs.exp test
Add Aarch64 test to check register values of a previous frame
can be shown correctly across a signal.
gdb/testsuite/ChangeLog:
* gdb.arch/aarch64-sighandler-regs.c: New test.
* gdb.arch/aarch64-sighandler-regs.exp: New file.
* lib/gdb.exp (skip_aarch64_sve_tests): New proc.
commit 05c71722fc5d9407d712b58b80eaf469ffbc406f
Author: Alan Hayward <alan.hayward@arm.com>
Date: Fri Aug 24 09:53:57 2018 +0100
Aarch64: Detect FP regs in signal frame
Both the VFP and SVE registers may be contained within the reserved space of
the sigcontext and can be found by seraching for MAGIC values. Detect these
and add the registers (including pseudos) to the trad frame cache.
gdb/
* aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
define.
(AARCH64_EXTRA_MAGIC): Likewise.
(AARCH64_FPSIMD_MAGIC): Likewise.
(AARCH64_SVE_MAGIC): Likewise.
(AARCH64_EXTRA_DATAP_OFFSET): Likewise.
(AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
(AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
(AARCH64_FPSIMD_V0_OFFSET): Likewise.
(AARCH64_FPSIMD_VREG_SIZE): Likewise.
(AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
(AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
(AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
(AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
(AARCH64_SVE_CONTEXT_SIZE): Likewise.
(read_aarch64_ctx): Add function.
(aarch64_linux_sigframe_init): Detect FP registers.
commit c74e7cb96ffc525b0218cd329c292aacb16f94f8
Author: Alan Hayward <alan.hayward@arm.com>
Date: Fri Aug 24 09:53:09 2018 +0100
Aarch64: Move pseudo defines to header
gdb/
* aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
(AARCH64_D0_REGNUM): Likewise.
(AARCH64_S0_REGNUM): Likewise.
(AARCH64_H0_REGNUM): Likewise.
(AARCH64_B0_REGNUM): Likewise.
(AARCH64_SVE_V0_REGNUM): Likewise.
* arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
(AARCH64_D0_REGNUM): Likewise.
(AARCH64_S0_REGNUM): Likewise.
(AARCH64_H0_REGNUM): Likewise.
(AARCH64_B0_REGNUM): Likewise.
(AARCH64_SVE_V0_REGNUM): Likewise.
commit 714e9a954a2e4123dcb26bb8da850e1344de4f5f
Author: Cupertino Miranda <cmiranda@synopsys.com>
Date: Thu Sep 6 00:50:35 2018 +0100
[ARC] Fixed issue with DTSOFF relocs.
Inserted offset in final section in the GOT entry of type DTSOFF soon to be
relocated by the dynamic loader.
bfd/
2018-09-06 Cupertino Miranda <cmiranda@synopsys.com>
* arc-got.h (relocate_fix_got_relocs_for_got_info): Changed. Take TLS
section alignment in consideration for this relocation.
* elf32-arc.c (FINAL_SECTSTART): Added this formula macro.
(ARC_TLS_DTPOFF) Updated reloc to use new created macro instead.
commit 0411fca5ec2a6adb96ed768f70ed468435d778ea
Author: Cupertino Miranda <cmiranda@synopsys.com>
Date: Wed Aug 1 17:22:07 2018 +0100
[ARC] Fixes TLS failures related to tls-align.
This patch fixes glibc testcase in nptl/tls-align.
bfd/
2018-08-01 Cupertino Miranda <cmiranda@synopsys.com>
* arc-got.h (relocate_fix_got_relocs_for_got_info): Changed, fixed
TCB_SIZE offsize to include section alignment.
* elf32-arc.c (arc_special_overflow_checks): Likewise.
include/
2018-08-01 Cupertino Miranda <cmiranda@synopsys.com>
* arc-reloc.def (ARC_TLS_LE_32): Updated reloc formula.
commit ab16fcd743b8fc963e736f7d00e3c2f039ce0d56
Author: Cupertino Miranda <cmiranda@synopsys.com>
Date: Fri Mar 2 17:44:29 2018 +0100
[ARC] PLT information was still being generated when symbol was forced_local.
A change upstream reveiled this issue, triggering an assert when linking glibc.
bfd/
2018-03-01 Cupertino Miranda <cmiranda@synopsys.com>
* elf32-arc.c (elf_arc_check_relocs): Changed.
commit 2936af90155cf7f7647b4886dc5b9568d15ca298
Author: Cupertino Miranda <cmiranda@synopsys.com>
Date: Fri Mar 2 17:38:14 2018 +0100
[ARC] Make sure global symbol is not an indirect or warning.
Problem identified in the context of glibc with latest upstream binutils.
Dynamic symbol space was being reserved but, no actual information for the
symbol was being set. Data for the symbol was kept initialized with -1.
No easy test case was possible to be created.
bfd/
2018-03-01 Cupertino Miranda <cmiranda@synopsys.com>
* elf32-arc.c (elf_arc_check_relocs): Changed.
commit c834917fda58d9e4cd72b67f7793e2f429ccce57
Author: Cupertino Miranda <cmiranda@synopsys.com>
Date: Fri Mar 2 17:33:48 2018 +0100
[ARC] Improved robustness. Return FALSE in case of NULL pointer.
bfd/
2018-03-01 Cupertino Miranda <cmiranda@synopsys.com>
* elf32-arc.c (elf_arc_finish_dynamic_symbol) Return FALSE in case
arc_htab is NULL.
commit 854b8506815f7786b3c82f7824557e7f32a64ac5
Author: Cupertino Miranda <cmiranda@synopsys.com>
Date: Fri Mar 2 17:16:21 2018 +0100
[ARC] Refactored location where GOT information is collected.
Change location where GOT information is collected for ARC target, avoiding
posible use conflicts of the previous .got field in the symbols hash_entry.
bfd/
2018-03-01 Cupertino Miranda <cmiranda@synopsys.com>
* arc-got.h (get_got_entry_list_for_symbol): Changed.
* ef32-arc.c (struct elf_arc_link_hash_entry): Moved and changed.
(elf_arc_link_hash_newfunc): Changed.
(arc_elf_link_hash_table_create): Removed old initializations.
(elf_arc_relocate_section, elf_arc_finish_dynamic_symbol): Changed.
commit 12b164e9a96f75ffd030d04a7633dfbb64862806
Author: Gary Benson <gbenson@redhat.com>
Date: Mon Oct 1 10:37:39 2018 +0100
Remove ancient workaround
This commit removes a workaround for a bug in glibc 2.1.3, which
was released 2000-02-24 and superseded 2000-11-09.
gdb/ChangeLog:
* gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
* proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
prfpregset_t instead of gdb_prfpregset_t.
* configure.ac (PRFPREGSET_T_BROKEN): Remove check.
* configure, config.in: Rebuild.
commit 7c619dbdae11bead6f85863b7ce25f8b8610c59d
Author: Gary Benson <gbenson@redhat.com>
Date: Mon Oct 1 10:37:39 2018 +0100
Move duplicated code to common/gdb_proc_service.h
This commit moves now-identical code from gdb/gdb_proc_service.h
and gdb/gdbserver/gdb_proc_service.h into the new shared file
gdb/common/gdb_proc_service.h.
gdb/ChangeLog:
* common/gdb_proc_service.h: New file, factored out from...
* gdb_proc_service.h: Moved common code to the above file.
* Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
gdb/gdbserver/ChangeLog:
* gdb_proc_service.h: Moved common code to
common/gdb_proc_service.h.
commit 358ffcf28cf6e7c23311e91869ada4c480527d93
Author: Gary Benson <gbenson@redhat.com>
Date: Mon Oct 1 10:37:39 2018 +0100
Update GDB gdb_proc_service.h workaround to match gdbserver
This commit updates GDB's gdb_proc_service.h to use elf_{g,fp}regset_t
instead of gdb_{g,fp}regset_t if pr{g,fp}regset_t are undefined.
The types have been equivalent on GNU/Linux since at least 2005.
gdb/ChangeLog:
* gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
undefined. Use elf_fpregset_t if prfpregset_t is undefined.
commit 43b7e92b0c73d693d3b656b84b2a1181e40477ca
Author: Gary Benson <gbenson@redhat.com>
Date: Mon Oct 1 10:37:39 2018 +0100
Add workaround from gdbserver's gdb_proc_service.h to GDB
This commit adds a workaround from gdbserver's gdb_proc_service.h
to GDB's. It doesn't seem to have been needed on any glibc as far
back as 2001, but it's possibly required for other C libraries so
I've retained it.
gdb/ChangeLog:
* configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
(AC_CHECK_HEADERS): Check for linux/elf.h.
* configure, config.in: Rebuild.
* gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
doesn't define elf_fpregset_t.
commit 3795e814428a269a3528d3d9a86da957449fc5b6
Author: Gary Benson <gbenson@redhat.com>
Date: Mon Oct 1 10:37:39 2018 +0100
gdb_proc_service.h comment and whitespace synchronization
This commit updates comments and whitespace in GDB's and gdbserver's
gdb_proc_service.h.
gdb/ChangeLog:
* gdb_proc_service.h: Whitespace change.
gdb/gdbserver/ChangeLog:
* gdb_proc_service.h: Synchronize comments and whitespace with
GDB's version of this file.
commit 4176f14d9c9e509425bffc01404c751e238b1f01
Author: Tom Tromey <tom@tromey.com>
Date: Wed Sep 26 05:28:07 2018 -0600
Don't check HAVE_UNISTD_H
I noticed some spots that were checking HAVE_UNISTD_H. There is no
need to do this, as <unistd.h> is unconditionally included in many
places in gdb. This sort of cleanup was done once before, in 2013:
2013-07-01 Pedro Alves <palves@redhat.com>
* defs.h: Don't check HAVE_UNISTD_H before including <unistd.h>.
(STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO): Delete.
* tracepoint.c: Don't check HAVE_UNISTD_H before including
<unistd.h>.
HAVE_UNISTD_H seems to come from gnulib, so there are still mentions
of it in the source.
gdb/ChangeLog
2018-10-01 Tom Tromey <tom@tromey.com>
* unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
* unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
* common/scoped_fd.h: Don't check HAVE_UNISTD_H.
commit a95746f91769c0f65e9393ff83aad0871d1a666b
Author: Tom Tromey <tom@tromey.com>
Date: Sun Sep 30 06:00:01 2018 -0600
Copy configure option documentation to gdb.texinfo
I realized that while I'd updated the README, I didn't update
gdb.texinfo to document the options to configure.
This patch copies the text from README into gdb.texinfo, adding
Texinfo markup.
gdb/ChangeLog
2018-10-01 Tom Tromey <tom@tromey.com>
* README: Minor change.
gdb/doc/ChangeLog
2018-10-01 Tom Tromey <tom@tromey.com>
* gdb.texinfo (Configure Options): Document configure options.
commit 224d30d393654ff0689429505a3e725cdad1cca5
Author: Markus Metzger <markus.t.metzger@intel.com>
Date: Wed Sep 26 15:28:28 2018 +0200
testsuite: fix is_amd64_regs_target
Commit
c221b2f Testsuite: Add gdb_can_simple_compile
changed the source file name extension of the test program from .s to .c
resulting in compile fails. This, in turn, causes is_amd64_regs_target
checks to fail. In gdb.btrace/tailcall.exp and others, this causes the
wrong source file to be picked and the test to fail on 64-bit targets.
Change the test source from an assembly program to a C program using
inline assembly.
testsuite/
* lib/gdb.exp (is_amd64_regs_target): Change assembly to C inline
assembly.
commit 15ec67475f486077ccb45d80c46416bf4949e053
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Oct 1 00:01:09 2018 +0000
Automatic date update in version.in
commit dd2037827180f69e7e312a2080affcbb03c98d70
Author: Pedro Alves <palves@redhat.com>
Date: Sun Sep 30 17:12:00 2018 +0100
Darwin: Remove unused variables [-Werror=unused-variable]
Building GDB with --host=x86_64-apple-darwin15 using G++ 5.3.0 runs
into a number of -Werror=unused-variable warnings/errors:
../../src/gdb/i386-darwin-nat.c: In function 'void i386_darwin_dr_set(int, CORE_ADDR)':
../../src/gdb/i386-darwin-nat.c:283:7: error: unused variable 'current_pid' [-Werror=unused-variable]
int current_pid;
^
[etc, etc.]
This commit fixes all such warnings.
gdb/ChangeLog:
2018-09-30 Pedro Alves <palves@redhat.com>
* darwin-nat-info.c (darwin_debug_regions_recurse)
(info_mach_exceptions_command): Remove unused local variables.
* darwin-nat.c (darwin_decode_notify_message)
(darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
(darwin_stop_inferior, darwin_setup_exceptions)
(darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
(darwin_nat_target::attach, darwin_nat_target::detach)
(darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
local variables.
* i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
variables.
commit 105cd1d7a6a7e6c5dce2e2eb32cdbfacc221a5d0
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Sep 30 00:01:07 2018 +0000
Automatic date update in version.in
commit c82a2e6ff60596266e7c1a419f8e81cb7a0ae2b3
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 29 07:32:10 2018 -0600
Remove some leftover text in gdb/README
I accidentally left some stray text in gdb/README.
This removes it. I'm checking this in as obvious.
gdb/ChangeLog
2018-09-29 Tom Tromey <tom@tromey.com>
* README: Remove some leftover text.
commit 7f0bd4202c239b44b22645b9ae31fc0eeade1da3
Author: Tom Tromey <tom@tromey.com>
Date: Thu Sep 13 22:24:07 2018 -0600
Update gdb's configure instructions
gdb's README and configure instructions in the manual are quite out of
date. They mention options that haven't existed for many years, among
other things.
This patch attempts to modernize the instructions somewhat. It is not
exhaustive, just an improvement -- more could be done. Perhaps even a
couple of the nodes should simply be removed and replaced by
references to the Autoconf manual.
The README file seems to have been generated from the Texinfo at some
point in the past. I did not continue this, but instead edited it
separately.
gdb/ChangeLog
2018-09-29 Tom Tromey <tom@tromey.com>
* PROBLEMS: Rewrite.
* README: Update.
gdb/doc/ChangeLog
2018-09-29 Tom Tromey <tom@tromey.com>
* gdb.texinfo (Requirements): Mention C++, GNU make.
(Requirements): Sort the table. Add more libraries.
(Running Configure): Remove obsolete text.
(Separate Objdir): Likewise.
(Configure Options): Likewise.
commit 6424bdfcfc3af751531b927ad3549916d98d8763
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Sep 29 00:00:44 2018 +0000
Automatic date update in version.in
commit 79c1bf3c71fcf5d453733ee45321e3fbc57b04b2
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Sep 28 15:29:33 2018 -0700
bfd: Use elfclass instead of bed->s->elfclass
elfclass has been set to bed->s->elfclass earlier.
* elf-properties.c (_bfd_elf_link_setup_gnu_properties): Use
elfclass instead of bed->s->elfclass.
commit f37bc8b13c898fa39731c20d8565b24e006c13a8
Author: John Baldwin <jhb@FreeBSD.org>
Date: Fri Sep 28 14:15:54 2018 -0700
Use the existing instruction to determine the RISC-V breakpoint kind.
RISC-V supports instructions of varying lengths. Standard existing
instructions in the base ISA are 4 bytes in length, but the 'C'
extension adds support for compressed, 2 byte instructions. RISC-V
supports two different breakpoint instructions: EBREAK is a 4 byte
instruction in the base ISA, and C.EBREAK is a 2 byte instruction only
available on processors implementing the 'C' extension. Using EBREAK
to set breakpoints on compressed instructions causes problems as the
second half of EBREAK will overwrite the first 2 bytes of the
following instruction breaking other threads in the process if their
PC is the following instruction. Thus, breakpoints on compressed
instructions need to use C.EBREAK instead of EBREAK.
Previously, the riscv architecture checked the MISA register to
determine if the 'C' extension was available. If so, it used C.EBREAK
for all breakpoints. However, the MISA register is not necessarily
available to supervisor mode operating systems. While native targets
could provide a fake MISA register value, this patch instead examines
the existing instruction at a breakpoint target to determine which
breakpoint instruction to use. If the existing instruction is a
compressed instruction, C.EBREAK is used, otherwise EBREAK is used.
gdb/ChangeLog:
* disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
case with explicit breakpoint kind.
* riscv-tdep.c (show_use_compressed_breakpoints): Remove
'additional_info' and related logic.
(riscv_debug_breakpoints): New variable.
(riscv_breakpoint_kind_from_pc): Use the length of the existing
instruction to determine the breakpoint kind.
(_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
flag. Update description of 'set/show riscv
use-compressed-breakpoints' flag.
commit 2283a21049cdefb87cdd0f11df367266e3e029d1
Author: Ðомпан, ÐÑÑеÑлав ÐÐ»ÐµÐ³Ð¾Ð²Ð¸Ñ <kompan.vo@phystech.edu>
Date: Fri Sep 28 16:00:46 2018 -0400
Change "xor" name in cpu_core to allow building with iso646.h or C++ compiler
This code was introduced back in 1998, and C99 appeared next year,
defining the `xor` as an 'alternative keyword' if iso646.h is
included. Moreover, C++98 defines it on the language level. As a
result, the code is not buildable with C++ compiler or if iso646.h is
included beforehand.
According to comment, `sim_cpu_core` is mostly a clone of `sim_core`,
so I renamed it to `byte_xor` as it's called in `sim_core`.
sim/common/ChangeLog:
* sim-core.h (sim_cpu_core): Rename cpu_core.xor to
cpu_core.byte_xor.
* sim-core.c (sim_core_set_xor): Likewise.
(sim_core_xor_read_buffer): Likewise.
(sim_core_xor_write_buffer): Likewise.
commit f67ffa6a785bee26bc23550670f85c6db578641f
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Thu Sep 10 13:06:16 2015 +0100
gdb: Change how frames are selected for 'frame' and 'info frame'.
The 'frame' command, and thanks to code reuse the 'info frame' and
'select-frame' commands, currently have an overloaded mechanism for
selecting a frame.
These commands take one or two parameters, if it's one parameter then
we first try to use the parameter as an integer to select a frame by
level (or depth in the stack). If that fails then we treat the
parameter as an address and try to select a stack frame by
stack-address. If we still have not selected a stack frame, or we
initially had two parameters, then GDB allows the user to view a stack
frame that is not part of the current backtrace. Internally, a new
frame is created with the given stack and pc addresses, and this is
shown to the user.
The result of this is that a typo by the user, entering the wrong stack
frame level for example, can result in a brand new frame being viewed
rather than an error.
The purpose of this commit is to remove this overloading, while still
offering the same functionality through some new sub-commands. By
making the default behaviour of 'frame' (and friends) be to select a
stack frame by level index, it is hoped that enough
backwards-compatibility is maintained that users will not be overly
inconvenienced.
The 'frame', 'select-frame', and 'info frame' commands now all take a
frame specification string as an argument, this string can be any of the
following:
(1) An integer. This is treated as a frame level. If a frame for
that level does not exist then the user gets an error.
(2) A string like 'level <LEVEL>', where <LEVEL> is a frame level
as in option (1) above.
(3) A string like 'address <STACK-ADDRESS>', where <STACK-ADDRESS>
is a stack-frame address. If there is no frame for this address
then the user gets an error.
(4) A string like 'function <NAME>', where <NAME> is a function name,
the inner most frame for function <NAME> is selected. If there is no
frame for function <NAME> then the user gets an error.
(5) A string like 'view <STACK-ADDRESS>', this views a new frame
with stack address <STACK-ADDRESS>.
(6) A string like 'view <STACK-ADDRESS> <PC-ADDRESS>', this views
a new frame with stack address <STACK-ADDRESS> and the pc <PC-ADDRESS>.
This change assumes that the most common use of the commands like
'frame' is to select a frame by frame level, it is for this reason
that this is the behaviour that is kept for backwards compatibility.
Any of the alternative behaviours, which are assumed to be less used,
now require a change in user behaviour.
The MI command '-stack-select-frame' has not been changed. This
ensures that we maintain backwards compatibility for existing
frontends.
gdb/ChangeLog:
(NEWS): Mention changes to frame related commands.
* cli/cli-decode.c (add_cmd_suppress_notification): New function.
(add_prefix_cmd_suppress_notification): New function.
(add_com_suppress_notification): Call
add_cmd_suppress_notification.
* command.h (add_cmd_suppress_notification): Declare.
(add_prefix_cmd_suppress_notification): Declare.
* mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
(parse_frame_specification): Moved from stack.c, with
simplification to handle a single argument.
(mi_cmd_stack_select_frame): Use parse_frame_specification, the
switch to the selected frame. Add a header comment.
* stack.c: Remove 'safe-ctype.h' include.
(find_frame_for_function): Add declaration.
(find_frame_for_address): New function.
(parse_frame_specification): Moved into mi/mi-cmd-stack.c.
(frame_selection_by_function_completer): New function.
(info_frame_command): Rename to...
(info_frame_command_core): ...this, and update parameter types.
(select_frame_command): Rename to...
(select_frame_command_core): ...this, and update parameter types.
(frame_command): Rename to...
(frame_command_core): ...this, and update parameter types.
(class frame_command_helper): New class to wrap implementations of
frame related sub-commands.
(frame_apply_cmd_list): New static global.
(frame_cmd_list): Make static.
(select_frame_cmd_list): New global for sub-commands.
(info_frame_cmd_list): New global for sub-commands.
(_initialize_stack): Register sub-commands for 'frame',
'select-frame', and 'info frame'. Update 'frame apply' commands
to use frame_apply_cmd_list. Move function local static
frame_apply_list to file static frame_apply_cmd_list for
consistency.
* stack.h (select_frame_command): Delete declarationn.
(select_frame_for_mi): Declare new function.
gdb/doc/ChangeLog:
* gdb.texinfo (Frames): Rewrite the description of 'frame number'
to highlight that the number is also the frame's level.
(Selection): Rewrite documentation for 'frame' and 'select-frame'
commands.
(Frame Info): Rewrite documentation for 'info frame' command.
gdb/testsuite/ChangeLog:
* gdb.base/frame-selection.exp: New file.
* gdb.base/frame-selection.c: New file.
commit 5f9aecea0dfd9e8b0a728c332e8ddb105bae6054
Author: Jim Wilson <jimw@sifive.com>
Date: Thu Sep 27 17:16:34 2018 -0700
RISC-V: Pc-rel to gp-rel relaxation function cleanup.
bfd/
* elfnn-riscv.c (riscv_init_pcgp_relocs): Add explanatory comment.
(riscv_free_pcgp_relocs, riscv_record_pcgp_reloc): Likewise.
(riscv_find_pcgp_hi_reloc, riscv_reocrd_pcgp_lo_reloc): Likewise.
(riscv_find_pcgp_lo_reloc): Likewise.
(riscv_delete_pcgp_hi_reloc, riscv_use_pcgp_hi_reloc): Delete.
(riscv_delete_pcgp_lo_reloc): Likewise.
(_bfd_riscv_relax_pc): Don't call riscv_use_pcgp_hi_reloc. Replace
calls to riscv_delete_pcgp_lo_reloc and riscv_delete_pcgp_hi_reloc
with TRUE. Mark abfd arg as ATTRIBUTE_UNUSED.
commit fec3f4ea46c3f27206df97f379da3b70d4306cf2
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Sep 28 00:00:43 2018 +0000
Automatic date update in version.in
commit 9fc3183f0f8ab8ec85f0e5f65bae9e18ddf545a0
Author: Alan Hayward <alan.hayward@arm.com>
Date: Wed Sep 26 14:06:54 2018 +0100
testsuite: Fix race condition in check-libthread-db
It is possible for the created thread to reach the breakpoint before
the main thread has set errno to 23.
Prevent this using a pthread barrier.
* gdb.threads/check-libthread-db.c (thread_routine): Use a
pthread barrier.
(main): Likewise.
commit 115d0c14437a07c686e58d8c0bf30755fb379c68
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Sep 27 00:00:37 2018 +0000
Automatic date update in version.in
commit ca60b3af44a74d2f430870ffbabc8ce158721dc4
Author: Sandra Loosemore <sandra@codesourcery.com>
Date: Wed Sep 26 09:45:56 2018 -0700
Skip broken assembler test on Windows host.
2018-09-26 Sandra Loosemore <sandra@codesourcery.com>
gas/
* testsuite/gas/all/gas.exp: Skip "Output file must be distinct
from input" test on Windows host.
commit d354055e6ee0b2640006e1b9f900eb0e91a6883c
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Wed Sep 12 17:35:08 2018 +0100
gdb/riscv: Improve non-dwarf stack unwinding
This commit improves the prologue scanning stack unwinder, to better
support AUIPC, LUI, and more variants of ADD and ADDI.
This allows unwinding over frames containing large local variables,
where the frame size does not fit into a single instruction immediate,
and is first loaded into a temporary register, before being added to
the stack pointer.
A new test is added that tests this behaviour. As there's nothing
truely RiscV specific about this test I've added it into gdb.base, but
as this depends on target specific code to perform the unwind it is
possible that some targets might fail this new test.
gdb/ChangeLog:
* riscv-tdep.c (riscv_insn::decode): Decode c.lui.
(riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
and NOP.
gdb/testsuite/ChangeLog:
* gdb.base/large-frame-1.c: New file.
* gdb.base/large-frame-2.c: New file.
* gdb.base/large-frame.exp: New file.
* gdb.base/large-frame.h: New file.
commit 853924149dfc2a3b67fda0a491dc5716d7322a74
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed Sep 26 08:27:23 2018 -0400
elf32-nds32: Remove elf32_nds32_allocate_dynrelocs
It is unused, removing it fixes this error when building with clang:
/home/emaisin/src/binutils-gdb/bfd/elf32-nds32.c:3172:1: error: unused function 'elf32_nds32_allocate_dynrelocs' [-Werror,-Wunused-function]
elf32_nds32_allocate_dynrelocs (struct bfd_link_info *info, asection *sreloc,
^
1 error generated.
gcc only reports the error if you remove "inline". I don't know if this
is actually a mistake and it should actually be used though.
gdb/ChangeLog:
* elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
commit 896ee09882933a707d2adef76aaa184249e8de05
Author: Tom Tromey <tom@tromey.com>
Date: Wed Sep 26 05:34:25 2018 -0600
Remove dead definition from valops.c
This removes a variable definition in valops.c that has been
surrounded by "#if 0" since gdb moved to sourceware.
gdb/ChangeLog
2018-09-26 Tom Tromey <tom@tromey.com>
* valops.c (auto_abandon): Remove dead code.
commit 57dbb3afed804c8e0c350563339f5f3de2ded910
Author: Tom Tromey <tom@tromey.com>
Date: Mon Sep 3 15:41:24 2018 -0600
Small fix for "winheight" usage
I noticed that the usage string for "winheight" has a couple of
extraneous ">"s in it. I must have forgotten to remove these back
when I changed the text to use the GNU style for metasyntactic
variables.
gdb/ChangeLog
2018-09-26 Tom Tromey <tom@tromey.com>
* tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
commit 7504c64dd98ef6c85b15599a0d267a5179b70f50
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Sep 26 00:00:55 2018 +0000
Automatic date update in version.in
commit 5ef237932919a19fe85f70fc37f7d3a0660b7665
Author: Jim Wilson <jimw@sifive.com>
Date: Tue Sep 25 13:13:23 2018 -0700
RISC-V: Give error for RVE PLTs.
bfd/
* elfnn-riscv.c (riscv_make_plt_header): New arg output_bfd. Change
return type to bfd_boolean. If EF_RISCV_RVE call _bfd_error_handler
and return FALSE. Return TRUE at end.
(riscv_make_plt_entry): Likewise.
(riscv_elf_finish_dynamic_symbol): Update call to riscv_make_plt_entry.
(riscv_elf_finish_dynamic_sections): Update call to
riscv_make_plt_header.
commit 3d6e0c015aa832f00ccd4fe3f5f43b90357258e8
Author: Andreas Krebbel <krebbel@linux.ibm.com>
Date: Tue Sep 25 17:13:28 2018 +0200
S/390: Fix symbolic displacement in lay
Increase the fixup length to 4 for the 20 bit displacement.
gas/ChangeLog:
2018-09-25 Andreas Krebbel <krebbel@linux.ibm.com>
* config/tc-s390.c (md_apply_fix): Set fx_size to 4 for 20 bit
displacements.
* testsuite/gas/s390/s390.exp: Run new test.
* testsuite/gas/s390/zarch-z990-symbol-lay.s: New test.
commit 49b036f1e0616b57294d85b06d3eb001b34f9958
Author: Tom Tromey <tom@tromey.com>
Date: Tue Jul 31 07:49:55 2018 -0600
Remove dead code from gdbserver's configure
gdbserver's configure removes -Wmissing-prototypes from the warning
flags. However, this flag is only useful for C, so this deletion is
no longer needed.
gdb/gdbserver/ChangeLog
2018-09-25 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
* configure.ac (WARN_CFLAGS): Don't remove -Wmissing-prototypes.
commit e95bc8bb1dd5c7f55b3abf0fb1ee73c0c6b5596e
Author: Eric Botcazou <ebotcazou@gcc.gnu.org>
Date: Tue Sep 25 08:15:36 2018 +0200
Couple of minor tweaks to the linker testsuite.
This gets rid of the couple of linker failures for visium-elf:
FAIL: ld-elf/pr14156b
FAIL: ld-elf/pr22677
by tweaking the respective testcases. The first tweak is the same as the
one made to the sibling testcase ld-elf/pr14156a.d about one year ago and
the second tweak adds the usual main/start/_start/__start symbols.
ld/
* testsuite/ld-elf/pr14156b.d: Adjust for extra symbols.
* testsuite/ld-elf/pr22677.s: Define main/start/_start/__start.
commit 28fc25e06b449be061ceacf868e9040b14464aa3
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Sep 25 00:00:40 2018 +0000
Automatic date update in version.in
commit a05f27b68934c2ea3efa028a0af2cd968db1bd2d
Author: Jim Wilson <jimw@sifive.com>
Date: Mon Sep 24 14:36:41 2018 -0700
RISC-V: For PCREL_LO12, fix addend handling in auipc lookup.
bfd/
* elfnn-riscv.c (_bfd_riscv_relax_pc) <R_RISCV_PCREL_LO12_I>: New local
hi_sec_off which is symbol address with addend subtracted. Use in
riscv_find_pcgp_hi_reloc and riscv_record_pcgp_lo_reloc calls.
commit 551703cfd409faca433626a0af077a43011381b7
Author: Jim Wilson <jimw@sifive.com>
Date: Mon Sep 24 14:05:32 2018 -0700
RISC-V: Allow pcrel_lo addends, error on addend overflow.
bfd/
* elfnn-riscv.c (riscv_resolve_pcrel_lo_relocs): Add check for reloc
overflow with addend. Use reloc_dangerous instead of reloc_overflow.
Add strings for the two errors handled here.
(riscv_elf_relocate_section) In case R_RISCV_PCREL_LO12_I, rewrite
comment. Only give error with addend when used with section symbol.
In case bfd_reloc_dangerous, update error string.
ld/
* testsuite/ld-riscv-elf/ld-riscv-elf.exp: Run pcrel-lo-addend-2.
* testsuite/ld-riscv/elf/ld-riscv-elf/pcrel-lo-addend-2.d: New.
* testsuite/ld-riscv/elf/ld-riscv-elf/pcrel-lo-addend-2.s: New.
* testsuite/ld-riscv/elf/ld-riscv-elf/pcrel-lo-addend.d: Update name
and error string.
commit db72737006fc383cb8838bf7f3dc8e641e60c38f
Author: Jozef Lawrynowicz <jozef.l@mittosystems.com>
Date: Tue Sep 11 22:56:36 2018 +0100
Fix PR gdb/20948: --write option to GDB causes segmentation fault
When opening a BFD for update, as gdb --write does, modifications to
anything but the contents of sections is restricted.
Do not try to write back any ELF headers in this case.
bfd/ChangeLog
2018-09-24 Jozef Lawrynowicz <jozef.l@mittosystems.com>
PR gdb/20948
* elf.c (_bfd_elf_write_object_contents): Return from function
early if abfd->direction == both_direction.
gdb/testsuite/ChangeLog
2018-09-24 Jozef Lawrynowicz <jozef.l@mittosystems.com>
PR gdb/20948
* gdb.base/write_mem.exp: New test.
* gdb.base/write_mem.c: Likewise.
commit b5a9bfbebec0a42d3c5b4fe3b7a62bd31cecc440
Author: Tom Tromey <tom@tromey.com>
Date: Mon Sep 24 06:15:17 2018 -0600
Add "const" to a few locals in gdb
I noticed that some code in gdb was doing:
char *mumble = getenv (...)
However, using "const char *" here would be clearer.
This patch fixes the instances I could readily build.
Tested by rebuilding.
gdb/ChangeLog
2018-09-24 Tom Tromey <tom@tromey.com>
* common/pathstuff.c (get_standard_cache_dir): Make
"xdg_cache_home" and "home" const.
* top.c (init_history): Make "tmpenv" const.
* main.c (get_init_files): Make "homedir" const.
commit ae778caf097e08497f2e9218cf68b254b8da38f1
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 15 01:09:22 2018 -0600
Allow setting a parameter to raise gdb.GdbError
A convention in the Python layer is that raising a gdb.GdbError will
not print the Python stack -- instead the exception is treated as any
other gdb exception.
PR python/18852 asks that this treatment be extended the the
get_set_value method of gdb.Parameter. This makes sense, because it
lets Python-created parameters act like gdb parameters.
2018-09-23 Tom Tromey <tom@tromey.com>
PR python/18852:
* python/py-param.c (get_set_value): Use gdbpy_handle_exception.
gdb/doc/ChangeLog
2018-09-23 Tom Tromey <tom@tromey.com>
PR python/18852:
* python.texi (Parameters In Python): Document exception behavior
of get_set_string.
gdb/testsuite/ChangeLog
2018-09-23 Tom Tromey <tom@tromey.com>
PR python/18852:
* gdb.python/py-parameter.exp: Add test for parameter that throws
on "set".
commit 2b4ad2fe4300489fd40dbe07e1675ff1cf0bee58
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 15 00:57:12 2018 -0600
Consolidate gdb.GdbError handling
I noticed two nearly identical copies of the same code for handling
gdb.GdbError. The only differences were in some error messages.
These differences didn't seem very important, so this patch pulls the
code out into a new function.
2018-09-23 Tom Tromey <tom@tromey.com>
* python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
* python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
* python/python-internal.h (gdbpy_handle_exception): Declare.
* python/py-utils.c (gdbpy_handle_exception): New function.
commit fd3ba736db19d4c7cd928f3735329339a8c8ef47
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 15 00:29:20 2018 -0600
Check for negative argument in Type.template_argument
typy_template_argument did not check if the template argument was
non-negative. A negative value could cause a gdb crash.
2018-09-23 Tom Tromey <tom@tromey.com>
PR python/17284:
* python/py-type.c (typy_template_argument): Check for negative
argument number.
gdb/testsuite/ChangeLog
2018-09-23 Tom Tromey <tom@tromey.com>
PR python/17284:
* gdb.python/py-template.exp (test_template_arg): Add test for
negative template argument number.
commit 39a24317ac65837663ce1e1b0adcf880758ddc8e
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 15 00:07:32 2018 -0600
Report Python errors coming from gdb.post_event
PR python/14062 points out that errors coming from the gdb.post_event
callback are not reported. This can make it hard to understand why
your Python code in gdb isn't working.
Because users have control over whether exceptions are printed at all,
it seems good to simply have post_event report errors in the usual
way.
2018-09-23 Tom Tromey <tom@tromey.com>
PR python/14062:
* python/python.c (gdbpy_run_events): Do not ignore exceptions.
gdb/testsuite/ChangeLog
2018-09-23 Tom Tromey <tom@tromey.com>
PR python/14062:
* gdb.python/python.exp: Add test for post_event error.
commit f5769a2c696affc3ae1274e2329777d7d4d7e8be
Author: Tom Tromey <tom@tromey.com>
Date: Fri Sep 14 23:20:58 2018 -0600
Allow conversion of pointers to Python int
PR python/18170 questions why it's not possible to convert a pointer
value to a Python int.
Digging a bit shows that the Python 2.7 int() constructor will happily
return a long in some cases. And, it seems gdb already understands
this in other places -- this is what gdb_py_object_from_longest
handles.
So, this patch simply extends valpy_int to allow pointer conversions,
as valpy_long does.
gdb/ChangeLog
2018-09-23 Tom Tromey <tom@tromey.com>
PR python/18170:
* python/py-value.c (valpy_int): Allow conversion from pointer
type.
gdb/testsuite/ChangeLog
2018-09-23 Tom Tromey <tom@tromey.com>
PR python/18170:
* gdb.python/py-value.exp (test_value_numeric_ops): Add tests to
convert pointers to int and long.
commit 1c1e54f6b4b6de83aa3f31e6584f5bb4d6242930
Author: Tom Tromey <tom@tromey.com>
Date: Fri Sep 14 22:44:10 2018 -0600
Preserve sign when converting gdb.Value to Python int
PR python/20126 points out that sometimes the conversion of a
gdb.Value can result in a negative Python integer. This happens
because valpy_int does not examine the signedness of the value's type.
gdb/ChangeLog
2018-09-23 Tom Tromey <tom@tromey.com>
PR python/20126:
* python/py-value.c (valpy_int): Respect type sign.
gdb/testsuite/ChangeLog
2018-09-23 Tom Tromey <tom@tromey.com>
PR python/20126:
* gdb.python/py-value.exp (test_value_numeric_ops): Add
signed-ness conversion tests.
commit fb4fa9469c5f5d87a956d45ed3b36fecc1fc31b9
Author: Tom Tromey <tom@tromey.com>
Date: Fri Sep 14 22:31:12 2018 -0600
Allow more Python scalar conversions
PR python/18352 points out that the gdb Python code can't convert an
integer-valued gdb.Value to a Python float. While writing the test I
noticed that, similarly, converting integer gdb.Values to float does
not work. However, all of these cases seem reasonable.
gdb/ChangeLog
2018-09-23 Tom Tromey <tom@tromey.com>
PR python/18352;
* python/py-value.c (valpy_float): Allow conversions from int or
char.
(valpy_int, valpy_long): Allow conversions from float.
gdb/testsuite/ChangeLog
2018-09-23 Tom Tromey <tom@tromey.com>
PR python/18352;
* gdb.python/py-value.exp (test_float_conversion): New proc.
Use it.
commit e6b5f1e9f5aace67505b4eff43570c82b56139b9
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Sep 24 00:00:42 2018 +0000
Automatic date update in version.in
commit 6031ac352c05c5c9f44e24fa1c5a8222a7a7d02d
Author: Sandra Loosemore <sandra@codesourcery.com>
Date: Sun Sep 23 12:31:23 2018 -0700
Fix incorrect extraction of signed constants in nios2 disassembler.
2018-09-23 Sandra Loosemore <sandra@codesourcery.com>
opcodes/
* nios2-dis.c (nios2_print_insn_arg): Make sure signed conversions
are used when extracting signed fields and converting them to
potentially 64-bit types.
commit 65773341ee5ad9e2882fcb1aed7c3096e6b4f190
Author: Tom Tromey <tom@tromey.com>
Date: Tue Sep 18 16:45:59 2018 -0600
Mark more file descriptors close-on-exec
I noticed a couple of spots in gdb that were opening files but not
marking the file descriptors as close-on-exec. This patch fixes
these.
There are still a few more of these, but they are in code that I can't
compile, so I'd prefer not to touch.
gdb/ChangeLog
2018-09-23 Tom Tromey <tom@tromey.com>
* ctf.c (ctf_start): Use gdb_fopen_cloexec.
* common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
commit 1db88d2272a776200db950c2af46e64e98ef056b
Author: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Date: Sun Sep 23 19:49:14 2018 +0200
Also recognize __sighndlr on Solaris/x86
Unlike Solaris/SPARC, the __sighndlr function isn't recognized as part
of a signal handler, causing a couple of testcases to fail.
The following patch fixes that. A followup patch will move this to
common code to avoid such unnecessary discrepancies between
Solaris/SPARC and x86 in the future.
While this fixes a couple of backtraces to now correctly print
#1 <signal handler called>
they often fail later with
#2 0x0ff3ffffff00857f in ?? ()
Backtrace stopped: Cannot access memory at address 0xff3000002e0886f
which needs further investigation.
Tested on amd64-pc-solaris2.11 (running the tests with both -m64 and
-m32).
* amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
__sighndlr.
* i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
commit a44294f5ed9fe09fdfc9427f6f83677843590524
Author: Jon Turney <jon.turney@dronecode.org.uk>
Date: Mon Sep 26 15:45:28 2016 +0100
Remove a spurious target_terminal::ours() from windows_nat_target::wait()
This causes the inferior to stop with SIGTTIN if it tries to read from the
terminal after it has been continued.
See https://cygwin.com/ml/cygwin/2016-09/msg00285.html for reproduction.
Since MinGW doesn't have a tcsetpgrp(), I don't think this problem would be
observed there, but Cygwin does so target_terminal::ours() will call it.
Calling target_terminal::ours() here seems to be is no longer appropriate
after the "Merge async and sync code paths" changes (as the inferior is now
in a separate process group even in sync mode(?), which is always used on
Windows targets)
This call was added in commit c44537cf (and see
https://sourceware.org/ml/gdb-patches/2007-02/msg00167.html for what it
fixed, which is not regressed by this change)
When windows_nat_target::wait() is entered, the inferior is running (either
it's been just been started or attached to, or windows_continue() was
called), so grabbing the controlling terminal away from it here seems to be
wrong, since infrun.c takes care of calling target_terminal::ours() when the
inferior stops.
gdb/ChangeLog:
2018-08-02 Jon Turney <jon.turney@dronecode.org.uk>
* windows-nat.c (windows_nat_target::wait): Remove a spurious
target_terminal::ours().
commit 0c0a40e0abb9f1a584330a1911ad06b3686e5361
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Sun Sep 23 10:12:29 2018 -0400
Fix build error in aarch64-linux-tdep.c on macOS
When building with --enable-targets=all on macOS, I get this error:
CXX aarch64-linux-tdep.o
/Users/simark/src/binutils-gdb/gdb/aarch64-linux-tdep.c:328:7: error: no matching function for call to 'store_integer'
store_integer ((gdb_byte *)&vg_target, sizeof (uint64_t), byte_order,
^~~~~~~~~~~~~
/Users/simark/src/binutils-gdb/gdb/defs.h:556:13: note: candidate template ignored: requirement 'Or<is_same<unsigned long long, long>, is_same<unsigned long long, unsigned long> >::value' was not satisfied [with T = unsigned long long]
extern void store_integer (gdb_byte *addr, int len, enum bfd_endian byte_order,
^
I believe it's because uint64_t is defined as "unsigned long long" on macOS,
even though "unsigned long" is also 64 bits. Other 64-bits platforms define
uint64_t as "unsigned long".
This makes the type of the argument to store_integer (unsigned long long) not
match the requirement that it must be the same as ULONGEST, which is unsigned
long.
Fix it by changing the type of the vl variable to be ULONGEST, which is what
extract_unsigned_integer returns anyway.
gdb/ChangeLog:
* aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
of vl to ULONGEST.
commit 948f29603949cca8ccf581e0a09c08576d52c7b2
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Sep 23 00:00:57 2018 +0000
Automatic date update in version.in
commit fa0bb0c9f598d524305b889e0625781bb9fc9179
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Sep 22 00:00:35 2018 +0000
Automatic date update in version.in
commit dfc616fa26e8ee363a6dbf748dd9490896679412
Author: Alan Modra <amodra@gmail.com>
Date: Fri Sep 21 12:46:03 2018 +0930
Revert part of commit 32ec8896025
echo "__thread char *p;" | gcc -c -g -xc - -o thread.o
With current powerpc64le-linux-gcc has this reloc in .debug_info
0000000000000025 0000000d0000004e R_PPC64_DTPREL64 0000000000000000 p + 8000
That stops me looking at .debug_info.
~/build/gas-virgin/powerpc64le-linux/binutils/readelf -wi thread.o
readelf: Warning: unable to apply unsupported reloc type 78 to section .debug_info
Older readelf continued on after the warning, dumping .debug_info.
* readelf.c (apply_relocations): Don't return FALSE for warnings.
commit f24ff6e9b5adc7983c3ad7cf28375eb49921b3ed
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Fri Sep 21 10:27:48 2018 -0400
csky-opc.h: Initialize fields of last array elements
clang gives these errors:
In file included from /Users/simark/src/binutils-gdb/opcodes/csky-dis.c:30:
/Users/simark/src/binutils-gdb/opcodes/csky-opc.h:2330:8: error: missing field 'transfer' initializer [-Werror,-Wmissing-field-initializers]
{NULL}
^
/Users/simark/src/binutils-gdb/opcodes/csky-opc.h:8126:10: error: missing field 'transfer' initializer [-Werror,-Wmissing-field-initializers]
{NULL}
^
They go away when we Initialize all fields. I noticed there used to be some
files built with -Wno-missing-field-initializers, but it's not the case
anymore, since commit e7ae278d0474ab84ba3b1ee932a19e83616ddacc. There is still
a NO_WMISSING_FIELD_INITIALIZERS variable defined in the Makefile, but it's
unused, so I removed it to avoid further confusion.
opcodes/ChangeLog:
* Makefile.am: Remove NO_WMISSING_FIELD_INITIALIZERS.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* configure: Re-generate.
* configure.ac: Remove check for -Wno-missing-field-initializers.
* csky-opc.h (csky_v1_opcodes): Initialize all fields of last element.
(csky_v2_opcodes): Likewise.
commit a767a1c4d3c7c5dd2f32cc106a21c1e01eddebcc
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Fri Sep 21 10:27:30 2018 -0400
elf32-nds32: Don't define fls if it is provided by the system
The fls function already exists on macOS and FreeBSD (and probably others),
leading to this error:
/Users/simark/src/binutils-gdb/bfd/elf32-nds32.c:5074:1: error: static declaration of 'fls' follows non-static declaration
fls (register unsigned int x)
^
/usr/include/strings.h:87:6: note: previous declaration is here
int fls(int) __OSX_AVAILABLE_STARTING(__MAC_10_5, __IPHONE_2_0);
^
Add a configure-time check for it, and only define it if the system doesn't
provide it.
bfd/ChangeLog:
* configure.ac: Check for fls.
* elf32-nds32.c (fls): Only define if !HAVE_FLS.
* config.in: Re-generate.
* configure: Re-generate.
commit 4daf19021fef36767e70845608a8a2c3b4d72f99
Author: Yacov Simhony <ysimhony@gmail.com>
Date: Fri Sep 21 07:53:51 2018 -0600
Remove redundant test in update_inserted_breakpoint_locations
Remove a redundant test in update_inserted_breakpoint_locations.
gdb/ChangeLog
2018-09-21 Yacov Simhony <ysimhony@gmail.com>
* breakpoint.c (update_inserted_breakpoint_locations): Remove
redundant condition.
commit 0192e8aeeb1f54ba10318d1b5a838749e20d233b
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Sep 21 04:36:08 2018 -0700
Correct ChangeLog entry for commit b8426d169d3f8a
commit b8426d169d3f8ab820f3bdaf45fbc64f8bb827ed
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Sep 21 04:24:40 2018 -0700
gas: Make bfin-parse.c/rl78-parse.c/rx-parse.c depend on bfd/reloc.c
It is for PR gas/23691, not PR gas/23692.
commit b8426d169d3f8ab820f3bdaf45fbc64f8bb827ed
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Sep 21 04:24:40 2018 -0700
gas: Make bfin-parse.c/rl78-parse.c/rx-parse.c depend on bfd/reloc.c
Since bfin-parse.c, rl78-parse.c and rx-parse.c use BFD_RELOC_XXX, we
need to regenerate them when bfd/reloc.c changhes.
PR gas/23692
* Makefile.am (bfin-parse.c): Depend on $(srcdir)/../bfd/reloc.c.
(rl78-parse.c): Likewise.
(rx-parse.c): Likewise.
* Makefile.in: Regenerated.
commit 95475e5d6b7529309ca804fdc2c2e04d654c3978
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Sep 21 04:07:50 2018 -0700
ELF: Don't include zero size sections at start of PT_NOTE segment
We shouldn't include zero size sections at start of PT_NOTE segment,
similar to PT_DYNAMIC segment.
PR binutils/23694
* include/elf/internal.h (ELF_SECTION_IN_SEGMENT_1): Don't
include zero size sections at start of PT_NOTE segment.
commit be9a9af90654c29c2e90375a64b4d18ef75c56a0
Author: Alan Modra <amodra@gmail.com>
Date: Fri Sep 21 09:52:08 2018 +0930
Fix more fallout from 17f6ade235fc
gas/
* testsuite/gas/avr/large-debug-line-table.d: Update.
ld/
* testsuite/ld-avr/gc-section-debugline.d: Update.
commit c6a1c98cbc7cea017f030b3fb9c3f9581ee4ec33
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Sep 21 00:00:35 2018 +0000
Automatic date update in version.in
commit 3def145413e9707c985fa9c1dfda0682be750e55
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Sep 20 12:28:09 2018 -0700
ld: Add the entry symbol, _main, for LynxOS targets
Add the entry symbol, _main, to fix:
FAIL: ld-elf/64ksec
FAIL: ld-elf/comm-data4
FAIL: ld-elf/comm-data5
FAIL: ld-elf/eh5
FAIL: ld-elf/empty
FAIL: ld-elf/empty2
FAIL: ld-elf/endsym
FAIL: ld-elf/exclude3a
FAIL: ld-elf/linkonce2
FAIL: ld-elf/orphan3
FAIL: ld-elf/pr12851
FAIL: ld-elf/pr14156a
FAIL: ld-elf/pr14156b
FAIL: ld-elf/pr14926
FAIL: ld-elf/pr20513a
FAIL: ld-elf/pr20513b
FAIL: ld-elf/stab
FAIL: ld-elf/var1
FAIL: ld-elf/warn3
FAIL: section size overflow
for i386-lynxos target.
* testsuite/ld-checks/over2.s: Add "_main" for LynxOS targets.
* testsuite/ld-elf/comm-data4.s: Likewise.
* testsuite/ld-elf/comm-data5.s: Likewise.
* testsuite/ld-elf/eh5b.s: Likewise.
* testsuite/ld-elf/empty.s: Likewise.
* testsuite/ld-elf/empty2.s: Likewise.
* testsuite/ld-elf/exclude3.s: Likewise.
* testsuite/ld-elf/fini0.s: Likewise.
* testsuite/ld-elf/init0.s: Likewise.
* testsuite/ld-elf/linkonce1b.s: Likewise.
* testsuite/ld-elf/orphan3a.s: Likewise.
* testsuite/ld-elf/pr14926.s: Likewise.
* testsuite/ld-elf/pr20513a.s: Likewise.
* testsuite/ld-elf/sec64k.exp: Likewise.
* testsuite/ld-elf/start.s: Likewise.
* testsuite/ld-elf/var1.s: Likewise.
commit dbfcd05365abb8c919517df8b6d718bb85b0aefe
Author: Jim Wilson <jimw@sifive.com>
Date: Thu Sep 20 12:06:28 2018 -0700
RISC-V: Fix library search path for rv32.
2018-09-19 Kito Cheng <kito@andestech.com>
ld/
* emulparams/elf32lriscv.sh: Correct the library search path.
* emulparams/elf32lriscv_ilp32.sh: Likewise.
* emulparams/elf32lriscv_ilp32f.sh: Likewise.
commit c475f569191cc0257bf0959c3475ca08644125b1
Author: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Date: Thu Sep 20 20:01:05 2018 +0200
More Solaris procfs cleanup
This procfs.c (and friends) cleanup patch grew along a couple of lines:
* First I noticed that PR_MODEL_NATIVE is always defined now that
Solaris 10 is the minimum supported version.
* Then there was a cleanup that I'd missed when removing support for
!NEW_PROC_API, IRIX, and Tru64 UNIX: given that sysset_t is no longer
dynamic, there's no need for the special sysset_t_alloc, but we can
just use XNEW instead.
* Then I found one of those ARI warning mails on gdb-patches, discovered
how to run it myself and fixed a large number of the warnings, among
them all uses of sprintf.
I had to silence the warnings in only 3 instances of the same issue,
namely references to LDT in function names which are due to the
libthread_db API.
* Even so, there were several formatting glitches, like braces around
single statements in an if, which I chose to fix while I was at it.
The result has been tested on amd64-pc-solaris2.11 and
amd64-pc-solaris2.11.
* proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
* procfs.c: Don't check for PR_MODEL_NATIVE definition.
* sparc-sol2-nat.c: Likewise. Remove Linux, __arch64__ references.
* sol-thread.c (ps_pdmodel): Don't guard definition.
* procfs.c: Fix formatting.
* procfs.c (sysset_t_alloc): Remove.
(create_procinfo): Use XNEW instead of sysset_t_alloc.
(procfs_debug_inferior): Likewise.
(procfs_set_exec_trap): Likewise.
(proc_set_traced_sysentry): Don't allocate argp dynamically.
(proc_set_traced_sysexit): Likewise.
* procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
(dead_procinfo): Likewise.
(proc_warn): Likewise.
(proc_error): Likewise.
(proc_get_LDT_entry): Likewise.
(do_attach): Likewise.
(procfs_target::pid_to_str): Likewise.
(iterate_over_mappings): Likewise.
* procfs.c (create_procinfo): Fix ARI warning.
(proc_get_status): Likewise.
(proc_stop_process): Likewise.
(proc_run_process): Likewise.
(proc_kill): Likewise.
(proc_get_LDT_entry): Likewise.
(procfs_find_LDT_entry): Likewise.
(proc_update_threads): Likewise.
(proc_iterate_over_threads): Likewise.
(do_attach): Likewise.
(procfs_xfer_memory): Likewise.
(invalidate_cache): Likewise.
(procfs_target::resume): Likewise.
(procfs_init_inferior): Likewise.
(procfs_set_exec_trap): Likewise.
(procfs_target::thread_alive): Likewise.
(procfs_target::pid_to_exec_file): Likewise.
(iterate_over_mappings): Likewise.
(procfs_target::make_corefile_notes): Likewise.
* sol-thread.c (sol_thread_target::thread_alive): Likewise.
* procfs.c (procfs_find_LDT_entry): Silence ARI warning.
(procfs_find_LDT_entry): Likewise.
* sol-thread.c (ps_lgetLDT): Likewise.
commit ddb77fcccbbff14d6426d01357942e88d240dfbe
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Sep 20 10:55:36 2018 -0700
gas: Update expected outputs of "readelf -wL"
Update expected outputs of "readelf -wL" for
commit 17f6ade235fc96b4e572b5251b344d426c5f1cd5
Author: John Darrington <john@darrington.wattle.id.au>
Date: Wed Sep 19 19:56:29 2018 +0200
binutils --dwarf=decodedline: Add display of is_stmt flag
which adds display of is_stmt flag.
PR binutils/23695
* testsuite/gas/elf/dwarf2-11.d: Update expected outputs of
"readelf -wL".
* testsuite/gas/elf/dwarf2-12.d: Likewise.
* testsuite/gas/elf/dwarf2-13.d: Likewise.
* testsuite/gas/elf/dwarf2-14.d: Likewise.
* testsuite/gas/elf/dwarf2-15.d: Likewise.
* testsuite/gas/elf/dwarf2-16.d: Likewise.
* testsuite/gas/elf/dwarf2-17.d: Likewise.
* testsuite/gas/elf/dwarf2-18.d: Likewise.
* testsuite/gas/elf/dwarf2-5.d: Likewise.
* testsuite/gas/elf/dwarf2-6.d: Likewise.
* testsuite/gas/elf/dwarf2-7.d: Likewise.
commit 17f6ade235fc96b4e572b5251b344d426c5f1cd5
Author: John Darrington <john@darrington.wattle.id.au>
Date: Wed Sep 19 19:56:29 2018 +0200
binutils --dwarf=decodedline: Add display of is_stmt flag
binutils/
* dwarf.c (display_debug_lines_decoded): Add display of is_stmt.
* testsuite/binutils-all/dw5.W: Deal with the consequences.
* testsuite/binutils-all/objdump.WL: Deal with the consequences.
commit a466edac5f9913e3373e59335607e9666a0ac8c7
Author: Hafiz Abid Qadeer <abidh@codesourcery.com>
Date: Tue Sep 18 11:23:30 2018 +0100
Add '_' in the match pattern.
I was looking at GDB testcase results for arm-eabi target with qemu and
noticed that register groups returned by the qemu can have '_' in the
name e.g. 'cp_regs'. The reggroups.exp fails to recognize that as group
name. Fixed by adding '_' in the pattern.
2018-09-20 Hafiz Abid Qadeer <abidh@codesourcery.com>
gdb.base/reggroups.exp (fetch_reggroups): Add '_' in match pattern.
commit fa9d2bd6b819ce143c149cee83456fa9dfe729b4
Author: Maciej W. Rozycki <macro@linux-mips.org>
Date: Thu Sep 20 15:49:01 2018 +0100
S12Z/GAS: Correct a signed vs unsigned comparison error with GCC 4.1
Fix a build error:
cc1: warnings being treated as errors
.../gas/config/tc-s12z.c: In function 'lex_opr':
.../gas/config/tc-s12z.c:617: warning: comparison between signed and unsigned
.../gas/config/tc-s12z.c:624: warning: comparison between signed and unsigned
make[4]: *** [config/tc-s12z.o] Error 1
observed with GCC 4.1.2 with the `s12z-elf' target.
Here we have a constant assembly instruction operand, whose value is
within the 24-bit unsigned range, to be placed in a machine instruction
such as to use the least space-consuming encoding. So the sign of that
value does not matter, because signed values are out of range and are
not supposed to appear here, and we only have this warning here because
the `X_add_number' member of `struct expressionS' is of the `offsetT'
type, which is signed.
Use an auxiliary variable of an unsigned data type then, observing that
both `offsetT' and `valueT' have the same width, as they correspond to
`bfd_signed_vma' and `bfd_vma' respectively.
gas/
* config/tc-s12z.c (lex_opr): Use an auxiliary unsigned variable
in encoding a constant operand.
commit 16de26a611b78bd353af5b86ce67ace81ec1bfec
Author: Maciej W. Rozycki <macro@linux-mips.org>
Date: Thu Sep 20 15:49:01 2018 +0100
PPC/GAS: Correct a signed vs unsigned comparison error with GCC 4.1
Fix a build error:
cc1: warnings being treated as errors
.../gas/config/tc-ppc.c: In function 'ppc_dwsect':
.../gas/config/tc-ppc.c:4091: warning: comparison between signed and unsigned
make[4]: *** [config/tc-ppc.o] Error 1
observed with GCC 4.1.2 with the `powerpc-beos' target.
Here `flag' identifies the type of a DWARF section, as used with the the
first operand to the `.dwsect' pseudo-op, and has no notion of a sign,
or for that matter being arithmetic in the first place[1]. We already
handle this correctly with the `flag' member of the `xcoff_dwsect_name'
structure, however not in the local variable used in GAS to hold the
parsed value of said `.dwsect' pseudo-op's operand.
Use an unsigned data type in GAS then too, observing that both `offsetT'
and `valueT' have the same width, as they correspond to `bfd_signed_vma'
and `bfd_vma' respectively.
References:
[1] "AIX Version 7.2: Assembler Language Reference", IBM Corporation
2015, 2018, Section ".dwsect pseudo-op", pp. 531-532
gas/
* config/tc-ppc.c (ppc_dwsect): Use `valueT' rather than
`offsetT' as the type of `flag'.
commit 53b6d6f5b2d8681cc4a061e05fe28ef896900908
Author: Maciej W. Rozycki <macro@linux-mips.org>
Date: Thu Sep 20 15:49:00 2018 +0100
ARC: Fix build errors with large constants and C89
Fix build errors:
cc1: warnings being treated as errors
In file included from .../opcodes/arc-opc.c:2630:
.../opcodes/arc-nps400-tbl.h:38: warning: integer constant is too large for 'long' type
.../opcodes/arc-nps400-tbl.h:38: warning: integer constant is too large for 'long' type
.../opcodes/arc-nps400-tbl.h:41: warning: integer constant is too large for 'long' type
.../opcodes/arc-nps400-tbl.h:41: warning: integer constant is too large for 'long' type
[...]
.../opcodes/arc-nps400-tbl.h:712: warning: integer constant is too large for 'long' type
.../opcodes/arc-nps400-tbl.h:712: warning: integer constant is too large for 'long' type
.../opcodes/arc-nps400-tbl.h:715: warning: integer constant is too large for 'long' type
.../opcodes/arc-nps400-tbl.h:715: warning: integer constant is too large for 'long' type
make[4]: *** [arc-opc.lo] Error 1
and:
cc1: warnings being treated as errors
.../gas/config/tc-arc.c: In function 'md_number_to_chars_midend':
.../gas/config/tc-arc.c:802: warning: integer constant is too large for 'long' type
.../gas/config/tc-arc.c:810: warning: integer constant is too large for 'long' type
make[4]: *** [config/tc-arc.o] Error 1
observed with GCC 4.1.2 and presumably other C89 compilers with the
`arc-elf' and `arc-linux-gnu' targets, caused by the use of constants
the values of which are outside the range of the `int' type (or the
`long' type if it is of the same with). In the C89 language standard
such constants are not implicitly converted to a wider type and an
explicit suffix is required for such constants.
Add a `ull' suffix then as with such constants used in other ports.
gas/
* config/tc-arc.c (md_number_to_chars_midend): Append `ull' to
large constants.
opcodes/
* arc-nps400-tbl.h: Append `ull' to large constants throughout.
commit ed3162adc45291b3de496be25911ebfd39f43a36
Author: Maciej W. Rozycki <macro@linux-mips.org>
Date: Thu Sep 20 15:49:00 2018 +0100
RS6000/BFD: Remove dead duplicate `config.bfd' target matchers
Remove duplicate `rs6000-*-aix5.[01]' and `rs6000-*-aix[5-9]*' target
configuration selectors meant to correspond to `powerpc64-*-aix5.[01]'
and `powerpc64-*-aix[5-9]*' respectively for the purpose of BFD target
vector selection in `config.bfd'.
These selectors were added with commit 9a9e2ca33263 ("rs6000 xcoff bfd
config"), <https://sourceware.org/ml/binutils/2010-12/msg00372.html>,
and have been dead right from the beginning, because they appear twice
each in the case statement, which means the earlier instance of each
takes precedence and the other one is ignored. Here ones that alias to
`powerpc-*-aix5.[01]' and `powerpc-*-aix[5-9]*' respectively immediately
above are used instead.
bfd/
* config.bfd <rs6000-*-aix5.[01], rs6000-*-aix[5-9]*>: Remove
duplicate `case' selectors.
commit fbaf61ad525eb2818598b699d44df32e46583925
Author: Nick Clifton <nickc@redhat.com>
Date: Thu Sep 20 13:27:31 2018 +0100
Andes Technology has good news for you, we plan to update the nds32 port of binutils on upstream!
We have not only removed all unsupported and obsolete code, but also supported lost of new features,
including better link-time relaxations and TLS implementations. Besides, the files generated by the
newly assembler and linker usually get higher performance and more optimized code size.
ld * emultempl/nds32elf.em (hyper_relax): New variable.
(nds32_elf_create_output_section_statements):
the parameters of bfd_elf32_nds32_set_target_option
(PARSE_AND_LIST_PROLOGUE, PARSE_AND_LIST_OPTIONS,
PARSE_AND_LIST_ARGS_CASES): Add new option --mhyper-relax.
* emultempl/nds32elf.em (nds32_elf_after_open): Updated.
* emultempl/nds32elf.em (tls_desc_trampoline): New variable.
* (nds32_elf_create_output_section_statements): Updated.
* (nds32_elf_after_parse): Disable relaxations when PIC is enable.
* (PARSE_AND_LIST_PROLOGUE, PARSE_AND_LIST_OPTIONS,
PARSE_AND_LIST_ARGS_CASES): Add new option --m[no-]tlsdesc-trampoline.
include * elf/nds32.h: Remove the unused target features.
* dis-asm.h (disassemble_init_nds32): Declared.
* elf/nds32.h (E_NDS32_NULL): Removed.
(E_NDS32_HAS_DSP_INST, E_NDS32_HAS_ZOL): New.
* opcode/nds32.h: Ident.
(N32_SUB6, INSN_LW): New macros.
(enum n32_opcodes): Updated.
* elf/nds32.h: Doc fixes.
* elf/nds32.h: Add R_NDS32_LSI.
* elf/nds32.h: Add new relocations for TLS.
gas * config/tc-nds32.c: Remove the unused target features.
(nds32_relax_relocs, md_pseudo_table, nds32_elf_record_fixup_exp,
nds32_set_elf_flags_by_insn, nds32_insert_relax_entry,
nds32_apply_fix): Likewise.
(nds32_no_ex9_begin): Removed.
* config/tc-nds32.c (add_mapping_symbol_for_align,
make_mapping_symbol, add_mapping_symbol): New functions.
* config/tc-nds32.h (enum mstate): New.
(nds32_segment_info_type): Likewise.
* configure.ac (--enable-dsp-ext, --enable-zol-ext): New options.
* config.in: Regenerated.
* configure: Regenerated.
* config/tc-nds32.c (nds32_dx_regs):
Set the value according to the configuration.
(nds32_perf_ext, nds32_perf_ext2, nds32_string_ext, nds32_audio_ext):
Likewise.
(nds32_dsp_ext): New variable. Set the value according to the
configuration.
(nds32_zol_ext): Likewise.
(asm_desc, nds32_pseudo_opcode_table): Make them static.
(nds32_set_elf_flags_by_insn): Updated.
(nds32_check_insn_available): Updated.
(nds32_str_tolower): New function.
* config/tc-nds32.c (relax_table): Updated.
(md_begin): Updated.
(md_assemble): Use XNEW macro to allocate space for `insn.info',
and then remember to free it.
(md_section_align): Cast (-1) to ValueT.
(nds32_get_align): Cast (~0U) to addressT.
(nds32_relax_branch_instructions): Updated.
(md_convert_frag): Add new local variable `final_r_type'.
(invalid_prev_frag): Add new bfd_boolean parameter `relax'.
All callers changed.
* config/tc-nds32.c (struct nds32_relocs_pattern): Add `insn' field.
(struct nds32_hint_map): Add `option_list' field.
(struct suffix_name, suffix_table): Remove the unused `pic' field.
(do_pseudo_b, do_pseudo_bal): Remove the suffix checking.
(do_pseudo_la_internal, do_pseudo_pushpopm): Indent.
(relax_hint_bias, relax_hint_id_current): New static variables.
(reset_bias, relax_hint_begin): New variables.
(nds_itoa): New function.
(CLEAN_REG, GET_OPCODE): New macros.
(struct relax_hint_id): New.
(nds32_relax_hint): For .relax_hint directive, we can use `begin'
and `end' to mark the relax pattern without giving exactly id number.
(nds32_elf_append_relax_relocs): Handle the case that the .relax_hint
directives are attached to pseudo instruction.
(nds32_elf_save_pseudo_pattern): Change the second parameter from
instruction's opcode to byte code.
(nds32_elf_build_relax_relation): Add new bfd_boolean parameter
`pseudo_hint'.
(nds32_lookup_pseudo_opcode): Fix the overflow issue.
(enum nds32_insn_type): Add N32_RELAX_ALU1 and N32_RELAX_16BIT.
(nds32_elf_record_fixup_exp, relax_ls_table, hint_map,
nds32_find_reloc_table, nds32_match_hint_insn, nds32_parse_name):
Updated.
* config/tc-nds32.h (MAX_RELAX_NUM): Extend it to 6.
(enum nds32_relax_hint_type): Merge NDS32_RELAX_HINT_LA and
NDS32_RELAX_HINT_LS into NDS32_RELAX_HINT_LALS. Add
NDS32_RELAX_HINT_LA_PLT, NDS32_RELAX_HINT_LA_GOT and
NDS32_RELAX_HINT_LA_GOTOFF.
* config/tc-nds32.h (relax_ls_table): Add floating load/store
to gp relax pattern.
(hint_map, nds32_find_reloc_table): Likewise.
* configure.ac: Define NDS32_LINUX_TOOLCHAIN.
* configure: Regenerated.
* config.in: Regenerated.
* config/tc-nds32.h (enum nds32_ramp): Updated.
(enum nds32_relax_hint_type): Likewise.
* config/tc-nds32.c: Include "errno.h" and "limits.h".
(relax_ls_table): Add TLS relax patterns.
(nds32_elf_append_relax_relocs): Attach BFD_RELOC_NDS32_GROUP on
each instructions of TLS patterns.
(nds32_elf_record_fixup_exp): Updated.
(nds32_apply_fix): Likewise.
(suffix_table): Add TLSDESC suffix.
binutils* testsuite/binutils-all/objcopy.exp: Set the unsupported reloc number
from 215 to 255 for NDS32.
bfd * elf32-nds32.c (nds32_elf_relax_loadstore):
Remove the unused target features.
(bfd_elf32_nds32_set_target_option): Remove the unused parameters.
(nds32_elf_relax_piclo12, nds32_elf_relax_letlslo12,
nds32_elf_relax_letlsadd, nds32_elf_relax_letlsls,
nds32_elf_relax_pltgot_suff, nds32_elf_relax_got_suff
nds32_elf_relax_gotoff_suff, calculate_plt_memory_address,
calculate_plt_offset, calculate_got_memory_address,
nds32_elf_check_dup_relocs): Removed.
All callers changed.
* elf32-nds32.h: Remove the unused macros and defines.
(elf_nds32_link_hash_table): Remove the unused variable.
(bfd_elf32_nds32_set_target_option): Update prototype.
(nds32_elf_ex9_init): Removed.
* elf32-nds32.c (nds32_convert_32_to_16): Updated.
* elf32-nds32.c (HOWTO2, HOWTO3): Define new HOWTO macros
to initialize array nds32_elf_howto_table in any order
without lots of EMPTY_HOWTO.
(nds32_reloc_map): Updated.
* reloc.c: Add BFD_RELOC_NDS32_LSI.
* bfd-in2.h: Regenerated.
* bfd/libbfd.h: Regenerated.
* elf32-nds32.c (nds32_elf_relax_howto_table): Add R_NDS32_LSI.
(nds32_reloc_map): Likewise.
(nds32_elf_relax_flsi): New function.
(nds32_elf_relax_section): Support floating load/store relaxation.
* elf32-nds32.c (NDS32_GUARD_SEC_P, elf32_nds32_local_gp_offset):
New macro.
(struct elf_nds32_link_hash_entry): New `offset_to_gp' field.
(struct elf_nds32_obj_tdata): New `offset_to_gp' and `hdr_size' fields.
(elf32_nds32_allocate_local_sym_info, nds32_elf_relax_guard,
nds32_elf_is_target_special_symbol, nds32_elf_maybe_function_sym):
New functions.
(nds32_info_to_howto_rel): Add BFD_ASSERT.
(bfd_elf32_bfd_reloc_type_table_lookup, nds32_elf_link_hash_newfunc,
nds32_elf_link_hash_table_create, nds32_elf_relocate_section,
nds32_elf_relax_loadstore, nds32_elf_relax_lo12, nds32_relax_adjust_label,
bfd_elf32_nds32_set_target_option, nds32_fag_mark_relax): Updated.
(nds32_elf_final_sda_base): Improve it to find the better gp value.
(insert_nds32_elf_blank): Must consider `len' when inserting blanks.
* elf32-nds32.h (bfd_elf32_nds32_set_target_option): Update prototype.
(struct elf_nds32_link_hash_table): Add new variable `hyper_relax'.
* elf32-nds32.c (elf32_nds32_allocate_dynrelocs): New function.
(create_got_section): Likewise.
(allocate_dynrelocs, nds32_elf_size_dynamic_sections,
nds32_elf_relocate_section, nds32_elf_finish_dynamic_symbol): Updated.
(nds32_elf_check_relocs): Fix the issue that the shared library may
has TEXTREL entry in the dynamic section.
(nds32_elf_create_dynamic_sections): Enable to call readonly_dynrelocs
since the TEXTREL issue is fixed in the nds32_elf_check_relocs.
(nds32_elf_finish_dynamic_sections): Update and add DT_RELASZ
dynamic entry.
(calculate_offset): Remove the unused parameter `pic_ext_target' and
related codes.
All callers changed.
(elf_backend_dtrel_excludes_plt): Disable it temporarily since it
will cause some errors for our test cases.
* elf32-nds32.c (nds32_elf_merge_private_bfd_data): Allow to link the
generic object.
* reloc.c: Add TLS relocations.
* libbfd.h: Regenerated.
* bfd-in2.h: Regenerated.
* elf32-nds32.h (struct section_id_list_t): New.
(elf32_nds32_lookup_section_id, elf32_nds32_check_relax_group,
elf32_nds32_unify_relax_group, nds32_elf_unify_tls_model):
New prototypes.
(elf32_nds32_compute_jump_table_size, elf32_nds32_local_tlsdesc_gotent):
New macro.
(nds32_insertion_sort, bfd_elf32_nds32_set_target_option,
elf_nds32_link_hash_table): Updated.
* elf32-nds32.c (enum elf_nds32_tls_type): New.
(struct elf32_nds32_relax_group_t, struct relax_group_list_t): New.
(elf32_nds32_add_dynreloc, patch_tls_desc_to_ie, get_tls_type,
fls, ones32, list_insert, list_insert_sibling, dump_chain,
elf32_nds32_check_relax_group, elf32_nds32_lookup_section_id,
elf32_nds32_unify_relax_group, nds32_elf_unify_tls_model): New functions.
(elf_nds32_obj_tdata): Add new fields.
(elf32_nds32_relax_group_ptr, nds32_elf_local_tlsdesc_gotent): New macros.
(nds32_elf_howto_table): Add TLS relocations.
(nds32_reloc_map): Likewise.
(nds32_elf_copy_indirect_symbol, nds32_elf_size_dynamic_sections,
nds32_elf_finish_dynamic_symbol, elf32_nds32_allocate_local_sym_info,
nds32_elf_relocate_section, bfd_elf32_nds32_set_target_option,
nds32_elf_check_relocs, allocate_dynrelocs): Updated.
(nds32_elf_relax_section): Call nds32_elf_unify_tls_model.
(dtpoff_base): Rename it to `gottpof' and then update it.
opcodes * nds32-asm.c (operand_fields): Remove the unused fields.
(nds32_opcodes): Remove the unused instructions.
* nds32-dis.c (nds32_ex9_info): Removed.
(nds32_parse_opcode): Updated.
(print_insn_nds32): Likewise.
* nds32-asm.c (config.h, stdlib.h, string.h): New includes.
(LEX_SET_FIELD, LEX_GET_FIELD): Update defines.
(nds32_asm_init, build_operand_hash_table, build_keyword_hash_table,
build_opcode_hash_table): New functions.
(nds32_keyword_table, nds32_keyword_count_table, nds32_field_table,
nds32_opcode_table): New.
(hw_ktabs): Declare it to a pointer rather than an array.
(build_hash_table): Removed.
* nds32-asm.h (enum): Add SYN_INPUT, SYN_OUTPUT, SYN_LOPT,
SYN_ROPT and upadte HW_GPR and HW_INT.
* nds32-dis.c (keywords): Remove const.
(match_field): New function.
(nds32_parse_opcode): Updated.
* disassemble.c (disassemble_init_for_target):
Add disassemble_init_nds32.
* nds32-dis.c (eum map_type): New.
(nds32_private_data): Likewise.
(get_mapping_symbol_type, is_mapping_symbol, nds32_symbol_is_valid,
nds32_add_opcode_hash_table, disassemble_init_nds32): New functions.
(print_insn_nds32): Updated.
* nds32-asm.c (parse_aext_reg): Add new parameter.
(parse_re, parse_re2, parse_aext_reg): Only reduced registers
are allowed to use.
All callers changed.
* nds32-asm.c (keyword_usr, keyword_sr): Updated.
(operand_fields): Add new fields.
(nds32_opcodes): Add new instructions.
(keyword_aridxi_mx): New keyword.
* nds32-asm.h (enum): Add NASM_ATTR_DSP_ISAEXT, HW_AEXT_ARIDXI_MX
and NASM_ATTR_ZOL.
(ALU2_1, ALU2_2, ALU2_3): New macros.
* nds32-dis.c (nds32_filter_unknown_insn): Updated.
commit cf93e9c2cf8f8b2566f8fc86e961592b51b5980d
Author: Alan Modra <amodra@gmail.com>
Date: Thu Sep 20 18:23:17 2018 +0930
PR23685, buffer overflow
PR 23685
* peXXigen.c (pe_print_edata): Correct export address table
overflow checks. Check dataoff against section size too.
commit 4206c05ea1542c413a4a361c29cbbd206861946c
Author: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Date: Thu Sep 20 11:23:27 2018 +0200
Provide pid_to_exec_file on Solaris (PR tdep/17903)
While looking through gdb.log, I found that two tests FAIL like this:
warning: No executable has been specified and target does not support
determining executable automatically. Try using the "file" command.
0x00400dc4 in ?? ()
(gdb) FAIL: gdb.base/attach.exp: attach2, with no file
The other is gdb.base/quit-live.exp. I've implemented the following
patch that fixes both failures, only then detecting that I'd previously
reported the issue as PR tdep/17903.
Tested on amd64-pc-solaris2.10 and amd64-pc-solaris2.11.
PR tdep/17903
* procfs.c (procfs_target): Declare pid_to_exec_file.
(procfs_target::pid_to_exec_file): New.
commit 3d282ac37064ec0105d3aa3f379f7fb8af98759c
Author: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Date: Thu Sep 20 10:23:46 2018 +0200
Handle missing Solaris auxv entries
Currently, three tests FAIL on Solaris 11.4+ (amd64-pc-solaris2.11 and
sparcv9-sun-solaris2.11):
info auxv
[...]
2009 AT_SUN_HWCAP Machine-dependent CPU capability hints 0x3f5ff7
2023 ??? 0x0
0 AT_NULL End of vector 0x0
(gdb) WARNING: Unrecognized tag value: 2023 ??? 0x0
FAIL: gdb.base/auxv.exp: info auxv on live process
info auxv
4294969310 ??? 0x7fffbfffe410
9225589753816 ??? 0x7fffbfffe45c
[...]
WARNING: Unrecognized tag value: 4294969310 ??? 0x7fffbfffe410
WARNING: Unrecognized tag value: 9225589753816 ??? 0x7fffbfffe45c
WARNING: Unrecognized tag value: 140733193388037 ??? 0x6
[...]
2009 AT_SUN_HWCAP Machine-dependent CPU capability hints 0x3f5ff7
2023 ??? 0x0
0 AT_NULL End of vector 0x0
(gdb) WARNING: Unrecognized tag value: 2023 ??? 0x0
UNRESOLVED: gdb.base/auxv.exp: info auxv on native core dump
info auxv
[...]
2009 AT_SUN_HWCAP Machine-dependent CPU capability hints 0x3f5ff7
2023 ??? 0x0
0 AT_NULL End of vector 0x0
(gdb) WARNING: Unrecognized tag value: 2023 ??? 0x0
FAIL: gdb.base/auxv.exp: info auxv on gcore-created dump
The following patch fixes this by introducing the missing AT_SUN_*
values from Solaris 11.4+ <sys/auxv.h>. This lets the live and
gcore-created dump tests PASS.
I don't know yet what's the reason for those weird 'Unrecognized tag
value' warnings with native core dumps is; elfdump -n certainly doesn't
show them. However, native core dumps still need quite some work
(mostly in bfd) in this and other areas.
Tested on amd64-pc-solaris2.11.
gdb:
* auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
renaming.
Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
include:
* elf/common.h (AT_SUN_HWCAP): Rename to ...
(AT_SUN_CAP_HW1): ... this. Retain old name for backward
compatibility.
(AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1)
(AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2): Define.
commit 8c93fae61550ee343ad15e98a6636c56bcb0dc9d
Author: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Date: Thu Sep 20 10:17:41 2018 +0200
Missed last ChangeLog entry.
commit 8674be792462bc4469b04723484c63ab4c7ad895
Author: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Date: Thu Sep 20 10:10:07 2018 +0200
Fold i386-v4-nat.c into i386-sol2-nat.c
I've been carrying around the following patch for some time. I noticed
that both i386-sol2-nat.c and i386-v4-nat.c are Solaris-only now and it
seems confusing to carry both around.
So this patch merges i386-v4-nat.c into i386-sol2-nat.c, simplifying it
in a couple of places, like removing checks for macros that are always
defined.
Tested on 64-bit Solaris 11.5/x86 (amd64-pc-solaris2.11) and 32-bit
Solaris 11.3/x86 (i386-pc-solaris2.11) half a year ago.
* i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
(supply_fpregset, fill_fpregset): Move ...
* i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
Remove references to ioctl-based procfs.
Include <sys/reg.h>.
Remove PR_MODEL_NATIVE guards.
* configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
* Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
commit 30838132997e6a3cfe3ec11c58b32b22f6f6b102
Author: Alan Modra <amodra@gmail.com>
Date: Thu Sep 20 15:29:17 2018 +0930
Bug 23686, two segment faults in nm
Fixes the bugs exposed by the testcases in the PR, plus two more bugs
I noticed when looking at _bfd_stab_section_find_nearest_line.
PR 23686
* dwarf2.c (read_section): Error when attempting to malloc
"(bfd_size_type) -1".
* syms.c (_bfd_stab_section_find_nearest_line): Bounds check
function_name. Bounds check reloc address. Formatting. Ensure
.stabstr zero terminated.
commit 4ee9b0c53a8055b869dfe424846bc00eb0cd0c8f
Author: Sandra Loosemore <sandra@codesourcery.com>
Date: Wed Sep 19 19:05:39 2018 -0700
Skip GDB tab-completion tests if no readline.
2018-09-18 Sandra Loosemore <sandra@codesourcery.com>
gdb/testsuite/
* gdb.base/complete-empty.exp: Skip tab-completion tests if
no readline.
* gdb.base/utf8-identifiers.exp: Likewise.
* gdb.cp/cpcompletion.exp: Likewise.
* gdb.linespec/cpcompletion.exp: Likewise.
* gdb.linespec/cpls-abi-tag.exp: Likewise.
* gdb.linespec/cpls-ops.exp: Likewise.
commit 343a4a21eba7383a023140c33a5763ae1d547fc2
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Sep 20 00:00:50 2018 +0000
Automatic date update in version.in
commit 79b32f4a3a109321cb9a99014293b0ade57535ab
Author: Xavier Roirand <roirand@adacore.com>
Date: Wed Aug 22 12:11:14 2018 +0200
Darwin: Handle unrelocated dyld.
On Darwin, debugging an helloworld program with GDB does
not work and ends with:
(gdb) set startup-with-shell off
(gdb) start
Temporary breakpoint 1 at 0x100000fb4: file /tmp/helloworld.c, line 1.
Starting program: /private/tmp/helloworld
[New Thread 0x2703 of process 18906]
[New Thread 0x2603 of process 18906]
[1]+ Stopped ./gdb/gdb /tmp/helloworld
When debugging with lldb, instead of having the STOP signal, we can
see that a breakpoint is not set to a proper location:
Warning:
Cannot insert breakpoint -1.
Cannot access memory at address 0xf726
Command aborted.
The inserted breakpoint is the one used when GDB has to stop the target
when a shared library is loaded or unloaded. The notifier address used
for adding the breakpoint is wrong thus the above failure.
This notifier address is an offset relative to dyld base address, so
the value calculation has to be updated to reflect this.
This was tested on High Sierra by trying to run a simple "hello world"
program.
gdb/ChangeLog:
PR gdb/20981:
* solib-darwin.c (darwin_get_dyld_bfd): New function.
(darwin_solib_get_all_image_info_addr_at_init): Update call.
(darwin_handle_solib_event): New function.
(darwin_solib_create_inferior_hook): Handle unrelocated dyld.
Change-Id: I7dde5008c9158f17b78dc89bd7f4bd8a12d4a6e1
commit 07147793e678dac92f6a16f140678f9a5aed21e7
Author: John Baldwin <jhb@FreeBSD.org>
Date: Wed Sep 19 09:44:51 2018 -0700
Add missing spaces after inet_ntop invocations.
gdb/ChangeLog:
* fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
(fbsd_print_sockaddr_in6): Likewise.
commit 23be8da7396ffc4d5492d976e244daaa543eaac9
Author: Richard Bunt <richard.bunt@arm.com>
Date: Wed Sep 19 10:43:56 2018 +0100
Logical short circuiting with argument lists
When evaluating Fortran expressions such as the following:
print truth_table(1,1) .OR. truth_table(2,1)
where truth_table(1,1) evaluates to true, the debugger would report that
it could not perform substring operations on this type. This patch
addresses this issue.
Investigation revealed that EVAL_SKIP was not being handled correctly
for all types serviced by the OP_F77_UNDETERMINED_ARGLIST case in
evaluate_subexp_standard. While skipping an undetermined argument list
the type is resolved to be an integer (as this is what evaluate_subexp
returns when skipping) and so it was not possible to delegate to the
appropriate case (e.g. array, function call).
The solution implemented here updates OP_VAR_VALUE to return correct
type information when skipping. This way OP_F77_UNDETERMINED_ARGLIST
can delegate the skipping to the appropriate case or routine, which
should know how to skip/evaluate the type in question.
koenig.exp was updated to include a testcase which exercises the
modified skip logic in OP_VAR_VALUE, as it falls through from
OP_ADL_FUNC.
This patch has been tested for regressions with GCC 7.3 on aarch64,
ppc64le and x86_64.
gdb/ChangeLog:
* eval.c (skip_undetermined_arglist): Skip argument list helper.
(evaluate_subexp_standard): Return a dummy type when
honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
OP_F77_UNDETERMINED_ARGLIST case.
* expression.h (enum noside): Update comment.
gdb/testsuite/ChangeLog:
* gdb.cp/koenig.exp: Extend to test logical short circuiting.
* gdb.fortran/short-circuit-argument-list.exp: New file.
* gdb.fortran/short-circuit-argument-list.f90: New test.
commit 7307a73aed246eaccec9277b11e045f974322796
Author: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Date: Wed Sep 19 11:29:19 2018 +0200
Handle 64-bit Solaris/x86 ld.so.1
The next patch from the solaris-userland github repo
https://github.com/oracle/solaris-userland/tree/master/components/gdb/patches
(007-solib-svr4.patch) is equally trivial, creating partity between
Solaris/SPARC and x86.
Tested on amd64-pc-solaris2.11.
2018-09-19 George Vasick <george.vasick@oracle.com>
* solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
commit 13db92d3f48cbd6784f50bbd0ce10220e0d48ee4
Author: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Date: Wed Sep 19 11:21:32 2018 +0200
Fix /proc pathname sizes on Solaris
I'm slowly working my way through the gdb patches from the
solaris-userland repo
https://github.com/oracle/solaris-userland/tree/master/components/gdb/patches
This one (001-fix-proc-name-size.patch) should be obvious given the
patches' comment:
# In Solaris, PID_MAX is 999999 (6 digit pid).
# In Solaris, lwpid_t is an unsigned int, so theoretically the lwp id
# could be 10 digits.
Tested on i386-pc-solaris2.11.
2018-09-19 Stefan Teleman <stefan.teleman@oracle.com>
April Chin <april.chin@oracle.com>
Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
uint_t lwpid_t.
(create_procinfo): Print pids in /proc without leading zeros.
commit 7e00df65a4e3e281604acab2450812a5fb275743
Author: Alan Modra <amodra@gmail.com>
Date: Wed Sep 19 16:07:44 2018 +0930
PR23648 testcase
PR 23648
* testsuite/ld-elf/pr23648.d,
* testsuite/ld-elf/pr23648.s,
* testsuite/ld-elf/pr23648.t: New test.
commit 7f0cfc6eb8bbead5c9a1ff3a8dec11d93304f5ad
Author: Alan Modra <amodra@gmail.com>
Date: Wed Sep 19 13:22:43 2018 +0930
PR23648, Symbols based on MEMORY regions confuse --gc-sections
Running lang_do_memory_regions earlier seems a reasonable solution to
gaining better values for symbols prior to lang_gc_sections.
PR ld/23648
* ldlang.c (lang_process): Move lang_do_memory_regions earlier.
Comment on lang_do_assignments call.
* ldgram.y (origin_exp): Don't assign region->current.
commit aa654ee8f830ca0d4d31bad0ff18b9e6261267fd
Author: Alan Modra <amodra@gmail.com>
Date: Wed Sep 19 13:05:17 2018 +0930
Tweak map file output for pei386_auto_import
* ldmain.c (add_archive_element): Handle auto-inport symbols
when printing map.
commit 3d50f1706348142d0ad64cd9fad044e68951655e
Author: Sandra Loosemore <sandra@codesourcery.com>
Date: Tue Sep 18 20:57:07 2018 -0700
Add gcc_target_options hook for nios2.
2018-09-18 Sandra Loosemore <sandra@codesourcery.com>
gdb/
* nios2-tdep.c (nios2_gcc_target_options): New.
(nios2_gdb_arch_init): Install new hook.
commit b567ca638c274e27969975403b885973af9ccae6
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Tue Sep 18 23:40:55 2018 -0400
Carry the gnulib getcwd backport as a patch
Commit
e2fc52e7457 ("Fix PR gdb/23558: Use system's 'getcwd' when cross-compiling GDB")
backported some changes from a future gnulib version to our import.
However, this means that every time someone wants to change our gnulib
import (e.g. add a module), they must make sure not to include that
backported change. It also means that someone running the
update-gnulib.sh script without changes will get some diffs and wonder
why.
Instead, I suggest we carry that backport as a patch applied by the
update-gnulib.sh script after running the import tool. It will make it
clear what backport or local modification we have and should make
running update-gnulib.sh give a reproducible result.
There is a hunk in the configure file in this patch, this is because the
commit that backported the getcwd bits didn't include the re-generated
configure.
Note: you'll need this patch as well to get deterministic results:
Generate aclocal-m4-deps.mk more deterministically and portably.
https://sourceware.org/ml/gdb-patches/2018-09/msg00643.html
gdb/ChangeLog:
* patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
New file.
* update-gnulib.sh: Apply patch.
* configure: Re-generate.
commit 48219c6a06091b873f39c64c5df12ba7ec37a2e0
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Sep 19 00:00:45 2018 +0000
Automatic date update in version.in
commit 73f1bd769a5216b3debc1025faa62a466c5a1e68
Author: John Baldwin <jhb@FreeBSD.org>
Date: Tue Sep 18 14:05:48 2018 -0700
Make the "info proc" documentation more consistent.
Remove "running" in a few places since "info proc" can be used with
core dumps as well as running processes on both Linux and FreeBSD.
Use "the specified process" in the description of most "info proc"
subcommands.
Use "additional information" instead of "/proc process information" in
the "info proc" description to more closely match the language in the
manual.
gdb/ChangeLog:
* infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
description. Make "info proc" command descriptions more
consistent.
gdb/doc/ChangeLog:
* gdb.texinfo (info proc): Remove "running".
(info proc mappings): Replace "program" with "process".
commit 8b11311136c0acb5c4d3fbc9c1c92f259feb6beb
Author: John Baldwin <jhb@FreeBSD.org>
Date: Tue Sep 18 14:05:48 2018 -0700
Document the 'info proc files' command.
gdb/ChangeLog:
* NEWS: Mention 'info proc files' command.
gdb/doc/ChangeLog:
* gdb.texinfo (Process Information): Document "info proc files"
command.
commit 7e69672e4dfa532607e4ecef99623680264a87b3
Author: John Baldwin <jhb@FreeBSD.org>
Date: Tue Sep 18 14:05:47 2018 -0700
Support 'info proc files' on live FreeBSD processes.
This walks the list of struct kinfo_file objects returned by a call to
kinfo_getfile outputting a description of each open file descriptor.
gdb/ChangeLog:
* fbsd-nat.c (fbsd_nat_target::info_proc): List open file
descriptors for IP_FILES and IP_ALL.
commit 57c2a98a4c7e5ad4e62c876eb5cebe9d17a51ad0
Author: John Baldwin <jhb@FreeBSD.org>
Date: Tue Sep 18 14:05:47 2018 -0700
Add support for 'info proc files' on FreeBSD core dumps.
Walk the list of struct kinfo_file objects in the
NT_FREEBSD_PROCSTAT_FILES core dump note outputting a description of
each open file descriptor. For sockets, the local and remote socket
addresses are displayed in place of the file name field. For UNIX
local domain sockets, only a single address is displayed since most
UNIX sockets only have one valid address and printing both pathnames
could be quite long. The output format was somewhat inspired by the
output of the "procstat -f" command on FreeBSD, but with a few less
details and some fields were condensed.
gdb/ChangeLog:
* fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
(KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
(KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
(KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
(KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
(KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
(KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
(KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
(KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
(KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
(KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
(KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
(KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
(KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
(KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
(KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
(FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
(FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
(FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
(struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
(struct fbsd_sockaddr_un): New types.
(fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
(fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
(fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
(fbsd_core_info_proc_files): New functions.
(fbsd_core_info_proc): List open file descriptors for IP_FILES and
IP_ALL.
* fbsd-tdep.h (fbsd_info_proc_files_header)
(fbsd_info_proc_files_entry): New.
commit e98ee8c458f3a8405eb93e71b00f801b4bbe3635
Author: John Baldwin <jhb@FreeBSD.org>
Date: Tue Sep 18 14:05:47 2018 -0700
Add a new 'info proc files' subcommand of 'info proc'.
This command displays a list of open file descriptors.
gdb/ChangeLog:
* defs.h (enum info_proc_what) [IP_FILES]: New value.
* infcmd.c (info_proc_cmd_files): New function.
(_initialize_infcmd): Register 'info proc files' command.
commit 725e299974632e529be8b9c004a72118240da9f1
Author: John Baldwin <jhb@FreeBSD.org>
Date: Tue Sep 18 14:05:47 2018 -0700
Import gnulib's inet_ntop module.
An upcoming patch to fbsd-tdep.c uses inet_ntop to format IP addresses.
gdb/ChangeLog:
* gnulib/aclocal-m4-deps.mk: Re-generate.
* gnulib/aclocal.m4: Re-generate.
* gnulib/config.in: Re-generate.
* gnulib/configure: Re-generate.
* gnulib/import/Makefile.am: Re-generate.
* gnulib/import/Makefile.in: Re-generate.
* gnulib/import/m4/gnulib-cache.m4: Re-generate.
* gnulib/import/m4/gnulib-comp.m4: Re-generate.
* gnulib/import/arpa_inet.in.h: New file.
* gnulib/import/inet_ntop.c: New file.
* gnulib/import/m4/arpa_inet_h.m4: New file.
* gnulib/import/m4/inet_ntop.m4: New file.
* gnulib/import/m4/netinet_in_h.m4: New file.
* gnulib/import/m4/socklen.m4: New file.
* gnulib/import/m4/sockpfaf.m4: New file.
* gnulib/import/m4/stdalign.m4: New file.
* gnulib/import/m4/sys_uio_h.m4: New file.
* gnulib/import/netinet_in.in.h: New file.
* gnulib/import/stdalign.in.h: New file.
* gnulib/import/sys_socket.c: New file.
* gnulib/import/sys_socket.in.h: New file.
* gnulib/import/sys_uio.in.h: New file.
* gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
module.
commit 2afffa7f629da4c07510014098294d1fd141f5c7
Author: John Baldwin <jhb@FreeBSD.org>
Date: Tue Sep 18 14:05:47 2018 -0700
Generate aclocal-m4-deps.mk more deterministically and portably.
Sort the list of files generated by find to make the order of the
entries deterministic. When sorting, use explicit "C" collation. Use
an explicit tab character instead of '\t' as some sed implementations
treat '\t' as an escaped 't' instead of a tab.
gdb/ChangeLog:
* gnulib/aclocal-m4-deps.mk: New file.
* gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
deterministically.
commit 9f235e09e4d3dc6820e2d667200fe09b3e73b623
Author: John Baldwin <jhb@FreeBSD.org>
Date: Tue Sep 18 14:05:47 2018 -0700
Use KF_PATH to verify the size of a struct kinfo_file.
fbsd_core_vnode_path needs to use the offset of the kf_path member of
struct kinfo_file as the minimum size of a struct kinfo_file object.
However, it was using KVE_PATH instead due to a copy and paste bug.
While here, fix another copy and paste bug in the error message for a
truncated kinfo_file object.
gdb/ChangeLog:
* fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
KVE_PATH.
commit 5031d0ae0b9fb1a42eb8ff9d2b5098a56774cee1
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Tue Sep 18 13:53:43 2018 -0400
Expect optional "arch=" when executing "-stack-list-frames" on gdb.arch/amd64-invalid-stack-top.exp
Another case of incomplete regexp. The problem is very similar to the
one happening with gdb.arch/amd64-invalid-stack-middle.exp.
The output when GDB is compiled with "--enable-targets" is:
(gdb) interpreter-exec mi "-stack-list-frames"
^done,stack=[frame={level="0",addr="0x00000000004005e7",func="func2",arch="i386:x86-64"}]
While the output when "--enable-targets" is not specified is:
(gdb) interpreter-exec mi "-stack-list-frames"
^done,stack=[frame={level="0",addr="0x00000000004005e7",func="func2"}]
The fix is, again, to extend the current regexp and expect for the
optional "arch=" part. With this patch, the test now passes on both
scenarios.
OK?
gdb/testsuite/ChangeLog:
2018-09-18 Sergio Durigan Junior <sergiodj@redhat.com>
* gdb.arch/amd64-invalid-stack-top.exp: Expect optional
"arch=" keyword when executing "-stack-list-frames".
commit b4c0d1a440d054cd198041ddf0ba43b83794186f
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Tue Sep 18 13:53:06 2018 -0400
Expect optional "arch=" when executing "-stack-list-frames" on gdb.arch/amd64-invalid-stack-middle.exp
While regression-testing GDB on Fedora Rawhide, I saw the following
output when running gdb.arch/amd64-invalid-stack-middle.exp's
"-stack-list-frames" test:
(gdb) interpreter-exec mi "-stack-list-frames"
^done,stack=[frame={level="0",addr="0x000000000040115a",func="breakpt",file="amd64-invalid-stack-middle.c",fullname="/home/sergio/fedora/gdb/master/gdb-8.2.50.20180917/gdb/testsuite/gdb.arch/amd64-invalid-stack-middle.c",line="27",arch="i386:x86-64"},frame={level="1",addr="0x000000000040116a",func="func5",file="amd64-invalid-stack-middle.c",fullname="/home/sergio/fedora/gdb/master/gdb-8.2.50.20180917/gdb/testsuite/gdb.arch/amd64-invalid-stack-middle.c",line="32",arch="i386:x86-64"},frame={level="2",addr="0x000000000040117a",func="func4",file="amd64-invalid-stack-middle.c",fullname="/home/sergio/fedora/gdb/master/gdb-8.2.50.20180917/gdb/testsuite/gdb.arch/amd64-invalid-stack-middle.c",line="38",arch="i386:x86-64"},frame={level="3",addr="0x000000000040118a",func="func3",file="amd64-invalid-stack-middle.c",fullname="/home/sergio/fedora/gdb/master/gdb-8.2.50.20180917/gdb/testsuite/gdb.arch/amd64-invalid-stack-middle.c",line="44",arch="i386:x86-64"}]
This test is currently failing on Rawhide. However, this output is
almost the same as I get on my local Fedora 28 machine (where the test
is passing):
(gdb) interpreter-exec mi "-stack-list-frames"
^done,stack=[frame={level="0",addr="0x00000000004005da",func="breakpt",file="amd64-invalid-stack-middle.c",fullname="/home/sergio/work/src/git/binutils-gdb/binutils-gdb/gdb/testsuite/gdb.arch/amd64-invalid-stack-middle.c",line="27"},frame={level="1",addr="0x00000000004005ea",func="func5",file="amd64-invalid-stack-middle.c",fullname="/home/sergio/work/src/git/binutils-gdb/binutils-gdb/gdb/testsuite/gdb.arch/amd64-invalid-stack-middle.c",line="32"},frame={level="2",addr="0x00000000004005fa",func="func4",file="amd64-invalid-stack-middle.c",fullname="/home/sergio/work/src/git/binutils-gdb/binutils-gdb/gdb/testsuite/gdb.arch/amd64-invalid-stack-middle.c",line="38"},frame={level="3",addr="0x000000000040060a",func="func3",file="amd64-invalid-stack-middle.c",fullname="/home/sergio/work/src/git/binutils-gdb/binutils-gdb/gdb/testsuite/gdb.arch/amd64-invalid-stack-middle.c",line="44"}]
With the exception that there's an "arch=" keyword on Fedora Rawhide's
version. This is because, on Rawhide, I've compiled GDB with
"--enable-targets=xyz,kqp,etc.", while locally I haven't.
This is easy to fix: we just have to extend the regexp and expect for
the optional "arch=" keyword there. It's what this patch does. With
it applied, the test now passes everywhere.
OK?
gdb/testsuite/ChangeLog:
2018-09-18 Sergio Durigan Junior <sergiodj@redhat.com>
* gdb.arch/amd64-invalid-stack-middle.exp: Expect optional
"arch=" keyword when executing "-stack-list-frames".
commit 7a6d2b458f95030f433a0dcdabd5cda7ee695a9b
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Mon Sep 17 17:29:50 2018 -0400
Expect for "@" when doing "complete break ada" on gdb.ada/complete.exp
Currently, gdb.ada/complete.exp's "complete break ada" test fails
because the regexp used to match the command's output doesn't expect
"@", but we have an output like:
...
complete break ada
break ada.assertions.assert
break ada.calendar.arithmetic.difference
break ada.calendar.arithmetic_operations.add
break ada.calendar.arithmetic_operations.add.cold
break ada.calendar.arithmetic_operations.add@plt
break ada.calendar.arithmetic_operations.difference
break ada.calendar.arithmetic_operations.difference@plt
...
This patch adds "@" to the regexp, unbreaking the test.
OK?
gdb/testsuite/ChangeLog:
2018-09-18 Sergio Durigan Junior <sergiodj@redhat.com>
* gdb.ada/complete.exp: Expect for "@" when doing "complete
break ada".
commit 40f03055a23b7d77e18e14264046d8e21b6abf67
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 15 14:53:53 2018 -0600
Remove remaining cleanups from compile-object-load.c
This removes the remaining cleanups from compile-object-load.c.
gdb/ChangeLog
2018-09-18 Tom Tromey <tom@tromey.com>
* compile/compile-object-load.c (struct
link_hash_table_cleanup_data): Add constructor and destructor.
Use DISABLE_COPY_AND_ASSIGN.
(~link_hash_table_cleanup_data): Rename from
link_hash_table_free. Now a destructor.
(copy_sections): Use gdb::unique_xmalloc_ptr. Remove cleanups.
commit c9e0a7e333107ad140d9e15110f8820115921555
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 15 14:45:51 2018 -0600
Remove munmap_listp_free_cleanup
This removes munmap_listp_free_cleanup, replacing it with a
std::unique_ptr at one spot and an explicit delete in another. It
seemed simplest to completely change this data structure.
gdb/ChangeLog
2018-09-18 Tom Tromey <tom@tromey.com>
* compile/compile-object-run.c (do_module_cleanup): Use delete.
* compile/compile-object-load.c (struct munmap_list): Move to
header file.
(munmap_list::add): Rename from munmap_list_add; rewrite.
(munmap_list::~munmap_list): Rename from munmap_list_free.
(munmap_listp_free_cleanup): Remove.
(compile_object_load): Update.
* compile/compile-object-load.h (struct munmap_list): Move from
compile-object-load.c. Rewrite.
commit 8ff71a9c80cfcf64c54d4ae938c644b1b1ea19fb
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Sep 18 16:54:07 2018 +0100
Add a warning to the bfd library for when it encounters an ELF file with an invalid section size.
PR 23657
* elfcode.h (elf_swap_shdr_in): Generate a warning message if an
ELF section has contents and size larger than the file size.
commit 3ff2c72e14b7f4381c785ee35608c2812ef8610e
Author: Alan Hayward <alan.hayward@arm.com>
Date: Mon Sep 17 15:28:53 2018 +0100
Aarch64 SVE: Fix stack smashing when calling functions
Using "call" on a function that passes arguments via float registers can cause
gdb to overflow buffers.
Ensure enough memory is reserved to hold a full FP register.
This fixes gdb.base/callfuncs.exp for Aarch64 SVE.
2018-09-18 Alan Hayward <alan.hayward@arm.com>
* aarch64-tdep.c (pass_in_v): Use register size.
(aarch64_extract_return_value): Likewise.
(aarch64_store_return_value): Likewise.
commit af81c43b51e17c597c8eb5bfaa02fa7f5f6dbe72
Author: Tamar Christina <tamar.christina@arm.com>
Date: Tue Sep 18 14:36:37 2018 +0100
Fix Aarch64 bug in warning filtering.
This fixes a small bug with the warning filtering code, which when a line has
generated a warning and a template decode error (due to the way templates are
resolved) which would not have been emitted and warnings are being suppressed
with -W it would erroneously emit the error.
I have no testcase for this because the only places we generate warnings during
encoding/decoding now is using msr/mrs and system registers. They don't have a
template that would trigger this.
However an upcoming patch series will have tests in it which would expose this bug.
gas/ChangeLog:
* config/tc-aarch64.c (output_operand_error_report): Apply filtering to
current instead of head message.
commit 206c1947c1cb8e4ac6abb8e6803c762200167cde
Author: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Date: Tue Sep 18 09:14:11 2018 +0200
Cast RLIM_INFINITY to rlim_t to fix 64-bit Solaris 10 build
gdb doesn't currently build on 64-bit Solaris 10:
/vol/src/gnu/gdb/hg/master/local/gdb/utils.c: In function âvoid dump_core()â:
/vol/src/gnu/gdb/hg/master/local/gdb/utils.c:223:55: error: narrowing conversion
of â-3â from âlong intâ to ârlim_tâ {aka âlong unsigned intâ} inside {
} [-Wnarrowing]
struct rlimit rlim = { RLIM_INFINITY, RLIM_INFINITY };
^
/vol/src/gnu/gdb/hg/master/local/gdb/utils.c:223:55: error: narrowing conversion
of â-3â from âlong intâ to ârlim_tâ {aka âlong unsigned intâ} inside {
} [-Wnarrowing]
This was introduced by
2018-08-27 Tom Tromey <tom@tromey.com>
PR build/23087:
* configure: Rebuild.
* warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
and can be fixed by the following patch.
Solaris 11 isn't affected because there <sys/resource.h> has
#define RLIM_INFINITY ((rlim_t)-3l)
instead of
#define RLIM_INFINITY (-3l)
on Solaris 10.
Tested on amd64-pc-solaris2.10 and amd64-pc-solaris2.11.
* utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
rlim_t.
commit aff4a1199121481fdecbd34c63dca5ef87efe6c6
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Sep 18 00:00:38 2018 +0000
Automatic date update in version.in
commit 6eb5dbce1e29e74a3ed1661fa8634d455e41f34a
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Tue Sep 18 00:54:31 2018 +0200
[OBVIOUS] ChangeLog for obvious enable frame-filter help fix.
ChangeLog for 62b1765c90ddce54c04a97caac86425d50f2cc56
commit 62b1765c90ddce54c04a97caac86425d50f2cc56
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Tue Sep 18 00:14:26 2018 +0200
[OBVIOUS] enable frame-filter short help uses disable instead of enable
Without the patch:
(gdb) apropos able frame-filter
disable frame-filter -- GDB command to disable the specified frame-filter
enable frame-filter -- GDB command to disable the specified frame-filter
With the patch:
(gdb) apropos able frame-filter
disable frame-filter -- GDB command to disable the specified frame-filter
enable frame-filter -- GDB command to enable the specified frame-filter
Pushed as obvious
commit ae292b3afc0fce65c12014d2cc4621d7a0e661fd
Author: Tom Tromey <tom@tromey.com>
Date: Sun Sep 16 12:38:12 2018 -0600
Do not pass -DNDEBUG to Python compilations in development mode
The Python CFLAGS include -DNDEBUG. This was apparently done
intentionally -- setting the flags is done manually because, according
to a comment, python-config passes too many things to the compiler
(which is true).
Per PR python/20445, this patch changes configure so that -DNDEBUG is
only used by release builds. This probably doesn't have very much
effect in practice, but I did see that some Python headers use assert,
so perhaps it will give some safety.
Tested by rebuilding and re-running gdb.python/*.exp on x86-64 Fedora 28.
gdb/ChangeLog
2018-09-17 Tom Tromey <tom@tromey.com>
PR python/20445:
* configure: Rebuild.
* configure.ac: Conditionally use -DNDEBUG for Python.
commit da658607ed24bc5a4dcfcfb56b6e1440ccab33d2
Author: Tom Tromey <tom@tromey.com>
Date: Sun Sep 16 09:52:09 2018 -0600
Check for gmp when checking for mpfr
There was a report on irc that the gdb check for mpfr failed when only
static libraries are available. The issue is that mpfr depends on
gmp, but this is not handled explicitly by gdb.
Ideally upstream would switch to pkg-config. Or even more ideally, we
would incorporate pkg-config into the compiler and not mess with any
of this.
Meanwhile, this changes gdb's configure to add gmp to the link line
when checking for mpfr.
gdb/ChangeLog
2018-09-17 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
* configure.ac: Use gmp as a library dependency when checking for
mpfr.
commit d35da542a7a7f62b909cef636f69c9da928e7d9b
Author: Pedro Alves <palves@redhat.com>
Date: Mon Sep 17 19:46:40 2018 +0100
[gdb/Python] Eliminate find_inferior_object
Commit 00431a78b28f ("Use thread_info and inferior pointers more
throughout") removed the declaration of find_inferior_object, but
missed removing the definition.
gdb/ChangeLog:
2018-09-17 Pedro Alves <palves@redhat.com>
* python/py-inferior.c (find_inferior_object): Delete.
commit 4e2b18982ade10897e62590896a1dec496269877
Author: Jim Wilson <jimw@sifive.com>
Date: Mon Sep 17 11:43:08 2018 -0700
RISC-V: bge[u] should get higher priority than ble[u].
2018-09-17 Kito Cheng <kito@andestech.com>
gas/
* testsuite/gas/riscv/bge.d: New.
* testsuite/gas/riscv/bge.s: Likewise.
opcodes/
* riscv-opc.c (riscv_opcodes): Adjust the order of ble and
bleu.
commit 461464f22632163209937ba5128d1f9f32554ea3
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Sep 17 13:11:07 2018 -0400
Fix use-after-move in compile/compile-cplus-types.c
Patch
d82b3862f12 ("compile: Remove non-const reference parameters")
introduced a regression in compile/compile-cplus-types.c. The new_scope
variable in compile_cplus_instance::enter_scope is used after it was
std::moved. This patch fixes it by referring to the back of the vector
where it was moved instead.
gdb/ChangeLog:
* compile/compile-cplus-types.c
(compile_cplus_instance::enter_scope): Don't use new_scope after
std::move.
commit 04e2a1829ea137ac23ac96e98fd60f9d720dcdcb
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Sep 17 09:33:20 2018 -0700
x86: Set EVex=2 on EVEX.128 only vmovd and vmovq
EVEX "VMOVD xmm1, r32/m32", "VMOVD r32/m32, xmm2", "VMOVQ xmm1, r64/m64",
"VMOVD r64/m64, xmm2", "VMOVQ xmm1, xmm2/m64" and "VMOVQ xmm1/m64, xmm2"
can only be encoded with EVEX.128. Set EVex=2 on EVEX.128 only vmovd and
vmovq.
gas/
PR gas/23670
* testsuite/gas/i386/evex-lig-2.d: New file.
* testsuite/gas/i386/evex-lig-2.s: Likewise.
* testsuite/gas/i386/x86-64-evex-lig-2.d: Likewise.
* testsuite/gas/i386/x86-64-evex-lig-2.s: Likewise.
* testsuite/gas/i386/i386.exp: Run evex-lig-2 and
x86-64-evex-lig-2.
opcodes/
PR gas/23670
* i386-dis-evex.h (evex_table): Use EVEX_LEN_0F6E_P_2,
EVEX_LEN_0F7E_P_1, EVEX_LEN_0F7E_P_2 and EVEX_LEN_0FD6_P_2.
(EVEX_LEN_0F6E_P_2): New EVEX_LEN_TABLE entry.
(EVEX_LEN_0F7E_P_1): Likewise.
(EVEX_LEN_0F7E_P_2): Likewise.
(EVEX_LEN_0FD6_P_2): Likewise.
* i386-dis.c (USE_EVEX_LEN_TABLE): New.
(EVEX_LEN_TABLE): Likewise.
(EVEX_LEN_0F6E_P_2): New enum.
(EVEX_LEN_0F7E_P_1): Likewise.
(EVEX_LEN_0F7E_P_2): Likewise.
(EVEX_LEN_0FD6_P_2): Likewise.
(evex_len_table): New.
(get_valid_dis386): Handle USE_EVEX_LEN_TABLE.
* i386-opc.tbl: Set EVex=2 on EVEX.128 only vmovd and vmovq.
* i386-tbl.h: Regenerated.
commit d5f787c2bc90793c1d781b7291758e77067daad5
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Sep 17 09:31:07 2018 -0700
x86: Set Vex=1 on VEX.128 only vmovd and vmovq
AVX "VMOVD xmm1, r32/m32", "VMOVD r32/m32, xmm2", "VMOVQ xmm1, r64/m64"
and "VMOVD r64/m64, xmm2" can only be encoded with VEX.128. Set Vex=1
on VEX.128 only vmovd and vmovq.
gas/
PR gas/23665
* testsuite/gas/i386/avx-scalar.s: Remove vmovq and vmovd tests.
* testsuite/gas/i386/x86-64-avx-scalar.s: Likewise.
* testsuite/gas/i386/avx-scalar-intel.d: Updated.
* testsuite/gas/i386/avx-scalar.d: Likewise.
* testsuite/gas/i386/x86-64-avx-scalar-intel.d: Likewise.
* testsuite/gas/i386/x86-64-avx-scalar.d: Likewise.
* testsuite/gas/i386/i386.exp: Run avx-scalar2 and
x86-64-avx-scalar2.
* testsuite/gas/i386/avx-scalar-2.d: New file.
* testsuite/gas/i386/avx-scalar-2.s: Likewise.
* testsuite/gas/i386/x86-64-avx-scalar-2.d: Likewise.
* testsuite/gas/i386/x86-64-avx-scalar-2.s: Likewise.
opcodes/
PR gas/23665
* i386-dis.c (vex_len_table): Update VEX_LEN_0F6E_P_2 and
VEX_LEN_0F7E_P_2 entries.
* i386-opc.tbl: Set Vex=1 on VEX.128 only vmovd and vmovq.
* i386-tbl.h: Regenerated.
commit 03751133023c5623cf60f8d3222cb79a376331f9
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Sep 17 09:26:18 2018 -0700
x86: Add -mvexwig=[0|1] option to assembler
Add -mvexwig=[0|1] option to x86 assembler to control how the assembler
should encode the VEX.W bit in WIG VEX instructions.
* gas/NEWS: Mention -mvexwig=[0|1] option.
* config/tc-i386.c (vexwig): New.
(build_vex_prefix): Set the VEX.W bit for -mvexwig=1 for WIG
VEX instructions.
(OPTION_MVEXWIG): New.
(md_longopts): Add -mvexwig=.
(md_parse_option): Handle OPTION_MVEXWIG.
(md_show_usage): Show -mvexwig=[0|1].
* doc/c-i386.texi: Document -mvexwig=[0|1].
* testsuite/gas/i386/avx-wig.d: New file.
* testsuite/gas/i386/avx-wig.s: Likewise.
* testsuite/gas/i386/avx2-wig.d: Likewise.
* testsuite/gas/i386/avx2-wig.s: Likewise.
* testsuite/gas/i386/x86-64-avx-wig.d: Likewise.
* testsuite/gas/i386/x86-64-avx-wig.s: Likewise.
* testsuite/gas/i386/x86-64-avx2-wig.d: Likewise.
* testsuite/gas/i386/x86-64-avx2-wig.s: Likewise.
* testsuite/gas/i386/i386.exp: Run avx-wig, avx2-wig,
x86-64-avx-wig and x86-64-avx2-wig.
commit ec6f095abc396e60f46e1b4724d0eb2e4d18213d
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Sep 17 09:23:03 2018 -0700
x86: Update disassembler for VexWIG
The VEX.W bit is ignored by some VEX instructions, aka WIG instructions.
Update x86 disassembler to handle VEX WIG instructions.
* i386-dis.c (VZERO_Fixup): Removed.
(VZERO): Likewise.
(VEX_LEN_0F10_P_1): Likewise.
(VEX_LEN_0F10_P_3): Likewise.
(VEX_LEN_0F11_P_1): Likewise.
(VEX_LEN_0F11_P_3): Likewise.
(VEX_LEN_0F2E_P_0): Likewise.
(VEX_LEN_0F2E_P_2): Likewise.
(VEX_LEN_0F2F_P_0): Likewise.
(VEX_LEN_0F2F_P_2): Likewise.
(VEX_LEN_0F51_P_1): Likewise.
(VEX_LEN_0F51_P_3): Likewise.
(VEX_LEN_0F52_P_1): Likewise.
(VEX_LEN_0F53_P_1): Likewise.
(VEX_LEN_0F58_P_1): Likewise.
(VEX_LEN_0F58_P_3): Likewise.
(VEX_LEN_0F59_P_1): Likewise.
(VEX_LEN_0F59_P_3): Likewise.
(VEX_LEN_0F5A_P_1): Likewise.
(VEX_LEN_0F5A_P_3): Likewise.
(VEX_LEN_0F5C_P_1): Likewise.
(VEX_LEN_0F5C_P_3): Likewise.
(VEX_LEN_0F5D_P_1): Likewise.
(VEX_LEN_0F5D_P_3): Likewise.
(VEX_LEN_0F5E_P_1): Likewise.
(VEX_LEN_0F5E_P_3): Likewise.
(VEX_LEN_0F5F_P_1): Likewise.
(VEX_LEN_0F5F_P_3): Likewise.
(VEX_LEN_0FC2_P_1): Likewise.
(VEX_LEN_0FC2_P_3): Likewise.
(VEX_LEN_0F3A0A_P_2): Likewise.
(VEX_LEN_0F3A0B_P_2): Likewise.
(VEX_W_0F10_P_0): Likewise.
(VEX_W_0F10_P_1): Likewise.
(VEX_W_0F10_P_2): Likewise.
(VEX_W_0F10_P_3): Likewise.
(VEX_W_0F11_P_0): Likewise.
(VEX_W_0F11_P_1): Likewise.
(VEX_W_0F11_P_2): Likewise.
(VEX_W_0F11_P_3): Likewise.
(VEX_W_0F12_P_0_M_0): Likewise.
(VEX_W_0F12_P_0_M_1): Likewise.
(VEX_W_0F12_P_1): Likewise.
(VEX_W_0F12_P_2): Likewise.
(VEX_W_0F12_P_3): Likewise.
(VEX_W_0F13_M_0): Likewise.
(VEX_W_0F14): Likewise.
(VEX_W_0F15): Likewise.
(VEX_W_0F16_P_0_M_0): Likewise.
(VEX_W_0F16_P_0_M_1): Likewise.
(VEX_W_0F16_P_1): Likewise.
(VEX_W_0F16_P_2): Likewise.
(VEX_W_0F17_M_0): Likewise.
(VEX_W_0F28): Likewise.
(VEX_W_0F29): Likewise.
(VEX_W_0F2B_M_0): Likewise.
(VEX_W_0F2E_P_0): Likewise.
(VEX_W_0F2E_P_2): Likewise.
(VEX_W_0F2F_P_0): Likewise.
(VEX_W_0F2F_P_2): Likewise.
(VEX_W_0F50_M_0): Likewise.
(VEX_W_0F51_P_0): Likewise.
(VEX_W_0F51_P_1): Likewise.
(VEX_W_0F51_P_2): Likewise.
(VEX_W_0F51_P_3): Likewise.
(VEX_W_0F52_P_0): Likewise.
(VEX_W_0F52_P_1): Likewise.
(VEX_W_0F53_P_0): Likewise.
(VEX_W_0F53_P_1): Likewise.
(VEX_W_0F58_P_0): Likewise.
(VEX_W_0F58_P_1): Likewise.
(VEX_W_0F58_P_2): Likewise.
(VEX_W_0F58_P_3): Likewise.
(VEX_W_0F59_P_0): Likewise.
(VEX_W_0F59_P_1): Likewise.
(VEX_W_0F59_P_2): Likewise.
(VEX_W_0F59_P_3): Likewise.
(VEX_W_0F5A_P_0): Likewise.
(VEX_W_0F5A_P_1): Likewise.
(VEX_W_0F5A_P_3): Likewise.
(VEX_W_0F5B_P_0): Likewise.
(VEX_W_0F5B_P_1): Likewise.
(VEX_W_0F5B_P_2): Likewise.
(VEX_W_0F5C_P_0): Likewise.
(VEX_W_0F5C_P_1): Likewise.
(VEX_W_0F5C_P_2): Likewise.
(VEX_W_0F5C_P_3): Likewise.
(VEX_W_0F5D_P_0): Likewise.
(VEX_W_0F5D_P_1): Likewise.
(VEX_W_0F5D_P_2): Likewise.
(VEX_W_0F5D_P_3): Likewise.
(VEX_W_0F5E_P_0): Likewise.
(VEX_W_0F5E_P_1): Likewise.
(VEX_W_0F5E_P_2): Likewise.
(VEX_W_0F5E_P_3): Likewise.
(VEX_W_0F5F_P_0): Likewise.
(VEX_W_0F5F_P_1): Likewise.
(VEX_W_0F5F_P_2): Likewise.
(VEX_W_0F5F_P_3): Likewise.
(VEX_W_0F60_P_2): Likewise.
(VEX_W_0F61_P_2): Likewise.
(VEX_W_0F62_P_2): Likewise.
(VEX_W_0F63_P_2): Likewise.
(VEX_W_0F64_P_2): Likewise.
(VEX_W_0F65_P_2): Likewise.
(VEX_W_0F66_P_2): Likewise.
(VEX_W_0F67_P_2): Likewise.
(VEX_W_0F68_P_2): Likewise.
(VEX_W_0F69_P_2): Likewise.
(VEX_W_0F6A_P_2): Likewise.
(VEX_W_0F6B_P_2): Likewise.
(VEX_W_0F6C_P_2): Likewise.
(VEX_W_0F6D_P_2): Likewise.
(VEX_W_0F6F_P_1): Likewise.
(VEX_W_0F6F_P_2): Likewise.
(VEX_W_0F70_P_1): Likewise.
(VEX_W_0F70_P_2): Likewise.
(VEX_W_0F70_P_3): Likewise.
(VEX_W_0F71_R_2_P_2): Likewise.
(VEX_W_0F71_R_4_P_2): Likewise.
(VEX_W_0F71_R_6_P_2): Likewise.
(VEX_W_0F72_R_2_P_2): Likewise.
(VEX_W_0F72_R_4_P_2): Likewise.
(VEX_W_0F72_R_6_P_2): Likewise.
(VEX_W_0F73_R_2_P_2): Likewise.
(VEX_W_0F73_R_3_P_2): Likewise.
(VEX_W_0F73_R_6_P_2): Likewise.
(VEX_W_0F73_R_7_P_2): Likewise.
(VEX_W_0F74_P_2): Likewise.
(VEX_W_0F75_P_2): Likewise.
(VEX_W_0F76_P_2): Likewise.
(VEX_W_0F77_P_0): Likewise.
(VEX_W_0F7C_P_2): Likewise.
(VEX_W_0F7C_P_3): Likewise.
(VEX_W_0F7D_P_2): Likewise.
(VEX_W_0F7D_P_3): Likewise.
(VEX_W_0F7E_P_1): Likewise.
(VEX_W_0F7F_P_1): Likewise.
(VEX_W_0F7F_P_2): Likewise.
(VEX_W_0FAE_R_2_M_0): Likewise.
(VEX_W_0FAE_R_3_M_0): Likewise.
(VEX_W_0FC2_P_0): Likewise.
(VEX_W_0FC2_P_1): Likewise.
(VEX_W_0FC2_P_2): Likewise.
(VEX_W_0FC2_P_3): Likewise.
(VEX_W_0FD0_P_2): Likewise.
(VEX_W_0FD0_P_3): Likewise.
(VEX_W_0FD1_P_2): Likewise.
(VEX_W_0FD2_P_2): Likewise.
(VEX_W_0FD3_P_2): Likewise.
(VEX_W_0FD4_P_2): Likewise.
(VEX_W_0FD5_P_2): Likewise.
(VEX_W_0FD6_P_2): Likewise.
(VEX_W_0FD7_P_2_M_1): Likewise.
(VEX_W_0FD8_P_2): Likewise.
(VEX_W_0FD9_P_2): Likewise.
(VEX_W_0FDA_P_2): Likewise.
(VEX_W_0FDB_P_2): Likewise.
(VEX_W_0FDC_P_2): Likewise.
(VEX_W_0FDD_P_2): Likewise.
(VEX_W_0FDE_P_2): Likewise.
(VEX_W_0FDF_P_2): Likewise.
(VEX_W_0FE0_P_2): Likewise.
(VEX_W_0FE1_P_2): Likewise.
(VEX_W_0FE2_P_2): Likewise.
(VEX_W_0FE3_P_2): Likewise.
(VEX_W_0FE4_P_2): Likewise.
(VEX_W_0FE5_P_2): Likewise.
(VEX_W_0FE6_P_1): Likewise.
(VEX_W_0FE6_P_2): Likewise.
(VEX_W_0FE6_P_3): Likewise.
(VEX_W_0FE7_P_2_M_0): Likewise.
(VEX_W_0FE8_P_2): Likewise.
(VEX_W_0FE9_P_2): Likewise.
(VEX_W_0FEA_P_2): Likewise.
(VEX_W_0FEB_P_2): Likewise.
(VEX_W_0FEC_P_2): Likewise.
(VEX_W_0FED_P_2): Likewise.
(VEX_W_0FEE_P_2): Likewise.
(VEX_W_0FEF_P_2): Likewise.
(VEX_W_0FF0_P_3_M_0): Likewise.
(VEX_W_0FF1_P_2): Likewise.
(VEX_W_0FF2_P_2): Likewise.
(VEX_W_0FF3_P_2): Likewise.
(VEX_W_0FF4_P_2): Likewise.
(VEX_W_0FF5_P_2): Likewise.
(VEX_W_0FF6_P_2): Likewise.
(VEX_W_0FF7_P_2): Likewise.
(VEX_W_0FF8_P_2): Likewise.
(VEX_W_0FF9_P_2): Likewise.
(VEX_W_0FFA_P_2): Likewise.
(VEX_W_0FFB_P_2): Likewise.
(VEX_W_0FFC_P_2): Likewise.
(VEX_W_0FFD_P_2): Likewise.
(VEX_W_0FFE_P_2): Likewise.
(VEX_W_0F3800_P_2): Likewise.
(VEX_W_0F3801_P_2): Likewise.
(VEX_W_0F3802_P_2): Likewise.
(VEX_W_0F3803_P_2): Likewise.
(VEX_W_0F3804_P_2): Likewise.
(VEX_W_0F3805_P_2): Likewise.
(VEX_W_0F3806_P_2): Likewise.
(VEX_W_0F3807_P_2): Likewise.
(VEX_W_0F3808_P_2): Likewise.
(VEX_W_0F3809_P_2): Likewise.
(VEX_W_0F380A_P_2): Likewise.
(VEX_W_0F380B_P_2): Likewise.
(VEX_W_0F3817_P_2): Likewise.
(VEX_W_0F381C_P_2): Likewise.
(VEX_W_0F381D_P_2): Likewise.
(VEX_W_0F381E_P_2): Likewise.
(VEX_W_0F3820_P_2): Likewise.
(VEX_W_0F3821_P_2): Likewise.
(VEX_W_0F3822_P_2): Likewise.
(VEX_W_0F3823_P_2): Likewise.
(VEX_W_0F3824_P_2): Likewise.
(VEX_W_0F3825_P_2): Likewise.
(VEX_W_0F3828_P_2): Likewise.
(VEX_W_0F3829_P_2): Likewise.
(VEX_W_0F382A_P_2_M_0): Likewise.
(VEX_W_0F382B_P_2): Likewise.
(VEX_W_0F3830_P_2): Likewise.
(VEX_W_0F3831_P_2): Likewise.
(VEX_W_0F3832_P_2): Likewise.
(VEX_W_0F3833_P_2): Likewise.
(VEX_W_0F3834_P_2): Likewise.
(VEX_W_0F3835_P_2): Likewise.
(VEX_W_0F3837_P_2): Likewise.
(VEX_W_0F3838_P_2): Likewise.
(VEX_W_0F3839_P_2): Likewise.
(VEX_W_0F383A_P_2): Likewise.
(VEX_W_0F383B_P_2): Likewise.
(VEX_W_0F383C_P_2): Likewise.
(VEX_W_0F383D_P_2): Likewise.
(VEX_W_0F383E_P_2): Likewise.
(VEX_W_0F383F_P_2): Likewise.
(VEX_W_0F3840_P_2): Likewise.
(VEX_W_0F3841_P_2): Likewise.
(VEX_W_0F38DB_P_2): Likewise.
(VEX_W_0F3A08_P_2): Likewise.
(VEX_W_0F3A09_P_2): Likewise.
(VEX_W_0F3A0A_P_2): Likewise.
(VEX_W_0F3A0B_P_2): Likewise.
(VEX_W_0F3A0C_P_2): Likewise.
(VEX_W_0F3A0D_P_2): Likewise.
(VEX_W_0F3A0E_P_2): Likewise.
(VEX_W_0F3A0F_P_2): Likewise.
(VEX_W_0F3A21_P_2): Likewise.
(VEX_W_0F3A40_P_2): Likewise.
(VEX_W_0F3A41_P_2): Likewise.
(VEX_W_0F3A42_P_2): Likewise.
(VEX_W_0F3A62_P_2): Likewise.
(VEX_W_0F3A63_P_2): Likewise.
(VEX_W_0F3ADF_P_2): Likewise.
(VEX_LEN_0F77_P_0): New.
(prefix_table): Update PREFIX_VEX_0F10, PREFIX_VEX_0F11,
PREFIX_VEX_0F12, PREFIX_VEX_0F16, PREFIX_VEX_0F2E,
PREFIX_VEX_0F2F, PREFIX_VEX_0F51, PREFIX_VEX_0F52,
PREFIX_VEX_0F53, PREFIX_VEX_0F58, PREFIX_VEX_0F59,
PREFIX_VEX_0F5A, PREFIX_VEX_0F5B, PREFIX_VEX_0F5C,
PREFIX_VEX_0F5D, PREFIX_VEX_0F5E, PREFIX_VEX_0F5F,
PREFIX_VEX_0F60, PREFIX_VEX_0F61, PREFIX_VEX_0F62,
PREFIX_VEX_0F63, PREFIX_VEX_0F64, PREFIX_VEX_0F65,
PREFIX_VEX_0F66, PREFIX_VEX_0F67, PREFIX_VEX_0F68,
PREFIX_VEX_0F69, PREFIX_VEX_0F6A, PREFIX_VEX_0F6B,
PREFIX_VEX_0F6C, PREFIX_VEX_0F6D, PREFIX_VEX_0F6F,
PREFIX_VEX_0F70, PREFIX_VEX_0F71_REG_2, PREFIX_VEX_0F71_REG_4,
PREFIX_VEX_0F71_REG_6, PREFIX_VEX_0F72_REG_4,
PREFIX_VEX_0F72_REG_6, PREFIX_VEX_0F73_REG_2,
PREFIX_VEX_0F73_REG_3, PREFIX_VEX_0F73_REG_6,
PREFIX_VEX_0F73_REG_7, PREFIX_VEX_0F74, PREFIX_VEX_0F75,
PREFIX_VEX_0F76, PREFIX_VEX_0F77, PREFIX_VEX_0F7C,
PREFIX_VEX_0F7D, PREFIX_VEX_0F7F, PREFIX_VEX_0FC2,
PREFIX_VEX_0FD0, PREFIX_VEX_0FD1, PREFIX_VEX_0FD2,
PREFIX_VEX_0FD3, PREFIX_VEX_0FD4, PREFIX_VEX_0FD5,
PREFIX_VEX_0FD8, PREFIX_VEX_0FD9, PREFIX_VEX_0FDA,
PREFIX_VEX_0FDC, PREFIX_VEX_0FDD, PREFIX_VEX_0FDE,
PREFIX_VEX_0FDF, PREFIX_VEX_0FE0, PREFIX_VEX_0FE1,
PREFIX_VEX_0FE2, PREFIX_VEX_0FE3, PREFIX_VEX_0FE4,
PREFIX_VEX_0FE5, PREFIX_VEX_0FE6, PREFIX_VEX_0FE8,
PREFIX_VEX_0FE9, PREFIX_VEX_0FEA, PREFIX_VEX_0FEB,
PREFIX_VEX_0FEC, PREFIX_VEX_0FED, PREFIX_VEX_0FEE,
PREFIX_VEX_0FEF, PREFIX_VEX_0FF1. PREFIX_VEX_0FF2,
PREFIX_VEX_0FF3, PREFIX_VEX_0FF4, PREFIX_VEX_0FF5,
PREFIX_VEX_0FF6, PREFIX_VEX_0FF8, PREFIX_VEX_0FF9,
PREFIX_VEX_0FFA, PREFIX_VEX_0FFB, PREFIX_VEX_0FFC,
PREFIX_VEX_0FFD, PREFIX_VEX_0FFE, PREFIX_VEX_0F3800,
PREFIX_VEX_0F3801, PREFIX_VEX_0F3802, PREFIX_VEX_0F3803,
PREFIX_VEX_0F3804, PREFIX_VEX_0F3805, PREFIX_VEX_0F3806,
PREFIX_VEX_0F3807, PREFIX_VEX_0F3808, PREFIX_VEX_0F3809,
PREFIX_VEX_0F380A, PREFIX_VEX_0F380B, PREFIX_VEX_0F3817,
PREFIX_VEX_0F381C, PREFIX_VEX_0F381D, PREFIX_VEX_0F381E,
PREFIX_VEX_0F3820, PREFIX_VEX_0F3821, PREFIX_VEX_0F3822,
PREFIX_VEX_0F3823, PREFIX_VEX_0F3824, PREFIX_VEX_0F3825,
PREFIX_VEX_0F3828, PREFIX_VEX_0F3829, PREFIX_VEX_0F382B,
PREFIX_VEX_0F382C, PREFIX_VEX_0F3831, PREFIX_VEX_0F3832,
PREFIX_VEX_0F3833, PREFIX_VEX_0F3834, PREFIX_VEX_0F3835,
PREFIX_VEX_0F3837, PREFIX_VEX_0F3838, PREFIX_VEX_0F3839,
PREFIX_VEX_0F383A, PREFIX_VEX_0F383B, PREFIX_VEX_0F383C,
PREFIX_VEX_0F383D, PREFIX_VEX_0F383E, PREFIX_VEX_0F383F,
PREFIX_VEX_0F3840, PREFIX_VEX_0F3A08, PREFIX_VEX_0F3A09,
PREFIX_VEX_0F3A0A, PREFIX_VEX_0F3A0B, PREFIX_VEX_0F3A0C,
PREFIX_VEX_0F3A0D, PREFIX_VEX_0F3A0E, PREFIX_VEX_0F3A0F,
PREFIX_VEX_0F3A40 and PREFIX_VEX_0F3A42 entries.
(vex_table): Update VEX 0F28 and 0F29 entries.
(vex_len_table): Update VEX_LEN_0F10_P_1, VEX_LEN_0F10_P_3,
VEX_LEN_0F11_P_1, VEX_LEN_0F11_P_3, VEX_LEN_0F2E_P_0,
VEX_LEN_0F2E_P_2, VEX_LEN_0F2F_P_0, VEX_LEN_0F2F_P_2,
VEX_LEN_0F51_P_1, VEX_LEN_0F51_P_3, VEX_LEN_0F52_P_1,
VEX_LEN_0F53_P_1, VEX_LEN_0F58_P_1, VEX_LEN_0F58_P_3,
VEX_LEN_0F59_P_1, VEX_LEN_0F59_P_3, VEX_LEN_0F5A_P_1,
VEX_LEN_0F5A_P_3, VEX_LEN_0F5C_P_1, VEX_LEN_0F5C_P_3,
VEX_LEN_0F5D_P_1, VEX_LEN_0F5D_P_3, VEX_LEN_0F5E_P_1,
VEX_LEN_0F5E_P_3, VEX_LEN_0F5F_P_1, VEX_LEN_0F5F_P_3,
VEX_LEN_0FC2_P_1, VEX_LEN_0FC2_P_3, VEX_LEN_0F3A0A_P_2 and
VEX_LEN_0F3A0B_P_2 entries.
(vex_w_table): Remove VEX_W_0F10_P_0, VEX_W_0F10_P_1,
VEX_W_0F10_P_2, VEX_W_0F10_P_3, VEX_W_0F11_P_0, VEX_W_0F11_P_1,
VEX_W_0F11_P_2, VEX_W_0F11_P_3, VEX_W_0F12_P_0_M_0,
VEX_W_0F12_P_0_M_1, VEX_W_0F12_P_1, VEX_W_0F12_P_2,
VEX_W_0F12_P_3, VEX_W_0F13_M_0, VEX_W_0F14, VEX_W_0F15,
VEX_W_0F16_P_0_M_0, VEX_W_0F16_P_0_M_1, VEX_W_0F16_P_1,
VEX_W_0F16_P_2, VEX_W_0F17_M_0, VEX_W_0F28, VEX_W_0F29,
VEX_W_0F2B_M_0, VEX_W_0F2E_P_0, VEX_W_0F2E_P_2, VEX_W_0F2F_P_0,
VEX_W_0F2F_P_2, VEX_W_0F50_M_0, VEX_W_0F51_P_0, VEX_W_0F51_P_1,
VEX_W_0F51_P_2, VEX_W_0F51_P_3, VEX_W_0F52_P_0, VEX_W_0F52_P_1,
VEX_W_0F53_P_0, VEX_W_0F53_P_1, VEX_W_0F58_P_0, VEX_W_0F58_P_1,
VEX_W_0F58_P_2, VEX_W_0F58_P_3, VEX_W_0F59_P_0, VEX_W_0F59_P_1,
VEX_W_0F59_P_2, VEX_W_0F59_P_3, VEX_W_0F5A_P_0, VEX_W_0F5A_P_1,
VEX_W_0F5A_P_3, VEX_W_0F5B_P_0, VEX_W_0F5B_P_1, VEX_W_0F5B_P_2,
VEX_W_0F5C_P_0, VEX_W_0F5C_P_1, VEX_W_0F5C_P_2, VEX_W_0F5C_P_3,
VEX_W_0F5D_P_0, VEX_W_0F5D_P_1, VEX_W_0F5D_P_2, VEX_W_0F5D_P_3,
VEX_W_0F5E_P_0, VEX_W_0F5E_P_1, VEX_W_0F5E_P_2, VEX_W_0F5E_P_3,
VEX_W_0F5F_P_0, VEX_W_0F5F_P_1, VEX_W_0F5F_P_2, VEX_W_0F5F_P_3,
VEX_W_0F60_P_2, VEX_W_0F61_P_2, VEX_W_0F62_P_2, VEX_W_0F63_P_2,
VEX_W_0F64_P_2, VEX_W_0F65_P_2, VEX_W_0F66_P_2, VEX_W_0F67_P_2,
VEX_W_0F68_P_2, VEX_W_0F69_P_2, VEX_W_0F6A_P_2, VEX_W_0F6B_P_2,
VEX_W_0F6C_P_2, VEX_W_0F6D_P_2, VEX_W_0F6F_P_1, VEX_W_0F6F_P_2,
VEX_W_0F70_P_1, VEX_W_0F70_P_2, VEX_W_0F70_P_3,
VEX_W_0F71_R_2_P_2, VEX_W_0F71_R_4_P_2, VEX_W_0F71_R_6_P_2,
VEX_W_0F72_R_2_P_2, VEX_W_0F72_R_4_P_2, VEX_W_0F72_R_6_P_2,
VEX_W_0F73_R_2_P_2, VEX_W_0F73_R_3_P_2, VEX_W_0F73_R_6_P_2,
VEX_W_0F73_R_7_P_2, VEX_W_0F74_P_2, VEX_W_0F75_P_2,
VEX_W_0F76_P_2, VEX_W_0F77_P_0, VEX_W_0F7C_P_2, VEX_W_0F7C_P_3,
VEX_W_0F7D_P_2, VEX_W_0F7D_P_3, VEX_W_0F7E_P_1, VEX_W_0F7F_P_1,
VEX_W_0F7F_P_2, VEX_W_0FAE_R_2_M_0, VEX_W_0FAE_R_3_M_0,
VEX_W_0FC2_P_0, VEX_W_0FC2_P_1, VEX_W_0FC2_P_2, VEX_W_0FC2_P_3,
VEX_W_0FD0_P_2, VEX_W_0FD0_P_3, VEX_W_0FD1_P_2, VEX_W_0FD2_P_2,
VEX_W_0FD3_P_2, VEX_W_0FD4_P_2, VEX_W_0FD5_P_2, VEX_W_0FD6_P_2,
VEX_W_0FD7_P_2_M_1, VEX_W_0FD8_P_2, VEX_W_0FD9_P_2,
VEX_W_0FDA_P_2, VEX_W_0FDB_P_2, VEX_W_0FDC_P_2, VEX_W_0FDD_P_2,
VEX_W_0FDE_P_2, VEX_W_0FDF_P_2, VEX_W_0FE0_P_2, VEX_W_0FE1_P_2,
VEX_W_0FE2_P_2, VEX_W_0FE3_P_2, VEX_W_0FE4_P_2, VEX_W_0FE5_P_2,
VEX_W_0FE6_P_1, VEX_W_0FE6_P_2, VEX_W_0FE6_P_3,
VEX_W_0FE7_P_2_M_0, VEX_W_0FE8_P_2, VEX_W_0FE9_P_2,
VEX_W_0FEA_P_2, VEX_W_0FEB_P_2, VEX_W_0FEC_P_2, VEX_W_0FED_P_2,
VEX_W_0FEE_P_2, VEX_W_0FEF_P_2, VEX_W_0FF0_P_3_M_0,
VEX_W_0FF1_P_2, VEX_W_0FF2_P_2, VEX_W_0FF3_P_2, VEX_W_0FF4_P_2,
VEX_W_0FF5_P_2, VEX_W_0FF6_P_2, VEX_W_0FF7_P_2, VEX_W_0FF8_P_2,
VEX_W_0FF9_P_2, VEX_W_0FFA_P_2, VEX_W_0FFB_P_2, VEX_W_0FFC_P_2,
VEX_W_0FFD_P_2, VEX_W_0FFE_P_2, VEX_W_0F3800_P_2,
VEX_W_0F3801_P_2, VEX_W_0F3802_P_2, VEX_W_0F3803_P_2,
VEX_W_0F3804_P_2, VEX_W_0F3805_P_2, VEX_W_0F3806_P_2,
VEX_W_0F3807_P_2, VEX_W_0F3808_P_2, VEX_W_0F3809_P_2,
VEX_W_0F380A_P_2, VEX_W_0F380B_P_2, VEX_W_0F3817_P_2,
VEX_W_0F381C_P_2, VEX_W_0F381D_P_2, VEX_W_0F381E_P_2,
VEX_W_0F3820_P_2, VEX_W_0F3821_P_2, VEX_W_0F3822_P_2,
VEX_W_0F3823_P_2, VEX_W_0F3824_P_2, VEX_W_0F3825_P_2,
VEX_W_0F3828_P_2, VEX_W_0F3829_P_2, VEX_W_0F382A_P_2_M_0,
VEX_W_0F382B_P_2, VEX_W_0F3830_P_2, VEX_W_0F3831_P_2,
VEX_W_0F3832_P_2, VEX_W_0F3833_P_2, VEX_W_0F3834_P_2,
VEX_W_0F3835_P_2, VEX_W_0F3837_P_2, VEX_W_0F3838_P_2,
VEX_W_0F3839_P_2, VEX_W_0F383A_P_2, VEX_W_0F383B_P_2,
VEX_W_0F383C_P_2, VEX_W_0F383D_P_2, VEX_W_0F383E_P_2,
VEX_W_0F383F_P_2, VEX_W_0F3840_P_2, VEX_W_0F3841_P_2,
VEX_W_0F38DB_P_2, VEX_W_0F3A08_P_2, VEX_W_0F3A09_P_2,
VEX_W_0F3A0A_P_2, VEX_W_0F3A0B_P_2, VEX_W_0F3A0C_P_2,
VEX_W_0F3A0D_P_2, VEX_W_0F3A0E_P_2, VEX_W_0F3A0F_P_2,
VEX_W_0F3A21_P_2, VEX_W_0F3A40_P_2, VEX_W_0F3A41_P_2,
VEX_W_0F3A42_P_2, VEX_W_0F3A62_P_2, VEX_W_0F3A63_P_2 and
VEX_W_0F3ADF_P_2 entries.
(mod_table): Update MOD_VEX_0F2B, MOD_VEX_0F50,
MOD_VEX_0FD7_PREFIX_2, MOD_VEX_0FE7_PREFIX_2,
MOD_VEX_0FF0_PREFIX_3 and MOD_VEX_0F382A_PREFIX_2 entries.
commit d839b9149957d9a8842c368caf97ef378d8c97af
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Sep 17 08:50:42 2018 -0700
Free symbol buffers if they are no longer in use
add_specific_symbols allocates a buffer to hold symbols. It should be
freed only if it is no longer in use.
PR binutils/23633
* objcopy.c (strip_specific_buffer): New.
(strip_unneeded_buffer): Likewise.
(keep_specific_buffer): Likewise.
(localize_specific_buffer): Likewise.
(globalize_specific_buffer): Likewise.
(keepglobal_specific_buffer): Likewise.
(weaken_specific_buffer): Likewise.
(add_specific_symbols): Add an argument to return pointer to
allocated buffer.
(copy_main): Update add_specific_symbols to update pointers to
allocated buffer. Free pointers to allocated buffer before
return.
commit e6cd1dc1e6c0d081382ee21c156b205204efc75b
Author: Tom Tromey <tom@tromey.com>
Date: Fri Sep 14 08:48:22 2018 -0600
Update get_standard_cache_dir for macOS
On macOS the usual cache directory is ~/Library/Caches. This patch
changes get_standard_cache_dir to use that instead of XDG.
gdb/ChangeLog
2018-09-17 Tom Tromey <tom@tromey.com>
* common/pathstuff.c (get_standard_cache_dir): Use
~/Library/Caches on macOS.
* common/pathstuff.h (get_standard_cache_dir): Update comment.
gdb/doc/ChangeLog
2018-09-17 Tom Tromey <tom@tromey.com>
* gdb.texinfo (Index Files): Update for cache directory change on
macOS.
commit c12d9fa2afe7abcbe407a00e15719e1a1350c2a7
Author: Alan Modra <amodra@gmail.com>
Date: Wed Sep 12 14:57:48 2018 +0930
Support objcopy --remove-section=.relaFOO
* objcopy.c (handle_remove_section_option): Don't require a dot
after .rela and .rel to handle a possible relocation section.
* testsuite/binutils-all/remove-relocs-07.s,
* testsuite/binutils-all/remove-relocs-07.d,
* testsuite/binutils-all/remove-relocs-08.d: New tests.
* testsuite/binutils-all/remove-relocs-01.d,
* testsuite/binutils-all/remove-relocs-04.d,
* testsuite/binutils-all/remove-relocs-05.d,
* testsuite/binutils-all/remove-relocs-06.d: Exclude mips64-openbsd.
commit a4b9568c7ee95891de6f5ba846f2d1aaf61569cd
Author: Alan Modra <amodra@gmail.com>
Date: Mon Sep 17 23:14:44 2018 +0930
Remove bogus notarget in gas teststuite
* testsuite/gas/arm/arch7.d: Delete notarget.
* testsuite/gas/arm/arch7a-mp.d: Likewise.
* testsuite/gas/arm/arch7em.d: Likewise.
* testsuite/gas/arm/archv8m-main-dsp-5.d: Likewise.
* testsuite/gas/arm/barrier.d: Likewise.
* testsuite/gas/arm/bignum1.d: Likewise.
* testsuite/gas/arm/thumb32.d: Likewise.
* testsuite/gas/elf/dwarf2-1.d: Likewise.
* testsuite/gas/elf/dwarf2-2.d: Likewise.
* testsuite/gas/elf/dwarf2-4.d: Likewise.
* testsuite/gas/elf/group2.d: Likewise.
* testsuite/gas/arm/mapshort-elf.d: Only notarget pe and wince.
* testsuite/gas/elf/dwarf2-3.d: Delete notarget, xfail ft32 and h8300.
* testsuite/gas/elf/dwarf2-6.d: Delete notarget, xfail a few.
commit 0b1352e04caa6b562a532354dc48f775e6a1135b
Author: Alan Modra <amodra@gmail.com>
Date: Mon Sep 17 08:51:24 2018 +0930
A few hppa testcase tidies
binutils/
* testsuite/lib/binutils-common.exp (is_som_format): New proc.
(run_dump_test): Correct target test for alternate .comm syntax.
(get_standard_section_names): Handle som format.
* testsuite/lib/utils-lib.exp (default_binutils_assemble_flags):
Correct target test for alternate .comm syntax.
gas/
* testsuite/gas/all/gas.exp (redef3): Don't xfail for hppa.
(octa): Run for hppa.
* testsuite/gas/elf/elf.exp (common1, common2): Likewise.
* testsuite/gas/elf/symver.d: Delete notarget.
ld/
* testsuite/ld-elf/comm-data5.d: Remove notarget for hppa.
* testsuite/ld-scripts/defined6.d: Likewise.
commit 8c9604b6a2c553bc1edc6d80b934b99112292e58
Author: Alan Modra <amodra@gmail.com>
Date: Mon Sep 17 14:51:47 2018 +0930
Adjust some strip testcases to silence h8300 warnings
* testsuite/binutils-all/strip-13mips64.s: Add section flags
for reloc section.
* testsuite/binutils-all/strip-13rel.s: Likewise.
* testsuite/binutils-all/strip-13rela.s: Likewise.
* testsuite/binutils-all/strip-14mips64.s: Likewise.
* testsuite/binutils-all/strip-14rel.s: Likewise.
* testsuite/binutils-all/strip-14rela.s: Likewise.
* testsuite/binutils-all/strip-15mips64.s: Likewise.
* testsuite/binutils-all/strip-15rel.s: Likewise.
* testsuite/binutils-all/strip-15rela.s: Likewise.
commit 6fa52824c316091c2beb22fceed9ba96d17f37c4
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Sep 17 06:11:54 2018 -0700
x86: Replace VexW=3 with VexWIG
* i386-opc.tbl (VexWIG): New.
Replace VexW=3 with VexWIG.
commit 8588b356927dabd582d1d67f87a161027cb2aed1
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Mon Sep 17 08:26:24 2018 -0400
python: Make gdb.execute("show commands") work (PR 23669)
Since commit
56bcdbea2bed ("Let gdb.execute handle multi-line commands")
trying to use a command like gdb.execute("show commands") in Python
fails. GDB ends up trying to run the "commands" command.
The reason is that GDB gets confused with the special "commands"
command. In process_next_line, the lookup_cmd_1 function returns the
cmd_list_element representing the "commands" sub-command of "show".
Lower, we check the cmd_list_element to see if it matches various
control commands by name, including the "commands" command. This is
where we wrongfully conclude that the executed command must be
"commands", when in reality it was "show commands".
The fix proposed in this patch removes the comparisons by name, instead
comparing the cmd_list_element object by pointer with the objects
created at initialization time.
Tested on the buildbot, though on a single builder (Fedora-x86_64-m64).
gdb/ChangeLog:
PR python/23669
* breakpoint.c (commands_cmd_element): New.
(_initialize_breakpoint): Assign commands_cmd_element.
* breakpoint.h (commands_cmd_element): New.
* cli/cli-script.c (while_cmd_element, if_command,
define_cmd_element): New.
(command_name_equals): Remove.
(process_next_line): Compare commands by pointer, not by name.
(_initialize_cli_script): Assign the various cmd_list_element
variables.
* compile/compile.c (compile_cmd_element): New.
(_initialize_compile): Assign compile_cmd_element.
* compile/compile.h (compile_cmd_element): New.
* guile/guile.c (guile_cmd_element): New.
(install_gdb_commands): Assign guile_cmd_element.
* guile/guile.h (guile_cmd_element): New.
* python/python.c (python_cmd_element): New.
(_initialize_python): Assign python_cmd_element.
* python/python.h (python_cmd_element): New.
* tracepoint.c (while_stepping_cmd_element): New.
(_initialize_tracepoint): Assign while_stepping_cmd_element.
* tracepoint.h (while_stepping_cmd_element): New.
gdb/testsuite/ChangeLog:
PR python/23669
* gdb.python/python.exp: Test gdb.execute("show commands").
commit a0a8a9340dc79116297627a0884c6a01543e4b34
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Sep 17 10:10:47 2018 +0100
Ensure that binutils test names are unique.
binutils* testsuite/binutils-all/compress.exp: Rename second "objcopy
zlib-gnu compress debug sections 3" test to "objcopy zlib-gabi
compress debug sections 3" and use gabi object files instead
of gnu object files.
* testsuite/binutils-all/objcopy.exp: Add suffix to the names
of the "ELF group" tests.
* testsuite/binutils-all/readelf.exp (proc readelf_find_size):
Add an iteration parameter and include it in the name of the
test. Update callers to include an iteration count.
gas * testuite/gas/elf/group0a.d: Add extra details to the test
name.
* testuite/gas/elf/group0b.d: Likewise.
* testuite/gas/elf/group1a.d: Likewise.
* testuite/gas/elf/group1b.d: Likewise.
* testuite/gas/elf/group0b.d: Likewise.
* testuite/gas/elf/section9.d: Likewise.
* testuite/gas/i386/ilp32/lns/lns-common-1.d: Likewise.
* testuite/gas/i386/ilp32/lns/lns-duplicate-1.d: Likewise.
ld * testuite/ld/ld-elf/audit.exp: Differentiate the names of the
two "Run with shared with --audit" tests.
* testuite/ld/ld-elf/compress.exp: Differentiate the zlib
compressed debug output test names.
* testuite/ld/ld-i386/tlspie1.d: Add extra details to the test
name.
* testuite/ld/ld-i386/tlspie2.d: Likewise.
* testuite/ld/ld-size/size.exp: Add missing escapes to the end
of lines in the size-3e test.
* testuite/ld/ld-unique/unique.exp: Differentiate the names of
the two "Checking unique PIC object" tests.
* testuite/ld/ld-x86-64/tlspie1.d: Add extra details to the test
name.
commit e6213e09ed0ef6ee40d00981c38baac6964aa95b
Author: Andreas Krebbel <krebbel@linux.vnet.ibm.com>
Date: Mon Sep 17 11:01:24 2018 +0200
S/390: Prevent GOT access rewrite for certain symbols
When dereferencing a GOT slot with lgrl or lg we rewrite this using
larl to get rid of the extra memory access. However, we cannot do
this for:
- symbols marked for absolute addressing
- symbols at odd addresses (larl can handle only even addresses)
Fixed with the attached patch.
bfd/ChangeLog:
2018-09-17 Andreas Krebbel <krebbel@linux.ibm.com>
* elf64-s390.c (elf_s390_relocate_section): Prevent rewriting of
GOT accesses with larl for ABS or misaligned symbols.
ld/ChangeLog:
2018-09-17 Andreas Krebbel <krebbel@linux.ibm.com>
* testsuite/ld-s390/gotreloc-1.s: Add tests for ABS and misaligned
symbol. Move variables into data section. Make bar 8 bytes wide.
* testsuite/ld-s390/gotreloc-1.ver: Make misaligned_sym resolve locally.
* testsuite/ld-s390/gotreloc_31-1.dd: Adjust patterns.
* testsuite/ld-s390/gotreloc_64-norelro-1.dd: Likewise.
* testsuite/ld-s390/gotreloc_64-relro-1.dd: Likewise.
commit cb5248409d7a5a10748c2aa70824ecddf2f913d5
Author: Tom Tromey <tom@tromey.com>
Date: Wed Jul 11 13:29:59 2018 -0600
Make save_infcall_*_state return unique pointers
Simon pointed out that save_infcall_suspend_state and
save_infcall_control_state could return unique pointers. This patch
implements this idea.
gdb/ChangeLog
2018-09-17 Tom Tromey <tom@tromey.com>
* infrun.c (save_infcall_suspend_state): Return
infcall_suspend_state_up.
(save_infcall_control_state): Return infcall_control_state_up.
* inferior.h (save_infcall_suspend_state)
(save_infcall_control_state): Declare later. Return unique
pointers.
commit 2d844eaf9c60832756cff80af67e16969c0e11fc
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jun 14 16:54:04 2018 -0700
Remove release_stop_context_cleanup
This removes release_stop_context_cleanup, replacing it with a
stop_context destructor. It also mildly c++-ifies this struct.
gdb/ChangeLog
2018-09-17 Tom Tromey <tom@tromey.com>
* infrun.c (struct stop_context): Declare constructor,
destructor, "changed" method.
(stop_context::stop_context): Rename from save_stop_context.
(stop_context::~stop_context): Rename from
release_stop_context_cleanup.
(normal_stop): Update.
(stop_context::changed): Rename from stop_context_changed. Return
bool.
commit c7c4d3fa80d2fef74fd4bd6b1e22c0399b19455f
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jun 14 16:01:24 2018 -0700
Remove two infrun cleanups
This removes a couple of cleanups from infrun by introducing a couple
of unique_ptr specializations.
gdb/ChangeLog
2018-09-17 Tom Tromey <tom@tromey.com>
* inferior.h (struct infcall_suspend_state_deleter): New.
(infcall_suspend_state_up): New typedef.
(struct infcall_control_state_deleter): New.
(infcall_control_state_up): New typedef.
(make_cleanup_restore_infcall_suspend_state)
(make_cleanup_restore_infcall_control_state): Don't declare.
* infcall.c (call_function_by_hand_dummy): Update.
* infrun.c (do_restore_infcall_suspend_state_cleanup)
(make_cleanup_restore_infcall_suspend_state): Remove.
(do_restore_infcall_control_state_cleanup)
(make_cleanup_restore_infcall_control_state): Remove.
commit ee841dd8fee73c355587533027aecc8983bd5478
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jun 14 15:59:55 2018 -0700
Use new and delete for struct infcall_control_state
This changes infrun.c to use new and delete for infcall_control_state.
gdb/ChangeLog
2018-09-17 Tom Tromey <tom@tromey.com>
* gdbthread.h (struct thread_control_state): Add initializer.
(class thread_info) <control>: Remove initializer.
* inferior.h (struct inferior_control_state): Add initializer.
(class inferior) <control>: Remove initializer.
(exit_inferior_1): Update.
* infrun.c (struct infcall_control_state): Add constructors.
(save_infcall_control_state): Use new.
(restore_infcall_control_state, discard_infcall_control_state):
Use delete.
commit 117f580a97f721465d62d0630594dafdcd89e4e8
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jun 14 15:41:12 2018 -0700
Remove cleanup from infrun.c
This removes a cleanup from infrun.c by taking advantage of the
previous patch to introduce a use of unique_xmalloc_ptr.
gdb/ChangeLog
2018-09-17 Tom Tromey <tom@tromey.com>
* infrun.c (struct infcall_suspend_state) <registers>: Now a
unique_ptr.
<siginfo_data>: Now a unique_xmalloc_ptr.
(save_infcall_suspend_state, restore_infcall_suspend_state)
(discard_infcall_suspend_state)
(get_infcall_suspend_state_regcache): Update.
commit dd848631cb96f7d25270faeee4c9736577230a29
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jun 14 15:32:46 2018 -0700
Use new and delete for struct infcall_suspend_state
This changes infrun.c to use new and delete for infcall_suspend_state.
This enables the coming cleanups.
gdb/ChangeLog
2018-09-17 Tom Tromey <tom@tromey.com>
* gdbthread.h (struct thread_suspend_state): Add initializers.
(class thread_info) <suspend>: Remove initializer.
* infrun.c (struct infcall_suspend_state): Add initializers.
(save_infcall_suspend_state): Use new.
(discard_infcall_suspend_state): Use delete.
commit 1a3389079dd5c93419846f44d42027a526ce19cf
Author: Tom Tromey <tom@tromey.com>
Date: Sun Sep 16 07:32:23 2018 -0600
Don't steal references in the gdb Python code
Some Python APIs steal references from their caller, and the refcount
checker supports this via an attribute.
However, in gdb with C++ we have a better idiom available: we can use
std::move on a gdbpy_ref<> instead. This makes the semantics obvious
at the point of call, and is safer at runtime as well, because the
callee's gdbpy_ref<> will be emptied.
This patch changes the reference-stealing code in gdb to use rvalue
references instead.
Tested on x86-64 Fedora 28.
gdb/ChangeLog
2018-09-16 Tom Tromey <tom@tromey.com>
* python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
Remove.
* python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
rvalue reference. Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
(py_varobj_iter_new): Likewise.
(py_varobj_get_iterator): Use gdbpy_ref.
commit 4a137fec2e1a8a6372da8fca1040ee582c62f78d
Author: Tom Tromey <tom@tromey.com>
Date: Sun Sep 16 08:02:22 2018 -0600
Simplify uses of thread_to_thread_object
An review by Simon of an earlier showed a few spots related to
thread_to_thread_object that could be simplified. This also detected
a latent bug, where thread_to_thread_object was inconsistent about
setting the Python exception before a NULL return.
Tested on x86-64 Fedora 28.
gdb/ChangeLog
2018-09-16 Tom Tromey <tom@tromey.com>
* python/py-threadevent.c (py_get_event_thread): Simplify.
* python/py-inferior.c (infpy_thread_from_thread_handle):
Return immediately after calling thread_to_thread_object. Use
Py_RETURN_NONE.
(thread_to_thread_object): Set the exception on a NULL return.
commit 8ff03f0bfbf0dc7d125f6ea0b844636c0aba74f6
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sun Sep 16 19:45:06 2018 -0400
Sort objects in gdb and gdbserver Makefiles
Tom mentioned this a while ago, as a way to give you a cheap sense of
progression in your build, as all object files will be built
alphabetically (including the directory part). I tried it and I think
it's nice.
gdb/ChangeLog:
* Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
gdb/gdbserver/ChangeLog:
* Makefile.in (gdbserver$(EXEEXT)): Sort OBS.
(gdbreplay$(EXEEXT)): Sort GDBREPLAY_OBS.
($(IPA_LIB)): Sort IPA_OBJS.
commit a1cd91dc2f4e369983fab631f18e96f5e46119bc
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sun Sep 16 19:44:47 2018 -0400
gdbserver/Makefile.in: Remove ADD_DEPS
ADD_DEPS is defined nowhere, so I presume it's not useful. If I'm wrong
and this is actually used, there should be a comment explaining where it
comes from.
gdb/gdbserver/ChangeLog:
* Makefile.in: Remove references to $(ADD_DEPS).
commit e08ef628a7e3098699ec6939584e2c9f7a9e1952
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Sep 17 00:00:39 2018 +0000
Automatic date update in version.in
commit 43276309ded887327f434374b37572d1bc0778eb
Author: John Darrington <john@darrington.wattle.id.au>
Date: Mon Sep 3 13:22:36 2018 +0200
S12Z Add tests for relocs.
ld/testsuite/ld-s12z/
* reloc-ext18-1.d: New file.
* reloc-ext18-1.d: New file.
* reloc-ext18-2.d: New file.
* reloc-ext18.d: New file.
* reloc-ext18.s: New file.
* reloc-ext24.d: New file.
* reloc-ext24.s: New file.
* reloc-ext32.d: New file.
* reloc-ext32.s: New file.
* reloc-opr.d: New file.
* reloc-opr.d: New file.
* reloc-opr.s: New file.
* reloc-pc-rel-7-15.d: New file.
* reloc-pc-rel-7-15.s: New file.
commit 57d5aa265f50b8c8c1ebbe4e67285aa9f5a53369
Author: John Darrington <john@darrington.wattle.id.au>
Date: Fri Sep 7 20:26:59 2018 +0200
Don't emit data_section_size when -r is specified
* ld/scripttempl/elfm9s12z.sc (.install): Add RELOCATING+ qualifier.
commit 19f1fffecd5359a9858151154d3de848f20a5990
Author: John Darrington <john@darrington.wattle.id.au>
Date: Mon Sep 3 12:07:59 2018 +0200
S12Z: LD: Rename z12s.exp --> s12z.exp
* ld/testsuite/ld-s12z/z12s.exp: Delete.
* ld/testsuite/ld-s12z/s12z.exp: New file.
commit e6d9d9285574ba3e157a29bd40cf6ab4bbaeeaf0
Author: John Darrington <john@darrington.wattle.id.au>
Date: Mon Sep 3 13:22:57 2018 +0200
S12Z: Remove diagnostic printf statement.
* bfd/elf32-s12z.c (bfd_elf32_bfd_reloc_name_lookup): Remove diagnostic printf
(artifact from debugging)
commit 808325d203f629208ed1988c8a90321c470ebcff
Author: John Darrington <john@darrington.wattle.id.au>
Date: Tue Sep 4 20:24:44 2018 +0200
S12Z: Set the source mask value of all howtos to zero.
Thanks to Alan Modra for this hint.
* bfd/elf32-s12z.c (elf_s12z_howto_table): set all src_mask members to zero.
commit 94c8b7253a5e165ee92f7302f3247764d69b55e5
Author: Tom Tromey <tom@tromey.com>
Date: Wed Sep 12 23:18:11 2018 -0600
Remove CPYCHECKER_RETURNS_BORROWED_REF
CPYCHECKER_RETURNS_BORROWED_REF is not used, and I think should never
be used. This patch removes it.
gdb/ChangeLog
2018-09-16 Tom Tromey <tom@tromey.com>
* python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
Remove.
commit db1337cc8300bb44f8ccf9dced3e122b6e50b4c9
Author: Tom Tromey <tom@tromey.com>
Date: Wed Sep 12 23:15:48 2018 -0600
Change thread_to_thread_object to return a new reference
This changes thread_to_thread_object to return a new reference and
fixes up all the callers.
gdb/ChangeLog
2018-09-16 Tom Tromey <tom@tromey.com>
* python/python-internal.h (thread_to_thread_object): Change
return type.
* python/py-inferior.c (thread_to_thread_object): Return a new
reference.
(infpy_thread_from_thread_handle): Update.
* python/py-infthread.c (gdbpy_selected_thread): Update.
* python/py-stopevent.c (create_stop_event_object): Update.
* python/py-threadevent.c (py_get_event_thread): Return a new
reference.
(py_get_event_thread): Update.
* python/py-event.h (py_get_event_thread): Change return type.
* python/py-continueevent.c (create_continue_event_object):
Update.
commit 0a9db5ad8a6c49cec7adb7e3ef29c558fcfbf11b
Author: Tom Tromey <tom@tromey.com>
Date: Wed Sep 12 23:06:09 2018 -0600
Change objfile_to_objfile_object to return a new reference
This changes objfile_to_objfile_object to return a new references and
fixes up all the uses.
gdb/ChangeLog
2018-09-16 Tom Tromey <tom@tromey.com>
* python/py-progspace.c (pspy_get_objfiles): Update.
* python/python-internal.h (objfile_to_objfile_object): Change
return type.
* python/py-newobjfileevent.c (create_new_objfile_event_object):
Update.
* python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
Update.
* python/python.c (gdbpy_get_current_objfile): Update.
(gdbpy_objfiles): Update.
* python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
Update.
(objfile_to_objfile_object): Return a new reference.
* python/py-symtab.c (stpy_get_objfile): Update.
* python/py-prettyprint.c (find_pretty_printer_from_objfiles):
Update.
commit 3c7aa30778a1615d88c13508c04138ef2499112d
Author: Tom Tromey <tom@tromey.com>
Date: Wed Sep 12 21:44:19 2018 -0600
Change pspace_to_pspace_object to return a new reference
This changes pspace_to_pspace_object to return a new reference and
fixes up all the callers.
gdb/ChangeLog
2018-09-16 Tom Tromey <tom@tromey.com>
* python/py-inferior.c (infpy_get_progspace): Update.
* python/python-internal.h (pspace_to_pspace_object): Change
return type.
* python/py-newobjfileevent.c
(create_clear_objfiles_event_object): Update.
* python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
Update.
* python/python.c (gdbpy_get_current_progspace): Update.
(gdbpy_progspaces): Update.
* python/py-progspace.c (pspace_to_pspace_object): Return a new
reference.
* python/py-objfile.c (objfpy_get_progspace): Update.
* python/py-prettyprint.c (find_pretty_printer_from_progspace):
Update.
commit 8743a9cdd20055e02a20c24c37b5312e3e626691
Author: Tom Tromey <tom@tromey.com>
Date: Thu Dec 26 19:50:05 2013 -0700
Add more methods to gdb.Progspace
There are a number of global functions in the gdb Python module which
really should be methods on Progspace. This patch adds new methods to
Progspace and then redefines these globals in terms of these new
methods.
This version has been rebased on the related changes that Simon
recently put in.
Built and regtested on x86-64 Fedora 28.
gdb/ChangeLog
2018-09-16 Tom Tromey <tom@tromey.com>
* python/lib/gdb/__init__.py (current_progspace, objfiles)
(solib_name, block_for_pc, find_pc_line): New functions.
(execute_unwinders): Update.
* python/py-block.c (gdbpy_block_for_pc): Remove.
* python/py-inferior.c (infpy_get_progspace): New function.
(inferior_object_getset) <progspace>: Add.
* python/py-progspace.c (pspy_objfiles): Rewrite.
(pspy_solib_name, pspy_block_for_pc)
(pspy_find_pc_line, pspy_is_valid): New functions.
(progspace_object_methods): Add entries for solib_name,
block_for_pc, find_pc_line, is_valid.
* python/python-internal.h (gdbpy_block_for_pc)
(build_objfiles_list): Don't declare.
* python/python.c: Don't include solib.h.
(gdbpy_solib_name, gdbpy_find_pc_line)
(gdbpy_get_current_progspace, build_objfiles_list)
(gdbpy_objfiles): Remove.
(GdbMethods) <current_progspace, objfiles, block_for_pc,
solib_name, find_pc_line>: Remove entries.
gdb/doc/ChangeLog
2018-09-16 Tom Tromey <tom@tromey.com>
* python.texi (Basic Python): Update docs for find_pc_line,
solib_name.
(Progspaces In Python): Update docs for current_progspace.
Document block_for_pc, find_pc_line, is_valid, nsolib_name.
Move method documentation before example.
commit 752312ba4e53fea8e77ae240a35a7b508c6ca619
Author: Tom Tromey <tom@tromey.com>
Date: Fri Sep 14 07:46:55 2018 -0600
Use GNU style for metasyntactic variables in gdbserver
This changes a couple of places in gdbserver to use the GNU style for
metasyntactic variables.
gdb/gdbserver/ChangeLog
2018-09-16 Tom Tromey <tom@tromey.com>
* remote-utils.c (remote_open): Use GNU style for metasyntactic
variables.
* gdbreplay.c (gdbreplay_usage): Use GNU style for metasyntactic
variables.
commit 65e65158c50dd7e7a5fbc9dcdad9da6df31e01c4
Author: Tom Tromey <tom@tromey.com>
Date: Fri Sep 14 07:45:06 2018 -0600
Use GNU style for metasyntactic variables in gdb
I searched for other spots that did not use the GNU style for
metasyntactic syntactic variables. This patch fixes most of the ones
I found in gdb proper. There are a few remaining in MI, but I was
unsure whether those should be touched.
gdb/ChangeLog
2018-09-16 Tom Tromey <tom@tromey.com>
* top.c (new_ui_command): Use GNU style for metasyntactic
variables.
* breakpoint.c (stopat_command): Use GNU style for metasyntactic
variables.
* maint.c (maintenance_translate_address): Remove "<>" around
text.
* interps.c (interpreter_exec_cmd): Use GNU style for
metasyntactic variables.
* nto-procfs.c (nto_procfs_target_info): Use GNU style for
metasyntactic variables.
* tracepoint.c (tfind_range_command): Use GNU style for
metasyntactic variables.
(tfind_outside_command): Likewise.
(_initialize_tracepoint): Likewise.
* remote.c (extended_remote_target::create_inferior): Use GNU
style for metasyntactic variables.
* sparc64-tdep.c (adi_examine_command): Use GNU style for
metasyntactic variables.
(adi_assign_command): Likewise.
gdb/testsuite/ChangeLog
2018-09-16 Tom Tromey <tom@tromey.com>
* gdb.base/new-ui.exp (do_execution_tests): Update.
* gdb.base/dbx.exp (test_breakpoints): Update.
commit f4bab6ff22a0ddb799c1c492117a15fe0501ff1e
Author: Tom Tromey <tom@tromey.com>
Date: Fri Sep 14 07:34:05 2018 -0600
Expand "show disassembler-options" output
I typed this:
(gdb) help set disassembler-options
Set the disassembler options.
Usage: set disassembler-options OPTION [,OPTION]...
See: 'show disassembler-options' for valid option values.
... so I tried what it said and got:
(gdb) show disassembler-options
The current disassembler options are ''
This surprised me a little, so this patch adds some text to explain
the situation when an architecture does not have disassembler options.
While there I noticed one more spot where gdb was not using the GNU
style for metasyntactic variables. This patch fixes this as well.
gdb/ChangeLog
2018-09-16 Tom Tromey <tom@tromey.com>
* disasm.c (show_disassembler_options_sfunc): Use GNU style for
metasyntactic variables. Print message if no disassembler options
are available.
commit db4cc66567397498a9e9eaedb8d0bb8889744ef7
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sat Sep 15 17:09:08 2018 -0700
x86: Set VexW=3 on AVX vrsqrtss
AVX vrsqrtss is a VEX WIG instruction.
* i386-opc.tbl: Set VexW=3 on AVX vrsqrtss.
* i386-tbl.h: Regenerated.
commit 6e809f2dfa65fff42e3ab20e0d7490454288bbcc
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Sep 16 00:01:17 2018 +0000
Automatic date update in version.in
commit cbaaa0cafcac0630c6f07f81663a1b10a4e197a0
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 15 16:29:03 2018 -0600
Change get_inferior_args to return const char *
I noticed that get_inferior_args should return const char *, because
it is just returning a reference to something owned by the inferior.
I'm checking this in.
gdb/ChangeLog
2018-09-15 Tom Tromey <tom@tromey.com>
* infcmd.c (get_inferior_args): Return const char *.
* inferior.h (get_inferior_args): Return type now const.
* linux-tdep.c (linux_fill_prpsinfo): Update.
* procfs.c (procfs_target::make_corefile_notes): Update.
commit 3c3741435f315fba956bbace8c4991215e283510
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sat Sep 15 14:50:40 2018 -0700
x86: Set Vex=1 on VEX.128 only vmovq
AVX "VMOVQ xmm1, xmm2/m64" and "VMOVQ xmm1/m64, xmm2" can only be
encoded with VEX.128. Set Vex=1 on VEX.128 only vmovq and update
assembler tests.
gas/
PR gas/23665
* testsuite/gas/i386/avx-scalar-intel.d: Updated.
* testsuite/gas/i386/avx-scalar.d: Likewise.
* testsuite/gas/i386/x86-64-avx-scalar-intel.d: Likewise.
* testsuite/gas/i386/x86-64-avx-scalar.d: Likewise.
opcodes/
PR gas/23665
* i386-dis.c (vex_len_table): Update VEX_LEN_0F7E_P_1 and
VEX_LEN_0FD6_P_2 entries.
* i386-opc.tbl: Set Vex=1 on VEX.128 only vmovq.
* i386-tbl.h: Regenerated.
commit 8ffb70eb57f527817840ff33982c085b0bec86bc
Author: Alan Modra <amodra@gmail.com>
Date: Thu Sep 13 14:45:47 2018 +0930
Consolidate run_dump_test
This merges the three versions of run_dump_test. Improved warning
handling versus the old gas version shows up a number of tests that
need their disassembly updating:
arm-linuxeabi +FAIL: ARM v1 instructions
arm-linuxeabi +FAIL: Accepted v8-a with ARMv8.1 AdvSIMD.
arm-linuxeabi +FAIL: bl local instructions for v4t.
arm-linuxeabi +FAIL: UDF
and some that now fail due to detecting assembly warnings:
h8300-elf +FAIL: binutils-all/strip-13
h8300-elf +FAIL: binutils-all/strip-14
h8300-elf +FAIL: binutils-all/strip-15
I've generally kept the union of all run_dump_test features, except
that the ld target aliases "cfi" and "shared" have disappeared, as has
the binutils substitution of $srcdir as $scrdir/$subdir.
binutils/
* testsuite/binutils-all/add-symbol.d: Add "section_subst: no".
* testsuite/binutils-all/elfedit.exp: Don't set tempfile or copyfile.
* testsuite/binutils-all/symbols-1.d,
* testsuite/binutils-all/symbols-2.d,
* testsuite/binutils-all/symbols-3.d,
* testsuite/binutils-all/symbols-4.d: Quote '*' and '!'.
* testsuite/binutils-all/add-empty-section.d,
* testsuite/binutils-all/add-section.d,
* testsuite/binutils-all/elfedit.exp,
* testsuite/binutils-all/note-1.d,
* testsuite/binutils-all/pr23633.d: Add $subdir after $srcdir.
* testsuite/config/default.exp (AS, ASFLAGS): Define.
* testsuite/config/hppa.sed: Handle all common symbols.
* testsuite/lib/binutils-common.exp (run_dump_test): New proc,
merged from three other versions.
(slurp_options, file_contents, set_file_contents): Likewise.
(big_or_little_endian, get_standard_section_names): Likewise.
* testsuite/lib/utils-lib.exp (run_dump_test): Delete.
(slurp_options, proc file_contents): Delete.
(get_standard_section_names): Delete.
gas/
* testsuite/config/default.exp: Make tmpdir.
* testsuite/lib/gas-defs.exp (run_dump_test): Delete.
(get_standard_section_names, slurp_options): Delete.
ld/
* testsuite/ld-d10v/reloc-007.d,
* testsuite/ld-d10v/reloc-008.d,
* testsuite/ld-d10v/reloc-015.d,
* testsuite/ld-d10v/reloc-016.d: Remove "error:".
* testsuite/ld-elf/eh-frame-hdr.d,
* testsuite/ld-elf/eh5.d,
* testsuite/ld-gc/personality.d: Replace "cfi" and "shared" in
target list with appropriate proc.
* testsuite/ld-elf/frame.exp: Use check_shared_lib_support rather
than "istarget shared".
* testsuite/lib/ld-lib.exp (proc big_or_little_endian): Delete.
(run_dump_test, slurp_options, file_contents): Delete.
(set_file_contents, istarget): Delete.
commit 99bcaeaf0ff692348194ed6f30162c3a0cfb9655
Author: Alan Modra <amodra@gmail.com>
Date: Thu Sep 13 18:55:30 2018 +0930
run_dump_test replace PROG with DUMPPROG in gas and ld
To be compatible with the binutils version, that uses PROG for the
tool under test and DUMPPROG for the dump tool.
gas/
* testsuite/gas/mips/aent-2.d,
* testsuite/gas/mips/aent-mdebug-2.d,
* testsuite/gas/mips/attr-gnu-4-0.d,
* testsuite/gas/mips/attr-gnu-4-1.d,
* testsuite/gas/mips/attr-gnu-4-2.d,
* testsuite/gas/mips/attr-gnu-4-3.d,
* testsuite/gas/mips/attr-gnu-4-5.d,
* testsuite/gas/mips/attr-gnu-4-6.d,
* testsuite/gas/mips/attr-gnu-4-7.d,
* testsuite/gas/mips/attr-none-double.d,
* testsuite/gas/mips/attr-none-o32-fp64-nooddspreg.d,
* testsuite/gas/mips/attr-none-o32-fp64.d,
* testsuite/gas/mips/attr-none-o32-fpxx.d,
* testsuite/gas/mips/attr-none-single-float.d,
* testsuite/gas/mips/attr-none-soft-float.d,
* testsuite/gas/mips/elf-rel27.d,
* testsuite/gas/mips/loc-swap-2.d,
* testsuite/gas/mips/loc-swap-3.d,
* testsuite/gas/mips/loc-swap.d,
* testsuite/gas/mips/micromips@loc-swap-2.d,
* testsuite/gas/mips/micromips@loc-swap.d,
* testsuite/gas/mips/micromips@stabs-symbol-type.d,
* testsuite/gas/mips/mips16-intermix.d,
* testsuite/gas/mips/mips16@loc-swap-2.d,
* testsuite/gas/mips/mips16@loc-swap.d,
* testsuite/gas/mips/mips16@stabs-symbol-type.d,
* testsuite/gas/mips/mips16e@loc-swap.d,
* testsuite/gas/mips/no-odd-spreg.d,
* testsuite/gas/mips/odd-spreg.d,
* testsuite/gas/mips/r6-attr-none-double.d,
* testsuite/gas/mips/stabs-symbol-type.d,
* testsuite/lib/gas-defs.exp (run_dump_test): Replace PROG
with DUMPPROG.
ld/
* testsuite/lib/ld-lib.exp (run_dump_test): Replace PROG
with DUMPPROG.
commit 4abd8e8de725118c4b01cf71556ffcb4367344f8
Author: Alan Modra <amodra@gmail.com>
Date: Fri Sep 14 09:48:08 2018 +0930
gas testuite fixes: don't match dump.o
The consolidated run_dump_test will use object file names based on the
source file name, like the current ld version.
* testsuite/gas/elf/symver.d,
* testsuite/gas/ft32/insn.d,
* testsuite/gas/ft32/insnsc.d,
* testsuite/gas/i386/ilp32/elf/symver.d,
* testsuite/gas/lm32/csr.d,
* testsuite/gas/lm32/insn.d,
* testsuite/gas/m68hc11/9s12x-exg-sex-tfr.d,
* testsuite/gas/m68hc11/9s12x-mov.d,
* testsuite/gas/m68hc11/hexprefix.d,
* testsuite/gas/m68hc11/insns9s12x.d,
* testsuite/gas/m68hc11/insns9s12xg.d,
* testsuite/gas/mep/dj1.be.d,
* testsuite/gas/mep/dj1.le.d,
* testsuite/gas/mips/set-arch.d,
* testsuite/gas/mips/tls-o32.d,
* testsuite/gas/nios2/branch-r2.d,
* testsuite/gas/nios2/branch.d,
* testsuite/gas/pdp11/absreloc.d,
* testsuite/gas/pdp11/opcode.d,
* testsuite/gas/pdp11/pr14480.d,
* testsuite/gas/pdp11/pr23481.d,
* testsuite/gas/ppc/xcoff-dwsect-1-32.d,
* testsuite/gas/ppc/xcoff-dwsect-1-64.d,
* testsuite/gas/rx/abs.d,
* testsuite/gas/rx/adc.d,
* testsuite/gas/rx/add.d,
* testsuite/gas/rx/and.d,
* testsuite/gas/rx/bclr.d,
* testsuite/gas/rx/bcnd.d,
* testsuite/gas/rx/bmcnd.d,
* testsuite/gas/rx/bnot.d,
* testsuite/gas/rx/bra.d,
* testsuite/gas/rx/brk.d,
* testsuite/gas/rx/bset.d,
* testsuite/gas/rx/bsr.d,
* testsuite/gas/rx/btst.d,
* testsuite/gas/rx/clrpsw.d,
* testsuite/gas/rx/cmp.d,
* testsuite/gas/rx/dbt.d,
* testsuite/gas/rx/div.d,
* testsuite/gas/rx/divu.d,
* testsuite/gas/rx/emaca.d,
* testsuite/gas/rx/emsba.d,
* testsuite/gas/rx/emul.d,
* testsuite/gas/rx/emula.d,
* testsuite/gas/rx/emulu.d,
* testsuite/gas/rx/fadd.d,
* testsuite/gas/rx/fcmp.d,
* testsuite/gas/rx/fdiv.d,
* testsuite/gas/rx/fmul.d,
* testsuite/gas/rx/fsqrt.d,
* testsuite/gas/rx/fsub.d,
* testsuite/gas/rx/ftoi.d,
* testsuite/gas/rx/ftou.d,
* testsuite/gas/rx/gprel.d,
* testsuite/gas/rx/int.d,
* testsuite/gas/rx/itof.d,
* testsuite/gas/rx/jmp.d,
* testsuite/gas/rx/jsr.d,
* testsuite/gas/rx/machi.d,
* testsuite/gas/rx/maclh.d,
* testsuite/gas/rx/maclo.d,
* testsuite/gas/rx/max.d,
* testsuite/gas/rx/min.d,
* testsuite/gas/rx/mov.d,
* testsuite/gas/rx/movco.d,
* testsuite/gas/rx/movli.d,
* testsuite/gas/rx/movu.d,
* testsuite/gas/rx/msbhi.d,
* testsuite/gas/rx/msblh.d,
* testsuite/gas/rx/msblo.d,
* testsuite/gas/rx/mul.d,
* testsuite/gas/rx/mulhi.d,
* testsuite/gas/rx/mullh.d,
* testsuite/gas/rx/mullo.d,
* testsuite/gas/rx/mvfacgu.d,
* testsuite/gas/rx/mvfachi.d,
* testsuite/gas/rx/mvfaclo.d,
* testsuite/gas/rx/mvfacmi.d,
* testsuite/gas/rx/mvfc.d,
* testsuite/gas/rx/mvfcp.d,
* testsuite/gas/rx/mvtacgu.d,
* testsuite/gas/rx/mvtachi.d,
* testsuite/gas/rx/mvtaclo.d,
* testsuite/gas/rx/mvtc.d,
* testsuite/gas/rx/mvtcp.d,
* testsuite/gas/rx/neg.d,
* testsuite/gas/rx/nop.d,
* testsuite/gas/rx/not.d,
* testsuite/gas/rx/opecp.d,
* testsuite/gas/rx/or.d,
* testsuite/gas/rx/pop.d,
* testsuite/gas/rx/popc.d,
* testsuite/gas/rx/popm.d,
* testsuite/gas/rx/pr19665.d,
* testsuite/gas/rx/pr22737.d,
* testsuite/gas/rx/push.d,
* testsuite/gas/rx/pushc.d,
* testsuite/gas/rx/pushm.d,
* testsuite/gas/rx/r-bcc.d,
* testsuite/gas/rx/r-bra.d,
* testsuite/gas/rx/racl.d,
* testsuite/gas/rx/racw.d,
* testsuite/gas/rx/rdacl.d,
* testsuite/gas/rx/rdacw.d,
* testsuite/gas/rx/revl.d,
* testsuite/gas/rx/revw.d,
* testsuite/gas/rx/rmpa.d,
* testsuite/gas/rx/rolc.d,
* testsuite/gas/rx/rorc.d,
* testsuite/gas/rx/rotl.d,
* testsuite/gas/rx/rotr.d,
* testsuite/gas/rx/round.d,
* testsuite/gas/rx/rte.d,
* testsuite/gas/rx/rtfi.d,
* testsuite/gas/rx/rts.d,
* testsuite/gas/rx/rtsd.d,
* testsuite/gas/rx/sat.d,
* testsuite/gas/rx/satr.d,
* testsuite/gas/rx/sbb.d,
* testsuite/gas/rx/sccnd.d,
* testsuite/gas/rx/scmpu.d,
* testsuite/gas/rx/setpsw.d,
* testsuite/gas/rx/shar.d,
* testsuite/gas/rx/shll.d,
* testsuite/gas/rx/shlr.d,
* testsuite/gas/rx/smovb.d,
* testsuite/gas/rx/smovf.d,
* testsuite/gas/rx/smovu.d,
* testsuite/gas/rx/sstr.d,
* testsuite/gas/rx/stnz.d,
* testsuite/gas/rx/stz.d,
* testsuite/gas/rx/sub.d,
* testsuite/gas/rx/suntil.d,
* testsuite/gas/rx/swhile.d,
* testsuite/gas/rx/tst.d,
* testsuite/gas/rx/utof.d,
* testsuite/gas/rx/wait.d,
* testsuite/gas/rx/xchg.d,
* testsuite/gas/rx/xor.d,
* testsuite/gas/s12z/abs.d,
* testsuite/gas/s12z/adc-imm.d,
* testsuite/gas/s12z/adc-opr.d,
* testsuite/gas/s12z/add-imm.d,
* testsuite/gas/s12z/add-opr.d,
* testsuite/gas/s12z/and-imm.d,
* testsuite/gas/s12z/and-opr.d,
* testsuite/gas/s12z/and-or-cc.d,
* testsuite/gas/s12z/bfext-special.d,
* testsuite/gas/s12z/bfext.d,
* testsuite/gas/s12z/bit-manip.d,
* testsuite/gas/s12z/bit.d,
* testsuite/gas/s12z/bra-expression-defined.d,
* testsuite/gas/s12z/bra-expression-undef.d,
* testsuite/gas/s12z/bra.d,
* testsuite/gas/s12z/brclr-symbols.d,
* testsuite/gas/s12z/brset-clr-opr-imm-rel.d,
* testsuite/gas/s12z/brset-clr-opr-reg-rel.d,
* testsuite/gas/s12z/brset-clr-reg-imm-rel.d,
* testsuite/gas/s12z/brset-clr-reg-reg-rel.d,
* testsuite/gas/s12z/clb.d,
* testsuite/gas/s12z/clr-opr.d,
* testsuite/gas/s12z/clr.d,
* testsuite/gas/s12z/cmp-imm.d,
* testsuite/gas/s12z/cmp-opr-inc.d,
* testsuite/gas/s12z/cmp-opr-rdirect.d,
* testsuite/gas/s12z/cmp-opr-reg.d,
* testsuite/gas/s12z/cmp-opr-rindirect.d,
* testsuite/gas/s12z/cmp-opr-sxe4.d,
* testsuite/gas/s12z/cmp-opr-xys.d,
* testsuite/gas/s12z/cmp-s-imm.d,
* testsuite/gas/s12z/cmp-s-opr.d,
* testsuite/gas/s12z/cmp-xy.d,
* testsuite/gas/s12z/com-opr.d,
* testsuite/gas/s12z/complex-shifts.d,
* testsuite/gas/s12z/db-tb-cc-opr.d,
* testsuite/gas/s12z/db-tb-cc-reg.d,
* testsuite/gas/s12z/dbCC.d,
* testsuite/gas/s12z/dec-opr.d,
* testsuite/gas/s12z/dec.d,
* testsuite/gas/s12z/div.d,
* testsuite/gas/s12z/eor.d,
* testsuite/gas/s12z/exg.d,
* testsuite/gas/s12z/ext24-ld-xy.d,
* testsuite/gas/s12z/inc-opr.d,
* testsuite/gas/s12z/inc.d,
* testsuite/gas/s12z/inh.d,
* testsuite/gas/s12z/jmp.d,
* testsuite/gas/s12z/jsr.d,
* testsuite/gas/s12z/ld-imm-page2.d,
* testsuite/gas/s12z/ld-imm.d,
* testsuite/gas/s12z/ld-immu18.d,
* testsuite/gas/s12z/ld-large-direct.d,
* testsuite/gas/s12z/ld-opr.d,
* testsuite/gas/s12z/ld-s-opr.d,
* testsuite/gas/s12z/ld-small-direct.d,
* testsuite/gas/s12z/lea-immu18.d,
* testsuite/gas/s12z/lea.d,
* testsuite/gas/s12z/mac.d,
* testsuite/gas/s12z/min-max.d,
* testsuite/gas/s12z/mod.d,
* testsuite/gas/s12z/mov.d,
* testsuite/gas/s12z/mul-imm.d,
* testsuite/gas/s12z/mul-opr-opr.d,
* testsuite/gas/s12z/mul-opr.d,
* testsuite/gas/s12z/mul-reg.d,
* testsuite/gas/s12z/mul.d,
* testsuite/gas/s12z/neg-opr.d,
* testsuite/gas/s12z/not-so-simple-shifts.d,
* testsuite/gas/s12z/opr-18u.d,
* testsuite/gas/s12z/opr-expr.d,
* testsuite/gas/s12z/opr-ext-18.d,
* testsuite/gas/s12z/opr-idx-24-reg.d,
* testsuite/gas/s12z/opr-idx3-reg.d,
* testsuite/gas/s12z/opr-idx3-xysp-24.d,
* testsuite/gas/s12z/opr-indirect-expr.d,
* testsuite/gas/s12z/opr-symbol.d,
* testsuite/gas/s12z/or-imm.d,
* testsuite/gas/s12z/or-opr.d,
* testsuite/gas/s12z/p2-mul.d,
* testsuite/gas/s12z/page2-inh.d,
* testsuite/gas/s12z/psh-pul.d,
* testsuite/gas/s12z/qmul.d,
* testsuite/gas/s12z/rotate.d,
* testsuite/gas/s12z/sat.d,
* testsuite/gas/s12z/sbc-imm.d,
* testsuite/gas/s12z/sbc-opr.d,
* testsuite/gas/s12z/shift.d,
* testsuite/gas/s12z/simple-shift.d,
* testsuite/gas/s12z/single-ops.d,
* testsuite/gas/s12z/specd6.d,
* testsuite/gas/s12z/st-large-direct.d,
* testsuite/gas/s12z/st-opr.d,
* testsuite/gas/s12z/st-s-opr.d,
* testsuite/gas/s12z/st-small-direct.d,
* testsuite/gas/s12z/st-xy.d,
* testsuite/gas/s12z/sub-imm.d,
* testsuite/gas/s12z/sub-opr.d,
* testsuite/gas/s12z/tfr.d,
* testsuite/gas/s12z/trap.d,
* testsuite/gas/sh/fdpic.d,
* testsuite/gas/sh/sh2a-pic.d,
* testsuite/gas/sh/sh2a.d: Don't match object file name.
* testsuite/gas/wasm32/disass-2.d,
* testsuite/gas/wasm32/disass.d: Likewise, and tidy regexps.
commit e643ed088a085f35b724413140846f739413a78a
Author: Alan Modra <amodra@gmail.com>
Date: Thu Sep 13 16:56:08 2018 +0930
gas run_dump_test rename stderr and error-output
Use warning_output and error_output, like the ld version of
run_dump_test. Note that some tests used the wrong option, and this
went undetected since the gas version of run_dump_test doesn't
properly check tool error status. This patch corrects wrong options,
in preparation for a later patch that will check error status.
* testsuite/gas/aarch64/armv8_2-a-crypto-fp16-illegal.d,
* testsuite/gas/aarch64/armv8_2-a-illegal.d,
* testsuite/gas/aarch64/armv8_4-a-illegal.d,
* testsuite/gas/aarch64/armv8_4-a-registers-illegal.d,
* testsuite/gas/aarch64/deprecated.d,
* testsuite/gas/aarch64/diagnostic.d,
* testsuite/gas/aarch64/illegal-2.d,
* testsuite/gas/aarch64/illegal-by-element.d,
* testsuite/gas/aarch64/illegal-crypto-nofp.d,
* testsuite/gas/aarch64/illegal-fcmla.d,
* testsuite/gas/aarch64/illegal-fjcvtzs.d,
* testsuite/gas/aarch64/illegal-fp16-nofp.d,
* testsuite/gas/aarch64/illegal-ldapr.d,
* testsuite/gas/aarch64/illegal-ldraa.d,
* testsuite/gas/aarch64/illegal-lse.d,
* testsuite/gas/aarch64/illegal-nofp-armv8_3.d,
* testsuite/gas/aarch64/illegal-nofp16.d,
* testsuite/gas/aarch64/illegal-ras-1.d,
* testsuite/gas/aarch64/illegal-sysreg-2.d,
* testsuite/gas/aarch64/illegal-sysreg-3.d,
* testsuite/gas/aarch64/illegal.d,
* testsuite/gas/aarch64/legacy_reg_names.d,
* testsuite/gas/aarch64/pan-illegal.d,
* testsuite/gas/aarch64/pr22529.d,
* testsuite/gas/aarch64/rm-simd-ext.d,
* testsuite/gas/aarch64/sve-invalid.d,
* testsuite/gas/aarch64/sve-reg-diagnostic.d,
* testsuite/gas/aarch64/sve-sysreg-invalid.d,
* testsuite/gas/aarch64/sysreg-diagnostic.d,
* testsuite/gas/aarch64/verbose-error.d,
* testsuite/gas/all/byte.d,
* testsuite/gas/all/org-1.d,
* testsuite/gas/all/org-2.d,
* testsuite/gas/all/org-3.d,
* testsuite/gas/all/sleb128-9.d,
* testsuite/gas/arc/asm-errors-2.d,
* testsuite/gas/arc/asm-errors-3.d,
* testsuite/gas/arc/asm-errors.d,
* testsuite/gas/arc/attr-rf16.d,
* testsuite/gas/arc/relocs-errors.d,
* testsuite/gas/arc/textinsn-errors.d,
* testsuite/gas/arm/addsw-bad.d,
* testsuite/gas/arm/addthumb2err.d,
* testsuite/gas/arm/adr-invalid.d,
* testsuite/gas/arm/arch7em-bad-1.d,
* testsuite/gas/arm/arch7em-bad-2.d,
* testsuite/gas/arm/arch7em-bad-3.d,
* testsuite/gas/arm/arch7m-bad.d,
* testsuite/gas/arm/archv6s-m-bad.d,
* testsuite/gas/arm/archv6t2-bad.d,
* testsuite/gas/arm/arm-idiv-bad.d,
* testsuite/gas/arm/arm-it-bad-2.d,
* testsuite/gas/arm/arm-it-bad-3.d,
* testsuite/gas/arm/arm-it-bad.d,
* testsuite/gas/arm/arm3-bad.d,
* testsuite/gas/arm/arm7-bad.d,
* testsuite/gas/arm/armv1-bad.d,
* testsuite/gas/arm/armv1.d,
* testsuite/gas/arm/armv2-mp-bad.d,
* testsuite/gas/arm/armv8-2-fp16-scalar-bad.d,
* testsuite/gas/arm/armv8-2-fp16-simd-warning-thumb.d,
* testsuite/gas/arm/armv8-2-fp16-simd-warning.d,
* testsuite/gas/arm/armv8-a+rdma-warning.d,
* testsuite/gas/arm/armv8-a-bad.d,
* testsuite/gas/arm/armv8-a-it-bad.d,
* testsuite/gas/arm/armv8-r-bad.d,
* testsuite/gas/arm/armv8-r-it-bad.d,
* testsuite/gas/arm/armv8_2-a-fp16-illegal.d,
* testsuite/gas/arm/armv8_3-a-fp-bad.d,
* testsuite/gas/arm/armv8_3-a-simd-bad.d,
* testsuite/gas/arm/barrier-bad-thumb.d,
* testsuite/gas/arm/barrier-bad.d,
* testsuite/gas/arm/bl-local-v4t.d,
* testsuite/gas/arm/blx-bl-convert.d,
* testsuite/gas/arm/blx-local.d,
* testsuite/gas/arm/branch-reloc.d,
* testsuite/gas/arm/copro-arm_v2plus-arm_v1.d,
* testsuite/gas/arm/copro-arm_v5plus-arm_v4.d,
* testsuite/gas/arm/copro-arm_v5teplus-arm_v5.d,
* testsuite/gas/arm/copro-arm_v6plus-arm_v5te.d,
* testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-1.d,
* testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-2.d,
* testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-3.d,
* testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-4.d,
* testsuite/gas/arm/crc32-armv8-a-bad.d,
* testsuite/gas/arm/crc32-armv8-r-bad.d,
* testsuite/gas/arm/depr-swp.d,
* testsuite/gas/arm/dest-unpredictable.d,
* testsuite/gas/arm/dotprod-illegal.d,
* testsuite/gas/arm/dotprod-legacy-arch.d,
* testsuite/gas/arm/forbid-armv7-idiv-ext.d,
* testsuite/gas/arm/group-reloc-alu-encoding-bad.d,
* testsuite/gas/arm/group-reloc-alu-parsing-bad.d,
* testsuite/gas/arm/group-reloc-ldc-encoding-bad.d,
* testsuite/gas/arm/group-reloc-ldc-parsing-bad.d,
* testsuite/gas/arm/group-reloc-ldr-encoding-bad.d,
* testsuite/gas/arm/group-reloc-ldr-parsing-bad.d,
* testsuite/gas/arm/group-reloc-ldrs-encoding-bad.d,
* testsuite/gas/arm/group-reloc-ldrs-parsing-bad.d,
* testsuite/gas/arm/insn-error-a.d,
* testsuite/gas/arm/insn-error-t.d,
* testsuite/gas/arm/inst-po-2.d,
* testsuite/gas/arm/iwmmxt-bad.d,
* testsuite/gas/arm/iwmmxt-bad2.d,
* testsuite/gas/arm/ld-sp-warn-cortex-m3.d,
* testsuite/gas/arm/ld-sp-warn-cortex-m4.d,
* testsuite/gas/arm/ld-sp-warn-v7.d,
* testsuite/gas/arm/ld-sp-warn-v7a.d,
* testsuite/gas/arm/ld-sp-warn-v7em.d,
* testsuite/gas/arm/ld-sp-warn-v7m.d,
* testsuite/gas/arm/ld-sp-warn-v7r.d,
* testsuite/gas/arm/ld-sp-warn.d,
* testsuite/gas/arm/ldgesb-bad.d,
* testsuite/gas/arm/ldgesh-bad.d,
* testsuite/gas/arm/ldr-bad.d,
* testsuite/gas/arm/ldr-t-bad.d,
* testsuite/gas/arm/ldrd-unpredictable.d,
* testsuite/gas/arm/ldsgeb.d,
* testsuite/gas/arm/ldsgeh.d,
* testsuite/gas/arm/missing.d,
* testsuite/gas/arm/mrs-msr-arm-v7-a-bad.d,
* testsuite/gas/arm/mrs-msr-thumb-v7-m-bad.d,
* testsuite/gas/arm/msr-imm-bad.d,
* testsuite/gas/arm/msr-reg-bad.d,
* testsuite/gas/arm/mul-overlap.d,
* testsuite/gas/arm/neon-addressing-bad.d,
* testsuite/gas/arm/neon-cond-bad.d,
* testsuite/gas/arm/neon-ldst-align-bad.d,
* testsuite/gas/arm/neon-ldst-es-bad.d,
* testsuite/gas/arm/neon-suffix-bad.d,
* testsuite/gas/arm/neon-vmov-bad.d,
* testsuite/gas/arm/noarm.d,
* testsuite/gas/arm/pr18256.d,
* testsuite/gas/arm/pr18347.d,
* testsuite/gas/arm/pr20429.d,
* testsuite/gas/arm/pr22773.d,
* testsuite/gas/arm/r15-bad.d,
* testsuite/gas/arm/reloc-bad.d,
* testsuite/gas/arm/req.d,
* testsuite/gas/arm/shift-bad-pc.d,
* testsuite/gas/arm/shift-bad.d,
* testsuite/gas/arm/simd_by_scalar_low_regbank.d,
* testsuite/gas/arm/simd_by_scalar_low_regbank_thumb.d,
* testsuite/gas/arm/sp-pc-validations-bad-t-v8a.d,
* testsuite/gas/arm/sp-pc-validations-bad-t.d,
* testsuite/gas/arm/sp-pc-validations-bad.d,
* testsuite/gas/arm/sp-usage-thumb2-relax-on-v7.d,
* testsuite/gas/arm/srs-arm.d,
* testsuite/gas/arm/srs-t2.d,
* testsuite/gas/arm/strex-bad-t.d,
* testsuite/gas/arm/t16-bad.d,
* testsuite/gas/arm/thumb-b-bad.d,
* testsuite/gas/arm/thumb-w-bad.d,
* testsuite/gas/arm/thumb2_bad_reg.d,
* testsuite/gas/arm/thumb2_it_bad.d,
* testsuite/gas/arm/thumb2_it_bad_auto.d,
* testsuite/gas/arm/thumb2_ldmstm_bad.d,
* testsuite/gas/arm/thumb2_ldstd_unpredictable.d,
* testsuite/gas/arm/thumb2_mul-bad.d,
* testsuite/gas/arm/thumb2_str-bad.d,
* testsuite/gas/arm/thumb32.d,
* testsuite/gas/arm/udf-bad.d,
* testsuite/gas/arm/udf.d,
* testsuite/gas/arm/undefined.d,
* testsuite/gas/arm/undefined_coff.d,
* testsuite/gas/arm/vcmp-zero-bad.d,
* testsuite/gas/arm/vcvt-bad.d,
* testsuite/gas/arm/vfp-bad.d,
* testsuite/gas/arm/vfp-bad_t2.d,
* testsuite/gas/arm/vfpv3-d16-bad.d,
* testsuite/gas/arm/vldm-thumb-bad.d,
* testsuite/gas/arm/vldmw-arm-bad.d,
* testsuite/gas/arm/vldmw-thumb-bad.d,
* testsuite/gas/arm/vstr-arm-bad.d,
* testsuite/gas/arm/vstr-thumb-bad.d,
* testsuite/gas/arm/weakdef-2.d,
* testsuite/gas/avr/pr21621.d,
* testsuite/gas/elf/bad-bss.d,
* testsuite/gas/elf/bad-group.d,
* testsuite/gas/elf/bad-group.err,
* testsuite/gas/elf/bad-section-flag.d,
* testsuite/gas/elf/bad-section-flag.err,
* testsuite/gas/elf/bad-size.d,
* testsuite/gas/elf/bad-size.err,
* testsuite/gas/elf/common1.d,
* testsuite/gas/elf/common2.d,
* testsuite/gas/elf/common5a.d,
* testsuite/gas/elf/common5b.d,
* testsuite/gas/elf/common5c.d,
* testsuite/gas/elf/common5d.d,
* testsuite/gas/elf/dwarf2-10.d,
* testsuite/gas/elf/dwarf2-8.d,
* testsuite/gas/elf/dwarf2-9.d,
* testsuite/gas/elf/pr21661.d,
* testsuite/gas/elf/pseudo.d,
* testsuite/gas/elf/section13.d,
* testsuite/gas/i386/bad-size.d,
* testsuite/gas/i386/bundle-bad.d,
* testsuite/gas/i386/ilp32/x86-64-sse-check-warn.d,
* testsuite/gas/i386/intel-intel.d,
* testsuite/gas/i386/intel.d,
* testsuite/gas/i386/intelok.d,
* testsuite/gas/i386/mpx-add-bnd-prefix.d,
* testsuite/gas/i386/sse-check-warn.d,
* testsuite/gas/i386/string-ok.d,
* testsuite/gas/i386/vgather-check-warn.d,
* testsuite/gas/i386/x86-64-mpx-add-bnd-prefix.d,
* testsuite/gas/i386/x86-64-sse-check-warn.d,
* testsuite/gas/i386/x86-64-vgather-check-warn.d,
* testsuite/gas/mips/addiu-error.d,
* testsuite/gas/mips/branch-extern-3.d,
* testsuite/gas/mips/branch-extern-4.d,
* testsuite/gas/mips/branch-local-2.d,
* testsuite/gas/mips/branch-local-3.d,
* testsuite/gas/mips/branch-local-5.d,
* testsuite/gas/mips/branch-local-6.d,
* testsuite/gas/mips/branch-local-n32-2.d,
* testsuite/gas/mips/branch-local-n32-3.d,
* testsuite/gas/mips/branch-local-n32-5.d,
* testsuite/gas/mips/branch-local-n32-6.d,
* testsuite/gas/mips/branch-local-n64-2.d,
* testsuite/gas/mips/branch-local-n64-3.d,
* testsuite/gas/mips/branch-local-n64-5.d,
* testsuite/gas/mips/branch-local-n64-6.d,
* testsuite/gas/mips/branch-section-3.d,
* testsuite/gas/mips/branch-section-4.d,
* testsuite/gas/mips/branch-weak-3.d,
* testsuite/gas/mips/branch-weak-4.d,
* testsuite/gas/mips/break-error.d,
* testsuite/gas/mips/crc-err.d,
* testsuite/gas/mips/crc64-err.d,
* testsuite/gas/mips/ginv-err.d,
* testsuite/gas/mips/interaptiv-mr2@isa-override-1.d,
* testsuite/gas/mips/interaptiv-mr2@isa-override-2.d,
* testsuite/gas/mips/isa-override-2.d,
* testsuite/gas/mips/lui-1.d,
* testsuite/gas/mips/lui-2.d,
* testsuite/gas/mips/macro-warn-1-n32.d,
* testsuite/gas/mips/macro-warn-1.d,
* testsuite/gas/mips/macro-warn-2.d,
* testsuite/gas/mips/macro-warn-3.d,
* testsuite/gas/mips/macro-warn-4.d,
* testsuite/gas/mips/micromips-branch-delay.d,
* testsuite/gas/mips/micromips-branch-relax-insn32-pic.d,
* testsuite/gas/mips/micromips-branch-relax-insn32.d,
* testsuite/gas/mips/micromips-branch-relax-pic.d,
* testsuite/gas/mips/micromips-branch-relax.d,
* testsuite/gas/mips/micromips-compact.d,
* testsuite/gas/mips/micromips-insn32.d,
* testsuite/gas/mips/micromips-noinsn32.d,
* testsuite/gas/mips/micromips-size-1.d,
* testsuite/gas/mips/micromips-trap.d,
* testsuite/gas/mips/micromips-warn-branch-delay.d,
* testsuite/gas/mips/micromips.d,
* testsuite/gas/mips/micromips@addiu-error.d,
* testsuite/gas/mips/micromips@mips5-fp.d,
* testsuite/gas/mips/micromips@msa-relax.d,
* testsuite/gas/mips/micromips@relax-at.d,
* testsuite/gas/mips/micromips@relax-offset.d,
* testsuite/gas/mips/micromips@relax.d,
* testsuite/gas/mips/mips-gp32-fp64-pic.d,
* testsuite/gas/mips/mips-gp32-fp64.d,
* testsuite/gas/mips/mips-gp64-fp32-pic.d,
* testsuite/gas/mips/mips-gp64-fp32.d,
* testsuite/gas/mips/mips-gp64-fp64.d,
* testsuite/gas/mips/mips16-32@mips16-insn-e.d,
* testsuite/gas/mips/mips16-32@mips16-insn-t.d,
* testsuite/gas/mips/mips16-32@mips16-macro-e.d,
* testsuite/gas/mips/mips16-32@mips16-macro-t.d,
* testsuite/gas/mips/mips16-32@mips16-macro.d,
* testsuite/gas/mips/mips16-64@mips16-insn-e.d,
* testsuite/gas/mips/mips16-64@mips16-insn-t.d,
* testsuite/gas/mips/mips16-absolute-reloc-2.d,
* testsuite/gas/mips/mips16-absolute-reloc-3.d,
* testsuite/gas/mips/mips16-branch-addend-5.d,
* testsuite/gas/mips/mips16-branch-unextended-1.d,
* testsuite/gas/mips/mips16-branch-unextended-2.d,
* testsuite/gas/mips/mips16-insn-e.d,
* testsuite/gas/mips/mips16-insn-t.d,
* testsuite/gas/mips/mips16-jal-t.d,
* testsuite/gas/mips/mips16-macro-e.d,
* testsuite/gas/mips/mips16-macro-t.d,
* testsuite/gas/mips/mips16-pcrel-2.d,
* testsuite/gas/mips/mips16-pcrel-3.d,
* testsuite/gas/mips/mips16-pcrel-4.d,
* testsuite/gas/mips/mips16-pcrel-5.d,
* testsuite/gas/mips/mips16-pcrel-absolute-n64-4.d,
* testsuite/gas/mips/mips16-pcrel-absolute-n64-6.d,
* testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-4.d,
* testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-6.d,
* testsuite/gas/mips/mips16-pcrel-addend-n64-8.d,
* testsuite/gas/mips/mips16-pcrel-addend-n64-9.d,
* testsuite/gas/mips/mips16-pcrel-addend-pic-8.d,
* testsuite/gas/mips/mips16-pcrel-addend-pic-9.d,
* testsuite/gas/mips/mips16-pcrel-delay-0.d,
* testsuite/gas/mips/mips16-pcrel-delay-1.d,
* testsuite/gas/mips/mips16-pcrel-n64-0.d,
* testsuite/gas/mips/mips16-pcrel-n64-1.d,
* testsuite/gas/mips/mips16-pcrel-pic-0.d,
* testsuite/gas/mips/mips16-pcrel-pic-1.d,
* testsuite/gas/mips/mips16-reg-error.d,
* testsuite/gas/mips/mips16-relax-unextended-1.d,
* testsuite/gas/mips/mips16-relax-unextended-2.d,
* testsuite/gas/mips/mips16-reloc-error.d,
* testsuite/gas/mips/mips16-sdrasp.d,
* testsuite/gas/mips/mips16@addiu-error.d,
* testsuite/gas/mips/mips16e-32@mips16-insn-e.d,
* testsuite/gas/mips/mips16e-32@mips16-insn-t.d,
* testsuite/gas/mips/mips16e-32@mips16-macro-e.d,
* testsuite/gas/mips/mips16e-32@mips16-macro-t.d,
* testsuite/gas/mips/mips16e-32@mips16-macro.d,
* testsuite/gas/mips/mips16e-32@mips16e-64.d,
* testsuite/gas/mips/mips16e2-32@mips16-insn-e.d,
* testsuite/gas/mips/mips16e2-32@mips16-insn-t.d,
* testsuite/gas/mips/mips16e2-32@mips16-macro-e.d,
* testsuite/gas/mips/mips16e2-32@mips16-macro-t.d,
* testsuite/gas/mips/mips16e2-32@mips16-macro.d,
* testsuite/gas/mips/mips16e2-32@mips16e-64.d,
* testsuite/gas/mips/mips16e2-copy-err.d,
* testsuite/gas/mips/mips16e2-imm-error.d,
* testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-insn-e.d,
* testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-insn-t.d,
* testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro-e.d,
* testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro-t.d,
* testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro.d,
* testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-sub.d,
* testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e-64-sub.d,
* testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e-64.d,
* testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e-sub.d,
* testsuite/gas/mips/mips16e2-mt-err.d,
* testsuite/gas/mips/mips16e2-reloc-error.d,
* testsuite/gas/mips/mips16e2@lui-2.d,
* testsuite/gas/mips/mips16e2@mips16-pcrel-2.d,
* testsuite/gas/mips/mips16e2@mips16-pcrel-delay-0.d,
* testsuite/gas/mips/mips16e2@mips16-pcrel-delay-1.d,
* testsuite/gas/mips/mips1@isa-override-2.d,
* testsuite/gas/mips/mips1@relax-offset.d,
* testsuite/gas/mips/mips2@isa-override-2.d,
* testsuite/gas/mips/mips32-mt.d,
* testsuite/gas/mips/mips32@isa-override-2.d,
* testsuite/gas/mips/mips32r2@isa-override-2.d,
* testsuite/gas/mips/mips32r3@isa-override-2.d,
* testsuite/gas/mips/mips32r5@isa-override-2.d,
* testsuite/gas/mips/mips32r6@isa-override-2.d,
* testsuite/gas/mips/mips5-fp.d,
* testsuite/gas/mips/mips64-mips3d-incl.d,
* testsuite/gas/mips/mips64-mips3d.d,
* testsuite/gas/mips/mipsr6@mips5-fp.d,
* testsuite/gas/mips/msa-relax.d,
* testsuite/gas/mips/octeon3@isa-override-1.d,
* testsuite/gas/mips/octeon3@isa-override-2.d,
* testsuite/gas/mips/option-pic-relax-2.d,
* testsuite/gas/mips/option-pic-relax-3.d,
* testsuite/gas/mips/option-pic-relax-4.d,
* testsuite/gas/mips/option-pic-relax-5.d,
* testsuite/gas/mips/org-1.d,
* testsuite/gas/mips/org-10.d,
* testsuite/gas/mips/org-4.d,
* testsuite/gas/mips/org-5.d,
* testsuite/gas/mips/org-6.d,
* testsuite/gas/mips/r3000@isa-override-2.d,
* testsuite/gas/mips/r3000@relax-offset.d,
* testsuite/gas/mips/r3900@isa-override-2.d,
* testsuite/gas/mips/r3900@relax-offset.d,
* testsuite/gas/mips/reginfo-2-n32.d,
* testsuite/gas/mips/reginfo-2.d,
* testsuite/gas/mips/relax-at.d,
* testsuite/gas/mips/relax-offset.d,
* testsuite/gas/mips/relax-swap1-mips1.d,
* testsuite/gas/mips/relax-swap1-mips2.d,
* testsuite/gas/mips/relax-swap2.d,
* testsuite/gas/mips/relax.d,
* testsuite/gas/mips/save-err.d,
* testsuite/gas/mips/set-arch.d,
* testsuite/gas/mips/xpa-err.d,
* testsuite/gas/mips/xpa-virt-err.d,
* testsuite/gas/msp430/bad.d,
* testsuite/gas/msp430/errata_warns.d,
* testsuite/gas/msp430/pr22133.d,
* testsuite/gas/ppc/lsp-checks.d,
* testsuite/gas/ppc/misalign.d,
* testsuite/gas/ppc/spe2-checks.d,
* testsuite/gas/riscv/bad-csr.d,
* testsuite/gas/riscv/c-addi16sp-fail.d,
* testsuite/gas/riscv/c-addi4spn-fail.d,
* testsuite/gas/riscv/c-fld-fsd-fail.d,
* testsuite/gas/riscv/c-lui-fail.d,
* testsuite/gas/riscv/c-nonzero-imm.d,
* testsuite/gas/riscv/c-nonzero-reg.d,
* testsuite/gas/riscv/fence-fail.d,
* testsuite/gas/riscv/lla64-fail.d,
* testsuite/gas/riscv/rouding-fail.d,
* testsuite/gas/sh/pcrel-hms.d,
* testsuite/gas/sh/pcrel.d,
* testsuite/gas/sparc/dcti-couples-v8.d,
* testsuite/gas/sparc/dcti-couples-v9c.d,
* testsuite/gas/tic6x/arch-invalid-1.d,
* testsuite/gas/tic6x/arch-invalid-2.d,
* testsuite/gas/tic6x/dir-junk.d,
* testsuite/gas/tic6x/insns-bad-1.d,
* testsuite/gas/tic6x/insns-bad-2.d,
* testsuite/gas/tic6x/parallel-bad-1.d,
* testsuite/gas/tic6x/parallel-bad-2.d,
* testsuite/gas/tic6x/parallel-bad-3.d,
* testsuite/gas/tic6x/parallel-bad-4.d,
* testsuite/gas/tic6x/predicate-bad-1.d,
* testsuite/gas/tic6x/predicate-bad-2.d,
* testsuite/gas/tic6x/predicate-bad-3.d,
* testsuite/gas/tic6x/reloc-bad-1.d,
* testsuite/gas/tic6x/reloc-bad-2.d,
* testsuite/gas/tic6x/reloc-bad-3.d,
* testsuite/gas/tic6x/reloc-bad-4.d,
* testsuite/gas/tic6x/reloc-bad-5.d,
* testsuite/gas/tic6x/reloc-bad-6.d,
* testsuite/gas/tic6x/resource-func-unit-1.d,
* testsuite/gas/tic6x/resource-func-unit-2.d,
* testsuite/gas/tic6x/sploop-bad-1.d,
* testsuite/gas/tic6x/sploop-bad-2.d,
* testsuite/gas/tic6x/sploop-bad-3.d,
* testsuite/gas/tic6x/sploop-bad-4.d,
* testsuite/gas/tic6x/sploop-bad-5.d,
* testsuite/gas/tic6x/sploop-bad-6.d,
* testsuite/gas/tic6x/sploop-bad-7.d,
* testsuite/gas/tic6x/unwind-bad-1.d,
* testsuite/gas/tic6x/unwind-bad-2.d,
* testsuite/lib/gas-defs.exp (run_dump_tests): Replace stderr
and error-output with warning_output and error_output.
(slurp_options): Accept underscore rather than dash.
commit b47b60aad847ba86b7fa7cd77e18ee8af7418f09
Author: Alan Modra <amodra@gmail.com>
Date: Thu Sep 13 15:44:00 2018 +0930
gas run_dump_test rename not-target and not-skip
Use notarget and noskip, like the ld testsuite.
* testsuite/gas/aarch64/codealign.d,
* testsuite/gas/aarch64/litpool.d,
* testsuite/gas/aarch64/mapmisc.d,
* testsuite/gas/aarch64/mapping.d,
* testsuite/gas/aarch64/mapping2.d,
* testsuite/gas/aarch64/mapping3.d,
* testsuite/gas/aarch64/mapping4.d,
* testsuite/gas/all/align.d,
* testsuite/gas/all/fill-1.d,
* testsuite/gas/all/incbin.d,
* testsuite/gas/all/redef2.d,
* testsuite/gas/all/redef3.d,
* testsuite/gas/all/relax.d,
* testsuite/gas/all/sleb128-2.d,
* testsuite/gas/all/sleb128-4.d,
* testsuite/gas/all/sleb128-5.d,
* testsuite/gas/all/sleb128-7.d,
* testsuite/gas/all/sleb128-9.d,
* testsuite/gas/all/weakref1.d,
* testsuite/gas/all/weakref1g.d,
* testsuite/gas/all/weakref1l.d,
* testsuite/gas/all/weakref1u.d,
* testsuite/gas/all/weakref1w.d,
* testsuite/gas/arm/abs12.d,
* testsuite/gas/arm/arch4t.d,
* testsuite/gas/arm/arch7.d,
* testsuite/gas/arm/arch7a-mp.d,
* testsuite/gas/arm/arch7em.d,
* testsuite/gas/arm/archv8m-main-dsp-5.d,
* testsuite/gas/arm/armv8a-automatic-hlt.d,
* testsuite/gas/arm/armv8a-automatic-lda.d,
* testsuite/gas/arm/attr-syntax.d,
* testsuite/gas/arm/automatic-bw.d,
* testsuite/gas/arm/automatic-cbz.d,
* testsuite/gas/arm/automatic-clrex.d,
* testsuite/gas/arm/automatic-lda.d,
* testsuite/gas/arm/automatic-ldaex.d,
* testsuite/gas/arm/automatic-ldaexb.d,
* testsuite/gas/arm/automatic-ldrex.d,
* testsuite/gas/arm/automatic-ldrexd.d,
* testsuite/gas/arm/automatic-movw.d,
* testsuite/gas/arm/automatic-sdiv.d,
* testsuite/gas/arm/automatic-strexb.d,
* testsuite/gas/arm/barrier-thumb.d,
* testsuite/gas/arm/barrier.d,
* testsuite/gas/arm/bignum1.d,
* testsuite/gas/arm/blx-bad.d,
* testsuite/gas/arm/blx-local.s,
* testsuite/gas/arm/crc32-armv8-a-bad.d,
* testsuite/gas/arm/crc32-armv8-a.d,
* testsuite/gas/arm/crc32-armv8-r-bad.d,
* testsuite/gas/arm/crc32-armv8-r.d,
* testsuite/gas/arm/eabi_attr_1.d,
* testsuite/gas/arm/fp-save.d,
* testsuite/gas/arm/local_function.d,
* testsuite/gas/arm/local_label_coff.d,
* testsuite/gas/arm/local_label_wince.d,
* testsuite/gas/arm/mapping.d,
* testsuite/gas/arm/mapping2.d,
* testsuite/gas/arm/mapping3.d,
* testsuite/gas/arm/mapping4.d,
* testsuite/gas/arm/mapshort-elf.d,
* testsuite/gas/arm/mask_1-armv8-a.d,
* testsuite/gas/arm/mask_1-armv8-r.d,
* testsuite/gas/arm/mrs-msr-thumb-v6t2.d,
* testsuite/gas/arm/mrs-msr-thumb-v7-m.d,
* testsuite/gas/arm/mrs-msr-thumb-v7e-m.d,
* testsuite/gas/arm/nomapping.d,
* testsuite/gas/arm/pic.d,
* testsuite/gas/arm/pic_vxworks.d,
* testsuite/gas/arm/plt-1.d,
* testsuite/gas/arm/reloc-bad.d,
* testsuite/gas/arm/reloc-fdpic.d,
* testsuite/gas/arm/t2-branch-global.d,
* testsuite/gas/arm/thumb.d,
* testsuite/gas/arm/thumb2_ldr_immediate_armv6.d,
* testsuite/gas/arm/thumb2_ldr_immediate_highregs_armv6t2.d,
* testsuite/gas/arm/thumb2_pool.d,
* testsuite/gas/arm/thumb2_vpool.d,
* testsuite/gas/arm/thumb2_vpool_be.d,
* testsuite/gas/arm/thumb32.d,
* testsuite/gas/arm/thumbver.d,
* testsuite/gas/arm/tls.d,
* testsuite/gas/arm/tls_vxworks.d,
* testsuite/gas/arm/undefined_coff.d,
* testsuite/gas/arm/unwind.d,
* testsuite/gas/arm/unwind_vxworks.d,
* testsuite/gas/arm/v4bx.d,
* testsuite/gas/arm/vfma1.d,
* testsuite/gas/arm/vldm-arm.d,
* testsuite/gas/arm/weakdef-1.d,
* testsuite/gas/arm/weakdef-2.d,
* testsuite/gas/arm/wince.d,
* testsuite/gas/arm/wince_inst.d,
* testsuite/gas/elf/bignums.d,
* testsuite/gas/elf/common5a.d,
* testsuite/gas/elf/common5b.d,
* testsuite/gas/elf/common5c.d,
* testsuite/gas/elf/common5d.d,
* testsuite/gas/elf/dwarf2-1.d,
* testsuite/gas/elf/dwarf2-10.d,
* testsuite/gas/elf/dwarf2-11.d,
* testsuite/gas/elf/dwarf2-12.d,
* testsuite/gas/elf/dwarf2-13.d,
* testsuite/gas/elf/dwarf2-14.d,
* testsuite/gas/elf/dwarf2-15.d,
* testsuite/gas/elf/dwarf2-16.d,
* testsuite/gas/elf/dwarf2-17.d,
* testsuite/gas/elf/dwarf2-18.d,
* testsuite/gas/elf/dwarf2-2.d,
* testsuite/gas/elf/dwarf2-3.d,
* testsuite/gas/elf/dwarf2-4.d,
* testsuite/gas/elf/dwarf2-5.d,
* testsuite/gas/elf/dwarf2-6.d,
* testsuite/gas/elf/dwarf2-7.d,
* testsuite/gas/elf/dwarf2-8.d,
* testsuite/gas/elf/dwarf2-9.d,
* testsuite/gas/elf/group0c.d,
* testsuite/gas/elf/group1a.d,
* testsuite/gas/elf/group2.d,
* testsuite/gas/elf/groupautoa.d,
* testsuite/gas/elf/ifunc-1.d,
* testsuite/gas/elf/section11.d,
* testsuite/gas/elf/section4.d,
* testsuite/gas/elf/section7.d,
* testsuite/gas/elf/syms.d,
* testsuite/gas/elf/symver.d,
* testsuite/gas/i386/iamcu-1.d,
* testsuite/gas/i386/iamcu-2.d,
* testsuite/gas/i386/iamcu-3.d,
* testsuite/gas/i386/iamcu-4.d,
* testsuite/gas/i386/iamcu-5.d,
* testsuite/gas/i386/ilp32/rex.d,
* testsuite/gas/i386/k1om.d,
* testsuite/gas/i386/l1om.d,
* testsuite/gas/i386/rex.d,
* testsuite/gas/mach-o/sections-3.d,
* testsuite/gas/macros/irp.d,
* testsuite/gas/macros/repeat.d,
* testsuite/gas/macros/rept.d,
* testsuite/gas/macros/semi.d,
* testsuite/gas/macros/test2.d,
* testsuite/gas/macros/test3.d,
* testsuite/gas/macros/vararg.d,
* testsuite/gas/mips/jal-svr4pic-local.d,
* testsuite/gas/mips/micromips@jal-svr4pic-local.d,
* testsuite/gas/mips/mips1@jal-svr4pic-local.d,
* testsuite/gas/mips/r3000@jal-svr4pic-local.d,
* testsuite/gas/ppc/machine.d,
* testsuite/lib/gas-defs.exp (run_dump_test): Replace not-target
and not-skip with notarget and noskip.
commit e8d88459e6f60c13c83c3b640ccc495402e36eaf
Author: Alan Modra <amodra@gmail.com>
Date: Thu Sep 13 15:36:14 2018 +0930
binutils run_dump_test rename not-target and not-skip
Use notarget and noskip, like the ld testsuite.
* testsuite/binutils-all/copy-2.d,
* testsuite/binutils-all/copy-3.d,
* testsuite/binutils-all/copy-4.d,
* testsuite/binutils-all/elfedit-1.d,
* testsuite/binutils-all/note-1.d,
* testsuite/binutils-all/note-2-64.d,
* testsuite/binutils-all/strip-11.d,
* testsuite/binutils-all/strip-13.d,
* testsuite/binutils-all/strip-14.d,
* testsuite/binutils-all/testranges.d,
* testsuite/binutils-all/x86-64/pr23494a-x32.d,
* testsuite/binutils-all/x86-64/pr23494a.d,
* testsuite/binutils-all/x86-64/pr23494b-x32.d,
* testsuite/binutils-all/x86-64/pr23494b.d,
* testsuite/binutils-all/x86-64/pr23494c-x32.d,
* testsuite/binutils-all/x86-64/pr23494c.d,
* testsuite/binutils-all/x86-64/pr23494d-x32.d,
* testsuite/binutils-all/x86-64/pr23494d.d,
* testsuite/binutils-all/x86-64/pr23494e-x32.d,
* testsuite/binutils-all/x86-64/pr23494e.d,
* testsuite/lib/utils-lib.exp (run_dump_test): Replace not-target
and not-skip with notarget and noskip.
commit 04ade4bc669b28b3994197d154cb392515c758d4
Author: Alan Modra <amodra@gmail.com>
Date: Thu Sep 13 14:43:34 2018 +0930
Remove run_dump_test support for objcopy as a dump program
We have three copies of run_dump_test in the testsuite. This is a first
step towards consolidating them.
A few tests use objcopy to convert to verilog or srec output, then
check that output is as expected. Those tests can just as easily use
objdump, keeping the set of dump programs (addr2line, nm, objdump,
readelf, size) separate from utilities under test. That in turn makes
auto-detecting the dump program possible in more places.
binutils/
* testsuite/binutils-all/group-7a.d,
* testsuite/binutils-all/group-7b.d,
* testsuite/binutils-all/group-7c.d,
* testsuite/binutils-all/symbols-1.d,
* testsuite/binutils-all/symbols-2.d,
* testsuite/binutils-all/symbols-3.d,
* testsuite/binutils-all/symbols-4.d: Remove DUMPPROG.
gas/
* testsuite/gas/mri/char.d: Don't objcopy to srec, objdump instead.
* testsuite/gas/mri/float.d: Likewise.
* testsuite/lib/gas-defs.exp (run_dump_test): Remove support
for objcopy as a dump tool.
ld/
* testsuite/ld-elf/interleave-0.d,
* testsuite/ld-elf/interleave-4.d: Don't objcopy to srec,
objdump instead.
* testsuite/ld-gc/all-debug-sections.d,
* testsuite/ld-scripts/provide-4.d,
* testsuite/ld-scripts/provide-5.d,
* testsuite/ld-scripts/provide-6.d,
* testsuite/ld-scripts/provide-7.d,
* testsuite/ld-scripts/provide-8.d,
* testsuite/ld-scripts/segment-start.d: Remove PROG, specify
nm instead.
* testsuite/lib/ld-lib.exp (run_dump_test): Remove support
for objcopy as a dump tool.
commit a3a6aef4090ca13d065d116f5d77f4e3f7bcbf9a
Author: Tom Tromey <tom@tromey.com>
Date: Fri Sep 7 19:28:39 2018 -0600
Fix possible exception leak in python.c
In the Python code, gdb exceptions may not leak into the Python core.
execute_gdb_command was calling bpstat_do_actions outside of a
TRY/CATCH; which seemed risky. I don't have a test case for this, but
if bpstat_do_actions could ever throw, it could crash gdb.
This patch introduces a new scope in order to preserve the current
semantics, so it is looks a bit bigger than it really is.
Tested on x86-64 Fedora 28.
gdb/ChangeLog
2018-09-07 Tom Tromey <tom@tromey.com>
* python/python.c (execute_gdb_command): Call bpstat_do_actions
inside the TRY.
commit f70e088ff4ebf79a4bea45e84a8b042706e6e083
Author: Sandra Loosemore <sandra@codesourcery.com>
Date: Fri Sep 14 20:09:46 2018 -0700
Provide type_align gdbarch function for nios2.
2018-09-14 Sandra Loosemore <sandra@codesourcery.com>
gdb/
* nios2-tdep.c (nios2_type_align): New.
(nios2_gdb_arch_init): Install type_align hook.
commit 6c414b69235baf00bd8846cef4d31d8b42436c16
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Sep 15 00:00:52 2018 +0000
Automatic date update in version.in
commit 2fabdf3381dfc4bc89f6339c3db3e4bfe7ca8b14
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Mon Sep 10 13:50:34 2018 +0100
gdb: Don't leak memory with TYPE_ALLOC / TYPE_ZALLOC
This patch started as an observation from valgrind that GDB appeared
to be loosing track of some memory associated with types. An example
valgrind stack would be:
24 bytes in 1 blocks are possibly lost in loss record 419 of 5,361
at 0x4C2EA1E: calloc (vg_replace_malloc.c:711)
by 0x623D26: xcalloc (common-utils.c:85)
by 0x623D65: xzalloc(unsigned long) (common-utils.c:95)
by 0x72A066: make_function_type(type*, type**) (gdbtypes.c:510)
by 0x72A098: lookup_function_type(type*) (gdbtypes.c:521)
by 0x73635D: gdbtypes_post_init(gdbarch*) (gdbtypes.c:5439)
by 0x727590: gdbarch_data(gdbarch*, gdbarch_data*) (gdbarch.c:5230)
by 0x735B99: builtin_type(gdbarch*) (gdbtypes.c:5313)
by 0x514D95: elf_rel_plt_read(minimal_symbol_reader&, objfile*, bfd_symbol**) (elfread.c:542)
by 0x51662F: elf_read_minimal_symbols(objfile*, int, elfinfo const*) (elfread.c:1121)
by 0x5168A5: elf_symfile_read(objfile*, enum_flags<symfile_add_flag>) (elfread.c:1207)
by 0x8520F5: read_symbols(objfile*, enum_flags<symfile_add_flag>) (symfile.c:794)
When we look in make_function_type we find a call to TYPE_ZALLOC
(inside the INIT_FUNC_SPECIFIC macro). It is this call to TYPE_ZALLOC
that is allocating memory with xcalloc, that is then getting lost.
The problem is tht calling TYPE_ALLOC or TYPE_ZALLOC currently
allocates memory from either the objfile obstack or by using malloc.
The problem with this is that types are allocated either on the
objfile obstack, or on the gdbarch obstack.
As a result, if we discard a type associated with an objfile then
auxiliary data allocated with TYPE_(Z)ALLOC will be correctly
discarded. But, if we were ever to discard a gdbarch then any
auxiliary type data would be leaked. Right now there are very few
places in GDB where a gdbarch is ever discarded, but it shouldn't hurt
to close down these bugs as we spot them.
This commit ensures that auxiliary type data is allocated from the
same obstack as the type itself, which should reduce leaked memory.
The one problem case that I found with this change was in eval.c,
where in one place we allocate a local type structure, and then used
TYPE_ZALLOC to allocate some space for the type. This local type is
neither object file owned, nor gdbarch owned, and so the updated
TYPE_ALLOC code is unable to find an objstack to allocate space on.
My proposed solution for this issue is that the space should be
allocated with a direct call to xzalloc. We could extend TYPE_ALLOC
to check for type->gdbarch being null, and then fall back to a direct
call to xzalloc, however, I think that making this rare case of a
local type require special handling is not a bad thing, this serves to
highlight that clearing up the memory will require special handling
too.
This special case of a local type is interesting as the types owner
field (contained within the main_type) is completely null. While
reflecting on this I looked at how types use the get_type_arch
function. It seems clear that, based on how this is used, it is never
intended that null will be returned from this function. This only
goes to reinforce, how locally alloctaed types, with no owner, are
both special, and need to be handled carefully. To help spot errors
earlier, I added an assert into get_type_arch that the returned arch
is not null.
Inside gdbarch.c I found a few other places where auxiliary type data
was being allocated directly on the heap rather than on the types
obstack. I have fixed these to call TYPE_ALLOC now.
Finally, it is worth noting that as we don't clean up our gdbarch
objects yet, then this will not make much of an impact on the amount
of memory reported as lost at program termination time. Memory
allocated for auxiliary type information is still not freed, however,
it is now on the correct obstack. If we do ever start freeing our
gdbarch structures then the associated type data will be cleaned up
correctly.
Tested on X86-64 GNU/Linux with no regressions.
gdb/ChangeLog:
* eval.c (fake_method::fake_method): Call xzalloc directly for a
type that is neither object file owned, nor gdbarch owned.
* gdbtypes.c (get_type_gdbarch): Add an assert that returned
gdbarch is non-NULL.
(alloc_type_instance): Allocate non-objfile owned types on the
gdbarch obstack.
(copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
using TYPE_ALLOC to ensure memory is allocated on the correct
obstack.
* gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
obstack, or the gdbarch obstack.
(TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
commit 982d0151e9ada98e2b5577f9af797b396e48f815
Author: Maciej W. Rozycki <macro@mips.com>
Date: Fri Sep 14 20:22:57 2018 +0100
PR ld/21375: MIPS: Add test cases for undefined weaks resolving to zero
Define a new procedure, `run_mips_undefweak_test', and use it to iterate
over several scenarios involving undefined weak symbols resolving to
zero, verifying expected regular MIPS, MIPS16 and microMIPS code, GOT
and dynamic symbol table generation, as well as the setting of the
EI_ABIVERSION field in the ELF file header. In particular ensure that
symbol versioning works and that `__gnu_absolute_zero' gets assigned a
version (any will do) even if it has not been listed for exportation in
a linker version script.
ld/
PR ld/21375
* testsuite/ld-mips-elf/pr21375-abi.hd: New test.
* testsuite/ld-mips-elf/pr21375-noabi.hd: New test.
* testsuite/ld-mips-elf/pr21375.dd: New test.
* testsuite/ld-mips-elf/pr21375h.dd: New test.
* testsuite/ld-mips-elf/pr21375p.dd: New test.
* testsuite/ld-mips-elf/pr21375ph.dd: New test.
* testsuite/ld-mips-elf/pr21375s.dd: New test.
* testsuite/ld-mips-elf/pr21375s-n32.dd: New test.
* testsuite/ld-mips-elf/pr21375s-n64.dd: New test.
* testsuite/ld-mips-elf/pr21375sh.dd: New test.
* testsuite/ld-mips-elf/pr21375sh-n32.dd: New test.
* testsuite/ld-mips-elf/pr21375sh-n64.dd: New test.
* testsuite/ld-mips-elf/pr21375shg.dd: New test.
* testsuite/ld-mips-elf/pr21375sx.dd: New test.
* testsuite/ld-mips-elf/pr21375sxh.dd: New test.
* testsuite/ld-mips-elf/pr21375sm16.dd: New test.
* testsuite/ld-mips-elf/pr21375sm16h.dd: New test.
* testsuite/ld-mips-elf/pr21375su.dd: New test.
* testsuite/ld-mips-elf/pr21375su-n32.dd: New test.
* testsuite/ld-mips-elf/pr21375su-n64.dd: New test.
* testsuite/ld-mips-elf/pr21375suh.dd: New test.
* testsuite/ld-mips-elf/pr21375suh-n32.dd: New test.
* testsuite/ld-mips-elf/pr21375suh-n64.dd: New test.
* testsuite/ld-mips-elf/pr21375sux.dd: New test.
* testsuite/ld-mips-elf/pr21375suxh.dd: New test.
* testsuite/ld-mips-elf/pr21375.gd: New test.
* testsuite/ld-mips-elf/pr21375h.gd: New test.
* testsuite/ld-mips-elf/pr21375p.gd: New test.
* testsuite/ld-mips-elf/pr21375ph.gd: New test.
* testsuite/ld-mips-elf/pr21375s.gd: New test.
* testsuite/ld-mips-elf/pr21375s-n32.gd: New test.
* testsuite/ld-mips-elf/pr21375s-n64.gd: New test.
* testsuite/ld-mips-elf/pr21375sh.gd: New test.
* testsuite/ld-mips-elf/pr21375sh-n32.gd: New test.
* testsuite/ld-mips-elf/pr21375sh-n64.gd: New test.
* testsuite/ld-mips-elf/pr21375shg.gd: New test.
* testsuite/ld-mips-elf/pr21375shl.gd: New test.
* testsuite/ld-mips-elf/pr21375shv.gd: New test.
* testsuite/ld-mips-elf/pr21375sx.gd: New test.
* testsuite/ld-mips-elf/pr21375sxh.gd: New test.
* testsuite/ld-mips-elf/pr21375.sd: New test.
* testsuite/ld-mips-elf/pr21375-irix.sd: New test.
* testsuite/ld-mips-elf/pr21375h.sd: New test.
* testsuite/ld-mips-elf/pr21375h-irix.sd: New test.
* testsuite/ld-mips-elf/pr21375p.sd: New test.
* testsuite/ld-mips-elf/pr21375p-irix.sd: New test.
* testsuite/ld-mips-elf/pr21375ph.sd: New test.
* testsuite/ld-mips-elf/pr21375ph-irix.sd: New test.
* testsuite/ld-mips-elf/pr21375s.sd: New test.
* testsuite/ld-mips-elf/pr21375s-irix.sd: New test.
* testsuite/ld-mips-elf/pr21375s-n32.sd: New test.
* testsuite/ld-mips-elf/pr21375s-n32-irix.sd: New test.
* testsuite/ld-mips-elf/pr21375s-n64.sd: New test.
* testsuite/ld-mips-elf/pr21375s-n64-irix.sd: New test.
* testsuite/ld-mips-elf/pr21375sh.sd: New test.
* testsuite/ld-mips-elf/pr21375sh-irix.sd: New test.
* testsuite/ld-mips-elf/pr21375sh-n32.sd: New test.
* testsuite/ld-mips-elf/pr21375sh-n32-irix.sd: New test.
* testsuite/ld-mips-elf/pr21375sh-n64.sd: New test.
* testsuite/ld-mips-elf/pr21375sh-n64-irix.sd: New test.
* testsuite/ld-mips-elf/pr21375shg.sd: New test.
* testsuite/ld-mips-elf/pr21375shg-irix.sd: New test.
* testsuite/ld-mips-elf/pr21375shl.sd: New test.
* testsuite/ld-mips-elf/pr21375shl-irix.sd: New test.
* testsuite/ld-mips-elf/pr21375shv.sd: New test.
* testsuite/ld-mips-elf/pr21375shv-irix.sd: New test.
* testsuite/ld-mips-elf/pr21375sx.sd: New test.
* testsuite/ld-mips-elf/pr21375sx-irix.sd: New test.
* testsuite/ld-mips-elf/pr21375sxh.sd: New test.
* testsuite/ld-mips-elf/pr21375sxh-irix.sd: New test.
* testsuite/ld-mips-elf/pr21375.ld: New test linker script.
* testsuite/ld-mips-elf/pr21375-xgot.ld: New test linker script.
* testsuite/ld-mips-elf/pr21375.ver: New test version script.
* testsuite/ld-mips-elf/pr21375v.ver: New test version script.
* testsuite/ld-mips-elf/pr21375.s: New test source.
* testsuite/ld-mips-elf/pr21375-mips16.s: New test source.
* testsuite/ld-mips-elf/pr21375-n32.s: New test source.
* testsuite/ld-mips-elf/pr21375-n64.s: New test source.
* testsuite/ld-mips-elf/pr21375-xgot.s: New test source.
* testsuite/ld-mips-elf/mips-elf.exp (run_mips_undefweak_test):
New procedure; run the new tests.
commit 47275900adcda29161e2853179c1fbde4da4c86a
Author: Maciej W. Rozycki <macro@mips.com>
Date: Fri Sep 14 20:22:56 2018 +0100
PR ld/21375: MIPS: Fix non-zero run-time value for undefined weaks
We have an issue in the MIPS backend, with the handling of undefined
hidden and internal weak symbols. References to such symbols are
supposed to resolve to 0 according to the ELF gABI[1]:
"Unresolved weak symbols have a zero value."
and the 64-bit MIPS psABI[2]:
"If a symbol with one of these [hidden or internal] attributes has no
definition within the executable/DSO being linked, then it must be
resolved to allocated space if common, resolved to zero if weak, or an
error reported otherwise."
however if a GOT relocation is used, then a local GOT entry is created
and used to satisfy the reference. Such an entry is then (in DSO and
PIE binaries) subject to the usual load-time relocation, which means a
non-zero value will be returned if the base address is non-zero. This
will defeat the usual run-time sequence like:
void a (void) __attribute__ ((visibility ("hidden"), weak));
void
x (void)
{
if (a)
a ();
}
This can be reproduced with this simple code:
$ cat libtest.c
extern int a __attribute__ ((visibility ("hidden"), weak));
int *
x (void)
{
return &a;
}
$ cat test.c
int *x (void);
int
main (void)
{
printf ("a: %p\n", x ());
return 0;
}
$ gcc -shared -fPIC -o libtest.so libtest.c
$ gcc -o test test.c -Wl,-rpath,$(pwd) libtest.so
$ ./test
a: 0x77184000
$
The usual approach targets take is making all the steps required to
assign a GOT entry for the symbol referred, and then leave its contents
at zero with no dynamic relocation attached, therefore ensuring that the
value does not change at load time. However this is not going to work
with the implicitly relocated GOT the MIPS psABI specifies[3]:
"The dynamic linker relocates the global offset table by first adding
the difference between the base where the shared object is loaded and
the value of the dynamic tag DT_MIPS_BASE_ADDRESS to all local global
offset table entries."
and we cannot therefore use the local GOT part.
And we cannot offhand use the global part either, as the symbol would
then have to be exported and possibly wrongly preempt symbols in other
modules involved in the dynamic load, because as per the ELF gABI[1] we
are not allowed to enter a hidden or internal symbol into the dynamic
symbol table (and then use its associated GOT entry):
"A hidden symbol contained in a relocatable object must be either
removed or converted to STB_LOCAL binding by the link-editor when the
relocatable object is included in an executable file or shared object."
and:
"An internal symbol contained in a relocatable object must be either
removed or converted to STB_LOCAL binding by the link-editor when the
relocatable object is included in an executable file or shared object."
So we have to choose something else.
Our choice is further limited by the need for the reference associated
with the GOT relocation to stay within the signed 16-bit limit from the
GOT pointer base register, while being compliant with the ELF gABI and
the MIPS psABI. However as Alan Modra has observed[4] one possibility
is to edit (relax) the code such that the GOT reference is removed
altogether.
Based on these observations then modify MIPS BFD linker backend code to:
1. Interpret code associated with GOT relocations and relax the usual LW
or LD instructions into a corresponding immediate load operation that
places the value of 0 in the intended register, while leaving the GOT
entry allocated and initialized as usually.
2. Leave any other instructions associated with GOT relocations in place
and instead redirect the reference to a global GOT entry associated
with a special `__gnu_absolute_zero' symbol created for this purpose,
whose value is 0, SHN_ABS section marks it absolute, binding is
global and export class protected, ensuring that the locally provided
value is always used at load time, and that the value is not
relocated by the dynamic loader.
3. Adjust any high-part GOT relocation used, typically associated with
a LUI instruction, accordingly, so that run-time consistency is
maintained, either by resolving to the original entry if the
instruction associated with the corresponding low-part GOT relocation
has been relaxed to an immediate load (in which case the value loaded
with LUI will be overwritten), or by also redirecting the reference
to `__gnu_absolute_zero' to complete the GOT access sequence if that
symbol has been used.
4. Add a target `elf_backend_hide_symbol' hook, for the three MIPS ABIs,
which prevents the `__gnu_absolute_zero' symbol from being forced
local, to ensure that the redirection works and the symbol remains
global/protected with existing linker scripts unchanged.
5. Observing the issue with handling SHN_ABS symbols in the GNU dynamic
loader, covered by glibc PR 19818, set the EI_ABIVERSION field in the
ELF file header produced to 4 (ABI_ABSOLUTE) if `__gnu_absolute_zero'
symbol has been produced and the target configured indicates the GNU
operating system, so that broken versions of the GNU dynamic loader
gracefully reject the file in loading rather than going astray. Keep
EI_ABIVERSION at the original value for other operating systems or if
no `__gnu_absolute_zero' symbol has been made.
The name of the special `__gnu_absolute_zero' has no meaning other than
how a human reader can interpret it, as it is ignored in dynamic loading
in the handling of the scenarios concerned. This is because the symbol
resolves locally, and it's only the symbol's attributes that matter so
that the associated GOT entry remains unchanged at load time.
Therefore the name is somewhat arbitrary, observing however the need to
use the name space reserved for the system so that it does not conflict
with a possible user symbol, and hence the leading underscore, and also
the `gnu' infix to denote a GNU feature. Other implementations wishing
to address the problem in a similar way may choose a different name and
have the solution still work, possibly with a mixture of modules used in
a dynamic having symbols of different names provided, which will however
not interact with each other due to the protected export class.
The symbol can be referred explicitly, however the name is an internal
implementation detail rather than a part of the ABI, and therefore no
specific semantics is guaranteed.
One limitation of this change is that if `__gnu_absolute_zero' has been
already defined, then we do not wipe the old definition and all kinds of
odd behavior can result. This is however like with other symbols we
internally define, such as `_GLOBAL_OFFSET_TABLE_' or `__rld_map', and
therefore left as a possible future enhancement.
As an optimization the relaxation of LW and LD instructions to a load of
immediate zero is always made, even SVR4 PIC code for code that will end
up in a regular (non-PIE) executable, because there is a cache advantage
with the avoidance of a load from the GOT, even if it is otherwise
guaranteed to remain zero. It does not reliably happen though, due to a
symbol exportation issue affecting executables, covered by PR ld/21805.
One existing test case needs to be updated, as it triggers relaxation
introduced with this change and consequently linker output does not
match expectations anymore. As we want to keep the original issue
covered with the test case modify it then to use the LWL instruction in
place of LW, and adjust the output expected accordingly.
References:
[1] "System V Application Binary Interface - DRAFT - 19 October 2010",
The SCO Group, Section "Symbol Table",
<http://www.sco.com/developers/gabi/2012-12-31/ch4.symtab.html>
[2] "64-bit ELF Object File Specification, Draft Version 2.5", MIPS
Technologies / Silicon Graphics Computer Systems, Order Number
007-4658-001, Section 2.5 "Symbol Table", p. 22,
<http://techpubs.sgi.com/library/manuals/4000/007-4658-001/pdf/007-4658-001.pdf>
[3] "SYSTEM V APPLICATION BINARY INTERFACE, MIPS RISC Processor
Supplement, 3rd Edition", Section "Global Offset Table", p. 5-10,
<http://www.linux-mips.org/pub/linux/mips/doc/ABI/mipsabi.pdf>
[4] "Undo dynamic symbol state after regular object sym type mismatch",
<https://sourceware.org/ml/binutils/2017-07/msg00265.html>
bfd/
PR ld/21375
* elfxx-mips.h (_bfd_mips_elf_hide_symbol): New prototype.
(_bfd_mips_elf_linker_flags): Update prototype.
* elf32-mips.c (elf_backend_hide_symbol): New macro.
* elf64-mips.c (elf_backend_hide_symbol): Likewise.
* elfn32-mips.c (elf_backend_hide_symbol): Likewise.
* elfxx-mips.c (mips_elf_link_hash_table): Add
`use_absolute_zero' and `gnu_target' members.
(mips_elf_record_global_got_symbol): Call
`_bfd_mips_elf_hide_symbol' rather than
`_bfd_elf_link_hash_hide_symbol'.
(mips_use_local_got_p): Return FALSE if the symbol is absolute.
(mips_elf_obtain_contents): Reorder function.
(mips_elf_nullify_got_load): New function.
(mips_elf_calculate_relocation): Add `contents' parameter.
Nullify GOT loads or if it is not possible, then redirect GOT
relocations to the `__gnu_absolute_zero' symbol, for references
that are supposed to resolve to zero.
(mips_elf_define_absolute_zero): New function.
(_bfd_mips_elf_check_relocs): Prepare for arrangements made in
`mips_elf_calculate_relocation' for references made via the GOT
that are supposed to resolve to zero.
(_bfd_mips_elf_hide_symbol): New function.
(_bfd_mips_elf_linker_flags): Add the `gnu_target' parameter,
set the `gnu_target' member of the MIPS hash table.
(MIPS_LIBC_ABI_ABSOLUTE): New enumeration constant.
(_bfd_mips_post_process_headers): Use it.
ld/
PR ld/21375
* emultempl/mipself.em: Set `gnu_target' according to ${target}.
(mips_create_output_section_statements): Update call to
`_bfd_mips_elf_linker_flags'.
* testsuite/ld-mips-elf/pr21334.s: Use LWL rather than LW.
* testsuite/ld-mips-elf/pr21334.dd: Update accordingly.
commit 98e10ffadbeb42c5adef14c1d5dd4093d57d57a1
Author: Maciej W. Rozycki <macro@mips.com>
Date: Fri Sep 14 20:22:56 2018 +0100
MIPS/BFD: Factor out relocated field storing
Move code used to store the contents of a relocated field in output into
a separate function, `mips_elf_store_contents', complementing existing
`mips_elf_obtain_contents'.
bfd/
* elfxx-mips.c (mips_elf_store_contents): New function...
(mips_elf_perform_relocation): ... factored out from here.
commit 6057dc97e4df5ca9692ddd948798eaa543c74cc7
Author: Maciej W. Rozycki <macro@mips.com>
Date: Fri Sep 14 20:22:56 2018 +0100
LD: Always make a SEGMENT_START expression section-relative
Fix an issue with the SEGMENT_START builtin function where its result is
absolute when taken from the default supplied, and section-relative when
taken from a `-T' command-line override. This is against documentation,
inconsistent and unexpected, and with PIE executables gives an incorrect
result with the `__executable_start' symbol.
Make the result of SEGMENT_START always section-relative then.
ld/
* ldexp.c (fold_binary): Always make the result of SEGMENT_START
section-relative.
* testsuite/ld-scripts/segment-start.d: New test.
* testsuite/ld-scripts/segment-start.ld: New test linker script.
* testsuite/ld-scripts/segment-start.s: New test source.
* testsuite/ld-scripts/script.exp: Run the new test.
commit a000f8817b32eadd4aeadf9185634350a59e6649
Author: Maciej W. Rozycki <macro@linux-mips.org>
Date: Fri Sep 14 20:22:56 2018 +0100
LD: Avoid a division by zero page size with SEGMENT_START handling
Avoid a division by zero and thus a linker crash in SEGMENT_START script
builtin function handling, by not checking the value supplied with a
`-T' command-line override against the maximum page size if that has not
been set.
ld/
* ldexp.c (fold_binary): Check that `config.maxpagesize' is
non-zero before using it as a divisor.
commit 606cc04085a08f5e04eda6ef67f516bf81b691a1
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Sep 14 12:21:08 2018 -0700
x86: Check non-WIG EVEX instruction encoding with -mevexwig=1
Verify that -mevexwig=1 has no impact on non-WIG EVEX instruction encoding.
PR gas/23642
* testsuite/gas/i386/evex-wig2.d: New file.
* testsuite/gas/i386/evex-wig2.s: Likewise.
* testsuite/gas/i386/x86-64-evex-wig2.d: Likewise.
* testsuite/gas/i386/x86-64-evex-wig2.s: Likewise.
* testsuite/gas/i386/i386.exp: Run evex-wig2 and
x86-64-evex-wig2.
commit 6865c0435a54e6d5f1fcc5cdcd56895e9a3c5484
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Sep 14 12:19:58 2018 -0700
x86: Support VEX/EVEX WIG encoding
Add VEXWIG, defined as 3, to indicate that the VEX.W/EVEX.W bit is
ignored by such VEX/EVEX instructions, aka WIG instructions. Set
VexW=3 on VEX/EVEX WIG instructions. Update assembler to check
VEXWIG when setting the VEX.W bit.
gas/
PR gas/23642
* config/tc-i386.c (build_vex_prefix): Check VEXWIG when setting
the VEX.W bit.
(build_evex_prefix): Check VEXWIG when setting the EVEX.W bit.
opcodes/
PR gas/23642
* i386-opc.h (VEXWIG): New.
* i386-opc.tbl: Set VexW=3 on VEX/EVEX WIG instructions.
* i386-tbl.h: Regenerated.
commit 70df6fc9bc9e114f46532dbe58caa98e495b119c
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Sep 14 11:25:01 2018 -0700
x86: Handle unsupported static rounding in vcvt[u]si2sd in 32-bit mode
Update x86 disassembler to handle the unsupported static rounding in
vcvt[u]si2sd in 32-bit mode.
gas/
PR binutils/23655
* testsuite/gas/i386/evex.d: Updated.
opcodes/
PR binutils/23655
* i386-dis-evex.h: Replace EXxEVexR with EXxEVexR64 for
vcvtsi2sd%LQ and vcvtusi2sd%LQ.
* i386-dis.c (EXxEVexR64): New.
(evex_rounding_64_mode): Likewise.
(OP_Rounding): Handle evex_rounding_64_mode.
commit d20dee9efad3c23c9098f03ac785037572258483
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Sep 14 10:49:43 2018 -0700
x86: Properly decode EVEX.W in vcvt[u]si2s[sd] in 32-bit mode
Update x86 disassembler to ignore the EVEX.W bit in EVEX vcvt[u]si2s[sd]
instructions in 32-bit mode.
gas/
PR binutils/23655
* testsuite/gas/i386/evex.d: New file.
* testsuite/gas/i386/evex.s: Likewise.
* testsuite/gas/i386/i386.exp: Run evex.
opcodes/
PR binutils/23655
* i386-dis-evex.h (evex_table): Replace Eq with Edqa for
vcvtsi2ss%LQ, vcvtsi2sd%LQ, vcvtusi2ss%LQ and vcvtusi2sd%LQ.
* i386-dis.c (Edqa): New.
(dqa_mode): Likewise.
(intel_operand_size): Handle dqa_mode as m_mode.
(OP_E_register): Handle dqa_mode as dq_mode.
(OP_E_memory): Set shift for dqa_mode based on address_mode.
commit 5074ad8a66ab2e955cf3ae4dba5773d5aa67b29b
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Sep 14 06:51:29 2018 -0700
i386: Reformat OP_E_memory
* i386-dis.c (OP_E_memory): Reformat.
commit b4b08fa2aa25f245c77921ad2405c15d30e421ed
Author: Tom Tromey <tom@tromey.com>
Date: Fri Sep 14 06:57:05 2018 -0600
Remove an unnecessary block in call_function_by_hand_dummy
I noticed that call_function_by_hand_dummy has a block that only
exists to declare a variable, like:
{
int i;
for (i = ...0)
...
}
This patch removes the unnecessary and the extra indentation by moving
the declaration into the "for".
gdb/ChangeLog
2018-09-14 Tom Tromey <tom@tromey.com>
* infcall.c (call_function_by_hand_dummy): Remove unnecessary
block.
commit fe75f42ee15944a0d14d3d42b242676fc2417352
Author: Lifang Xia <lifang_xia@c-sky.com>
Date: Fri Sep 14 21:02:51 2018 +0800
csky: Support PC relative diff relocation
Define DIFF_EXPR_OK to Support PC relative diff relocation,
and add CKCORE_PCREL32 relocation process
bfd/
* elf32-csky.c (csky_elf_howto_table): Fill special_function of
R_CKCORE_PCREL32.
(csky_elf_relocate_section): Add R_CKCORE_PCREL32 process.
gas/
* config/tc-csky.c (md_apply_fix): Transmit
BFD_RELOC_32_PCREL to BFD_RELOC_CKCORE_PCREL32.
(tc_gen_reloc): Trasmit BFD_RELOC_CKCORE_ADDR32 to
BFD_RELOC_CKCORE_PCREL32 while pc-relative.
* config/tc-csky.h (DIFF_EXPR_OK): Define to enable PC relative
diff relocs.
commit 87b240d48512fa30aab8b5963914a9093009fd68
Author: Tom Tromey <tom@tromey.com>
Date: Thu Sep 13 16:33:27 2018 -0600
Make variable in get_startup_shell non-static
I noticed that a variable in get_startup_shell is "static". However,
I couldn't see any reason it ought to be, so this removes the
"static".
gdb/ChangeLog
2018-09-14 Tom Tromey <tom@tromey.com>
* nat/fork-inferior.c (get_startup_shell): Remove "static".
commit 1fcd7e871c38ac1049dd5d5509ea1f11a456bf16
Author: Alan Modra <amodra@gmail.com>
Date: Fri Sep 14 19:20:06 2018 +0930
PR23633 testcase fix
PR binutils/23633
* testsuite/binutils-all/pr23633.d: Don't fail when assembler
generates sections other than .text.
commit a4cd947aca23d58966ead843e120f4c19db01030
Author: Alan Modra <amodra@gmail.com>
Date: Tue Sep 11 23:50:15 2018 +0930
PR23425, unresolved symbol diagnostic
dwarf2.c code reasonably assumes that debug info is local to a file,
an assumption now violated by gcc, resulting in "DWARF error: invalid
abstract instance DIE ref" or wrong details when attempting to print
linker error messages with file, function and line reported.
This is because find_abstract_instance is only prepared to handle
DW_FORM_ref_addr when the .debug_info section referenced is in the
current file. When that isn't the case, relocations to access another
file's .debug_info will typically be against a symbol defined at the
start of that .debug_info section, plus an addend. Since the dwarf2.c
code only considers the current file's debug info, that symbol will be
undefined, resolving to zero. In effect the ref_addr will wrongly
resolve to the current file's .debug_info.
This patch avoids the problem by treating relocations in debug
sections against undefined symbols in a similar manner to the way
relocations against symbols defined in discarded sections are
resolved. They result in a zero value (except in .debug_ranges)
regardless of the addend.
PR 23425
* reloc.c (bfd_generic_get_relocated_section_contents): Zero reloc
fields in debug sections when reloc is against an undefined symbol
and called from bfd_simple_get_relocated_section_contents or
similar.
* dwarf2.c (find_abstract_instance): Return true for zero offset
DW_FORM_ref_addr without returning values.
commit 556059dd13a8a9a30b23eacbefbe7b85e74ce7b7
Author: Jan Beulich <jbeulich@novell.com>
Date: Fri Sep 14 11:21:15 2018 +0200
x86: fold CRC32 templates
Just like other insns having byte and word forms, these can also make
use of the W modifier, which at the same time allows simplifying some
other code a little bit.
commit bf326452537c11deece2aabe16b6b9d62388a2d9
Author: Alan Hayward <alan.hayward@arm.com>
Date: Wed Sep 5 10:11:32 2018 +0100
Testsuite: Add gdb_simple_compile
Simplfy gdb.exp by adding a function that will attempt to
compile a piece of code, then clean up, leaving the created
object.
gdb/testsuite
* lib/gdb.exp (gdb_simple_compile): Add proc.
(is_elf_target): Use gdb_simple_compile.
(skip_altivec_tests): Likewise.
(skip_vsx_tests): Likewise.
(skip_tsx_tests): Likewise.
(skip_btrace_tests): Likewise.
(skip_btrace_pt_tests): Likewise.
(gdb_can_simple_compile): Likewise.
(gdb_has_argv0): Likewise.
(gdb_target_symbol_prefix): Likewise.
(target_supports_scheduler_locking): Likewise.
commit ca5f750004aa313131b15e648d4b862cbc4ba18c
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Sep 14 00:00:32 2018 +0000
Automatic date update in version.in
commit 2361b0fb1d99e9c0b97f4c1f42f89f862d757128
Author: Tom Tromey <tom@tromey.com>
Date: Thu Sep 13 16:30:48 2018 -0600
Generate more tags in gdb/testsuite/Makefile
I noticed that the TAGS target in gdb/testsuite/Makefile does not pick
up Tcl procs defined with proc_with_prefix or gdb_caching_proc. This
patch fixes this by updating the regexp.
Tested in Emacs.
gdb/testsuite/ChangeLog
2018-09-13 Tom Tromey <tom@tromey.com>
* Makefile.in (TAGS): Recognize proc_with_prefix and
gdb_caching_proc.
commit 7d2215128b84d9dec4a264021427343d895fdc6d
Author: Tom Tromey <tom@tromey.com>
Date: Thu Sep 13 16:23:52 2018 -0600
Make infpy_thread_from_thread_handle static
I noticed that infpy_thread_from_thread_handle is not static, but
should be. This patch changes it.
gdb/ChangeLog
2018-09-13 Tom Tromey <tom@tromey.com>
* python/py-inferior.c (infpy_thread_from_thread_handle): Now
static.
commit 97e67fc62045723db7af6d323ce9c428666ab6f5
Author: Tom Tromey <tom@tromey.com>
Date: Wed Aug 29 23:05:54 2018 -0600
Remove cleanup from try_open_exec_file
This removes a cleanup from try_open_exec_file, using std::string to
manage the storage instead.
gdb/ChangeLog
2018-09-13 Tom Tromey <tom@tromey.com>
* exec.c (try_open_exec_file): Use std::string.
commit 803c08d083556154cd4d27368e58b359e9de8b93
Author: Tom Tromey <tom@tromey.com>
Date: Wed Aug 29 23:03:09 2018 -0600
Return std::string from gdb_bfd_errmsg
This changes gdb_bfd_errmsg to return a std::string, removing a
cleanup. This approach may be slightly less efficient than the
previous code, but I don't believe this is very important in this
situation.
gdb/ChangeLog
2018-09-13 Tom Tromey <tom@tromey.com>
* utils.h (gdb_bfd_errmsg): Return std::string.
* exec.c (exec_file_attach): Update.
* compile/compile-object-load.c (compile_object_load): Update.
* utils.c (gdb_bfd_errmsg): Return std::string.
commit 5b4cbbe357aaf6462a68e1a15c9532dd3d01e06d
Author: Tom Tromey <tom@tromey.com>
Date: Wed Aug 29 22:49:40 2018 -0600
Remove cleanup from procfs.c
This removes the last remaining cleanup from procfs.c, replacing it
with a unique_ptr specialization.
gdb/ChangeLog
2018-09-13 Tom Tromey <tom@tromey.com>
* procfs.c (struct procinfo_deleter): New.
(procinfo_up): New typedef.
(do_destroy_procinfo_cleanup): Remove.
(procfs_target::info_proc): Use procinfo_up. Remove cleanups.
commit db68fbe2f946cb36359c8672548fde198f812c4e
Author: Tom Tromey <tom@tromey.com>
Date: Wed Aug 29 22:42:57 2018 -0600
Remove cleanup from add_path
This removes a cleanup from add_path, replacing it with a use of
gdb::unique_xmalloc_ptr. Note that this declaration had to be hoisted
somewhat, to avoid inteference from the "goto"s in this function.
gdb/ChangeLog
2018-09-13 Tom Tromey <tom@tromey.com>
* source.c (add_path): Use gdb::unique_xmalloc_ptr.
commit 74d3fbbb3e35129526392718b63df41be3b0e88b
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Thu Sep 13 15:41:32 2018 -0400
python: Fix erroneous doc about gdb.objfiles()
The code implementing gdb.objfiles() returns a list of objfiles for the
current program space (the program space of the selected inferior). The
documentation for the gdb.objfiles() Python method, however, states:
Return a sequence of all the objfiles current known to GDB.
That sounds wrong to me. I tried to phrase to be more precise.
gdb/doc/ChangeLog:
* python.texi (Objfiles In Python): Update gdb.objfiles() doc.
commit 0ae1a3211adcb8e7518b0b656b2309ebbc45e9ae
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Thu Sep 13 15:40:41 2018 -0400
python: Add Progspace.objfiles method
This patch adds an objfiles method to the Progspace object, which
returns a sequence of the objfiles associated to that program space. I
chose a method rather than a property for symmetry with gdb.objfiles().
gdb/ChangeLog:
* python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
(pspy_get_objfiles): New function.
(progspace_object_methods): New.
(pspace_object_type): Add tp_methods callback.
* python/python-internal.h (build_objfiles_list): New
declaration.
* python/python.c (build_objfiles_list): New function.
(gdbpy_objfiles): Implement using build_objfiles_list.
* NEWS: Mention the Progspace.objfiles method.
gdb/doc/ChangeLog:
* python.texi (Program Spaces In Python): Document the
Progspace.objfiles method.
(Objfiles In Python): Mention that gdb.objfiles() is identical
to gdb.selected_inferior().progspace.objfiles().
gdb/testsuite/ChangeLog:
* gdb.python/py-progspace.exp: Test the Progspace.objfiles
method.
commit a40bf0c2e93daac4ae4ce7dd1c43ab6135e76720
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Thu Sep 13 15:39:26 2018 -0400
python: Add Inferior.progspace property
This patch adds a progspace property to the gdb.Inferior type, which
allows getting the gdb.Progspace object associated to that inferior.
In conjunction with the following patch, this will allow scripts iterate
on objfiles associated with a particular inferior.
gdb/ChangeLog:
* python/py-inferior.c (infpy_get_progspace): New function.
(inferior_object_getset): Add progspace property.
* NEWS: Mention the new property.
gdb/doc/ChangeLog:
* python.texi (Inferiors In Python): Document
Inferior.progspace.
(Program Spaces In Python): Document that
gdb.current_progspace() is the same as
gdb.selected_inferior().progspace.
gdb/testsuite/ChangeLog:
* gdb.python/py-inferior.exp: Add tests for Inferior.progspace
and a few other Inferior properties when the Inferior is no
longer valid.
commit 4a3fe98f885a2d1db804584e7ea265ab3ccef4d7
Author: Tom Tromey <tom@tromey.com>
Date: Thu Sep 13 10:56:34 2018 -0600
Make Rust error message mention the field name
I noticed a spot in rust-lang.c where the placeholder "foo" was used
instead of the actual field name. This patch fixes the bug.
gdb/ChangeLog
2018-09-13 Tom Tromey <tom@tromey.com>
PR rust/23650:
* rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
gdb/testsuite/ChangeLog
2018-09-13 Tom Tromey <tom@tromey.com>
PR rust/23650:
* gdb.rust/simple.exp: Add test for enum field access error.
commit 098b2108a2b61531c0bc8ea16854f773083a95d7
Author: Tom Tromey <tom@tromey.com>
Date: Tue Sep 11 15:28:04 2018 -0600
Fix crash with empty Rust enum
While testing my Rust compiler patch to fix the DWARF representation
of Rust enums (https://github.com/rust-lang/rust/pull/54004), I found
a gdb crash coming from one of the Rust test cases.
The bug here is that the new variant support in gdb does not handle
the case where there are no variants in the enum.
This patch fixes the problem in a straightforward way. Note that the
new tests are somewhat lax because I did not want to try to fully fix
this corner case for older compilers. If you think that's
unacceptable, let meknow.
Tested on x86-64 Fedora 28 using several versions of the Rust
compiler. I intend to push this to the 8.2 branch as well.
gdb/ChangeLog
2018-09-13 Tom Tromey <tom@tromey.com>
PR rust/23626:
* rust-lang.c (rust_enum_variant): Now static.
(rust_empty_enum_p): New function.
(rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
Handle empty enum.
gdb/testsuite/ChangeLog
2018-09-13 Tom Tromey <tom@tromey.com>
PR rust/23626:
* gdb.rust/simple.rs (EmptyEnum): New type.
(main): Use it.
* gdb.rust/simple.exp (test_one_slice): Add empty enum test.
commit 80ca5f98b86c9b209f392cb52dde8b8471856c5a
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Wed Sep 12 01:14:31 2018 -0400
Add "contrib" to the list of GDB support dirs (on src-release.sh)
On commit:
commit 5a6996172e6294ea37054b1a9caa3a923a8fe399
Author: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Date: Mon Aug 6 16:05:16 2018 +0200
Update dg-extract-results.* from gcc
dg-extract-results.sh was moved from the "gdb/contrib/" directory to
the toplevel "contrib/" directory. However, src-release.sh was not
updated in order to include "contrib/" in the tarball release of GDB.
This makes it very inconvenient to run and analyze the GDB testsuite
results. This commit adds "contrib/" to the list of support
directories that are included in each GDB release.
ChangeLog:
2018-09-12 Sergio Durigan Junior <sergiodj@redhat.com>
* src-release.sh (GDB_SUPPORT_DIRS): Add "contrib".
commit 319dbdfbb78d82470498704bca21729e057464f2
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Sep 13 09:09:00 2018 -0700
Add a testcase for PR binutils/23633
PR binutils/23633
* testsuite/binutils-all/objcopy.exp: Run pr23633.
* testsuite/binutils-all/pr23633.d: New file.
* testsuite/binutils-all/pr23633.list: Likewise.
* testsuite/binutils-all/pr23633.s: Likewise.
commit 1256af7d1afb123c15ae3935de4470becdf7c512
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Thu Sep 13 11:53:22 2018 -0400
python: Provide textual representation for Inferior and Objfile
Printing a GDB Python object is notoriously not helpful:
>>> print(gdb.selected_inferior())
<gdb.Inferior object at 0x7fea59aed198>
>>> print(gdb.objfiles())
[<gdb.Objfile object at 0x7fea59b57c90>]
This makes printing debug traces more difficult than it should be. This
patch provides some repr() implementation for these two types (more to
come if people agree with the idea, but I want to test the water first).
Here's the same example as above, but with this patch:
>>> print(gdb.selected_inferior())
<gdb.Inferior num=1>
>>> print(gdb.objfiles())
[<gdb.Objfile filename=/home/emaisin/build/binutils-gdb-gcc-git/gdb/test>]
I implemented repr rather than str, because when printing a list (or
another container I suppose), Python calls the repr method of the
elements. This is useful when printing a list of inferiors or objfiles.
The print(gdb.objfiles()) above would not have worked if I had
implemented str.
I found this post useful to understand the difference between repr and
str:
https://stackoverflow.com/questions/1436703/difference-between-str-and-repr
gdb/ChangeLog:
* python/py-inferior.c (infpy_repr): New.
(inferior_object_type): Register infpy_repr.
* python/py-objfile.c (objfpy_repr): New.
(objfile_object_type): Register objfpy_repr.
gdb/testsuite/ChangeLog:
* gdb.python/py-inferior.exp: Test repr() of gdb.Inferior.
* gdb.python/py-objfile.exp: Test repr() of gdb.Objfile.
* gdb.python/py-symtab.exp: Update test printing an objfile.
gdb/doc/ChangeLog:
* python.texi (Basic Python): Mention the string representation
of GDB Python objects.
commit 508d0c9b5945d30bcf163b9b88213d277949e9a8
Author: Nick Clifton <nickc@redhat.com>
Date: Thu Sep 13 16:14:36 2018 +0100
Fix a use-after-freed error introduced by previous attempt to fix a Coverity scan result.
PR 23633
* objcopy.c (add_specific_symbols): Do not free the buffer at the
end of the function.
commit 5be12fc1ad9e47e82bd8902ad6a1f71946c58805
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Sep 13 07:38:45 2018 -0700
x86: Remove VexW=1 from WIG VEX movq and vmovq
Put back changes lost in commit 41d1ab6a6d96937fd0db04e53746f93f53687807.
commit 41d1ab6a6d96937fd0db04e53746f93f53687807
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Sep 12 15:12:59 2018 -0700
i386: Update VexW field for VEX instructions
1. Mark VEX.W0 VEX instructions with VexW=1.
2. Mark VEX.W1 VEX instructions with VexW=2.
3. Remove VexW=1 from WIG VEX instructions.
* i386-opc.tbl: Add VexW=1 to VEX.W0 VEX movd, cvtsi2ss, cvtsi2sd,
pextrd, pinsrd, vcvtsi2sd, vcvtsi2ss, vmovd, vpextrd and vpinsrd.
Add VexW=2 to VEX.W1 VEX movd, movq, pextrq, pinsrq, vmod, vmovq,
vpextrq and vpinsrq. Remove VexW=1 from WIG VEX movq and vmovq.
* i386-tbl.h: Regenerated.
commit 79f0fa25b95fd82122ee76d61fded661cc3ece87
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Sep 13 06:12:31 2018 -0700
x86: Swap destination/source to encode VEX only if possible
When encoding VEX, we can swap destination and source only if there are
more than 1 register operand.
* config/tc-i386.c (build_vex_prefix): Swap destination and
source only if there are more than 1 register operand.
commit 57f6375ec10415fc26bbfaf4fdc19effb313a06d
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:26:06 2018 +0200
x86: drop bogus IgnoreSize from a few further insns
commit 2589a7e59bdd0c3f9647bf79e5d0ab107216f976
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:25:30 2018 +0200
x86: drop bogus IgnoreSize from AVX512_4* insns
commit a760eb41aac52948ac28f4a47563565396a7c37a
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:24:53 2018 +0200
x86: drop bogus IgnoreSize from AVX512DQ insns
commit e90426589d7c783b7e458162baaac1431fc33bd5
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:24:23 2018 +0200
x86: drop bogus IgnoreSize from AVX512BW insns
commit 9caa306f8020d5c9bfa84b88f4922f60763ea77a
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:23:50 2018 +0200
x86: drop bogus IgnoreSize from AVX512VL insns
commit fb6ce599e05d86784e357c3d387c8785dc16a07f
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:23:17 2018 +0200
x86: drop bogus IgnoreSize from AVX512ER insns
commit 6a8da8866974e139642b4bb41d7c252d509fd2a0
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:22:49 2018 +0200
x86: drop bogus IgnoreSize from AVX512F insns
commit c7f279191fd49f9e4e302cb65268e6df595f2761
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:22:03 2018 +0200
x86: drop bogus IgnoreSize from SHA insns
commit 0f407ee9f45d704dfed7207f2e2122cfa197ff70
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:21:36 2018 +0200
x86: drop bogus IgnoreSize from XOP and SSE4a insns
commit 2fbbbee5e78e590ecee718e8da4f229fb59fe9c5
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:19:21 2018 +0200
x86: drop bogus IgnoreSize from AVX2 insns
commit 2b02b9a2abfc773ad3cce49ecc36c37a1a84bcc9
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:18:52 2018 +0200
x86: drop bogus IgnoreSize from AVX insns
commit 963c68aa4af4bf9448aa1d2ee03fc13cc88da0f5
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:16:49 2018 +0200
x86: drop bogus IgnoreSize from GNFI insns
commit 64e025c3a16d05c640d20192ac32728b05ee0415
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:16:19 2018 +0200
x86: drop bogus IgnoreSize from PCLMUL/VPCLMUL insns
commit 47603f888def989f5dcb370f84420cf0484d53e2
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:15:38 2018 +0200
x86: drop bogus IgnoreSize from AES/VAES insns
commit 0001cfd00ce30c5a06c938eb0fb203451870ef85
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:15:01 2018 +0200
x86: drop bogus IgnoreSize from SSE4.2 insns
commit be4b452e28df8a18cbb7f3af929512722b003ba1
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:14:32 2018 +0200
x86: drop bogus IgnoreSize from SSE4.1 insns
commit d09a13943b71ac9b2212e93fa578925bb025f1f3
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:12:51 2018 +0200
x86: drop bogus IgnoreSize from SSSE3 insns
commit 07599e13ac3a65c5dfb692bf9891758463949cfc
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:12:23 2018 +0200
x86: drop bogus IgnoreSize from SSE3 insns
commit 1ee3e48715c188bab4db68476b54161535839d6a
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:11:55 2018 +0200
x86: drop bogus IgnoreSize from SSE2 insns
commit a5f580e51a77f278b66e87d7d1784225aae51cbf
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:11:26 2018 +0200
x86: drop bogus IgnoreSize from SSE insns
commit 49d5d12d0e5b80afc376c6bb9be4976efb53425c
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:08:37 2018 +0200
x86: drop unnecessary {,No}Rex64
commit f5eb1d70fb8ed38290413acae2617fe899a1663c
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:07:55 2018 +0200
x86: also allow D on 3-operand insns
For now this is just for VMOVS{D,S}.
commit dbbc8b7e629fa666affd9a3f475d0bf6e5264677
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:07:07 2018 +0200
x86: use D attribute also for SIMD templates
Various moves come in load and store forms, and just like on the GPR
and FPU sides there would better be only one pattern. In some cases this
is not feasible because the opcodes are too different, but quite a few
cases follow a similar standard scheme. Introduce Opcode_SIMD_FloatD and
Opcode_SIMD_IntD, generalize handling in operand_size_match() (reverse
operand handling there simply needs to match "straight" operand one),
and fix a long standing, but so far only latent bug with when to zap
found_reverse_match.
Also once again drop IgnoreSize where pointlessly applied to templates
touched anyway as well as *word when redundant with Reg*.
commit efb192033ad82855bcfab207f8494e8b1f3e243b
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:06:07 2018 +0200
x86: fold ILP32 output of "opts" tests
The output is identical to that of the LP64 tests. No need to fully
spell this out twice.
commit 64c49ab3fb5eea7ba382cf7b0955795ae15e06e5
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:05:27 2018 +0200
x86: improve operand reversal
In quite a few cases the .s suffix or {load} / {store} prefixes did not
work as intended, or produced errors when they're supposed to be ignored
when it is not possible to carry out the request.
The change here re-purposes(?) the .s suffix to no longer mean "store"
(if that's what 's' did stand for), since the forms used in the base
templates are not consistently loads (and we unlikely want to change
that). The pseudo prefixes will now fulfill what their names say, i.e.
{load} now only ever produces a load form encoding (if available) while
{store} only ever produces a store form one (again if available). This
requires minimal test suite adjustments, while the majority of the
changes there are simply additions.
commit 07d5e9534b11ea9df17eb9d01799000a10c7567f
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:04:38 2018 +0200
x86: add code comment on deprecated status of pseudo-suffixes
commit d276ec695e8954330e922807d6886b8212d6323b
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Sep 13 11:03:35 2018 +0200
x86-64: bndmk, bndldx, and bndstx don't allow RIP-relative addressing
commit 031e33500e82fb8ef525595ea684473774dfc669
Author: Nick Clifton <nickc@redhat.com>
Date: Thu Sep 13 09:34:53 2018 +0100
Fix the use by the RL78 assembler of an uninitialised field in the expresion structure.
* dwarf2dbg.c (generic_dwarf2_emit_offset): Use memset to
initialise expression structure.
(set_or_check_view): Likewise.
(out_set_addr): Likewise.
(emit_fixed_inc_line_addr): Likewise.
(relax_inc_line_addr): Likewise.
(out_debug_line): Likewise.
(out_debug_ranges): Likewise.
(out_debug_aranges): Likewise.
(out_debug_info): Likewise.
commit 4cb3152d95f08b054e5b74f0cc5c8dff019b3a8a
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Sep 13 00:00:26 2018 +0000
Automatic date update in version.in
commit f117a62c5debd8a46fb4f76eba784d433d1bb875
Author: John Baldwin <jhb@FreeBSD.org>
Date: Wed Sep 12 17:43:13 2018 +0000
Remove unused "tmp" variable.
gdb/ChangeLog:
* fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
commit 88f22c34d0f39ee4aca87940bff2cbf47e64b9d7
Author: John Baldwin <jhb@FreeBSD.org>
Date: Tue Sep 11 17:53:37 2018 +0000
Fix a typo in a comment.
gdb/ChangeLog:
* aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
typo.
commit 4aa8e6c2387e796649279c2190cd499b579d028c
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed Sep 12 18:27:57 2018 -0400
python: Add tests for trying to use an invalid Inferior object
This patch adds tests for trying to use property or methods on a
gdb.Inferior object that represents an inferior that does not exist
anymore. We expect an exception to be thrown.
gdb/testsuite/ChangeLog:
* gdb.python/py-inferior.exp: Test using an invalid gdb.Inferior
object.
commit 3c025cfe5efc44eb4dfb03b53dca28e75096dd1e
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Wed Sep 12 13:16:02 2018 -0400
Move 'is_regular_file' from common-utils.c to filestuff.c
There is no reason for 'is_regular_file' to be in common-utils.c; it
belongs to 'filestuff.c'. This commit moves the function definition
and its prototype to the appropriate files.
The motivation behind this move is a failure that happens on certain
cross-compilation environments when compiling the IPA library, due to
the way gnulib probes the need for a 'stat' call replacement. Because
configure checks when cross-compiling are more limited, gnulib decides
that it needs to substitute the 'stat' calls its own 'rpl_stat';
however, the IPA library doesn't link with gnulib, which leads to an
error when compiling 'common-utils.c':
...
/opt/x86-core2--musl--bleeding-edge-2018.09-1/bin/i686-buildroot-linux-musl-g++ -shared -fPIC -Wl,--soname=libinproctrace.so -Wl,--no-undefined -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -I. -I. -I./../common -I./../regformats -I./.. -I./../../include -I./../gnulib/import -Ibuild-gnulib-gdbserver/import -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Wall -Wpointer-arith -Wno-unused -Wunused-value -Wunused-function -Wno-switch -Wno-char-subscripts -Wempty-body -Wunused-but-set-parameter -Wunused-but-set-variable -Wno-sign-compare -Wno-narrowing -Wno-error=maybe-uninitialized -DGDBSERVER \
-Wl,--dynamic-list=./proc-service.list -o libinproctrace.so ax-ipa.o common-utils-ipa.o errors-ipa.o format-ipa.o print-utils-ipa.o regcache-ipa.o remote-utils-ipa.o rsp-low-ipa.o tdesc-ipa.o tracepoint-ipa.o utils-ipa.o vec-ipa.o linux-i386-ipa.o linux-x86-tdesc-ipa.o arch/i386-ipa.o -ldl -pthread
/opt/x86-core2--musl--bleeding-edge-2018.09-1/lib/gcc/i686-buildroot-linux-musl/8.2.0/../../../../i686-buildroot-linux-musl/bin/ld: common-utils-ipa.o: in function `is_regular_file(char const*, int*)':
common-utils.c:(.text+0x695): undefined reference to `rpl_stat'
collect2: error: ld returned 1 exit status
Makefile:413: recipe for target 'libinproctrace.so' failed
make[1]: *** [libinproctrace.so] Error 1
...
More details can also be found at:
https://sourceware.org/ml/gdb-patches/2018-09/msg00304.html
The most simple fix for this problem is to move 'is_regular_file' to
'filestuff.c', which is not used by IPA. This ends up making the
files more logically organized as well, since 'is_regular_file' is a
file operation.
No regressions found.
gdb/ChangeLog:
2018-09-12 Sergio Durigan Junior <sergiodj@redhat.com>
* common/common-utils.c: Don't include '<sys/stat.h>'.
(is_regular_file): Move to...
* common/filestuff.c (is_regular_file): ... here.
* common/common-utils.h (is_regular_file): Move to...
* common/filestuff.h (is_regular_file): ... here.
commit 3e68067fb2d59ea93ea95d713a6c27b635332912
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed Sep 12 12:24:41 2018 -0400
Add debug output about skipping files and functions
While trying to create skips for libstdc++, I found myself debugging GDB
quite a bit, mostly to find out what the exact function name to match
is. I thought it would make sense to have this information as debug
output.
This patch adds "set debug skip on|off".
gdb/ChangeLog:
* skip.c (debug_skip): New variable.
(skiplist_entry::do_skip_file_p): Add debug output.
(skiplist_entry::do_skip_gfile_p): Likewise.
(skiplist_entry::skip_function_p): Likewise.
(_initialize_step_skip): Create debug command.
* NEWS: Mention set/show debug skip.
gdb/doc/ChangeLog:
* gdb.texinfo (Skipping Over Functions and Files): Document
set/show debug skip.
commit c221b2f7708017593d572cf90560dc305bc3bf51
Author: Alan Hayward <alan.hayward@arm.com>
Date: Wed Sep 12 11:52:09 2018 +0100
Testsuite: Add gdb_can_simple_compile
Simplfy gdb.exp by adding a function that will attempt to
compile a piece of code, then clean up.
gdb/testsuite
* lib/gdb.exp (gdb_can_simple_compile): Add proc.
(support_complex_tests): Use gdb_can_simple_compile.
(is_ilp32_target): Likewise.
(is_lp64_target): Likewise.
(is_64_target): Likewise.
(is_amd64_regs_target): Likewise.
(is_aarch32_target): Likewise.
(gdb_int128_helper): Likewise.
commit ed84881fcfd45edfee0d3f9e9af0d3eb3bafe362
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Sep 12 00:00:24 2018 +0000
Automatic date update in version.in
commit d6be54ef73eacaaf5bf28bafc7dfebc80ebac832
Author: Xavier Roirand <roirand@adacore.com>
Date: Sat Sep 8 16:51:21 2018 +0200
Darwin: set startup-with-shell to off on Sierra and later.
On Mac OS X Sierra and later, the shell is not allowed to be
debug so add a check and disable startup with shell in that
case. This disabling is done temporary before forking
inferior and restored after the fork.
gdb/ChangeLog:
* darwin-nat.c (should_disable_startup_with_shell):
New function.
(darwin_nat_target::create_inferior): Add call.
Change-Id: Ie4d9090f65fdf2e83ecf7a0f9d0647fb1c27cdcc
commit de1ec836c8cc4eeb68e3e4eb8223eeff9840546e
Author: Xavier Roirand <roirand@adacore.com>
Date: Sun Sep 9 15:13:58 2018 +0200
Darwin: fix SIGTRAP when debugging
Debugging a program under Darwin does not work:
(gdb) start
Temporary breakpoint 1 at 0x100000fb4: file /tmp/helloworld.c, line 1.
Starting program: /private/tmp/helloworld
[New Thread 0x2903 of process 60326]
During startup program terminated with signal SIGTRAP, Trace/breakpoint
trap.
Field signaled from darwin_thread_info is not initialized thus signal
sent to the debuggee is considered as not sent by GDB whereas it should.
This patch fixes this problem and also updates (change type and/or
initialize) other fields in the same structure at the same time.
gdb/ChangeLog:
* darwin-nat.h (struct darwin_thread_info) <gdb_port,
inf_port, msg_state>: Initialize.
(struct darwin_thread_info) <signaled, single_step>: Change
type and initialize.
(struct darwin_thread_info) <event>: Initialize.
Change-Id: I0fe2a6985df9d0dfcc8a2a258a3ef70cfa19b403
commit 6f1107b59311300cb44379022f19af42db98b1e4
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Tue Sep 11 12:59:52 2018 +0200
[testsuite] Fix dg-extract-results.sh path
There was a typo in patch:
commit 5a6996172e6294ea37054b1a9caa3a923a8fe399
Author: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Date: Mon Aug 6 16:05:16 2018 +0200
Update dg-extract-results.* from gcc
gdb/testsuite/ChangeLog
2018-09-11 Jan Kratochvil <jan.kratochvil@redhat.com>
* Makefile.in (check-parallel-racy): Fix dg-extract-results.sh path.
commit c0934311c7d1275cfab63df6472c860b9a746621
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Sep 11 00:00:52 2018 +0000
Automatic date update in version.in
commit e2fc52e745757a11f7a4a256984cabbe5474f55a
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Mon Sep 10 12:52:04 2018 -0400
Fix PR gdb/23558: Use system's 'getcwd' when cross-compiling GDB
This is a backport of a gnulib fix for the following bug:
https://sourceware.org/bugzilla/show_bug.cgi?id=23558
The problem reported there is about the replacement of 'getcwd' when
cross-compiling GDB. With our current gnulib copy, the mechanism for
deciding whether to use the system's 'getcwd' or gnulib's version is
too simplistic and pessimistic, so when cross-compiling we always end
up using gnulib's version, which has a limitation: it cannot handle
the situation when the parent directory doesn't have read permissions.
The solution is to backport the following gnulib commit:
commit a96d2e67052c879b1bcc5bc461722beac75fc372
Author: Bruno Haible <bruno@clisp.org>
Date: Thu Aug 23 21:13:19 2018 +0200
getcwd: Add cross-compilation guesses.
gdb/ChangeLog:
2018-09-10 Sergio Durigan Junior <sergiodj@redhat.com>
PR gdb/23555
PR gdb/23558
* gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
guesses.
commit 5e8754f90abbbf832987477eea4ee91a9d2f694c
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Mon Sep 10 12:22:59 2018 -0400
Revert "Update gnulib to current upstream master"
This reverts commit 7a6dbc2fdb2323c35e981f93236f323e9d7c0b24 ("Update
gnulib to current upstream master"). It is needed because the gnulib
update caused problems with people using old GCC compilers (version
4.8, for example), which support C99 but don't default to using it.
Unfortunately this broke GDB for these users. A more detailed report
of what happened can be found at:
https://lists.gnu.org/archive/html/bug-gnulib/2018-08/msg00157.html
The reason for updating our gnulib copy was to fix PR gdb/23558.
Reverting this patch reintroduces the bug, so in order to fix it I
will submit a subsequent patch which cherry-picks the fix from gnulib.
gdb/ChangeLog:
2018-09-10 Sergio Durigan Junior <sergiodj@redhat.com>
Revert:
2018-08-29 Sergio Durigan Junior <sergiodj@redhat.com>
PR gdb/23555
PR gdb/23558
* gnulib/aclocal.m4: Regenerate.
* gnulib/config.in: Regenerate.
* gnulib/configure: Regenerate.
* gnulib/import/Makefile.am: Update.
* gnulib/import/Makefile.in: Update.
* gnulib/import/extra/snippet/_Noreturn.h: Rename to...
* gnulib/import/_Noreturn.h: ... this.
* gnulib/import/alloca.in.h: Update.
* gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
* gnulib/import/arg-nonnull.h: ... this.
* gnulib/import/assure.h: Update.
* gnulib/import/at-func.c: Update.
* gnulib/import/basename-lgpl.c: Update.
* gnulib/import/extra/snippet/c++defs.h: Rename to...
* gnulib/import/c++defs.h: ... this.
* gnulib/import/canonicalize-lgpl.c: Update.
* gnulib/import/cdefs.h: Update.
* gnulib/import/chdir-long.c: Update.
* gnulib/import/chdir-long.h: Update.
* gnulib/import/cloexec.c: Update.
* gnulib/import/cloexec.h: Update.
* gnulib/import/close.c: Update.
* gnulib/import/closedir.c: Update.
* gnulib/import/config.charset: Update.
* gnulib/import/dirent-private.h: Update.
* gnulib/import/dirent.in.h: Update.
* gnulib/import/dirfd.c: Update.
* gnulib/import/dirname-lgpl.c: Update.
* gnulib/import/dirname.h: Update.
* gnulib/import/dosname.h: Update.
* gnulib/import/dup-safer-flag.c: Update.
* gnulib/import/dup-safer.c: Update.
* gnulib/import/dup.c: Update.
* gnulib/import/dup2.c: Update.
* gnulib/import/errno.in.h: Update.
* gnulib/import/error.c: Update.
* gnulib/import/error.h: Update.
* gnulib/import/exitfail.c: Update.
* gnulib/import/exitfail.h: Update.
* gnulib/import/extra/update-copyright: Update.
* gnulib/import/fchdir.c: Update.
* gnulib/import/fcntl.c: Update.
* gnulib/import/fcntl.in.h: Update.
* gnulib/import/fd-hook.c: Update.
* gnulib/import/fd-hook.h: Update.
* gnulib/import/fd-safer-flag.c: Update.
* gnulib/import/fd-safer.c: Update.
* gnulib/import/fdopendir.c: Update.
* gnulib/import/filename.h: Update.
* gnulib/import/filenamecat-lgpl.c: Update.
* gnulib/import/filenamecat.h: Update.
* gnulib/import/flexmember.h: Update.
* gnulib/import/float+.h: Update.
* gnulib/import/float.c: Update.
* gnulib/import/float.in.h: Update.
* gnulib/import/fnmatch.c: Update.
* gnulib/import/fnmatch.in.h: Update.
* gnulib/import/fnmatch_loop.c: Update.
* gnulib/import/fpucw.h: Update.
* gnulib/import/frexp.c: Update.
* gnulib/import/frexpl.c: Update.
* gnulib/import/fstat.c: Update.
* gnulib/import/fstatat.c: Update.
* gnulib/import/getcwd-lgpl.c: Update.
* gnulib/import/getcwd.c: Update.
* gnulib/import/getdtablesize.c: Update.
* gnulib/import/getlogin_r.c: Update.
* gnulib/import/getprogname.c: Update.
* gnulib/import/getprogname.h: Update.
* gnulib/import/gettext.h: Update.
* gnulib/import/gettimeofday.c: Update.
* gnulib/import/glob-libc.h: Update.
* gnulib/import/glob.c: Update.
* gnulib/import/glob.in.h: Update.
* gnulib/import/glob_internal.h: Update.
* gnulib/import/glob_pattern_p.c: Update.
* gnulib/import/globfree.c: Update.
* gnulib/import/hard-locale.c: Update.
* gnulib/import/hard-locale.h: Update.
* gnulib/import/intprops.h: Update.
* gnulib/import/inttypes.in.h: Update.
* gnulib/import/isnan.c: Update.
* gnulib/import/isnand-nolibm.h: Update.
* gnulib/import/isnand.c: Update.
* gnulib/import/isnanl-nolibm.h: Update.
* gnulib/import/isnanl.c: Update.
* gnulib/import/itold.c: Update.
* gnulib/import/libc-config.h: Update.
* gnulib/import/limits.in.h: Update.
* gnulib/import/localcharset.c: Update.
* gnulib/import/localcharset.h: Update.
* gnulib/import/localtime-buffer.c: Update.
* gnulib/import/localtime-buffer.h: Update.
* gnulib/import/lstat.c: Update.
* gnulib/import/m4/00gnulib.m4: Update.
* gnulib/import/m4/__inline.m4: Update.
* gnulib/import/m4/absolute-header.m4: Update.
* gnulib/import/m4/alloca.m4: Update.
* gnulib/import/m4/builtin-expect.m4: Update.
* gnulib/import/m4/canonicalize.m4: Update.
* gnulib/import/m4/chdir-long.m4: Update.
* gnulib/import/m4/close.m4: Update.
* gnulib/import/m4/closedir.m4: Update.
* gnulib/import/m4/configmake.m4: Update.
* gnulib/import/m4/d-ino.m4: Update.
* gnulib/import/m4/d-type.m4: Update.
* gnulib/import/m4/dirent_h.m4: Update.
* gnulib/import/m4/dirfd.m4: Update.
* gnulib/import/m4/dirname.m4: Update.
* gnulib/import/m4/double-slash-root.m4: Update.
* gnulib/import/m4/dup.m4: Update.
* gnulib/import/m4/dup2.m4: Update.
* gnulib/import/m4/eealloc.m4: Update.
* gnulib/import/m4/environ.m4: Update.
* gnulib/import/m4/errno_h.m4: Update.
* gnulib/import/m4/error.m4: Update.
* gnulib/import/m4/exponentd.m4: Update.
* gnulib/import/m4/exponentl.m4: Update.
* gnulib/import/m4/extensions.m4: Update.
* gnulib/import/m4/extern-inline.m4: Update.
* gnulib/import/m4/fchdir.m4: Update.
* gnulib/import/m4/fcntl-o.m4: Update.
* gnulib/import/m4/fcntl.m4: Update.
* gnulib/import/m4/fcntl_h.m4: Update.
* gnulib/import/m4/fdopendir.m4: Update.
* gnulib/import/m4/filenamecat.m4: Update.
* gnulib/import/m4/flexmember.m4: Update.
* gnulib/import/m4/float_h.m4: Update.
* gnulib/import/m4/fnmatch.m4: Update.
* gnulib/import/m4/fnmatch_h.m4: Update.
* gnulib/import/m4/fpieee.m4: Update.
* gnulib/import/m4/frexp.m4: Update.
* gnulib/import/m4/frexpl.m4: Update.
* gnulib/import/m4/fstat.m4: Update.
* gnulib/import/m4/fstatat.m4: Update.
* gnulib/import/m4/getcwd-abort-bug.m4: Update.
* gnulib/import/m4/getcwd-path-max.m4: Update.
* gnulib/import/m4/getcwd.m4: Update.
* gnulib/import/m4/getdtablesize.m4: Update.
* gnulib/import/m4/getlogin.m4: Update.
* gnulib/import/m4/getlogin_r.m4: Update.
* gnulib/import/m4/getpagesize.m4: Update.
* gnulib/import/m4/getprogname.m4: Update.
* gnulib/import/m4/gettimeofday.m4: Update.
* gnulib/import/m4/glibc21.m4: Update.
* gnulib/import/m4/glob.m4: Update.
* gnulib/import/m4/glob_h.m4: Update.
* gnulib/import/m4/gnulib-cache.m4: Update.
* gnulib/import/m4/gnulib-common.m4: Update.
* gnulib/import/m4/gnulib-comp.m4: Update.
* gnulib/import/m4/gnulib-tool.m4: Update.
* gnulib/import/m4/hard-locale.m4: Update.
* gnulib/import/m4/include_next.m4: Update.
* gnulib/import/m4/inttypes-pri.m4: Update.
* gnulib/import/m4/inttypes.m4: Update.
* gnulib/import/m4/isnand.m4: Update.
* gnulib/import/m4/isnanl.m4: Update.
* gnulib/import/m4/largefile.m4: Update.
* gnulib/import/m4/limits-h.m4: Update.
* gnulib/import/m4/localcharset.m4: Update.
* gnulib/import/m4/locale-fr.m4: Update.
* gnulib/import/m4/locale-ja.m4: Update.
* gnulib/import/m4/locale-zh.m4: Update.
* gnulib/import/m4/localtime-buffer.m4: Update.
* gnulib/import/m4/longlong.m4: Update.
* gnulib/import/m4/lstat.m4: Update.
* gnulib/import/m4/malloc.m4: Update.
* gnulib/import/m4/malloca.m4: Update.
* gnulib/import/m4/math_h.m4: Update.
* gnulib/import/m4/mbrtowc.m4: Update.
* gnulib/import/m4/mbsinit.m4: Update.
* gnulib/import/m4/mbsrtowcs.m4: Update.
* gnulib/import/m4/mbstate_t.m4: Update.
* gnulib/import/m4/memchr.m4: Update.
* gnulib/import/m4/memmem.m4: Update.
* gnulib/import/m4/mempcpy.m4: Update.
* gnulib/import/m4/memrchr.m4: Update.
* gnulib/import/m4/mkdir.m4: Update.
* gnulib/import/m4/mkstemp.m4: Update.
* gnulib/import/m4/mmap-anon.m4: Update.
* gnulib/import/m4/mode_t.m4: Update.
* gnulib/import/m4/msvc-inval.m4: Update.
* gnulib/import/m4/msvc-nothrow.m4: Update.
* gnulib/import/m4/multiarch.m4: Update.
* gnulib/import/m4/nocrash.m4: Update.
* gnulib/import/m4/off_t.m4: Update.
* gnulib/import/m4/onceonly.m4: Update.
* gnulib/import/m4/open-cloexec.m4: Update.
* gnulib/import/m4/open.m4: Update.
* gnulib/import/m4/openat.m4: Update.
* gnulib/import/m4/opendir.m4: Update.
* gnulib/import/m4/pathmax.m4: Update.
* gnulib/import/m4/rawmemchr.m4: Update.
* gnulib/import/m4/readdir.m4: Update.
* gnulib/import/m4/readlink.m4: Update.
* gnulib/import/m4/realloc.m4: Update.
* gnulib/import/m4/rename.m4: Update.
* gnulib/import/m4/rewinddir.m4: Update.
* gnulib/import/m4/rmdir.m4: Update.
* gnulib/import/m4/save-cwd.m4: Update.
* gnulib/import/m4/secure_getenv.m4: Update.
* gnulib/import/m4/setenv.m4: Update.
* gnulib/import/m4/signal_h.m4: Update.
* gnulib/import/m4/ssize_t.m4: Update.
* gnulib/import/m4/stat-time.m4: Update.
* gnulib/import/m4/stat.m4: Update.
* gnulib/import/m4/std-gnu11.m4: Update.
* gnulib/import/m4/stdbool.m4: Update.
* gnulib/import/m4/stddef_h.m4: Update.
* gnulib/import/m4/stdint.m4: Update.
* gnulib/import/m4/stdio_h.m4: Update.
* gnulib/import/m4/stdlib_h.m4: Update.
* gnulib/import/m4/strchrnul.m4: Update.
* gnulib/import/m4/strdup.m4: Update.
* gnulib/import/m4/strerror.m4: Update.
* gnulib/import/m4/string_h.m4: Update.
* gnulib/import/m4/strstr.m4: Update.
* gnulib/import/m4/strtok_r.m4: Update.
* gnulib/import/m4/sys_socket_h.m4: Update.
* gnulib/import/m4/sys_stat_h.m4: Update.
* gnulib/import/m4/sys_time_h.m4: Update.
* gnulib/import/m4/sys_types_h.m4: Update.
* gnulib/import/m4/tempname.m4: Update.
* gnulib/import/m4/time_h.m4: Update.
* gnulib/import/m4/unistd-safer.m4: Update.
* gnulib/import/m4/unistd_h.m4: Update.
* gnulib/import/m4/warn-on-use.m4: Update.
* gnulib/import/m4/wchar_h.m4: Update.
* gnulib/import/m4/wchar_t.m4: Update.
* gnulib/import/m4/wctype_h.m4: Update.
* gnulib/import/m4/wint_t.m4: Update.
* gnulib/import/malloc.c: Update.
* gnulib/import/malloc/scratch_buffer.h: Update.
* gnulib/import/malloc/scratch_buffer_grow.c: Update.
* gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
* gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
* gnulib/import/malloca.c: Update.
* gnulib/import/malloca.h: Update.
* gnulib/import/malloca.valgrind: Update.
* gnulib/import/math.in.h: Update.
* gnulib/import/mbrtowc.c: Update.
* gnulib/import/mbsinit.c: Update.
* gnulib/import/mbsrtowcs-impl.h: Update.
* gnulib/import/mbsrtowcs-state.c: Update.
* gnulib/import/mbsrtowcs.c: Update.
* gnulib/import/memchr.c: Update.
* gnulib/import/memmem.c: Update.
* gnulib/import/mempcpy.c: Update.
* gnulib/import/memrchr.c: Update.
* gnulib/import/mkdir.c: Update.
* gnulib/import/mkstemp.c: Update.
* gnulib/import/msvc-inval.c: Update.
* gnulib/import/msvc-inval.h: Update.
* gnulib/import/msvc-nothrow.c: Update.
* gnulib/import/msvc-nothrow.h: Update.
* gnulib/import/open.c: Update.
* gnulib/import/openat-die.c: Update.
* gnulib/import/openat-priv.h: Update.
* gnulib/import/openat-proc.c: Update.
* gnulib/import/openat.c: Update.
* gnulib/import/openat.h: Update.
* gnulib/import/opendir.c: Update.
* gnulib/import/pathmax.h: Update.
* gnulib/import/pipe-safer.c: Update.
* gnulib/import/rawmemchr.c: Update.
* gnulib/import/readdir.c: Update.
* gnulib/import/readlink.c: Update.
* gnulib/import/realloc.c: Update.
* gnulib/import/ref-add.sin: Update.
* gnulib/import/ref-del.sin: Update.
* gnulib/import/rename.c: Update.
* gnulib/import/rewinddir.c: Update.
* gnulib/import/rmdir.c: Update.
* gnulib/import/same-inode.h: Update.
* gnulib/import/save-cwd.c: Update.
* gnulib/import/save-cwd.h: Update.
* gnulib/import/scratch_buffer.h: Update.
* gnulib/import/secure_getenv.c: Update.
* gnulib/import/setenv.c: Update.
* gnulib/import/signal.in.h: Update.
* gnulib/import/stat-time.c: Update.
* gnulib/import/stat-time.h: Update.
* gnulib/import/stat-w32.c: Update.
* gnulib/import/stat-w32.h: Update.
* gnulib/import/stat.c: Update.
* gnulib/import/stdbool.in.h: Update.
* gnulib/import/stddef.in.h: Update.
* gnulib/import/stdint.in.h: Update.
* gnulib/import/stdio.in.h: Update.
* gnulib/import/stdlib.in.h: Update.
* gnulib/import/str-two-way.h: Update.
* gnulib/import/strchrnul.c: Update.
* gnulib/import/strdup.c: Update.
* gnulib/import/streq.h: Update.
* gnulib/import/strerror-override.c: Update.
* gnulib/import/strerror-override.h: Update.
* gnulib/import/strerror.c: Update.
* gnulib/import/string.in.h: Update.
* gnulib/import/stripslash.c: Update.
* gnulib/import/strnlen1.c: Update.
* gnulib/import/strnlen1.h: Update.
* gnulib/import/strstr.c: Update.
* gnulib/import/strtok_r.c: Update.
* gnulib/import/sys_stat.in.h: Update.
* gnulib/import/sys_time.in.h: Update.
* gnulib/import/sys_types.in.h: Update.
* gnulib/import/tempname.c: Update.
* gnulib/import/tempname.h: Update.
* gnulib/import/time.in.h: Update.
* gnulib/import/unistd--.h: Update.
* gnulib/import/unistd-safer.h: Update.
* gnulib/import/unistd.in.h: Update.
* gnulib/import/unsetenv.c: Update.
* gnulib/import/verify.h: Update.
* gnulib/import/extra/snippet/warn-on-use.h: Update.
* gnulib/import/wchar.in.h: Update.
* gnulib/import/wctype.in.h: Update.
* gnulib/import/xalloc-oversized.h: Update.
* gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
"53e2c179f26a890fa6685af4b6c1397ee370433b".
commit 8ec235834d454a66a89fe16bc62e11497eb79078
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Sep 10 17:11:01 2018 +0100
Remove unused variable in record-btrace.c
old_inferior_ptid is unused, this is caught by a gcc built from git
recently, not sure about previous versions:
/home/emaisin/src/binutils-gdb/gdb/record-btrace.c: In function âframe_info* get_thread_current_frame(thread_info*)â:
/home/emaisin/src/binutils-gdb/gdb/record-btrace.c:1974:10: error: unused variable âold_inferior_ptidâ [-Werror=unused-variable]
1974 | ptid_t old_inferior_ptid;
| ^~~~~~~~~~~~~~~~~
gdb/ChangeLog:
* record-btrace.c (get_thread_current_frame): Remove
old_inferior_ptid.
commit 1f5d1570c0eaadbb72d450211f70b24c4c23ac8e
Author: Jerome Guitton <guitton@adacore.com>
Date: Mon Sep 10 10:37:52 2018 -0500
(Ada) Fix resolving of homonym components in tagged types
ada_value_struct_elt is used when displaying a component (say, 'N') of
a record object (say, 'Obj') of type, say, 't1'. Now if Obj is tagged
(Ada parlance: "tagged types" are what other object-oriented languages
call "classes"), then 'N' may not be visible in the current view and
we need to look for it in its actual type. We do that at the same time
as resolving variable-length fields. This would typically be done by
the following call to ada_value_struct_elt, with the last parameter
check_tag set to 1:
t1 = ada_to_fixed_type (ada_get_base_type (t1), NULL,
address, NULL, 1);
This is the general logic, but recently we introduced a special case
to handle homonyms. Different components may have the same name in a
tagged type. For instance:
type Top_T is tagged record
N : Integer := 1;
end record;
type Middle_T is new Top.Top_T with record
N : Character := 'a';
end record;
Middle_T extends Top_T and both define a (different) component with
the same name ('N'). In such a case, using the actual type of a
Middle_T object would create a confusion, since we would have two
component 'N' in this actual type.
So, to handle homonyms, we convert t1 to the actual type *if
and only if* N cannot be found in the current view. For example, if Obj
has been created as a Middle_T but is seen as a Top_T'Class at our
point of execution, then "print Obj.N" will display the integer field
defined in Top_T's declaration.
Now, even if we find N in the current view, we still have to get a
fixed type: for instance, the record can be unconstrained and we still
need a fixed type to get the proper offset to each field. That is
to say, in this case:
type Dyn_Top_T (Disc : Natural) is tagged record
S : Integer_Array (1 .. Disc) := (others => Disc);
N : Integer := 1;
end record;
type Dyn_Middle_T is new Dyn_Top.Dyn_Top_T with record
N : Character := 'a';
U : Integer := 42;
end record;
If we have an object Obj of type Dyn_Middle_T and we want to display
U, we don't need to build, from its tag, a real type with all its real
fields. In other words, we don't need to add the parent components:
Disc, S, and the integer N. We only need to access U and it is
directly visible in Dyn_Middle_T. So no tag handling. However, we do
need to build a fixed-size type to have the proper offset to U (since
this offset to U depends on the size of Obj.S, which itself is dynamic
and depends on the value of Obj.Disc).
We accidentally lost some of this treatment when we introduced the
resolution of homonyms. This patch re-install this part by uncoupling
the tag resolution from the "fixing" of variable-length components.
This change also slightly simplifies the non-tagged case: in the
non-tagged case, no need to set check_tag to 1, since we already know
that there is no tag.
gdb/ChangeLog:
* ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
with check_tag to 1 if and only if the type is tagged and the
component being searched cannot been found in the current
view. Otherwise, always call ada_to_fixed_type with
check_tag to 0.
gdb/testsuite/ChangeLog:
* gdb.ada/same_component_name: Add test for case of tagged record
with variable-length fields.
commit d91e9ea81dce83259f2a7f32f43876373f3e7981
Author: Xavier Roirand <roirand@adacore.com>
Date: Mon Sep 10 10:35:58 2018 -0500
(Ada) Cleanup code by using ada_is_access_to_unconstrained_array call.
This patch just avoids code duplication by using a function we
introduced recently (ada_is_access_to_unconstrained_array).
gdb/ChangeLog:
* ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
declaration.
* ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
* ada-varobj.c (ada_varobj_get_number_of_children,
ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
Tested on x86_64-linux.
No new testcase provided, as this is just a refactoring.
commit cc330e39bc938cefd4cfc581639177ef4c6bcbe3
Author: Xavier Roirand <roirand@adacore.com>
Date: Mon Sep 10 10:34:59 2018 -0500
(Ada) Fix printing of access to unconstrained arrays
Using this Ada code:
type String_Access is access String;
type Array_Of_String is array (1 .. 2) of String_Access;
Aos : Array_Of_String := (new String'("ab"), new String'("cd"));
When debugging with GDB, printing each Aos element displays:
(gdb) print Aos(1)
$2 = "ab"
(gdb) print Aos(2)
$3 = "cd"
Whereas it should display:
(gdb) print Aos(1)
$2 = (foo_r118_024.string_access) 0x635018
(gdb) print Aos(2)
$3 = (foo_r118_024.string_access) 0x635038
Notice that printing the entire array works:
(gdb) print Aos
$1 = (0x635018, 0x635038)
The problem was located in ada_value_print function and due to the fact
that the value_type used in this function was based on
value_enclosing_type rather than value_type itself.
In our example, the difference between the value_type and the
value_enclosing_type of the value is that the value_type contains an
additional typedef layer which is not present in the value_enclosing_type.
This typedef layer is GNAT's way to specify that the element is, at the
source level, an access to the unconstrained array, rather than the
unconstrained array.
Moreover, the value_enclosing_type is not really needed in that case and
the value_type can be used instead in this function, and this patch fixes
this.
gdb/ChangeLog:
* ada-valprint.c (ada_value_print): Use type instead of
enclosing type.
testsuite/ChangeLog:
* gdb.ada/access_to_unbounded_array.exp: New testcase.
* gdb.ada/access_to_unbounded_array/foo.adb: New file.
* gdb.ada/access_to_unbounded_array/pack.adb: New file.
* gdb.ada/access_to_unbounded_array/pack.ads: New file.
Tested: x86_64-linux
commit b9c50e9a9ac48662b2132583c52d46976efb3512
Author: Xavier Roirand <roirand@adacore.com>
Date: Mon Sep 10 10:33:32 2018 -0500
(Ada/MI) Fix -var-evaluate-expression for access to unconstrained arrays
Using this Ada code:
type String_Access is access String;
type Array_Of_String is array (1 .. 2) of String_Access;
Aos : Array_Of_String := (new String'("ab"), new String'("cd"));
In GDB/MI mode, create a variable which type is Aos, evaluate it:
(gdb) -var-create var1 * Aos
^done,name="var1",numchild="2",value="[2]",type="bar.array_of_string",thread-id="1",has_more="0"
Now print it:
(gdb) -var-list-children 1 var1
^done,numchild="2",children=[child={name="var1.1",exp="1",numchild="1",value="[2] \"ab\"", type="bar.string_access",thread-id="1"},child={name="var1.2",exp="2",numchild="1",value="[2] \"cd\"", type="bar.string_access",thread-id="1"}],has_more="0"
But printed fields "value" are wrong, since it should be:
^done,numchild="2",children=[child={name="var1.1",exp="1",numchild="1",value="0x634018",type="bar.string_access",thread-id="1"},child={name="var1.2",exp="2",numchild="1",value="0x634038",type="bar.string_access",thread-id="1"}],has_more="0"^M
Print each child of var1:
(gdb) -var-evaluate-expression var1.1
^done,value="[2] \"ab\""
(gdb) -var-evaluate-expression var1.2
^done,value="[2] \"cd\""
Whereas it should be
(gdb) -var-evaluate-expression var1.1
^done,value="0x635018"
(gdb) -var-evaluate-expression var1.2
^done,value="0x635038"
This patch fixes this.
gdb/ChangeLog:
* ada-lang.c (ada_value_subscript): Handle case when parameter is
an array of access to unconstrained array.
testsuite/ChangeLog
* gdb.ada/mi_string_access.exp: New testcase.
* gdb.ada/mi_string_access/bar.adb: New file.
* gdb.ada/mi_string_access/pck.adb: New file.
* gdb.ada/mi_string_access/pck.asd: New file.
Tested on x86_64-linux.
commit 736ade86ea3dd3df31120b6c617d64c88bcc86c1
Author: Xavier Roirand <roirand@adacore.com>
Date: Mon Sep 10 10:32:00 2018 -0500
(Ada) New function ada_is_access_to_unconstrained_array
Add a new function to check if a given type is an access to an
unconstrained array. This function contains code that is present only
once in the current sources but will be used in a future patch.
gdb/ChangeLog:
* ada-lang.c (ada_is_access_to_unconstrained_array): New function.
(ada_check_typedef): Use it.
Tested on x86_64-linux.
commit 2963898f38dab323a9e381d7c41a26b9c3498882
Author: Xavier Roirand <roirand@adacore.com>
Date: Mon Sep 10 10:30:50 2018 -0500
(Ada) Fix -var-list-children MI command for union type
Using this Ada code:
type Union_Type (A : Boolean := False) is record
case A is
when True => B : Integer;
when False => C : Float;
end case;
end record;
pragma Unchecked_Union (Union_Type);
Ut : Union_Type := (A => True, B => 3);
In GDB/MI mode, once creating a varobj from variable "Ut" as follow:
(gdb) -var-create var1 * ut
^done,name="var1",numchild="2",value="{...}",type="foo.union_type",thread-id="1",has_more="0"
Printing the list of its children displays:
(gdb) -var-list-children 1 var1
^error,msg="Duplicate variable object name"
Whereas it should be
(gdb) -var-list-children 1 var1
^done,numchild="2",children=[child={name="var1.b",exp="b",numchild="0",value="3",type="integer",thread-id="1"},child={name="var1.c",exp="c",numchild="0",value="4.20389539e-45",type="float",thread-id="1"}],has_more="0"
The problem occurs because ada_varobj_describe_struct_child wasn't
handling unions. This patch fixes this.
gdb/ChangeLog:
* ada-varobj.c (ada_varobj_describe_struct_child)
(ada_varobj_describe_child): Handle union case like struct one.
testsuite/ChangeLog
* gdb.ada/mi_var_union.exp: New testcase.
* gdb.ada/mi_var_union/bar.adb: New file.
* gdb.ada/mi_var_union/pck.adb: New file.
* gdb.ada/mi_var_union/pck.asd: New file.
Tested on x86_64-linux.
commit 849cba3b83f8b808521ef5b1aaa8fb33c04bd9fa
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 8 14:00:48 2018 -0600
Remove periods from Python section titles
This removes the remaining trailing periods from the Python section
titles. I thought these looked weird and I don't this is generally
done in the gdb documentation.
gdb/doc/ChangeLog
2018-09-10 Tom Tromey <tom@tromey.com>
* python.texi (Frames In Python, Blocks In Python)
(Symbols In Python, Symbol Tables In Python)
(Lazy Strings In Python): Remove periods from section titles.
commit 27a9fec6aa2637715a4631f79fb46372a37f868a
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 8 13:50:09 2018 -0600
Swap two sentences in the Pretty Printing API node
I thought the start of the Pretty Printing API node read a bit
strangely. This patch swaps the first two sentences, which seems
better.
gdb/doc/ChangeLog
2018-09-10 Tom Tromey <tom@tromey.com>
* python.texi (Pretty Printing API): Swap sentence order.
commit 9da10427ddcfae7313c462f729407e0c7c59e2d8
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 8 13:44:24 2018 -0600
Mention virtual tables in Python dynamic_type documentation
PR python/16461 asks that the Python dynamic_type documentation
mention virtual tables; this patch implements that request.
gdb/doc/ChangeLog
2018-09-10 Tom Tromey <tom@tromey.com>
PR python/16461:
* python.texi (Values From Inferior): Mention use of virtual
table.
commit 0d2a583976a87221d11c2639ede8f764e0c26059
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 8 13:40:50 2018 -0600
Small typo fix in Basic Python node
I noticed that the decode_line documentation did not have parens
around the argument:
-- Function: gdb.decode_line [expression]
This patch fixes this oversight.
gdb/doc/ChangeLog
2018-09-10 Tom Tromey <tom@tromey.com>
* python.texi (Basic Python): Parenthesize argument to
decode_line.
commit 05c6bdc1a935243d19eb9dc3799321c96b660d68
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 8 13:37:26 2018 -0600
Mention Python versions in the documentation
This updates python.texi to note that gdb can be compiled against
either major version of Python. It also removes the "execfile"
example, because that is specific to Python 2.
gdb/doc/ChangeLog
2018-09-10 Tom Tromey <tom@tromey.com>
* python.texi (Python): Mention Python versions. Don't mention
execfile.
commit e7b5068cc22f1a5707a9fd0310234b8d7300f227
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 8 13:25:34 2018 -0600
Update Python unwinder documentation
PR python/19808 points out a few issues in the Python unwinder
documentation. This patch update the documentation for
create_unwind_info and read_register to address the issues noted, and
adds a cautionary note about writing an unwinder.
gdb/doc/ChangeLog
2018-09-10 Tom Tromey <tom@tromey.com>
PR python/19808:
* python.texi (Unwinding Frames in Python): Rewrite
create_unwind_info documentation. Update read_register
documentation and add a note about unwinder caution.
commit fb5af5e335202bc94c292c83eaa328633cd5d924
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 8 10:59:14 2018 -0600
Fix gdb.events.inferior_call documentation
PR python/18909 points out that the gdb.events.inferior_call
documentation was incorrect. This patch brings it in line with the
code.
gdb/doc/ChangeLog
2018-09-10 Tom Tromey <tom@tromey.com>
PR python/18909:
* python.texi (Events In Python): Fix inferior_call
documentation.
commit 521b499b963562793e5dbbcc1df8357cdf2757a7
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 8 10:16:46 2018 -0600
Update Python frame filter documentation
This fixes a few frame filter documentation omissions noted in
PR python/17752.
gdb/doc/ChangeLog
2018-09-10 Tom Tromey <tom@tromey.com>
PR python/17752:
* python.texi (Frame Filter API): Remove period from subsection
title. Mention 100 as good default priority.
(Frame Decorator API): Remove period from subsection title.
Mention FrameDecorator module.
commit 4a5a194ae8a871a781d4cdc73c7ba3ae7deafbaa
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 8 09:39:41 2018 -0600
Reword gdb.GdbError text
PR python/23108 points out that the gdb.GdbError documentation is
somewhat difficult to find. The exception is apparently just
mentioned in passing. This patch introduces a new table and adds a
bit more text to try to make it more obvious.
gdb/doc/ChangeLog
2018-09-10 Tom Tromey <tom@tromey.com>
PR python/23108:
* python.texi (Exception Handling): Rearrange gdb.GdbError text
and add a table.
commit f5a476a7b19f43dce8d15ae3e5deb7027f71ab7b
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 8 09:29:18 2018 -0600
Avoid warnings from makeinfo
"make info" gives a number of warnings about the use of a "." in
@ref-like commands. These come from the ".info" suffix. I think this
suffix is redundant, and removing the suffix also removes the warning.
gdb/doc/ChangeLog
2018-09-10 Tom Tromey <tom@tromey.com>
* gdb.texinfo (Compilation): Use "gcc", not "gcc.info", in @xref.
(Machine Code): Use "binutils", not "binutils.info", in @pxref.
(Separate Debug Files): Use "ld", not "ld.info", in @ref.
* python.texi (Objfiles In Python): Use "ld", not "ld.info", in @ref.
commit a154931ef1ef1c588c0e7da5e5fd4658c5dd28f5
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 8 09:13:37 2018 -0600
Fix help text for "python" command
PR python/18380 points out that the example in the "help python" text
will only work in Python 2. This changes the example to be valid
syntax for both Python 2 and Python 3.
gdb/ChangeLog
2018-09-10 Tom Tromey <tom@tromey.com>
PR python/18380:
* python/python.c (_initialize_python): Make example in "python"
help work in Python 3.
commit 60c0454d3dda99635d331f6002f3f04fe34546a7
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 8 09:08:56 2018 -0600
Document that Frame.block can throw
PR python/16484 points out that Frame.block can throw an exception,
but this is not documented.
This patch fixes the documentation. Changing Frame.block to return
None would be nice, but I suspect it's too late for that change.
gdb/doc/ChangeLog
2018-09-10 Tom Tromey <tom@tromey.com>
PR python/16484:
* python.texi (Frames In Python): Document that Frame.block can
throw.
commit 088a96da059ce14fe1dff369873b1dcf7151e29a
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 8 09:03:29 2018 -0600
Fix typo in pretty-printer example
PR python/23487 points out that the "disable pretty-printer" example
has a typo that makes it incorrect. This patch fixes the typo.
gdb/doc/ChangeLog
2018-09-10 Tom Tromey <tom@tromey.com>
PR python/23487:
* gdb.texinfo (Pretty-Printer Commands): Fix typo in example.
commit 22eb9e92ea9b5fd1ed83cfc093d7da6d18643149
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 8 08:59:00 2018 -0600
Update Python Block.end documentation
PR python/16033 points out that Block.end doesn't describe whether it
is inclusive or exclusive. This patch fixes the documentation.
gdb/doc/ChangeLog
2018-09-10 Tom Tromey <tom@tromey.com>
PR python/16033:
* python.texi (Blocks In Python): Document that Block.end is
exclusive.
commit 23c4651c060c123493de004ef61d8ed052d46113
Author: Eli Zaretskii <eliz@gnu.org>
Date: Mon Sep 10 10:14:04 2018 +0300
Fix "make install-strip" failure to install gdb-add-index.sh
gdb/ChangeLog:
2018-09-10 Eli Zaretskii <eliz@gnu.org>
* Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
INSTALL_PROGRAM to install gdb-add-index.sh. Don't append
$(EXEEXT) to the script, as it is not a program.
commit f9853190c8d90e9f7d43fae90478a0db291f9c03
Author: Alan Modra <amodra@gmail.com>
Date: Mon Sep 10 11:57:08 2018 +0930
PR23611, objcopy is not removing executable relocatable sections
BFD handles ELF relocation sections in an executable differently to
relocation sections in a relocatable object. For a relocatable
object, BFD carries the relocations as data associated with the
section to which they apply; The relocation section doesn't appear as
a separate section. For an executable, dynamic relocation sections do
appear as separate sections. This means that objcopy needs to use
different strategies when dealing with relocations.
When --remove-relocations was added to objcopy with commit
d3e5f6c8f1e, objcopy lost the ability to remove dynamic relocation
sections such as .rela.plt from executables using the option
"--remove-section=.rela.plt". This patch reinstates that
functionality.
I thought it best to keep --remove-relocations as is, rather than
extending to handle dynamic relocations as per the patch in the PR,
because executables linked with --emit-relocs may have both dynamic
and non-dynamic relocations. In that case --remove-relocataions=* is
useful to remove all the non-dynamic relocations.
PR binutils/23611
* objcopy.c (handle_remove_section_option): Consider .rela and
.rel sections for stripping directly as well as attached to the
associated section they relocate.
* doc/binutils.texi (remove-relocations): Specify that this
option removes non-dynamic relocation sections.
* testsuite/binutils-all/objcopy.exp
(objcopy_remove_relocations_from_executable): New test.
commit 78f8307c93755eb581c20ba049f1b092f161d513
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Sep 10 00:00:50 2018 +0000
Automatic date update in version.in
commit a5c5eda7e412aa7f3cb843cd48b3b4c0101718a0
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Sun Sep 9 08:13:17 2018 +0100
python: Make two functions return gdbpy_ref<>
I noticed that we release a gdbpy_ref in pretty_print_one_value only to
create it again later. This patch fills the gap by returning a
gdbpy_ref all the way.
gdb/ChangeLog:
* python/py-prettyprint.c (pretty_print_one_value): Return
gdbpy_ref<>.
(print_string_repr): Adjust.
(apply_varobj_pretty_printer): Return gdbpy_ref<>.
* python/python-internal.h (apply_varobj_pretty_printer): Return
gdbpy_ref<>.
* varobj.c (varobj_value_get_print_value): Adjust.
commit 1aac008f1c2f0a239b7ba26efe9d6b68044cddf8
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 8 21:47:53 2018 -0600
Make py-prettyprint.exp test names unique
I noticed that the py-prettyprint.exp test names were not unique.
This patch fixes the problem via with_test_prefix.
gdb/testsuite/ChangeLog
2018-09-08 Tom Tromey <tom@tromey.com>
* gdb.python/py-prettyprint.exp: Use with_test_prefix.
commit 332cf4c9251a31f0addc2ce2970c9a8bb0c16f96
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 8 14:40:38 2018 -0600
Allow a pretty-printer without a to_string method
PR python/16047 points out that, while the documentation says that the
to_string method is optional for a pretty-printer, the code disagrees
and throws an exception. This patch fixes the problem. varobj is
already ok here.
Tested on x86-64 Fedora 26.
gdb/ChangeLog
2018-09-08 Tom Tromey <tom@tromey.com>
PR python/16047:
* python/py-prettyprint.c (pretty_print_one_value): Check for
to_string method.
gdb/testsuite/ChangeLog
2018-09-08 Tom Tromey <tom@tromey.com>
PR python/16047:
* gdb.python/py-prettyprint.py (pp_int_typedef3): New class.
(register_pretty_printers): Register new printer.
* gdb.python/py-prettyprint.exp (run_lang_tests): Add int_type3
test.
* gdb.python/py-prettyprint.c (int_type3): New typedef.
(an_int_type3): New global.
commit 0653638f9f0efdb1561db8e2faff2580e09658af
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Sep 9 00:01:14 2018 +0000
Automatic date update in version.in
commit 424da6cf3b30b889ff577b1babd09777148dc0e0
Author: Joel Brobecker <brobecker@adacore.com>
Date: Sat Sep 8 16:51:36 2018 -0500
(Ada) fix handling of expression with parameterless function call
Consider the following function, which takes no parameter and returns
an integer:
function Something return Integer;
For the purpose of this discussion, our function has been implemented
to always return 124:
function Something return Integer is
begin
return 124;
end Something;
In Ada, such function can been called without using the parentheses.
For instance, in the statement below, variable My_Value is assigned
the returned value from the call to Something:
My_Value := Something;
The Ada expression interpeter in GDB supports this case, as we can
see below:
(gdb) print something
$1 = 124
However, we get fairly strange results when trying to use this feature
as part of a larger expression. For instance:
(gdb) print something + 1
$2 = 248
The problem occurs while doing the resolution pass of the expression.
After prefixying the expression, we obtain the following expression:
0 BINOP_ADD
1 OP_VAR_VALUE Block @0x2021550, symbol @0x20213a0 (pck.something)
5 OP_LONG Type @0x1e3c170 (int), value 1 (0x1)
The resolution pass is then expected to remove the OP_VAR_VALUE
entry, and replace it with an OP_FUNCALL. This is what the call
to replace_operator_with_call in ada-lang.c::resolve_subexp is
expected to do:
if (deprocedure_p
&& (TYPE_CODE (SYMBOL_TYPE (exp->elts[pc + 2].symbol))
== TYPE_CODE_FUNC))
{
replace_operator_with_call (expp, pc, 0, 0,
exp->elts[pc + 2].symbol,
exp->elts[pc + 1].block);
exp = expp->get ();
}
The problem is that we're passing OPLEN (zero -- 4th parameter in
the call), and so replace_operator_with_call ends up removing zero
element from our expression, and inserting the corresponding OP_FUNCALL
instead. As a result, instead of having the OP_LONG (1) as the second
argument of the BINOP_ADD, it is now the OP_VAR_VALUE that we were
meant to replace. That OP_VAR_VALUE then itself gets transformed into
an OP_FUNCALL, with the same issue, and eventually, the resolved
expression now looks like this:
0 BINOP_ADD
1 OP_FUNCALL Number of args: 0
4 OP_VAR_VALUE Block @0x2021550, symbol @0x20213a0 (pck.something)
8 OP_FUNCALL Number of args: 0
11 OP_VAR_VALUE Block @0x2021550, symbol @0x20213a0 (pck.something)
15 OP_VAR_VALUE Block @0x2021550, symbol @0x20213a0 (pck.something)
19 OP_LONG Type @0x1e3c170 (int), value 1 (0x1)
This explains why we get twice the result of the function call
instead of its value plus one. The extra entries in the expression
at the end are just ignored.
This patch fixes the issue by calling replace_operator_with_call
with the correct OPLEN equal to the size of an OP_VAR_VALUE (4).
gdb/ChangeLog:
* ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
replace_operator_with_call.
gdb/testsuite/ChangeLog:
* gdb.ada/expr_with_funcall: New testcase.
commit 95f39a5b2755e5aaaceb6248e585f8a593542331
Author: Joel Brobecker <brobecker@adacore.com>
Date: Sat Sep 8 16:50:00 2018 -0500
ada-lang.c::ada_value_cast: remove unnecessary parentheses
No other code change.
gdb/ChangeLog:
* ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
commit 16b9eb7bfa56f060d183aa44165bf75cb3c414d8
Author: Joel Brobecker <brobecker@adacore.com>
Date: Sat Sep 8 16:49:10 2018 -0500
(Ada) slightly incorrect bounds for type of array indexed by enum
Consider the following code:
type Enumerated is (Enum_A, Enum_B, Enum_C, Enum_Last);
type Table is array (Enumerated) of Integer;
-- Declare a variable of type Table to make sure the compiler
-- does emit the debugging information for that type.
V : Table := (others => 1);
Trying to print the type description of type Table, or of variable V
yields:
(gdb) ptype v
type = array (0 .. 3) of integer
(gdb) ptype example.table
type = array (0 .. 3) of integer
The compiler generates an XA type for the bounds...
<1><cf6>: Abbrev Number: 13 (DW_TAG_structure_type)
<cf7> DW_AT_name : example__table___XA
... whose member is described as being as:
<2><cfe>: Abbrev Number: 14 (DW_TAG_member)
<cff> DW_AT_name : example__enumerated
<d05> DW_AT_type : <0xc69>
This leads us to DIE 0xc69, which is our enumeration type:
<2><c69>: Abbrev Number: 4 (DW_TAG_enumeration_type)
<c6a> DW_AT_name : example__enumerated
Normally, for arrays, we expect a range type, rather than an enumerated
type. However, for a situation like this, where the range of the array
index is the full enumeration type, it seems like a waste to require
an extra range layer.
Instead, looking at print_range, we see that we print the bounds
of our range using the target type:
target_type = TYPE_TARGET_TYPE (type);
if (target_type == NULL)
target_type = type;
[...]
ada_print_scalar (target_type, lo, stream);
fprintf_filtered (stream, " .. ");
ada_print_scalar (target_type, hi, stream);
In this case, this causes us to use the enumerated type's subtype,
which is a plain integer type, hence the output we get. However,
there is no reason for using the target type, even in the TYPE_CODE_RANGE
situation. So this patch fixes the issue by simply printing the bounds
using the type being given, instead of its target type.
gdb/ChangeLog:
* ada-typeprint.c (print_range): Print the bounds using TYPE
rather than its TYPE_TARGET_TYPE.
A new test for this isn't necessary, as existing tests will demonstrate
this issue once a change in the compiler triggering the generation of
this type of debugging info gets pushed.
commit d8ce91275e421dfe57aa4e79bb9a58824c155e96
Author: Joel Brobecker <brobecker@adacore.com>
Date: Sat Sep 8 16:48:04 2018 -0500
minor reformatting in ada-lang.c::ada_to_fixed_value
The arguments in the call to ada_to_fixed_value_create where
improperly aligned. But I also noticed that all the arguments
do fit on a single-line (up to 79 characters). So this patch
just fixes the code by putting everything on that same line.
gdb/ChangeLog:
* ada-lang.c (ada_to_fixed_value): Minor reformatting in
call to ada_to_fixed_value_create.
commit 0d81f350ec01630ef7cd9ae4385a1dc504c54d73
Author: Jerome Guitton <guitton@adacore.com>
Date: Sat Sep 8 16:47:11 2018 -0500
Handle PPC64 function descriptor in Ada decoding
On PPC64, the entry point of the function "FN" is ".FN" when a function
descriptor is used. One of the consequences of this is that GDB then
presents the name of the function to the user (eg: in backtraces) with
the leading dot, which is a low-level internal detail that the user
should not be seeing. The Ada decoding should strip it.
gdb/ChangeLog:
* ada-lang.c (ada_decode): strip dot prefix in symbol name.
No testcase added, as a number of existing testcases should already
demonstrate that problem.
commit 57aff202b4b17a05d73e71680a26fe12a817f110
Author: Joel Brobecker <brobecker@adacore.com>
Date: Sat Sep 8 16:46:08 2018 -0500
(Ada) "catch assert" spurious internal error
We noticed while debugging a program compiled without assertions
enabled and using an older compiler that inserting a catchpoint
on failed assertions would cause an internal error:
(gdb) catch assert
../../src/gdb/ada-lang.c:13321: internal-error: ada_exception_sal:
Assertion`sym != NULL' failed.
A problem internal to GDB has been detected,
This is due to a combination of factors:
1. With older versions of the compiler, the function used as a hook
was provided by a unit that's different from the unit which
provides the hooks for the other exception catchpoints.
2. The program either does not use any assertion, or is compiled
without the assertions enabled.
With newer versions of the compiler, all such functions are provided
by the same unit, so should normally always be available. However,
there can still be reasons why this is not the case. Consider, for
instance, the case of a runtime compiled with -ffunction-sections,
in which case the hook might be eliminated unless assertions are
used and enabled.
So this patch transforms the internal error into a simple error.
gdb/ChangeLog:
* ada-lang.c (ada_exception_sal): Replace gdb_assert calls
by calls to error.
No testcase added, as the existing testcase gdb.ada/catch_ex.exp
should trigger it when using an older version of GNAT as the Ada
compiler.
commit fb44b1a737ee7d53d5d88c4f2a3d449e8084d6c2
Author: Joel Brobecker <brobecker@adacore.com>
Date: Sat Sep 8 16:45:25 2018 -0500
(Ada) infinite loop when hitting unhandled exception catchpoint
When debugging a program compiled with an older version of GNAT,
hitting a catchpoint on unhandled exceptions can caused GDB to
got into an infinite loop. This happens while trying to find
the name of the exception that was raised. For that, it searches
for a frame corresponding to a specific function we know gets
called during the exeption handling.
In our particular case, the compiler was too old, and so GDB never
found that frame, and eventually got past the "main" subprogram,
all the way to system frames, where no symbol was available.
As a result, the code addresses could not be resolved into
a function name, leading to the infinite loop because of
a misplaced update of our loop variable "fi":
while (fi != NULL)
{
char *func_name;
enum language func_lang;
find_frame_funname (fi, &func_name, &func_lang, NULL);
if (func_name != NULL)
{
make_cleanup (xfree, func_name);
if (strcmp (func_name,
data->exception_info->catch_exception_sym) == 0)
break; /* We found the frame we were looking for... */
fi = get_prev_frame (fi);
}
}
If FUNC_NAME is NULL, then FI never gets updated ever after!
gdb/ChangeLog:
* ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
Move update of loop variable "fi".
No testcase added, as the existing testcase gdb.ada/catch_ex.exp
should trigger it when using an older version of GNAT as the Ada
compiler.
commit 2a62dfa93f1980fd8d5b0651753c550942fa30b6
Author: Joel Brobecker <brobecker@adacore.com>
Date: Sat Sep 8 16:44:36 2018 -0500
(Ada) assigning packed array aggregate with variable as component
Consider a variable "PRA" defined as a packed array of packed
records as follow:
subtype Int is Integer range 0 .. 7;
type Packed_Rec is record
X, Y : Int;
W : Integer;
end record;
pragma Pack (Packed_Rec);
type Packed_RecArr is array (Integer range <>) of Packed_Rec;
pragma Pack (Packed_RecArr);
PRA : Packed_RecArr (1 .. 3);
Consider also a variable "PR", which is a Packed_Rec record,
declared as follow:
PR : Packed_Rec := (2, 2, 2);
Trying to assign a new value to PRA using an aggregate expression
where one of the components is our variable PR yields the wrong
result on big-endian machines (e.g. on ppc-linux):
(gdb) p pra := (pr, (2,2,2), (2,2,2))
$6 = ((x => 1, y => 0, w => 8), [...]
On the other hand, replacing "pr" by "(2,2,2)" does work.
I tracked the issue down to the bit offset we use to extract
the value of "PR" and copy it inside PRA. in value_assign_to_component,
we have:
if (gdbarch_bits_big_endian (get_type_arch (value_type (container))))
move_bits ([target buffer], [bit offset in target buffer],
[source buffer where PR is stored],
TYPE_LENGTH (value_type (component)) * TARGET_CHAR_BIT - bits,
bits, 1);
The issue is with the third-to-last argument, which provides the bit
offset where the value of PR is stored relative to its start address,
and therefore the bit offset relative to the start of the source
buffer passed as the previous argument.
In our case, component is a 38bit packed record whose TYPE_LENGTH
is 5 bytes, so the bit-offset that gets calculated is 2 (bits).
However, that formula only really applies to scalars, whereas
in our case, we have a record (struct). The offset in the non-scalar
case should be zero.
gdb/ChangeLog:
* ada-lang.c (value_assign_to_component): In the case of
big-endian targets, extract the bits of the given VAL
using an src_offset of zero if container is not a scalar.
gdb/testsuite/ChangeLog:
* gdb.ada/packed_array_assign: New testcase.
commit d1908f2d6b9f161b6a31449e83e1b671acb99620
Author: John Darrington <john@darrington.wattle.id.au>
Date: Fri Jul 13 18:08:31 2018 +0200
gdb: Add builtin types for 24 bit integers.
Add int24 and uint24. These are used by the upcoming S12Z target, but will be
needed for any arch which features 24 bit registers.
* gdb/gdbtypes.h (struct builtin_type): New members builtin_int24
and builtin_uint24;
* gdb/gdbtypes.c: Initialize them.
* gdb/doc/gdb.texinfo (Predefined Target Types): Mention types int24 and uint24.
commit 9da4dfd6816fa2198bd80fd6a7b12fef4d6c8361
Author: John Darrington <john@darrington.wattle.id.au>
Date: Sat Sep 8 06:59:09 2018 +0200
S12Z: Make disassebler work for --enable-targets=all config.
opcodes/
* disassemble.c (ARCH_s12z): Define if ARCH_all.
commit b8c876004b48a05bd1117731e3c60e1f13093b5f
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Sep 8 00:00:35 2018 +0000
Automatic date update in version.in
commit 96b6697fd807428f3832bdab1527ad55156e88d7
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Fri Sep 7 14:06:53 2018 +0100
gdb/testsuite: Make test names unique in gdb.base/watchpoint.exp
Extend test names and add test name prefixes to make test names
unique.
gdb/testsuite/ChangeLog:
* gdb.base/watchpoint.exp (test_complex_watchpoint): Extend test
names, and add test prefixes to make test names unique.
commit 7235dd9f9092d719121a635f73ae2c72102f0263
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Sep 7 00:00:41 2018 +0000
Automatic date update in version.in
commit 739ab2e92e1840c9285f3cfce1f1236c0fa68730
Author: Simon Ser <contact@emersion.fr>
Date: Thu Sep 6 15:03:19 2018 -0700
Generate NT_PROCSTAT_{AUXV,VMMAP,PS_STRINGS} in FreeBSD coredumps
gcore generates NT_AUXV and NT_FILE notes for Linux targets. On
FreeBSD auxv is stored in a NT_PROCSTAT_AUXV section, virtual memory
mappings are stored in a NT_PROCSTAT_VMMAP, and both are prefixed with
the struct size. In addition, store a NT_PROCSTAT_PS_STRINGS note
saving the initial location of the argv[] and environment[] arrays.
gdb/ChangeLog:
PR gdb/23105
* fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
* fbsd-tdep.c (fbsd_make_note_desc): New.
(fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
* target.h (enum target_object) Add FreeBSD-specific
TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
commit d82b3862f1218134f5301ed990c6db48fcb82b2f
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Thu Sep 6 13:48:10 2018 +0100
compile: Remove non-const reference parameters
As mentioned here:
https://sourceware.org/gdb/wiki/Internals%20GDB-C-Coding-Standards#Avoid_non-const_reference_parameters.2C_use_pointers_instead
we prefer to avoid non-const references. This patch changes the
non-const references I could find in the compile/ directory, either by
making them rvalue-reference (&&) or changing them to pointers.
I'd say all the changes are pretty obvious, except the one in
compile_cplus_instance::enter_scope which might require more attention.
gdb/ChangeLog:
* compile/compile-c.h (generate_c_for_variable_locations):
Change reference to pointer.
* compile/compile-c-support.c (compile_program) <compute>:
Likewise.
* compile/compile-c-symbols.c (generate_vla_size): Likewise.
(generate_c_for_for_one_variable): Likewise
(generate_c_for_variable_locations): Likewise
* compile/compile-c-types.c (compile_c_instance::convert_type):
Likewise
* compile/compile-cplus-symbols.c (convert_one_symbol):
std::move the scope passed to enter_scope.
* compile/compile-cplus-types.c
(compile_cplus_instance::enter_scope): Make parameter
rvalue-reference.
(compile_cplus_instance::new_scope): Change reference to
pointer.
(compile_cplus_instance::convert_type): Likewise
(compile_cplus_convert_typedef): std::move the scope passed to
enter_scope.
(compile_cplus_convert_struct_or_union): Likewise.
(compile_cplus_convert_enum): Likewise.
(compile_cplus_convert_namespace): Likewise.
* compile/compile-cplus.h (compile_cplus_instance)
<enter_scope>: Make parameter rvalue-reference.
* compile/compile-internal.h (compile_instance)
<get_cached_type>: Likewise
* compile/compile-loc2c.c (push): Likewise
(pushf): Likewise
(unary): Likewise
(binary): Likewise
(print_label): Likewise
(pushf_register_address): Likewise
(pushf_register): Likewise
(do_compile_dwarf_expr_to_c): Likewise
(compile_dwarf_expr_to_c): Likewise
(compile_dwarf_bounds_to_c): Likewise
* compile/compile.c (compile_instance::get_cached_type):
Likewise
* compile/compile.h (compile_dwarf_expr_to_c): Likewise.
(compile_dwarf_bounds_to_c): Likewise
* dwarf2loc.c (locexpr_generate_c_location): Likewise.
(dwarf2_compile_property_to_c): Likewise
* dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
* symtab.h (struct symbol_computed_ops) <generate_c_location>:
Likewise
commit cc5a5ae5b7ea576bb8bf4bbebeaa70366851eacd
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Thu Sep 6 13:35:32 2018 +0100
Remove unused tui_win_element::highlight
gdb/ChangeLog:
* tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
* tui/tui-data.c (init_content_element): Don't initialize it.
commit 137be54029ed2d2fc95120bba2af88311e5a198a
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Thu Sep 6 12:08:33 2018 +0100
Remove unused tui_win_info::detail::opaque
gdb/ChangeLog:
* tui/tui-data.h (struct tui_win_info)
<detail::opaque>: Remove.
* tui/tui-data.c (init_win_info): Remove assignment.
commit deee88e9810fe5a3e73b071713ff6fa03b5c016d
Author: Alan Modra <amodra@gmail.com>
Date: Tue Sep 4 10:13:26 2018 +0930
PR23570, AVR .noinit section defaults to PROGBITS
Revert commit 8744470deab and instead use the standard special_sections
support.
PR 23570
bfd/
* elf32-avr.c (elf_avr_special_sections): New.
(elf_backend_special_sections): Define.
gas/
* config/tc-avr.c: Revert 2018-09-03 change.
commit f1628857d783fee0171f16f1bad0b7816460dec5
Author: Tom Tromey <tom@tromey.com>
Date: Wed Sep 5 13:46:47 2018 -0600
Make -Wformat-nonliteral work with gcc
After looking into why the build failed for Simon but not for me, we
found that the underlying cause was due to how gcc treats
-Wformat-nonliteral. gcc requires -Wformat to be given first; but
warning.m4 was not doing this, so -Wformat-nonliteral was not being
used.
This patch changes warning.m4 to account gcc's requirement.
This then showed that the target-float.c build change in the earlier
Makefile patch was also incorrect. Simon didn't see this in his
build, but gcc now points it out. So, this patch fixes this problem
as well.
2018-09-05 Tom Tromey <tom@tromey.com>
* warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
-Wformat-nonliteral.
* target-float.c (host_float_ops<T>::to_string)
(host_float_ops<T>::from_string): Use
DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
* configure: Rebuild.
gdb/gdbserver/ChangeLog
2018-09-05 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
commit af39b1c216ffb11e6ca8e8607b00749e0fc1ab41
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed Sep 5 21:21:51 2018 -0600
Disable -Wformat-nonliteral in parts of printcmd.c
commit 3322c5d9a1 ("Remove unneeded explicit .o targets") broke the
build with clang, because -Wno-format-nonliteral was in fact needed.
This patch fixes the problem by introducing
DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL and using it in printcmd.c. This
seems preferable to reverting the patch because now the warning
suppression is more targeted.
gdb/ChangeLog
2018-09-05 Simon Marchi <simon.marchi@ericsson.com>
* printcmd.c (printf_c_string): Use
DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
(printf_wide_c_string, printf_pointer, ui_printf): Likewise.
include/ChangeLog
2018-09-05 Simon Marchi <simon.marchi@ericsson.com>
* diagnostics.h (DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL): New macro.
commit 4f075c06a3adbccdc2712c3e24afc7d4814149c7
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Sep 6 00:00:45 2018 +0000
Automatic date update in version.in
commit 081bca4d622143b229cf02a1dda4afb9b457eefa
Author: Tom Tromey <tom@tromey.com>
Date: Wed Sep 5 00:00:31 2018 -0600
Remove unnecessary casts from cli-cmds.c
I noticed a couple of unnecessary casts in cli-cmds.c. This patch
removes them.
Tested by rebuilding. I'm checking this in.
gdb/ChangeLog
2018-09-05 Tom Tromey <tom@tromey.com>
* cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
commit e4a62c65fa8fe6a48b6ff564f45c1ac535f10f14
Author: Tom de Vries <tdevries@suse.de>
Date: Fri Aug 24 12:01:10 2018 +0200
[gdb/exp] Handle DW_OP_GNU_variable_value refs to abstract dies
Consider a vla variable 'a' in function f1:
...
<2><1a7>: Abbrev Number: 11 (DW_TAG_variable)
<1a8> DW_AT_description : a
<1aa> DW_AT_abstract_origin: <0x311>
...
with abstract origin 'a':
...
<2><311>: Abbrev Number: 3 (DW_TAG_variable)
<312> DW_AT_name : a
<317> DW_AT_type : <0x325>
...
and inherited abstract vla type:
...
<1><325>: Abbrev Number: 9 (DW_TAG_array_type)
<326> DW_AT_type : <0x33a>
<2><32e>: Abbrev Number: 10 (DW_TAG_subrange_type)
<32f> DW_AT_type : <0x2ea>
<333> DW_AT_upper_bound : 5 byte block: fd 1b 3 0 0
(DW_OP_GNU_variable_value: <0x31b>)
...
where the upper bound refers to this artificial variable D.1922 without location
attribute:
...
<2><31b>: Abbrev Number: 8 (DW_TAG_variable)
<31c> DW_AT_description : (indirect string, offset: 0x39a): D.1922
<320> DW_AT_type : <0x2ea>
<324> DW_AT_artificial : 1
...
Currently, when we execute "p sizeof (a)" in f1, the upper bound is calculated
by evaluating the DW_OP_GNU_variable_value expression referring to D.1922, but
since that die doesn't have a location attribute, we get:
...
value has been optimized out
...
However, there's also artificial variable D.4283 that is sibling of vla
variable 'a', has artificial variable D.1922 as abstract origin, and has a
location attribute:
...
<2><1ae>: Abbrev Number: 12 (DW_TAG_variable)
<1af> DW_AT_description : (indirect string, offset: 0x1f8): D.4283
<1b3> DW_AT_abstract_origin: <0x31b>
<1b7> DW_AT_location : 11 byte block: 75 1 8 20 24 8 20 26 31 1c 9f
(DW_OP_breg5 (rdi):1; DW_OP_const1u: 32;
DW_OP_shl; DW_OP_const1u: 32; DW_OP_shra;
DW_OP_lit1; DW_OP_minus; DW_OP_stack_value)
...
The intended behaviour for DW_OP_GNU_variable_value is to find a die that
refers to D.1922 as abstract origin, has a location attribute and is
'in scope', so the expected behaviour is:
...
$1 = 6
...
The 'in scope' concept can be thought of as variable D.1922 having name
attribute "D.1922", and variable D.4283 inheriting that attribute, resulting
in D.4283 being declared with name "D.1922" alongside vla a in f1, and when we
lookup "DW_OP_GNU_variable_value D.1922", it should work as if we try to find
the value of a variable named "D.1922" on the gdb command line using
"p D.1922", and we should return the value of D.4283.
This patch fixes the case described above, by:
- adding a field abstract_to_concrete to struct dwarf2_per_objfile,
- using that field to keep track of which concrete dies are instances of an
abstract die, and
- using that information when getting the value DW_OP_GNU_variable_value.
Build and reg-tested on x86_64-linux.
2018-09-05 Tom de Vries <tdevries@suse.de>
* dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
with resolve_abstract_p == true.
(indirect_synthetic_pointer): Add resolve_abstract_p parameter,
defaulting to false. Propagate resolve_abstract_p to
dwarf2_fetch_die_loc_sect_off.
* dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
parameter, defaulting to false.
* dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
(dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
parameter.
* dwarf2read.h (struct die_info): Forward-declare.
(die_info_ptr): New typedef.
(struct dwarf2_per_objfile): Add abstract_to_concrete field.
* gdb.dwarf2/varval.exp: Add test.
commit 2b69821e70c7f648fa31f5d5110021a156158432
Author: Joel Brobecker <brobecker@adacore.com>
Date: Wed Sep 5 10:02:27 2018 +0200
Document the GDB 8.2 release in gdb/ChangeLog
gdb/ChangeLog:
GDB 8.2 released.
commit 5e627001a08badbcbc890400cf620eab5534ff52
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Sep 5 00:00:32 2018 +0000
Automatic date update in version.in
commit e920c014ecd9fbb630c76576d2771aa4631d93f7
Author: Jose E. Marchesi <jose.marchesi@oracle.com>
Date: Tue Sep 4 20:19:06 2018 +0200
bfd, sparc: avoid duplicated error messages on invalid relocations.
This patch avoids a duplicated error message when an invalid
relocation number is read from an object file in sparc-* ELF targets:
$ strip -g test.o
strip: test.o: unsupported relocation type 0xd7
strip: test.o: unsupported relocation type 0xd7
strip: test.o: bad value
Tested in x86_64-linux-gnu, sparc64-linux-gnu and sparc-linux-gnu
targets.
bfd/ChangeLog:
2018-09-04 Jose E. Marchesi <jose.marchesi@oracle.com>
* elfxx-sparc.c (_bfd_sparc_elf_info_to_howto): Do not issue an
error when an invalid relocation is passed; this is already done
by `_bfd_sparc_elf_info_to_howto_ptr'.
commit 8410d65b77164d020a45cc9aa17a0147dc76862d
Author: Jose E. Marchesi <jose.marchesi@oracle.com>
Date: Tue Sep 4 19:02:38 2018 +0200
bfd, sparc: issue an error when reading relocations with invalid symbol references.
The function `elf64_sparc_slurp_one_reloc_table' in elf64-sparc.c
currently checks that the symbol indexes read in the r_sym fields of
relocations are in range. This is done for both dynamic and
non-dynamic symbols. This avoids subsequent invalid memory accesses.
However, no error is issued to the user.
This patch makes BFD to issue an error when the read symbol index is
out of range, following the same behavior implemented in both the
generic ELF routines and other ELF backends (such as mips64).
Tested in x86_64-linux-gnu, sparc64-linux-gnu, and
--enable-targets=all.
2018-09-04 Jose E. Marchesi <jose.marchesi@oracle.com>
* elf64-sparc.c (elf64_sparc_slurp_one_reloc_table): Issue an
error when an invalid symbol index is retrieved in ELF64_R_SYM of
a relocation seen in an input file.
commit fcc9b044b7f563023633a9964810e76f4cde40d4
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Sun Sep 2 17:11:46 2018 -0400
Automatically update "aclocal_m4_deps" when updating gnulib
When we update gnulib using our "update-gnulib.sh" tool, it doesn't
automatically update the list of M4 files present at
gnulib/Makefile.in:aclocal_m4_deps. This patch extends the tool to do
that. It also puts "aclocal_m4_deps" in its own file (a Makefile
fragment), so that it's easier to update it programatically.
Tested by generating the file and diff'ing the results against the
current version of "aclocal_m4_deps".
gdb/ChangeLog:
2018-09-04 Sergio Durigan Junior <sergiodj@redhat.com>
Pedro Alves <palves@redhat.com>
* gnulib/Makefile.in (aclocal_m4_deps): Move to
"aclocal-m4-deps.mk". Include file here.
$(srcdir)/aclocal.m4: Add "configure.ac".
* gnulib/aclocal-m4-deps.mk: New file.
* gnulib/update-gnulib.sh: Automatically update
"aclocal-m4-deps.mk".
commit d53d543682d9add652a82d267681cf6426aded42
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 1 10:30:18 2018 -0600
Remove --enable-multi-ice
gdb's configure script accepts --enable-multi-ice, but the code this
refers to is long gone. This patch removes the option entirely.
gdb/ChangeLog
2018-09-04 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
* configure.ac: Remove multi-ice code.
commit 8dc9fd87b0965f24e21922f295c4af9c3f624985
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 1 10:28:34 2018 -0600
Simplify ada-exp.o rule
The ada-exp.o rule no longer needs to pass -Wno-old-style-definition
to the compiler, as this option has no meaning in C++. So, This patch
simplifies the explicit ada-exp.o rule in the Makefile. The rule is
still needed because, according to the comment, ada-exp.c may appear
in the srcdir.
gdb/ChangeLog
2018-09-04 Tom Tromey <tom@tromey.com>
* Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
(ada-exp.o): Update.
commit 3322c5d9a102f9af099bd87cc65a1e2a70f91c78
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 1 10:23:48 2018 -0600
Remove unneeded explicit .o targets
Makefile.in had special cases to compile printcmd.o and target-float.o
with a different set of warnings. However, this is no longer
required, so this patch removes those rules.
gdb/ChangeLog
2018-09-04 Tom Tromey <tom@tromey.com>
* Makefile.in (printcmd.o, target-float.o): Remove.
(GDB_WARN_CFLAGS_NO_FORMAT): Remove.
commit ba2bf2aaba97866f4c9c67239666916caa7bb150
Author: Tom Tromey <tom@tromey.com>
Date: Sat Sep 1 10:23:15 2018 -0600
Remove obsolete comments from Makefiles
This removes an obsolete comment from Makefile.in. This was copied
into gnulib/Makefile.in, so this removes that comment as well.
gdb/ChangeLog
2018-09-04 Tom Tromey <tom@tromey.com>
* gnulib/Makefile.in: Remove obsolete comment.
* Makefile.in: Remove obsolete comment.
commit dd083ee23d23903e8bc595b64aa8ea62379491cd
Author: Gary Benson <gbenson@redhat.com>
Date: Mon Sep 3 16:14:55 2018 +0100
Fix batch exit status test failure on Fedora 28
This commit adds calls to remote_close and clear_gdb_spawn_id to
gdb.base/batch-exit-status.exp, fixing failures reported by buildbot
on Fedora 28 where gdb_spawn_id not being reset by the previous test
caused default_gdb_spawn to return without spawning.
This commit also changes the test to use detect GDB's exit using
gdb_test_multiple expecting 'eof', rather than using 'wait -i' alone.
This means the testcase won't hang forever on failure as fixed in
gdb.base/quit.exp by commit 15763a09d4ae ("Fix 'gdb.base/quit.exp
hangs forever' if the test fails").
gdb/testsuite/ChangeLog:
* gdb.base/batch-exit-status.exp: Use gdb_test_multiple and expect
'eof' before 'wait -i'. Use remote_close and clear_gdb_spawn_id.
commit 618a8fdba6fc86a6ed88df257bf5f44d85e9071b
Author: Daniel Cederman <cederman@gaisler.com>
Date: Tue Sep 4 06:25:52 2018 -0700
gas, sparc: Allow non-fpop2 instructions before floating point branches
Sparc V8 does not allow fpop2 instructions (floating point
comparisons) immediately before floating point branches. From the
SPARC Architecture Manual Version 8, section B.22 "Branch on
Floating-point Condition Codes Instructions":
"If the instruction executed immediately before an FBfcc is an FPop2
instruction, the result of the FBfcc is undefined. Therefore, at
least one non FPop2 instruction should be executed between the FPop2
instruction and the FBfcc instruction."
The existing check in GAS, however, does not allow any kind of
floating point instruction before the branch. This patch adds an
extra condition to only disallow fpop2 instructions.
gas/ChangeLog:
2018-09-04 Daniel Cederman <cederman@gaisler.com>
* config/tc-sparc.c (md_assemble): Allow non-fpop2 instructions
before floating point branches for Sparc V8 and earlier.
* testsuite/gas/sparc/sparc.exp: Execute the new test.
* testsuite/gas/sparc/v8branch.d: New test.
* testsuite/gas/sparc/v8branch.s: New test.
commit 6c9d681b07e32d07f7ca0774360be62bbf065b82
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Tue Sep 4 11:51:10 2018 +0100
gdb/riscv: Fix an ARI warning
This patch fixes an ARI violation in riscv-tdep.c (line ends with
'+').
gdb/ChangeLog:
* riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
line with '+'.
commit 70f95c89a14485b148251a126ba0de48e412b327
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Sep 4 00:00:41 2018 +0000
Automatic date update in version.in
commit 8744470deabb6a2fae35be0f66c60ee4ba094c1d
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Sep 3 17:06:05 2018 +0100
Change the .section directive for the AVR assembler so that the .noinit section is always given the ELF NOBITS section type.
PR gas/23570
* config/tc-avr.c (md_pseudo_table): Add entry for "secction".
(avr_set_section): New function. Ensures that the .noinit section
gets the NOBITS ELF section type.
commit 78a3b0fab8200fdca2b1b934645c29e7bd502d36
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Tue Jul 17 15:22:39 2018 +0100
gdb/riscv: Provide non-DWARF stack unwinder
Collects information during the prologue scan and uses this to unwind
registers when no DWARF information is available.
This patch has been tested by disabling the DWARF stack unwinders, and
running the complete GDB testsuite against a range of RISC-V targets.
The results are comparable to running with the DWARF unwinders in
place.
gdb/ChangeLog:
* riscv-tdep.c: Add 'prologue-value.h' include.
(struct riscv_unwind_cache): New struct.
(riscv_debug_unwinder): New global.
(riscv_scan_prologue): Update arguments, capture register details
from prologue scan.
(riscv_skip_prologue): Reformat arguments line, move end of
prologue calculation into riscv_scan_prologue.
(riscv_frame_cache): Update return type, create
riscv_unwind_cache, scan the prologue, and fill in remaining cache
details.
(riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
(riscv_frame_prev_register): Use the trad_frame within the
riscv_unwind_cache.
(_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
flag.
commit 23e60e7a4ea772eabb6ae4788913e228763755cf
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Fri Aug 17 08:54:26 2018 +0100
gdb: Extend the trad-frame API
Adds two new functions to the trad-frame API and update the internals
of trad-frame to use the new functions. These functions will be used
in later commits.
gdb/ChangeLog:
* trad-frame.h (trad_frame_set_realreg): Declare.
(trad_frame_set_addr): Declare.
* trad-frame.c (trad_frame_set_realreg): Define new function.
(trad_frame_set_addr): Define new function.
(trad_frame_set_reg_realreg): Use new function.
(trad_frame_set_reg_addr): Use new function.
commit 20a4d0bd98969ddbfead7288e6027639dcbd9a21
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Sep 3 15:04:34 2018 +0100
Updated Japanese translation for the binutils sub-directory.
commit b6f00d89c7f960d427c908be30379086e079b4eb
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Sep 3 13:40:32 2018 +0100
Updated Finnish translation for the ld sub-directory.
* po/fi.po: Updated Finnish translation.
commit 2542e49e21e6b7270f72c7be0fc4ff1a986371da
Author: Jozef Lawrynowicz <jozef.l@mittosystems.com>
Date: Mon Sep 3 11:04:05 2018 +0930
PR23595, simple objcopy of executable failure for msp430-elf
VMA of the first section in the segment containing the ELF file header
(and possibly section headers too) can't be used to reliably find the
size of the headers plus padding. What's really needed is sh_offset
of the first section assuming it has contents (vma does have a
relationship to sh_offset, but is only guaranteed in demand paged
executables).
If the first section is SHT_NOBITS and it hasn't been converted to
have file contents by the existence of a following SHT_PROGBITS
section in the same segment, the sh_offset value also isn't reliable.
PR 23595
elf.c (copy_elf_program_header): When first segment contains
only the headers and SHT_NOBITS sections, use segment p_filesz
to calculate header and padding size. Use filepos of the first
section otherwise.
commit 0d9a433be406220413671495a9b0fab577a48b5e
Author: Alan Modra <amodra@gmail.com>
Date: Mon Sep 3 10:49:57 2018 +0930
Re: ld: Lookup section in output with the same name
Fixes pr23591 test failures on hppa64-hpux and score-elf, and xfails
frv-linux and lm32-linux.
PR ld/23591
* testsuite/ld-elf/pr23591a.s,
* testsuite/ld-elf/pr23591b.s,
* testsuite/ld-elf/pr23591c.s: Don't start directives in first column.
* testsuite/ld-elf/pr23591.d: xfail frv-linux and lm32-linux.
Allow __start___sancov_cntrs as a local symbol.
commit ec8da87a225ae9f86cf47765bcc56d6afa30d835
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Sep 3 00:00:48 2018 +0000
Automatic date update in version.in
commit 23a29771e0a435fe7fb3df00ae2feefb38557f44
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Sep 2 00:00:59 2018 +0000
Automatic date update in version.in
commit 5c889512f325e0447a6182f70cfa7e1d9e407167
Author: Keith Seitz <keiths@redhat.com>
Date: Thu Aug 30 09:26:47 2018 -0700
Fix ARI violations in c++compile
This patch fixes two violations of the ARI (use of ATTRIBUTE_UNUSED and
"%ll").
gdb/ChangeLog
* compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
pulongest instead of "%lld".
* compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
ATTRIBUTE_UNUSED.
commit b986869b6605e45044626c5b3111390ac4e70b82
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Aug 31 19:56:25 2018 -0700
Allow an IR object with unknown architecture
An IR object may have an unknown architecture. But it is compatible
with other architecture.
PR ld/23600
* archures.c (bfd_arch_get_compatible): Allow an IR object with
unknown architecture.
commit d431d6279bdcd475feb921a3aa8ecf0cf3ffc6a6
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Sep 1 00:00:38 2018 +0000
Automatic date update in version.in
commit be192bc284b329fa0b38646bd3df9a02b880a704
Author: Jim Wilson <jimw@sifive.com>
Date: Fri Aug 31 12:23:05 2018 -0700
RISC-V: Correct the requirement of compressed floating point instructions
2018-08-31 Kito Cheng <kito@andestech.com>
gas/
* testsuite/gas/riscv/c-fld-fsd-fail.d: New.
* testsuite/gas/riscv/c-fld-fsd-fail.l: Likewise.
* testsuite/gas/riscv/c-fld-fsd-fail.s: Likewise.
opcodes/
* riscv-opc.c (riscv_opcodes): Fix incorrect subset info for
compressed floating point instructions.
commit c8c81635739435a31860ff5f1e49743d80321f43
Author: Tom Tromey <tom@tromey.com>
Date: Thu Aug 30 15:04:03 2018 -0600
Set TYPE_LENGTH on a variant part
gdb represents a DW_TAG_variant_part as a union. While normally DWARF
would not set the size of a DW_TAG_variant_part, gdb's representation
requires the TYPE_LENGTH to be set.
This patch arranges to set the TYPE_LENGTH of a variant part if it has
not already been set.
This fixes some Rust regressions when testing against a version of
rustc that emits DW_TAG_variant_part.
gdb/ChangeLog
2018-08-31 Tom Tromey <tom@tromey.com>
* dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
variant part type.
commit aef9346c25b0a0c665bce793c00797f5ab82ed37
Author: Tom Tromey <tom@tromey.com>
Date: Wed Aug 29 11:08:46 2018 -0600
Fix a small bug in gdb.rust/simple.rs
I noticed that gdb.rust/simple.rs had two local variables named "v".
This didn't previous cause problems, but with a newer rust compiler
this resulted in a test failure. (It should have failed all along, so
I suppose earlier passes were due to a compiler bug.)
This patch renames the second variable.
gdb/testsuite/ChangeLog
2018-08-31 Tom Tromey <tom@tromey.com>
* gdb.rust/simple.rs: Rename second variable "v".
commit 0c8885885ab1d62971bbae22d4b5e335c31b19c9
Author: Pedro Alves <palves@redhat.com>
Date: Fri Aug 31 18:55:59 2018 +0100
Regenerate gdbarch.h
The previous commit included a stale gdbarch.h from an earlier version
of that patch by mistake.
gdb/ChangeLog:
2018-08-31 Pedro Alves <palves@redhat.com>
* gdbarch.h: Regenerate.
commit 7ea65f08fa1b8279b65133a958de02fe84767eb9
Author: Pedro Alves <palves@redhat.com>
Date: Fri Aug 31 14:24:13 2018 +0100
Add comment describing continuable/steppable/non-steppable watchpoints
These weren't described anywhere in the sources.
gdb/ChangeLog:
2018-08-31 Pedro Alves <palves@redhat.com>
* gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
* target.h (Hardware watchpoint interfaces): Describe
continuable/steppable/non-steppable watchpoints.
* gdbarch.h, gdbarch.c: Regenerate.
commit 7eb65fafed7b50511f52664e98e22b20eb697197
Author: Pedro Alves <palves@redhat.com>
Date: Fri Aug 31 18:47:12 2018 +0100
Eliminate target_have_continuable_watchpoint
target_have_continuable_watchpoint isn't used anywhere so remove it.
The property isn't necessary because checking for "continuable" is the
same as checking for "!steppable && !non-steppable".
gdb/ChangeLog:
2018-08-31 Pedro Alves <palves@redhat.com>
* nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
Delete.
* s390-linux-nat.c
(s390_linux_nat_target::have_continuable_watchpoint): Delete.
* target.h (target_ops::have_continuable_watchpoint): Delete.
(target_have_continuable_watchpoint): Delete.
* x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
* target-delegates.c: Regenerate.
commit 6e1453f681aeec2ef6e3d4fb42f10df9da2a8cd2
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Aug 31 09:40:54 2018 -0700
gas/elf/section14.d: Change skip to xfail
We will get an XPASS when h8300 port peculiarities are fixed, and will
fix the testsuite too.
* testsuite/gas/elf/section14.d: Change skip to xfail.
* testsuite/lib/gas-defs.exp (run_dump_test): Add xfail support.
commit 4d1c6335455aeeda9de8a5eb58998f919ea35a1e
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Aug 31 09:25:31 2018 -0700
ld: Lookup section in output with the same name
When there are more than one input sections with the same section name,
SECNAME, linker picks the first one to define __start_SECNAME and
__stop_SECNAME symbols. When the first input section is removed by
comdat group, we need to check if there is still an output section
with section name SECNAME.
PR ld/23591
* ldlang.c (undef_start_stop): Lookup section in output with
the same name.
* testsuite/ld-elf/pr23591.d: New file.
* testsuite/ld-elf/pr23591a.s: Likewise.
* testsuite/ld-elf/pr23591b.s: Likewise.
* testsuite/ld-elf/pr23591c.s: Likewise.
commit dab999b116b507ad431c70fab0a28074dfea29df
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Wed Aug 29 15:47:22 2018 -0400
Update gnulib/Makefile.in:aclocal_m4_deps
It was pointed by Pedro that gnulib/Makefile.in should be updated
accordingly after our local gnulib is also updated. The specific part
that needs to be refreshed is the "aclocal_m4_deps" variable, which
lists the .m4 files present under the "gnulib/import/m4/" directory.
This patch does that.
No regressions introduced.
gdb/ChangeLog:
2018-08-31 Sergio Durigan Junior <sergiodj@redhat.com>
* gnulib/Makefile.in (aclocal_m4_deps): Update according to
the files present in "gnulib/import/m4/".
commit 3d58e1fcfbedad71be7e539dfa2045ab2768f013
Author: Alan Modra <amodra@gmail.com>
Date: Wed Aug 29 22:31:25 2018 +0930
PowerPC64 --emit-relocs support for notoc stubs
This patch uses the newly defined high-part REL16 relocs to emit
relocations on the notoc stubs as we already do for other stubs.
* elf64-ppc.c (num_relocs_for_offset): New function.
(emit_relocs_for_offset): New function.
(use_global_in_relocs): New function, split out from..
(ppc_build_one_stub): ..here. Output relocations for notoc stubs.
(ppc_size_one_stub): Calculate reloc count for notoc stubs.
(ppc64_elf_size_stubs): Don't count undefined syms in stub_globals.
commit 4a9699735b04d4629bd3dc418c265e7f0bc1f9ce
Author: Alan Modra <amodra@gmail.com>
Date: Wed Aug 29 13:28:21 2018 +0930
PowerPC64 higher REL16 relocations
There are occasions where someone might want to build a 64-bit
pc-relative offset from 16-bit pieces. This adds the necessary REL16
relocs corresponding to existing ADDR16 relocs that can be used to
build 64-bit absolute values.
include/
* elf/ppc64.h (R_PPC64_REL16_HIGH, R_PPC64_REL16_HIGHA),
(R_PPC64_REL16_HIGHER, R_PPC64_REL16_HIGHERA),
(R_PPC64_REL16_HIGHEST, R_PPC64_REL16_HIGHESTA): Define.
(R_PPC64_LO_DS_OPT, R_PPC64_16DX_HA): Bump value.
bfd/
* reloc.c (BFD_RELOC_PPC64_REL16_HIGH, BFD_RELOC_PPC64_REL16_HIGHA),
(BFD_RELOC_PPC64_REL16_HIGHER, BFD_RELOC_PPC64_REL16_HIGHERA),
(BFD_RELOC_PPC64_REL16_HIGHEST, BFD_RELOC_PPC64_REL16_HIGHESTA):
Define.
* elf64-ppc.c (ppc64_elf_howto_raw): Add new REL16 howtos.
(ppc64_elf_reloc_type_lookup): Translate new REL16 relocs.
(ppc64_elf_check_relocs, ppc64_elf_relocate_section): Handle them.
* bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.
gas/
* config/tc-ppc.h (TC_FORCE_RELOCATION_SUB_LOCAL): Allow ADDR16
HIGH, HIGHA, HIGHER, HIGHERA, HIGHEST, and HIGHESTA relocs.
Group 16-bit relocs.
* config/tc-ppc.c (md_apply_fix): Translate those ADDR16 relocs
to REL16 when pcrel. Sort relocs.
commit f891966ff66639673a5207b94bd68ec928fb68bc
Author: Alan Modra <amodra@gmail.com>
Date: Wed Aug 29 14:11:25 2018 +0930
Rearrange ppc_size_one_stub and correct _notoc stub examples
This patch rearranges ppc_size_one_stub to make it a little easier to
compare against ppc_build_one_stub, and makes a few other random
changes that might help for future maintenance. There should be no
functional changes here.
The patch also fixes code examples in comments. A couple of "ori"
instructions lacked the source register operand, and "@high" is the
correct reloc modifier to use in a sequence building a 64-bit value.
(@hi reports overflow of a 32-bit signed value.)
* elf64-ppc.c: Correct _notoc stub comments.
(ppc_build_one_stub): Simplify output of branch for notoc
long branch stub. Don't include label offset of 8 bytes in
"off" calculation for notoc plt stub. Don't emit insns to get pc.
(build_offset): Emit insns to get pc here instead.
(size_offset): Add 4 extra insns.
(plt_stub_size): Adjust for "off" and size_offset changes.
(ppc_size_one_stub): Rearrange code into a switch, duplicating
some to better match ppc_build_one_stub.
commit 4bb3c591b258d12dd0f743e538b7214cbb92ebf7
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Aug 31 05:11:03 2018 -0700
ld: Pass -z separate-code to ld for property-x86-4a tests
Pass -z separate-code to ld for property-x86-4a tests to generate
the expected .note.gnu.property section. Also run i386 tests for
x86_64-*-elf* targets.
* testsuite/ld-i386/i386.exp: Also run for x86_64-*-elf* targets.
* testsuite/ld-i386/property-x86-4a.d: Pass -z separate-code to
ld.
* testsuite/ld-x86-64/property-x86-4a-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-4a.d: Likewise.
commit e9d644e8fb2e7fa2f61e4b978f75881d906e0dbc
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Aug 31 04:47:41 2018 -0700
ld: Append -mx86-used-note=no to ASFLAGS
Since x86 assembler may generate .note.gnu.property section, append
-mx86-used-note=no to tests which don't expect .note.gnu.property
section on ELF/x86 targets.
* testsuite/ld-elf/elf.exp (ASFLAGS): Save, append
-mx86-used-note=no and restore.
* testsuite/ld-ifunc/ifunc.exp (ASFLAGS): Likewise.
* testsuite/ld-scripts/defined.exp (ASFLAGS): Likewise.
* testsuite/ld-scripts/overlay-size.exp (ASFLAGS): Likewise
commit 9a8d6a757d29ad8c80dc7640ac902d722b1b473f
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Aug 31 04:44:45 2018 -0700
ld: Append -Wa,-mx86-used-note=no for S-records tests
Since x86 assembler may generate .note.gnu.property section and S-records
can't handle .note.gnu.property sections, add -mx86-used-note=no to
S-records tests on ELF/x86 targets to avoid .note.gnu.property section.
* testsuite/ld-srec/srec.exp: Append -Wa,-mx86-used-note=no to
CC and CXX on ELF/x86 targets.
commit 5e8a54c6c4c753b6bbd447c74f5df8707bb0a06c
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Aug 31 04:42:51 2018 -0700
gas: Pass -mx86-used-note=no to assembler
Since x86 assembler may generate .note.gnu.property section, pass
-mx86-used-note=no to assembler for section2 test on ELF/x86 targets
to avoid .note.gnu.property section.
* testsuite/gas/elf/elf.exp: Pass -mx86-used-note=no to
assembler for section2 test on ELF/x86 targets.
commit 2550e95256ed7bbb1a4579ec4bd379417ad59b23
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Aug 31 04:39:21 2018 -0700
x86: pass -mx86-used-note=no to assembler
Since cfi/cfi-label.d is ELF/x86 specific, we can pass -mx86-used-note=no
to assembler.
* testsuite/gas/cfi/cfi-label.d: Pass -mx86-used-note=no to
assembler.
commit 0f60cce3e191b9e72e7577a0da73ecc5e9ba353b
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Aug 31 04:38:12 2018 -0700
binutils: Adjusted tests for .note.gnu.property section
Since x86 assembler may generate .note.gnu.property section, adjust
binutils tests to handle it.
* testsuite/binutils-all/readelf.s-64: Adjusted for
.note.gnu.property section.
* testsuite/binutils-all/strip-3.d: Also strip
.note.gnu.property section.
commit 6c0d3bdec7f1728a064a916145c6d79058e6e3d7
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Aug 31 04:35:46 2018 -0700
x86: Add explicit -mx86-used-note=[yes|no] to tests
Pass explicit -mx86-used-note=[yes|no] to x86 assembler and update
expected outputs from "readelf -n" if needed.
binutils/
* testsuite/binutils-all/i386/compressed-1b.d: Pass
-mx86-used-note=no to assembler.
* testsuite/binutils-all/i386/compressed-1c.d: Likewise.
* testsuite/binutils-all/x86-64/compressed-1b.d: Likewise.
* testsuite/binutils-all/x86-64/compressed-1c.d: Likewise.
* testsuite/binutils-all/i386/empty.d: Pass -mx86-used-note=yes
to assembler and update expected output from "readelf -n".
* testsuite/binutils-all/i386/ibt.d: Likewise.
* testsuite/binutils-all/i386/pr21231a.d: Likewise.
* testsuite/binutils-all/i386/pr21231b.d: Likewise.
* testsuite/binutils-all/i386/shstk.d: Likewise.
* testsuite/binutils-all/x86-64/empty-x32.d: Likewise.
* testsuite/binutils-all/x86-64/empty.d: Likewise.
* testsuite/binutils-all/x86-64/ibt-x32.d: Likewise.
* testsuite/binutils-all/x86-64/ibt.d: Likewise.
* testsuite/binutils-all/x86-64/pr21231a.d: Likewise.
* testsuite/binutils-all/x86-64/pr21231b.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494a-x32.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494a.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494b-x32.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494b.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494c-x32.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494c.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494d-x32.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494d.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494e-x32.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494e.d: Likewise.
* testsuite/binutils-all/x86-64/shstk-x32.d: Likewise.
* testsuite/binutils-all/x86-64/shstk.d: Likewise.
gas/
* testsuite/gas/i386/bss.d: Pass -mx86-used-note=no to assembler.
* testsuite/gas/i386/ilp32/quad.d: Likewise.
* testsuite/gas/i386/ilp32/reloc64.d: Likewise.
* testsuite/gas/i386/ilp32/x86-64-size-1.d: Likewise.
* testsuite/gas/i386/ilp32/x86-64-size-3.d: Likewise.
* testsuite/gas/i386/ilp32/x86-64-size-5.d: Likewise.
* testsuite/gas/i386/ilp32/x86-64-unwind.d: Likewise.
* testsuite/gas/i386/property-1.d: Likewise.
* testsuite/gas/i386/relax.d: Likewise.
* testsuite/gas/i386/reloc64.d: Likewise.
* testsuite/gas/i386/size-1.d: Likewise.
* testsuite/gas/i386/size-3.d: Likewise.
* testsuite/gas/i386/x86-64-property-1.d: Likewise.
* testsuite/gas/i386/x86-64-size-1.d: Likewise.
* testsuite/gas/i386/x86-64-size-3.d: Likewise.
* testsuite/gas/i386/x86-64-size-5.d: Likewise.
* testsuite/gas/i386/x86-64-unwind.d: Likewise.
* testsuite/gas/i386/divide.d: Append "#pass".
ld/
* testsuite/ld-i386/i386.exp: (ASFLAGS): Save, append
-mx86-used-note=no and restore. Pass -mx86-used-note=yes and
-mx86-used-note=no to assembler.
* testsuite/ld-x86-64/x86-64.exp: Likewise.
* testsuite/ld-i386/no-plt.exp: Pass -mx86-used-note=yes to
assembler.
* testsuite/ld-i386/tls.exp: Likewise.
* testsuite/ld-x86-64/no-plt.exp: Likewise.
* testsuite/ld-x86-64/tls.exp: Likewise.
* testsuite/ld-i386/pr23486a.d: Pass -mx86-used-note=no to
assembler.
* testsuite/ld-i386/pr23486b.d: Likewise.
* testsuite/ld-x86-64/bnd-branch-1-now.d: Likewise.
* testsuite/ld-x86-64/bnd-ifunc-1-now.d: Likewise.
* testsuite/ld-x86-64/bnd-ifunc-2-now.d: Likewise.
* testsuite/ld-x86-64/bnd-ifunc-2.d: Likewise.
* testsuite/ld-x86-64/bnd-plt-1-now.d: Likewise.
* testsuite/ld-x86-64/bnd-plt-1.d: Likewise.
* testsuite/ld-x86-64/pr23486a-x32.d: Likewise.
* testsuite/ld-x86-64/pr23486a.d: Likewise.
* testsuite/ld-x86-64/pr23486b-x32.d: Likewise.
* testsuite/ld-x86-64/pr23486b.d: Likewise.
* testsuite/ld-i386/property-x86-3.d: Pass -mx86-used-note=yes
to assembler and update expected output from "readelf -n".
* testsuite/ld-i386/property-x86-4a.d: Likewise.
* testsuite/ld-i386/property-x86-ibt1a.d: Likewise.
* testsuite/ld-i386/property-x86-ibt1b.d: Likewise.
* testsuite/ld-i386/property-x86-ibt2.d: Likewise.
* testsuite/ld-i386/property-x86-ibt3a.d: Likewise.
* testsuite/ld-i386/property-x86-ibt3b.d: Likewise.
* testsuite/ld-i386/property-x86-ibt4.d: Likewise.
* testsuite/ld-i386/property-x86-ibt5.d: Likewise.
* testsuite/ld-i386/property-x86-shstk1a.d: Likewise.
* testsuite/ld-i386/property-x86-shstk1b.d: Likewise.
* testsuite/ld-i386/property-x86-shstk2.d: Likewise.
* testsuite/ld-i386/property-x86-shstk3a.d: Likewise.
* testsuite/ld-i386/property-x86-shstk3b.d: Likewise.
* testsuite/ld-i386/property-x86-shstk4.d: Likewise.
* testsuite/ld-i386/property-x86-shstk5.d: Likewise.
* testsuite/ld-x86-64/property-x86-3-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-3.d: Likewise.
* testsuite/ld-x86-64/property-x86-4a-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-4a.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt1a-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt1a.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt1b-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt1b.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt2-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt2.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt3a-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt3a.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt3b-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt3b.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt4-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt4.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt5-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt5.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk1a-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk1a.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk1b-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk1b.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk2-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk2.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk3a-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk3a.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk3b-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk3b.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk4-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk4.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk5-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk5.d: Likewise.
* testsuite/ld-i386/property-1a.r: New file.
* testsuite/ld-i386/property-2a.r: Likewise.
* testsuite/ld-i386/property-3a.r: Likewise.
* testsuite/ld-i386/property-4a.r: Likewise.
* testsuite/ld-i386/property-5a.r: Likewise.
* testsuite/ld-i386/property-7a.r: Likewise.
* testsuite/ld-x86-64/property-1a.r: Likewise.
* testsuite/ld-x86-64/property-2a.r: Likewise.
* testsuite/ld-x86-64/property-3a.r: Likewise.
* testsuite/ld-x86-64/property-4a.r: Likewise.
* testsuite/ld-x86-64/property-5a.r: Likewise.
* testsuite/ld-x86-64/property-7a.r: Likewise.
* testsuite/ld-x86-64/mpx.exp: Pass -mx86-used-note=no to
assembler.
commit b4a3a7b44c98a9f78a27bd34d0d98741a0446e23
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Aug 31 04:31:08 2018 -0700
x86: Extend assembler to generate GNU property notes
Add -mx86-used-note=[yes|no] option to generate (or not) GNU property
notes with GNU_PROPERTY_X86_FEATURE_2_USED and GNU_PROPERTY_X86_ISA_1_USED
properties. If the assembly input contains no instructions, set the
GNU_PROPERTY_X86_UINT32_VALID bit in GNU_PROPERTY_X86_FEATURE_2_USED
property. Add a --enable-x86-used-note configure time option to set the
default behavior. Set the default if the configure option is not used
to "no".
* NEWS: Mention -mx86-used-note=[no|yes].
* configure.ac: Add --enable-x86-used-note. Define
DEFAULT_X86_USED_NOTE.
* config.in: Regenerated.
* configure: Likewise.
* config/tc-i386.c (x86_isa_1_used): New.
(x86_feature_2_used): Likewise.
(x86_used_note): Likewise.
(_i386_insn): Add has_regmmx, has_regxmm, has_regymm and
has_regzmm.
(build_modrm_byte): Set i.has_regmmx, i.has_regzmm.
i.has_regymm and i.has_regxmm.
(x86_cleanup): New function.
(output_insn): Update x86_isa_1_used and x86_feature_2_used.
(OPTION_X86_USED_NOTE): New.
(md_longopts): Add -mx86-used-note=.
(md_parse_option): Handle OPTION_X86_USED_NOTE.
(md_show_usage): Display -mx86-used-note=.
* config/tc-i386.h (x86_cleanup): New prototype.
(md_cleanup): New.
* doc/c-i386.texi: Document -mx86-used-note=.
commit 0cb8eedc9173b873db7a8990fb780d9fdeb1f41e
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Aug 31 00:00:35 2018 +0000
Automatic date update in version.in
commit 40bac49b63b2f391eb702e1fc18229472c0deab7
Author: Jose E. Marchesi <jose.marchesi@oracle.com>
Date: Thu Aug 30 23:37:45 2018 +0200
sparc: gas: leon.d: disassemble assuming v8 also in sparc64 targets.
gas/ChangeLog:
2018-08-30 Jose E. Marchesi <jose.marchesi@oracle.com>
* testsuite/gas/sparc/leon.d: Disassemble v8 code also in sparc64
targets.
commit 43135d3b15ce10a786704f9bb4736d834d6581a8
Author: Jim Wilson <jimw@sifive.com>
Date: Thu Aug 30 13:23:12 2018 -0700
RISC-V: Allow instruction require more than one extension
2018-08-29 Kito Cheng <kito@andestech.com>
gas/
* config/tc-riscv.c (riscv_subset_supports): New argument:
xlen_required.
(riscv_multi_subset_supports): New function, able to check more
than one extension.
(riscv_ip): Use riscv_multi_subset_supports instead of
riscv_subset_supports.
(riscv_set_arch): Update call-site for riscv_subset_supports.
(riscv_after_parse_args): Likewise.
include/
*opcode/riscv.h (MAX_SUBSET_NUM): New.
(riscv_opcode): Add xlen_requirement field and change type of
subset.
opcodes/
* riscv-dis.c (riscv_disassemble_insn): Check XLEN by
riscv_opcode.xlen_requirement.
* riscv-opc.c (riscv_opcodes): Update for struct change.
commit a869991180094d4cbeb0bd2f275fc7b30e513fb7
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Aug 30 11:06:16 2018 -0700
Skip elf/section14 test for h8300 targets
Skip elf/section14 test for h8300 targets since the h8300 port issues a
warning message for new sections created without atrributes.
* testsuite/gas/elf/section14.d: Skip h8300 targets.
commit ff3a05b3f87093e5ac2bcd5e510bca4bebf1bef2
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Thu Aug 16 14:56:19 2018 +0100
gdb/riscv: Extend instruction decode to cover more instructions
Extends the instruction decoder used during prologue scan and software
single step to cover more instructions. These instructions are
encountered when running the current GDB testsuite with the DWARF
stack unwinders turned off.
gdb/ChangeLog:
* riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
c.sw, c.swsp, and c.sdsp.
commit 0b3f9efc044d2971aa0d9bb39a4c76678bc4ea6d
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Mon Apr 9 22:38:07 2018 +0100
gdb/riscv: remove extra caching of misa register
The RISC-V had a mechanism in place to cache the contents of the misa
register per-inferior, the original intention behind this was to
reduce the number of times the misa register had to be read (as the
contents should be constant), but it was pointed out on the mailing
list[1] that the register cache will mean the register is only
accessed once each time GDB stops, and any additional caching is
probably just unneeded extra complexity.
As such, until it can be shown that there's a real need for additional
caching, this commit removes all of the additional caching of the misa
register, and just accesses the misa register like a normal register.
[1] https://sourceware.org/ml/gdb-patches/2018-03/msg00136.html
gdb/ChangeLog:
* riscv-tdep.c (struct riscv_inferior_data): Delete.
(riscv_read_misa_reg): Don't cache value read into inferior data.
(riscv_new_inferior_data): Delete.
(riscv_inferior_data_cleanup): Delete.
(riscv_inferior_data): Delete.
(riscv_invalidate_inferior_data): Delete.
(_initialize_riscv_tdep): Remove initialisation of inferior data.
commit c67f2e1518a829c4ae4f346c316701ef5d56a30f
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Wed Aug 29 18:49:51 2018 +0100
gdb: Ensure compiler doesn't optimise variable out in test
In the test gdb.base/funcargs.exp, there's this function:
void recurse (SVAL a, int depth)
{
a.s = a.i = a.l = --depth;
if (depth == 0)
hitbottom ();
else
recurse (a, depth);
}
The test script places a breakpoint in hitbottom, and runs the
executable which calls recurse with an initial depth of 4.
When GDB hits the breakpoint in hitbottom the testscript performs a
backtrace, and examines 'a' at each level.
The problem is that 'a' is not live after either the call to
'hitbottom' or the call to 'recurse', and as a result the test fails.
In the particular case I was looking at GCC for RISC-V 32-bit, the
variable 'a' is on the stack and GCC selects the register $ra (the
return address register) to hold the pointer to 'a'. This is fine,
because, by the time the $ra register is needed to hold a return
address (calling hitbottom or recurse) then 'a' is dead.
In this patch I propose that a use of 'a' is added after the calls to
hitbottom and recurse, this should cause the compiler to keep 'a'
around, which should ensure GDB can find it.
gdb/testsuite/ChangeLog:
* gdb.base/funcargs.c (use_a): New function.
(recurse): Call use_a.
commit a0dc02a6df86011462293cc11b4e35c0f18effd0
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Thu Aug 30 11:09:48 2018 -0400
Fix compile-cplus-types.c build errors
I see these errors when building with clang:
CXX compile/compile-cplus-types.o
/home/emaisin/src/binutils-gdb/gdb/compile/compile-cplus-types.c:306:56: error: cannot pass non-trivial object of type 'compile_scope' to variadic function; expected type from format string was 'void *' [-Wnon-pod-varargs]
fprintf_unfiltered (gdb_stdlog, "leaving scope %p\n", current);
~~ ^~~~~~~
/home/emaisin/src/binutils-gdb/gdb/compile/compile-cplus-types.c:1058:13: error: comparison of two values with different enumeration types ('enum_flags<gcc_cp_qualifiers>::enum_type' (aka 'gcc_cp_qualifiers') and 'gcc_cp_ref_qualifiers') [-Werror,-Wenum-compare]
if (quals != GCC_CP_REF_QUAL_NONE)
~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~
Fix the first one by using host_address_to_string.
Fix the second one by comparing to 0 instead. I think the current
comparison simply uses the wrong enum type. Comparing to 0 seems like
the right thing to do, because we want to check whether any flags are
specified.
gdb/ChangeLog:
* compile/compile-cplus-types.c
(compile_cplus_instance::leave_scope): Take the address of scope
object.
(compile_cplus_instance::convert_qualified_base): Compare quals
to 0.
commit 385e5b9039d12d3c2ab25023e827ee9a681c1aad
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Aug 30 08:01:36 2018 -0700
Treat SHT_FINI_ARRAY and SHT_PREINIT_ARRAY as relocatable sections
Since SHT_FINI_ARRAY and SHT_PREINIT_ARRAY sections are relocatable,
this patch fixes readelf and adds a testcase.
binutils/
* readelf.c (process_section_headers): Treat SHT_FINI_ARRAY and
SHT_PREINIT_ARRAY as relocatable sections.
gas/
* testsuite/gas/elf/elf.exp: Run section14.
* testsuite/gas/elf/section14.d: New file.
* testsuite/gas/elf/section14.s: Likewise.
commit fdad7678b74a170ead1ef967007be087435715f7
Author: Keith Seitz <keiths@redhat.com>
Date: Thu Aug 30 07:47:03 2018 -0700
Use host_address_to_string in compile_cplus_instance::enter_scope
This patch fixes a problem being reported by the buildbot with an
invalid argument to a "%p" printf format. Instead of "%p", the
debug output is changed to use "%s" and host_address_to_string.
gdb/ChangeLog
* compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
Use "%s" and host_address_to_string instead of "%p" in printf.
commit 4c971803c4fb225b029420f812229941beabd42e
Author: Chenghua Xu <paul.hua.gm@gmail.com>
Date: Thu Aug 30 08:30:36 2018 +0800
[MIPS] Add myself as a MIPS port maintainer.
binutils/
* MAINTAINERS: Add myself as a MIPS port maintainer.
commit 450629c8d5a968844271bb02b13d159f6a69ceb1
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Aug 30 00:01:03 2018 +0000
Automatic date update in version.in
commit 078a020797210f4d8f9491bbfe16ec31e9efb652
Author: Keith Seitz <keiths@redhat.com>
Date: Wed Aug 29 15:12:24 2018 -0700
C++ compile support
This patch adds *basic* support for C++ to the compile feature. It does
most simple type conversions, including everything that C compile does and
your basic "with-classes" type of C++.
I've written a new compile-support.exp support file which adds a new test
facility for automating and simplifying "compile print" vs "compile code"
testing. See testsuite/lib/compile-support.exp and CompileExpression
for more on that. The tests use this facility extensively.
This initial support has several glaring omissions:
- No template support at all
I have follow-on patches for this, but they add much complexity
to this "basic" support. Consequently, they will be submitted separately.
- Cannot print functions
The code template needs tweaking, and I simply haven't gotten to it yet.
- So-called "special function" support is not included
Using constructors, destructors, operators, etc will not work. I have
follow-on patches for that, but they require some work because of the
recent churn in symbol searching.
- There are several test suite references to "compile/1234" bugs.
I will file bugs and update the test suite's bug references before pushing
these patches.
The test suite started as a copy of the original C-language support, but
I have written tests to exercise the basic functionality of the plug-in.
I've added a new option for outputting debug messages for C++ type-conversion
("debug compile-cplus-types").
gdb/ChangeLog:
* Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
and compile-cplus-types.c.
(HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
* c-lang.c (cplus_language_defn): Set C++ compile functions.
* c-lang.h (cplus_get_compile_context, cplus_compute_program):
Declare.
* compile/compile-c-support.c: Include compile-cplus.h.
(load_libcompile): Templatize.
(get_compile_context): "New" function.
(c_get_compile_context): Use get_compile_context.
(cplus_get_compile_context): New function.
(cplus_push_user_expression, cplus_pop_user_expression)
(cplus_add_code_header, cplus_add_input, cplus_compile_program)
(cplus_compute_program): Define new structs/functions.
* compile/compile-cplus-symmbols.c: New file.
* compile/compile-cplus-types.c: New file.
* compile/compile-cplus.h: New file.
* compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
Declare.
* compile/compile-object-load.c (get_out_value_type): Use
strncmp_iw when comparing symbol names.
(compile_object_load): Add mst_bss and mst_data.
* compile/compile.c (_initialize_compile): Remove
-Wno-implicit-function-declaration from `compile_args'.
* compile/gcc-cp-plugin.h: New file.
* NEWS: Mention C++ compile support and new debug options.
gdb/testsuite/ChangeLog:
* gdb.compile/compile-cplus-anonymous.cc: New file.
* gdb.compile/compile-cplus-anonymous.exp: New file.
* gdb.compile/compile-cplus-array-decay.cc: New file.
* gdb.compile/compile-cplus-array-decay.exp: New file.
* gdb.compile/compile-cplus-inherit.cc: New file.
* gdb.compile/compile-cplus-inherit.exp: New file.
* gdb.compile/compile-cplus-member.cc: New file.
* gdb.compile/compile-cplus-member.exp: New file.
* gdb.compile/compile-cplus-method.cc: New file.
* gdb.compile/compile-cplus-method.exp: New file.
* gdb.compile/compile-cplus-mod.c: "New" file.
* gdb.compile/compile-cplus-namespace.cc: New file.
* gdb.compile/compile-cplus-namespace.exp: New file.
* gdb.compile/compile-cplus-nested.cc: New file.
* gdb.compile/compile-cplus-nested.exp: New file.
* gdb.compile/compile-cplus-print.c: "New" file.
* gdb.compile/compile-cplus-print.exp: "New" file.
* gdb.compile/compile-cplus-virtual.cc: New file.
* gdb.compile/compile-cplus-virtual.exp: New file.
* gdb.compile/compile-cplus.c: "New" file.
* gdb.compile/compile-cplus.exp: "New" file.
* lib/compile-support.exp: New file.
doc/ChangeLog:
* gdb.texinfo (Compiling and injecting code in GDB): Document
set/show "compile-oracle" and "compile-cplus-types" commands.
commit fcaad03cc027ec2cdf7f2cff70d792867d43c57f
Author: Keith Seitz <keiths@redhat.com>
Date: Wed Aug 29 15:12:23 2018 -0700
Add new search_symbols_multiple API
This patch adds a new symbol searching API based on linespec.c's parser
implementation. This allows users to find "all* matching symbols instead
of the first found match (a la lookup_symbol).
gdb/ChangeLog:
* linespec.c (collect_info::add_symbol): Make virtual.
(struct symbol_searcher_collect_info): New struct.
(symbol_searcher::find_all_symbols): New method.
* symtab.h (class symbol_searcher): New class.
commit 7e41c8db84bc6f74843dda40ae443d41977c0d20
Author: Keith Seitz <keiths@redhat.com>
Date: Wed Aug 29 15:12:23 2018 -0700
Use block_symbol in linespec APIs
This patch changes the linespec.c APIs to use block_symbol instead of just
a symbol. lookup_symbol et al already return block_symbol's.
gdb/ChangeLog:
* linespec.c (struct linespec) <function_symbols, label_symbols>:
Change to vector of block_symbol. Update all users.
(struct collect_info) <symbols>: Likewise.
(collect_info::add_symbol): Take block_symbol as argument.
Update all callers.
(decode_compound_collector) <m_symbols>: Change type to vector
of block_symbol. Update all users.
(decode_compound_collector::operator ()): Change parameter type
to block_symbol.
(find_method, find_function_symbols, find_linespec_symbols)
(find_label_symbols_in_block, find_label_symbols): Change symbol
vectors to block_symbol vectors.
* symtab.h (symbol_found_callback_ftype): Change parameter type to
block_symbol.
commit 63e8c3daad1eae11cef5b6d1833507d9d4d6b0c0
Author: Keith Seitz <keiths@redhat.com>
Date: Wed Aug 29 15:12:23 2018 -0700
Remove VEC definitions from linespec.c
Since they are now no longer necessary, this patch removes the typedefs
and VEC definitions for bound_minimal_symbol_d and symbolp.
gdb/ChangeLog:
* linespec.c (symbolp): Remove typedef and VEC definitions.
(bound_minimal_symbol_d): Likewise.
commit 4dedf84da98ca7dcb9fc80895044d09b5787c1f0
Author: Keith Seitz <keiths@redhat.com>
Date: Wed Aug 29 15:12:23 2018 -0700
Change decode_compound_collector to use std::vector
This patch changes decode_compound_collector to use std::vector instead of
VEC, eliminating a cleanup in the process.
gdb/ChangeLog:
* linespec.c (decode_compound_collector::decode_compound_collector):
Remove initialization for `m_symtabs'.
(decode_compound_collector::release_symbols): Change return type
to std::vector. Update all callers.
(class decode_compound_collector) <m_symbols>: Change type to
std::vector.
(lookup_prefix_sym): Change return type to std::vector. Update all
callers.
(compare_symbols): Remove.
(std_compare_symbols): Rename to `compare_symbols'.
(find_method): Change `sym_classes' parameter to std::vector.
Update all callers. Use std::sort to sort sym_classes.
(find_linespec_symbols): Remove cleanup.
commit c2a031c5822b4256f116254def47b9887c230e68
Author: Keith Seitz <keiths@redhat.com>
Date: Wed Aug 29 15:12:23 2018 -0700
Change `minimal_symbols' to std::vector in linespec.c structures
This patch converts linespec.c's linespec.label_symbols member from a
VEC to a std::vector.
gdb/ChangeLog:
* linespec.c (struct linespec) <minimal_symbols>: Change type to
std::vector. Update all users.
(convert_linespec_to_sals): Use std::sort to sort minimal symbols.
(struct collect_info) <minimal_symbols>: Likewise.
(compare_msymbols): Return bool. Change parameters to const
bound_minimal_symbol references.
(find_method, find_function_symbols, find_linespec_symbols): Change
`minsyms' parameter to std::vector. Update all callers.
commit 3553eadc8cb5f087ea0fb72ebdd1c52264304e0b
Author: Keith Seitz <keiths@redhat.com>
Date: Wed Aug 29 15:12:23 2018 -0700
Change `label_symbols' to std::vector in linespec.c structures
This patch converts linespec.c's linespec.label_symbols member from a
VEC to a std::vector.
gdb/ChangeLog:
* linespec.c (struct linespec) <label_symbols>: Change type to
std::vector. Update all users.
(find_label_symbols_in_block): Change `result' parameter to
std::vector. Update all callers.
(find_label_symbols): Return std::vector. Update all callers.
commit 7243d0118af6f72e3e72db1eb66941fec4530963
Author: Keith Seitz <keiths@redhat.com>
Date: Wed Aug 29 15:12:23 2018 -0700
Change `function_symbols' to std::vector
This patch changes the `function_symbols' members in linespec.c structures
from a VEC to a std::vector.
gdb/ChangeLog:
* linespec.c (struct linespec) <function_symbols>: Change type to
std::vector. Update all users.
(struct collect_info) <function_symbols>: Likewise.
(convert_linespec_to_sals): Use std::sort to sort function_symbols.
(std_compare_symbols): New function.
(find_method, find_function_symbols, find_linespec_symbols)
(find_label_symbols_in_block): Change `symbols' parameter to
std::vector. Update all callers.
(find_label_symbols): Likewise for `function_symbols' and
`label_funcs_ret'.
commit 2a90824133f9d46970c9c52b68ef2ccbeb6389ac
Author: Keith Seitz <keiths@redhat.com>
Date: Wed Aug 29 15:12:23 2018 -0700
Change `file_symtabs' to std::vector
This patch changes the `file_symtabs' members in linespec.c structures
from a VEC to a std::vector (or unique_ptr thereof), eliminating a cleanup
in the process.
gdb/ChangeLog:
* linespec.c (symtab_vector_up): Define.
(struct linespec) <file_symtabs>: Change type to std::vector *.
Update all uses.
(struct collect_info) <file_symtabs>: Likewise.
(collect_symtabs_from_filename): Return symtab_vector_up.
Update all callers.
(decode_objc): Remove cleanup.
(symtab_collector::symtab_collector): Initialize `m_symtabs'.
(symtab_collector::release_symtabs): Return symtab_vector_up.
Update all callers.
(class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
Update all users.
(collect_symtabs_from_filename, symtabs_from_filename): Return
symtab_vector_up. Update all callers.
commit f6c4e3e8a3af94fbecce2a38d3fccc0980616c6d
Author: Tom Tromey <tom@tromey.com>
Date: Wed Aug 29 15:33:23 2018 -0600
Use core_addr_to_string_nz in csky_analyze_prologue
One of the buildbot builders had a failure on a recent try run:
../../binutils-gdb/gdb/csky-tdep.c: In function CORE_ADDR csky_analyze_prologue(gdbarch*, CORE_ADDR, CORE_ADDR, CORE_ADDR, frame_info*, csky_unwind_cache*, lr_type_t):
../../binutils-gdb/gdb/csky-tdep.c:1107:23: error: format %lx expects argument of type long unsigned int, but argument 3 has type CORE_ADDR {aka long long unsigned int} [-Werror=format=]
"0x%lx\n", addr);
^
../../binutils-gdb/gdb/csky-tdep.c:1419:12: error: format %lx expects argument of type long unsigned int, but argument 3 has type CORE_ADDR {aka long long unsigned int} [-Werror=format=]
addr);
^
The fix is to use core_addr_to_string_nz rather than %lx in
csky-tdep.c.
Tested by rebuilding. I'm checking this in.
gdb/ChangeLog
2018-08-29 Tom Tromey <tom@tromey.com>
* csky-tdep.c (csky_analyze_prologue): Use
core_addr_to_string_nz.
commit 73c13fe69a4275433544533a610275861346ef44
Author: Tom Tromey <tom@tromey.com>
Date: Wed Aug 29 11:37:42 2018 -0600
Fix windows-nat.c for -Wnarrowing
Sergio pointed out that the Windows builder was failing due to the
-Wnarrowing patch, with:
../../binutils-gdb/gdb/windows-nat.c:301:27: error: narrowing conversion of '3221225477' from 'DWORD {aka long unsigned int}' to 'int' inside { } [-Wnarrowing]
{-1, GDB_SIGNAL_UNKNOWN}};
^
../../binutils-gdb/gdb/windows-nat.c:301:27: error: narrowing conversion of '3221225725' from 'DWORD {aka long unsigned int}' to 'int' inside { } [-Wnarrowing]
../../binutils-gdb/gdb/windows-nat.c:301:27: error: narrowing conversion of '2147483651' from 'DWORD {aka long unsigned int}' to 'int' inside { } [-Wnarrowing]
../../binutils-gdb/gdb/windows-nat.c:301:27: error: narrowing conversion of '2147483652' from 'DWORD {aka long unsigned int}' to 'int' inside { } [-Wnarrowing]
../../binutils-gdb/gdb/windows-nat.c:301:27: error: narrowing conversion of '3221225614' from 'DWORD {aka long unsigned int}' to 'int' inside { } [-Wnarrowing]
Looking into this, I found two things.
First, in struct xlate_exception, it is better to have "them" be of
type DWORD, as that's the type actually in use.
Second, struct xlate_exception and xlate are not used in this file,
because the code in windows_nat_target::resume is #if'd out.
This patch changes the type of "them", but also similarly #if's out
this object.
In order to avoid a narrowing warning from the -1 entry, at Pedro's
suggestion I have removed this and changed windows_nat_target::resume
to use ranged for.
Tested by rebuilding using the mingw toolchain on x86-64 Fedora 28. I
also tested it by temporarily removing the "#if 0"s and rebuilding.
gdb/ChangeLog
2018-08-29 Tom Tromey <tom@tromey.com>
* windows-nat.c (struct xlate_exception) <them>: Change type to
DWORD.
(xlate): Fix formatting. Remove last entry.
(struct xlate_exception, xlate): Comment out.
(windows_nat_target::resume): Use ranged for.
commit df28970fcc741fa744a51aece29bb755c20eceab
Author: Martin Aberg <maberg@gaisler.com>
Date: Wed Aug 29 20:52:28 2018 +0200
sparc/leon: add support for partial write psr instruction
Partial write %PSR (PWRPSR) is a SPARC V8e option that allows the WRPSR
instruction to only affect the %PSR.ET field. When available it is enabled
by setting the rd field of the WRPSR instruction to a value other than 0.
For Leon processors with support for partial write %PSR (currently GR740
and GR716) the rd value must be 1.
opcodes/ChangeLog:
2018-08-29 Martin Aberg <maberg@gaisler.com>
* sparc-opc.c (sparc_opcodes): Add Leon specific partial write
psr (PWRPSR) instruction.
gas/ChangeLog:
2018-08-29 Daniel Cederman <cederman@gaisler.com>
* testsuite/gas/sparc/leon.d: New test.
* testsuite/gas/sparc/leon.s: New test.
* testsuite/gas/sparc/sparc.exp: Execute the pwrpsr test.
commit 4d3928d7e0a141e0fb16405d33b375cbe2f13123
Author: Jim Wilson <jimw@sifive.com>
Date: Wed Aug 29 10:52:42 2018 -0700
Fix riscv-linux native gdb build failure.
The linux kernel uses NT_PRFPREG. Glibc before BZ 14890 defines NT_FPREGSET.
After it defines both. Avoid glibc version dependency by using the gdb header
file instead of the glibc header file, and the macro name that gdb defines
which is NT_FPREGSET.
gdb/
* riscv-linux-nat.c: Include elf/common.h instead of elf.h.
(riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
of NT_PRFPREG.
(riscv_linux_nat_target::store_registers): Likewise.
commit 7a6dbc2fdb2323c35e981f93236f323e9d7c0b24
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Mon Aug 27 18:56:03 2018 -0400
Update gnulib to current upstream master
It has been a while since we don't update our gnulib copy against
their upstream master branch, so I thought I'd propose this patch. It
also fixes (at least) one bug reported against GDB:
https://sourceware.org/bugzilla/show_bug.cgi?id=23558
The problem reported there is about the replacement of 'getcwd' when
cross-compiling GDB. With our current gnulib copy, the mechanism for
deciding whether to use the system's 'getcwd' or gnulib's version is
too simplistic and pessimistic, so when cross-compiling we always end
up using gnulib's version, which has a limitation: it cannot handle
the situation when the parent directory doesn't have read permissions.
This has been reported against upstream gnulib and the fix has been
pushed here:
https://git.savannah.gnu.org/cgit/gnulib.git/commit/?id=a96d2e67052c879b1bcc5bc461722beac75fc372
I regtested this patch on Fedora 28 x86-64, and there were no
regressions.
OK?
gdb/ChangeLog:
2018-08-29 Sergio Durigan Junior <sergiodj@redhat.com>
PR gdb/23555
PR gdb/23558
* gnulib/aclocal.m4: Regenerate.
* gnulib/config.in: Regenerate.
* gnulib/configure: Regenerate.
* gnulib/import/Makefile.am: Update.
* gnulib/import/Makefile.in: Update.
* gnulib/import/extra/snippet/_Noreturn.h: Rename to...
* gnulib/import/_Noreturn.h: ... this.
* gnulib/import/alloca.in.h: Update.
* gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
* gnulib/import/arg-nonnull.h: ... this.
* gnulib/import/assure.h: Update.
* gnulib/import/at-func.c: Update.
* gnulib/import/basename-lgpl.c: Update.
* gnulib/import/extra/snippet/c++defs.h: Rename to...
* gnulib/import/c++defs.h: ... this.
* gnulib/import/canonicalize-lgpl.c: Update.
* gnulib/import/cdefs.h: Update.
* gnulib/import/chdir-long.c: Update.
* gnulib/import/chdir-long.h: Update.
* gnulib/import/cloexec.c: Update.
* gnulib/import/cloexec.h: Update.
* gnulib/import/close.c: Update.
* gnulib/import/closedir.c: Update.
* gnulib/import/config.charset: Update.
* gnulib/import/dirent-private.h: Update.
* gnulib/import/dirent.in.h: Update.
* gnulib/import/dirfd.c: Update.
* gnulib/import/dirname-lgpl.c: Update.
* gnulib/import/dirname.h: Update.
* gnulib/import/dosname.h: Update.
* gnulib/import/dup-safer-flag.c: Update.
* gnulib/import/dup-safer.c: Update.
* gnulib/import/dup.c: Update.
* gnulib/import/dup2.c: Update.
* gnulib/import/errno.in.h: Update.
* gnulib/import/error.c: Update.
* gnulib/import/error.h: Update.
* gnulib/import/exitfail.c: Update.
* gnulib/import/exitfail.h: Update.
* gnulib/import/extra/update-copyright: Update.
* gnulib/import/fchdir.c: Update.
* gnulib/import/fcntl.c: Update.
* gnulib/import/fcntl.in.h: Update.
* gnulib/import/fd-hook.c: Update.
* gnulib/import/fd-hook.h: Update.
* gnulib/import/fd-safer-flag.c: Update.
* gnulib/import/fd-safer.c: Update.
* gnulib/import/fdopendir.c: Update.
* gnulib/import/filename.h: Update.
* gnulib/import/filenamecat-lgpl.c: Update.
* gnulib/import/filenamecat.h: Update.
* gnulib/import/flexmember.h: Update.
* gnulib/import/float+.h: Update.
* gnulib/import/float.c: Update.
* gnulib/import/float.in.h: Update.
* gnulib/import/fnmatch.c: Update.
* gnulib/import/fnmatch.in.h: Update.
* gnulib/import/fnmatch_loop.c: Update.
* gnulib/import/fpucw.h: Update.
* gnulib/import/frexp.c: Update.
* gnulib/import/frexpl.c: Update.
* gnulib/import/fstat.c: Update.
* gnulib/import/fstatat.c: Update.
* gnulib/import/getcwd-lgpl.c: Update.
* gnulib/import/getcwd.c: Update.
* gnulib/import/getdtablesize.c: Update.
* gnulib/import/getlogin_r.c: Update.
* gnulib/import/getprogname.c: Update.
* gnulib/import/getprogname.h: Update.
* gnulib/import/gettext.h: Update.
* gnulib/import/gettimeofday.c: Update.
* gnulib/import/glob-libc.h: Update.
* gnulib/import/glob.c: Update.
* gnulib/import/glob.in.h: Update.
* gnulib/import/glob_internal.h: Update.
* gnulib/import/glob_pattern_p.c: Update.
* gnulib/import/globfree.c: Update.
* gnulib/import/hard-locale.c: Update.
* gnulib/import/hard-locale.h: Update.
* gnulib/import/intprops.h: Update.
* gnulib/import/inttypes.in.h: Update.
* gnulib/import/isnan.c: Update.
* gnulib/import/isnand-nolibm.h: Update.
* gnulib/import/isnand.c: Update.
* gnulib/import/isnanl-nolibm.h: Update.
* gnulib/import/isnanl.c: Update.
* gnulib/import/itold.c: Update.
* gnulib/import/libc-config.h: Update.
* gnulib/import/limits.in.h: Update.
* gnulib/import/localcharset.c: Update.
* gnulib/import/localcharset.h: Update.
* gnulib/import/localtime-buffer.c: Update.
* gnulib/import/localtime-buffer.h: Update.
* gnulib/import/lstat.c: Update.
* gnulib/import/m4/00gnulib.m4: Update.
* gnulib/import/m4/__inline.m4: Update.
* gnulib/import/m4/absolute-header.m4: Update.
* gnulib/import/m4/alloca.m4: Update.
* gnulib/import/m4/builtin-expect.m4: Update.
* gnulib/import/m4/canonicalize.m4: Update.
* gnulib/import/m4/chdir-long.m4: Update.
* gnulib/import/m4/close.m4: Update.
* gnulib/import/m4/closedir.m4: Update.
* gnulib/import/m4/configmake.m4: Update.
* gnulib/import/m4/d-ino.m4: Update.
* gnulib/import/m4/d-type.m4: Update.
* gnulib/import/m4/dirent_h.m4: Update.
* gnulib/import/m4/dirfd.m4: Update.
* gnulib/import/m4/dirname.m4: Update.
* gnulib/import/m4/double-slash-root.m4: Update.
* gnulib/import/m4/dup.m4: Update.
* gnulib/import/m4/dup2.m4: Update.
* gnulib/import/m4/eealloc.m4: Update.
* gnulib/import/m4/environ.m4: Update.
* gnulib/import/m4/errno_h.m4: Update.
* gnulib/import/m4/error.m4: Update.
* gnulib/import/m4/exponentd.m4: Update.
* gnulib/import/m4/exponentl.m4: Update.
* gnulib/import/m4/extensions.m4: Update.
* gnulib/import/m4/extern-inline.m4: Update.
* gnulib/import/m4/fchdir.m4: Update.
* gnulib/import/m4/fcntl-o.m4: Update.
* gnulib/import/m4/fcntl.m4: Update.
* gnulib/import/m4/fcntl_h.m4: Update.
* gnulib/import/m4/fdopendir.m4: Update.
* gnulib/import/m4/filenamecat.m4: Update.
* gnulib/import/m4/flexmember.m4: Update.
* gnulib/import/m4/float_h.m4: Update.
* gnulib/import/m4/fnmatch.m4: Update.
* gnulib/import/m4/fnmatch_h.m4: Update.
* gnulib/import/m4/fpieee.m4: Update.
* gnulib/import/m4/frexp.m4: Update.
* gnulib/import/m4/frexpl.m4: Update.
* gnulib/import/m4/fstat.m4: Update.
* gnulib/import/m4/fstatat.m4: Update.
* gnulib/import/m4/getcwd-abort-bug.m4: Update.
* gnulib/import/m4/getcwd-path-max.m4: Update.
* gnulib/import/m4/getcwd.m4: Update.
* gnulib/import/m4/getdtablesize.m4: Update.
* gnulib/import/m4/getlogin.m4: Update.
* gnulib/import/m4/getlogin_r.m4: Update.
* gnulib/import/m4/getpagesize.m4: Update.
* gnulib/import/m4/getprogname.m4: Update.
* gnulib/import/m4/gettimeofday.m4: Update.
* gnulib/import/m4/glibc21.m4: Update.
* gnulib/import/m4/glob.m4: Update.
* gnulib/import/m4/glob_h.m4: Update.
* gnulib/import/m4/gnulib-cache.m4: Update.
* gnulib/import/m4/gnulib-common.m4: Update.
* gnulib/import/m4/gnulib-comp.m4: Update.
* gnulib/import/m4/gnulib-tool.m4: Update.
* gnulib/import/m4/hard-locale.m4: Update.
* gnulib/import/m4/include_next.m4: Update.
* gnulib/import/m4/inttypes-pri.m4: Update.
* gnulib/import/m4/inttypes.m4: Update.
* gnulib/import/m4/isnand.m4: Update.
* gnulib/import/m4/isnanl.m4: Update.
* gnulib/import/m4/largefile.m4: Update.
* gnulib/import/m4/limits-h.m4: Update.
* gnulib/import/m4/localcharset.m4: Update.
* gnulib/import/m4/locale-fr.m4: Update.
* gnulib/import/m4/locale-ja.m4: Update.
* gnulib/import/m4/locale-zh.m4: Update.
* gnulib/import/m4/localtime-buffer.m4: Update.
* gnulib/import/m4/longlong.m4: Update.
* gnulib/import/m4/lstat.m4: Update.
* gnulib/import/m4/malloc.m4: Update.
* gnulib/import/m4/malloca.m4: Update.
* gnulib/import/m4/math_h.m4: Update.
* gnulib/import/m4/mbrtowc.m4: Update.
* gnulib/import/m4/mbsinit.m4: Update.
* gnulib/import/m4/mbsrtowcs.m4: Update.
* gnulib/import/m4/mbstate_t.m4: Update.
* gnulib/import/m4/memchr.m4: Update.
* gnulib/import/m4/memmem.m4: Update.
* gnulib/import/m4/mempcpy.m4: Update.
* gnulib/import/m4/memrchr.m4: Update.
* gnulib/import/m4/mkdir.m4: Update.
* gnulib/import/m4/mkstemp.m4: Update.
* gnulib/import/m4/mmap-anon.m4: Update.
* gnulib/import/m4/mode_t.m4: Update.
* gnulib/import/m4/msvc-inval.m4: Update.
* gnulib/import/m4/msvc-nothrow.m4: Update.
* gnulib/import/m4/multiarch.m4: Update.
* gnulib/import/m4/nocrash.m4: Update.
* gnulib/import/m4/off_t.m4: Update.
* gnulib/import/m4/onceonly.m4: Update.
* gnulib/import/m4/open-cloexec.m4: Update.
* gnulib/import/m4/open.m4: Update.
* gnulib/import/m4/openat.m4: Update.
* gnulib/import/m4/opendir.m4: Update.
* gnulib/import/m4/pathmax.m4: Update.
* gnulib/import/m4/rawmemchr.m4: Update.
* gnulib/import/m4/readdir.m4: Update.
* gnulib/import/m4/readlink.m4: Update.
* gnulib/import/m4/realloc.m4: Update.
* gnulib/import/m4/rename.m4: Update.
* gnulib/import/m4/rewinddir.m4: Update.
* gnulib/import/m4/rmdir.m4: Update.
* gnulib/import/m4/save-cwd.m4: Update.
* gnulib/import/m4/secure_getenv.m4: Update.
* gnulib/import/m4/setenv.m4: Update.
* gnulib/import/m4/signal_h.m4: Update.
* gnulib/import/m4/ssize_t.m4: Update.
* gnulib/import/m4/stat-time.m4: Update.
* gnulib/import/m4/stat.m4: Update.
* gnulib/import/m4/std-gnu11.m4: Update.
* gnulib/import/m4/stdbool.m4: Update.
* gnulib/import/m4/stddef_h.m4: Update.
* gnulib/import/m4/stdint.m4: Update.
* gnulib/import/m4/stdio_h.m4: Update.
* gnulib/import/m4/stdlib_h.m4: Update.
* gnulib/import/m4/strchrnul.m4: Update.
* gnulib/import/m4/strdup.m4: Update.
* gnulib/import/m4/strerror.m4: Update.
* gnulib/import/m4/string_h.m4: Update.
* gnulib/import/m4/strstr.m4: Update.
* gnulib/import/m4/strtok_r.m4: Update.
* gnulib/import/m4/sys_socket_h.m4: Update.
* gnulib/import/m4/sys_stat_h.m4: Update.
* gnulib/import/m4/sys_time_h.m4: Update.
* gnulib/import/m4/sys_types_h.m4: Update.
* gnulib/import/m4/tempname.m4: Update.
* gnulib/import/m4/time_h.m4: Update.
* gnulib/import/m4/unistd-safer.m4: Update.
* gnulib/import/m4/unistd_h.m4: Update.
* gnulib/import/m4/warn-on-use.m4: Update.
* gnulib/import/m4/wchar_h.m4: Update.
* gnulib/import/m4/wchar_t.m4: Update.
* gnulib/import/m4/wctype_h.m4: Update.
* gnulib/import/m4/wint_t.m4: Update.
* gnulib/import/malloc.c: Update.
* gnulib/import/malloc/scratch_buffer.h: Update.
* gnulib/import/malloc/scratch_buffer_grow.c: Update.
* gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
* gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
* gnulib/import/malloca.c: Update.
* gnulib/import/malloca.h: Update.
* gnulib/import/malloca.valgrind: Update.
* gnulib/import/math.in.h: Update.
* gnulib/import/mbrtowc.c: Update.
* gnulib/import/mbsinit.c: Update.
* gnulib/import/mbsrtowcs-impl.h: Update.
* gnulib/import/mbsrtowcs-state.c: Update.
* gnulib/import/mbsrtowcs.c: Update.
* gnulib/import/memchr.c: Update.
* gnulib/import/memmem.c: Update.
* gnulib/import/mempcpy.c: Update.
* gnulib/import/memrchr.c: Update.
* gnulib/import/mkdir.c: Update.
* gnulib/import/mkstemp.c: Update.
* gnulib/import/msvc-inval.c: Update.
* gnulib/import/msvc-inval.h: Update.
* gnulib/import/msvc-nothrow.c: Update.
* gnulib/import/msvc-nothrow.h: Update.
* gnulib/import/open.c: Update.
* gnulib/import/openat-die.c: Update.
* gnulib/import/openat-priv.h: Update.
* gnulib/import/openat-proc.c: Update.
* gnulib/import/openat.c: Update.
* gnulib/import/openat.h: Update.
* gnulib/import/opendir.c: Update.
* gnulib/import/pathmax.h: Update.
* gnulib/import/pipe-safer.c: Update.
* gnulib/import/rawmemchr.c: Update.
* gnulib/import/readdir.c: Update.
* gnulib/import/readlink.c: Update.
* gnulib/import/realloc.c: Update.
* gnulib/import/ref-add.sin: Update.
* gnulib/import/ref-del.sin: Update.
* gnulib/import/rename.c: Update.
* gnulib/import/rewinddir.c: Update.
* gnulib/import/rmdir.c: Update.
* gnulib/import/same-inode.h: Update.
* gnulib/import/save-cwd.c: Update.
* gnulib/import/save-cwd.h: Update.
* gnulib/import/scratch_buffer.h: Update.
* gnulib/import/secure_getenv.c: Update.
* gnulib/import/setenv.c: Update.
* gnulib/import/signal.in.h: Update.
* gnulib/import/stat-time.c: Update.
* gnulib/import/stat-time.h: Update.
* gnulib/import/stat-w32.c: Update.
* gnulib/import/stat-w32.h: Update.
* gnulib/import/stat.c: Update.
* gnulib/import/stdbool.in.h: Update.
* gnulib/import/stddef.in.h: Update.
* gnulib/import/stdint.in.h: Update.
* gnulib/import/stdio.in.h: Update.
* gnulib/import/stdlib.in.h: Update.
* gnulib/import/str-two-way.h: Update.
* gnulib/import/strchrnul.c: Update.
* gnulib/import/strdup.c: Update.
* gnulib/import/streq.h: Update.
* gnulib/import/strerror-override.c: Update.
* gnulib/import/strerror-override.h: Update.
* gnulib/import/strerror.c: Update.
* gnulib/import/string.in.h: Update.
* gnulib/import/stripslash.c: Update.
* gnulib/import/strnlen1.c: Update.
* gnulib/import/strnlen1.h: Update.
* gnulib/import/strstr.c: Update.
* gnulib/import/strtok_r.c: Update.
* gnulib/import/sys_stat.in.h: Update.
* gnulib/import/sys_time.in.h: Update.
* gnulib/import/sys_types.in.h: Update.
* gnulib/import/tempname.c: Update.
* gnulib/import/tempname.h: Update.
* gnulib/import/time.in.h: Update.
* gnulib/import/unistd--.h: Update.
* gnulib/import/unistd-safer.h: Update.
* gnulib/import/unistd.in.h: Update.
* gnulib/import/unsetenv.c: Update.
* gnulib/import/verify.h: Update.
* gnulib/import/extra/snippet/warn-on-use.h: Update.
* gnulib/import/wchar.in.h: Update.
* gnulib/import/wctype.in.h: Update.
* gnulib/import/xalloc-oversized.h: Update.
* gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
"53e2c179f26a890fa6685af4b6c1397ee370433b".
commit b0f492b90f3d13da8ac80437e6ecb9a87db4a75b
Author: Gary Benson <gbenson@redhat.com>
Date: Wed Aug 29 16:11:50 2018 +0100
Indicate batch mode failures by exiting with nonzero status
This commit causes GDB in batch mode to exit with nonzero status
if the last command to be executed fails.
gdb/ChangeLog:
PR gdb/13000:
* gdb/main.c (captured_main_1): Exit with nonzero status
in batch mode if the last command to be executed failed.
* NEWS: Mention the above.
gdb/testsuite/ChangeLog:
PR gdb/13000:
* gdb.base/batch-exit-status.exp: New file.
* gdb.base/batch-exit-status.good-commands: Likewise.
* gdb.base/batch-exit-status.bad-commands: Likewise.
commit 2362e7f76adb395df19c867cd27c75f77a0ade6f
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed Aug 29 10:26:11 2018 -0400
Remove newline at end of warning message
... to fix this ARI warning:
gdb/csky-tdep.c:1612: gettext: trailing new line: A message should not have a trailing new line
gdb/csky-tdep.c:1612: warning (_("Invalid breakpoint address 0x%x is an odd number.\n"),
gdb/ChangeLog:
* csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
end of warning message.
commit 9108bc33b1ca0b2e930c0cce5b1a0394e33e86be
Author: Chenghua Xu <paul.hua.gm@gmail.com>
Date: Wed Aug 29 20:55:25 2018 +0800
[MIPS] Add Loongson 2K1000 proccessor support.
bfd/
* archures.c (bfd_architecture): New machine
bfd_mach_mips_gs264e.
* bfd-in2.h (bfd_architecture): Likewise.
* cpu-mips.c (enum I_xxx): Likewise.
(arch_info_struct): Likewise.
* elfxx-mips.c (_bfd_elf_mips_mach): Handle
E_MIPS_MACH_GS264E.
(mips_set_isa_flags): Likewise.
(mips_mach_extensions): Map bfd_mach_mips_gs264e to
bfd_mach_mips_gs464e extension.
binutils/
* NEWS: Mention Loongson 2K1000 proccessor support.
* readelf.c (get_machine_flags): Handle gs264e.
elfcpp/
* mips.c (EF_MIPS_MACH): New E_MIPS_MACH_GS264E.
gas/
* config/tc-mips.c (ISA_HAS_ODD_SINGLE_FPR): Exclude CPU_GS264E.
(mips_cpu_info_table): Add gs264e descriptors.
* doc/as.texi (march table): Add gs264e.
include/
* elf/mips.h (E_MIPS_MACH_XXX): New E_MIPS_MACH_GS264E.
* opcode/mips.h (CPU_XXX): New CPU_GS264E.
ld/
* testsuite/ld-mips-elf/mips-elf-flags.exp: Run good_combination
gs264e and gs464e.
opcodes/
* mips-dis.c (mips_arch_choices): Add gs264e descriptors.
commit bd782c07b914f28fd927cec42eacd8adcf556dca
Author: Chenghua Xu <paul.hua.gm@gmail.com>
Date: Wed Aug 29 20:36:23 2018 +0800
[MIPS] Add Loongson 3A2000/3A3000 proccessor support.
bfd/
* archures.c (bfd_architecture): New machine
bfd_mach_mips_gs464e.
* bfd-in2.h (bfd_architecture): Likewise.
* cpu-mips.c (enum I_xxx): Likewise.
(arch_info_struct): Likewise.
* elfxx-mips.c (_bfd_elf_mips_mach): Handle
E_MIPS_MACH_GS464E.
(mips_set_isa_flags): Likewise.
(mips_mach_extensions): Map bfd_mach_mips_gs464e to
bfd_mach_mips_gs464 extension.
binutils/
* NEWS: Mention Loongson 3A2000/3A3000 proccessor support.
* readelf.c (get_machine_flags): Handle gs464e.
elfcpp/
* mips.c (EF_MIPS_MACH): New E_MIPS_MACH_GS464E.
gas/
* config/tc-mips.c (ISA_HAS_ODD_SINGLE_FPR): Exclude CPU_GS464E.
(mips_cpu_info_table): Add gs464e descriptors.
* doc/as.texi (march table): Add gs464e.
include/
* elf/mips.h (E_MIPS_MACH_XXX): New E_MIPS_MACH_GS464E.
* opcode/mips.h (CPU_XXX): New CPU_GS464E.
ld/
* testsuite/ld-mips-elf/mips-elf-flags.exp: Run good_combination
gs464e and gs464.
opcodes/
* mips-dis.c (mips_arch_choices): Add gs464e descriptors.
commit ac8cb70f3690b4eace1325c7ff918dce9073da7c
Author: Chenghua Xu <paul.hua.gm@gmail.com>
Date: Wed Aug 29 20:13:00 2018 +0800
[MIPS] Add Loongson 3A1000 proccessor support.
bfd/
* archures.c (bfd_architecture): Rename
bfd_mach_mips_loongson_3a to bfd_mach_mips_gs464.
* bfd-in2.h (bfd_architecture): Likewise.
* cpu-mips.c (enum I_xxx): Likewise.
(arch_info_struct): Likewise.
* elfxx-mips.c (_bfd_elf_mips_mach): Likewise.
(mips_set_isa_flags): Likewise.
(mips_mach_extensions): Likewise.
(bfd_mips_isa_ext_mach): Likewise.
(bfd_mips_isa_ext): Likewise.
(print_mips_isa_ext): Delete AFL_EXT_LOONGSON_3A.
binutils/
* NEWS: Mention Loongson 3A1000 proccessor support.
* readelf.c (get_machine_flags): Rename loongson-3a to gs464.
(print_mips_isa_ext): Delete AFL_EXT_LOONGSON_3A.
elfcpp/
* mips.c (EF_MIPS_MACH): Rename E_MIPS_MACH_LS3A to
E_MIPS_MACH_GS464.
gas/
* config/tc-mips.c (ISA_HAS_ODD_SINGLE_FPR): Rename
CPU_LOONGSON_3A to CPU_GS464.
(mips_cpu_info_table): Add gs464 descriptors, Keep
loongson3a as an alias of gs464 for compatibility.
* doc/as.texi (march table): Rename loongson3a to gs464.
* testsuite/gas/mips/loongson-3a-mmi.d: Set "ISA Extension"
flag to None.
gold/
* mips.cc (Mips_mach, add_machine_extensions, elf_mips_mach):
Rename loongson3a to gs464.
(mips_isa_ext_mach, mips_isa_ext): Delete loongson3a.
(infer_abiflags): Use ases instead of isa_ext for infer ABI
flags.
(elf_mips_mach_name): Rename loongson3a to gs464.
include/
* elf/mips.h (E_MIPS_MACH_XXX): Rename E_MIPS_MACH_LS3A to
E_MIPS_MACH_GS464.
(AFL_EXT_XXX): Delete AFL_EXT_LOONGSON_3A.
* opcode/mips.h (INSN_XXX): Delete INSN_LOONGSON_3A.
(CPU_XXX): Rename CPU_LOONGSON_3A to CPU_GS464.
* opcode/mips.h (mips_isa_table): Delete CPU_LOONGSON_3A case.
ld/
* testsuite/ld-mips-elf/mips-elf-flags.exp: Rename loongson3a
to gs464.
opcodes/
* mips-dis.c (mips_arch_choices): Add gs464 descriptors, Keep
loongson3a as an alias of gs464 for compatibility.
* mips-opc.c (mips_opcodes): Change Comments.
commit a693765e23934996abbe4e44c4ba28eabdece4f9
Author: Chenghua Xu <paul.hua.gm@gmail.com>
Date: Wed Aug 29 20:08:58 2018 +0800
[MIPS/GAS] Add Loongson EXT2 Instructions support.
bfd/
* elfxx-mips.c (print_mips_ases): Add Loongson EXT2 extension.
binutils/
* readelf.c (print_mips_ases): Add Loongson EXT2 extension.
gas/
* NEWS: Mention Loongson EXTensions R2 (EXT2) support.
* config/tc-mips.c (options): Add OPTION_LOONGSON_EXT2 and
OPTION_NO_LOONGSON_EXT2.
(md_longopts): Likewise.
(mips_ases): Define availability for EXT.
(mips_convert_ase_flags): Map ASE_LOONGSON_EXT2 to
AFL_ASE_LOONGSON_EXT2.
(md_show_usage): Add help for -mloongson-ext2 and
-mno-loongson-ext2.
* doc/as.texi: Document -mloongson-ext2, -mno-loongson-ext2.
* doc/c-mips.texi: Document -mloongson-ext2, -mno-loongson-ext2,
.set loongson-ext2 and .set noloongson-ext2.
* testsuite/gas/mips/loongson-ext2.d: New test.
* testsuite/gas/mips/loongson-ext2.s: New test.
* testsuite/gas/mips/mips.exp: Run loongson-ext2 test.
include/
* elf/mips.h (AFL_ASE_LOONGSON_EXT2): New macro.
(AFL_ASE_MASK): Update to include AFL_ASE_LOONGSON_EXT2.
* opcode/mips.h (ASE_LOONGSON_EXT2): New macro.
opcodes/
* mips-dis.c (parse_mips_ase_option): Handle -M loongson-ext
option.
(print_mips_disassembler_options): Document -M loongson-ext.
* mips-opc.c (LEXT2): New macro.
(mips_opcodes): Add cto, ctz, dcto, dctz instructions.
commit bdc6c06e3b08ec48ec5ee2174dedc846969c36fd
Author: Chenghua Xu <paul.hua.gm@gmail.com>
Date: Wed Aug 29 19:57:39 2018 +0800
[MIPS/GAS] Split Loongson EXT Instructions from loongson3a.
bfd/
* elfxx-mips.c (infer_mips_abiflags): Use ases instead of
isa_ext for infer ABI flags.
(print_mips_ases): Add Loongson EXT extension.
binutils/
* readelf.c (print_mips_ases): Add Loongson EXT extension.
elfcpp/
* mips.h (AFL_ASE_LOONGSON_EXT): New enum.
gas/
* NEWS: Mention Loongson EXTensions (EXT) support.
* config/tc-mips.c (options): Add OPTION_LOONGSON_EXT and
OPTION_NO_LOONGSON_EXT.
(md_longopts): Likewise.
(mips_ases): Define availability for EXT.
(mips_convert_ase_flags): Map ASE_LOONGSON_EXT to
AFL_ASE_LOONGSON_EXT.
(mips_cpu_info_table): Add ASE_LOONGSON_EXT for loongson3a.
(md_show_usage): Add help for -mloongson-ext and
-mno-loongson-ext.
* doc/as.texi: Document -mloongson-ext, -mno-loongson-ext.
* doc/c-mips.texi: Document -mloongson-ext, -mno-loongson-ext,
.set loongson-ext and .set noloongson-ext.
* testsuite/gas/mips/loongson-mmi.d: Add ASE flag.
include/
* elf/mips.h (AFL_ASE_LOONGSON_EXT): New macro.
(AFL_ASE_MASK): Update to include AFL_ASE_LOONGSON_EXT.
* opcode/mips.h (ASE_LOONGSON_EXT): New macro.
opcodes/
* mips-dis.c (mips_arch_choices): Add EXT to loongson3a
descriptors.
(parse_mips_ase_option): Handle -M loongson-ext option.
(print_mips_disassembler_options): Document -M loongson-ext.
* mips-opc.c (IL3A): Delete.
* mips-opc.c (LEXT): New macro.
(mips_opcodes): Replace IL2F|IL3A marking with LEXT for EXT
instructions.
commit 716c08de28589a5560b3337f1b935ed84a49b5e5
Author: Chenghua Xu <paul.hua.gm@gmail.com>
Date: Wed Aug 29 17:39:33 2018 +0800
[MIPS/GAS] Split Loongson CAM Instructions from loongson3a
bfd/
* elfxx-mips.c (print_mips_ases): Add CAM extension.
binutils/
* readelf.c (print_mips_ases): Add CAM extension.
gas/
* NEWS: Mention Loongson Content Address Memory (CAM)
support.
* config/tc-mips.c (options): Add OPTION_LOONGSON_CAM and
OPTION_NO_LOONGSON_CAM.
(md_longopts): Likewise.
(mips_ases): Define availability for CAM.
(mips_convert_ase_flags): Map ASE_LOONGSON_CAM to
AFL_ASE_LOONGSON_CAM.
(mips_cpu_info_table): Add ASE_LOONGSON_CAM for loongson3a.
(md_show_usage): Add help for -mloongson-cam and
-mno-loongson-cam.
* doc/as.texi: Document -mloongson-cam, -mno-loongson-cam.
* doc/c-mips.texi: Document -mloongson-cam, -mno-loongson-cam,
.set loongson-cam and .set noloongson-cam.
* testsuite/gas/mips/loongson-3a-2.d: Move cam test to ...
* testsuite/gas/mips/loongson-cam.d: Here. Add ISA/ASE
flag verification.
* testsuite/gas/mips/loongson-3a-2.s: Move cam test to ...
* testsuite/gas/mips/loongson-cam.s: Here.
* testsuite/gas/mips/loongson-3a-mmi.d: Add ASE flag.
* testsuite/gas/mips/mips.exp: Run loongson-cam test.
include/
* elf/mips.h (AFL_ASE_LOONGSON_CAM): New macro.
(AFL_ASE_MASK): Update to include AFL_ASE_LOONGSON_CAM.
* opcode/mips.h (ASE_LOONGSON_CAM): New macro.
opcodes/
* mips-dis.c (mips_arch_choices): Add CAM to loongson3a
descriptors.
(parse_mips_ase_option): Handle -M loongson-cam option.
(print_mips_disassembler_options): Document -M loongson-cam.
* mips-opc.c (LCAM): New macro.
(mips_opcodes): Replace IL2F|IL3A marking with LCAM for CAM
instructions.
commit 36eb4c5f9bbe675a4522a763652f463e5519a955
Author: Alan Hayward <alan.hayward@arm.com>
Date: Wed Aug 29 11:43:53 2018 +0100
infcall-nested-structs: Test up to five fields
Aarch64 can pass structures of up to four members of identical
types in float registers (See AAPCS 5.3 and 5.4). Expand test to
cover this.
Remove the need to specify an additional sets of structures if tB
is not defined.
gdb/testsuite/
* gdb.base/infcall-nested-structs.c (struct struct01): Remove.
(struct struct02): Likewise.
(struct struct03): Likewise.
(struct struct04): Likewise.
(struct struct_01_01): New struct.
(struct struct_01_02): Likewise.
(struct struct_01_03): Likewise.
(struct struct_01_04): Likewise.
(struct struct_02_01): Likewise.
(struct struct_02_02): Likewise.
(struct struct_02_03): Likewise.
(struct struct_02_04): Likewise.
(struct struct_04_01): Likewise.
(struct struct_04_02): Likewise.
(struct struct_04_03): Likewise.
(struct struct_04_04): Likewise.
(struct struct_05_01): Likewise.
(struct struct_05_02): Likewise.
(struct struct_05_03): Likewise.
(struct struct_05_04): Likewise.
(cmp_struct01): Remove function.
(cmp_struct02): Likewise.
(cmp_struct03): Likewise.
(cmp_struct04): Likewise.
(cmp_struct_01_01): Add Function.
(cmp_struct_01_02): Likewise.
(cmp_struct_01_03): Likewise.
(cmp_struct_01_04): Likewise.
(cmp_struct_02_01): Likewise.
(cmp_struct_02_02): Likewise.
(cmp_struct_02_03): Likewise.
(cmp_struct_02_04): Likewise.
(cmp_struct_04_01): Likewise.
(cmp_struct_04_02): Likewise.
(cmp_struct_04_03): Likewise.
(cmp_struct_04_04): Likewise.
(cmp_struct_05_01): Likewise.
(cmp_struct_05_02): Likewise.
(cmp_struct_05_03): Likewise.
(cmp_struct_05_04): Likewise.
(call_all): Add new structs.
* gdb.base/infcall-nested-structs.exp: Likewise.
commit 4f4aedebed5397ba285c2abcd13fa0206d8af291
Author: Alan Hayward <alan.hayward@arm.com>
Date: Wed Aug 29 11:41:45 2018 +0100
Aarch64: Float register detection for return values
Use aapcs_is_vfp_call_or_return_candidate to detect float register
args.
gdb/
PR gdb/22943:
* aarch64-tdep.c (is_hfa_or_hva): Remove function.
(aarch64_extract_return_value): Use
aapcs_is_vfp_call_or_return_candidate.
(aarch64_return_in_memory): Likewise.
(aarch64_store_return_value): Likewise.
commit 0e745c601150523093323c3fc77835604221a634
Author: Alan Hayward <alan.hayward@arm.com>
Date: Wed Aug 29 11:40:05 2018 +0100
Aarch64: Float register detection for _push_dummy_call
Use aapcs_is_vfp_call_or_return_candidate to detect float register
args, then pass in registers if there is room.
gdb/
* aarch64-tdep.c
(aapcs_is_vfp_call_or_return_candidate): Make static
(pass_in_v_or_stack): Remove function.
(pass_in_v_vfp_candidate): New function.
(aarch64_push_dummy_call): Check for float register candidates.
commit ea92689a179c8c03af2ae46989339336d1dd48cd
Author: Alan Hayward <alan.hayward@arm.com>
Date: Wed Aug 29 11:28:10 2018 +0100
Aarch64: Func to detect args passed in float regs
aapcs_is_vfp_call_or_return_candidate is as an eventual replacement
for is_hfa_or_hva.
This function is based on the GCC code
gcc/config/aarch64/aarch64.c:aarch64_vfp_is_call_or_return_candidate ()
gdb/
* aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
(aapcs_is_vfp_call_or_return_candidate_1): New function.
(aapcs_is_vfp_call_or_return_candidate): Likewise.
commit bc672693ccec6ef2faa057726b06e9515339bb74
Author: Chenghua Xu <paul.hua.gm@gmail.com>
Date: Wed Aug 29 17:12:44 2018 +0800
[MIPS/LD/testsuite] Skip o32 flags check on mips*-*-irix*
ld/ChangeLog:
* testsuite/ld-mips-elf/mips-elf-flags.exp (good_combination):
Skip o32 flags checking if target is mips*-*-irix*.
commit 160fc977b6f33e5ef51f6c1f3cdcb57965c522c8
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Aug 29 00:00:38 2018 +0000
Automatic date update in version.in
commit ad202fcc2277f351d41d4d4e897ad4f6d7c9f043
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Tue Aug 28 13:29:32 2018 -0400
Get rid of -Wodr warning (PR build/23399)
The PR reports that building with -Wodr -flto complains about different
versions of struct ipa_sym_addresses, in common/agent.c and
gdbserver/tracepoint.c. This patch renames the version in common to
ipa_sym_addresses_common to avoid the name clash. Because the IPA_SYM
assumed the name ipa_sym_addresses, it now requires the includer to
define the IPA_SYM_STRUCT_NAME macro to define the name of the structure
holding the IPA symbol addresses.
gdb/ChangeLog:
PR build/23399
* common/agent.c (IPA_SYM_STRUCT_NAME): Define.
(struct ipa_sym_addresses): Rename to...
(struct ipa_sym_addresses_common): ... this.
* common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
gdb/gdbserver/ChangeLog:
PR build/23399
* tracepoint.c (IPA_SYM_STRUCT_NAME): Define.
commit ead9aa39bfc80007336bc96c6374df7f79341485
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Thu Aug 2 23:15:23 2018 +0200
Modify gdb.base/commands.exp to test multi breakpoints command clearing.
gdb/testsuite/ChangeLog
2018-08-26 Philippe Waroquiers <philippe.waroquiers@skynet.be>
* gdb.base/commands.exp: Test multi breakpoints command clearing.
commit 999700cd99a227bd6848e95cdc99117b2185e84c
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Thu Aug 2 23:13:22 2018 +0200
Fix regression for multi breakpoints command line clearing.
breakpoint.c is modified to fix the regression introduced
when clearing the commands of several breakpoints by giving an empty
list of commands, by just typing "end".
GDB should read an empty list of command once, but it reads
it for each breakpoint, as an empty list of command is NULL,
and NULL is interpreted as 'not having read the command list yet'.
The fix consists in having a boolean set to true once the
command list has been read.
gdb/ChangeLog
2018-08-26 Philippe Waroquiers <philippe.waroquiers@skynet.be>
* breakpoint.c (commands_command_1): New boolean cmd_read
to detect cmd was already read.
commit 5fe3f3e4633df1ea76ff24a2732d7c73dc983b90
Author: Tom Tromey <tom@tromey.com>
Date: Sun Jul 22 10:05:14 2018 -0600
Remove some uses of VEC from parsers
This changes some uses of VEC in a few parsers to std::vector instead.
Tested by the buildbot.
gdb/ChangeLog
2018-08-28 Tom Tromey <tom@tromey.com>
* c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
(token_fifo): Now a std::vector.
(yylex, c_parse): Update.
* d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
(token_fifo): Now a std::vector.
(yylex, d_parse): Update.
* go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
(token_fifo): Now a std::vector.
(yylex, go_parse): Update.
commit 858d8004b05b572c07a414ae3933299976880bab
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Tue Aug 28 11:13:26 2018 -0400
Implement struct type_stack with a vector
This patch changes the home-made stack implementation with a vector,
which makes it a bit more concise and readable.
Regtested on the buildbot.
gdb/ChangeLog:
* parser-defs.h (struct type_stack) <elements>: Change type to
std::vector<union type_stack_elt>.
<depth, size>: Remove.
* parse.c (parse_exp_in_context_1): Adjust.
(type_stack_reserve): Remove.
(check_type_stack_depth): Remove.
(insert_into_type_stack): Adjust to std::vector.
(insert_type): Likewise.
(push_type): Likewise.
(push_type_int): Likewise.
(insert_type_address_space): Likewise.
(pop_type): Likewise.
(pop_type_int): Likewise.
(pop_typelist): Likewise.
(pop_type_stack): Likewise.
(append_type_stack): Likewise.
(push_type_stack): Likewise.
(get_type_stack): Likewise.
(type_stack_cleanup): Likewise.
(push_typelist): Likewise.
(follow_types): Likewise.
(_initialize_parse): Likewise.
commit 5445ebae0e94658741668188e91f430a798b1fa4
Merge: d04239d 1021d1c
Author: Stan Cox <scox@redhat.com>
Date: Tue Aug 28 10:05:27 2018 -0400
Merge branch 'master' into scox/strace
commit 416a69af890a34e58c722ae2e6fe218438fcf3b7
Author: Hafiz Abid Qadeer <abidh@codesourcery.com>
Date: Wed Jul 25 10:45:26 2018 +0100
Mention csky target in the NEWS.
2018-08-28 Hafiz Abid Qadeer <abidh@codesourcery.com>
* NEWS: Mention csky target.
commit 9d24df82ece4e87a0328173d6bd31cb9ff558bb4
Author: Hafiz Abid Qadeer <abidh@codesourcery.com>
Date: Wed Jul 25 10:43:22 2018 +0100
Add support for new target 'csky'.
2018-08-28 Jiangshuai Li <jiangshuai_li@c-sky.com>
Hafiz Abid Qadeer <abidh@codesourcery.com>
Don Breazeal <donb@codesourcery.com>
* csky-linux-tdep.c: New file.
* csky-tdep.c: Likewise.
* csky-tdep.h: Likewise.
* Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
csky-tdep.o.
(HFILES_NO_SRCDIR): Add csky-tdep.h.
(ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
* configure.tgt: Add csky support.
commit 626887ddc306b336e1406cf661f23398bed8be66
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Aug 28 00:00:33 2018 +0000
Automatic date update in version.in
commit 90c745dc545408a6a3115ff97485672826649ade
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Aug 27 15:41:09 2018 -0700
x86: Don't mask out the GNU_PROPERTY_X86_UINT32_VALID bit
Since only the GNU_PROPERTY_X86_UINT32_VALID bit may be set in data-only
relocatable objects which don't contain any instructions, linker
shouldn't mask out the GNU_PROPERTY_X86_UINT32_VALID bit when merging
GNU_PROPERTY_X86_XXX bits. Otherwise, linker output doesn't contain
GNU_PROPERTY_X86_XXX property with any data-only relocatable inputs.
This patch keeps the GNU_PROPERTY_X86_UINT32_VALID bit and updates
readelf to print "<None>" if GNU_PROPERTY_X86_XXX property only has
the GNU_PROPERTY_X86_UINT32_VALID bit.
bfd/
* elfxx-x86.c (_bfd_x86_elf_parse_gnu_properties): Don't mask
out the GNU_PROPERTY_X86_UINT32_VALID bit.
binutils/
* readelf.c (decode_x86_isa): Print <None> if bitmask only
contains the GNU_PROPERTY_X86_UINT32_VALID bit.
(decode_x86_feature_1): Likewise.
(decode_x86_feature_2): Likewise.
(print_gnu_property_note): Don't mask out the
GNU_PROPERTY_X86_UINT32_VALID bit.
* testsuite/binutils-all/i386/pr21231b.d: Updated.
* testsuite/binutils-all/x86-64/pr21231b.d: Likewise.
gas/
* testsuite/gas/i386/i386.exp: Run property-1 and
x86-64-property-1.
* testsuite/gas/i386/property-1.d: New file.
* testsuite/gas/i386/property-1.s: Likewise.
* testsuite/gas/i386/x86-64-property-1.d: Likewise.
ld/
* testsuite/ld-i386/i386.exp: Run property-x86-5.
* testsuite/ld-i386/property-x86-5.d: New file.
* testsuite/ld-x86-64/property-x86-5-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-5.d: Likewise.
* testsuite/ld-x86-64/property-x86-5a.s: Likewise.
* testsuite/ld-x86-64/property-x86-5b.s: Likewise.
* testsuite/ld-x86-64/x86-64.exp: Run property-x86-5 and
property-x86-5-x32.
commit 3bf9c013e4a7b72aaa7e242e163a776ad7347c26
Author: Jan Vrany <jan.vrany@fit.cvut.cz>
Date: Mon Aug 27 21:52:44 2018 +0100
MI: Fix printing of frame architecture with Python frame filters enabled
Commit 6d52907e226a (MI: Print frame architecture when printing frames
on an MI channel) added frame's architecture to MI frame output. However
the frame architecture was not correctly printed in the output of
"-stack-list-frames" with frame filters enabled (via "-enable-frame-filters").
This was because with frame filters enabled, the actual frame printing is
done in "py_print_frame" rather than "print_frame". This issue is now fixed.
gdb/Changelog:
2018-08-27 Jan Vrany <jan.vrany@fit.cvut.cz>
* python/py-framefilter.c (py_print_frame): Print frame architecture
when printing on an MI output.
gdb/testsuite/Changelog:
2018-08-27 Jan Vrany <jan.vrany@fit.cvut.cz>
* gdb.python/py-framefilter-mi.exp: Update regexp to
check for "arch" field in frame output.
commit 65b3d26e7d53ea03eb99791dd324d56c599f4c99
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Aug 27 13:01:08 2018 -0700
readelf.c: Break multi-statement line
* readelf.c (decode_x86_compat_isa): Break multi-statement line.
(decode_x86_isa): Likewise.
(decode_x86_feature_2): Likewise.
commit d3d8724aac2f207467b1004b1424fed0446b6f8a
Author: Tom Tromey <tom@tromey.com>
Date: Tue Aug 7 13:14:09 2018 -0600
Remove -Wno-narrowing from warnings.m4
This removes -Wno-narrowing from warnings.m4.
This is PR build/23087.
gdb/ChangeLog
2018-08-27 Tom Tromey <tom@tromey.com>
PR build/23087:
* configure: Rebuild.
* warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
gdb/gdbserver/ChangeLog
2018-08-27 Tom Tromey <tom@tromey.com>
PR build/23087:
* configure: Rebuild.
commit 1885053bcb12dd05a6f129146cf514e966082c27
Author: Tom Tromey <tom@tromey.com>
Date: Mon Aug 27 11:55:39 2018 -0600
Avoid -Wnarrowing warnings in aarch64-linux-tdep.c
This avoids -Wnarrowing warnings in
aarch64_linux_iterate_over_regset_sections, by adding some casts to
int.
gdb/ChangeLog
2018-08-27 Tom Tromey <tom@tromey.com>
* aarch64-linux-tdep.c
(aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
casts to int.
commit b4f183d23ec5f99765f0d6c64c1e3139e1d54093
Author: Tom Tromey <tom@tromey.com>
Date: Tue Aug 7 16:33:46 2018 -0600
Avoid -Wnarrowing warnings in gdbserver
This avoids -Wnarrowing warnings in gdbserver, by introducing some
casts to unsigned char.
gdb/gdbserver/ChangeLog
2018-08-27 Tom Tromey <tom@tromey.com>
* linux-s390-low.c (s390_emit_ext, s390_emit_litpool)
(s390_emit_const, s390_emit_reg, s390_emit_zero_ext)
(s390_emit_stack_adjust, s390_emit_set_r2, s390x_emit_ext)
(s390x_emit_const, s390x_emit_reg, s390x_emit_zero_ext)
(s390x_emit_stack_adjust): Add casts to unsigned char.
commit 8406672eca8d008dc0324198ec2f653a16fb9d21
Author: Tom Tromey <tom@tromey.com>
Date: Tue Aug 7 13:13:58 2018 -0600
Avoid -Wnarrowing warnings in ppc64-tdep.c
This avoids -Wnarrowing warnings in ppc64-tdep.c, by adding a few
casts to unsigned.
gdb/ChangeLog
2018-08-27 Tom Tromey <tom@tromey.com>
* ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
unsigned.
(ppc64_standard_linkage1, ppc64_standard_linkage2)
(ppc64_standard_linkage3, ppc64_standard_linkage4)
(ppc64_standard_linkage5, ppc64_standard_linkage6)
(ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
unsigned.
commit ec40cf90a02ebe3e2636ffa92245677e18233917
Author: Tom Tromey <tom@tromey.com>
Date: Tue Aug 7 13:07:21 2018 -0600
Fix two -Wnarrowing warnings in xtensa-tdep.h
This fixes a couple of -Wnarrowing warnings in xtensa-tdep.h, by
introducing some casts to unsigned.
gdb/ChangeLog
2018-08-27 Tom Tromey <tom@tromey.com>
* xtensa-tdep.h (XTREG_END): Add cast to unsigned.
(XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
commit 7bc02706c3e23b58e1a74ca47fada84fc68699c7
Author: Tom Tromey <tom@tromey.com>
Date: Tue Aug 7 13:04:05 2018 -0600
Avoid -Wnarrowing warnings in struct tramp_frame instances
This avoids -Wnarrowing warnings in struct tramp_frame instances,
replacing uses of -1 with a new ULONGEST_MAX. It also redefined
TRAMP_SENTINEL_INSN to avoid the same warning.
gdb/ChangeLog
2018-08-27 Tom Tromey <tom@tromey.com>
* tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
* tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
ULONGEST_MAX.
* tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
ULONGEST_MAX.
* sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
ULONGEST_MAX.
* sparc-linux-tdep.c (sparc32_linux_sigframe)
(sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
* ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
ULONGEST_MAX.
* ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
(ppc64_linux_sigaction_tramp_frame)
(ppc32_linux_sighandler_tramp_frame)
(ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
* nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
(nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
* mn10300-linux-tdep.c (am33_linux_sigframe)
(am33_linux_rt_sigframe): Use ULONGEST_MAX.
* mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
* mips-linux-tdep.c (mips_linux_o32_sigframe)
(mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
(mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
(micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
(micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
* mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
(mips64_fbsd_sigframe): Use ULONGEST_MAX.
* microblaze-linux-tdep.c
(microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
* i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
(i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
(i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
* hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
* common/common-types.h (ULONGEST_MAX): New define.
(CORE_ADDR_MAX): Fix formatting.
* bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
* arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
* arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
(arm_linux_rt_sigreturn_tramp_frame)
(arm_eabi_linux_sigreturn_tramp_frame)
(arm_eabi_linux_rt_sigreturn_tramp_frame)
(thumb2_eabi_linux_sigreturn_tramp_frame)
(thumb2_eabi_linux_rt_sigreturn_tramp_frame)
(arm_linux_restart_syscall_tramp_frame)
(arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
* arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
* aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
ULONGEST_MAX.
* aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
commit 70ab8ccd4f382a6c7e59c523c22b07fe03a95f52
Author: Tom Tromey <tom@tromey.com>
Date: Tue Aug 7 12:48:47 2018 -0600
Use CORE_ADDR_MAX in various "breaks" arrays
Code like this:
CORE_ADDR breaks[2] = {-1, -1};
... gives a warning with -Wnarrowing. This patch changes all
instances of this to use CORE_ADDR_MAX instead.
gdb/ChangeLog
2018-08-27 Tom Tromey <tom@tromey.com>
* rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
CORE_ADDR_MAX.
* mips-tdep.c (mips_deal_with_atomic_sequence)
(micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
* arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
(arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
* alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
CORE_ADDR_MAX.
* aarch64-tdep.c (aarch64_software_single_step): Use
CORE_ADDR_MAX.
commit 896a7aa6a119ce9d4872de87dabb81176489b1a3
Author: Tom Tromey <tom@tromey.com>
Date: Thu Aug 9 12:38:39 2018 -0600
Avoid -Wnarrowing warnings from quote_char()
This adds a couple of casts to avoid -Wnarrowing warnings coming from
the use of quote_char().
gdb/ChangeLog
2018-08-27 Tom Tromey <tom@tromey.com>
* linespec.c (complete_linespec_component): Add cast to "char".
* completer.c (completion_tracker::build_completion_result): Add
cast to "char".
commit dd33d41d54654093fb5e0ac7a6edd0c6a8c998dd
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sun Aug 26 20:05:48 2018 -0400
Fix indentation in solist.h
gdb/ChangeLog:
* solist.h (struct solist, struct target_so_ops): Fix
indentation.
commit 2cd0bfe0549d796b210bee0f4e80c326815cfad0
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Aug 27 00:01:39 2018 +0000
Automatic date update in version.in
commit c645cda49e2b5fcf35773089d1ae16d6fc3481c6
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sun Aug 26 11:56:41 2018 -0400
Make ada_tasks_inferior_data::task_list an std::vector
This removes a VEC type. It requires converting ada_tasks_inferior_data
to C++ (initializing fields, allocating with new). It seems, however,
that the allocated ada_tasks_inferior_data structures are never freed
(that should be fixed separately).
gdb/ChangeLog:
* ada-tasks.c (ada_task_info_s): Remove typedef.
(DEF_VEC_O(ada_task_info_s)): Remove.
(struct ada_tasks_inferior_data): Initialize fields.
<task_list>: Make an std::vector.
(get_ada_tasks_inferior_data): Allocate with new.
(ada_get_task_number): Adjust.
(get_task_number_from_id): Likewise.
(valid_task_id): Likewise.
(ada_get_task_info_from_ptid): Likewise.
(iterate_over_live_ada_tasks): Likewise.
(add_ada_task): Likewise.
(read_known_tasks): Likewise.
(ada_build_task_list): Likewise.
(print_ada_task_info): Likewise.
(info_task): Likewise.
(task_command_1): Likewise.
commit 39e7af3e4b4e6c9f39d8d58cae73a2d307e6e1a1
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sun Aug 26 11:53:47 2018 -0400
Make ada-lang.c::add_angle_brackets return an std::string
This removes the need for manual memory management. It may also be a
bit more efficient, since the returned string can be moved all the way
into the destination, in ada_lookup_name_info::matches.
gdb/ChangeLog:
* ada-lang.c (add_angle_brackets): Return std::string.
commit 3d9c8f6b3f033a6092425b7344647fb51dbed5c6
Author: Alan Modra <amodra@gmail.com>
Date: Sun Aug 26 14:23:38 2018 +0930
Delay evaluation of alignment expressions in output sections
git commit 702d16713 broke expressions using CONSTANT(COMMONPAGESIZE)
in ALIGN or SUBALIGN of output section statements, because these
optional fields were evaluated at script parse time and the patch in
question delayed setting of config.commonpagesize. The right thing to
do is keep the tree representation of those fields for later
evaluation.
PR 23571
* ldlang.h (section_alignment): Make it an expression tree.
(subsection_alignment): Likewise.
* ldlang.c (topower): Delete.
(output_section_statement_newfunc): Adjust initialization.
(init_os): Evaluate section_alignment.
(lang_size_sections_1): Likewise.
(size_input_section): Evaluate subsection_alignment.
(lang_enter_output_section_statement): Don't evaluate here.
(lang_new_phdr): Use exp_get_vma rather than exp_get_value_int.
* ldexp.h (exp_get_value_int): Delete.
(exp_get_power): Declare.
* ldexp.c (exp_get_value_int): Delete.
(exp_get_power): New function.
* emultempl/pe.em (place_orphan): Build expression for section
alignment.
* emultempl/pep.em (place_orphan): Likewise.
* testsuite/ld-scripts/pr23571.d,
* testsuite/ld-scripts/pr23571.t: New test.
* testsuite/ld-scripts/align.exp: Run it.
commit ed60adf0a31db8ebc95edd09088465470a296671
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Aug 26 00:01:07 2018 +0000
Automatic date update in version.in
commit bbbbbceebc342d583057a11d88bae85f451cd904
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sat Aug 25 11:52:24 2018 -0400
Initialize variable in py_get_event_thread
The pythread variable could be used without being initialized, fix it by
initializing it to nullptr.
gdb/ChangeLog:
* python/py-threadevent.c (py_get_event_thread): Initialize
pythread.
commit 7a815dd566f3dd32435ac73aa0a0cc948d525e06
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sat Aug 25 06:17:52 2018 -0700
elf: Check for corrupt symbol version info
The BFD linker with PR ld/23499 may generate shared libraries with
corrupt symbol version info which leads to linker error when the
corrupt shared library is used:
/usr/bin/ld: bin/libKF5Service.so.5.49.0: _edata: invalid version 21 (max 0)
/usr/bin/ld: bin/libKF5Service.so.5.49.0: error adding symbols: bad value
Add check for corrupt symbol version info to objdump:
00000000000af005 g D .data 0000000000000000 <corrupt> _edata
and readelf:
728: 00000000000af005 0 NOTYPE GLOBAL DEFAULT 25 _edata@<corrupt> (5)
bfd/
PR ld/23499
* elf.c (_bfd_elf_get_symbol_version_string): Return
_("<corrupt>") for corrupt symbol version info.
binutils/
PR ld/23499
* readelf.c (get_symbol_version_string): Return _("<corrupt>")
for corrupt symbol version info.
commit bbf6c6b8ca19efd7b0c9bf789bbafc1262a27517
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Aug 25 00:00:32 2018 +0000
Automatic date update in version.in
commit d98fc15be2b8dd5699c1852db7d9d979231123dc
Author: Pedro Alves <palves@redhat.com>
Date: Fri Aug 24 20:09:19 2018 +0100
gdb/python: Use copy-initialization more when possible
gdb/ChangeLog:
2018-08-24 Pedro Alves <palves@redhat.com>
* python/py-bpevent.c (create_breakpoint_event_object): Use
copy-initialization.
* python/py-continueevent.c (emit_continue_event): Use
copy-initialization.
* python/py-exitedevent.c (create_exited_event_object): Return a
gdbpy_ref<>.
(emit_exited_event): Use copy-initialization.
* python/py-inferior.c (python_new_inferior)
(python_inferior_deleted, add_thread_object): Use
copy-initialization.
* python/py-infevents.c (create_inferior_call_event_object)
(create_register_changed_event_object)
(create_memory_changed_event_object): Return a gdbpy_ref<>.
(emit_inferior_call_event, emit_memory_changed_event)
(emit_register_changed_event): Use copy-initialization.
* python/py-newobjfileevent.c (create_new_objfile_event_object):
Return a gdbpy_ref<>.
(emit_new_objfile_event): Use copy-initialization.
(create_clear_objfiles_event_object): Return a gdbpy_ref<>.
(emit_clear_objfiles_event): Use copy-initialization.
* python/py-signalevent.c (create_signal_event_object): Use
copy-initialization.
* python/py-threadevent.c (create_thread_event_object): Use
copy-initialization.
commit da3c873831707454d45cee6705075b27a1732f09
Author: Pedro Alves <palves@redhat.com>
Date: Fri Aug 24 22:13:30 2018 +0100
Fix 8.2 regression in gdb.python/py-evthreads.exp w/ gdbserver (PR gdb/23379)
This commit fixes a 8.1->8.2 regression exposed by
gdb.python/py-evthreads.exp when testing with
--target_board=native-gdbserver.
gdb.log shows:
src/gdb/thread.c:93: internal-error: thread_info* inferior_thread(): Assertion `tp' failed.
A problem internal to GDB has been detected,
further debugging may prove unreliable.
Quit this debugging session? (y or n) FAIL: gdb.python/py-evthreads.exp: run to breakpoint 1 (GDB internal error)
A backtrace shows (frames #2 and #10 highlighted) that the assertion
fails when GDB is setting up the connection to the remote target, in
non-stop mode:
#0 0x0000000000622ff0 in internal_error(char const*, int, char const*, ...) (file=0xc1ad98 "src/gdb/thread.c", line=93, fmt=0xc1ad20 "%s: Assertion `%s' failed.") at src/gdb/common/errors.c:54
#1 0x000000000089567e in inferior_thread() () at src/gdb/thread.c:93
= #2 0x00000000004da91d in get_event_thread() () at src/gdb/python/py-threadevent.c:38
#3 0x00000000004da9b7 in create_thread_event_object(_typeobject*, _object*) (py_type=0x11574c0 <continue_event_object_type>, thread=0x0)
at src/gdb/python/py-threadevent.c:60
#4 0x00000000004bf6fe in create_continue_event_object() () at src/gdb/python/py-continueevent.c:27
#5 0x00000000004bf738 in emit_continue_event(ptid_t) (ptid=...) at src/gdb/python/py-continueevent.c:40
#6 0x00000000004c7d47 in python_on_resume(ptid_t) (ptid=...) at src/gdb/python/py-inferior.c:108
#7 0x0000000000485bfb in std::_Function_handler<void (ptid_t), void (*)(ptid_t)>::_M_invoke(std::_Any_data const&, ptid_t&&) (__functor=..., __args#0=...) at /usr/include/c++/7/bits/std_function.h:316
#8 0x000000000089b416 in std::function<void (ptid_t)>::operator()(ptid_t) const (this=0x12aa600, __args#0=...)
at /usr/include/c++/7/bits/std_function.h:706
#9 0x000000000089aa0e in gdb::observers::observable<ptid_t>::notify(ptid_t) const (this=0x118a7a0 <gdb::observers::target_resumed>, args#0=...)
at src/gdb/common/observable.h:106
= #10 0x0000000000896fbe in set_running(ptid_t, int) (ptid=..., running=1) at src/gdb/thread.c:880
#11 0x00000000007f750f in remote_target::remote_add_thread(ptid_t, bool, bool) (this=0x12c5440, ptid=..., running=true, executing=true) at src/gdb/remote.c:2434
#12 0x00000000007f779d in remote_target::remote_notice_new_inferior(ptid_t, int) (this=0x12c5440, currthread=..., executing=1)
at src/gdb/remote.c:2515
#13 0x00000000007f9c44 in remote_target::update_thread_list() (this=0x12c5440) at src/gdb/remote.c:3831
#14 0x00000000007fb922 in remote_target::start_remote(int, int) (this=0x12c5440, from_tty=0, extended_p=0)
at src/gdb/remote.c:4655
#15 0x00000000007fd102 in remote_target::open_1(char const*, int, int) (name=0x1a4f45e "localhost:2346", from_tty=0, extended_p=0)
at src/gdb/remote.c:5638
#16 0x00000000007fbec1 in remote_target::open(char const*, int) (name=0x1a4f45e "localhost:2346", from_tty=0)
at src/gdb/remote.c:4862
So on frame #10, we're marking a newly-discovered thread as running,
and that causes the Python API to emit a gdb.ContinueEvent.
gdb.ContinueEvent is a gdb.ThreadEvent, and as such includes the event
thread as the "inferior_thread" attribute. The problem is that when
we get to frame #3/#4, we lost all references to the thread that is
being marked as running. create_continue_event_object assumes that it
is the current thread, which is not true in this case.
Fix this by passing down the right thread in
create_continue_event_object. Also remove
create_thread_event_object's default argument and have the only other
caller left pass down the right thread explicitly too.
gdb/ChangeLog:
2018-08-24 Pedro Alves <palves@redhat.com>
Simon Marchi <simon.marchi@ericsson.com>
PR gdb/23379
* python/py-continueevent.c: Include "gdbthread.h".
(create_continue_event_object): Add intro comment. Add 'ptid'
parameter. Use it to find thread to pass to
create_thread_event_object.
(emit_continue_event): Pass PTID down to
create_continue_event_object.
* python/py-event.h (py_get_event_thread): Declare.
(create_thread_event_object): Remove default from 'thread'
parameter.
* python/py-stopevent.c (create_stop_event_object): Use
py_get_event_thread.
* python/py-threadevent.c (get_event_thread): Rename to ...
(py_get_event_thread): ... this, make extern, add 'ptid' parameter
and use it to find the thread.
(create_thread_event_object): Assert that THREAD isn't null.
Don't find the event thread here.
commit 3da65cd27e9b36ab205ce7820ce566534272da22
Author: Chenghua Xu <paul.hua.gm@gmail.com>
Date: Fri Aug 24 21:25:15 2018 +0800
[PATCH] [MIPS] LD/testsuite: Skip 32bit test if ld not support.
ld/ChangeLog:
* testsuite/ld-mips-elf/mips-elf-flags.exp
(check_ld_support_32bit, check_is_32bit_args): New procedures.
(good_combination, bad_combination): Skip 32bit test if ld
not support 32bit emulations.
commit a9eafb08b3f3dd4cd59757f0b99b44e896d620f1
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Aug 24 04:41:50 2018 -0700
x86: Update GNU_PROPERTY_X86_XXX macros
This patch updates GNU_PROPERTY_X86_XXX macros:
1. GNU_PROPERTY_X86_UINT32_AND_XXX: A 4-byte unsigned integer property.
A bit is set if it is set in all relocatable inputs:
#define GNU_PROPERTY_X86_UINT32_AND_LO 0xc0000002
#define GNU_PROPERTY_X86_UINT32_AND_HI 0xc0007fff
2. GNU_PROPERTY_X86_UINT32_OR_XXX: A 4-byte unsigned integer property.
A bit is set if it is set in any relocatable inputs:
#define GNU_PROPERTY_X86_UINT32_OR_LO 0xc0008000
#define GNU_PROPERTY_X86_UINT32_OR_HI 0xc000ffff
3. GNU_PROPERTY_X86_UINT32_OR_AND_XXX: A 4-byte unsigned integer property.
A bit is set if it is set in any relocatable inputs and the property is
present in all relocatable inputs:
#define GNU_PROPERTY_X86_UINT32_OR_AND_LO 0xc0010000
#define GNU_PROPERTY_X86_UINT32_OR_AND_HI 0xc0017fff
4. GNU_PROPERTY_X86_FEATURE_2_NEEDED, GNU_PROPERTY_X86_FEATURE_2_USED
and GNU_PROPERTY_X86_FEATURE_2_XXX bits.
GNU_PROPERTY_X86_FEATURE_1_AND is unchanged. GNU_PROPERTY_X86_ISA_1_USED
and GNU_PROPERTY_X86_ISA_1_NEEDED are updated to better support targeted
processors since GNU_PROPERTY_X86_ISA_1_?86 aren't isn't very useful.
A new set of GNU_PROPERTY_X86_ISA_1_XXX bits are defined. The previous
GNU_PROPERTY_X86_ISA_1_XXX macros are deprecated and renamed to
GNU_PROPERTY_X86_COMPAT_ISA_1_XXX.
bfd/
* elfxx-x86.c (_bfd_x86_elf_parse_gnu_properties): Handle
X86_COMPAT_ISA_1_USED, X86_COMPAT_ISA_1_NEEDED,
X86_UINT32_AND_LO, X86_UINT32_AND_HI, X86_UINT32_OR_LO,
X86_UINT32_OR_HI, X86_UINT32_OR_AND_LO and X86_UINT32_OR_AND_HI
instead of X86_ISA_1_USED, X86_ISA_1_NEEDED and X86_FEATURE_1_AND.
(_bfd_x86_elf_merge_gnu_properties): Likewise.
(_bfd_x86_elf_link_setup_gnu_properties): Add X86_FEATURE_2_NEEDED
instead of X86_ISA_1_NEEDED.
(_bfd_x86_elf_link_fixup_gnu_properties): Handle
X86_COMPAT_ISA_1_USED, X86_COMPAT_ISA_1_NEEDED, X86_UINT32_AND_LO,
X86_UINT32_AND_HI, X86_UINT32_OR_LO, X86_UINT32_OR_HI,
X86_UINT32_OR_AND_LO and X86_UINT32_OR_AND_HI instead of
X86_ISA_1_USED, X86_ISA_1_NEEDED and X86_FEATURE_1_AND.
binutils/
* readelf.c (decode_x86_compat_isa): New function.
(decode_x86_feature_2): Likewise.
(decode_x86_isa): Updated for new X86_ISA_1_XXX bits.
(decode_x86_feature): Renamed to ...
(decode_x86_feature_1): This. Remove the type argument.
(print_gnu_property_note): Handle X86_COMPAT_ISA_1_USED,
X86_COMPAT_ISA_1_NEEDED, X86_UINT32_AND_LO, X86_UINT32_AND_HI,
X86_UINT32_OR_LO, X86_UINT32_OR_HI, X86_UINT32_OR_AND_LO and
X86_UINT32_OR_AND_HI instead of X86_ISA_1_USED, X86_ISA_1_NEEDED
and X86_FEATURE_1_AND.
* testsuite/binutils-all/i386/pr21231b.s: Updated to the current
GNU_PROPERTY_X86_ISA_1_USED and GNU_PROPERTY_X86_ISA_1_NEEDED
values.
* testsuite/binutils-all/x86-64/pr21231b.s: Likewise.
* testsuite/binutils-all/x86-64/pr23494a.s: Likewise.
* testsuite/binutils-all/x86-64/pr23494b.s: Likewise.
* testsuite/binutils-all/x86-64/pr23494c.s: Likewise.
* testsuite/binutils-all/i386/pr21231b.d: Updated.
* testsuite/binutils-all/x86-64/pr21231b.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494a-x32.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494a.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494c-x32.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494c.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494d-x32.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494d.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494e-x32.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494e.d: Likewise.
include/
* elf/common.h (GNU_PROPERTY_X86_ISA_1_USED): Renamed to ...
(GNU_PROPERTY_X86_COMPAT_ISA_1_USED): This.
(GNU_PROPERTY_X86_ISA_1_NEEDED): Renamed to ...
(GNU_PROPERTY_X86_COMPAT_ISA_1_NEEDED): This.
(GNU_PROPERTY_X86_ISA_1_XXX): Renamed to ...
(GNU_PROPERTY_X86_COMPAT_ISA_1_XXX): This.
(GNU_PROPERTY_X86_UINT32_AND_LO): New.
(GNU_PROPERTY_X86_UINT32_AND_HI): Likewise.
(GNU_PROPERTY_X86_UINT32_OR_LO): Likewise.
(GNU_PROPERTY_X86_UINT32_OR_HI): Likewise.
(GNU_PROPERTY_X86_UINT32_OR_AND_LO): Likewise.
(GNU_PROPERTY_X86_UINT32_OR_AND_HI): Likewise.
(GNU_PROPERTY_X86_ISA_1_CMOV): Likewise.
(GNU_PROPERTY_X86_ISA_1_SSE): Likewise.
(GNU_PROPERTY_X86_ISA_1_SSE2): Likewise.
(GNU_PROPERTY_X86_ISA_1_SSE3): Likewise.
(GNU_PROPERTY_X86_ISA_1_SSSE3): Likewise.
(GNU_PROPERTY_X86_ISA_1_SSE4_1): Likewise.
(GNU_PROPERTY_X86_ISA_1_SSE4_2): Likewise.
(GNU_PROPERTY_X86_ISA_1_AVX): Likewise.
(GNU_PROPERTY_X86_ISA_1_AVX2): Likewise.
(GNU_PROPERTY_X86_ISA_1_FMA): Likewise.
(GNU_PROPERTY_X86_ISA_1_AVX512F): Likewise.
(GNU_PROPERTY_X86_ISA_1_AVX512CD): Likewise.
(GNU_PROPERTY_X86_ISA_1_AVX512ER): Likewise.
(GNU_PROPERTY_X86_ISA_1_AVX512PF): Likewise.
(GNU_PROPERTY_X86_ISA_1_AVX512VL): Likewise.
(GNU_PROPERTY_X86_ISA_1_AVX512DQ): Likewise.
(GNU_PROPERTY_X86_ISA_1_AVX512BW): Likewise.
(GNU_PROPERTY_X86_ISA_1_AVX512_4FMAPS): Likewise.
(GNU_PROPERTY_X86_ISA_1_AVX512_4VNNIW): Likewise.
(GNU_PROPERTY_X86_ISA_1_AVX512_BITALG): Likewise.
(GNU_PROPERTY_X86_ISA_1_AVX512_IFMA): Likewise.
(GNU_PROPERTY_X86_ISA_1_AVX512_VBMI): Likewise.
(GNU_PROPERTY_X86_ISA_1_AVX512_VBMI2): Likewise.
(GNU_PROPERTY_X86_ISA_1_AVX512_VNNI): Likewise.
(GNU_PROPERTY_X86_FEATURE_2_X86): Likewise.
(GNU_PROPERTY_X86_FEATURE_2_X87): Likewise.
(GNU_PROPERTY_X86_FEATURE_2_MMX): Likewise.
(GNU_PROPERTY_X86_FEATURE_2_XMM): Likewise.
(GNU_PROPERTY_X86_FEATURE_2_YMM): Likewise.
(GNU_PROPERTY_X86_FEATURE_2_ZMM): Likewise.
(GNU_PROPERTY_X86_FEATURE_2_FXSR): Likewise.
(GNU_PROPERTY_X86_FEATURE_2_XSAVE): Likewise.
(GNU_PROPERTY_X86_FEATURE_2_XSAVEOPT): Likewise.
(GNU_PROPERTY_X86_FEATURE_2_XSAVEC): Likewise.
(GNU_PROPERTY_X86_FEATURE_1_AND): Updated to
(GNU_PROPERTY_X86_UINT32_AND_LO + 0).
(GNU_PROPERTY_X86_ISA_1_NEEDED): Defined to
(GNU_PROPERTY_X86_UINT32_OR_LO + 0).
(GNU_PROPERTY_X86_FEATURE_2_NEEDED): New. Defined to
(GNU_PROPERTY_X86_UINT32_OR_LO + 1).
(GNU_PROPERTY_X86_ISA_1_USED): Defined to
(GNU_PROPERTY_X86_UINT32_OR_AND_LO + 0).
(GNU_PROPERTY_X86_FEATURE_2_USED): New. Defined to
(GNU_PROPERTY_X86_UINT32_OR_AND_LO + 1).
ld/
* testsuite/ld-i386/i386.exp: Run pr23372c, pr23372d, pr23486c
and pr23486d.
* testsuite/ld-i386/pr23372a.s: Update comments.
* testsuite/ld-i386/pr23372b.s: Likewise.
* testsuite/ld-i386/pr23372c.s: Likewise.
* testsuite/ld-x86-64/pr23372a.s: Likewise.
* testsuite/ld-x86-64/pr23372b.s: Likewise.
* testsuite/ld-x86-64/pr23372c.s: Likewise.
* testsuite/ld-x86-64/pr23486a.s: Likewise.
* testsuite/ld-x86-64/pr23486b.s: Likewise.
* testsuite/ld-i386/pr23372c.d: New file.
* testsuite/ld-i386/pr23372d.d: Likewise.
* testsuite/ld-i386/pr23486c.d: Likewise.
* testsuite/ld-i386/pr23486d.d: Likewise.
* testsuite/ld-x86-64/pr23372c-x32.d: Likewise.
* testsuite/ld-x86-64/pr23372c.d: Likewise.
* testsuite/ld-x86-64/pr23372d-x32.d: Likewise.
* testsuite/ld-x86-64/pr23372d.d: Likewise.
* testsuite/ld-x86-64/pr23372d.s: Likewise.
* testsuite/ld-x86-64/pr23372e.s: Likewise.
* testsuite/ld-x86-64/pr23372f.s: Likewise.
* testsuite/ld-x86-64/pr23486c-x32.d: Likewise.
* testsuite/ld-x86-64/pr23486c.d: Likewise.
* testsuite/ld-x86-64/pr23486c.s: Likewise.
* testsuite/ld-x86-64/pr23486d-x32.d: Likewise.
* testsuite/ld-x86-64/pr23486d.d: Likewise.
* testsuite/ld-x86-64/pr23486d.s: Likewise.
* testsuite/ld-i386/property-3.r: Updated.
* testsuite/ld-i386/property-4.r: Likewise.
* testsuite/ld-i386/property-5.r: Likewise.
* testsuite/ld-i386/property-x86-3.d: Likewise.
* testsuite/ld-i386/property-x86-ibt3a.d: Likewise.
* testsuite/ld-i386/property-x86-shstk3a.d: Likewise.
* testsuite/ld-i386/property-x86-shstk3b.d: Likewise.
* testsuite/ld-x86-64/property-3.r: Likewise.
* testsuite/ld-x86-64/property-4.r: Likewise.
* testsuite/ld-x86-64/property-5.r: Likewise.
* testsuite/ld-x86-64/property-x86-3-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-3.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt3a-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt3a.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt3b-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt3b.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk3a-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk3a.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk3b-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk3b.d: Likewise.
* testsuite/ld-i386/property-x86-1.S: Updated to the current
GNU_PROPERTY_X86_ISA_1_USED and GNU_PROPERTY_X86_ISA_1_NEEDED
values.
* testsuite/ld-i386/property-x86-2.S: Likewise.
* testsuite/ld-i386/property-x86-3.s: Likewise.
* testsuite/ld-x86-64/property-x86-1.S: Likewise.
* testsuite/ld-x86-64/property-x86-2.S: Likewise.
* testsuite/ld-x86-64/property-x86-3.s: Likewise.
* ld/testsuite/ld-x86-64/x86-64.exp: Run pr23372c, pr23372c-x32,
pr23372d, pr23372d-x32, pr23486c, pr23486c-x32, pr23486d and
pr23486d-x32.
commit aa7bca9b2e30cf128966631382731369f7b753d8
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Aug 24 04:37:45 2018 -0700
x86: Add GNU_PROPERTY_X86_UINT32_VALID
The older linker treats .note.gnu.property section as a generic note
and just concatenates all .note.gnu.property sections from the input
to the output. On CET-enabled OS, the output of the older linker is
marked as CET enabled, but in fact, it is not CET enabled and it crashes
on CET-enabled machines.
This patch defines GNU_PROPERTY_X86_UINT32_VALID. Linker is updated to
set the GNU_PROPERTY_X86_UINT32_VALID bit in GNU property note for
non-relocatable output to differentiate outputs from the older linker.
bfd/
* elfxx-x86.c (_bfd_x86_elf_parse_gnu_properties): Mask out the
GNU_PROPERTY_X86_UINT32_VALID bit.
(_bfd_x86_elf_link_fixup_gnu_properties): Set the
GNU_PROPERTY_X86_UINT32_VALID bit for non-relocatable output.
binutils/
* readelf.c (print_gnu_property_note): Check the
GNU_PROPERTY_X86_UINT32_VALID bit for invalid GNU property note.
include/
* elf/common.h (GNU_PROPERTY_X86_UINT32_VALID): New.
commit 772758ac42a5717d2c2043cc36aa6600c2bfc120
Author: Alan Modra <amodra@gmail.com>
Date: Fri Aug 24 17:37:53 2018 +0930
ehdr_start twiddles
We force __ehdr_start to defined in before_allocation, then restore
the type and a union after dynamic symbols have been allocated.
The union contains a number of structs, all starting with a "next"
pointer, and various fields depending on the symbol type. The old
code restored the entire union, but it isn't necessary to restore the
"next" pointer, and in fact it could be wrong if __ehdr_start happened
to be last on the list and some symbols were added before restoring.
* emultempl/elf32.em (before_allocation): Don't restore
__ehdr_start u.*.next pointer.
commit 4575aaa96412f01f6158057aa602312360c5b6e4
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Aug 24 00:00:37 2018 +0000
Automatic date update in version.in
commit 450d1e88e32ef433f25959358521c953050f0037
Author: Kevin Buettner <kevinb@redhat.com>
Date: Thu Aug 23 16:00:50 2018 -0700
Test case for functions with non-contiguous ranges
See comments in the new files for what this is about - I tried to
explain it all there.
gdb/testsuite/ChangeLog:
* gdb.dwarf2/dw2-ranges-func.c: New file.
* gdb.dwarf2/dw2-ranges-func.exp: New file.
commit 9644dc3a478d9ae85f1ca327ab3fa5ac0ce9fe64
Author: Kevin Buettner <kevinb@redhat.com>
Date: Thu Aug 23 16:00:50 2018 -0700
Relocate block range start and end addresses
gdb/ChangeLog:
* objfiles.c (objfile_relocate1): Relocate start and end addresses
for each range in a block.
commit 59adbf5d03f5d9380f9870e22262c59f5f9beec8
Author: Kevin Buettner <kevinb@redhat.com>
Date: Thu Aug 23 16:00:49 2018 -0700
Introduce find_function_entry_range_from_pc and use it in infrun.c
An earlier version of this patch used the returned block in conjunction
with BLOCK_ENTRY_PC to set stop_func_start in fill_in_stop_func() in
infrun.c. While I think this was the correct thing to do, changes
to find_inferior_partial_function could potentially end up with
stop_func_end < stop_func_start, which is definitely wrong. For
this case, we want to set both stop_func_start and stop_func_end
to the start and end of the range containing the function's entry
pc.
I think that this functionality will be useful in many other places
too - it probably ought to be used in all of the various prologue
analyzers in GDB.
The change to infrun.c was simple: the call to
find_pc_partial_function was replaced with a call to
find_function_entry_range_from_pc. The difference between these two
functions is that find_pc_partial_entry_function will (potentially)
return the start and end address corresponding to the range in which
PC is found, but find_function_entry_range_from_pc will (again,
potentially) return the start and end address of the range containing
the entry pc. find_pc_partial_function has the property that
*ADDRESS <= PC < *ENDADDR. This condition does not necessarily hold
for the outputs of find_function_entry_range_from_pc.
It should be noted that for functions which contain only a single
range, the outputs of find_pc_partial_function and
find_function_entry_range_from_pc are identical.
I think it might happen that find_function_entry_range_from_pc will come
to be used in place of many of the calls to find_pc_partial_function
within GDB. Care must be taken in making this change, however, since
some of this code depends on the *ADDRESS <= PC < *ENDADDR property.
Finally, a note regarding the name: I had initially chosen a different
name with a find_pc_partial_ prefix, but Simon suggested the current
name citing the goal of eventually making naming consistent using
the form find_X_from_Y. In this case X is "function_entry_range" and
Y is "pc". Both the name and rationale made sense to me, so that's
how it came to be.
gdb/ChangeLog:
* infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
in place of find_pc_partial_function.
* blockframe.c (find_function_entry_range_from_pc): New function.
* symtab.h (find_function_entry_range_from_pc): Declare and document.
commit 2b1ffcfd6fe5b88d50b6ad1c2ab3e9623ede5e35
Author: Kevin Buettner <kevinb@redhat.com>
Date: Thu Aug 23 16:00:49 2018 -0700
Use BLOCK_ENTRY_PC in place of most uses of BLOCK_START
This change/patch substitues BLOCK_ENTRY_PC for BLOCK_START in
places where BLOCK_START is used to obtain the address at which
execution should enter the block. Since blocks can now contain
non-contiguous ranges, the BLOCK_START - which is still be the
very lowest address in the block - might not be the same as
BLOCK_ENTRY_PC.
There is a change to infrun.c which is less obvious and less mechanical.
I'm posting it as a separate patch.
gdb/ChangeLog:
* ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
BLOCK_START.
* blockframe.c (get_pc_function_start): Likewise.
* compile/compile-c-symbols.c (convert_one_symbol): Likewise.
(gcc_symbol_address): Likewise.
* compile/compile-object-run.c (compile_object_run): Likewise.
* compile/compile.c (get_expr_block_and_pc): Likewise.
* dwarf2loc.c (dwarf2_find_location_expression): Likewise.
(func_addr_to_tail_call_list): Likewise.
* findvar.c (default_read_var_value): Likewise.
* inline-frame.c (inline_frame_this_id): Likewise.
(skip-inline_frames): Likewise.
* infcmd.c (until_next_command): Likewise.
* linespec.c (convert_linespec_to_sals): Likewise.
* parse.c (parse_exp_in_context_1): Likewise.
* printcmd.c (build_address_symbolic): likewise.
(info_address_command): Likewise.
symtab.c (find_function_start_sal): Likewise.
(skip_prologue_sal): Likewise.
(find_function_alias_target): Likewise.
(find_gnu_ifunc): Likewise.
* stack.c (find_frame_funname): Likewise.
* symtab.c (fixup_symbol_section): Likewise.
(find_function_start_sal): Likewise.
(skip_prologue_sal): Likewsie.
(find_function_alias_target): Likewise.
(find_gnu_ifunc): Likewise.
* tracepoint.c (info_scope_command): Likewise.
* value.c (value_fn_field): Likewise.
commit e94802301b37de0e75e9329a96b0e70d38e5ead9
Author: Kevin Buettner <kevinb@redhat.com>
Date: Thu Aug 23 16:00:49 2018 -0700
Disassemble blocks with non-contiguous ranges
This patch adds support for disassembly of blocks with non-contiguous
ranges. These blocks are printed as follows:
(gdb) disassemble foo
Dump of assembler code for function foo:
Address range 0x401136 to 0x401151:
0x0000000000401136 <+0>: push %rbp
0x0000000000401137 <+1>: mov %rsp,%rbp
0x000000000040113a <+4>: callq 0x401134 <bar>
0x000000000040113f <+9>: mov 0x2eef(%rip),%eax # 0x404034 <e>
0x0000000000401145 <+15>: test %eax,%eax
0x0000000000401147 <+17>: je 0x40114e <foo+24>
0x0000000000401149 <+19>: callq 0x401128 <foo+4294967282>
0x000000000040114e <+24>: nop
0x000000000040114f <+25>: pop %rbp
0x0000000000401150 <+26>: retq
Address range 0x401128 to 0x401134:
0x0000000000401128 <+-14>: push %rbp
0x0000000000401129 <+-13>: mov %rsp,%rbp
0x000000000040112c <+-10>: callq 0x401126 <baz>
0x0000000000401131 <+-5>: nop
0x0000000000401132 <+-4>: pop %rbp
0x0000000000401133 <+-3>: retq
End of assembler dump.
This is an actual dump from the test case that I constructed for
this work. The ranges are printed in the order encountered in the
debug info. For the above example, note that the second range occupies
lower addresses than the first range.
Functions with contiguous ranges are still printed as follows:
(gdb) disassemble main
Dump of assembler code for function main:
0x0000000000401151 <+0>: push %rbp
0x0000000000401152 <+1>: mov %rsp,%rbp
0x0000000000401155 <+4>: callq 0x401136 <foo>
0x000000000040115a <+9>: mov $0x0,%eax
0x000000000040115f <+14>: pop %rbp
0x0000000000401160 <+15>: retq
End of assembler dump.
gdb/ChangeLog:
* cli/cli-cmds.c (block.h): Include.
(print_disassembly): Handle printing of non-contiguous blocks.
(disassemble_current_function): Likewise.
(disassemble_command): Likewise.
commit fc811edd39fcdf6e52c95ebd2d975debee700223
Author: Kevin Buettner <kevinb@redhat.com>
Date: Thu Aug 23 16:00:49 2018 -0700
Add support for non-contiguous blocks to find_pc_partial_function
This change adds an optional output parameter BLOCK to
find_pc_partial_function. If BLOCK is non-null, then *BLOCK will be
set to the address of the block corresponding to the function symbol
if such a symbol was found during lookup. Otherwise it's set to the
NULL value. Callers may wish to use the block information to
determine whether the block contains any non-contiguous ranges. The
caller may also iterate over or examine those ranges.
When I first started looking at the broken stepping behavior associated
with functions w/ non-contiguous ranges, I found that I could "fix"
the problem by disabling the find_pc_partial_function cache. It would
sometimes happen that the PC passed in would be between the low and
high cache values, but would be in some other function that happens to
be placed in between the ranges for the cached function. This caused
incorrect values to be returned.
So dealing with this cache turns out to be very important for fixing
this problem. I explored three different ways of dealing with the
cache.
My first approach was to clear the cache when a block was encountered
with more than one range. This would cause the non-cache pathway to
be executed on the next call to find_pc_partial_function.
Another approach, which I suspect is slightly faster, checks to see
whether the PC is within one of the ranges associated with the cached
block. If so, then the cached values can be used. It falls back to
the original behavior if there is no cached block.
The current approach, suggested by Simon Marchi, is to restrict the
low/high pc values recorded for the cache to the beginning and end of
the range containing the PC value under consideration. This allows us
to retain the simple (and fast) test for determining whether the
memoized (cached) values apply to the PC passed to
find_pc_partial_function.
Another choice that had to be made regards setting *ADDRESS and
*ENDADDR. There are three possibilities which might make sense:
1) *ADDRESS and *ENDADDR represent the lowest and highest address
of the function.
2) *ADDRESS and *ENDADDR are set to the start and end address of
the range containing the entry pc.
3) *ADDRESS and *ENDADDR are set to the start and end address of
the range in which PC is found.
An earlier version of this patch implemented option #1. I found out
that it's not very useful though and, in fact, returns results that
are incorrect when used in the context of determining the start and
end of the function for doing prologue analysis. While debugging a
function in which the entry pc was in the second range (of a function
containing two non-contiguous ranges), I noticed that
amd64_skip_prologue called find_pc_partial_function - the returned
start address was set to the beginning of the first range. This is
incorrect for this function. What was also interesting was that this
first invocation of find_pc_partial_function correctly set the cache
for the PC on which it had been invoked, but a slightly later call
from skip_prologue_using_sal could not use this cached value because
it was now being used to lookup the very lowest address of the
function - which is in a range not containing the entry pc.
Option #2 is attractive as it would provide a desirable result
when used in the context of prologue analysis. However, many callers,
including some which do prologue analysis want the condition
*ADDRESS <= PC < *ENDADDR to hold. This will not be the case when
find_pc_partial_function is called on a PC that's in a non-entry-pc
range. A later patch to this series adds
find_function_entry_range_from_pc as a wrapper of
find_pc_partial_function.
Option #3 causes the *ADDRESS <= PC < *ENDADDR property to hold. If
find_pc_partial_function is called with a PC that's within entry pc's
range, then it will correctly return the limits of that range. So, if
the result of a minsym search is passed to find_pc_partial_function
to find the limits, then correct results will be achieved. Returned
limits (for prologue analysis) won't be correct when PC is within some
other (non-entry-pc) range. I don't yet know how big of a problem
this might be; I'm guessing that it won't be a serious problem - if a
compiler generates functions which have non-contiguous ranges, then it
also probably generates DWARF2 CFI which makes a lot of the old
prologue analysis moot.
I've implemented option #3 for this version of the patch. I don't see
any regressions for x86-64. Moreover, I don't expect to see
regressions for other targets either simply because
find_pc_partial_function behaves the same as it did before for the
contiguous address range case. That said, there may be some
adjustments needed if GDB encounters a function requiring prologue
analysis which occupies non-contiguous ranges.
gdb/ChangeLog:
* symtab.h (find_pc_partial_function): Add new parameter `block'.
* blockframe.c (cache_pc_function_block): New static global.
(clear_pc_function_cache): Clear cache_pc_function_block.
(find_pc_partial_function): Move comment to symtab.h. Add
support for non-contiguous blocks.
commit 2d5f09ec45f81a9c89a98c4629662d812774dfd0
Author: Kevin Buettner <kevinb@redhat.com>
Date: Thu Aug 23 16:00:49 2018 -0700
Record explicit block ranges from dwarf2read.c
This change sets BLOCK_RANGES for the block under consideration by
calling make_blockranges(). This action is performed in
dwarf2_record_block_ranges().
It should be noted that dwarf2_record_block_ranges() already does some
recording of the range via a call to record_block_range(). The ranges
recorded in that fashion end up in the address map associated with the
blockvector for the compilation unit's symtab. Given an address, the
addrmap provides a fast way of finding the block containing that
address. The address map does not, however, provide a convenient way
of determining which address ranges make up a particular block.
While reading a set of ranges, a vector of pairs is used to collect
the starting and ending addresses for each range in the block. Once
all of the ranges for a block have been collected, make_blockranges()
is called to fill in BLOCK_RANGES for the block.
The ranges are stored for the block in the order that they're read
from the debug info. For DWARF, the starting address of the first
range of the block will be the entry pc in cases where DW_AT_entry_pc
is not present. (Well, that would ideally be the case. At the moment
DW_AT_entry_pc is not being handled.)
gdb/ChangeLog:
* dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
for block.
commit 26457a9cf3c0ae49a3a2d0d0d0f25e2658b5f0d4
Author: Kevin Buettner <kevinb@redhat.com>
Date: Thu Aug 23 16:00:48 2018 -0700
Add block range data structure for blocks with non-contiguous address ranges
This patch does the following:
- Introduces a block range data structure which is accessed via
a new field in struct block.
- Defines several macros for accessing block ranges.
- Defines a new function, make_blockrange, which is responsible for
creating the new data structure.
It should be noted that some support for non-contiguous ranges already
existed in GDB in the form of blockvector addrmaps. This support
allowed GDB to quickly find a block containing a particular address
even when the block consists of non-contiguous addresses. See
find_block_in_blockvector() in block.c, dwarf2_record_block_ranges()
in dwarf2read.c, and record_block_range() in buildsym.c.
Addrmaps do not provide a convenient way to examine address ranges
associated with a particular block. This data structure (and its
interface) is set up for quickly finding the value (which in this case
is a block) associated with a particular address. The interface
does not include a method for doing a reverse mapping from blocks to
addresses. A linear time mapping might be attempted via use of the
addrmap's foreach method, but this is not as straightforward as it
might first appear due to the fact that blocks corresponding to inline
function instances and lexical blocks w/ variables end up getting
interspersed in in the set of transitions.
Note: If this approach is deemed to be too expensive in terms of
space, an alternate approach might be to attempt the linear time
mapping noted above. find_pc_partial_function() needs to be able to
quickly know whether there are discontiguous ranges, so a flag for
this property would have to be added to struct block. Also integral
to this set of changes is the concept of an "entry pc" which might be
different from the block's start address. An entry_pc field would
also need to be added to struct block. This does not result in any
space savings in struct block though since the space for the flag and
entry_pc use more space than the blockranges struct pointer that I've
added. There would, however, be some space savings due to the fact
that the new data structures that I've added for this patch would not
need to be allocated. (I happen to like the approach I've come up
with, but I wanted to mention another possibility just in case someone
does not.)
gdb/ChangeLog:
* block.h (blockrange, blockranges): New struct declarations.
(struct block): Add new field named `ranges'.
(BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
(BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
macros for accessing ranges in struct block.
(make_blockranges): New declaration.
block.c (make_blockranges): New function.
commit bfb218e3e404a6168888df51c03827eacde9ceea
Author: Jim Wilson <jimw@sifive.com>
Date: Thu Aug 23 13:26:48 2018 -0700
RISC-V: Reject empty rouding mode and fence operand.
gas/
2018-08-23 Kito Cheng <kito@andestech.com>
* config/tc-riscv.c (arg_lookup): Checking
length before look up.
* testsuite/gas/riscv/fence-fail.d: New file.
* testsuite/gas/riscv/fence-fail.l: Likewise.
* testsuite/gas/riscv/fence-fail.s: Likewise.
* testsuite/gas/riscv/rouding-fail.d: Likewise.
* testsuite/gas/riscv/rouding-fail.l: Likewise.
* testsuite/gas/riscv/rouding-fail.s: Likewise.
commit b0ceb98aec8e1ab610deea9fee9ee75c5911bbc0
Author: Zenith423 <zenith432@users.sourceforge.net>
Date: Thu Aug 23 16:22:56 2018 +0100
Avoid problems with plugins being loaded multiple times.
PR 23460
* plugin.c (struct plugin_list_entry): New structure.
(plugin_list): New variable.
(try_load_plugin): Place opened plugins on a list. Ensure that
the refcount in the dynamic loader is kept at 1.
commit 12a0d0f66172b9504e29000fa4f4e5c34109d6db
Author: Xavier Roirand <roirand@adacore.com>
Date: Thu Aug 23 11:17:03 2018 -0400
Darwin: fix bad loop incrementation
When reading symbols from the vector of oso files on Mac OS X
Darwin, a previous commit introduce a change in the loop and add
an increment at each loop iteration whereas this incrementation is
not needed since the increment or set of the loop control variable
is already done in the loop.
gdb/ChangeLog:
* machoread.c (macho_symfile_read_all_oso): Remove uneeded
incrementation.
Change-Id: I3a5a6deb4e9d834ee7d4217a62d90c2ffb7241bc
commit 2cd65cb935bcf1511c7e7bb77ce7bd46234300db
Author: Alan Modra <amodra@gmail.com>
Date: Fri Aug 24 00:20:05 2018 +0930
PR23566, false uninitialized warning
PR 23566
* emultempl/elf32.em (before_allocation): Warning fix.
commit f53ad3cf2b2dc34114a9b74439da5a418ac40e3d
Author: Alan Modra <amodra@gmail.com>
Date: Fri Aug 24 00:15:35 2018 +0930
PowerPC64 "call lacks nop"
The "-fPIC" and "-mcmodel=small" parts of these messages isn't always
true, so lets dispense with that and just report the type of stub
causing trouble.
* elf64-ppc.c (ppc64_elf_relocate_section): Revise "call lacks
nop" error message.
commit 14732552e70bcb0c85093c404a7091627eea4e38
Author: Alan Modra <amodra@gmail.com>
Date: Thu Aug 23 17:34:13 2018 +0930
PowerPC64 st_other decoding in readelf
localentry:1 is a valid encoding, so display it. The patch also bails
out of get_ppc64_symbol_other when st_other bits besides the three
used for localentry offsets are set, to avoid hiding any such values.
* readelf.c (get_ppc64_symbol_other): Return NULL if st_other
field contains unrecognised or reserved values. Handle
localentry:1 value.
commit 7dd36a6f1ca92cd4ca4776064c604cda7755bc44
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Aug 23 06:12:37 2018 -0700
Prune BFD warnings for unknown GNU properties
When glibc is enabled with the new GNU_PROPERTY_X86_XXX bits:
https://groups.google.com/forum/#!topic/x86-64-abi/-D05GQ3kWrA
BFD will issue an unknown GNU property warning like
warning: tmpdir/ld1: unsupported GNU_PROPERTY_TYPE (5) type: 0xc0010001
and ignore such GNU properties. This patch adds prune_warnings_extra to
prune such warnings on release branches and updates prune_warnings to
call prune_warnings_extra.
binutils/
PR ld/23536
* Makefile.am (development.exp): New target.
(EXTRA_DEJAGNU_SITE_CONFIG): New.
(DISTCLEANFILES): Add development.exp.
* Makefile.in: Regenerated.
* testsuite/binutils-all/objcopy.exp (strip_test): Call
prune_warnings to prune BFD output.
(strip_test_with_saving_a_symbol): Likewise.
(objcopy_test_without_global_symbol): Likewise.
* testsuite/lib/binutils-common.exp (prune_warnings_extra):
New proc.
(prune_warnings): Likewise.
gas/
PR ld/23536
* Makefile.am (development.exp): New target.
(EXTRA_DEJAGNU_SITE_CONFIG): New.
(DISTCLEANFILES): Add development.exp.
* Makefile.in: Regenerated.
ld/
PR ld/23536
* Makefile.am (development.exp): New target.
(EXTRA_DEJAGNU_SITE_CONFIG): New.
(DISTCLEANFILES): Add development.exp.
* Makefile.in: Regenerated.
* testsuite/ld-bootstrap/bootstrap.exp: Call prune_warnings to
prune BFD output.
* testsuite/ld-plugin/lto.exp: Likewise.
* testsuite/lib/ld-lib.exp (prune_warnings): Removed.
* testsuite/ld-elf/shared.exp: Allow "\n" in linker warnings.
commit 44c2eb66808a928b8101f1b880f3482312cbcc1e
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Aug 23 05:56:03 2018 -0700
Document setting experimental on release branch.
* README-how-to-make-a-release: Document setting "experimental"
to false.
commit 38cf70ca4d7adaad7ef085ce34e24e1e0bbee945
Author: Nick Clifton <nickc@redhat.com>
Date: Thu Aug 23 13:34:14 2018 +0100
Replace unworkable code in HPPA relocs handelr with an assertion.
* elf64-hppa.c (elf_hppa_final_link_relocate): Replace unworkable
code with an assertion.
commit 334d4ced42d3d54a70a19f1323ff41c5a5f4ff5e
Author: Nick Clifton <nickc@redhat.com>
Date: Thu Aug 23 11:45:38 2018 +0100
Prevent illegal memory access when processing COFF auxillary symbol information.
PR 23061
* coffgen.c (coff_pointerize_aux): Add table_end parameter. Use
it to prevent walking off the end of the table.
(coff_get_normalized_symtab): Pass internal_end pointer to
coff_pointerize_aux.
commit d0abeec8d45514fbec790f27e3cadceb576df9b5
Author: Alan Modra <amodra@gmail.com>
Date: Thu Aug 23 13:34:29 2018 +0930
Fix "unresolved reloc" error for NOTOC relocs
* elf64-ppc.c (ppc64_elf_relocate_section): Don't miss clearing
unresolved_reloc on ppc_stub_plt_call_notoc.
commit d3f467568f08dc18e6ed871c58a71f15cc0323f1
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Aug 23 00:00:15 2018 +0000
Automatic date update in version.in
commit d1012b8e33aaebe988aaf0723d26ddef9e155dbf
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Wed Aug 22 14:18:08 2018 -0400
Make read_program_headers_from_bfd return a gdb::byte_vector
This patch makes read_program_headers_from_bfd return a gdb::byte_vector
instead of a plain pointer.
gdb/ChangeLog:
* solib-svr4.c (read_program_headers_from_bfd): Return
gdb::optional<gdb::byte_vector>.
(svr4_exec_displacement): Adjust.
commit 17658d46e48ad4a7f6fb850422639b06c9d963aa
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Wed Aug 22 14:17:57 2018 -0400
Make read_program_header return a gdb::byte_vector
While reading a recent patch, I found this spot where a gdb::byte_vector
could be used instead of an allocated buffer returned as a plain
pointer.
gdb/ChangeLog:
* solib-svr4.c (read_program_header): Return
gdb::optional<gdb::byte_vector>, remove p_sect_size param.
(find_program_interpreter): Return
gdb::optional<gdb::byte_vector>.
(scan_dyntag_auxv): Adjust.
(enable_break): Adjust.
(svr4_exec_displacement): Adjust.
commit 4e2aa472847923f94b99f138d7fc4c77796f8239
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed Aug 22 13:37:05 2018 -0400
Restore behavior of disabling address randomization by default on GDBserver
Commit
c12a508 ("Add client_state struct.")
inadvertently changed the default behavior of GDBserver wrt address
randomization. The old disable_randomization global variable was
initialized to 1, whereas the corresponding field in the client_state
structure is initialized to 0.
This fixes
make check TESTS="gdb.base/jit-simple.exp" RUNTESTFLAGS="--target_board=native-gdbserver"
make check TESTS="gdb.base/execl-update-breakpoints.exp" RUNTESTFLAGS="--target_board=native-gdbserver"
Note that the execl-update-breakpoints.exp would only fail on systems
where the toolchain emits position-independent executables by default
(otherwise the main executable position is never randomized, so the
value of disable_randomization didn't matter).
gdb/gdbserver/ChangeLog:
PR gdb/23374
PR gdb/23375
* server.h (struct client_state) <disable_randomization>:
Initialize to 1.
commit 9eef0608951ba0e551dd6dd079ce1e20bae11f6b
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Aug 22 10:32:08 2018 -0700
bfd/development.sh: Add experimental
Add experimental to indicate whether this is a release branch.
PR ld/23536
* development.sh (experimental): New.
commit ae739fe7b8cffac2332666d62ad37cab679a7758
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Wed Aug 22 11:09:45 2018 -0400
Fix restoring of inferior terminal settings
I noticed that the child_terminal_save_inferior function was not used
since the commit f6ac5f3d63e0 ("Convert struct target_ops to C++"). I
was able to make a little test program to illustrate the problem (see
test case).
I think we're just missing the override of the terminal_save_inferior
method in inf_child_target (along with the other terminal-related
methods).
Instead of creating a new test, I thought that gdb.base/term.exp was a
good candidate for testing that gdb restores properly the inferior's
terminal settings.
gdb/ChangeLog:
* inf-child.h (inf_child_target) <terminal_save_inferior>: New.
* inf-child.c (inf_child_target::terminal_save_inferior): New.
gdb/testsuite/ChangeLog:
* gdb.base/term.exp: Compare terminal settings with values from
the inferior.
* gdb.base/term.c: Get and set terminal settings.
commit 467dc1e2ea5a8b300b61194aa8565829ce7d65bc
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Wed Aug 22 10:55:28 2018 -0400
Replace xstrvprintf usages with string_vprintf
Most usages of xstrvprintf in GDB can be replaced with string_vprintf,
removing some manual memory management.
gdb/ChangeLog:
* guile/scm-string.c (gdbscm_scm_from_printf): Use
string_vprintf.
* guile/scm-utils.c (gdbscm_printf): Likewise.
* serial.c (serial_printf): Likewise.
* xml-support.c (gdb_xml_parser::vdebug): Likewise.
commit 6d52907e226ade45d5f5196eaed8386affda5156
Author: Jan Vrany <jan.vrany@fit.cvut.cz>
Date: Wed Aug 22 10:42:38 2018 +0100
MI: Print frame architecture when printing frames on an MI channel
When printing frames on an MI channel also print the frame
architecture like in:
(gdb)
-stack-list-frames 3 3
^done,stack=
[frame={level="3",addr="0x000107a4",func="foo",
file="recursive2.c",fullname="/home/foo/bar/recursive2.c",
line="14",arch="i386:x86_64"}]
(gdb)
This is useful for MI clients that need to know the architecture in
order to perform further analysis, for example to use their own
disassembler to analyze machine code.
gdb/Changelog:
2018-08-22 Jan Vrany <jan.vrany@fit.cvut.cz>
* stack.c (print_frame): Print frame architecture when printing on
an MI output.
* NEWS: Mention new "arch" attribute in frame output.
gdb/testsuite/Changelog
2018-08-22 Jan Vrany <jan.vrany@fit.cvut.cz>
* lib/mi-support.exp (mi_expect_stop): Update regexp to
accommodate new "arch" field in frame output.
* gdb.mi/mi-return.exp: Likewise.
* gdb.mi/mi-stack.exp: Likewise.
* gdb.mi/mi-syn-frame.exp: Likewise.
* gdb.mi/user-selected-context-sync.exp: Likewise.
gdb/doc/Changelog
2018-08-22 Jan Vrany <jan.vrany@fit.cvut.cz>
* gdb.texinfo (The -stack-list-frames Command): Update description
to mention "arch".
Update MI examples throughout the document to contain "arch" in
frame output.
commit 6f4286c4f7193606fd6200e46b152ff0934f9cc2
Author: Helge Deller <deller@gmx.de>
Date: Wed Aug 22 10:32:53 2018 +0100
Use the correct constants when setting the section type of HPPA unwind sections.
* elf-hppa.h (elf_hppa_fake_sections): Use SHT_PARISC_UNWIND as
the section type of the .PARISC.unwind section on 64-bit binaries
and SHT_PROGBITS for 32-bit binaries. Add a comment about it.
Add comment about the sh_entsize value.
commit 3da64fe404031c093e8b59565d935fed214e28c1
Author: Rafeal Auler <rafaelauler@gmail.com>
Date: Wed Aug 22 10:04:09 2018 +0100
Fix AArch64 stub layout algorithm to allow for the fact that section layut might change a stub's target location.
PR 23560
* elfnn-aarch64.c (elfNN_aarch64_size_stubs): Always update the
stub's target, since it may have been changed after the layout.
commit d000b7630e07e808098cbf079c9cdf6c891e6e5e
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Aug 22 09:58:32 2018 +0100
Fix typo in changelog entry for handling of undocumnented Z80 SLI instruction.
commit 9758a8f84b245f42cfa85be7a65b0728eabca491
Author: Alan Hayward <alan.hayward@arm.com>
Date: Wed Aug 22 09:22:12 2018 +0100
Aarch64 SVE VG is Vector Granule
...not Vector Gradient.
See: DWARF for the ARM® 64-bit Architecture (AArch64) with SVE support
gdb/
* arch/aarch64.h (aarch64_regnum): Update comment.
commit 1461bdac5c1034467d7095b6d109689e02d03987
Author: Alan Hayward <alan.hayward@arm.com>
Date: Wed Aug 22 09:17:24 2018 +0100
Add AArch64 SVE to NEWS and GDB manual
gdb/
* NEWS: Add SVE to 8.2 section.
gdb/doc/
* doc/gdb.texinfo (AArch64 SVE): New subsubsection.
commit ebf983a4447174210bcf40e1df4f2a7533b2c99f
Author: Alan Modra <amodra@gmail.com>
Date: Wed Aug 22 16:37:56 2018 +0930
Fix changelog entries
commit 86b9fea102b36b9147d581f2fff3f495e9dd7601
Author: Alan Modra <amodra@gmail.com>
Date: Wed Aug 22 14:11:56 2018 +0930
Re: Pack reloc_howto_struct
Fix fallout when using gcc-4.
* dw2gencfi.c (emit_expr_encoded, output_fde): Warning fixes.
commit e8a648884df318b3c6be170ecdc9c42f79e56bd0
Author: Alan Modra <amodra@gmail.com>
Date: Wed Aug 22 10:04:58 2018 +0930
Correct readelf e_shstrndx range check
Fixes a bogus out of range error:
Number of section headers: 0 (210016)
Section header string table index: 1 <corrupt: out of range>
Caused due to e_shnum remaining as zero rather than being updated to
the value from section_header[0].sh_info at the point where we range
check e_shstrndx.
* readelf.c (process_file_header): Assign updated values from
section_header[0] fields to e_phnum, e_shnum and e_shstrndx
during printing of header. Correct e_shstrndx range check.
Remove unnecessary casts and use %u rather than %ld for
unsigned int header fields. Don't print a random %lx when
reporting an unknown EI_VERSION.
commit ac1e2e51c0927676dc87f0e090c6d8e4c42f297e
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Aug 22 00:00:43 2018 +0000
Automatic date update in version.in
commit 4e57b456393946cb4f90131b78e162cdec903c8a
Author: John Darrington <john@darrington.wattle.id.au>
Date: Sun Jun 17 07:04:11 2018 +0200
S12Z: Rename reloc R_S12Z_UKNWN_3 to R_S12Z_EXT18 and implement according to recently inferred information about this reloc.
* bfd/elf32-s12z.c: (opru18_reloc): New function.
* bfd/elf32-s12z.c: (elf_s12z_howto_table): Adjust Howto according to new knowledge.
* include/elf/s12z.h: Rename R_S12Z_UKNWN_3 to R_S12Z_EXT18.
commit 4895f384b47628c8c354dccbb0bfab45b8c33984
Author: Pedro Alves <palves@redhat.com>
Date: Tue Aug 21 16:48:30 2018 +0100
Don't throw Scheme exceptions with live std::vector objects
A complication with the Guile code is that we have two types of
exceptions to consider: GDB/C++ exceptions, and Guile/SJLJ exceptions.
Because Guile exceptions are SJLJ based, we must make sure to not have
live local variables of types with non-trivial dtors when a Guile
exception is thrown, because the dtors won't be run when a Guile
exceptions is thrown.
gdbscm_parse_function_args currently violates this:
void
gdbscm_parse_function_args (const char *func_name,
int beginning_arg_pos,
const SCM *keywords,
const char *format, ...)
{
...
/* Keep track of malloc'd strings. We need to free them upon error. */
std::vector<char *> allocated_strings;
...
for (char *ptr : allocated_strings)
xfree (ptr);
gdbscm_throw (status); /// dtor of "allocated_strings" is not run!
}
This commit fixes the above making using of gdbscm_wrap.
It would be nice if we had a way to make it impossible to write such
code. PR guile/23429 has an idea for that, if someone's interested.
gdb/ChangeLog:
2018-08-21 Pedro Alves <palves@redhat.com>
* guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
out from gdbscm_parse_function_args.
(gdbscm_parse_function_args): Rework to use gdbscm_wrap and
gdbscm_parse_function_args_1.
commit ae19acf3201ee0b921cde8e70e278fe123e82105
Author: mephi42 <mephi42@gmail.com>
Date: Tue Aug 21 16:34:56 2018 +0100
Fix running objcopy on Mach-O binaries.
PR binutils/23315
* mach-o.c (bfd_mach_o_mangle_symbols): Update n_type even if
data is already considered filled.
commit c8455dc98666030e930cddd8178b1b4074749b04
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Aug 21 16:15:36 2018 +0100
Update the documentation of the linker's --hash-style option.
PR 23426
* ld.texi (--hash-style): Note that the default is configurable
and that for most Linux based systems it will be "both".
commit 6efa941c381b603fbf9d0f951eff87bcb805fa94
Author: Arnold Metselaar <arnold.metsel@gmail.com>
Date: Tue Aug 21 15:50:49 2018 +0100
Fix handling of undocumented SLL instruction for the Z80 target.
* config/tc-z80.c: Correct treatment of undocumented instruction
sli/sll.
(emit_mr): Add argument unportable.
(emit_bit): Adapt call to emit_mr.
(emit_mr_z80): New function.
(emit_mr_unportable): New function.
(instab[]): Replace emit_mr with emit_mr_z80 or emit_mr_unportable
as appropriate.
commit a4497d2f8486502ab5140ec5168d5f13ec375155
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Tue Aug 21 10:47:47 2018 -0400
Remove unnecessary ternary operator in m32c-tdep.c
Bug 17816 pointed out a useless use of the ternary operator:
case 0x0: sd.reg = (size == 1 ? &st->r0 : &st->r0); break;
I believe that this is right. If size is 1, the instruction refers to
part of r0, while if size is 2, the instruction refers to the whole of
r0.
gdb/ChangeLog:
PR gdb/17816
* m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
operator.
commit 06d743b72334ad4f9297c206290a47c261aa8e5f
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Aug 21 15:41:59 2018 +0100
Note that Arnold Metselaar has retired as the z80 maintainer.
commit 66b09c7ea97ffa4e0a175393fa7a8f240b00fbde
Author: L. Simon <l.simon@samsung.com>
Date: Tue Aug 21 15:37:06 2018 +0100
Fix a seg-fault in readelf when parsing corrupt HPPA unwind tables.
PR 23531
* readelf.c (hppa_process_unwind): Only dump the unwind table if
the data was successfully read in.
commit 9dcbfff1e02778bac6fb723640724c38001a8f0a
Author: Andreas Schwab <schwab@suse.de>
Date: Mon Aug 20 16:55:05 2018 +0200
Fix invalid strcpy on unterminated buffer
* read.c (do_repeat_with_expander): Use memmove instead of strcpy
on unterminated string buffer.
commit 9cf7e5687f823a1009d25cb25ff653ee8372e517
Author: Alan Modra <amodra@gmail.com>
Date: Thu Aug 16 16:14:12 2018 +0930
Use operand->extract to provide defaults for optional PowerPC operands
Most optional operands to powerpc instructions use a default value of
zero, but there are a few exceptions. Those have been handled by
PPC_OPERAND_OPTIONAL_VALUE and an entry in the powerpc_operands table
for the default value, smuggled in the shift field. This patch
changes that to using the operand extract function to provide non-zero
defaults.
I've also moved the code determining whether optional operands are
provided or omitted, to the point the first optional operand is seen,
and allowed for the possibility of optional base register operands
in a future patch.
The patch does change the error you get on invalid assembly like
ld 3,4
You'll now see "missing operand" rather than
"syntax error; end of line, expected `('".
gas/
* config/tc-ppc.c (md_assemble): Delay counting of optional
operands until one is encountered. Allow for the possibility
of optional base regs, ie. PPC_OPERAND_PARENS. Call
ppc_optional_operand_value with extra args.
include/
* opcode/ppc.h (struct powerpc_operand): Correct "insert" comment.
Mention use of "extract" function to provide default value.
(PPC_OPERAND_OPTIONAL_VALUE): Delete.
(ppc_optional_operand_value): Rewrite to use extract function.
opcodes/
* ppc-dis.c (operand_value_powerpc): Init "invalid".
(skip_optional_operands): Count optional operands, and update
ppc_optional_operand_value call.
* ppc-opc.c (extract_dxdn): Remove ATTRIBUTE_UNUSED from used arg.
(extract_vlensi): Likewise.
(extract_fxm): Return default value for missing optional operand.
(extract_ls, extract_raq, extract_tbr): Likewise.
(insert_sxl, extract_sxl): New functions.
(insert_esync, extract_esync): Remove Power9 handling and simplify.
(powerpc_operands <FXM4, TBR>): Delete PPC_OPERAND_OPTIONAL_VALUE
flag and extra entry.
(powerpc_operands <SXL>): Likewise, and use insert_sxl and
extract_sxl.
commit 46807bf45106af5523ad06cf84e7b825dcb9f089
Author: Alan Modra <amodra@gmail.com>
Date: Mon Aug 20 15:23:38 2018 +0930
PowerPC HOWTOs
These take up far too many lines in the files. This patch introduces
a replacement for the HOWTO macro that simplifies the relow howto
initialization. Apart from the two relocs mentioned in the ChangeLog,
no relocation howto is changed.
* elf64-ppc.c (HOW): Define.
(ONES): Delete.
(ppc64_elf_howto_raw): Use HOW to initialize entries.
* elf32-ppc.c (HOW): Define.
(ppc_elf_howto_raw): Use HOW to initialize entries, updating
R_PPC_VLE_REL15 and R_PPC_VLE_REL24 to use bitpos=0.
commit 706704c88344314646e4edcc0840cb18a9cb4c82
Author: Alan Modra <amodra@gmail.com>
Date: Tue Aug 21 11:54:29 2018 +0930
Pack reloc_howto_struct
This patch uses bitfields in reloc_howto_struct, reducing its size
from 80 to 40 bytes on 64-bit hosts and from 52 to 32 bytes on 32-bit
hosts (with a 32-bit bfd_vma). I've also added a new "negate" field
rather than making the encoded "size" field do double duty as both
a size and a flag.
There was just one use of an encoded size of 8, which according to
bfd_get_reloc_size meant 16 bytes, in vms-alpha.c ALPHA_R_LINKAGE.
See git commit c3d8e071bf adding ALPHA_R_LINKAGE and git commit
8612a388f7 decoding size 8 in bfd_get_reloc_size. Since no other part
of BFD handles 16 byte relocs, I've removed that encoding and special
cased the ALPHA_R_LINKAGE size in vms-alpha.c.
* reloc.c (reloc_howto_type): Typedef.
(bfd_symbol): Delete forward declaration.
(struct reloc_howto_struct): Add "negate" field. Make "size",
"bitsize", "rightshift", "bitpos", "complain_on_overflow",
"pc_relative", "partial_inplace", and "pcrel_offset" bitfields.
Rearrange for better packing. Revise comments.
(HOWTO): Map to rearranged reloc_howto_struct.
(bfd_get_reloc_size): Delete now unused cases.
(read_reloc, write_reloc): Likewise.
(apply_reloc, _bfd_relocate_contents): Test howto->negate
rather than howto->size < 0 for negated relocation values.
* coff-rs6000.c (xcoff_complain_overflow_bitfield_func): Avoid
signed/unsigned warning.
(xcoff_ppc_relocate_section): Delete "condition is always false"
code.
* coff64-rs6000.c (xcoff64_ppc_relocate_section): Likewise.
* cpu-ns32k.c (do_ns32k_reloc): Adjust to suit reloc_howto_struct
changes.
* vms-alpha.c (_bfd_vms_write_etir, alpha_vms_slurp_relocs): Use
size 16 for ALPHA_R_LINKAGE.
(alpha_howto_table <ALPHA_R_LINKAGE>): Set encoded size and
bitsize to zero.
* bfd-in.h (reloc_howto_type): Delete.
* bfd-in2.h: Regenerate.
commit 487096bf0bd5499b1d23ecbe5fd64f9f0079c0b5
Author: Alan Modra <amodra@gmail.com>
Date: Mon Aug 20 19:36:05 2018 +0930
Delete NEWHOWTO and tidy some uses of reloc_howto_struct
NEWHOWTO was promised way back in 1991 (git commit e5683622186).
I doubt it's ever going to be implemented. This patch removes it,
and tidies some reloc howtos. I was going to make some changes to
reloc_howto_struct, so I think it's important that all relocs howtos
are initialized with HOWTO.
* reloc.c (HOWTO): Revise comment.
(NEWHOWTO, HOWTO_PREPARE): Delete.
* coff-arm.c (coff_arm_reloc_type_lookup): Replace const struc
reloc_howto_struct with reloc_howto_type.
* ns32knetbsd.c (MY_bfd_reloc_type_lookup): Likewise.
* vms-alpha.c (alpha_vms_bfd_reloc_type_lookup): Likewise.
* elf-hppa.h (HOW): Define.
(elf_hppa_howto_table): Use it to simplify this table, correcting
name of R_PARISC_LTOFF16WF, R_PARISC_LTOFF_FPTR64, and
R_PARISC_LTOFF_FPTR16DF.
* elf32-mep.c (MEPREL): Use HOWTO.
* bfd-in2.h: Regenerate.
commit 08a8fe2ffd9766877a74a52922b4391d37e85491
Author: Alan Modra <amodra@gmail.com>
Date: Mon Aug 20 18:16:34 2018 +0930
Fix s12z test regexps
Fixes
ERROR: tcl error sourcing .../gas/testsuite/gas/s12z/s12z.exp.
ERROR: couldn't compile regular expression pattern: quantifier operand invalid
run_dump_test expected output lines are regexps.
* testsuite/gas/s12z/bit-manip-invalid.d: Correct regexps.
commit fe22d84fe472a5a1f19c56cf0f888c86a635dee7
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Aug 21 00:00:49 2018 +0000
Automatic date update in version.in
commit c44deb735ef492f8799cbb35c5f2566fc2dba19d
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sun Aug 19 22:03:58 2018 -0400
Fix formatting in solib-svr4.c
Fix some formatting issues which I have missed during review.
gdb/ChangeLog:
* solib-svr4.c (svr4_exec_displacement): Fix formatting.
commit 865dcc8a4d397e4d9d032785e8ff318e28355d76
Author: Alan Modra <amodra@gmail.com>
Date: Mon Aug 20 09:25:12 2018 +0930
Don't init array at run time
When it can be done at compile time.
* mmo.c (valid_mmo_symbol_character_set): Initialize and make
array const.
(mmo_init): Don't init valid_mmo_symbol_character_set.
commit d203b41ac79b011d63bc1e2467f9c8a81f468eed
Author: Alan Modra <amodra@gmail.com>
Date: Mon Aug 20 09:22:28 2018 +0930
Tidy bit twiddling
* sh-opc.h (MASK): Simplify.
commit ba1c4c6fee7e8794481412fd8604462f04b2765f
Author: Alan Modra <amodra@gmail.com>
Date: Mon Aug 20 09:20:11 2018 +0930
Balance parentheses in expression
* rs6000-core.c (CORE_COMMONSZ): Balance parentheses in expression.
commit 8ca28cdfbec3efd7dab10f13919dc0b1cf778ded
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Aug 20 00:00:44 2018 +0000
Automatic date update in version.in
commit be2d111a878e1422c921226bc7714131a5c470fa
Author: Michael Spang <spang@google.com>
Date: Sun Aug 19 10:55:58 2018 -0400
Fix debugging of stripped PIE executables with padded PT_TLS
Certain PIE executables produced by gold cannot be debugged by gdb after
being stripped. GDB requires program headers of PIE executables to match,
and those checks may fail due to adjustments made during stripping.
One case of this occurs because strip recomputes the memsz of PT_TLS and
does not add alignment, while gold does. This is another variant of PR
11786, so apply the same fix of relaxing the program header matching.
gdb/ChangeLog:
PR gdb/11786
* solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
for PT_TLS segments.
gdb/testsuite/ChangeLog:
PR gdb/11786
* gdb.base/gcore-tls-pie.c: New file.
* gdb.base/gcore-tls-pie.exp: New file.
commit d604f19adeb96f96213f4825e56053fac50723c6
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Aug 19 00:01:08 2018 +0000
Automatic date update in version.in
commit 7d140d1a0be24da37c9103ed6cac98b0017829d9
Author: Kevin Buettner <kevinb@redhat.com>
Date: Tue Jul 31 14:45:20 2018 -0700
Test case for DW_OP_GNU_variable_value
gdb/testsuite/ChangeLog:
* gdb.dwarf2/varval.c: New file.
* gdb.dwarf2/varval.exp: New file.
commit ae3a7c47e6a95d69a09838c11f9fd3c9cbb25cb6
Author: Kevin Buettner <kevinb@redhat.com>
Date: Mon Jul 30 16:15:34 2018 -0700
Add support of DW_OP_GNU_variable_value to DWARF assembler
gdb/testsuite/ChangeLog:
* lib/dwarf.exp: Add support for DW_OP_GNU_variable_value.
commit a6b786da4e3353bf634ec7d9c7bffbd7569e73c6
Author: Kevin Buettner <kevinb@redhat.com>
Date: Mon Jul 30 15:41:56 2018 -0700
Add support for DW_OP_GNU_variable_value
This patch adds support for DW_OP_GNU_variable_value to GDB.
Jakub Jelinek provides a fairly expansive discussion of this DWARF
expression opcode in his GCC patch...
https://gcc.gnu.org/ml/gcc-patches/2017-02/msg01499.html
It has also been proposed for addition to the DWARF Standard:
http://www.dwarfstd.org/ShowIssue.php?issue=161109.2
If compiled with a suitable version of GCC, the test case associated
with GCC Bug 77589 uses DW_OP_GNU_variable_value in a DW_AT_byte_stride
expression. Here's a link to the bug:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77589
This is what the DWARF looks like. Look at the last line, which has
the DW_AT_byte_stride expression:
<2><e1>: Abbrev Number: 12 (DW_TAG_variable)
<e2> DW_AT_name : (indirect string, offset: 0x115): span.0
<e6> DW_AT_type : <0x2e>
<ea> DW_AT_artificial : 1
<ea> DW_AT_location : 3 byte block: 91 b0 7f (DW_OP_fbreg: -80)
...
<2><178>: Abbrev Number: 18 (DW_TAG_subrange_type)
<179> DW_AT_lower_bound : 4 byte block: 97 23 20 6 (DW_OP_push_object_address; DW_OP_plus_uconst: 32; DW_OP_deref)
<17e> DW_AT_upper_bound : 4 byte block: 97 23 28 6 (DW_OP_push_object_address; DW_OP_plus_uconst: 40; DW_OP_deref)
<183> DW_AT_byte_stride : 10 byte block: 97 23 18 6 fd e1 0 0 0 1e (DW_OP_push_object_address; DW_OP_plus_uconst: 24; DW_OP_deref; DW_OP_GNU_variable_value: <0xe1>; DW_OP_mul)
A patch to readelf, which I'm also submitting, is required to do this
decoding.
I found that GDB gave me the correct answer for "p c40pt(2)" once I
(correctly) implemented DW_OP_GNU_variable_value.
I also have test case (later in this series) which uses the DWARF
assembler and, therefore, do not rely on having a compiler with this
support.
gdb/ChangeLog:
* dwarf2expr.h (struct dwarf_expr_context): Add virtual method
dwarf_variable_value.
* dwarf2-frame.c (class dwarf_expr_executor):
Add override for dwarf_variable_value.
* dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
(class symbol_needs_eval_context): Likewise.
(indirect_synthetic_pointer): Add forward declaration.
(sect_variable_value): New function.
(dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
* dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
for DW_OP_GNU_variable_value.
commit f41078422a4381d4943f36aa1ef95b1d7c85ee7e
Author: John Darrington <john@darrington.wattle.id.au>
Date: Tue Jul 24 13:40:21 2018 +0200
Opcodes: (BRCLR / BRSET) Disassemble reserved codes instead of aborting.
Bit manipulation instructions which are not normally generated by the
assembler, should nevertheless be decoded by the disassembler.
opcodes/
* s12z-dis.c: BM_RESERVED1 to behave like BM_OPR_REG, and
BM_RESERVED0 like BM_REG_IMM.
commit 7ba3ba91a3dbc43f7ff16c4899f7f1cbef056db0
Author: John Darrington <john@darrington.wattle.id.au>
Date: Wed Jul 11 10:42:01 2018 +0200
S12Z: Move opcode header to public include directory.
opcodes/
* s12z.h: Delete.
* s12z-dis.c: Adjust path of included file.
include/
* opcode/s12z.h: New file.
gas/
* config/tc-s12z.c: Adjust path of included file.
commit 2e72a56e451cf26fb01712d6004d3b6a70749756
Author: Alan Modra <amodra@gmail.com>
Date: Fri Aug 17 15:06:46 2018 +0930
Remove duplicate ld testsuite function
It's in binutils/testsuite/lib/binutils-common.exp
* testsuite/ld-elf/elf.exp (is_elf64): Delete.
commit 506b86a4f5fe2aff90e62940a07c9e275d406cd4
Author: Alan Modra <amodra@gmail.com>
Date: Mon Aug 13 13:41:18 2018 +0930
binutils testsuite strip-13 test
The strip-13 test runs into difficulty using dc.a on some targets.
dc.a writes a power of 2 number of bytes large enough to contain a
target address. On some targets, eg. avr-elf, this can be 2 bytes but
the ELF format used require words of 4 bytes to make up a relocation
entry. There was a hack in the test, duplicating the reloc type into
what is normally the addend to make the test work when little-endian,
but that hack fails for similar big-endian targets.
This patch fixes that problem by arranging to emit 32-bit and 64-bit
ELF relocs using .4byte and .8byte directives, chosen as appropriate
for the ELF size. I've also bumped the reloc number tested to a
higher unused value, and made the number more easily parameterised by
target should that be necessary in the future. Whether REL or RELA
relocs are used is now chosen by a new is_rela readelf test of an
object file, rather than by lists of targets.
* testsuite/lib/binutils-common.exp (is_elf64): Use directory of
input file for readelf.out.
(is_rela): New proc.
* testsuite/binutils-all/objcopy.exp (elf64): Set new variable
from first result of is_elf64 test.
(reloc_format): Set using is_rela.
(strip-13): Pass RELOC and ELF64 to assembler.
(strip-14, strip-15): Use elf64 rather than calling is_elf64 again.
* testsuite/binutils-all/strip-13.d: Run for more targets.
* testsuite/binutils-all/strip-13mips64.s: Use RELOC and set
addend to zero.
* testsuite/binutils-all/strip-13rel.s: Use RELOC and ELF64.
Don't add _NONE reloc.
* testsuite/binutils-all/strip-13rela.s: Likewise.
commit 503c367dc237e6fec46d0b8ccf3e74f7406b3260
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Aug 18 00:00:26 2018 +0000
Automatic date update in version.in
commit 89fbedf3abc90b62fbb7f08782ed78d87b3fccaa
Author: Tom Tromey <tom@tromey.com>
Date: Wed Aug 15 18:37:00 2018 -0600
Remove "repeat" argument from command_line_input
After the previous patch, all callers pass 0 as the repeat argument to
command_line_input. So, this patch removes it.
gdb/ChangeLog
2018-08-16 Tom Tromey <tom@tromey.com>
* top.c (read_command_file): Update.
(command_line_input): Remove "repeat" argument.
* ada-lang.c (get_selections): Update.
* linespec.c (decode_line_2): Update.
* defs.h (command_line_input): Remove argument.
* cli/cli-script.c (read_next_line): Update.
* python/py-gdb-readline.c: Update.
commit 12582533306990c9406aedd960fa411c317a67de
Author: Tom Tromey <tom@tromey.com>
Date: Wed Aug 15 18:37:00 2018 -0600
Fix use-after-free in number_or_range_parser
-fsanitize=address showed a use-after-free in number_or_range_parser.
The cause was that handle_line_of_input could stash the input into
"saved_command_line", and then this could be freed by reentrant calls.
This fixes the bug by preventing commands that are read by "commands"
from being eligible for repeating.
gdb/ChangeLog
2018-08-17 Tom Tromey <tom@tromey.com>
* cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
command_line_input.
commit bfb1e8c15a6b7d02cd0b9a124d01722a07ebf09a
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Aug 17 03:54:05 2018 -0700
x86: Remove empty X86_FEATURE_1_AND property
There is no need to generate .note.gnu.property section with empty
X86_FEATURE_1_AND property. This patch adds fixup_gnu_properties
to ELF linker backend so that x86 backend can remove it.
bfd/
PR ld/23515
* elf-bfd.h (elf_backend_data): Add fixup_gnu_properties.
* elf-properties.c (_bfd_elf_link_setup_gnu_properties): Call
backend fixup_gnu_properties if it isn't NULL. Discard
.note.gnu.property section if all properties have been removed.
* elfxx-target.h (elf_backend_fixup_gnu_properties): New.
(elfNN_bed): Initialize fixup_gnu_properties.
* elfxx-x86.c (_bfd_x86_elf_link_fixup_gnu_properties): New
function.
* elfxx-x86.h (_bfd_x86_elf_link_fixup_gnu_properties): New
prototype.
(elf_backend_fixup_gnu_properties): New.
ld/
PR ld/23515
* testsuite/ld-i386/ibt-plt-2a.d: Updated.
* testsuite/ld-i386/ibt-plt-2b.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-2a-x32.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-2a.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-2b-x32.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-2b.d: Likewise.
commit 2ecae92e2372102ac0fa774fce4c4c0d6f8c85f5
Author: Alan Hayward <alan.hayward@arm.com>
Date: Thu Aug 16 15:21:15 2018 +0100
Fix asm in testsuite/gdb.arch/aarch64-fp.c
Cannot assume result of first and third ldr will go into x0.
Rewrite asm to be clearer.
gdb/testsuite/
PR gdb/18931:
* gdb.arch/aarch64-fp.c (main): Fix asm registers.
commit c1854f1d5a8fb5d86c7ac6d118348759cfa8c393
Author: Keith Seitz <keiths@redhat.com>
Date: Thu Aug 16 14:37:49 2018 -0700
Use gdb_test_no_output for compile tests expected to pass
There is a small think-o in compile.exp:
if { $srcfile3 != "" } {
gdb_test "p constvar" " = 3"
gdb_test "info addr constvar" {Symbol "constvar" is constant\.}
gdb_test "compile code globalvar = constvar;"; # INCORRECT
gdb_test "print globalvar" " = 3" "print constvar value"
} else {
untested "print constvar value"
}
The line marked INCORRECT runs a simple "compile code" which is expected
to succeed. When this happens, the compile plug-in and GDB will not
output anything. The use of gdb_test matches against anything.
This is certainly not the intent, and this patch corrects the two instances
of this in the file. [The rest of gdb.compile looks okay.]
testsuite/ChangeLog:
* gdb.compile/compile.exp: Use gdb_test_no_output for "compile code"
tests expected to pass.
commit 2cdcc33021214e77c2c185aa78ad4f9ae1b9e565
Author: Alan Modra <amodra@gmail.com>
Date: Wed Aug 15 11:11:59 2018 +0930
Correct elf64-ppc.c linkage stub comment and formatting fixes
ppc_stub_long_branch_notoc will never need more than a 32-bit offset
for the r12 offset since the stub target must be in range of a
branch instruction.
* elf64-ppc.c: Correct ppc_stub_long_branch_notoc example.
Formatting.
commit 3b7b80752fdb3544b5d822f477dc5a9863959393
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Aug 16 00:00:31 2018 +0000
Automatic date update in version.in
commit 495143533ad95369811391c6e3c6dadd69d7dd67
Author: Tom Tromey <tom@tromey.com>
Date: Wed Aug 15 10:05:01 2018 -0600
Use pulongest in aarch64-linux-tdep.c
While testing a patch on the buildbot, I got this error:
../../binutils-gdb/gdb/aarch64-linux-tdep.c: In function uint64_t aarch64_linux_core_read_vq(gdbarch*, bfd*):
../../binutils-gdb/gdb/aarch64-linux-tdep.c:285:29: error: format %ld expects argument of type long int, but argument 2 has type uint64_t {aka long long unsigned int} [-Werror=format=]
This patch avoids the problem by using pulongest rather than %ld.
This seems safe to me because, if aarch64-linux-tdep.c is included in
the build, then ULONGEST must be a 64-bit type.
gdb/ChangeLog
2018-08-15 Tom Tromey <tom@tromey.com>
* aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
commit 07aff30e92ead6c6d662462efc6ebdf83c6b8de3
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Aug 15 00:00:14 2018 +0000
Automatic date update in version.in
commit 1bc60e562458b1e1c25be808a62adb1cb6c20ff0
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Tue Aug 14 09:55:43 2018 -0700
x86-64: Display eiz for address with the addr32 prefix
In 64-bit mode, display eiz for address with the addr32 prefix and without
base nor index registers. For
mov -0xccddef(,%eiz,), %rax
disassembler now displays:
67 48 8b 04 25 11 22 33 ff mov -0xccddef(,%eiz,1),%rax
instead of
67 48 8b 04 25 11 22 33 ff addr32 mov 0xffffffffff332211,%rax
gas/
* testsuite/gas/i386/evex-no-scale-64.d: Updated.
* testsuite/gas/i386/x86-64-addr32-intel.d: Likewise.
* testsuite/gas/i386/x86-64-addr32.d: Likewise.
* testsuite/gas/i386/ilp32/x86-64-addr32-intel.d: Likewise.
* testsuite/gas/i386/ilp32/x86-64-addr32.d: Likewise.
* testsuite/gas/i386/x86-64-addr32.s: Add %eiz tests.
opcodes/
* i386-dis.c (OP_E_memory): In 64-bit mode, display eiz for
address with the addr32 prefix and without base nor index
registers.
commit 26fb3983d7062c6f6bc43028ae2074cc29d22c7e
Author: Jan Vrany <jan.vrany@fit.cvut.cz>
Date: Tue Aug 14 14:13:28 2018 +0100
MI: Add -a option to the "-data-disassemble" command
The CLI "disassemble" command allows specifying a single address - in
that case the function surrounding that address is disassembled.
This commit adds this feature to the equivalent MI command
"-data-disassemble".
gdb/ChangeLog:
2018-08-14 Jan Vrany <jan.vrany@fit.cvut.cz>
* mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
If used, use find_pc_partial_function to find address range
to disassemble.
* mi/mi-main.c (mi_cmd_list_features): Report
"data-disassemble-a-option" feature.
* NEWS: Mention new -data-disassemble option -a.
gdb/doc/ChangeLog:
2018-08-14 Jan Vrany <jan.vrany@fit.cvut.cz>
* gdb.texinfo (GDB/MI Data Manipulation): Document
"-data-disassemble -a addr".
(GDB/MI Support Commands): Document "data-disassemble-a-option"
feature.
gdb/testsuite/ChangeLog:
2018-08-14 Jan Vrany <jan.vrany@fit.cvut.cz>
* gdb.mi/mi-disassemble.exp (test_disassembly_only): Add tests for
-data-disassemble -a.
(test_disassembly_bogus_args): Likewise.
commit 67943c005fafa4397535766787b4fbda338ac07d
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Fri Aug 10 10:16:32 2018 +0100
gdb: Fix instability in thread groups test
In the test script gdb.mi/list-thread-groups-available.exp we ask GDB
to list all thread groups, and match the output against a
regexp. Occasionally, I would see this test fail.
The expected output is a list of entries, each entry looking roughly
like this:
{id="<DECIMAL>",type="process",description="<STRING>",
user="<STRING>",cores=["<DECIMAL>","<DECIMAL>",...]}
All the fields after 'id' and 'type' are optional, and the 'cores'
list can contain 1 or more "<DECIMAL>" entries.
On my machine (Running Fedora 27, kernel 4.17.3-100.fc27.x86_64)
usually the 'description' is a non-empty string, and the 'cores' list
has at least one entry in it. But sometimes, very rarely, I'll see an
entry in the process group list where the 'description' is an empty
string, the 'user' is the string "?", and the 'cores' list is empty.
Such an entry looks like this:
{id="19863",type="process",description="",user="?",cores=[]}
I believe that this is caused by the process exiting while GDB is
scanning /proc for process information. The current code in
gdb/nat/linux-osdata.c is not (I think) resilient against exiting
processes.
This commit adjusts the regex that matches the 'cores' list so that an
empty list is acceptable, with this patch in place the test script
gdb.mi/list-thread-groups-available.exp never fails for me now.
I've only adjusted the cores regexp for the occasion when we have GDB
read information about all processes, its only in this case that we
might encounter an exiting process. When we read information about
two known PIDs, that we know will not exit for the duration of the
test, we require that the core list be non-empty.
gdb/testsuite/ChangeLog:
* gdb.mi/list-thread-groups-available.exp: Update test regexp.
commit 2a50366ded329bfb39d387253450c9d5302c3503
Author: Robert Yang <liezhi.yang@windriver.com>
Date: Tue Aug 14 12:22:35 2018 +0100
When the assembler reports that the input and output are the same, report the file names involved, in order to help debugging. Also do not equate two files are the same if the have the same inode value but reside on different file systems.
* as.c (main): Improve check for input file matching output file.
commit 08887f4a644fb31fd04faa4208c523dbf9b4f93b
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Aug 14 00:00:28 2018 +0000
Automatic date update in version.in
commit a97b53dda99526d7c2890aeb9637008790cbdfa9
Author: Tom Tromey <tom@tromey.com>
Date: Fri Aug 10 09:03:47 2018 -0600
Define _FORTIFY_SOURCE in common-defs.h
This defines _FORTIFY_SOURCE in common-defs.h. This seems like a
sensible safety measure, and also it may help avoid build problems
with -Wunused-result on distros that already define _FORTIFY_SOURCE by
default.
Tested by the buildbot.
gdb/ChangeLog
2018-08-13 Tom Tromey <tom@tromey.com>
* common/common-defs.h (_FORTIFY_SOURCE): Define.
commit 98641896ad52915448c0dd1ab4b4bbe23148a582
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Aug 13 07:24:31 2018 -0700
bfd: Move elf-properties.lo to BFD32_LIBS
commit 6404ab993797d1d6cd3d9e97cc281e3cb6226c12
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Aug 8 21:00:04 2018 -0700
Convert .note.gnu.property section between ELF32 and ELF64
updated bfd_convert_section_size and bfd_convert_section_contents
in bfd.c to call _bfd_elf_convert_gnu_property_size and
_bfd_elf_convert_gnu_properties, which are defined in elf-properties.c.
It led to
bfd.c:2484: undefined reference to `_bfd_elf_convert_gnu_property_size'
for non-ELF targets. Since elf-properties.c is a generic implementation
and doesn't reference any ELF specific functions directly, this patch
moves elf-properties.lo BFD32_LIBS.
Tested for many ELF and non-ELF targets.
PR binutils/23494
* Makefile.am (BFD32_LIBS): Add elf-properties.lo.
(BFD32_LIBS_CFILES): Add elf-properties.c.
(BFD32_BACKENDS): Remove elf-properties.lo.
(BFD32_BACKENDS_CFILES): Remove elf-properties.c.
* configure.ac (elf): Remove elf-properties.lo.
* Makefile.in: Regenerated.
* configure: Likewise.
commit 0c76e06d5cc83a42ec05a377c3b3c211c8e85151
Author: Alan Hayward <alan.hayward@arm.com>
Date: Mon Aug 13 11:02:22 2018 +0100
Parse SVE registers in aarch64 core file reading/writing
sve_regmap cannot be global static as the size is dependant on the current
vector length.
gdb/
* aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
(aarch64_linux_collect_sve_regset): Likewise.
(aarch64_linux_iterate_over_regset_sections): Check for SVE.
* regcache.h (regcache_map_entry_size): New function.
commit b7fd65b9dc0a9f132fba362493ec21dadc2994d7
Author: Alan Hayward <alan.hayward@arm.com>
Date: Mon Aug 13 10:49:51 2018 +0100
Detect SVE when reading aarch64 core files
The SVE section in a core file contains a header followed by the registers.
Add defines to easily access the header fields within a buffer.
gdb/
* aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
(SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
(SVE_HEADER_VL_LENGTH): Likewise.
(SVE_HEADER_MAX_VL_LENGTH): Likewise.
(SVE_HEADER_FLAGS_LENGTH): Likewise.
(SVE_HEADER_RESERVED_LENGTH): Likewise.
(SVE_HEADER_SIZE_OFFSET): Likewise.
(SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
(SVE_HEADER_VL_OFFSET): Likewise.
(SVE_HEADER_MAX_VL_OFFSET): Likewise.
(SVE_HEADER_FLAGS_OFFSET): Likewise.
(SVE_HEADER_RESERVED_OFFSET): Likewise.
(SVE_HEADER_SIZE): Likewise.
(aarch64_linux_core_read_vq): Add function.
(aarch64_linux_core_read_description): Check for SVE section.
commit a616bb94509c22c96ae8bf1432ec28a7f3e31778
Author: Alan Hayward <alan.hayward@arm.com>
Date: Mon Aug 13 10:04:11 2018 +0100
Split size in regset section iterators
In the existing code, when using the regset section iteration functions, the
size parameter is used in different ways.
With collect, size is used to create the buffer in which to write the regset.
(see linux-tdep.c::linux_collect_regset_section_cb).
With supply, size is used to confirm the existing regset is the correct size.
If REGSET_VARIABLE_SIZE is set then the regset can be bigger than size.
Effectively, size is the minimum possible size of the regset.
(see corelow.c::get_core_register_section).
There are currently no targets with both REGSET_VARIABLE_SIZE and a collect
function.
In SVE, a corefile can contain one of two formats after the header, both of
which are different sizes. However, when writing a core file, we always want
to write out the full bigger size.
To allow support of collects for REGSET_VARIABLE_SIZE we need two sizes.
This is done by adding supply_size and collect_size.
gdb/
* aarch64-fbsd-tdep.c
(aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
collect_size.
* aarch64-linux-tdep.c
(aarch64_linux_iterate_over_regset_sections): Likewise.
* alpha-linux-tdep.c
(alpha_linux_iterate_over_regset_sections):
* alpha-nbsd-tdep.c
(alphanbsd_iterate_over_regset_sections): Likewise.
* amd64-fbsd-tdep.c
(amd64fbsd_iterate_over_regset_sections): Likewise.
* amd64-linux-tdep.c
(amd64_linux_iterate_over_regset_sections): Likewise.
* arm-bsd-tdep.c
(armbsd_iterate_over_regset_sections): Likewise.
* arm-fbsd-tdep.c
(arm_fbsd_iterate_over_regset_sections): Likewise.
* arm-linux-tdep.c
(arm_linux_iterate_over_regset_sections): Likewise.
* corelow.c (get_core_registers_cb): Likewise.
(core_target::fetch_registers): Likewise.
* fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
* frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
* gdbarch.h (void): Regenerate.
* gdbarch.sh: Add supply_size and collect_size.
* hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
* hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
* hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
* i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
* i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
* i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
* ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
* linux-tdep.c (linux_collect_regset_section_cb): Likewise.
* m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
* m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
* m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
* mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
* mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
* mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
* mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
* mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
* nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
* ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
* ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
* ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
* ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
* riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
* rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
* s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
* score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
* sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
* sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
* tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
* vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
* xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
commit facbd8bd3d6d51c907494a269dc13a2a0a75bc4e
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Aug 13 00:00:51 2018 +0000
Automatic date update in version.in
commit 988daa317c01a610b5298bbcd80be8642ee66094
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sun Aug 12 05:39:00 2018 -0700
ld-x86-64/pr23486b.d: Swap pr23486a.s and pr23486a.s
Swap pr23486a.s and pr23486a.s so that pr23486b.d differs from pr23486a.d.
* testsuite/ld-x86-64/pr23486b.d: Swap pr23486a.s and pr23486a.s.
commit 8e92e6d4b214ea9e0169cb25f3716c912f828e9e
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Aug 12 00:01:17 2018 +0000
Automatic date update in version.in
commit d871f3f48388d57721d8077e281041ed16a745cf
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sat Aug 11 14:37:14 2018 -0700
x86: Add CpuCMOV and CpuFXSR
There are separate CPUID feature bits for fxsave/fxrstor and cmovCC
instructions. This patch adds CpuCMOV and CpuFXSR to replace Cpu686
on corresponding instructions.
gas/
* config/tc-i386.c (cpu_arch): Add .cmov and .fxsr.
(cpu_noarch): Add nocmov and nofxsr.
* doc/c-i386.texi: Document cmov and fxsr.
opcodes/
* i386-gen.c (cpu_flag_init): Add CpuCMOV and CpuFXSR to
CPU_I686_FLAGS. Add CPU_CMOV_FLAGS, CPU_FXSR_FLAGS,
CPU_ANY_CMOV_FLAGS and CPU_ANY_FXSR_FLAGS.
(cpu_flags): Add CpuCMOV and CpuFXSR.
* i386-opc.tbl: Replace Cpu686 with CpuFXSR on fxsave, fxsave64,
fxrstor and fxrstor64. Replace Cpu686 with CpuCMOV on cmovCC.
* i386-init.h: Regenerated.
* i386-tbl.h: Likewise.
commit ab9e342807d132182892de1be1a92d6e91a5c1da
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sat Aug 11 06:41:33 2018 -0700
x86: Properly add X86_ISA_1_NEEDED property
Existing properties may be removed during property merging. We avoid
adding X86_ISA_1_NEEDED property only if existing properties won't be
removed.
bfd/
PR ld/23428
* elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Don't
add X86_ISA_1_NEEDED property only if existing properties won't
be removed.
ld/
PR ld/23428
* testsuite/ld-elf/dummy.s: New file.
* testsuite/ld-elf/linux-x86.S: Add X86_FEATURE_1_AND property.
* testsuite/ld-elf/linux-x86.exp: Add dummy.s to pr23428.
commit 1dc9e2d63e37839ff1768346b2e3f52e338baba5
Author: Alan Modra <amodra@gmail.com>
Date: Sat Aug 11 11:07:07 2018 +0930
Factor out common relocation processing
This patch factors out some code common to both bfd_perform_relocation
and bfd_install_relocation, in the process fixing the omission of
"case -1" in bfd_install_relocation.
* reloc.c (bfd_get_reloc_size): Sort switch.
(read_reloc, write_reloc, apply_reloc): New functions.
(bfd_perform_relocation, bfd_install_relocation): Use apply_reloc.
(_bfd_relocate_contents): Use read_reloc and write_reloc.
(_bfd_clear_contents): Likewise.
commit 7cf9ebc6958462c3ef1372071d1ced5dae7bef3c
Author: John Darrington <john@darrington.wattle.id.au>
Date: Thu Aug 9 18:46:51 2018 +0200
Deal with relocations which are 3 bytes in size
* reloc.c (_bfd_relocate_contents): Handle 3 byte relocs.
(_bfd_clear_contents): Likewise.
(bfd_perform_relocation): Likewise.
(bfd_install_relocation): Likewise.
commit ae1f3b64e5818eed2354aa43740d4324ca18efcf
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Aug 11 00:00:27 2018 +0000
Automatic date update in version.in
commit a9925d4f9982ad897bc85f98076e5924e70232b1
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Fri Aug 10 18:01:11 2018 -0400
Fix forgotten xstrprintf -> string_printf change
The patch
528e157 ("Replace some uses of xstrprintf with string_printf")
forgot to actually change an xstrprintf call to string_printf, this one
fixes it.
gdb/ChangeLog:
* nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
with string_printf.
commit 48e30f5238c70e738f44474d595c476ef4e4ec38
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Aug 10 12:21:58 2018 -0700
Always clear h->verinfo.verdef when overriding a dynamic definition
When linker defines a symbol to override a dynamic definition, it should
always clear h->verinfo.verdef so that the symbol won't be associated
with the version information from the dynamic object. This happened to
the symbol "_edata" when creating an unversioned dynamic object linking
against:
1. libKF5ConfigCore.so.5.49.0
2. libKF5CoreAddons.so.5.49.0
3. libKF5I18n.so.5.49.0
4. libKF5DBusAddons.so.5.49.0
5. libQt5Xml.so.5.11.1
6. libQt5DBus.so.5.11.1
7. libQt5Core.so.5.11.1
Among them
libQt5Xml.so.5.11.1
299: 000000000003e000 0 NOTYPE GLOBAL DEFAULT 18 _edata@@Qt_5
libQt5DBus.so.5.11.1
597: 0000000000092018 0 NOTYPE GLOBAL DEFAULT 18 _edata@@Qt_5
libQt5Core.so.5.11.1
2292: 00000000004df640 0 NOTYPE GLOBAL DEFAULT 21 _edata@Qt_5
2293: 00000000004df640 0 NOTYPE GLOBAL DEFAULT 21 _edata@Qt_5
The problem is triggered by 2 duplicated entries of _edata@Qt_5 in
libQt5Core.so.5.11.1 which was created by gold. Before this commit,
ld created the dynamic object with "_edata" in its dynamic symbol table
which was linker defined and associated with the version information
from libQt5Core.so.5.11.1. The code in question was there when the
binutils source was imported to sourceware.org. When such a dynamic
object was used later, we got:
/usr/bin/ld: bin/libKF5Service.so.5.49.0: _edata: invalid version 21 (max 0)
/usr/bin/ld: bin/libKF5Service.so.5.49.0: error adding symbols: bad value
Tested with many ELF targets.
PR ld/23499
* elflink.c (bfd_elf_record_link_assignment): Always clear
h->verinfo.verdef when overriding a dynamic definition.
commit ad3a68e9b9b01fbdc09854fb7fd655db652c482f
Author: Keith Seitz <keiths@redhat.com>
Date: Fri Aug 10 11:01:24 2018 -0700
Use policies for code generation
This patch changes code generation procedures add_code_header,
add_code_footer, and several other language-specific code generation
functions into policies.
gdb/ChangeLog:
* compile/compile-c-support.c (add_code_header, add_code_footer):
Move into policy class.
(c_push_user_expression, pop_user_expression_nop)
(c_add_code_header, c_add_code_footer, c_add_input): New policy class.
(compile_program): New host class.
(c_compile_program): New typedef.
(c_compute_porgram): Use c_compile_program.
commit 0cfbf43085c4191f3f4b4b4a834f1e19bf42d4a9
Author: Keith Seitz <keiths@redhat.com>
Date: Fri Aug 10 10:53:47 2018 -0700
Use unique_ptr for htabs
This patch updates the type-conversion caching in C compile to use
unique pointers. This patch also removes the on-demand allocation of the
symbol error map in favor of initialization, simplifying the code.
gdb/ChangeLog
* compile/compile-internal.h (compile_instance::~compile_instance):
Remove calls to htab_delete.
<m_type_map, m_symbol_err_map>: Switch type to htab_up.
* compile.c (compile_instance::compile_instance): Initialize
htab unique pointers.
(compile_instance::get_cached_type, compile_instance::insert_type)
(compile_instance::error_symbol_once): Update for unique_ptr.
commit 946d3d10e7609e074be30db8662cb9c4a3d8961d
Author: Keith Seitz <keiths@redhat.com>
Date: Fri Aug 10 10:52:13 2018 -0700
Move compile_instance to compile.c
This simple patch moves any code related to compile_instance into
compile.c, reserving compile-c-* files strictly for C language support.
gdb/ChangeLog:
* compile/compile-c-symbols.c (struct symbol_error)
(hash_symbol_error, eq_symbol_error, del_symbol_error)
(compile_instance::insert_symbol_error)
(compile_instance::error_symbol_once): Move to ...
* compile/compile.c: ... here.
commit 9cdfd9a26ef63ef2fee58c0e7475b5373b61e5d1
Author: Keith Seitz <keiths@redhat.com>
Date: Fri Aug 10 10:48:03 2018 -0700
Change compile_instance/compile_c_instance into classes
This patch changes structs compile_instance and compile_c_instance into
classes.
Because of the nature of the change, there are a number of unavoidably
mechanical changes buried in here, such as turning variable access of the
POD struct into method calls, removing the struct keyword, and changing
access of the plugin from "c_plugin->operation()" to
"plugin ().operation ()".
There is one "non-trivial" change associated with this patch, though.
The type cache and symbol error maps have been moved into the base class,
believing these facilities would be used other language implementations.
[They are indeed re-used by C++.]
gdb/ChangeLog:
* compile/compile-c-support.c (c_get_compile_context): Use `new'
instead of `new_compile_instance'.
* compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
Update description.
If the symbol error map is not initialized, create it.
(generate_c_for_for_one_symbol): Do not check/initialize
the symbol error map.
* compile/compile-c-types.c (compile_c_instance): Make a class.
Update all callers.
(compile_instance::compile_instance): Initialize the type cache.
(get_cached_type): New function.
(insert_type): Update description.
(compile_c_instance::m_default_cflags): Define.
(convert_type): Update description. Use get_cached_type.
(delete_instance): Moved to destructor.
(new_compile_instance): Moved to constructor.
* compile/compile-c.h (compile_c_instance): Make class inheriting
from compile_instance.
<base>: Remove field.
<type_map, symbol_err_map>: Move to base class.
<c_plugin>: Rename to `m_plugin' and remove pointer type.
* compile/compile-internal.h (compile_instance): Make class.
<type_map_t, symbol_err_map_t>: Define.
<fe>: Rename to `m_gcc_fe'.
<scope, block, gcc_target_options>: Add `m_' prefix.
<m_type_map, m_symbol_err_map>: New fields, moved from
compile_c_instance.
<destroy>: Remove.
(convert_type, new_compile_instance): Remove.
* compile/compile.c (cleanup_compile_instance): Remove.
(compile_to_object): Use unique_ptr to eliminate cleanups.
(compile_instance::set_print_callback, compile_instance::version)
(compile_instance::set_verbose)
(compile_instance::set_driver_filename)
(compile_instance::set_triplet_regexp)
(compile_instance::set_arguments)
(compile_instance::set_source_file)
(compile_instance::compile): Define.
commit 18cdc6d8f8e8b55e84783e0a2b5a80b41a0e917b
Author: Keith Seitz <keiths@redhat.com>
Date: Fri Aug 10 10:45:36 2018 -0700
Add a C++ wrapper for GCC C plug-in
This patch introduces a new class which wraps the GCC C compile plug-in.
It is a little unfortunate that this all happened in between the time that
GCC moved to C++ and GDB moved to C++, leaving us with an ABI promise to
support a C-like interface. The hope is to isolate GDB from some of this
should it change in the future.
Broadly, what this does is replace calls like:
C_CTX (context)->c_ops->operation (C_CTX (context), ...);
with calls that now look like:
context->c_plugin->operation (...);
This API will be further refined in following patches when struct
compile_instance/compile_c_instance are changed into classes.
gdb/ChangeLog:
* Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
* compile/compile-c-types.c: Define GCC_METHODN macros and include
gcc-c-fe.def to define C plugin.
(delete_instance): Delete `c_plugin'.
(new_compile_instance): Initialize `c_plugin'.
* compile/compile-c.h: Include gcc_c_plugin.h.
(struct compile_c_instance) <c_plugin>: New member.
* gcc-c-plugin.h: New file.
Update all callers with API change.
commit b7dc48b4a8006abb552c5e7d22f9841c86f2537d
Author: Keith Seitz <keiths@redhat.com>
Date: Fri Aug 10 10:43:17 2018 -0700
Move C-related declarations to compile-c.h
This patch simply moves a bunch of C language-related declarations from
the various compile header files into a new C-specific header, compile-c.h.
gdb/ChangeLog:
* Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
(HFILES_NO_SRCDIR): ... to here.
Add compile-internal.h and compile-c.h.
* compile/compile-c-support.c: Include compile-c.h.
* compile/compile-c-symbols.c: Include compile-c.h.
(generate_c_for_variable_locations): Update comment.
* compile/compile-c-types.c: Include compile-c.h.
* compile/compile-c.h: New file -- moved C language declarations
from other files here.
* compile/compile-internal.h: Do not include hashtab.h or
common/enum-flags.h.
(gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
(gcc_convert_symbol, gcc_symbol_address)
(generate_c_for_variable_locations, c_get_mode_for_size)
(c_get_range_decl_name): Definitions moved to compile-c.h.
* compile/compile-loc2c.c: Include compile-c.h.
commit 6f36b6d29fdff5be77ec6dfdac693d5e4b5dee50
Author: Keith Seitz <keiths@redhat.com>
Date: Fri Aug 10 10:41:37 2018 -0700
Rename symbol_substitution_name
This patch simply adds a "c_" prefix to symbol_substitution_name to clarify
that this is a C language-related function.
gdb/ChangeLog:
* compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
(c_symbol_substitution_name): ... this.
Update all callers.
commit bd923e510884a92514a4f9d90d79592d248d5d92
Author: Keith Seitz <keiths@redhat.com>
Date: Fri Aug 10 10:38:56 2018 -0700
Return unique_xmalloc_ptr for generate_c_for_variable_locations
This patch eliminates two cleanups in compile/ by changing
generate_c_for_variable_locations so that it returns a unique_ptr.
gdb/ChangeLog:
* compile/compile-c-support.c (c_compute_program): Use
unique_xmalloc_ptr to eliminate cleanup.
* compile/compile-c-symbols.c (generate_c_for_variable_locations):
Return a unique_xmalloc_ptr and eliminate cleanup.
* compile/compile-internal.h (generate_c_for_variable_locations):
Return unique_xmalloc_ptr and update description.
commit d7f449c026181e14162a67407842462e4bc0d8bd
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Aug 10 11:03:50 2018 -0700
x86: Don't display --32/--64/--x32 without BFD64
For 32-bit x86 assembler, --64 and --x32 are unsupported if BFD64 is
undefined. Even if BFD64 is defined, --64 and --x32 still may not be
supported if x86-64 support isn't compiled in:
[hjl@gnu-hsw-1 gas]$ ./as-new --64 -o x.o x.s
Assembler messages:
Fatal error: no compiled in support for x86_64
[hjl@gnu-hsw-1 gas]$ ./as-new --x32 -o x.o x.s
Assembler messages:
Fatal error: no compiled in support for 32bit x86_64
[hjl@gnu-hsw-1 gas]$
This patch removes --32/--64/--x32 from md_show_usage if BFD64 is
undefined and runs code64-inval only if BFD64 is undefined.
* config/tc-i386.c (md_show_usage): Don't display --32/--64/--x32
if BFD64 is undefined.
* testsuite/gas/i386/i386.exp (gas_bfd64_check): New.
Run code64-inval if gas_bfd64_check fails.
commit 19449d7c67690c641b1ec9c13ff3531677a5afcc
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Aug 10 10:23:11 2018 -0700
x86: Replace evex-no-scale.s with evex-no-scale-[32|64].s
.if is_64bit
vmovaps -1024(%rip), %zmm0
vmovaps 64(,%rax), %zmm0
vmovaps 64(,%riz), %zmm0
.endif
doesn't with i686-elf cross binutils on 64-bit hosts:
evex-no-scale.s: Assembler messages:
evex-no-scale.s:10: Error: bad register name `%rip)'
evex-no-scale.s:11: Error: bad register name `%rax)'
evex-no-scale.s:12: Error: bad register name `%riz)'
This patch replaces evex-no-scale.s with evex-no-scale-32.s and
evex-no-scale-64.s.
* testsuite/gas/i386/evex-no-scale-32.d: Don't use
evex-no-scale.s.
* testsuite/gas/i386/evex-no-scale-64.d: Likewise.
* testsuite/gas/i386/evex-no-scale-32.s: New file.
* testsuite/gas/i386/evex-no-scale-64.s: Likewise.
* testsuite/gas/i386/evex-no-scale.s: Removed.
commit 9c973a29df61c411e24ce51b13401333c6f6e0e7
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Aug 9 04:29:43 2018 -0700
Always use align_size as pr_datasz for GNU_PROPERTY_STACK_SIZE
For GNU_PROPERTY_STACK_SIZE, pr_datasz is the same as align_size, which
is 8 bytes for 64-bit ELF binaries and 4 bytes for 32-bit ELF binaries,
Use align_size as pr_datasz for GNU_PROPERTY_STACK_SIZE to convert
.note.gnu.property section.
bfd/
PR binutils/23494
* elf-properties.c (elf_get_gnu_property_section_size): Always
use align_size as pr_datasz for GNU_PROPERTY_STACK_SIZE.
(elf_write_gnu_properties): Likewise.
binutils/
PR binutils/23494
* testsuite/binutils-all/x86-64/pr23494c.s: New file.
* testsuite/binutils-all/x86-64/pr23494e-x32.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494e.d: Likewise.
commit 11459a79d97842a64961a35472bb8d67ed0fcf22
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Aug 10 07:53:50 2018 -0700
Skip PR binutils/23494 tests for nacl targets
PR binutils/23494 tests pass "-O elf64-x86-64" and "-O elf32-x86-64"
to objcopy which may not supported for nacl targets. This patch skips
these tests for nacl targets.
* testsuite/binutils-all/x86-64/pr23494a-x32.d: Skip nacl
targets.
* testsuite/binutils-all/x86-64/pr23494a.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494b-x32.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494b.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494c-x32.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494c.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494d-x32.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494d.d: Likewise.
commit dbd534fee4a3d6479e4a84f0cd79bd188d94f4d0
Author: Alan Hayward <alan.hayward@arm.com>
Date: Fri Aug 10 10:17:12 2018 +0100
Rename size in get_core_register_section
Make it clearer that the size field indicates the size of the section.
gdb/
* corelow.c (core_target::get_core_register_section): Rename
min_size to section_min_size.
commit db850b68654e26232a1fbd8c182ce0b4dfc52a23
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Aug 10 00:00:26 2018 +0000
Automatic date update in version.in
commit 52a187f8e78eeaefa38bdaff04aae1fd9a69d788
Author: Jim Wilson <jimw@sifive.com>
Date: Thu Aug 9 13:37:45 2018 -0700
RISC-V: Add configure support for riscv*-linux*.
This adds the target and native configure support, and the NEWS entries for
the new target and native configurations.
gdb/
* Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
(ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
* NEWS: Mention new GNU/Linux RISC-V target.
* configure.host: Add riscv*-*-linux*.
* configure.nat: Add riscv*.
* configure.tgt: Add riscv*-*-linux*.
commit 3c77f97eb0825f5808f4a3a01aa5cc2fcffd5ed4
Author: Jim Wilson <jimw@sifive.com>
Date: Thu Aug 9 13:35:24 2018 -0700
RISC-V: Add native linux support.
Add initial native support for riscv*-linux*.
gdb/
* riscv-linux-nat.c: New file.
commit 90ad36544c2fe5ecc423d99058116514d9fe718b
Author: Jim Wilson <jimw@sifive.com>
Date: Thu Aug 9 13:33:36 2018 -0700
RISC-V: Add linux target support.
Add initial target support for riscv*-linux*.
gdb/
* riscv-linux-tdep.c: New file.
commit aff4e1751ffeae9684b80d5f528ee07bac34a5f8
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Wed Jul 11 10:41:55 2018 +0100
gdb: Make infrun.c:resume function static
Make the infrun.c:resume function static, and update the header
comment on the infrun.c:proceed function. There should be no user
visible change after this commit.
gdb/ChangeLog:
* infrun.c (resume): Make static, add forward declaration.
(proceed): Update header comment.
* infrun.h (resume): Delete declaration.
commit 06ab921988f5dfd64630a0b92d05dd94792e0a08
Author: Tom Tromey <tom@tromey.com>
Date: Thu Aug 9 10:46:01 2018 -0600
Minor formatting fixes in riscv-tdep.h
This fixes some minor formatting issues in riscv-tdep.h, including one
pointed out by ARI.
ChangeLog
2018-08-09 Tom Tromey <tom@tromey.com>
* riscv-tdep.h: Minor formatting fixes.
commit 83c8d318d1aefecf3cc43015226c10bf4126df87
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Thu Aug 9 13:17:21 2018 -0400
Fix some gettext ARI warnings
ARI produces this warning for the lines touched in this patch:
warning: gettext: All messages should be marked up with _.
However, in these cases, the message is not translatable (they are
syscall names). Adding an extra set of parentheses silences the
warning.
gdb/ChangeLog:
* common/scoped_mmap.c (mmap_file): Silence ARI warning.
* dwarf-index-cache.c (create_dir_and_check): Likewise.
(test_mkdir_recursive): Likewise.
* dwarf-index-write.c (write_psymtabs_to_index): Likewise.
commit 3a53fb12c870d67537c883b9abd80d6a4ba408ff
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Aug 9 09:57:11 2018 -0700
as --help: Display default option for --elf-stt-common=
* as.c (show_usage): Display default option for --elf-stt-common=.
commit 7c5c05effd92cc5732bee527303077fc2e6b62af
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Aug 9 09:48:12 2018 -0700
x86: Display default x86-specific options for "as --help"
* config/tc-i386.c (md_show_usage): Display default options.
commit 5ff2bbae198cbd615885f26aa7d065b8cec8c278
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Wed Jul 25 17:33:08 2018 +0100
gdb: Check element of optimised out vla exists
If a vla is not in memory, and the upper bound is not defined, then we
can't know that an array element exists or not, and we should not try
to access the array element. One case where this happens is for
arrays that have been optimised out, the array will then have
VALUE_LVAL of not_lval, and an undefined upper bound, if we then try
to access an element of this array we will index into random GDB
memory.
An argument could be made that even for arrays that are in inferior
memory, if the upper bound is not defined then we should not try to
access the array element, however, in some of the Fortran tests, it
seems as though we do rely indexing from a base address into an array
which has no bounds defined. In this case GDBs standard protection
for detecting unreadable target memory prevents bad thing happening.
gdb/ChangeLog:
* valarith.c (value_subscripted_rvalue): If an array is not in
memory, and we don't know the upper bound, then we can't know that
the requested element exists or not.
gdb/testsuite/ChangeLog:
* gdb.base/vla-optimized-out.exp: Add new test.
commit e5bbcd0f04911d671d0c43d57df9886c06018705
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Sat Jul 28 20:55:04 2018 +0100
gdb: Merge similar tests into a single test script
The three test scripts:
gdb/testsuite/gdb.base/vla-optimized-out.exp
gdb/testsuite/gdb.base/vla-optimized-out-o3.exp
gdb/testsuite/gdb.base/vla-optimized-out-o3-strict.exp
are all pretty similar, with differences in the compile flags used,
and some of the expected results.
Instead of maintaining 3 files, merge them into a single test script,
and use parameters to control the test behaviour.
gdb/testsuite/ChangeLog:
* gdb.base/vla-optimized-out-o3.exp: Delete.
* gdb.base/vla-optimized-out-o3-strict.exp: Delete.
* gdb.base/vla-optimized-out.exp: Extend to cover all of the
deleted tests.
commit 57285adece935b4c827d02eae10c6ae6d60c92fc
Author: Richard Earnshaw <Richard.Earnshaw@arm.com>
Date: Thu Aug 9 16:51:09 2018 +0100
arm - Add some comments about the versions of ARM ELF that define various e_flags values
This patch adds a few comments to include/elf/arm.h to clarify which
versions of the ARM ELF specification defined which headers. Given
that the EABI is pretty ubiquitous these days, I've marked anything
not based on that as deprecated.
There are no plans to remove any deprecated definitions at this time,
but any new development shouldn't be building upon support for
deprecated definitions remaining in the long term.
* elf/arm.h: Updated comments for e_flags definitions.
commit 6404ab993797d1d6cd3d9e97cc281e3cb6226c12
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Aug 8 21:00:04 2018 -0700
Convert .note.gnu.property section between ELF32 and ELF64
.note.gnu.property section has different alignments and section
sizes for 32-bit and 64-bit ELF binaries. This patch updated
bfd_convert_section_size and bfd_convert_section_contents to
properly convert .note.gnu.property section between 32-bit and
64-bit ELF binaries.
bfd/
PR binutils/23494
* bfd.c (bfd_convert_section_size): Check BFD_DECOMPRESS after
calling _bfd_elf_convert_gnu_property_size to convert
.note.gnu.property section size.
(bfd_convert_section_contents): Check BFD_DECOMPRESS after
calling _bfd_elf_convert_gnu_properties to convert
.note.gnu.property section.
* elf-bfd.h (_bfd_elf_convert_gnu_property_size): New prototype.
(_bfd_elf_convert_gnu_properties): Likewise.
* elf-properties.c (elf_get_gnu_property_section_size): New
function.
(elf_write_gnu_properties): Likewise.
(_bfd_elf_convert_gnu_property_size): Likewise.
(_bfd_elf_convert_gnu_properties): Likewise.
(_bfd_elf_link_setup_gnu_properties): Use
elf_get_gnu_property_section_size and elf_write_gnu_properties.
binutils/
PR binutils/23494
* testsuite/binutils-all/x86-64/pr23494a-x32.d: New file.
* testsuite/binutils-all/x86-64/pr23494a.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494a.s: Likewise.
* testsuite/binutils-all/x86-64/pr23494b-x32.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494b.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494b.s: Likewise.
* testsuite/binutils-all/x86-64/pr23494c-x32.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494c.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494d-x32.d: Likewise.
* testsuite/binutils-all/x86-64/pr23494d.d: Likewise.
commit f40f4a11d12025d18be2b0f9072f6ddcc94d3cdb
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Aug 9 00:00:26 2018 +0000
Automatic date update in version.in
commit fdbac7d8d1c9403a857db6e0c1dc92ce7bb65925
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed Aug 8 18:13:18 2018 -0400
Fix some comments in target.c
Fix a typo and add a missing one.
gdb/ChangeLog:
* target.c (str_comma_list_concat_elem): Fix typo in comment.
(target_options_to_string): Add comment.
commit 83202f7ae849e538c04656923312d0eab32f6cea
Author: Tom Tromey <tom@tromey.com>
Date: Wed Aug 8 11:57:39 2018 -0600
Check result of "write"
Some distros enable _FORTIFY_SOURCE by default, which caught a failure
to check the result of "write" in scoped_mmap-selftests.c. This patch
fixes the problem.
ChangeLog
2018-08-08 Tom Tromey <tom@tromey.com>
* unittests/scoped_mmap-selftests.c: Check result of "write".
commit 5c720ed8861b461193a507e61e3665b1cc840055
Author: Jim Wilson <jimw@sifive.com>
Date: Wed Aug 8 10:53:12 2018 -0700
RISC-V: Add software single step support.
This adds software single step support that is needed by the linux native port.
This is modeled after equivalent code in the MIPS port.
This also fixes a few bugs in the compressed instruction decode support. Some
instructions are RV32/RV64 specific, and this wasn't being checked. Also, a
few instructions were accidentally using the non-compressed is_* function.
This has been tested on a HiFive Unleashed running Fedora, by putting a
breakpoint on start, typing stepi, and then holding down the return key until
it finishes, and observing that I see everything I expect to see along the way.
There is a problem in _dl_addr where I get into an infinite loop, but it seems
to be some synchronization code that doesn't agree with single step, so I have
to find the end of the loop, put a breakpoint there, continue, and then single
step again until the end.
gdb/
* riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
(decode_register_index_short): New.
(decode_j_type_insn, decode_cj_type_insn): New.
(decode_b_type_insn, decode_cb_type_insn): New.
(riscv_insn::decode): Add support for jumps, branches, lr, and sc. New
local xlen. Check xlen when decoding ambiguous compressed insns. In
compressed decode, use is_c_lui_insn instead of is_lui_insn, and
is_c_sw_insn instead of is_sw_insn.
(riscv_next_pc, riscv_next_pc_atomic_sequence): New.
(riscv_software_single_step): New.
* riscv-tdep.h (riscv_software_single_step): Declare.
commit 411baa470ef354e50b488c0c736ac7af8d856ded
Author: Jim Wilson <jimw@sifive.com>
Date: Wed Aug 8 10:48:09 2018 -0700
RISC-V: Make riscv_isa_xlen a global function.
This allows the function to be used from riscv OS files, which also need to
depend on XLEN size.
gdb/
* riscv-tdep.c (riscv_isa_xlen): Drop static.
* riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
commit f384a1f025084a4a6370d7ada6dc7198ad3454e4
Author: Kevin Buettner <kevinb@redhat.com>
Date: Mon Jul 30 15:35:45 2018 -0700
Add support for DW_OP_GNU_variable_value to readelf
As indicated by the subject, this patch adds support for the DWARF
expression opcode DW_OP_GNU_variable_value to readelf.
It's pretty much a copy/paste of DW_OP_call_ref with the obvious name
changes for the printf statements. The FIXME comment comes from that
copy/paste.
binutils/ChangeLog:
* dwarf.c (decode_location_expresion): Add case for
DW_OP_GNU_variable_value.
commit f7309df20c4e787041cedc4a6aced89c15259e54
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Aug 8 06:09:15 2018 -0700
x86: Properly merge GNU_PROPERTY_X86_ISA_1_USED
Without the GNU_PROPERTY_X86_ISA_1_USED property, all ISAs may be used.
If a bit in the GNU_PROPERTY_X86_ISA_1_USED property is unset, the
corresponding x86 instruction set isnât used. When merging properties
from 2 input files and one input file doesn't have the
GNU_PROPERTY_X86_ISA_1_USED property, the output file shouldn't have
it neither. This patch removes the GNU_PROPERTY_X86_ISA_1_USED
property if an input file doesn't have it.
This patch replaces the GNU_PROPERTY_X86_ISA_1_USED property with the
GNU_PROPERTY_X86_ISA_1_NEEDED property which is the minimum ISA
requirement.
bfd/
PR ld/23486
* elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Remove
GNU_PROPERTY_X86_ISA_1_USED if an input file doesn't have it.
(_bfd_x86_elf_link_setup_gnu_properties): Adding the
GNU_PROPERTY_X86_ISA_1_NEEDED, instead of
GNU_PROPERTY_X86_ISA_1_USED, property.
ld/
PR ld/23486
* testsuite/ld-i386/i386.exp: Run PR ld/23486 tests.
* testsuite/ld-x86-64/x86-64.exp: Likewise.
* testsuite/ld-i386/pr23486a.d: New file.
* testsuite/ld-i386/pr23486b.d: Likewise.
* testsuite/ld-x86-64/pr23486a-x32.d: Likewise.
* testsuite/ld-x86-64/pr23486a.d: Likewise.
* testsuite/ld-x86-64/pr23486a.s: Likewise.
* testsuite/ld-x86-64/pr23486b-x32.d: Likewise.
* testsuite/ld-x86-64/pr23486b.d: Likewise.
* testsuite/ld-x86-64/pr23486b.s: Likewise.
* testsuite/ld-i386/property-3.r: Remove "x86 ISA used".
* testsuite/ld-i386/property-4.r: Likewise.
* testsuite/ld-i386/property-5.r: Likewise.
* testsuite/ld-i386/property-x86-ibt3a.d: Likewise.
* testsuite/ld-i386/property-x86-ibt3b.d: Likewise.
* testsuite/ld-i386/property-x86-shstk3a.d: Likewise.
* testsuite/ld-i386/property-x86-shstk3b.d: Likewise.
* testsuite/ld-x86-64/property-3.r: Likewise.
* testsuite/ld-x86-64/property-4.r: Likewise.
* testsuite/ld-x86-64/property-5.r: Likewise.
* testsuite/ld-x86-64/property-x86-ibt3a-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt3a.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt3b-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-ibt3b.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk3a-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk3a.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk3b-x32.d: Likewise.
* testsuite/ld-x86-64/property-x86-shstk3b.d: Likewise.
commit 9d4a934ce604afea155c39f06834cdbc47e92a6e
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Fri Jun 22 20:39:26 2018 +0100
gdb: Fix assert for extended-remote target (PR gdb/18050)
Consider the following GDB session:
(gdb) target extended-remote :2347
(gdb) file /path/to/exe
(gdb) set remote exec-file /path/to/exe
(gdb) set detach-on-fork off
(gdb) break breakpt
(gdb) run
# ... hits breakpoint
(gdb) info inferiors
Num Description Executable
* 1 process 17001 /path/to/exe
2 process 17002 /path/to/exe
(gdb) kill
(gdb) info inferiors
Num Description Executable
* 1 <null> /path/to/exe
2 process 17002 /path/to/exe
(gdb) target extended-remote :2348
../../src/gdb/thread.c:660: internal-error: thread_info* any_thread_of_process(int): Assertion `pid != 0' failed.
A problem internal to GDB has been detected,
further debugging may prove unreliable.
Or, from bug PR gdb/18050:
(gdb) start
(gdb) add-inferior -exec /path/to/exe
(gdb) target extended-remote :2347
../../src/gdb/thread.c:660: internal-error: thread_info* any_thread_of_process(int): Assertion `pid != 0' failed.
A problem internal to GDB has been detected,
further debugging may prove unreliable.
The issue is calling target.c:dispose_inferior with a killed inferior in
the inferior list. This assertion is fixed in this commit.
The new test for this issue only runs on platforms that support
'detach-on-fork', and when using
'--target_board=native-extended-gdbserver'.
gdb/ChangeLog:
PR gdb/18050:
* target.c (dispose_inferior): Don't dispose of inferiors that are
already killed.
gdb/testsuite/ChangeLog:
PR gdb/18050:
* gdb.server/extended-remote-restart.c: New file.
* gdb.server/extended-remote-restart.exp: New file.
commit ff36536c9273734af6f84832b583c10f44c5010e
Author: Szabolcs Nagy <szabolcs.nagy@arm.com>
Date: Wed Aug 8 11:14:20 2018 +0100
Fix gdb/remote.c build failure
Add const qualifier to fix
/S/gdb/common/gdb_locale.h:35:27: error: deprecated conversion from string constant to 'char*' [-Werror=write-strings]
# define _(String) (String)
^
/S/gdb/remote.c:12844:19: note: in expansion of macro '_'
char *err_msg = _("Tracepoint packet too large for target.");
^
gdb/ChangeLog:
* remote.c (remote_target::download_tracepoint): Change char* to
const char*.
commit f6f9ed015ea683ee2b00591aa31a4cacedb7a810
Author: Tulio Magno Quites Machado Filho <tuliom@linux.ibm.com>
Date: Tue Aug 7 22:39:23 2018 -0700
Fix "may be used uninitialized" warning.
* object.cc (Sized_relobj_file::map_to_kept_section): Initialize
kept_file.
commit a9fc784bacd65a47c0d524c4a048453d1d32d765
Author: Cary Coutant <ccoutant@gmail.com>
Date: Tue Aug 7 21:35:12 2018 -0700
Properly merge GNU_PROPERTY_X86_ISA_1_USED (x86_64).
gold/
PR ld/23486
* x86_64.cc (Target_x86_64::Target_x86_64): Initialize
object_isa_1_used_.
(Target_x86_64::object_isa_1_used_): New data member.
(Target_x86_64::record_gnu_property): Save ISA_1_USED bits for object.
(Target_x86_64::merge_gnu_properties): Merge ISA_1_USED bits.
commit 045cf012860ed0fd6c01892505cab747ee27a21d
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Tue Aug 7 22:45:43 2018 -0400
Fix gdb.fortran/nested-funcs.exp failure
Commit 87d6a7aa931f ("Add DWARF index cache") broke
gdb.fortran/nested-funcs.exp. Because of the new "set index-cache"
command, the expression "set index = 42" now fails:
set index = 42
Undefined set index-cache command: "= 42". Try "help set index-cache".
(gdb) PASS: gdb.fortran/nested-funcs.exp: set index = 42
Fix it by changing it to "set variable index = 42". Also, use
gdb_test_no_output to confirm that it worked (since that particular test
wrongfully passed).
gdb/testsuite/ChangeLog:
* gdb.fortran/nested-funcs.exp: Replace "set index = 42" with
"set variable index = 42".
commit 09ce46f230fee766c386384cd1f5672d12fde276
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Tue Aug 7 21:37:40 2018 -0400
Make target_options_to_string return an std::string
Return an std::string instead of a char *, saving some manual freeing.
I only manually tested with "set debug target 1" and "set debug lin-lwp
1", since this only deals with debug output.
gdb/ChangeLog:
* target.h (target_options_to_string): Return an std::string.
* target.c (str_comma_list_concat_elem): Return void, use
std::string.
(do_option): Likewise.
(target_options_to_string): Return an std::string.
* linux-nat.c (linux_nat_target::wait): Adjust.
* target-debug.h (target_debug_print_options): Adjust.
commit b825f3a90e33ab6f333d12d676d51419f8fed77b
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Aug 8 00:00:29 2018 +0000
Automatic date update in version.in
commit 9c61296405d4299b7000e445a6e07c0232bb0342
Author: Tom Tromey <tom@tromey.com>
Date: Tue Aug 7 12:07:36 2018 -0600
Allow CPPFLAGS to be set on the make command line
While looking into PR build/8751 (which seems to be fixed), I noticed
that it's not possible to change CPPFLAGS for gdb on the "make"
command line. It's reasonable to want to do this sometimes, and I
think this patch should suffice.
gdb/ChangeLog
2018-08-07 Tom Tromey <tom@tromey.com>
* Makefile.in (CPPFLAGS): New variable.
(INTERNAL_CPPFLAGS): Use it.
commit 7d11235d04ded4832430cd40013ca785a3896e4d
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Tue Aug 7 18:15:28 2018 -0400
Add doc and news for DWARF index cache
New in v3:
- Address Eli's comments.
This patch adds doc and news for the feature introduced by the previous
patch.
gdb/ChangeLog:
* NEWS: Mention the index cache.
gdb/doc/ChangeLog:
* gdb.texinfo (Index Files Speed Up GDB): Add section about
symbol index cache.
commit 87d6a7aa931f2bd4cfe784344b6a2cd595f6f2c9
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Tue Aug 7 18:14:20 2018 -0400
Add DWARF index cache
New in v3:
- Remove things related to the dwarf-5 format.
- Fix compilation on mingw (scoped_mmap.c).
GDB can generate indexes for DWARF debug information, which, when
integrated in the original binary, can speed up loading object files.
This can be done using the gdb-add-index script or directly by the
linker itself. However, not many people know about this. And even
among those who do, because it requires additional steps, I don't know a
lot of people who actually go through that trouble.
To help make using the DWARF index more transparent, this patch
introduces a DWARF index cache. When enabled, loading an index-less
binary in GDB will automatically save an index file in ~/.cache/gdb.
When loading that same object file again, the index file will be looked
up and used to load the DWARF index. You therefore get the benefit of
the DWARF index without having to do additional manual steps or
modifying your build system. When an index section is already present
in the file, GDB will prefer that one over looking up the cache.
When doing my edit-compile-debug cycle, I often debug multiple times the
same build, so the cache helps reducing the load time of the debug
sessions after the first one.
- The saved index file is exactly the same as the output of the "save
gdb-index" command. It is therefore the exact same content that would
be found in the .gdb_index or .debug_names section. We just leave it
as a standalone file instead of merging it in the binary.
- The cache is just a directory with files named after the object
file's build-id. It is not possible to save/load the index for an
object file without build-id in the cache.
- The cache uses the gdb index format. The problem with the dwarf-5
format is that we can generate an addendum to the .debug_str section
that you're supposed to integrate to the original binary. This
complicates a little bit loading the data from the cached index files,
so I would leave this for later.
- The size taken up by ~/.cache/gdb is not limited. I was thinking we
could add configurable limit (like ccache does), but that would come
after. Also, maybe a command to flush the cache.
- The cache is disabled by default. I think once it's been out there
and tested for a while, it could be turned on by default, so that
everybody can enjoy it.
- The code was made to follow the XDG specification: if the
XDG_CACHE_HOME environment variable, it is used, otherwise it falls
back to ~/.cache/gdb. It is possible to change it using "set
index-cache directory". On other OSes than GNU/Linux, ~/.cache may
not be the best place to put such data. On macOS it should probably
default to ~/Library/Caches/... On Windows, %LocalAppData%/... I
don't intend to do this part, but further patches are welcome.
- I think that we need to be careful that multiple instances of GDB
don't interfere with each other (not far fetched at all if you run GDB
in some automated script) and the cache is always coherent (either the
file is not found, or it is found and entirely valid). Writing the
file directly to its final location seems like a recipe for failure.
One GDB could read a file in the index while it is being written by
another GDB. To mitigate this, I made write_psymtabs_to_index write
to temporary files and rename them once it's done. Two GDB instances
writing the index for the same file should not step on each other's
toes (the last file to be renamed will stay). A GDB looking up a file
will only see a complete file or no file. Also, if GDB crashes while
generating the index file, it will leave a work-in-progress file, but
it won't be picked up by other instances looking up in the cache.
gdb/ChangeLog:
* common/pathstuff.h (get_standard_cache_dir): New.
* common/pathstuff.c (get_standard_cache_dir): New.
* build-id.h (build_id_to_string): New.
* dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
DEBUG_STR_SUFFIX): Move to here.
* dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
DEBUG_STR_SUFFIX): Move from there.
(write_psymtabs_to_index): Make non-static, add basename
parameter. Write to temporary files, rename when done.
(save_gdb_index_command): Adjust call to
write_psymtabs_to_index.
* dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
field.
* dwarf2read.c (dwz_file) <index_cache_res>: New field.
(get_gdb_index_contents_from_cache): New.
(get_gdb_index_contents_from_cache_dwz): New.
(dwarf2_initialize_objfile): Read index from cache.
(dwarf2_build_psymtabs): Save to index.
* dwarf-index-cache.h: New file.
* dwarf-index-cache.c: New file.
* dwarf-index-write.h: New file.
gdb/testsuite/ChangeLog:
* boards/index-cache-gdb.exp: New file.
* gdb.dwarf2/index-cache.exp: New file.
* gdb.dwarf2/index-cache.c: New file.
* gdb.base/maint.exp: Check if we are using the index cache.
commit 8a99096f31142d7a58962066c801a35b4c5c8bfa
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Tue Aug 7 18:13:52 2018 -0400
Import gnulib's mkdir module
The following patch makes use of the mkdir function. Import the mkdir
gnulib module to ensure proper operation on all platforms.
gdb/ChangeLog:
* gnulib/aclocal.m4: Re-generate.
* gnulib/config.in: Re-generate.
* gnulib/configure: Re-generate.
* gnulib/import/Makefile.am: Re-generate.
* gnulib/import/Makefile.in: Re-generate.
* gnulib/import/m4/gnulib-cache.m4: Re-generate.
* gnulib/import/m4/gnulib-comp.m4: Re-generate.
* gnulib/import/m4/mkdir.m4: New file.
* gnulib/import/mkdir.c: New file.
* gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
module.
commit 5c831bb1eb6b22cd1705b98188b7d1b0633e7c54
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Tue Aug 7 18:10:29 2018 -0400
Introduce mmap_file function
New in v2:
- As Tom pointed out, we don't need to keep the fd around after
mmapping. This simplifies things quite a bit, since we don't need a
new class. It's now just a function that returns a scoped_mmap.
We already have scoped_mmap, which is a thin RAII layer over mmap. If
one simply wants to mmap an entire file for reading, it takes a bit of
boilerplate. This patch introduces the mmap_file function to make this
easier.
gdb/ChangeLog:
* Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
* common/scoped_mmap.c: New file.
* common/scoped_mmap.h (destroy): New method.
(~scoped_mmap, reset): Use destroy.
(scoped_mmap): New move constructor.
(mmap_file): New declaration.
* unittests/scoped_mmap-selftests.c (test_normal,
test_invalid_filename, run_tests): New functions.
(_initialize_scoped_mmap_selftests): Register selftest.
commit 4485a1c1d8d2b4a20fca2e2b7d1aabcff383b222
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Tue Aug 7 18:08:57 2018 -0400
Make index reading functions more modular
New in v3:
- Remove changed to dwarf-5 functions.
The read_gdb_index_from_section and read_debug_names_from_section
functions read the index content, as their names state, from sections of
object files. A following patch will make it possible to read index
content from standalone files.
This patch therefore decouples the code that reads the index content
from the code that processes that content. Functions
dwarf2_read_gdb_index and dwarf2_read_debug_names receive callbacks that
are responsible for providing the index contents (for both the main file
and the potential dwz file).
gdb/ChangeLog:
* dwarf2read.c (read_gdb_index_from_section): Rename to...
(read_gdb_index_from_buffer): ... this. Remove section
parameter, add buffer parameter.
(get_gdb_index_contents_ftype,
get_gdb_index_contents_dwz_ftype): New typedefs.
(dwarf2_read_gdb_index): Add callback parameters to get the
index contents.
(get_gdb_index_contents_from_section): New.
(dwarf2_initialize_objfile): Update call to
dwarf2_read_gdb_index.
commit 528e15722bf67d126e17218708c0314bcfadbf6a
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Tue Aug 7 17:43:08 2018 -0400
Replace some uses of xstrprintf with string_printf
This patch replaces some simple uses of xstrprintf with with
string_printf, removing the need to do manual memory freeing.
The change in ada-lang.c fixes an apparent memory leak.
Regtested on the buildbot.
gdb/ChangeLog:
* common/filestuff.h (gdb_fopen_cloexec): New overload.
(gdb_open_cloexec): Likewise.
* nat/linux-osdata.c (command_from_pid): Use string_printf.
(commandline_from_pid): Likewise.
(linux_xfer_osdata_threads): Likewise.
(linux_xfer_osdata_fds): Likewise.
* ada-lang.c (is_package_name): Likewise.
* auxv.c (procfs_xfer_auxv): Likewise.
* breakpoint.c (print_one_breakpoint_location): Use
uiout::field_fmt.
(print_one_catch_solib): Use string_printf.
* coff-pe-read.c (add_pe_exported_sym): Likewise.
(add_pe_forwarded_sym): Likewise.
* dwarf2read.c (create_type_unit_group): Likewise.
(build_error_marker_type): Likewise.
* infcall.c (get_function_name): Likewise.
* valprint.c (print_converted_chars_to_obstack): Likewise.
* xtensa-tdep.c (xtensa_register_type): Likewise.
commit 96d68bd48c77fa44e517c3380ee8f224cbce00e5
Author: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Date: Tue Aug 7 13:20:40 2018 +0200
Support parallel make check with GNU make 4.2+
I noticed that make -jN check would run make check-single when using GNU
make 4.2.1.
In the end, it turned out that this is due to this change from the make
4.2 NEWS file:
* The amount of parallelism can be determined by querying MAKEFLAGS, even when
the job server is enabled (previously MAKEFLAGS would always contain only
"-j", with no number, when job server was enabled).
The fix is trivial: just accept an optional arg to -j in Makefile.in
(saw_dash_j). Tested on i386-pc-solaris2.11 with just make and make
-j/-jN with both make 3.82 and 4.2.1.
* Makefile.in (saw_dash_j): Allow for GNU make 4.2+ passing -jN in
MAKEFLAGS.
commit df136d64fa2fd23052d7a5fcb7059c29d8e6385d
Author: Alan Modra <amodra@gmail.com>
Date: Mon Aug 6 21:43:51 2018 +0930
PowerPC64 EH info for _notoc linkage stubs
This patch generates EH info for the new _notoc linkage stubs, to
support unwinding from asynchronous signal handlers. Unwinding
through the __tls_get_addr_opt stub was already supported, but that
was just a single stub. With multiple stubs the EH opcodes need to be
emitted and sized when iterating over stubs, so this is done when
emitting and sizing the stub code. Emitting the CIEs and FDEs is done
when sizing the stubs, as we did before in order to have the linker
generated FDEs indexed in .eh_frame_hdr. I moved the final tweaks to
FDEs from ppc64_elf_finish_dynamic_sections to ppc64_elf_build_stubs
simply because it's tidier to be done with them at that point.
bfd/
* elf64-ppc.c (struct map_stub): Delete tls_get_addr_opt_bctrl.
Add lr_restore, eh_size and eh_base.
(eh_advance, eh_advance_size): New functions.
(build_tls_get_addr_stub): Emit EH info for stub.
(ppc_build_one_stub): Likewise for _notoc stubs.
(ppc_size_one_stub): Size EH info for stub.
(group_sections): Init new map_stub fields.
(stub_eh_frame_size): Delete.
(ppc64_elf_size_stubs): Size EH info for stubs. Set up dummy EH
program for stubs.
(ppc64_elf_build_stubs): Reinit new map_stub fields. Set FDE
offset to stub section here..
(ppc64_elf_finish_dynamic_sections): ..rather than here.
ld/
* testsuite/ld-powerpc/notoc.s: Generate some cfi.
* testsuite/ld-powerpc/notoc.d: Adjust.
* testsuite/ld-powerpc/notoc.wf: New file.
* testsuite/ld-powerpc/powerpc.exp: Run "ext" and "notoc" tests
as run_ld_link_tests rather than run_dump_test.
commit e81b4c933c1b88e29f4b27627dd9ea0bf9189944
Author: Alan Modra <amodra@gmail.com>
Date: Sun Aug 5 19:44:03 2018 +0930
__tls_get_addr_opt stubs and tocsave optimization
This patch fixes a bug in the handling of the __tls_get_addr_opt
stub. Calls via this stub don't have a toc restoring instruction
following the "bl", and the stub itself doesn't have an initial toc
save instruction. Thus it is incorrect to skip over the first
instruction when a __tls_get_addr call is marked with a tocsave
reloc.
* elf64-ppc.c (ppc64_elf_relocate_section): Don't skip first
instruction of __tls_get_addr_opt stub.
(plt_stub_size): Omit ALWAYS_EMIT_R2SAVE condition when
dealing with __tls_get_addr_opt stub.
(build_tls_get_addr_stub, ppc_size_one_stub): Likewise.
commit 99f8774ccaca5b1bfa4a035c6c705bc7ef47e75f
Author: Martin Storsjo <martin@martin.st>
Date: Tue Aug 7 08:45:14 2018 +0100
Explain what happens for PE targeted linkers in the case where the user actually tries to provide __CTOR_LIST__ and/or __DTOR_LIST__ symbols.
* scripttempl/pe.sc: Improve the comment about overriding
__CTOR_LIST__ and __DTOR_LIST__ symbols.
* scripttemp/pep.sc: Likewise.
commit 8f9ea98bebb629f0e6993be015f042bf45dcdd18
Author: James Patrick Conlon <cptjustice@gmail.com>
Date: Tue Aug 7 08:34:08 2018 +0100
Correct the parsing of derferred register addressing in the PDP11 assembler.
PR 23481
* config/tc-pdp11.c (parse_op_noreg): Check for deferred register
addressing before assuming non-deferred addressing.
* testsuite/gas/pdp11/pr23481.s: New test source file.
* testsuite/gas/pdp11/pr23481.d: New test driver file.
* testsuite/gas/pdp11/pdp11.exp: Run the new test.
commit 71f6efc44e1bc525313f62dc6e30b4706fc644d3
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Aug 7 08:16:03 2018 +0100
Updated Bulgarian translation for the ld/ directory
commit 877877f5d5a7484601d79ad965d8e41af7c4596b
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Aug 7 00:00:59 2018 +0000
Automatic date update in version.in
commit 3a12c78d1491c4877928e7294c8cdbe8171dfeed
Author: Cary Coutant <ccoutant@gmail.com>
Date: Mon Aug 6 14:08:48 2018 -0700
Add --warn-drop-version option; by default, do not warn when discarding version info.
gold/
PR gold/23455
* options.h (General_options): Add --warn-drop-version option.
* symtab.cc (Symbol_table::set_dynsym_indexes): Check it.
commit a7f25a84f4cc1df5248c46346337f19a2a66af5a
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Aug 6 16:54:47 2018 -0400
Fix compilation failure in remote.c
A recent patch introduced a few of these:
/home/emaisin/src/binutils-gdb/gdb/remote.c:12862:19: error: format not a string literal and no format arguments [-Werror=format-security]
error (err_msg);
^
Fix them by replacing the call to error with
error ("%s", err_msg);
gdb/ChangeLog:
* remote.c (remote_target::download_tracepoint): Fix format
string errors.
commit dc1f2887c513c4c2110d2d997ab33ce36b9696fc
Author: Cary Coutant <ccoutant@gmail.com>
Date: Mon Aug 6 13:36:42 2018 -0700
Fix type checking errors.
gold/
* target.h (Sized_target::record_gnu_property): Change first two
parameters to unsigned int.
* x86_64.cc (Target_x86_64::record_gnu_property): Likewise.
commit 296956befef3711ed458c7cba8041fde0dab9c50
Author: Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
Date: Mon Aug 6 16:24:55 2018 -0300
Allow larger regblock sizes when saving tracefiles
The tracefile.c:trace_save function assumes trace_regblock_size won't
be larger than the MAX_TRACE_UPLOAD constant, used to size the buffer
which holds trace data. This can cause buffer overruns when this is
not the case. This patch changes this function so that the larger
size is used to size the buffer.
gdb/ChangeLog:
2018-08-06 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* tracefile.c: Include common/byte-vector.h.
(trace_save): Change type of buf to gdb::byte_vector. Initialize
with trace_regblock_size if needed. Update uses of buf.
commit a04b9d62a234923826e431a209d396a628661548
Author: Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
Date: Mon Aug 6 16:24:55 2018 -0300
Variable size for regs mask in collection list
This patch changes collection_list to allow larger register masks.
The mask is changed from an array to a vector and is initialized to
hold the maximum possible remote register number. The stringify
method is updated to resize temp_buf if needed.
gdb/ChangeLog:
2018-08-06 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* tracepoint.h (collection_list) <m_regs_mask>: Change type to
std::vector<unsigned char>.
* tracepoint.c (collection_list::collection_list): Remove
m_regs_mask initializer from initializer list. Resize
m_regs_mask using the largest remote register number.
(collection_list::add_remote_register): Remove size check on
m_regs_mask. Use at to access element.
(collection_list::stringify): Change type of temp_buf to
gdb::char_vector. Update uses of temp_buf. Resize if needed to
stringify the register mask. Use pack_hex_byte for the register
mask.
commit 4277c4b87addb5354cc47b98d7a73e44cfaf22c2
Author: Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
Date: Mon Aug 6 16:24:55 2018 -0300
Use remote register numbers in tracepoint mask
Currently, tracepoint register masks in the QTDP packets include both
internal and remote register numbers, as well as pseudo-register
numbers.
This patch changes this so that the mask only includes remote register
numbers.
Register numbers from agent expressions are already set in the mask
using remote numbers. Other tracepoint actions used internal numbers,
e.g. "collect $regs" or "collect $<pseudoreg>". To handle pseudoreg
numbers, an empty agent expression is created and ax_reg_mask is
called for this expression and the pseudoreg. This will cause the ax
to set its mask with the corresponding remote raw register
numbers (using ax_regs_mask, which calls
gdbarch_ax_pseudo_register_collect).
If ax_regs_mask and gdbarch_ax_pseudo_register_collect also generate
more ax bytecode, the ax is also appended to the collection list. It
isn't clear that this was the original intent for
gdbarch_ax_pseudo_register_collect, and none of the arches seem to do
this, but if this changes in the future, it should work.
The patch also refactors the code used by validate_action line to
validate axs into a function that is now called from every place that
generates axs. Previously, some parts of tracepoint.c that generated
axs didn't check if the ax length was greater than MAX_AGENT_EXPR_LEN.
gdb/ChangeLog:
2018-08-06 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* tracepoint.h (class collection_list) <add_register>: Remove.
<add_remote_register, add_ax_registers, add_local_register>:
Declare.
<add_memrange>: Add scope parameter.
* tracepoint.c (encode_actions_1): Likewise.
(collection_list::add_register): Rename to ...
(collection_list::add_remote_register): ... this. Update
comment.
(collection_list::add_ax_registers, add_local_register): New
methods.
(collection_list::add_memrange): Add scope parameter. Call
add_local_register instead of add_register.
(finalize_tracepoint_aexpr): New function.
(collection_list::collect_symbol): Update calls to add_memrange.
Call add_local_register instead of add_register. Call
add_ax_registers. Call finalize_tracepoint_aexpr.
(encode_actions_1): Get remote regnos for $reg action. Call
add_remote_register, add_ax_registers, and add_local_register.
Update call to add_memrange. Call finalize_tracepoint_aexpr.
(validate_actionline): Call finalize_tracepoint_aexpr.
commit 3df3a985a475db004706d64f83d9085f99053611
Author: Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
Date: Mon Aug 6 16:24:55 2018 -0300
Use get_remote_packet_size in download_tracepoint
This patch changes the remote target to use the remote packet size to
build QTDP packets, and to check if there is enough room for the
packet.
I changed the function to raise an error if the packet is too small,
instead of aborting gdb (through xsnprintf). It isn't clear if gdb
will be in a consistent state with respect to the stub after this,
since it's possible that some packets will be sent but not others, and
there could be an incomplete tracepoint on the stub.
The char array used to build the packets is changed to a
gdb::char_vector and sized with the result from
get_remote_packet_size.
When checking if the buffer is large enough to hold the tracepoint
condition agent expression, the length of the expression is multiplied
by two, since it is encoded with two hex digits per expression
byte. For simplicity, I assume that the result won't overflow, which
can happen for very long condition expressions.
gdb/ChangeLog:
2018-08-06 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
Replace array buf with gdb::char_vector buf, of size
get_remote_packet_size (). Replace references to buf and
BUF_SIZE to buf.data () and buf.size (). Replace strcpy, strcat
and xsnprintf with snprintf. Raise errors if the buffer is too
small.
commit aa6f3694ce867884e43d1c0406c64df08ea24bd3
Author: Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
Date: Mon Aug 6 16:24:55 2018 -0300
Remove trailing '-' from the last QTDP action packet
The has_more predicate in remote_target::download_tracepoint always
evaluates to true, so the last action packet will be sent with a
trailing '-'. This patch changes the predicate to remove the last
trailing '-'.
gdb/ChangeLog:
2018-08-06 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* remote.c (remote_target::download_tracepoint): Fix the has_more
predicate in the QTDP action list iteration.
commit 05abfc39c719e740530000059bb963ad33462479
Author: Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
Date: Mon Aug 6 16:24:55 2018 -0300
Fix indentation in remote_target::download_tracepoint
gdb/ChangeLog:
2018-08-06 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
* remote.c (remote_target::download_tracepoint): Fix indentation
in for block.
commit 02d7a79e1b93240729a52246432d9a84583bcf82
Author: Claudiu Zissulescu <claziss@gmail.com>
Date: Mon Aug 6 17:07:34 2018 +0300
Update binutils/MAINTAINERS for ARC.
binutils/
* MAINTAINERS: Add myself as ARC maintainer.
commit 5a6996172e6294ea37054b1a9caa3a923a8fe399
Author: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Date: Mon Aug 6 16:05:16 2018 +0200
Update dg-extract-results.* from gcc
When looking at the gdb.sum file produced by dg-extract-results.sh on
Solaris 11/x86, I noticed some wrong sorting, like this:
PASS: gdb.ada/addr_arith.exp: print something'address + 0
PASS: gdb.ada/addr_arith.exp: print 0 + something'address
PASS: gdb.ada/addr_arith.exp: print something'address - 0
PASS: gdb.ada/addr_arith.exp: print 0 - something'address
Looking closer, I noticed that while dg-extract-results.sh had been
copied over from contrib in the gcc repo, the corresponding
dg-extract-results.py file had not. The latter not only fixes the
sorting problem I'd observed, but is also way faster than the shell
version (like a factor of 50 faster).
Therefore I propose to update both files from the gcc repo. The changes
to the .sh version are trivial, just counting the number of DejaGnu
ERROR lines, too.
The files are moved to toplevel contrib:
* This way, they can easily be used should someone decide to parallelize
one or more of the binutils, gas, or ld testsuites.
* They are less easily overlooked for updates from the gcc repo when
they reside in the same place in both.
* The test_summary script needs to live in contrib since the toplevel
Makefile's mail-report.log target expects it there.
Tested on amd64-pc-solaris2.11 with
make -j16 check
and
make -j16 -k RACY_ITER=5 check
gdb/testsuite:
* dg-extract-results.sh: Move to toplevel contrib.
* Makefile.in (check-parallel): Reflect dg-extract-results.sh move.
* Makefile.in (check-parallel-racy): Likewise.
contrib:
* dg-extract-results.sh: Move from gdb/testsuite.
Update from gcc repo.
* dg-extract-results.py: New from gcc repo.
commit 63741043bde141c20f0a08dada84ed7bdf333d99
Author: claziss <claziss@synopsys.com>
Date: Mon Aug 6 16:41:32 2018 +0300
[ARC] Check if an input asm file is rf16 compliant
Check if an input asm file is rf16 compliant; if not, and the tag says
otherwise, fix the tag and emit a warning.
gas/
2017-09-20 Claudiu Zissulescu <claziss@synopsys.com>
* config/tc-arc.c (rf16_only): New static variable.
(autodetect_attributes): Check if we are rf16 compliant.
(arc_set_public_attributes): Fix and emit the warning is required.
* testsuite/gas/arc/attr-rf16.d: New file.
* testsuite/gas/arc/attr-rf16.err: Likewise.
* testsuite/gas/arc/attr-rf16.s: Likewise.
commit 6af0448446f9212df4dc62e7618174d5d3f5e43e
Author: Claudiu Zissulescu <claziss@gmail.com>
Date: Mon Aug 6 16:41:32 2018 +0300
[ARC] Update warning reporting.
MWDT compiler doesn't use eflags and makes use of 0x0c section. For
those, silence the gnu warning system.
bfd/
Claudiu Zissulescu <claziss@synopsys.com>
* elf32-arc.c (arc_elf_merge_private_bfd_data): Complain about
efalgs only when in/out exists.
(elf32_arc_section_from_shdr): Don't complain about 0x0c section
type. It is mwdt compiler specific.
commit 2fd43d7870803bf0713f76118cc0fcb89407e873
Author: claziss <claziss@synopsys.com>
Date: Mon Aug 6 16:41:32 2018 +0300
[ARC] Update merging attributes.
Some attributes were ignored during merging. Fix that, and add some
errors.
bfd/
2017-09-19 Claudiu Zissulescu <claziss@synopsys.com>
* elf32-arc.c (arc_elf_merge_attributes): Fix merge attributes.
ld/
2017-09-19 Claudiu Zissulescu <claziss@synopsys.com>
* testsuite/ld-arc/attr-merge-6.d: New file.
* testsuite/ld-arc/attr-merge-6a.s: Likewise.
* testsuite/ld-arc/attr-merge-6b.s: Likewise.
* testsuite/ld-arc/attr-merge-6bis.d: Likewise.
commit db1e1b45b417dc3e7d37f401828afa18328d8508
Author: claziss <claziss@synopsys.com>
Date: Mon Aug 6 16:41:32 2018 +0300
[ARC] Add Tag_ARC_ATR_version.
Add a new tag (Tag_ARC_ATR_version) used to indicate if current
attributes are interpreted in GNU way. This attribute is used by
Synopsys custom compiler to correctly identify and interpret the
object attributes section as generated by GNU tools.
gas/
2017-08-02 Claudiu Zissulescu <claziss@synopsys.com>
* config/tc-arc.c (arc_set_public_attributes): Add
Tag_ARC_ATR_version.
(arc_convert_symbolic_attribute): Likewise.
* testsuite/gas/arc/attr-arc600.d: Update test.
* testsuite/gas/arc/attr-arc600_mul32x16.d: Likewise.
* testsuite/gas/arc/attr-arc600_norm.d: Likewise.
* testsuite/gas/arc/attr-arc601.d: Likewise.
* testsuite/gas/arc/attr-arc601_mul32x16.d: Likewise.
* testsuite/gas/arc/attr-arc601_mul64.d: Likewise.
* testsuite/gas/arc/attr-arc601_norm.d: Likewise.
* testsuite/gas/arc/attr-arc700.d: Likewise.
* testsuite/gas/arc/attr-arcem.d: Likewise.
* testsuite/gas/arc/attr-archs.d: Likewise.
* testsuite/gas/arc/attr-autodetect-1.d: Likewise.
* testsuite/gas/arc/attr-cpu-a601.d: Likewise.
* testsuite/gas/arc/attr-cpu-a700.d: Likewise.
* testsuite/gas/arc/attr-cpu-em.d: Likewise.
* testsuite/gas/arc/attr-cpu-hs.d: Likewise.
* testsuite/gas/arc/attr-em.d: Likewise.
* testsuite/gas/arc/attr-em4.d: Likewise.
* testsuite/gas/arc/attr-em4_dmips.d: Likewise.
* testsuite/gas/arc/attr-em4_fpuda.d: Likewise.
* testsuite/gas/arc/attr-em4_fpus.d: Likewise.
* testsuite/gas/arc/attr-hs.d: Likewise.
* testsuite/gas/arc/attr-hs34.d: Likewise.
* testsuite/gas/arc/attr-hs38.d: Likewise.
* testsuite/gas/arc/attr-hs38_linux.d: Likewise.
* testsuite/gas/arc/attr-mul64.d: Likewise.
* testsuite/gas/arc/attr-name.d: Likewise.
* testsuite/gas/arc/attr-nps400.d: Likewise.
* testsuite/gas/arc/attr-override-mcpu.d: Likewise.
* testsuite/gas/arc/attr-quarkse_em.d: Likewise.
bfd/
2017-08-02 Claudiu Zissulescu <claziss@synopsys.com>
* elf32-arc.c (arc_elf_merge_attributes): Handle
Tag_ARC_ATR_version.
binutils/
2017-08-02 Claudiu Zissulescu <claziss@synopsys.com>
* readelf.c (display_arc_attribute): Print Tag_ARC_ATR_version.
include/
2017-08-02 Claudiu Zissulescu <claziss@synopsys.com>
* elf/arc.h (Tag_ARC_ATR_version): New tag.
ld/
2017-08-02 Claudiu Zissulescu <claziss@synopsys.com>
* testsuite/ld-arc/attr-merge-0.d: Update test.
* testsuite/ld-arc/attr-merge-1.d: Likewise.
* testsuite/ld-arc/attr-merge-2.d: Likewise.
* testsuite/ld-arc/attr-merge-3.d: Likewise.
* testsuite/ld-arc/attr-merge-5.d: Likewise.
commit b6523c37fb52fc38da6e152328341caffd793749
Author: claziss <claziss@synopsys.com>
Date: Mon Aug 6 16:41:32 2018 +0300
[ARC] Update handling AUX-registers.
Update aux-registers data-base, and accept aux-registers names with
upper/lowercase names.
opcode/
2017-07-18 Claudiu Zissulescu <claziss@synopsys.com>
* arc-regs.h: Update aux-registers.
gas/
2017-07-18 Claudiu Zissulescu <claziss@synopsys.com>
* config/tc-arc.c (find_opcode_match): Accept uppercase aux-regs
names.
* testsuite/gas/arc/ld2.d: Update test.
* testsuite/gas/arc/taux.d: Likewise.
* testsuite/gas/arc/taux.s: Likewise.
include/
2017-07-18 Claudiu Zissulescu <claziss@synopsys.com>
* opcode/arc.h (ARC_OPCODE_ARCV1): Define.
commit 821a26825bdcb96358a51f5c2140475951429470
Author: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Date: Mon Aug 6 13:54:34 2018 +0200
Remove unused variables in procfs.c etc.
The recent patch to enable -Wunused-variable uncovered a couple of
instances in Solaris-specific files:
/vol/src/gnu/gdb/hg/master/dist/gdb/proc-api.c: In function âvoid _initialize_proc_api()â:
/vol/src/gnu/gdb/hg/master/dist/gdb/proc-api.c:422:28: error: unused variable âcâ [-Werror=unused-variable]
struct cmd_list_element *c;
^
/vol/src/gnu/gdb/hg/master/dist/gdb/procfs.c: In function âvoid procfs_init_inferior(target_ops*, int)â:
/vol/src/gnu/gdb/hg/master/dist/gdb/procfs.c:2895:12: error: unused variable âsignalsâ [-Werror=unused-variable]
sigset_t signals;
^~~~~~~
/vol/src/gnu/gdb/hg/master/dist/gdb/procfs.c: In member function âvirtual char* procfs_target::make_corefile_notes(bfd*, int*)â:
/vol/src/gnu/gdb/hg/master/dist/gdb/procfs.c:3845:19: error: unused variable âold_chainâ [-Werror=unused-variable]
struct cleanup *old_chain;
^~~~~~~~~
/vol/src/gnu/gdb/hg/master/dist/gdb/procfs.c:3847:18: error: unused variable âfpregsâ [-Werror=unused-variable]
gdb_fpregset_t fpregs;
^~~~~~
Fixed as follows. Tested on amd64-pc-solaris2.11, installed as obvious.
* proc-api.c (_initialize_proc_api): Remove c, unused.
* procfs.c (procfs_init_inferior): Remove signals, unused.
(procfs_target::make_corefile_notes): Remove old_chain, fpregs,
unused.
commit 5bd18990b01406ff41dc44d92db1c34018b61923
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Tue Jul 3 16:44:08 2018 +0100
gdb: Only run scheduler-locking tests if feature is supported
Not all targets support scheduler-locking. Add a check to see if the
taraget supports scheduler locking, and if it doesn't, don't run the
scheduler-locking tests that will otherwise fail.
There are actually a set of tests that try to use scheduler-locking
however, in most of these cases the test will not be run on smaller
targets (those that might not support threads and scheduler-locking)
due to the targets lack of support for threads, or some other larger
feature.
In the gdb.mi/mi-cmd-param-changed.exp test though, there's no
dependence on threads, or any other larger feature, and so, for the
small target I was using the test would otherwise try to run, only to
fail due to lack of support for scheduler-locking.
gdb/testsuite/ChangeLog:
* lib/gdb.exp (target_supports_scheduler_locking): New proc.
* gdb.mi/mi-cmd-param-changed.exp: Only run scheduler locking
tests if the target supports scheduler locking.
commit 953473375500a809fbb3eca3efa4dbb670c3a32f
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Tue Jul 3 19:02:48 2018 +0100
gdb: Avoid using W_STOPCODE(0) as this is ambiguous on MIPS
The MIPS target supports 127 signals, and this can create an ambiguity
in process wait statuses. A status value of 0x007f could potentially
indicate a process that has exited with signal 127, or a process that
has stopped with signal 0.
In uClibc-ng the interpretation of 0x007f is that the process has
exited with signal 127 rather than stopped with signal 0, and so,
WIFSTOPPED (W_STOPCODE (0)) will be false rather than true as it would
be on most other platforms.
Given that it's pretty easy to avoid using W_STOPCODE (0), lets do that.
gdb/ChangeLog:
* linux-nat.c (linux_nat_target::follow_fork): Avoid using
'W_STOPCODE (0)' as this could be ambiguous.
commit e968fc9b638e48a89e9a96804896c88a400e9be1
Author: Jan Beulich <jbeulich@novell.com>
Date: Mon Aug 6 08:34:36 2018 +0200
x86: fold RegEip/RegRip and RegEiz/RegRiz
This allows to simplify the code in a number of places.
commit b01474366f651f3ea3eed4038e1e0b37588d243d
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Aug 6 00:00:27 2018 +0000
Automatic date update in version.in
commit 99c2d522f7a7259947aa84c1b385a7c8147fa46c
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sun Aug 5 10:05:52 2018 -0700
x86: Update assembler tests for non-ELF targets
evex-no-scale.s has ELF directive:
.section .probe, "", @progbits
and non-ELF targets may pad text sections.
* testsuite/gas/i386/i386.exp: Run evex-no-scale-32 and
evex-no-scale-64 only for ELF targets.
* testsuite/gas/i386/prefix32.s: Append ".p2align 4,0".
* testsuite/gas/i386/prefix64.s: Likewise.
* testsuite/gas/i386/prefix32.l: Updated.
* testsuite/gas/i386/prefix64.l: Likewise.
commit 05d0e962f08af24f18cc79b890a68176b42bcb78
Author: Alan Modra <amodra@gmail.com>
Date: Fri Aug 3 16:41:22 2018 +0930
R_PPC64_REL24_NOTOC support
R_PPC64_REL24_NOTOC is used on calls like "bl foo@notoc" to tell the
linker that linkage stubs for PLT calls or long branches can't use r2
for pic addressing. Instead, new stubs that generate pc-relative
addresses are used. One complication is that pc-relative offsets to
the PLT may need to be 64-bit in large programs, in contrast to the
toc-relative addressing used by older PLT linkage stubs where a 32-bit
offset is sufficient until the PLT itself exceeds 2G in size.
.eh_frame info to cover the _notoc stubs is yet to be implemented.
bfd/
* elf64-ppc.c (ADDI_R12_R11, ADDI_R12_R12, LIS_R12),
(ADDIS_R12_R11, ORIS_R12_R12_0, ORI_R12_R12_0),
(SLDI_R12_R12_32, LDX_R12_R11_R12, ADD_R12_R11_R12): Define.
(ppc64_elf_howto_raw): Add R_PPC64_REL24_NOTOC entry.
(ppc64_elf_reloc_type_lookup): Support R_PPC64_REL24_NOTOC.
(ppc_stub_type): Add ppc_stub_long_branch_notoc,
ppc_stub_long_branch_both, ppc_stub_plt_branch_notoc,
ppc_stub_plt_branch_both, ppc_stub_plt_call_notoc, and
ppc_stub_plt_call_both.
(is_branch_reloc): Add R_PPC64_REL24_NOTOC.
(build_offset, size_offset): New functions.
(plt_stub_size): Support plt_call_notoc and plt_call_both.
(ppc_build_one_stub, ppc_size_one_stub): Support new stubs.
(toc_adjusting_stub_needed): Handle R_PPC64_REL24_NOTOC.
(ppc64_elf_size_stubs): Likewise, and new stubs.
(ppc64_elf_build_stubs, ppc64_elf_relocate_section): Likewise.
* reloc.c: Add BFD_RELOC_PPC64_REL24_NOTOC.
* bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.
gas/
* config/tc-ppc.c (ppc_elf_suffix): Support @notoc.
(ppc_force_relocation, ppc_fix_adjustable): Handle REL24_NOTOC.
ld/
* testsuite/ld-powerpc/ext.d,
* testsuite/ld-powerpc/ext.s,
* testsuite/ld-powerpc/ext.lnk,
* testsuite/ld-powerpc/notoc.d,
* testsuite/ld-powerpc/notoc.s: New tests.
* testsuite/ld-powerpc/powerpc.exp: Run them.
commit 3f6ff4799bc50e6030bb707b2b2b525fcfdd2216
Author: Alan Modra <amodra@gmail.com>
Date: Fri Aug 3 16:45:25 2018 +0930
Lose _r2off in powerpc64 stub names
Not a lot is conveyed by putting _r2off in a stub symbol that can't be
seen by inspecting the stub code or the toc restoring instruction
immediately after a call via such a stub. Also, we don't distinguish
plt_call stub symbols from plt_call_r2save stub symbols, so this patch
makes long branch and plt branch stub symbols consistent with that
decision.
bfd/
* elf64-ppc.c (ppc_build_one_stub): Lose "_r2off" in stub symbols.
ld/
* testsuite/ld-powerpc/elfv2exe.d: Adjust for stub symbol change.
* testsuite/ld-powerpc/tocopt6.d: Likewise.
commit 1a6204c9a73d10fe65c0b0b54d542cf73d156a56
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Aug 5 00:01:09 2018 +0000
Automatic date update in version.in
commit 3fbbcf473a59df74a0b5d9ee343169f778fbd054
Author: Tom de Vries <tdevries@suse.de>
Date: Fri Aug 3 19:15:30 2018 +0200
[gdb/testsuite] Fix regexp in py-rbreak.exp
This fails for me on openSUSE leap 15.0:
...
FAIL: gdb.python/py-rbreak.exp: check number of returned breakpoints is 11
...
The rbreak "" command expects 11 breaks, but I see two extra for
__libc_csu_fini and __libc_csu_init:
...
Breakpoint 13 at 0x4005b0: file elf-init.c, line 106.^M
Breakpoint 14 at 0x400540: file elf-init.c, line 68.^M
...
This patch fixes the failing test by excluding functions starting with an
underscore.
Tested on x86_64-linux.
2018-08-04 Tom de Vries <tdevries@suse.de>
* gdb.python/py-rbreak.exp: Fix rbreak regexp.
commit 5e7f20ca9a7abc3fa8e053643eaa422dc9fbf3a4
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Aug 4 00:00:33 2018 +0000
Automatic date update in version.in
commit 39aac631baa1c5c540d16e45b64c2813a14f95b0
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Aug 3 15:47:26 2018 -0700
x32: Align the .note.gnu.property section to 4 bytes
The .note.gnu.property section should be aligned to 4 bytes for x32.
* testsuite/ld-x86-64/property-x86-3.s: Use ".p2align 2" to
align .note.gnu.property section if __64_bit__ is undefined.
commit 425699f52d8fb875c2197b202b9e05bdc09d0115
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Fri Aug 3 18:04:38 2018 -0400
Fix thinko when deciding whether to disable TCP's Nagle algorithm
This patch fixes a thinko that happened when I was implementing the
IPv6 support on GDB/gdbserver. On certain situations, it is necessary
to disable TCP's Nagle algorithm (NODELAY). For obvious reasons, this
only applies when we are dealing with a TCP connection.
While implementing the IPv6 patch, I noticed that the net_open
function (on gdb/ser-tcp.c) kept a flag indicating whether the
connection type was UDP or TCP. I eliminated that flag, and started
using the 'struct addrinfo *' related to the successful connection
directly. However, I made a mistake:
if (success_ainfo->ai_socktype == IPPROTO_TCP)
^^^^^^^^^^^
{
/* Disable Nagle algorithm. Needed in some cases. */
int tmp = 1;
setsockopt (scb->fd, IPPROTO_TCP, TCP_NODELAY,
(char *) &tmp, sizeof (tmp));
}
The 'ai_socktype' field specifies the socket type (SOCK_STREAM or
SOCK_DGRAM), and not the protocol. This test was always failing, and
the Nagle algorithm was never being disabled.
The obvious fix is to use the 'ai_protocol' field. This is what this
patch does.
Huge "thank you" to Joel Brobecker who reported the regression (he was
experiencing an unusual delay while debugging a bare-metal program
running under QEMU) and helped me set up a proper reproducer for the
bug.
gdb/ChangeLog:
2018-08-03 Sergio Durigan Junior <sergiodj@redhat.com>
* ser-tcp.c (net_open): Fix thinko when deciding whether to
disable TCP's Nagle algorithm (use "ai_protocol" instead of
"ai_socktype").
commit 4aae6e5abddb84e1225cfd696b8fd2c6832f9fb6
Author: Nick Clifton <nickc@redhat.com>
Date: Fri Aug 3 17:08:11 2018 +0100
Improve objcopy's ability to merge build notes.
* objcopy.c (merge_gnu_build_notes): Delete empty notes. Merge
identical function notes.
commit 2688aab226c6d8871af4cf53ea5651e06f104744
Author: Dimitar Dimitrov <dimitar@dinux.eu>
Date: Fri Aug 3 10:02:39 2018 +0100
Update PRU assembler to corect hardware register numbering for DWARF.
A small rework of the PRU GCC port exposed that CIE data alignment is
erroneously set to 4 for PRU in GAS. In fact PRU stack must be aligned to 1.
Set the macro to -1, to allow output from GCC to be assembled without errors.
Also, while at it, set DWARF2 HW register numbering to follow latest
* config/tc-pru.c (pru_regname_to_dw2regnum): Return the starting HW
byte-register number.
(pru_frame_initial_instructions): Use byte-numbering for FP index.
* config/tc-pru.h (DWARF2_DEFAULT_RETURN_COLUMN): Use number from
latest GCC.
(DWARF2_CIE_DATA_ALIGNMENT): Set to -1.
commit dbf8be89edf7b6443fa0b7d31ca6d6ad202fadae
Author: Jan Beulich <jbeulich@novell.com>
Date: Fri Aug 3 09:30:58 2018 +0200
x86: drop NoRex64 from {,v}pmov{s,z}x*
They're pointless with IgnoreSize also specified, and even more so when
no Qword operand exists.
commit c48dadc9a87f4fc3408987fc4dbd312bed50da9c
Author: Jan Beulich <jbeulich@novell.com>
Date: Fri Aug 3 09:30:02 2018 +0200
x86: drop "mem" operand type attribute
No template specifies this bit, so there's no point recording it in the
templates. Use a flags[] bit instead.
commit 3ed12f02a20a487ce46b463746c52c2905e16c03
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Aug 3 00:00:43 2018 +0000
Automatic date update in version.in
commit 13755f406d6615e0750213edb04a023ec2ba7b9b
Author: Jim Wilson <jimw@sifive.com>
Date: Thu Aug 2 16:13:49 2018 -0700
RISC-V: Fix TLS and --gc-sections conflict.
bfd/
* elfnn-riscv.c (riscv_elf_create_dynamic_sections): For .tdata.dyn,
add SEC_LINKER_CREATED flag.
commit 3e1d3d8c2494c021718ba957e83395958ee08a0f
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jul 19 11:24:49 2018 -0600
Allow "info address" of a template parameter
PR symtab/16842 shows that gdb will crash when the user tries to
invoke "info address" of a template parameter.
The bug here is that dwarf2read.c does not set the symtab on the
template parameter symbols. This is pedantically correct, given that
the template symbols do not appear in a symtab. However, gdb
primarily uses the symtab backlink to find the symbol's objfile. So,
this patch simply sets the symtab on these symbols.
Tested by the buildbot.
gdb/ChangeLog
2018-08-02 Tom Tromey <tom@tromey.com>
PR symtab/16842.
* dwarf2read.c (read_func_scope): Set symtab on template parameter
symbols.
(process_structure_scope): Likewise.
gdb/testsuite/ChangeLog
2018-08-02 Tom Tromey <tom@tromey.com>
PR symtab/16842.
* gdb.cp/temargs.exp: Test "info address" of a template
parameter.
commit 1584354913285389063622a39f845851f332eb9a
Author: Xavier Roirand <roirand@adacore.com>
Date: Thu Jun 8 18:10:18 2017 +0200
Fix kill issue leading to zombie process on MacOS Sierra
Starting with MacOS version Sierra, the gdb kill command
seems to work but inferior remains as zombie on the host.
Notice that, as zombie process, the inferior is not killable
by the user, nor by root.
The kill signal gdb sent to the inferior is not handled
in gdb as a signal sent by gdb thus no reply is made and
the process remains (since MacOS does not "release" the
inferior because no reply have been made to the signal
message).
This patch fixes this problem.
gdb/ChangeLog
2018-08-02 Xavier Roirand <roirand@adacore.com>
PR gdb/22629:
* darwin-nat.c (darwin_kill_inferior): Fix handling of
kill inferior.
commit b5bddbbbbcece5d52115bd3e1299cec2a3b362f0
Author: Tom Tromey <tom@tromey.com>
Date: Fri Jul 13 12:45:07 2018 -0600
Check results of get_darwin_inferior
I noticed that the existing kill-detach-inferiors-cmd.exp test was
causing gdb to crash on macOS 10.13. The bug was that an inferior
that hadn't yet been started would cause get_darwin_inferior to return
NULL, and this was not checked.
I went through the places calling get_darwin_inferior and added checks
where appropriate. This makes the test get a bit further. Not all of
these spots are exercised by the test, but they seem safe enough in
any case.
gdb/ChangeLog
2018-08-02 Tom Tromey <tom@tromey.com>
* darwin-nat.c (find_inferior_task_it, darwin_find_thread)
(darwin_suspend_inferior, darwin_resume_inferior)
(darwin_decode_notify_message, darwin_resume_inferior_threads)
(darwin_check_new_threads): Check result of get_darwin_inferior.
commit 8094f49a4dd9679c294e6254e928ea75c229aa95
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Thu Aug 2 14:53:34 2018 -0400
Backport gettext fixes to get rid of warnings on macOS
Two fixes were committed recently to the gettext repo in order to make
gdb build warning-free on macOS. This patch backports them both:
- Make the format_arg attribute effective also in the case _INTL_REDIRECT_INLINE.
113893dce80358a4ae0d9463ce73c5670c81cf0c
http://git.savannah.gnu.org/cgit/gettext.git/commit/?id=113893dce80358a4ae0d9463ce73c5670c81cf0c
- Enable the format_arg attribute also on clang on Mac OS X.
bd6a52241c7c83c90e043ace2082a2508d273f55
http://git.savannah.gnu.org/cgit/gettext.git/commit/?id=bd6a52241c7c83c90e043ace2082a2508d273f55
intl/ChangeLog:
* libgnuintl.h (_INTL_MAY_RETURN_STRING_ARG, gettext, dgettext,
dcgettext, ngettext, dngettext, dcngettext): Backport changes
from upstream gettext.
commit 8a28fa1b4beb3b4c77c9b3963f1e32235591470d
Author: Nick Clifton <nickc@redhat.com>
Date: Thu Aug 2 16:37:12 2018 +0100
Disable the PR12982 test for HPPA targets.
PR 23463
* testsuite/ld-plugin/pr12982.d: Revert previous delta.
* testsuite/ld-plugin/lto.exp: Skip the pr12982 test for HPPA
targets.
commit d0042c6ed311694e791ecea8c132b3f01278b7ee
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Aug 2 05:42:53 2018 -0700
ifunc.exp: Always build static_nonifunc_prog
Since static_nonifunc_prog isn't linked against libc.a, we can always
build it.
* testsuite/ld-ifunc/ifunc.exp: Always build static_nonifunc_prog.
commit 36a900f483789dc2ec4bfd31386e29b52fd2e019
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Aug 2 05:00:45 2018 -0700
Add a testcase for PR binutils/23460
Add a testcase to limit open files to 16 for AR with plugin. Before
commit 103da91bc083f94769e3758175a96d06cef1f8fe
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Aug 1 14:34:41 2018 +0100
Close resource leaks in the BFD library's plugin handler.
it failed with:
../binutils/ar: tmpdir/pr23460f.o: plugin needed to handle lto object
PR binutils/23460
* testsuite/ld-plugin/lto.exp: Run the PR binutils/23460 test.
* testsuite/ld-plugin/pr23460a.c: New file.
* testsuite/ld-plugin/pr23460b.c: Likewise.
* testsuite/ld-plugin/pr23460c.c: Likewise.
* testsuite/ld-plugin/pr23460d.c: Likewise.
* testsuite/ld-plugin/pr23460e.c: Likewise.
* testsuite/ld-plugin/pr23460f.c: Likewise.
commit 09a8cc152be1b6ad2e309ac2d61caa5a4a1c3a54
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Aug 2 00:00:31 2018 +0000
Automatic date update in version.in
commit c198a1ecf835c5896ef810ebe1ded06729039dcd
Author: Roland McGrath <mcgrathr@google.com>
Date: Wed Aug 1 13:36:51 2018 -0700
Fix spurious check-ld failures on aarch64-elf
ld/
* testsuite/ld-aarch64/ifunc-1-local.d: Adjust regexps to match
the offsets emitted by aarch64-elf configurations.
* testsuite/ld-aarch64/ifunc-1.d: Likewise.
* testsuite/ld-aarch64/ifunc-2-local.d: Likewise.
* testsuite/ld-aarch64/ifunc-2.d: Likewise.
* testsuite/ld-aarch64/ifunc-21.d: Likewise.
* testsuite/ld-aarch64/ifunc-3a.d: Likewise.
commit e256144888a28eae9326f86cd95282b807aa2f6a
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Aug 1 15:51:57 2018 +0100
Add a note about regenerating the info files when creating a new release.
* README-how-to-make-a-release: Add note about regenerating the
info files prior to the release.
commit e30985fa2b495a6b932e1376f287cb51252572d7
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Aug 1 15:28:37 2018 +0100
Skip the test for PR12982 on HPPA targets as they always need an executable stack.
PR 23463
* testsuite/ld-plugin/pr12982.d: Skip thios test for the HPPA
target.
commit 3cf2b6691cef024f7cdb48aaec5fab5189e1cffa
Author: James Patrick Conlon <cptjustice@gmail.com>
Date: Wed Aug 1 15:14:46 2018 +0100
Fix bug in PDP11 assembler when handling a JSr instruction with deferred auto increment.
PR 14480
* config/tc-pdp11.c (parse_op_noreg): Check for and handle auto
increment deferred.
* testsuite/gas/pdp11/pr14480.d: New test driver file.
* testsuite/gas/pdp11/pr14480.s: New test source file file.
* testsuite/gas/pdp11/pdp11.exp: Run the new test.
commit c25179e71fee952ace322ce26b3fe6b722ec77f9
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Aug 1 14:46:43 2018 +0100
Suppress compile time warning message when compiling coff-rs6000.c with gcc v8.
* coff-rs6000.c (_bfd_xcoff_put_ldsymbol_name): Suppress warnings
about potentially truncated strncpy operations.
(_bfd_xcoff_put_symbol_name): Likewise.
commit 4a9f7d653c089fdd8ca66a51caab7c9687f50cd1
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Aug 1 14:42:37 2018 +0100
Fix potential illegal memory access in AVR backend.
* elf32-avr.c (avr_stub_name): Check for a NULL return from
bfd_malloc.
commit f03fb29221a00c294e14850f1fa1af343cded926
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Aug 1 14:36:50 2018 +0100
Fix compile time warning problem with gcc 8 and the NS32K assembler sources.
* config/tc-ns32k.c (addr_mode): Replace "Drop through" comment
with "Fall through" so that it will be recognised by gcc's switch
statment error checker.
commit 103da91bc083f94769e3758175a96d06cef1f8fe
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Aug 1 14:34:41 2018 +0100
Close resource leaks in the BFD library's plugin handler.
PR 23460
* plugin.c (bfd_plugin_open_input): Close file descriptor if the
call to fstat fails.
(try_claim): Always close the file descriptor at the end of the
function.
(try_load_plugin): If a plugin has already been registered, then
skip the dlopen and onload steps and go straight to claiming the
file. If these is an error, close the plugin.
commit 50320b1d4a1dd06db70aeea485e0ffd9871548e0
Author: marxin <marxin@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Thu Jul 26 12:13:14 2018 +0000
Copy from GCC: Add linker_output as prefix for LTO temps (PR lto/86548).
2018-07-26 Martin Liska <mliska@suse.cz>
PR lto/86548
* libiberty.h (make_temp_file_with_prefix): New function.
2018-07-26 Martin Liska <mliska@suse.cz>
PR lto/86548
* make-temp-file.c (TEMP_FILE): Remove leading 'cc'.
(make_temp_file): Call make_temp_file_with_prefix with
first argument set to NULL.
(make_temp_file_with_prefix): Support also prefix.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@262999 138bc75d-0d04-0410-961f-82ee72b054a4
commit a67ae9b01af7eb2b1f8e5c517338a4b12167ce40
Author: Alan Modra <amodra@gmail.com>
Date: Wed Aug 1 18:59:03 2018 +0930
Re: PowerPC64 __tls_get_addr_opt stub .eh_frame fix
The modified test failed on some powerpc targets due to differences in
default hash style. If the default hash style is both, then more
sections are created, bumping section ids. Section id is used in stub
symbols and although the test is careful to not depend on id in
labels, the stub hash traversal order changes when stub names change.
That lead to the stubs being emitted in a different order and thus not
matching expected output.
* testsuite/ld-powerpc/powerpc.exp: Run tlsopt5 with hash-style
specified.
commit 1aa4214141d30f99f941266a3bedbc332d674c04
Author: Alan Modra <amodra@gmail.com>
Date: Wed Aug 1 12:14:22 2018 +0930
PowerPC64 __tls_get_addr_opt stub .eh_frame fix
This patch sets stub_offset in ppc_size_one_stub rather than in
ppc_build_one_stub. That allows the plt stub alignment to be done in
just ppc_size_one_stub rather than both functions. The patch also
corrects the place where the alignment was done, fixing a possible
error in .eh_frame data, and tidies some offset calculations.
bfd/
* elf64-ppc.c (plt_stub_pad): Delay plt_stub_size call until needed.
(ppc_build_one_stub): Don't set stub_offset, instead assert that
it is sane. Don't adjust stub_offset for alignment. Adjust size
calculation. Use "targ" temp when calculating offsets.
(ppc_size_one_stub): Set stub_offset here. Use "targ" temp when
calculating offsets. Adjust for alignment before setting
tls_get_addr_opt_bctrl.
ld/
* testsuite/ld-powerpc/powerpc.exp: Run tlsopt5 with plt alignment.
* testsuite/ld-powerpc/tlsopt5.s: Add extra call.
* testsuite/ld-powerpc/tlsopt5.wf: Adjust expected output.
* testsuite/ld-powerpc/tlsopt5.d: Likewise.
commit cb86a42aba5b6e1c135433e1c0c26223fd0f7a7f
Author: Alan Modra <amodra@gmail.com>
Date: Wed Aug 1 10:32:56 2018 +0930
csky regen
bfd/
* po/SRC-POTFILES.in: Regenerate.
gas/
* po/POTFILES.in: Regenerate.
ld/
* po/BLD-POTFILES.in: Regenerate.
opcodes/
* po/POTFILES.in: Regenerate.
commit 33633d9f5b138a211405d482436db2f7661b190e
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Aug 1 00:00:43 2018 +0000
Automatic date update in version.in
commit 07cc045019bf655b84692465232e9f0faf7d868f
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Jul 31 17:49:53 2018 +0100
Correct previous update - new translation for the opcodes subdirectory.
opcodes * po/sv.po: Updated Swedish translation.
commit 11cfdeb3863c5ddf8e773147e6cf5a14de15aee8
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Jul 31 17:46:15 2018 +0100
Updated Swedish translation for the binutils sub-directory.
* po/sv.po: Updated Swedish translation.
commit f61cfa0740987a13a1e14242b3039caba73e901e
Author: Joel Brobecker <brobecker@adacore.com>
Date: Tue Jul 31 07:59:44 2018 -0700
Document the GDB 8.1.1 release in gdb/ChangeLog
gdb/ChangeLog:
GDB 8.1.1 released.
commit 5abe0f0cc79a753b80bde28d9c0c7fec9bff3c10
Author: Jan Vrany <jan.vrany@fit.cvut.cz>
Date: Tue Jul 31 10:15:44 2018 +0100
Fix segfault when invoking -var-info-path-expression on a dynamic varobj
Invoking -var-info-path-expression on a dynamic varobj lead either in wrong
(nonsense) result or to a segmentation fault in cplus_describe_child().
This was caused by the fact that varobj_get_path_expr() called
cplus_path_expr_of_child() ignoring the fact the parent of the variable
is dynamic. Then, cplus_describe_child() accessed the underlaying C type
members by index, causing (i) either wrong (nonsense) expression being
returned (since dynamic child may be completely arbibtrary value)
or (ii) segmentation fault (in case the index higher than number of
underlaying C type members.
This fixes the problem by checking whether a varobj is a child of a dynamic
varobj and, if so, reporting an error as described in documentation.
gdb/ChangeLog:
* varobj.c (varobj_get_path_expr_parent): Report an error if
parent is a dynamic varobj.
gdb/testsuite/Changelog:
* gdb.python/py-mi-var-info-path-expression.c: New file.
* gdb.python/py-mi-var-info-path-expression.py: New file.
* gdb.python/py-mi-var-info-path-expression.exp: New file.
commit 472fa5eec2cc521ad5ea37091ea2424ea46552ae
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Tue Jul 31 10:09:10 2018 -0400
Re-generate gnulib import
I noticed that re-generating our gnulib import introduced some changes.
I supposed that this comes from the recent upgrade to autoconf 2.69
(though I haven't checked).
Tested by rebuilding on GNU/Linux x86-64 and mingw (cross-compiled from
GNU/Linux).
gdb/ChangeLog:
* gnulib/aclocal.m4: Re-generate.
* gnulib/config.in: Re-generate.
* gnulib/configure: Re-generate.
* gnulib/import/Makefile.in: Re-generate.
* gnulib/import/m4/gnulib-comp.m4: Re-generate.
* gnulib/import/m4/onceonly.m4: Re-generate.
commit 1c28969efcca7c214e41c496f599bc4de2c56dbe
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Tue Jul 31 10:06:00 2018 -0400
Delete test target descriptions when exiting
Looking at the address sanitizer output, this was a quite low hanging
fruit. We create target_desc objects for testing that we never free.
Saving them in unique_ptrs takes care of it.
I created a small struct to hold these because I thought it would help
readability.
gdb/ChangeLog:
* target-descriptions.c (struct xml_test_tdesc): New.
(xml_tdesc): Change type to std::vector<xml_test_tdesc>.
(record_xml_tdesc): Update.
(maintenance_check_xml_descriptions): Update.
* target-descriptions.h (record_xml_tdesc): Update comment.
commit 1424ad867742286be44932bf29720539add19ae0
Author: Jan Beulich <jbeulich@novell.com>
Date: Tue Jul 31 10:58:05 2018 +0200
x86: also optimize KXOR{D,Q} and KANDN{D,Q}
These can be converted to 2-byte VEX encoding when both source registers
are the same, by using KXORW / KANDNW as replacement.
commit ae2387feae3f0798dd77c98a7107fdec38a99fe3
Author: Jan Beulich <jbeulich@novell.com>
Date: Tue Jul 31 10:57:09 2018 +0200
x86: fold various AVX512 templates with so far differing Masking attributes
There's no insn allowing ZEROING_MASKING alone. Re-purpose its value for
handling the not uncommon case of insns allowing either form of masking
with register operands, but only merging masking with a memory operand.
commit fa77b93ab76cae42e9394592d7474c795bb28f7e
Author: Jan Beulich <jbeulich@novell.com>
Date: Tue Jul 31 10:56:09 2018 +0200
x86: add more exhaustive tests for invalid AVX512 zeroing-masking
Before changing how things get handled, install a full set of tests,
such that it can be demonstrated that the subsequent change doesn't
break things.
commit 6ff00b5e12e7256738d9a4dac66e5a7745b771ea
Author: Jan Beulich <jbeulich@novell.com>
Date: Tue Jul 31 10:55:17 2018 +0200
x86/Intel: correct permitted operand sizes for AVX512 scatter/gather
AVX gather insns correctly allow the element size to be specified rather
than the full vector size. Make AVX512 ones match.
commit 7a8655d2bbdc788786cb28e925e1d4303cd960b0
Author: Jan Beulich <jbeulich@novell.com>
Date: Tue Jul 31 10:54:05 2018 +0200
x86: don't abort() upon DATA16 prefix on (E)VEX encoded insn
Instead of hitting the abort() in output_insn() (commented by "There
should be no other prefixes for instructions with VEX prefix"), report
a proper diagnostic instead, just like we do e.g. for invalid REP
prefixes.
commit e951d5ca3d73cfd71a002b91c16d6036240213e6
Author: Jan Beulich <jbeulich@novell.com>
Date: Tue Jul 31 10:52:37 2018 +0200
x86: drop CpuVREX
It is fully redundant with CpuAVX512F.
commit ef6ba1ed0d7831c35cd241c382ed3026c156b641
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Jul 31 00:00:34 2018 +0000
Automatic date update in version.in
commit fb66cde8a42a383b111f0f1f48eb9f6daf9d736c
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Mon Jul 30 15:23:27 2018 -0400
Match any kind of error after "cannot resolve name" on lib/gdbserver-support.exp:gdbserver_start
On commit:
commit 7f1f7e23939adc7d71036a17fc6081e3af7ca585
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Fri Jul 13 16:20:34 2018 -0400
Expect for another variant of error message when gdbserver cannot resolve hostname
I extended the regular expression being used to identify whether
gdbserver could not resolve a (host)name. This was needed because the
error message being printed had a different variation across some
systems. However, as it turns out, I've just noticed that the message
has yet another variation:
target remote tcp8:123:2353
tcp8:123:2353: cannot resolve name: System error
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tcp8:123:2353: No such file or directory.
(gdb) FAIL: gdb.server/server-connect.exp: tcp8: connect to gdbserver using tcp8:123
which is causing FAILs on some systems (namely, Fedora-i686 on
BuildBot).
So instead of trying to predict everything that can be printed, I
decided to just match anything after the "cannot resolve name: " part.
This patch implements that.
Regression tested on the BuildBot.
gdb/testsuite/ChangeLog:
2018-07-30 Sergio Durigan Junior <sergiodj@redhat.com>
* lib/gdbserver-support.exp (gdbserver_start): Match any kind of
error after "cannot resolve name" string.
commit eb41b24898e9858852c98f9275e7a4adee860d7b
Author: Jim Wilson <jimw@sifive.com>
Date: Mon Jul 30 13:55:41 2018 -0700
RISC-V: Set insn info fields correctly when disassembling.
include/
* opcode/riscv.h (INSN_TYPE, INSN_BRANCH, INSN_CONDBRANCH, INSN_JSR)
(INSN_DREF, INSN_DATA_SIZE, INSN_DATA_SIZE_SHIFT, INSN_1_BYTE)
(INSN_2_BYTE, INSN_4_BYTE, INSN_8_BYTE, INSN_16_BYTE): New.
opcodes/
* riscv-dis.c (riscv_disassemble_insn): Set insn_type and data_size
fields.
* riscv-opc.c (riscv_opcodes): Use new INSN_* flags to annotate insns.
commit c8f2dc0dc967222673d71a0493958a587c53ae3c
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Sun Jul 29 22:14:33 2018 +0100
gdb: Fix sizeof for dynamic types other than arrays
In commit:
commit 37cc0caeca4c9a8552370040f4cfeaeceaa03369
Date: Wed Jul 18 13:38:35 2018 +0200
[gdb/exp] Interpret size of vla with unknown size as <optimized out>
All dynamic types are treated as arrays in the 'sizeof' code path,
which means that structures can incorrectly be treated as arrays.
This can cause a failure in the gdb.base/vla-datatypes.exp test
script.
This commit adds a check that we do have an array before checking the
array bounds, and I also check that the array index type is dynamic
too. This second check probably isn't strictly necessary, but
shouldn't hurt, a non-dynamic index type shouldn't have undefined high
bound.
gdb/ChangeLog:
* eval.c (evaluate_subexp_for_sizeof): Check for array type before
checking array bounds are defined.
commit 629cfaf1b0fbb32a985607c774bd8e7870b9fa94
Author: Jan Beulich <jbeulich@novell.com>
Date: Mon Jul 30 17:25:05 2018 +0200
x86: don't mistakenly scale non-8-bit displacements
In commit b5014f7af2 I've removed (instead of replaced) a conditional,
resulting in addressing forms not allowing 8-bit displacements to now
get their displacements scaled under certain circumstances. Re-add the
missing conditional.
commit 2409af1e94de228ccd7a1d34deb954541fbfa37c
Author: Andrew Jenner <andrew@codesourcery.com>
Date: Mon Jul 30 08:22:21 2018 -0700
* MAINTAINERS (C-SKY): Add Yunhai Shang as co-maintainer.
commit d0ba5758c269263a6cabfbb69ee23358ebdbe9cf
Author: Andrew Jenner <andrew@codesourcery.com>
Date: Mon Jul 30 07:53:38 2018 -0700
* MAINTAINERS (C-SKY): Add Lifang Xia as maintainer.
commit 463c08d160e55d6eaf0f9bc3729781ce90f4de3f
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jul 19 21:10:09 2018 -0600
Fix crash with -D_GLIBCXX_DEBUG
I noticed a buildbot failure where gdb crashed in info-os.exp, when
compiled with -D_GLIBCXX_DEBUG:
(gdb) info os procgroups
/usr/include/c++/7/bits/stl_algo.h:4834:
Error: comparison doesn't meet irreflexive requirements, assert(!(a < a)).
Objects involved in the operation:
iterator::value_type "< operator type" {
type = pid_pgid_entry;
}
The bug here is that pid_pgid_entry::operator< violates the C++
irreflexivity rule; that is, that an object cannot be less than
itself.
Tested locally by re-running info-os.exp.
gdb/ChangeLog
2018-07-30 Tom Tromey <tom@tromey.com>
* nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
irreflexivity violation.
commit dba7455e76f87abe81cc9e4e9b1f979c1da02846
Author: Tom Tromey <tom@tromey.com>
Date: Sun Jul 29 15:23:51 2018 -0600
Remove old lint code
This removes dead code that, according to the comments, existed to
placate lint. I don't think this has been relevant in a long time,
and certainly not since gdb switched to C++.
Tested by rebuilding.
ChangeLog
2018-07-30 Tom Tromey <tom@tromey.com>
* cli/cli-decode.c (lookup_cmd): Remove lint code.
* value.c (unpack_long): Remove lint code.
* valops.c (value_ind): Remove lint code.
* valarith.c (value_x_binop, value_x_unop, value_equal)
(value_pos): Remove lint code.
commit a05b9f5e1eb8f01eea23eff3902fa57f1f28a4e1
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Jul 30 13:58:15 2018 +0100
Prevent a seg-fault in the linker when trying to process SH object files with bogus relocs.
PR 22706
* elf32-sh.c (sh_elf_relocate_section): When processing
translation relocs, fail if the relocation offset is too small.
Replace BFD_ASSERTs with more helpful error messages.
commit 4570c3d98c0a35e52fa4117d07b78d4f461b6f26
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Jul 30 12:35:37 2018 +0100
Fix thinko in the placement of the .gnu.build.attributes section.
* scripttempl/elf.sc: Move the .gnu.build.attributes section to
after the .comment section.
commit b8891f8d622a31306062065813fc278d8a94fe21
Author: Andrew Jenner <andrew@codesourcery.com>
Date: Mon Jul 30 12:24:14 2018 +0100
Add support for the C_SKY series of processors.
This patch series is a new binutils port for C-SKY processors, including support for both the V1 and V2 processor variants. V1 is derived from the MCore architecture while V2 is substantially different, with mixed 16- and 32-bit instructions, a larger register set, a different (but overlapping) ABI, etc. There is support for bare-metal ELF targets and Linux with both glibc and uClibc.
This code is being contributed jointly by C-SKY Microsystems and Mentor Graphics. C-SKY is responsible for the technical content and has proposed Lifang Xia and Yunhai Shang as port maintainers. (Note that C-SKY does have a corporate copyright assignment on file with the FSF.) Mentor Graphics' role has been cleaning up the code, adding documentation and additional test cases, etc, to address issues we anticipated reviewers would complain about.
bfd * Makefile.am (ALL_MACHINES, ALL_MACHINES_CFILES): Add C-SKY.
(BFD32_BACKENDS, BFD_BACKENDS_CFILES): Likewise.
* Makefile.in: Regenerated.
* archures.c (enum bfd_architecture): Add bfd_arch_csky and
related bfd_mach defines.
(bfd_csky_arch): Declare.
(bfd_archures_list): Add C-SKY.
* bfd-in.h (elf32_csky_build_stubs): Declare.
(elf32_csky_size_stubs): Declare.
(elf32_csky_next_input_section: Declare.
(elf32_csky_setup_section_lists): Declare.
* bfd-in2.h: Regenerated.
* config.bfd: Add C-SKY.
* configure.ac: Likewise.
* configure: Regenerated.
* cpu-csky.c: New file.
* elf-bfd.h (enum elf_target_id): Add C-SKY.
* elf32-csky.c: New file.
* libbfd.h: Regenerated.
* reloc.c: Add C-SKY relocations.
* targets.c (csky_elf32_be_vec, csky_elf32_le_vec): Declare.
(_bfd_target_vector): Add C-SKY target vector entries.
binutils* readelf.c: Include elf/csky.h.
(guess_is_rela): Handle EM_CSKY.
(dump_relocations): Likewise.
(get_machine_name): Likewise.
(is_32bit_abs_reloc): Likewise.
include * dis-asm.h (csky_symbol_is_valid): Declare.
* opcode/csky.h: New file.
opcodes * Makefile.am (TARGET_LIBOPCODES_CFILES): Add csky-dis.c.
* Makefile.in: Regenerated.
* configure.ac: Add C-SKY.
* configure: Regenerated.
* csky-dis.c: New file.
* csky-opc.h: New file.
* disassemble.c (ARCH_csky): Define.
(disassembler, disassemble_init_for_target): Add case for ARCH_csky.
* disassemble.h (print_insn_csky, csky_get_disassembler): Declare.
gas * Makefile.am (TARGET_CPU_CFILES): Add entry for C-SKY.
(TARGET_CPU_HFILES, TARGET_ENV_HFILES): Likewise.
* Makefile.in: Regenerated.
* config/tc-csky.c: New file.
* config/tc-csky.h: New file.
* config/te-csky_abiv1.h: New file.
* config/te-csky_abiv1_linux.h: New file.
* config/te-csky_abiv2.h: New file.
* config/te-csky_abiv2_linux.h: New file.
* configure.tgt: Add C-SKY.
* doc/Makefile.am (CPU_DOCS): Add entry for C-SKY.
* doc/Makefile.in: Regenerated.
* doc/all.texi: Set CSKY feature.
* doc/as.texi (Overview): Add C-SKY options.
(Machine Dependencies): Likewise.
* doc/c-csky.texi: New file.
* testsuite/gas/csky/*: New test cases.
ld * Makefile.am (ALL_EMULATION_SOURCES): Add C-SKY emulations.
(ecskyelf.c, ecskyelf_linux.c): New rules.
* Makefile.in: Regenerated.
* configure.tgt: Add C-SKY.
* emulparams/cskyelf.sh: New file.
* emulparams/cskyelf_linux.sh: New file.
* emultempl/cskyelf.em: New file.
* gen-doc.texi: Add C-SKY.
* ld.texi: Likewise.
(Options specific to C-SKY targets): New section.
* testsuite/ld-csky/*: New tests.
commit 7d8a31665739412395f6dd370d2279acd322e78e
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Jul 30 09:34:40 2018 +0100
Combine ,gnu.build.attributes.* sections into one .gnu.build.attributes section during linking.
gold * layout.cc (section_name_mapping): Add an entry for
.gnu.build.attributes.
ld * scripttempl/elf.sc: Place .gnu.build.attributes sections with
other read-only sections.
commit 906c6f2c54425f18eccb30e3ae54cbe620f0fe86
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Jul 30 00:00:27 2018 +0000
Automatic date update in version.in
commit 29e6f4745eca5ed82c7dcde09cb0bdde1f8a2eaa
Author: John David Anglin <danglin@gcc.gnu.org>
Date: Sun Jul 29 12:51:23 2018 -0400
Fix unwind offset for start_symbol.
* config/tc-hppa.c: Include "struc-symbol.h".
(pa_build_unwind_subspace): Use call_info->start_symbol->sy_frag
instead of frag_now for local symbol replacement.
commit 51b79795294ad32c7bfeafaebe4c921db75491ed
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Jul 29 00:00:51 2018 +0000
Automatic date update in version.in
commit c708f4d256f1f1a92310fcb323a108d95d5fd5da
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Wed Jul 11 16:58:47 2018 +0100
gdb: Don't call gdb_load_shlib unless GDB is running
The gdb_load_shlib function will, on remote targets, try to run some
GDB commands. This obviously isn't going to work unless GDB is
running.
The gdb.trace/tspeed.exp test calls gdb_load_shlib before starting
GDB. Don't do that.
The failure that's triggered is actually DeJaGNU complaining that the
variable $use_gdb_stub doesn't exist, this is only created when GDB is
started. Something like this should trigger a failure:
make check-gdb \
RUNTESTFLAGS="--target_board=remote-gdbserver-on-localhost \
gdb.trace/tspeed.exp"
This commit also adds a check to gdb_load_shlib that GDB is running.
The check is always performed, so this should catch cases where a GDB
developer adds a use of gdb_load_shlib but doesn't test their code
with a remote target.
gdb/testsuite/ChangeLog:
* gdb.trace/tspeed.exp: Only call gdb_load_shlib after gdb has
started.
* lib/gdb.exp (gdb_load_shlib): Call perror if GDB is not running.
commit 37cc0caeca4c9a8552370040f4cfeaeceaa03369
Author: Tom de Vries <tdevries@suse.de>
Date: Wed Jul 18 13:38:35 2018 +0200
[gdb/exp] Interpret size of vla with unknown size as <optimized out>
At -O3 -g -gstrict-dwarf, gcc generates for an optimized out vla 'a' a
DW_TAG_variable with type DW_TAG_array_type containing one
DW_TAG_subrange_type, but without DW_AT_upper_bound or DW_AT_count, which
makes the upper bound value 'unknown':
...
.uleb128 0x15 # (DIE (0x161) DW_TAG_variable)
.long 0xec # DW_AT_abstract_origin
.long 0x170 # DW_AT_type
...
.uleb128 0xa # (DIE (0x170) DW_TAG_array_type)
.long 0x110 # DW_AT_type
.long 0x17f # DW_AT_sibling
.uleb128 0x17 # (DIE (0x179) DW_TAG_subrange_type)
.long 0xc6 # DW_AT_type
.byte 0 # end of children of DIE 0x170
...
But gdb prints '0' for the size of 'a':
...
/gdb ./vla-1.exe -batch -ex "b f1" -ex "run" -ex "p sizeof(a)"
Breakpoint 1 at 0x4004c0: f1. (2 locations)
Breakpoint 1, f1 (i=<optimized out>) at vla-1.c:18
18 }
$1 = 0
...
while <optimized out> would be more appropriate.
This patch fixes that in evaluate_subexp_for_sizeof.
Build and reg-tested on x86_64-linux.
2018-07-28 Tom de Vries <tdevries@suse.de>
* eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
with undefined upper bound as <optimized out>.
* gdb.base/vla-optimized-out-o3-strict.exp: New file.
commit 5842d7025f1307a2fb37ae5c4f25fdacfb827d35
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Jul 28 00:00:33 2018 +0000
Automatic date update in version.in
commit d19969ffbfda0576fab881e0b00c2fefae3aa8df
Author: Jim Wilson <jimw@sifive.com>
Date: Fri Jul 27 14:35:29 2018 -0700
RISC-V: Fix gas configure support for riscv*-*-*.
gas/
* configure.tgt (riscv*): Accept as alias for riscv32*.
commit 129eb0f1f16dc7a49799a024a7bcb109d954a1e7
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Fri Jul 27 00:52:23 2018 -0400
Improve gcore manpage and clarify "-o" option
Ref.: https://bugs.debian.org/904628
It has been reported that gcore's manpage is a bit imprecise when it
comes to two things:
- It doesn't explicity say that the command accepts more than one PID
on its CLI.
- It fails to mention that the argument passed through the "-o" option
is actually a prefix that will be used to compose the corefile's
filename, and not the actual filename.
I decided to give it a try and rewrite parts of the text to further
clarify these two points. I ended up rewording the "Description"
section because, IMHO, it was a bit confuse to understand.
To make things consistent, I've also renamed the "$name" variable in
the gcore.in script, and expanded the usage text.
gdb/doc/ChangeLog:
2018-07-27 Sergio Durigan Junior <sergiodj@redhat.com>
* gdb.texinfo (gcore man): Rewrite "Description" and "-o"
option sections to further clarify that gcore can take more
than one PID, and that "-o" is used to specify a prefix, not a
filename.
gdb/ChangeLog:
2018-07-27 Sergio Durigan Junior <sergiodj@redhat.com>
* gcore.in: Rename variable "name" to "prefix". Expand
"usage" text.
commit 1286ab788188bb8f0b0da2a3def4641fb3817f10
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Jul 27 06:35:09 2018 -0700
x86: Check for more than 2 memory references
For
movsd (%esi), %ss:(%edi), %ss:(%eax)
we got
[hjl@gnu-tools-1 tmp]$ as -o x.o x.s
x.s: Assembler messages:
x.s:1: Error: too many memory references for `movsd'
munmap_chunk(): invalid pointer
x.s:1: Internal error (Aborted).
Please report this bug.
[hjl@gnu-tools-1 tmp]$
struct _i386_insn has
const seg_entry *seg[2];
3 memory references will overflow the seg array. We should issue an
error if there are more than 2 memory references.
PR gas/23453
* config/tc-i386.c (parse_operands): Check for more than 2
memory references.
* testsuite/gas/i386/inval.s: Add a movsd test with 3 memory
references.
* testsuite/gas/i386/x86-64-inval.s: Likewise.
* testsuite/gas/i386/inval.l: Updated.
* testsuite/gas/i386/x86-64-inval.l: Likewise.
commit 469d3b57cef3d9e02d4bc584a9cc814ef22cdb4e
Author: John Darrington <john@darrington.wattle.id.au>
Date: Tue Jul 24 12:58:44 2018 +0200
S12Z: Remove ELF_TARGET_ID macro
* elf32-s12z.c (ELF_TARGET_ID): Don't define.
commit 370e4b5079ff8d62be3adee7396948d4c5795091
Author: John Darrington <john@darrington.wattle.id.au>
Date: Tue Jul 24 12:58:43 2018 +0200
Add functions and macros to read and write 24 bit values.
* libbfd.c (bfd_getb24, bfd_getl24): New functions.
(bfd_get_24, bfd_put_24): New macros.
* bfd-in2.h: Regenerate.
commit cd4d353f812a3ecb29cabf0e62319253daf510fa
Author: John Darrington <john@darrington.wattle.id.au>
Date: Tue Jul 24 12:58:42 2018 +0200
S12Z: Remove inappropriate comment.
* elf32-s12z.c (s12z_elf_set_mach_from_flags): Remove comment.
commit fe57a8c9f51516feb4fe999d2ff079157db42c26
Author: John Darrington <john@darrington.wattle.id.au>
Date: Tue Jul 24 12:58:41 2018 +0200
S12Z: Emit uninitialized data in the .bss segment
* scripttempl/elfm9s12z.sc: Put input sections called .common
into the .bss segment.
commit 5b73b52bccfc73172bc472c1e223f54f07a3e858
Author: John Darrington <john@darrington.wattle.id.au>
Date: Tue Jul 24 12:58:40 2018 +0200
S12Z: Emit initialized data segment image.
* scripttempl/elfm9s12z.sc: Emit the data_section at the end of text.
commit 2bb9bbe2e8faa7fd9ee156da0254605720eb16d6
Author: Chenghua Xu <paul.hua.gm@gmail.com>
Date: Fri Jul 27 01:12:43 2018 +0100
MIPS/GAS: Correct the AFL_ASE_MASK macro
Fix an issue with commit 8095d2f70e1a ("MIPS/GAS: Split Loongson MMI
Instructions from loongson2f/3a"), AFL_ASE_MASK should be 0x0006ffff
instead of 0x0004ffff.
2018-07-27 Chenghua Xu <paul.hua.gm@gmail.com>
Maciej W. Rozycki <macro@linux-mips.org>
include/
* elf/mips.h (AFL_ASE_MASK): Correct typo.
commit 16065af1b0497ea33b53948dfd1f64f551787959
Author: Alan Modra <amodra@gmail.com>
Date: Fri Jul 27 08:19:45 2018 +0930
Re: PowerPC Improve support for Gekko & Broadway
PowerPC has replaced use of "long" for insns with "int64_t", in
preparation for 64-bit power10 insns.
* ppc-opc.c (insert_sprbat): Correct function parameter and
return type.
(extract_sprbat): Likewise, variable too.
commit c93cb6280f66565c7ab3dd3077227f8a0039d678
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Jul 27 00:00:35 2018 +0000
Automatic date update in version.in
commit 6af79d7b5a21a40c4036541fbfa821f9d1260ebf
Author: Jon Turney <jon.turney@dronecode.org.uk>
Date: Sat Jul 14 12:17:29 2018 +0100
Fix Cygwin compilation after target_ops C++ conversion.
After f6ac5f3d "Convert struct target_ops to C++", we need to explicitly use
the global namespace when calling ::close() from windows_nat_target methods,
as that object has a close() method.
gdb/ChangeLog:
2018-07-14 Jon Turney <jon.turney@dronecode.org.uk>
* windows-nat.c (windows_nat_target::create_inferior): Update to
call close() in global namespace.
commit 1f75763aa1bfe2f998f4347f0de436092a126980
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Jul 26 08:49:12 2018 -0700
x86: Initialize broadcast_op.bytes to 0
* config/tc-i386.c (check_VecOperations): Initialize
broadcast_op.bytes to 0.
commit 7974897237f7708d440c45bc74cdfb70a2db8124
Author: Tom Tromey <tom@tromey.com>
Date: Thu May 3 16:36:21 2018 -0600
Make psymbols and psymtabs independent of the program space
This patch finally makes partial symbols and partial symtabs
independent of the program space.
Specifically:
It changes add_psymbol_to_list to accept a section index, and changes
the psymbol readers to pass this. At the same time it removes the
code to add the objfile's section offset to the psymbol.
It adds an objfile argument to the psymtab textlow and texthigh
accessors and changes some code to use the raw variants instead.
It removes the "relocate" method from struct quick_symbol_functions,
as it is no longer needed any more.
It changes partial_symbol::address so that the relevant offset is now
applied at the point of use.
gdb/ChangeLog
2018-07-26 Tom Tromey <tom@tromey.com>
* dwarf-index-write.c (add_address_entry): Don't add objfile
offsets.
* dbxread.c (find_stab_function): Rename from
find_stab_function_addr. Return a bound_minimal_symbol.
(read_dbx_symtab): Use raw_text_low, raw_text_high.
Don't add objfile offsets.
(end_psymtab): Use raw_text_low, raw_text_high,
MSYMBOL_VALUE_RAW_ADDRESS.
(read_ofile_symtab): Update.
(process_one_symbol): Update.
* dwarf2read.c (create_addrmap_from_index): Don't add objfile
offsets.
(dw2_relocate): Remove.
(dw2_find_pc_sect_symtab): Bias PC by the text offset before
searching addrmap.
(dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
Update.
(process_psymtab_comp_unit_reader, add_partial_symbol)
(add_partial_subprogram, dwarf2_ranges_read): Update.
(load_partial_dies): Update.
(add_address_entry): Don't add objfile offsets.
(dwarf2_build_include_psymtabs): Update.
(create_addrmap_from_aranges): Don't add objfile offsets.
(dw2_find_pc_sect_compunit_symtab): Update.
* mdebugread.c (parse_symbol): Don't add objfile offsets.
(parse_lines): Remove 'pst' parameter, replace with 'textlow'.
Update.
(parse_partial_symbols): Don't add objfile offsets. Use
raw_text_low, raw_text_high. Update.
(handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
* objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
or call 'relocate' quick function. Clear psymbol_map.
* psympriv.h (struct partial_symbol) <address>: Add section
offset.
<set_unrelocated_address>: Rename from set_address.
<raw_text_low, raw_text_high>: New methods.
<text_low, text_high>: Add objfile parameter.
(add_psymbol_to_bcache): Add 'section' parameter. Call
set_unrelocated_address.
* psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
(find_pc_psymbol): Update.
(fixup_psymbol_section, relocate_psymtabs): Remove.
(dump_psymtab, psym_functions): Update.
(add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
parameter.
(maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
(start_psymtab_common): Update.
* symfile-debug.c (debug_qf_relocate): Remove.
(debug_sym_quick_functions): Update.
* symfile.h (struct quick_symbol_functions) <relocate>: Remove.
* xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
Update.
commit 52948f01e4a11f5fcebdca112036f907ac69e7ad
Author: Tom Tromey <tom@tromey.com>
Date: Thu May 3 16:36:20 2018 -0600
Add validity bits for psymtab high and low fields
Right now some psymtab code checks whether a psymtab's textlow or
texthigh fields are valid by comparing against 0.
I imagine this is mildly wrong in the current environment, but once
psymtabs are relocated dynamically, it will no longer be correct,
because it will be much more normal to see a psymtab with a textlow of
zero -- this will just mean it appears at the start of the text
section.
This patch introduces validity bits to handle this situation more
nicely, and changes users of the code to follow.
gdb/ChangeLog
2018-07-26 Tom Tromey <tromey@redhat.com>
* dbxread.c (end_psymtab): Use text_high_valid and
text_low_valid.
* mdebugread.c (parse_partial_symbols): Use text_low_valid.
(psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
* psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
Update comment.
<text_low_valid, text_high_valid>: New fields.
<set_text_low, set_text_high>: Update.
* xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
commit 4ae976d1df96aee0ecd97ea1235efc4490562932
Author: Tom Tromey <tom@tromey.com>
Date: Thu May 3 16:36:19 2018 -0600
Introduce accessors for psymtab high and low fields
This introduces accessors for the partial symbol table textlow and
texthigh fields. This lets us later arrange to relocate these values
at their point of use.
I did this conversion by renaming the fields. I didn't rename the
fields back afterward, thinking that on the off chance that someone
has a patch touching this area, then a merge would helpfully break
their compile.
I looked at making the fields private, but this interferes with the
memset in allocate_psymtab, and I didn't want to chase this down.
This conversion can be done later if need be.
gdb/ChangeLog
2018-07-26 Tom Tromey <tom@tromey.com>
* dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
Update.
* dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
textlow and texthigh fields.
(process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
Update.
* mdebugread.c (parse_lines, parse_partial_symbols)
(psymtab_to_symtab_1): Update.
* psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
Rename fields. Update comment. Now private.
<text_low, text_high, set_text_low, set_text_high>: New methods.
* psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
(find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
(start_psymtab_common, maintenance_info_psymtabs)
(maintenance_check_psymtabs): Update.
* xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
texthigh fields.
(scan_xcoff_symtab): Update.
commit 02e9e7f7e2bed3b82cb6541f566caf07256b9b2f
Author: Tom Tromey <tom@tromey.com>
Date: Thu May 3 16:36:18 2018 -0600
Introduce partial_symbol::address
This introduces a partial_symbol::address method. This method takes
an objfile argument. This is necessary so that we can later relocate
a partial symbol at its point of use. It also adds an accessor to
compute the unrelocated value; and a method to be used for setting the
field.
Note that the new method doesn't actually perform any relocation yet.
That will come in a subsequent patch. However, the comments are
written to reflect the intended, rather than the temporary, semantics.
gdb/ChangeLog
2018-07-26 Tom Tromey <tromey@redhat.com>
* psympriv.h (struct partial_symbol) <unrelocated_address,
address, set_address>: New methods.
* psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
(fixup_psymbol_section, relocate_psymtabs): Update.
(print_partial_symbols): Add 'objfile' parameter. Update.
(dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
Update.
commit 8a6d4234503bfe1c656d8cd335cac828507df9a3
Author: Tom Tromey <tom@tromey.com>
Date: Thu May 3 16:36:17 2018 -0600
Change representation of psymbol to flush out accessors
This is the psymbol analog to the patch to change the representation
of minimal symbols:
https://sourceware.org/ml/gdb-patches/2013-10/msg00524.html
It has the same rationale: namely, that we're going to change the code
to apply psymbol offsets at runtime. This will be done by adding an
argument to the SYMBOL_VALUE_ADDRESS macro -- but since we can't
convert all the symbol types at once, we need a new approach.
Because gdb now is in C++, this patch changes partial_symbol to
inherit from general_symbol_info, rather than renaming the field.
This simplifies code in some places.
Also, as noted before, these macros implement a kind of "phony
polymorphism" that is not actually useful in practice; so this patch
removes the macros in favor of simply referring directly to members.
In a few cases -- obj_section in this patch and the symbol address in
the future -- methods will be used instead.
Note that this removes the blanket memset from add_psymbol_to_bcache.
This hasn't really been needed since bcache was modified to allow
holes in objects and since psymtab took advantage of that. This
deletion was required due to changing partial_symbol to derive from
general_symbol_info.
gdb/ChangeLog
2018-07-26 Tom Tromey <tom@tromey.com>
* dwarf-index-write.c (write_psymbols, debug_names::insert)
(debug_names::write_psymbols): Update.
* psympriv.h (struct partial_symbol): Derive from
general_symbol_info.
<obj_section>: New method.
(PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
* psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
(find_pc_sect_psymbol, fixup_psymbol_section)
(match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
(print_partial_symbols, recursively_search_psymtabs)
(compare_psymbols, psymbol_hash, psymbol_compare)
(add_psymbol_to_bcache, maintenance_check_psymtabs)
(psymbol_name_matches, psym_fill_psymbol_map): Update.
commit 08994e1ddcc8e5e1e003602409662ae799a1ff30
Author: Tom Tromey <tom@tromey.com>
Date: Thu May 3 16:36:16 2018 -0600
Remove dead code in end_psymtab
I noticed that there is a bit of dead code in end_psymtab.
This deletes it.
Normally I would investigate a fix for the code. However, considering
that the code has been this way a long time (since the first import to
sourceware) and considering that dbxread.c is not as important any
more, I think it's safe to just consider that there's no bug.
gdb/ChangeLog
2018-07-26 Tom Tromey <tromey@redhat.com>
* dbxread.c (end_psymtab): Remove dead code.
commit 63b4ecf76fec65c6853ea01ffab31642533801e9
Author: Tom de Vries <tdevries@suse.de>
Date: Thu Jul 26 10:16:06 2018 +0200
[gdb/testsuite] Add comment in gdb.base/vla-optimized-out.c
2018-07-26 Tom de Vries <tdevries@suse.de>
* gdb.base/vla-optimized-out.c: Add comment about origin of test-case.
commit fa758a70467c37cfe7b261e1dc20d431be3db62e
Author: Alex Chadwick <Alex.Chadwick@cl.cam.ac.uk>
Date: Tue Jul 24 09:21:44 2018 +0930
PowerPC Improve support for Gekko & Broadway
This is a relatively straightforward patch to improve support for the
IBM Gekko and IBM Broadway processors. Broadway is functionally
equivalent to the IBM 750CL, while Gekko's functionality is a subset
of theirs. The patch simplifies this reality and adds -mgekko and
-mbroadway as aliases for -m750cl. I didn't feel it was worth wasting
a PPC_OPCODE_* bit to differentiate Gekko. The patch adds a number of
simplified mnemonics for special purpose register access. Notably,
Broadway adds 4 additional IBAT and DBAT registers but these are not
assigned sequential SPR numbers.
gas/
* config/tc-ppc.c (md_show_usage): Add -mgekko and -mbroadway.
* doc/as.texi (Target PowerPC options): Add -mgekko and -mbroadway.
* doc/c-ppc.texi (PowerPC-Opts): Likewise.
* testsuite/gas/ppc/broadway.d,
* testsuite/gas/ppc/broadway.s: New test for broadway.
* testsuite/gas/ppc/ppc.exp: Run new test.
include/
* opcode/ppc.h (PPC_OPCODE_750): Adjust comment.
opcodes/
* ppc-dis.c (ppc_opts): Add -mgekko and -mbroadway.
(powerpc_init_dialect): Handle bfd_mach_ppc_750.
* ppc-opc.c (insert_sprbat, extract_sprbat): New functions to
support disjointed BAT.
(powerpc_operands): Allow extra bit in SPRBAT_MASK. Add SPRGQR.
(XSPRGQR_MASK, GEKKO, BROADWAY): Define.
(powerpc_opcodes): Add 750cl extended mnemonics for spr access.
commit b358827438360cb5d04fbc59d594583fb506ba65
Author: Alan Modra <amodra@gmail.com>
Date: Thu Jul 26 17:12:07 2018 +0930
Re: Enhance powerpc ld -r --relax
git commit 491993044ba6 broke the powerpc vxworks testsuite.
* testsuite/ld-powerpc/vxworks-relax-2.rd: Update for 2018-07-25
ppc_elf_relax_section changes.
commit 3c3bb0580be0027a1c7187b78c747af74dcfa884
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Fri Jul 13 12:01:16 2018 +0100
gdb: Add switch to disable DWARF stack unwinders
Add a maintenance command to disable the DWARF stack unwinders.
Normal users would not need this feature, but it is useful to allow
extended testing of fallback stack unwinding strategies, for example,
prologue scanners.
This is a partial implementation of the idea discussed in pr gdb/8434,
which talks about a generic ability to disable any frame unwinder.
Being able to arbitrarily disable any frame unwinder would be a more
complex patch, and I was unsure how useful such a feature would really
be, however, I can see (and have) a real need to disable DWARF
unwinders. That's why this patch only targets that specific set of
unwinders.
If in the future we find ourselves adding more switches to disable
different unwinders, then we should probably move to a more generic
solution, and remove this patch.
gdb/ChangeLog:
* dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
DWARF unwinders are disabled.
* dwarf2-frame.c: Add dwarf2read.h include.
(dwarf2_frame_sniffer): Exit early if DWARF unwinders are
disabled.
(dwarf2_frame_unwinders_enabled_p): Define.
(show_dwarf_unwinders_enabled_p): New function.
(_initialize_dwarf2_frame): Register switch to control DWARF
unwinder use.
* dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
* dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
(show_dwarf_cmdlist): Remove static keyword.
* dwarf2read.h (set_dwarf_cmdlist): Declare.
(show_dwarf_cmdlist): Declare.
* NEWS: Document new feature.
gdb/doc/ChangeLog:
* gdb.texinfo (Maintenance Commands): Add description of
maintenance command to control dwarf unwinders.
gdb/testsuite/ChangeLog:
* gdb.base/maint.exp: Add check that dwarf unwinders control flag
is visible.
commit 33cb30a1f932b5a211aa319a01783d4957ae5d57
Author: Alan Modra <amodra@gmail.com>
Date: Thu Jul 26 12:11:11 2018 +0930
Implement PowerPC64 .localentry for value 1
This adds support for ".localentry 1", a new st_other
STO_PPC64_LOCAL_MASK encoding that signifies a function with a single
entry point like ".localentry 0", but unlike a ".localentry 0"
function does not preserve r2.
include/
* elf/ppc64.h: Specify byte offset to local entry for values
of two to six in STO_PPC64_LOCAL_MASK. Clarify r2 return
value for such functions when entering via global entry point.
Specify meaning of a value of one in STO_PPC64_LOCAL_MASK.
bfd/
* elf64-ppc.c (ppc64_elf_size_stubs): Use a ppc_stub_long_branch_r2off
for calls to symbols with STO_PPC64_LOCAL_MASK bits set to 1.
gas/
* config/tc-ppc.c (ppc_elf_localentry): Allow .localentry values
of 1 and 7 to directly set value into STO_PPC64_LOCAL_MASK bits.
ld/testsuite/
* ld-powerpc/elfv2.s: Add .localentry f5,1 testcase.
* ld-powerpc/elfv2exe.d: Update.
* ld-powerpc/elfv2so.d: Update.
commit 6cf212b445b4222bef4f74544896a3be332d5a12
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Jul 26 00:00:15 2018 +0000
Automatic date update in version.in
commit 9e7f3bbbbf5a13e879a4cc3cfa958412ffac0d9d
Author: Tom de Vries <tdevries@suse.de>
Date: Tue Jul 3 17:08:42 2018 +0200
[gdb/breakpoints] Fix sigsegv in info prog at exec catchpoint
With the test-case contained in this patch and compiled for debug we run into
a segfault with trunk gdb:
...
$ gdb catch-follow-exec -batch -ex "catch exec" \
-ex "set follow-exec-mode new" -ex "run" -ex "info prog"
Catchpoint 1 (exec)
process xxx is executing new program: /usr/bin/ls
[New inferior 2 (process 0)]
[New process xxx]
Thread 2.1 "ls" hit Catchpoint 1 (exec'd /usr/bin/ls), in _start () from
/lib64/ld-linux-x86-64.so.2
Segmentation fault (core dumped)
...
The patch fixes the segfault by returning an error in info_program_command
if get_last_target_status returns minus_one_ptid.
The test-case is non-standard, because the standard approach runs into
PR23368, a problem with gdb going to the background.
Build and reg-tested on x86_64-linux.
2018-07-26 Tom de Vries <tdevries@suse.de>
PR breakpoints/23366
* infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
* gdb.base/catch-follow-exec.c: New test.
* gdb.base/catch-follow-exec.exp: New file.
commit 4a1b91eabbe77f4d906a0895121d76a0653c3cf3
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Jul 25 15:28:07 2018 -0700
x86: Expand Broadcast to 3 bits
Expand Broadcast to 3 bits so that the number of bytes to broadcast
can be computed as 1 << (Broadcast - 1). Use it to simplify x86
assembler.
gas/
* config/tc-i386.c (Broadcast_Operation): Add bytes.
(build_evex_prefix): Use i.broadcast->bytes.
(match_broadcast_size): New function.
(check_VecOperands): Use the broadcast field to compute the
number of bytes to broadcast directly. Set i.broadcast->bytes.
Use match_broadcast_size.
opcodes/
* i386-gen.c (adjust_broadcast_modifier): New function.
(process_i386_opcode_modifier): Add an argument for operands.
Adjust the Broadcast value based on operands.
(output_i386_opcode): Pass operand_types to
process_i386_opcode_modifier.
(process_i386_opcodes): Pass NULL as operands to
process_i386_opcode_modifier.
* i386-opc.h (BYTE_BROADCAST): New.
(WORD_BROADCAST): Likewise.
(DWORD_BROADCAST): Likewise.
(QWORD_BROADCAST): Likewise.
(i386_opcode_modifier): Expand broadcast to 3 bits.
* i386-tbl.h: Regenerated.
commit 506f5c41cab71dbc3e562ba367d2dc6b355b64a6
Author: Tom de Vries <tdevries@suse.de>
Date: Wed Jul 18 18:33:07 2018 +0200
[gdb/symtab] Warn about unresolved DW_AT_upper_bound/DW_AT_count
This patch generates a warning if DW_AT_upper_bound or DW_AT_count is defined,
but can't be translated. This is triggered for current gcc in lto mode for
vla test-cases.
Build and reg-tested on x86_64-linux.
2018-07-26 Tom de Vries <tdevries@suse.de>
* dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
DW_AT_count can't be translated to a dynamic prop.
commit 16f808ec99b141bf03091d3b309a335c68d4e9e0
Author: Tom de Vries <tdevries@suse.de>
Date: Fri Jul 20 16:41:00 2018 +0200
[gdb/exp] Fix exception when printing optimized out vla
When compiling vla-optimized-out.c with -O3 and a recent gcc, and trying to
print the vla a in f1, we run into this gdb exception:
...
Cannot find matching parameter at DW_TAG_call_site 0x4003be at main
...
This is a regression introduced by 42dc7699a2 "[gdb/exp] Fix printing of type
of optimized out vla".
This patch fixes the regression by wrapping the ctx.eval call in
dwarf2_locexpr_baton_eval in try/catch, similar to what is done in
dwarf2_evaluate_loc_desc_full.
Build and reg-tested on x86_64-linux.
2018-07-25 Tom de Vries <tdevries@suse.de>
* dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
try/catch.
* gdb.base/vla-optimized-out-o3.exp: New file. Reuse
vla-optimized-out.c.
commit d7154a8d08b142d1258dc2e4189ff0d00cd26493
Author: Jan Vrany <jan.vrany@fit.cvut.cz>
Date: Thu May 31 09:56:33 2018 +0100
Notify about breakpoint modification when enabling/disabling single location
When a single breakpoint location enableness was modified by a CLI
command, observers were not notified about it. This issue is now fixed.
gdb/ChangeLog:
* breakpoint.c (enable_disable_bp_num_loc): Notify observers.
gdb/testsuite/ChangeLog:
* gdb.mi/mi-breakpoint-location-ena-dis.cc: New file.
* gdb.mi/mi-breakpoint-location-ena-dis.exp: New file.
commit a45389f60d4372bdb3484e432935f3169037d88c
Author: Joel Brobecker <brobecker@adacore.com>
Date: Wed Jul 25 10:57:27 2018 -0400
list Tom Tromey as GDB Global Maintainer
gdb/ChangeLog:
* MAINTAINERS (Global Maintainers): Add Tom Tromey.
commit 54691107334ee13f3237e0f754d458c52d5b145e
Author: Thomas Preud'homme <thomas.preudhomme@linaro.org>
Date: Wed Jul 25 09:51:51 2018 +0100
Clarify doc for .arch/.cpu
Documentation for .arch and .cpu directives currently says that it
accepts the same name as -march/-mcpu command-line options respectively.
However it only accept the architecture/CPU part of those options: it
does not accept specifying an extension which is done via
.arch_extension. This patch clarifies that the extension is not
accepted.
2018-07-25 Thomas Preud'homme <thomas.preudhomme@linaro.org>
gas/
* doc/c-arm.texi (.arch directive): Clarify that name must not include
an extension.
(.cpu directive): Likewise.
commit e3d39609d16dccfef8fd1f02090fcd1df82736df
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Jul 25 10:56:45 2018 +0100
Fix potential memory leaks in some of the binutils source files.
* rdcoff.c (parse_coff_struct_type): Free fields array upon early
exit.
(parse_coff_enum_type): Free names and vals arrays upon early
exit.
* rddbg.c (read_section_stabs_debugging_info): Free shandle and
strings and stabs arrays upon early exit.
* readelf.c (get_32bit_section_headers): Free shdrs structure upon
early exit.
(get_64bit_section_headers): Likewise.
(get_32bit_elf_symbols): Generate an error if multiple symbol
table index sections are associated with the same symbol section.
(get_64bit_elf_symbols): Likewise.
(process_dynamic_section): Generate an error if there are multiple
dynamic symbol table sections, multiple dynamic string tables or
multiple dynamic symbol information sections.
commit 491993044ba6cfb2b0fc93c8b3032d5c91cccda5
Author: Alan Modra <amodra@gmail.com>
Date: Wed Jul 25 15:24:55 2018 +0930
Enhance powerpc ld -r --relax
One of the ill effects of ld -r is to mash together sections. That
can result in reduced icache performance at runtime due to unexpected
movement of code. Another problem is that sections can become too
large to link on targets that have limited relative addressing. ld -r
--relax attempts to overcome the large section problem for branches by
inserting trampolines, but the powerpc support added lots of
unnecessary trampolines. This patch trims them somewhat.
bfd/
* elf32-ppc.c (ppc_elf_relax_section): Ignore common or undef locals.
Avoid trashing toff with added when used as a symbol index.
Ignore R_PPC_PLTREL24 addends in unused example code. Avoid
creating unnecessary fixups when relocatable.
ld/
* testsuite/ld-powerpc/big.s: New file.
* testsuite/ld-powerpc/relaxrl.d: New test.
* testsuite/ld-powerpc/powerpc.exp: Run new test.
* testsuite/ld-powerpc/relaxr.d: Adjust.
commit be3e27bb5554e45d54d7cdc74353dda246239475
Author: Alan Modra <amodra@gmail.com>
Date: Wed Jul 25 11:40:48 2018 +0930
Suppress string diagnostics for pre-release GCC
Extends commit 898ade12ee8 to cover other targets.
* elf32-arm.c (elf32_arm_nabi_write_core_note): Disable
-Wstringop-truncation warning for gcc-8.0 too.
* elf32-ppc.c (ppc_elf_write_core_note): Likewise.
* elf64-ppc.c (ppc64_elf_write_core_note): Likewise.
* elfxx-aarch64.c (_bfd_aarch64_elf_write_core_note): Likewise.
* elf32-s390.c (elf_s390_write_core_note): Comment fix.
* elf64-s390.c (elf_s390_write_core_note): Likewise.
commit 5fbad1b90943710ff622e119d1ac6211fda500d0
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Jul 25 00:00:36 2018 +0000
Automatic date update in version.in
commit 380618d68a2b4ee60cebf3941d11a5af4e0aeee0
Author: Keith Seitz <keiths@redhat.com>
Date: Tue Jul 24 12:48:58 2018 -0700
Set CU language before processing any DIEs (symtab/23010 et al)
This patch is another attempt at really fixing the multitude of assertions
being seen where symbols of one language are being added to symbol lists of
another language.
In this specific case, the backtrace command (thread apply all bt full) that
is looking for the compunit containing the PC of the thread. That calls
get_prev_frame several times. This function calls (eventually)
dwarf2_frame_prev_register. That eventually ends up calling
find_pc_compunit_symtab.
In this function (find_pc_sect_compunit_symtab actually), we loop over all
compunits, calling the "quick" function dw2_find_pc_sect_compunit_symtab.
That function calls dw2_instantiate_symtab to read in all the CU's symbols.
Now the fun begins.
dw2_do_instantiate_symtab queues the per_cu for reading, using a default
"pretend" language of language_minimal with the expectation that this will
be set later.
The DIEs of this (only queued) CU are then processed.
The first DIE is DW_TAG_compile_unit. That's handled by read_file_scope.
(Nearly) The first thing read_file_scope does is:
get_scope_pc_bounds (die, &lowpc, &highpc, cu);
This function loops over the children of the current DIE (a compile_unit),
looking for bounds. The first such child is a subprogram, and we attempt to
get its bounds. We use dwarf2_attr to get at DW_AT_high_pc.
This subprogram has DW_AT_specification set, so dwarf_attr (via
follow_die_ref/follow_die_offset) will follow that, but follow_die_offset
*also* attempts to load the containing CU for the spec DIE. That spec DIE
lives inside a CU that is a partial_unit and has no language attribute. So
it simply inherits the language from the CU that elicited the read. [That
all happens in follow_die_offset.]
The original CU's language is still language_minimal -- we haven't gotten to
the line in read_file_scope that actually sets the language yet!
And that is the cause of these problems. The call to prepare_one_comp_unit
needs to be the *first* thing that is done when reading a CU so that the
CU's language can be recorded (and inherited by any referenced
partial_units).
Since a test reproducer for this has been so elusive, this patch also adds a
wrapper function around add_symbol_to_list which asserts when adding a
symbol of one language to a list containing symbols of a different language.
gdb/ChangeLog:
2017-07-24 Keith Seitz <keiths@redhat.com>
PR symtab/23010
* dwarf2read.c (dw2_add_symbol_to_list): New function.
(fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
instead of add_symbol_to_list.
(read_file_scope): Call prepare_one_comp_unit before reading
any other DIEs.
commit 4b17aefe753a8d62ccd491b6a39dabdc69e91445
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Tue Jul 24 14:14:17 2018 -0400
Fix indentation in scoped_mmap.h
gdb/ChangeLog:
* common/scoped_mmap.h (class scoped_mmap): Fix indentation.
commit 29d17e4773334ae60ffac7ea7f92d507c23b70f6
Author: Tom Tromey <tom@tromey.com>
Date: Sun Jul 22 09:34:42 2018 -0600
Remove some unnecessary declarations and configury
configure checks for declarations of free, malloc, and realloc; but
the results are only used in a single spot: utils.c. I think these
checks are long since obsolete, so this patch removes them.
Grepping the entire tree for these HAVE_DECL_ symbols, the only uses
of possible interest to gdb come from bfd/sysdep.h; but this is not
(nor should be) included by gdb. (And furthermore I think the code
there is probably also obsolete.)
gdb/ChangeLog
2018-07-24 Tom Tromey <tom@tromey.com>
* utils.c (malloc, realloc, free): Don't declare.
* configure, config.in: Rebuild.
* configure.ac: Don't check for declarations of free, malloc, or
realloc.
commit 56522fc5af76ec88f650d8d305c0aa3d669c2849
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Tue Jul 24 09:47:47 2018 -0700
x86: Use unsigned int to iterate through vector operands
Use unsigned int to iterate through multi-length vector operands to avoid
sign-extension.
* config/tc-i386.c (build_vex_prefix): Use unsigned int to
iterate through multi-length vector operands.
(build_evex_prefix): Likewise.
commit 1d97232ae3655ad4f2661af34f4fa6038d492a25
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Jul 24 14:07:54 2018 +0100
Updated French translation for ld/ and Swedish translation for binutils/
bin * po/sv.po: Updated Swedish translation.
ld * po/fr.po: Updated French translation.
commit 7b8d9e8cec30b366392aaebc513063eff0115548
Author: Alan Modra <amodra@gmail.com>
Date: Tue Jul 24 09:11:35 2018 +0930
PR23431, Messages composed from pieces can't be properly translated
PR 23431
* dwarf.c (display_formatted_table): Replace "what" parameter
with "is_dir". Expand messages. Fix capitalisation.
* testsuite/binutils-all/dw5.W: Update expected output.
commit 67ce483baa43121a17195efe4b14a183e9fd8232
Author: Alan Modra <amodra@gmail.com>
Date: Tue Jul 24 16:35:52 2018 +0930
PR23430, Indices misspelled
PR 23430
include/
* elf/common.h (SHT_SYMTAB_SHNDX): Fix comment typo.
bfd/
* dwarf2.c (dwarf_debug_section_enum): Fix comment typo.
* elf.c (bfd_section_from_shdr, elf_sort_sections): Likewise.
binutils/
* elfcomm.h (struct archive_info): Rename uses_64bit_indicies
to uses_64bit_indices.
* elfcomm.c (setup_archive): Update uses of above.
* readelf.c (process_archive): Likewise.
(get_section_type_name): Rename indicies to indices.
(get_32bit_elf_symbols, get_64bit_elf_symbols): Likewise.
(process_section_groups): Likewise.
cpu/
* or1kcommon.cpu (spr-reg-indices): Fix description typo.
opcodes/
* or1k-desc.h: Regenerate.
commit 4174bfff8a88f21659446cf631dbbbad615b4a9e
Author: Jan Beulich <jbeulich@novell.com>
Date: Tue Jul 24 09:46:27 2018 +0200
x86-64: correct AVX512F vcvtsi2s{d,s} handling
Just like for their AVX counterparts and CVTSI2S{D,S}, a memory source
here is ambiguous and hence
- in source files should be qualified with a suitable suffix or operand
size specifier (not doing so is an error in Intel mode, and will gain
a diagnostic in AT&T mode in the future),
- in disassembly should be properly suffixed (the Intel operand size
specifiers were emitted correctly already).
commit f47194a9cde616ed1c207d618d4827d1216ef650
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Jul 24 00:00:43 2018 +0000
Automatic date update in version.in
commit 2ae0bdddef8193e3d2ffc352f4fc035808b5fce4
Author: Max Filippov <jcmvbkbc@gmail.com>
Date: Sun Jul 22 21:45:48 2018 -0700
xtensa: ld: convert tests to run_dump_test
Three tests with individual .exp files can be implemented in less
verbose way with run_dump_test infrastructure. Convert them.
ld/
2018-07-23 Max Filippov <jcmvbkbc@gmail.com>
* testsuite/ld-xtensa/coalesce.d: New file.
* testsuite/ld-xtensa/coalesce.exp: Remove file.
* testsuite/ld-xtensa/diff_overflow.d: New file.
* testsuite/ld-xtensa/diff_overflow.exp: Remove file.
* testsuite/ld-xtensa/lcall.d: New file.
* testsuite/ld-xtensa/lcall.exp: Remove file.
* testsuite/ld-xtensa/xtensa.exp (coalesce, diff_overflow)
(lcall): New tests.
commit f5e263426f1f191ae85584a82dd793cfd3c951e9
Author: Max Filippov <jcmvbkbc@gmail.com>
Date: Thu Jul 19 21:00:29 2018 -0700
xtensa: ld: add tests for static linkage relaxation
ld/
2018-07-23 Max Filippov <jcmvbkbc@gmail.com>
* testsuite/ld-xtensa/relax-static-defs.s: New file.
* testsuite/ld-xtensa/relax-static-local-pie.d: New file.
* testsuite/ld-xtensa/relax-static-local-shared.d: New file.
* testsuite/ld-xtensa/relax-static-local.s: New file.
* testsuite/ld-xtensa/relax-static-pie.d: New file.
* testsuite/ld-xtensa/relax-static-shared.d: New file.
* testsuite/ld-xtensa/relax-static.s: New file.
* testsuite/ld-xtensa/relax-undef-weak-local-pie.d: New file.
* testsuite/ld-xtensa/relax-undef-weak-local-shared.d: New file.
* testsuite/ld-xtensa/relax-undef-weak-local.s: New file.
* testsuite/ld-xtensa/relax-undef-weak-pie.d: New file.
* testsuite/ld-xtensa/relax-undef-weak-shared.d: New file.
* testsuite/ld-xtensa/relax-undef-weak.s: New file.
* testsuite/ld-xtensa/xtensa.exp: New file.
commit da90fdf9936c532665e2a743d2fc5cf5e8f6816c
Author: Max Filippov <jcmvbkbc@gmail.com>
Date: Sat Jul 21 18:32:32 2018 -0700
xtensa: ld: rename xtensa.exp to xtensa-linux.exp
xtensa.exp in fact only checks xtensa*-*-linux* configurations, rename
it to xtensa-linux.exp to allow xtensa.exp to check xtensa*-*-*.
ld/
2018-07-23 Max Filippov <jcmvbkbc@gmail.com>
* testsuite/ld-xtensa/xtensa.exp: Rename to xtensa-linux.exp.
commit f82863d797e461b936dff2b659a3aa65088ee87e
Author: Max Filippov <jcmvbkbc@gmail.com>
Date: Sun Jul 22 18:59:11 2018 -0700
xtensa: move dynamic relocations sections consistency check
The function elf_xtensa_finish_dynamic_sections checks that sizes of
sections .rela.dyn and .rela.plt match number of corresponding relocation
records, but the check is only done when .rela.plt is non-empty, so, e.g.
it is never run for the static PIE.
Rearrange the test so that .rela.dyn and .rela.plt are checked always.
bfd/
2018-07-23 Max Filippov <jcmvbkbc@gmail.com>
* elf32-xtensa.c (elf_xtensa_finish_dynamic_sections): Move
relocation sections consistency check to always check both
.rela.dyn and .rela.plt when they exist. Rearrange variable
definition and assignment places.
commit 5d3a462f05cba5b0c0c96de899b84fb84155c760
Author: Max Filippov <jcmvbkbc@gmail.com>
Date: Sun Jul 22 13:52:28 2018 -0700
xtensa: fix relaxation of undefined weak references in shared objects
The change c451bb34ae8b ("xtensa: don't emit dynamic relocation for weak
undefined symbol") didn't properly handle shrinking of relocation
sections due to coalescing of references to a dynamic undefined weak
symbol in a shared object, which resulted in the following assertion
failure in ld when linking uClibc-ng libthread_db for xtensa:
BFD (GNU Binutils) 2.31 internal error, aborting at elf32-xtensa.c:3269
in elf_xtensa_finish_dynamic_sections
Shrink dynamic relocations section for dynamic undefined weak symbols
when linking a shared object.
bfd/
2018-07-23 Max Filippov <jcmvbkbc@gmail.com>
* elf32-xtensa.c (shrink_dynamic_reloc_sections): Shrink dynamic
relocations section for dynamic undefined weak symbols when
linking a shared object.
commit 01bcaf636ad0b1d5fe44a21917ec900af86072a8
Author: Tom Tromey <tom@tromey.com>
Date: Sun Jul 15 18:07:40 2018 -0600
Avoid ubsan complaint in BFD
I built gdb with ubsan and ran the test suite.
One complaint was due to bfd_get_elf_phdrs passing NULL to memcpy.
This patch avoids the complaint.
bfd/ChangeLog
2018-07-23 Tom Tromey <tom@tromey.com>
* elf.c (bfd_get_elf_phdrs): Don't call memcpy with size 0.
commit e2b7fbc46d08605bd2807678475e01be42e589e6
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Jul 23 06:32:20 2018 -0700
x86: Add a test for missing broadcast
For
.intel_syntax noprefix
vcvtps2qq xmm0, DWORD PTR [rax]
we should get
Error: broadcast is needed for operand of such type for `vcvtps2qq'
* testsuite/gas/i386/inval-avx512f.s: Add a test for missing
broadcast.
* testsuite/gas/i386/x86-64-inval-avx512f.s: Likewise.
* testsuite/gas/i386/inval-avx512f.l: Updated.
* testsuite/gas/i386/x86-64-inval-avx512f.l: Likewise.
commit c265869848bc3f3715161ed4174d7ae73e495fc3
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Jul 23 05:43:43 2018 -0700
x86: Remove broadcast_not_on_src_operand
Remove broadcast_not_on_src_operand since it is unused.
* config/tc-i386.c (i386_error): Remove
broadcast_not_on_src_operand.
(match_template): Likewse.
commit 04e65276fa99a0de996142b054bb76f8491ae103
Author: Claudiu Zissulescu <claziss@gmail.com>
Date: Mon Jul 23 11:09:43 2018 +0200
[ARC] Fix decoding of w6 signed short immediate.
gas/
Claudiu Zissulescu <claziss@synopsys.com>
* testsuite/gas/arc/st.d: Fix test.
opcodes/
Claudiu Zissulescu <claziss@synopsys.com>
* arc-opc.c (extract_w6): Fix extending the sign.
commit 47e6f81c7c269ab5ef2b3004bb5ebe0de5cfb969
Author: Claudiu Zissulescu <claziss@gmail.com>
Date: Mon Jul 23 11:09:43 2018 +0200
[ARC] Allow vewt instruction for ARC EM family.
opcode/
Claudiu Zissulescu <claziss@synopsys.com>
* arc-tbl.h (vewt): Allow it for ARC EM family.
commit f02806be1ff3d25fdf4d9e06ced33c4b138458aa
Author: claziss <claziss@synopsys.com>
Date: Mon Jul 23 11:09:43 2018 +0200
[ARC] Fix case-sensitivity for extension instructions.
In ARC assembler, we accept case insensitive mnemonics, but this was
not the case for extension instruction, fix it and add a test.
gas/
Claudiu Zissulescu <claziss@synopsys.com>
* config/tc-arc.c (tokenize_extinsn): Convert to lower case the
name of extension instructions.
* testsuite/gas/arc/textinsn_case.d: New file.
* testsuite/gas/arc/textinsn_case.s: Likewise.
commit 898ade12ee835c3a55460ae4fe311f40a01cf586
Author: Andreas Krebbel <krebbel@linux.vnet.ibm.com>
Date: Mon Jul 23 10:29:37 2018 +0200
S/390: Suppress string diagnostics for pre-release GCC
Building for S/390 currently fails when using a GCC 8.1 pre-release
version like 8.0.1 (as it is used by F28). Fixed with the attached patch.
bfd/ChangeLog:
2018-07-23 Andreas Krebbel <krebbel@linux.ibm.com>
* elf32-s390.c (elf_s390_write_core_note): Make GCC version 8.0 to
be covered by the check as well.
* elf64-s390.c (elf_s390_write_core_note): Likewise.
commit 49ddb0fbdad2bdf5ff4fcbcf50470f16c0f1f34a
Author: Alan Modra <amodra@gmail.com>
Date: Mon Jul 23 12:31:18 2018 +0930
PowerPC64 fails reloc-discard test
PowerPC64 fails here due to emitting a warning about discarded dynamic
relocations. That's a good thing, since accidentally discarding
dynamic relocations will likely result in a non-working binary.
* testsuite/ld-elf/reloc-discard-warn.d: New.
* testsuite/ld-elf/reloc-discard.d: Skip test on PowerPC64.
commit bb71536f2841449252952ac4f759c1e0eca7e137
Author: Alan Modra <amodra@gmail.com>
Date: Mon Jul 23 12:59:23 2018 +0930
power9 mfupmc/mtupmc
PR 23419
* ppc-opc.c (powerpc_opcodes): Add mtupmc/mfupmc/mfpmc extended
opcode variants for mtspr/mfspr encodings.
commit cf4088a92f240b01e6db8f39a5a3abfa918f6f2c
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sun Jul 22 23:23:11 2018 -0400
Remove some unused variables
Found using the newly-enabled -Wunused-variable.
gdb/ChangeLog:
* aarch64-linux-nat.c
(aarch64_linux_nat_target::stopped_data_address): Remove unused
variable.
* arm-linux-nat.c (fetch_regs): Likewise.
(store_regs): Likewise.
(fetch_vfp_regs): Likewise.
(store_vfp_regs): Likewise.
(arm_linux_nat_target::insert_hw_breakpoint): Likewise.
(arm_linux_nat_target::remove_hw_breakpoint): Likewise.
(arm_linux_nat_target::insert_watchpoint): Likewise.
(arm_linux_nat_target::remove_watchpoint): Likewise.
* mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
Likewise.
* nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
Likewise.
* ppc-linux-nat.c (fetch_register): Likewise.
(fetch_all_gp_regs): Likewise.
(fetch_ppc_registers): Likewise.
(store_all_gp_regs): Likewise.
(store_ppc_registers): Likewise.
(hwdebug_insert_point): Likewise.
(can_use_watchpoint_cond_accel): Likewise.
* remote-sim.c (gdb_os_write_stdout): Likewise.
gdb/gdbserver/ChangeLog:
* linux-mips-low.c (mips_collect_ptrace_register): Remove unused
variable.
(mips_supply_ptrace_register): Likewise.
commit 6018c5acdf8b33b8f816de4757045379485f6ad6
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Jul 23 00:01:17 2018 +0000
Automatic date update in version.in
commit a0de763e32b381369896fef63d221376f29a9113
Author: Tom Tromey <tom@tromey.com>
Date: Sun Jul 8 21:05:41 2018 -0600
Add -Wunused-variable to warnings.m4
This adds -Wunused-variable to the build. This required a special
check in configure in order to work around a bug in GCC 4.9. Simon
ound the correct test to use, so I've added him to the ChangeLog.
gdb/ChangeLog
2018-07-22 Simon Marchi <simon.marchi@polymtl.ca>
Tom Tromey <tom@tromey.com>
* warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
test for it.
* configure: Rebuild.
gdb/gdbserver/ChangeLog
2018-07-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
commit 3b20124b3d6df31b5bde0f6bcd718cc40de8d49b
Author: Tom Tromey <tom@tromey.com>
Date: Sun Jul 8 20:31:58 2018 -0600
Conditionally define xmltarget_${name} variable in regdat.sh
This changes regdat.sh to emit the xmltarget_${name} variable inside
the #ifndef IN_PROCESS_AGENT block. This avoids a -Wunused-variable
warning for some builds. Thanks to Pedro for investigating this one.
gdb/ChangeLog
2018-07-22 Tom Tromey <tom@tromey.com>
* regformats/regdat.sh: Define xmltarget_${name} inside
#ifndef IN_PROCESS_AGENT.
commit b0a7723d29ddd39345a4af30c130ebc89c623d21
Author: Tom Tromey <tom@tromey.com>
Date: Sun Jul 8 12:09:22 2018 -0600
Remove unused variables from gdbserver
This removes a few unused variables from gdbserver.
The x86-tdesc.h change is a bit unusual for this series. This file
was not defining the multiple-include guard symbol, so I've added that
here. Also, it is hard to determine when i386_expedite_regs will be
needed, so this patch simply marks it ATTRIBUTE_UNUSED.
gdb/gdbserver/ChangeLog
2018-07-22 Tom Tromey <tom@tromey.com>
* win32-low.c (win32_create_inferior): Remove unused variables.
* gdbreplay.c (remote_open): Remove unused variable.
* remote-utils.c (remote_prepare): Remove unused variable.
* x86-tdesc.h (X86_TDESC_H): Define.
(amd64_expedite_regs): Define conditionally.
(i386_expedite_regs): Mark ATTRIBUTE_UNUSED.
* linux-x86-tdesc.c (i386_tdescs): Move inside #if.
* remote-utils.c (readchar): Remove unused variable.
commit 8c8807f43924ec0f936b9bb59fd73d8fa4956e9e
Author: Tom Tromey <tom@tromey.com>
Date: Sun Jul 8 12:18:19 2018 -0600
Remove unused declaration from value.c
This removes an unused declaration from value_fetch_lazy_bitfield.
Because it is not completely clear if the check_typedef call is needed
somewhere beneath this function, this is broken out into a separate
patch.
gdb/ChangeLog
2018-07-22 Tom Tromey <tom@tromey.com>
* value.c (value_fetch_lazy_bitfield): Remove unused variable.
commit c486b6106a31e442cba13c74a103aad8463bbd20
Author: Tom Tromey <tom@tromey.com>
Date: Sun Jul 8 12:18:09 2018 -0600
Pass the correct argument to the observer in reread_symbols
This is actually a patch I found via another route. Joel had asked me
to write a test, but I still have not found the time to do this.
Meanwhile, -Wunused-variable also found this error.
gdb/ChangeLog
2018-07-22 Tom Tromey <tom@tromey.com>
* symfile.c (reread_symbols): Notify iter, not objfile.
commit 494f80a9321dccb939bf39afed66649702b563fe
Author: Tom Tromey <tom@tromey.com>
Date: Sun Jul 8 12:17:51 2018 -0600
Fix ravenscar-thread.c to use arch_ops
The change to turn target ops into methods accidentally introduced a
bug in ravenscar-thread.c, changing some calls that were using
"arch_ops" to use the target beneath.
This patch changes ravenscar-thread.c to use these variables where
appropriate.
gdb/ChangeLog
2018-07-22 Tom Tromey <tom@tromey.com>
* ravenscar-thread.c (ravenscar_thread_target::store_registers):
Use arch_ops.
(ravenscar_thread_target::prepare_to_store): Likewise.
commit c51f6a54c28aaf2039f95553ff897338475fe8bf
Author: Tom Tromey <tom@tromey.com>
Date: Sun Jul 8 12:17:36 2018 -0600
Call value_fetch_lazy when needed in pretty-printers
This removes some unused variables, and replaces the calls to
value_contents_for_printing with a call to value_fetch_lazy, when
needed.
gdb/ChangeLog
2018-07-22 Tom Tromey <tom@tromey.com>
* python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
unused variable. Call value_fetch_lazy when needed.
* guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
Remove unused variable. Call value_fetch_lazy when needed.
commit 374fd1fd7b9bbefc15c003f14f4229ccbfc1bfc8
Author: Tom Tromey <tom@tromey.com>
Date: Sun Jul 8 12:17:23 2018 -0600
Remove declarations from m32c-tdep.c
This removes some unused declarations from m32c-tdep.c. Initially I
had thought that this entire code block was dead, but Simon pointed
out that it is not; so this patch simply removes some declarations.
gdb/ChangeLog
2018-07-22 Tom Tromey <tom@tromey.com>
* m32c-tdep.c (mark_dma): Return void.
(make_regs): Remove unused declarations.
commit d5e9a511c4bbb25a7e6844169aa9e5b3fc7ef453
Author: Tom Tromey <tom@tromey.com>
Date: Sun Jul 8 12:16:20 2018 -0600
Call some functions in guile/ for effect
This changes a couple of spots in guile/ to remove a variable
declaration but to still call a function for effect.
gdb/ChangeLog
2018-07-22 Tom Tromey <tom@tromey.com>
* guile/scm-cmd.c (gdbscm_dont_repeat): Call
cmdscm_get_valid_command_smob_arg_unsafe for effect.
* guile/scm-block.c (gdbscm_make_block_syms_iter): Call
bkscm_get_valid_block_smob_arg_unsafe for effect.
commit 996d693a07973411897103a36e89bccee6c94479
Author: Tom Tromey <tom@tromey.com>
Date: Sun Jul 8 12:16:00 2018 -0600
Use a previously unused variable in bfin-tdep.c
This changes bfin_push_dummy_call to use the result of check_typedef.
Calling check_typedef for effect was probably ok as well, but this
seemed a little nicer.
gdb/ChangeLog
2018-07-22 Tom Tromey <tom@tromey.com>
* bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
value_type.
commit 157663703656814c751998747faadf41711e51ec
Author: Tom Tromey <tom@tromey.com>
Date: Sun Jul 8 12:39:36 2018 -0600
Unused variable fixes related to conditional compilation
This patch fixes various unused variable warnings that are related to
conditional compilation. In these cases, either the variable is now
protected by the same #if as its uses, or the declaration is simply
lowered into the conditionally-compiled block.
gdb/ChangeLog
2018-07-22 Tom Tromey <tom@tromey.com>
* windows-nat.c (saved_context): Conditionally define.
* remote.c (remote_target::remote_btrace_maybe_reopen):
Conditionally declare "warned".
* inflow.c (sigquit_ours): Conditionally define.
(new_tty): Move "tty" declaration inside #if.
* guile/guile.c (guile_datadir): Conditionally define.
* charset.c (set_be_le_names): Move some declarations inside #if.
* btrace.c (parse_xml_btrace): Move "errcode" declaration inside
#if.
(parse_xml_btrace_conf): Likewise.
commit f4e80e1301f916ae7952abaf4ff1ebeac00951b3
Author: Tom Tromey <tom@tromey.com>
Date: Mon Jul 16 09:33:42 2018 -0600
Remove an unused variable from spu_get_overlay_table
This removes an unused variable from spu_get_overlay_table, replacing
it with an explanatory comment.
gdb/ChangeLog
2018-07-22 Tom Tromey <tom@tromey.com>
* spu-tdep.c (spu_get_overlay_table): Remove unused variable.
commit 8d49165d8382e29bff8d60d208934596e3994305
Author: Tom Tromey <tom@tromey.com>
Date: Sun Jul 8 12:15:04 2018 -0600
Simple unused variable removals
This patch holds all the straightforward unused variable deletions.
gdb/ChangeLog
2018-07-22 Tom Tromey <tom@tromey.com>
* guile/scm-value.c (gdbscm_value_call): Remove unused variables.
* guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
(vlscm_convert_typed_value_from_scheme): Remove unused variable.
* buildsym-legacy.c (get_macro_table): Remove unused variable.
* stack.c (frame_apply_level_command): Remove unused variable.
* tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
* sparc64-tdep.c (adi_examine_command): Remove unused variable.
* rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
unused variable.
* nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
* mep-tdep.c (mep_push_dummy_call): Remove unused variable.
* ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
variable.
* amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
* arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
variable.
* breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
Remove unused variable.
* cli/cli-script.c (recurse_read_control_structure): Remove unused
variable.
* common/tdesc.c (print_xml_feature::visit): Remove unused
variable.
* compile/compile-object-load.c (store_regs): Remove unused
variables.
* complaints.c (clear_complaints): Remove unused variable.
* corelow.c (core_target_open): Remove unused variable.
* fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
variable.
* guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
variable.
* guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
variable.
* guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
variable.
* guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
variable.
* hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
variable.
* ia64-tdep.c (examine_prologue): Remove unused variable.
* infcall.c (run_inferior_call): Remove unused variable.
* inferior.c (exit_inferior): Remove unused variable.
* infrun.c (infrun_thread_ptid_changed): Remove unused variable.
* linespec.c (decode_line_2): Remove unused variable.
* linux-nat.c (super_close): Remove.
* linux-tdep.c (linux_info_proc): Remove unused variable.
* mi/mi-main.c (mi_execute_command): Remove unused variable.
* microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
Remove unused variable.
* parse.c (find_minsym_type_and_address): Remove unused variable.
* printcmd.c (info_symbol_command, printf_floating): Remove unused
variable.
* python/py-breakpoint.c (bppy_set_commands): Remove unused
variable.
* python/py-unwind.c (unwind_infopy_dealloc): Remove unused
variables.
* record-btrace.c (record_btrace_target::store_registers): Remove
unused variable.
(cmd_show_record_btrace_cpu): Remove unused variable.
* riscv-tdep.c (riscv_register_reggroup_p)
(riscv_push_dummy_call, riscv_return_value): Remove unused
variable.
* rust-exp.y (literal): Remove unused variable.
* rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
unused variable.
<STRUCTOP_ANONYMOUS>: Likewise.
* s390-linux-tdep.c (s390_linux_init_abi_31)
(s390_linux_init_abi_64): Remove unused variable.
* ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
(file_select_thread, net_windows_open, _initialize_ser_windows):
Remove unused variables.
* symtab.c (find_pc_sect_line): Remove unused variable.
* target-memory.c (compute_garbled_blocks): Remove unused
variable.
(target_write_memory_blocks): Remove unused variable.
* target.c (target_stack::unpush): Remove unused variables.
* tracepoint.c (start_tracing, all_tracepoint_actions)
(merge_uploaded_trace_state_variables)
(print_one_static_tracepoint_marker): Remove unused variable.
* unittests/basic_string_view/element_access/char/1.cc (test01):
Remove unused variable.
* windows-nat.c (windows_continue, windows_add_all_dlls)
(do_initial_windows_stuff, windows_nat_target::create_inferior):
Remove unused variables.
commit c7213af9b3e47d3341f95fe24549681029a53853
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sun Jul 22 12:00:39 2018 -0700
x86: Determine vector length from the last vector operand
Determine VEX/EVEXE vector length from the last multi-length vector
operand.
* config/tc-i386.c (build_vex_prefix): Determine vector
length from the last multi-length vector operand.
(build_evex_prefix): Likewise.
commit 17cbafdbbef78d7e05ade53d4cc867fa8ac2f432
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sat Jul 21 22:21:57 2018 -0400
Fix -Wunused-variable warnings related to conditional compilation
Some variables are not used when !HAVE_ELF, so avoid declaring them in
that case.
gdb/ChangeLog:
* arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
attr_profile in HAVE_ELF.
* rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
HAVE_ELF.
commit dcc0660f04bb74948299fb33c98620cfd1ceabb2
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Jul 22 00:01:12 2018 +0000
Automatic date update in version.in
commit dd40ce22d01afa0676d2eb5163d77ca3262e01f9
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sat Jul 21 10:57:54 2018 -0700
gas/config/tc-i386.c: Break long line
* config/tc-i386.c (match_simd_size): Break long line.
(match_mem_size): Likewise.
commit 2376f038d10f901d3e1a2777407f350e4e54d284
Author: Eric Botcazou <ebotcazou@gcc.gnu.org>
Date: Sat Jul 21 15:00:40 2018 +0200
Initialize GOT slot for local symbol in non-PIC link.
On ARM/VxWorks 7, the R_ARM_TARGET2 relocation used for exception handling
is R_ARM_GOT_PREL; moreover in Ada you can define local exceptions. In this
case, you may end up with a GOT relocation against a local symbol in a
non-PIC link and the ARM linker leaves the GOT slot uninitialized, unlike
for example the i386 or the SPARC linkers in the same situation.
bfd/
* elf32-arm.c (elf32_arm_final_link_relocate) <R_ARM_GOT32>: Small
cleanup for the case of a global symbol that binds locally. Also
install a value in the GOT slot in the case of a local symbol in
a non-PIC link.
commit 0ee6c332f36222a73abee41bc5168bacf78c9189
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Fri Jul 20 22:19:04 2018 -0400
Rename some frame unwind function parameters
I am currently working with these functions, and though this renaming
could help to reason about the code. Some functions take a frame and
will return the value associated to that frame, others will return the
value associated to the previous frame. Those usually conveniently
contain "unwind" in their name, but naming the variable next_frame
instead of frame helps remembering which frame we are dealing with.
I also included a little typo fix at the top of frame.h.
gdb/ChangeLog:
* frame.c (frame_register_unwind): Change parameter name.
(frame_unwind_register): Likewise.
(frame_unwind_register_value): Likewise.
(frame_unwind_register_signed): Likewise.
(frame_unwind_register_unsigned): Likewise.
* frame.h (frame_register_unwind): Likewise.
(frame_unwind_register): Likewise.
(frame_unwind_register_value): Likewise.
(frame_unwind_register_signed): Likewise.
(frame_unwind_register_unsigned): Likewise.
(frame_unwind_arch): Likewise.
commit bef891d212194e71264a6276094efffddb06c586
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Jul 21 00:00:33 2018 +0000
Automatic date update in version.in
commit e2e31f1039e614b11277f5f1acc4182cd7fd3f2c
Author: Maciej W. Rozycki <macro@mips.com>
Date: Sat Jul 21 00:14:01 2018 +0100
Update my e-mail address, limit maintenance to MIPS I-IV ISAs
binutils/
* MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
ISA maintenance.
gdb/
* MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
ISA maintenance.
sim/
* MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
ISA maintenance.
commit 7a54636a02e089436f69446a631451593ffeca30
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Jul 20 12:47:25 2018 -0700
x86: Rename match_reg_size to match_operand_size
match_reg_size checks size for both memory and register operands. This
patch renamed match_reg_size to match_operand_size and updated comments
for
commit 3ac21baa8498d3aa9951f79e2c3336d532eeff7b
Author: Jan Beulich <jbeulich@novell.com>
Date: Mon Jul 16 08:19:21 2018 +0200
x86: fix operand size checking
which added one argument to match_reg_size, match_simd_size and
match_mem_size.
* config/tc-i386.c (match_reg_size): Renamed to ...
(match_operand_size): This. Update comments.
(match_simd_size): Update comments. Replace match_reg_size
with match_operand_size.
(match_mem_size): Likewise.
(operand_size_match): Replace match_reg_size with
match_operand_size.
commit d5f4da5e334dc4d87d7751a816c15d2bf4db3d43
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Jul 20 09:52:35 2018 -0700
ld: Discard .rel.* and .rela.* sections
On many targets, like x86, .rel.dyn/.rela.dyn section is combined from
different .rel/.rela sections by -z combreloc. To discard dynamic
relocation section, we need to discard .rel.* and .rela.* sections
instead of .rel.dyn and .rela.dyn sections.
Note: This test fails for targets which issue a warning when dynamic
section is discarded.
* testsuite/ld-elf/reloc-discard.ld: Discard .rel.* and .rela.*
sections instead of .rel.dyn and .rela.dyn sections.
commit 2d38991535ecfcd092f3c57da84844efc3d49877
Author: Maciej W. Rozycki <macro@mips.com>
Date: Fri Jul 20 17:28:08 2018 +0100
MIPS/Linux/native: Convert to `get_ptrace_pid' for PID extraction
Use `get_ptrace_pid' to get the ptrace PID from `inferior_ptid' rather
than extracting it by hand.
gdb/
* mips-linux-nat.c (mips_linux_nat_target::read_description):
Call `get_ptrace_pid' rather than extracting the ptrace PID by
hand.
commit 241e64e3b42cd9eba514b8e0ad2ef39a337f10a5
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Jul 20 09:18:47 2018 -0700
x86: Add a GNU_PROPERTY_X86_ISA_1_USED note if needed
When -z separate-code, which is enabled by default for Linux/x86, is
used to create executable, ld won't place any data in the code-only
PT_LOAD segment. If there are no data sections placed before the
code-only PT_LOAD segment, the program headers won't be mapped into
any PT_LOAD segment. When the executable tries to access it (based
on the program header address passed in AT_PHDR), it will lead to
segfault. This patch inserts a GNU_PROPERTY_X86_ISA_1_USED note if
there may be no data sections before the text section so that the
first PT_LOAD segment won't be code-only and will contain the program
header.
Testcases are adjusted to either pass "-z noseparate-code" to ld or
discard the .note.gnu.property section. A Linux/x86 run-time test is
added.
bfd/
PR ld/23428
* elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): If the
separate code program header is needed, make sure that the first
read-only PT_LOAD segment has no code by adding a
GNU_PROPERTY_X86_ISA_1_USED note.
ld/
PR ld/23428
* testsuite/ld-elf/linux-x86.S: New file.
* testsuite/ld-elf/linux-x86.exp: Likewise.
* testsuite/ld-elf/pr23428.c: Likewise.
* testsuite/ld-elf/sec64k.exp: Pass "-z noseparate-code" to ld
for Linux/x86 targets.
* testsuite/ld-i386/abs-iamcu.d: Likewise.
* testsuite/ld-i386/abs.d: Likewise.
* testsuite/ld-i386/pr12718.d: Likewise.
* testsuite/ld-i386/pr12921.d: Likewise.
* testsuite/ld-x86-64/abs-k1om.d: Likewise.
* testsuite/ld-x86-64/abs-l1om.d: Likewise.
* testsuite/ld-x86-64/abs.d: Likewise.
* testsuite/ld-x86-64/pr12718.d: Likewise.
* testsuite/ld-x86-64/pr12921.d: Likewise.
* testsuite/ld-linkonce/zeroeh.ld: Discard .note.gnu.property
section.
* testsuite/ld-scripts/print-memory-usage.t: Likewise.
* testsuite/ld-scripts/size-2.t: Likewise.
* testsuite/lib/ld-lib.exp (run_ld_link_exec_tests): Use ld
to create executable if language is "asm".
commit cbb09508e4b515501273288aaa11a8ef5e15e0ff
Author: Keith Seitz <keiths@redhat.com>
Date: Sun Jul 8 10:19:10 2018 -0600
Rename remaining members of buildsym_compunit to start with "m_"
This renames all the remaining members of buildsym_compunit to start
with "m_" to follow the general naming convention.
gdb/ChangeLog
2018-07-20 Keith Seitz <keiths@redhat.com>
* buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
m_main_subfile, m_comp_dir, m_producer, m_debugformat,
m_compunit_symtab, m_language>: Add "m_" prefix.
Update all uses.
* buildsym.c: Update all uses.
commit bfe2e011c004b88687ae4514cfdb00072a9cee63
Author: Tom Tromey <tom@tromey.com>
Date: Tue May 22 22:47:15 2018 -0600
Remove record_line_ftype
The record_line_ftype typedef was only used in the DWARF reader, and
we removed those uses a few patches ago. So, remove the typedef.
gdb/ChangeLog
2018-07-20 Tom Tromey <tom@tromey.com>
* buildsym-legacy.h (record_line): Don't use record_line_ftype.
* buildsym.h (record_line_ftype): Remove typedef.
commit 0e6f30610fdb50b4974b349ed3673b744d03e9a9
Author: Tom Tromey <tom@tromey.com>
Date: Tue May 22 22:44:44 2018 -0600
Remove some unused buildsym functions
Now that the DWARF reader uses the builder-based API, we can remove a
few "legacy" functions that were only ever called by it.
gdb/ChangeLog
2018-07-20 Tom Tromey <tom@tromey.com>
* buildsym-legacy.h (augment_type_symtab): Don't declare.
(end_expandable_symtab): Likewise.
(end_symtab_get_static_block): Likewise.
(end_symtab_from_static_block): Likewise.
* buildsym-legacy.c (augment_type_symtab): Remove.
(end_expandable_symtab): Remove.
(end_symtab_get_static_block): Remove.
(end_symtab_from_static_block): Remove.
commit 804d27291b2922f01fe5cc2d9ae759533d4a2f6f
Author: Tom Tromey <tom@tromey.com>
Date: Tue May 22 15:22:53 2018 -0600
Convert the DWARF reader to new-style buildysm
This converts the DWARF reader to use the new-style buildsym API. A
new buildsym_compunit is created for each CU and is used to construct
the symbol table. In some cases the CU must be passed to functions
which previously did not accept it. FWIW I tend to think that most
methods in the DWARF reader ought to be methods on the dwarf2_cu
object.
gdb/ChangeLog
2018-07-20 Tom Tromey <tom@tromey.com>
* dwarf2read.c: Include buildsym.h.
(struct dwarf2_cu) <builder>: New method.
(fixup_go_packaging): Update.
(process_full_comp_unit, process_full_type_unit): Update. Don't
use scoped_free_pendings.
(using_directives): Add "cu" parameter, remove "language".
(read_import_statement, setup_type_unit_groups, )
(read_func_scope, read_lexical_block_scope)
(dwarf2_record_block_ranges, read_namespace): Update.
(lnp_state_machine::lnp_state_machine): Add cu parameter.
(lnp_state_machine::handle_end_sequence): Update.
(class lnp_state_machine) <m_cu>: New member.
<m_record_line_callback>: Remove.
<m_currently_recording_lines>: New member.
(lnp_state_machine::handle_set_file): Update.
(noop_record_line): Remove.
(dwarf_record_line_p): Add cu parameter.
(dwarf_record_line_1, dwarf_finish_line): Likewise.
(lnp_state_machine::record_line)
(lnp_state_machine::lnp_state_machine)
(lnp_state_machine::check_line_address, dwarf_decode_lines_1)
(dwarf_decode_lines): Update.
(dwarf2_start_subfile): Add cu parameter.
(dwarf2_start_symtab, new_symbol): Update.
(macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
Remove dwarf2_per_objfile parameter.
(dwarf_decode_macros): Update.
commit 80e649fcac86101a8a4581317e867e89de015d28
Author: Tom Tromey <tom@tromey.com>
Date: Tue May 22 14:44:09 2018 -0600
Parameterize cp_scan_for_anonymous_namespaces
This changes cp_scan_for_anonymous_namespaces to use the
buildsym_compunit API, rather than the function-based API.
gdb/ChangeLog
2018-07-20 Tom Tromey <tom@tromey.com>
* stabsread.c (define_symbol): Update.
* buildsym-legacy.h (get_buildsym_compunit): Declare.
* dwarf2read.c (new_symbol): Update.
* cp-support.h (cp_scan_for_anonymous_namespaces): Update.
* cp-namespace.c: Include buildsym.h.
(cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
* buildsym-legacy.c (get_buildsym_compunit): New function.
commit 0baae8dbd38534c0f3dcedc7b9204bbc8f18de1b
Author: Tom Tromey <tom@tromey.com>
Date: Tue May 22 14:39:24 2018 -0600
Introduce buildsym-legacy.h
This introduces a new header, buildsym-legacy.h, and changes all the
symbol readers to use it. The idea is to put the function-based
interface, that relies on the buildsym_compunit global, into a
separate header. Then when a symbol reader is updated to use the new
interface, it can simply not include buildsym-legacy.h, so it's easy
to be sure that the new API is used everywhere.
gdb/ChangeLog
2018-07-20 Tom Tromey <tom@tromey.com>
* xcoffread.c: Include buildsym-legacy.h.
* windows-nat.c: Include buildsym-legacy.h.
* stabsread.c: Include buildsym-legacy.h.
* mdebugread.c: Include buildsym-legacy.h.
* buildsym-legacy.h: New file.
* buildsym-legacy.c: New file, from buildsym.c.
* go32-nat.c: Include buildsym-legacy.h.
* dwarf2read.c: Include buildsym-legacy.h.
* dbxread.c: Include buildsym-legacy.h.
* cp-namespace.c: Include buildsym-legacy.h.
* coffread.c: Include buildsym-legacy.h.
* buildsym.h: Move some contents to buildsym-legacy.h.
* buildsym.c: Include buildsym-legacy.h. Move many functions to
buildsym-legacy.c.
* Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
commit ab209f6fa9dbaf0d3d0c42e2a8f14bf3ff7dfce8
Author: Tom Tromey <tom@tromey.com>
Date: Tue May 22 14:27:43 2018 -0600
Move struct buildsym_compunit to buildsym.h
This moves struct buildsym_compunit to buildsym.h. Now that the
members are private, and it no longer affects any global state in
buildsym.c, an instance can be used directly for symtab creation.
gdb/ChangeLog
2018-07-20 Tom Tromey <tom@tromey.com>
* buildsym.h (struct buildsym_compunit): Move from buildsym.c.
* buildsym.c (struct buildsym_compunit): Move to buildsym.h.
(buildsym_compunit::buildsym_compunit)
(buildsym_compunit::~buildsym_compunit)
(buildsym_compunit::get_macro_table): Define.
commit 74c72eac237232e9c23c2b4e21d24941d804dae9
Author: Tom Tromey <tom@tromey.com>
Date: Tue May 22 14:23:32 2018 -0600
Remove reset_symtab_globals
This patch arranges for the remaining buildsym global --
buildsym_compunit -- to only be cleared by the wrapper functions, not
by methods on struct buildsym_compunit. In the process,
reset_symtab_globals is removed.
gdb/ChangeLog
2018-07-20 Tom Tromey <tom@tromey.com>
* buildsym.c (reset_symtab_globals): Remove.
(buildsym_compunit::end_symtab_from_static_block): Update.
(buildsym_compunit::augment_type_symtab): Update.
(end_symtab_from_static_block): Call free_buildsym_compunit.
(augment_type_symtab, end_symtab, end_expandable_symtab):
Likewise.
commit da6580e59c5c2c5dda086f9c407688e79377e49e
Author: Tom Tromey <tom@tromey.com>
Date: Tue May 22 14:13:46 2018 -0600
Do not use buildsym.h in some files
A few files no longer need to include buildsym.h.
gdb/ChangeLog
2018-07-20 Tom Tromey <tom@tromey.com>
* arch-utils.c: Do not include buildsym.h.
* mipsread.c: Do not include buildsym.h.
* machoread.c: Do not include buildsym.h.
* elfread.c: Do not include buildsym.h.
commit 4a2125f531114e80d68334a67f2d4ea2335a865d
Author: Tom Tromey <tom@tromey.com>
Date: Mon May 21 09:29:29 2018 -0600
Add many methods to buildsym_compunit
This adds many methods to buildsym_compunit and makes the data members
private. Essentially the entire buildsym API is now available as a
method on buildsym_compunit. However, standalone functions are still
provided, as this is what the sybmol readers actually use.
gdb/ChangeLog
2018-07-20 Tom Tromey <tom@tromey.com>
* buildsym.c (buildsym_compunit::buildsym_compunit): Do more
initialization.
(buildsym_compunit): Add new constructor.
(struct buildsym_compunit) <get_last_source_file, finish_block,
record_block_range, start_subfile, patch_subfile_names,
push_subfile, pop_subfile, record_line, get_compunit_symtab,
set_last_source_start_addr, get_last_source_start_addr,
get_local_using_directives, set_local_using_directives,
get_global_using_directives, outermost_context_p,
get_current_context_stack, get_context_stack_depth,
get_current_subfile, get_local_symbols, get_file_symbols,
get_global_symbols, record_debugformat, record_producer,
push_context, pop_context, end_symtab_get_static_block,
end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
New public methods.
<record_pending_block, finish_block_internal, make_blockvector,
watch_main_source_file_lossage, end_symtab_with_blockvector>: New
private methods.
Update all users.
commit 6b213a4778fae60d40257aee37c3fdec837ea574
Author: Tom Tromey <tom@tromey.com>
Date: Wed Jul 11 22:55:17 2018 -0600
Remove parameter from record_pending_block
This removes a redundant parameter from record_pending_block. It also
moves record_pending_block earlier in the file, so that a forward
declaration is no longer needed.
gdb/ChangeLog
2018-07-20 Tom Tromey <tom@tromey.com>
* buildsym.c (record_pending_block): Move earlier. Remove objfile
parameter.
(finish_block_internal): Update.
commit b80a981d0867f554d382eef9fc16081b12ac0543
Author: Tom Tromey <tom@tromey.com>
Date: Mon May 21 09:21:18 2018 -0600
Remove EXTERN from buildsym.h
Nothing in buildsym.h relies on the "EXTERN" method of
declaration/definition, so remove the traces.
gdb/ChangeLog
2018-07-20 Tom Tromey <tom@tromey.com>
* buildsym.h (EXTERN): Don't define or undef.
* buildsym.c (EXTERN): Don't define.
commit ddb7060226028e5e18c340a6d072337ead3209cd
Author: Tom Tromey <tom@tromey.com>
Date: Mon May 21 09:20:31 2018 -0600
Remove a TODO
This removes a TODO comment -- the work has been done.
gdb/ChangeLog
2018-07-20 Tom Tromey <tom@tromey.com>
* buildsym.c: Remove TODO comment.
commit b37dd3bcaac70cede547ba41fdac7878a0f4c67e
Author: Tom Tromey <tom@tromey.com>
Date: Mon May 21 09:16:16 2018 -0600
Remove buildsym_init
Now that buildsym_init does nothing, it can be removed.
gdb/ChangeLog
2018-07-20 Tom Tromey <tom@tromey.com>
* coffread.c (coff_symtab_read): Update.
* xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
(xcoff_new_init): Update.
* mipsread.c (mipscoff_new_init): Update.
* mdebugread.c (mdebug_build_psymtabs): Update.
* elfread.c (elf_new_init): Update.
* dwarf2read.c (process_full_comp_unit, process_full_type_unit):
Update.
* dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
(coffstab_build_psymtabs, elfstab_build_psymtabs)
(stabsect_build_psymtabs): Update.
* buildsym.h (buildsym_init): Don't declare.
* buildsym.c: Update comment.
(prepare_for_building): Remove.
(start_symtab, restart_symtab): Update.
(reset_symtab_globals): Update comment.
(buildsym_init): Remove.
commit e148f09d75af9e5c6af5136fee3a5a298114d41f
Author: Tom Tromey <tom@tromey.com>
Date: Mon May 21 09:12:54 2018 -0600
Move the symbol lists to buildsym_compunit
This moves the global symbol lists into buildsym_compunit, adds
accessors, and updates all the users.
gdb/ChangeLog
2018-07-20 Tom Tromey <tom@tromey.com>
* xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
* stabsread.c (patch_block_stabs, define_symbol, read_type)
(read_enum_type, common_block_start, common_block_end)
(cleanup_undefined_types_1, finish_global_stabs): Update.
* mdebugread.c (psymtab_to_symtab_1): Update.
* dwarf2read.c (fixup_go_packaging, read_func_scope)
(read_lexical_block_scope, new_symbol): Update.
* dbxread.c (process_one_symbol): Update.
* coffread.c (coff_symtab_read, process_coff_symbol)
(coff_read_enum_type): Update.
* buildsym.h (file_symbols, global_symbols, local_symbols): Don't
declare.
(get_local_symbols, get_file_symbols, get_global_symbols): New
functions.
* buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
m_global_symbols.
<m_file_symbols, m_local_symbols, m_global_symbols>: New members.
(~scoped_free_pendings): Update.
(finish_block, prepare_for_building, reset_symtab_globals)
(end_symtab_get_static_block, end_symtab_with_blockvector)
(augment_type_symtab, push_context): Update.
(get_local_symbols, get_file_symbols, get_global_symbols): New
functions.
(buildsym_init): Update.
commit 93b8bea4143cafae79076076c64aaa4c46a9b73c
Author: Tom Tromey <tom@tromey.com>
Date: Mon May 21 23:30:47 2018 -0600
Set list_in_scope later in DWARF reader
Currently the DWARF reader sets the list_in_scope member of the CU
when first starting to process symbols. Future changes will make this
assert -- code will not be able to refer to these lists until after
start_symtab has been called. This patch prepares for the problem by
arranging to initialize list_in_scope in dwarf2_start_symtab.
gdb/ChangeLog
2018-07-20 Tom Tromey <tom@tromey.com>
* dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
(process_full_type_unit): Likewise.
(dwarf2_start_symtab): Set list_in_scope.
commit f62f6af5da07eba0ac5425365da3d82c43f3445c
Author: Tom Tromey <tom@tromey.com>
Date: Mon May 21 23:23:02 2018 -0600
Do not look at file symbols when reading psymtabs
The DWARF reader was setting the list_in_scope member when reading
partial symbols. however, this member is only useful when reading
full symbols. Future patches will make this assert, so remove these
unneeded initializations.
gdb/ChangeLog
2018-07-20 Tom Tromey <tom@tromey.com>
* dwarf2read.c (process_psymtab_comp_unit_reader)
(build_type_psymtabs_reader): Do not set list_in_scope.
commit 1d376700df2476d8a8ca4fa503bdcfb0b425b683
Author: Tom Tromey <tom@tromey.com>
Date: Mon May 21 08:35:43 2018 -0600
Remove free_pendings
buildsym.c currently keeps a free list of "struct pending"s. However,
this didn't seem necessary to me, and so this patch removes the free
list.
gdb/ChangeLog
2018-07-20 Tom Tromey <tom@tromey.com>
* buildsym.c (free_pendings): Remove.
(add_symbol_to_list, scoped_free_pendings)
(finish_block_internal, buildsym_init): Update.
commit c233e9c641a84e69603bd94d0e85050c361b64a6
Author: Tom Tromey <tom@tromey.com>
Date: Mon May 21 00:41:21 2018 -0600
Remove the "listhead" argument from finish_block
finish_block is only ever called with "&local_symbols" as the
"listhead" argument. So, remove this argument.
gdb/ChangeLog
2018-07-20 Tom Tromey <tom@tromey.com>
* xcoffread.c (read_xcoff_symtab): Update.
* dwarf2read.c (read_func_scope, read_lexical_block_scope):
Update.
* dbxread.c (process_one_symbol): Update.
* coffread.c (coff_symtab_read): Update.
* buildsym.h (finish_block): Update.
* buildsym.c (finish_block): Remove "listhead" argument.
(end_symtab_get_static_block): Update.
commit 5ac045503de7dde6793b318f89d251addc161f66
Author: Tom Tromey <tom@tromey.com>
Date: Mon May 21 00:34:26 2018 -0600
Move pending_blocks and pending_block_obstack to buildsym_compunit
This moves the pending_blocks and pending_block_obstack into
buildsym_compunit.
The obstack could perhaps be merged with the addrmap obstack, but I
did not do that in this series.
gdb/ChangeLog
2018-07-20 Tom Tromey <tom@tromey.com>
* buildsym.h (class scoped_free_pendings): Remove constructor.
* buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
method.
<m_pending_block_obstack, m_pending_blocks>: New members.
(pending_block_obstack, pending_blocks): Remove.
(scoped_free_pendings::scoped_free_pendings): Default.
(~scoped_free_pendings): Update.
(free_pending_blocks): Remove.
(finish_block_internal, record_pending_block, make_blockvector)
(end_symtab_get_static_block, augment_type_symtab, push_context)
(buildsym_init): Update.
commit 7ea05a7b634a895128e87c8c71e8e611758cd4bb
Author: Tom Tromey <tom@tromey.com>
Date: Mon May 21 00:28:56 2018 -0600
Move pending addrmap globals to buildsym_compunit
This moves the pending addrmap-related globals into buildsym_compunit.
gdb/ChangeLog
2018-07-20 Tom Tromey <tom@tromey.com>
* buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
members.
(pending_addrmap, pending_addrmap_obstack)
(pending_addrmap_interesting): Remove.
(scoped_free_pendings, record_block_range, make_blockvector)
(prepare_for_building, reset_symtab_globals, buildsym_init):
Update.
commit 3c65e5b31cb5587773deff979099435b9687a0f4
Author: Tom Tromey <tom@tromey.com>
Date: Mon May 21 00:15:12 2018 -0600
Move current_subfile to buildsym_compunit
This moves the global current_subfile into buildsym_compunit.
gdb/ChangeLog
2018-07-20 Tom Tromey <tom@tromey.com>
* xcoffread.c (process_linenos): Update.
* stabsread.c (define_symbol, read_type, read_enum_type): Update.
* mdebugread.c (psymtab_to_symtab_1): Update.
* dwarf2read.c (setup_type_unit_groups)
(lnp_state_machine::handle_set_file, dwarf_record_line_p)
(lnp_state_machine::record_line, dwarf_decode_lines): Update.
* dbxread.c (process_one_symbol): Update.
* coffread.c (coff_symtab_read, enter_linenos)
(process_coff_symbol): Update.
* buildsym.h (current_subfile): Don't declare.
(get_current_subfile): Declare.
* buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
member.
(start_subfile, free_buildsym_compunit, push_subfile)
(prepare_for_building, start_symtab): Update.
(get_current_subfile): New function.
commit a60f3166aa946336c68e7a873d5eed6061b5733c
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 20 23:58:35 2018 -0600
Move the context stack to buildsym_compunit
This moves the context stack globals to be members of
buildsym_compunit, changing the type to a std::vector in the process.
Because the callers expect the context stack object to be valid after
being popped, at Simon's suggestion I've changed pop_context to return
the object rather than the pointer.
gdb/ChangeLog
2018-07-20 Tom Tromey <tom@tromey.com>
* coffread.c (coff_symtab_read): Update.
* xcoffread.c (read_xcoff_symtab): Update.
* dwarf2read.c (new_symbol): Update.
(read_func_scope, read_lexical_block_scope): Update.
* dbxread.c (process_one_symbol): Update.
* buildsym.h (context_stack, context_stack_depth): Don't declare.
(outermost_context_p): Remove macro.
(outermost_context_p, get_current_context_stack)
(get_context_stack_depth): Declare.
(pop_context): Return struct context_stack.
* buildsym.c (struct buildsym_compunit) <m_context_stack: New
member.
(context_stack_size): Remove.
(INITIAL_CONTEXT_STACK_SIZE): Remove.
(prepare_for_building, end_symtab_get_static_block)
(augment_type_symtab, push_context): Update.
(pop_context): Return struct context_stack.
(outermost_context_p, get_current_context_stack)
(get_context_stack_depth): New functions.
(buildsym_init): Update.
commit 56ba65a04713fd8ff23908d4c57f75427317b8bb
Author: Tom Tromey <tom@tromey.com>
Date: Fri Jun 1 22:20:23 2018 -0600
Make the Rust parser pure
This makes the Rust parser a pure parser and removes all the
(non-constant) globals from rust-exp.y. This seemed like a nice
simplification to me and I think it should probably be applied to all
the parsers. Perhaps it would be good to go even one step farther and
have all parsers derive from parser_state.
Tested on x86-64 Fedora 26.
gdb/ChangeLog
2018-07-20 Tom Tromey <tom@tromey.com>
* rust-exp.y: Now a pure parser. Update all rules.
(%union): Move earlier.
(current_parser, work_obstack): Remove globals.
(rust_parser, ~rust_parser): Update.
(class rust_parser) <copy_name, concat3, crate_name, super_name,
lex_character, lex_number, lex_string, lex_identifier,
rust_lookup_type, convert_params_to_types, convert_ast_to_type,
convert_name, convert_params_to_expression,
convert_ast_to_expression, ast_basic_type, ast_operation,
ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
ast_array_type, ast_slice_type, ast_reference_type,
ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
(rust_parse): Update.
(rustyyerror, rustyylex): Add parser parameter.
(rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
(rust_lex_stringish_test, rust_lex_test_sequence)
(rust_lex_test_trailing_dot, rust_lex_test_completion)
(rust_lex_test_push_back, rust_lex_tests): Update.
commit 3ba174474d3cc063d6b7abf0bfdd6021bbaf8a90
Author: Andre Simoes Dias Vieira <andre.simoesdiasvieira@arm.com>
Date: Thu Jul 19 16:18:28 2018 +0100
[PATCH, LD, AArch64] Fix ifunc testisms
This patch fixes some ifunc testisms after H.J. Lu's patch to enable the
use of IFUNC pointers in position dependent code for binutils. See PR
LD/23169 in binutils bugzilla.
The aarch64 ifunc error message test was changed to no longer expect
this error message as this is now an accepted combination. This patch
also disables the executable tests added by H.J. Lu for aarch64, just as
Alan Modra did with his patch, as these tests only seem to work on some
architectures.
ld/ChangeLog:
2018-07-19 Andre Vieira <andre.simoesdiasvieira@arm.com>
* testsuite/ld-aarch64/ifunc-9.d: Remove no longer expected error.
* testsuite/ld-ifunc/ifunc.exp: Disable tests for aarch64.
commit 232a00325b0f97e108014148c68ae314e90cbb36
Author: Tom de Vries <tdevries@suse.de>
Date: Fri Jul 20 16:40:10 2018 +0200
[gdb/testsuite] Make noclone conditional in vla-optimized-out.c
Make the noclone attribute on f1 in vla-optimized-out.c conditional. This
makes the test-case by default identical to
gcc/testsuite/gcc.dg/guality/vla-1.c.
Tested on x86_64-linux.
2018-07-20 Tom de Vries <tdevries@suse.de>
* gdb.base/vla-optimized-out.c: Make noclone attribute conditional on
NOCLONE macro.
* gdb.base/vla-optimized-out.exp: Use additional_flags -DNOCLONE.
commit 3391569f218cd5d05e96769f47559d5828be3acd
Author: Nick Clifton <nickc@redhat.com>
Date: Fri Jul 20 15:05:34 2018 +0100
Close memory and resource leaks detected by coverity in the binutils directory.
* objcopy.c (add_specific_symbols): Free buffer on exit.
(add_redefine_syms_file): Close file handle on exit.
(copy_object): Close file handle on early exit.
Free buffer on early exit.
Free gaps buffers once they are no longer needed.
* dwarf.c (display_debug_frames): Free allocated memory on exit.
(load_separate_debug_info): Free allocate memory on early exit.
commit 8095d2f70e1a982c006f306be1a9e1c892758914
Author: Chenghua Xu <paul.hua.gm@gmail.com>
Date: Fri Jul 20 13:21:33 2018 +0100
MIPS/GAS: Split Loongson MMI Instructions from loongson2f/3a
The MMI instruction set has been implemented in many Loongson
processors. There is a lot of software optimized for MMI. This patch
splits MMI from loongson2f/3a, and adds GAS and disassembler options for
MMI instructions.
2018-07-20 Chenghua Xu <paul.hua.gm@gmail.com>
Maciej W. Rozycki <macro@mips.com>
bfd/
* elfxx-mips.c (print_mips_ases): Add MMI extension.
binutils/
* readelf.c (print_mips_ases): Add MMI extension.
gas/
* NEWS: Mention MultiMedia extensions Instructions (MMI)
support.
* config/tc-mips.c (options): Add OPTION_LOONGSON_MMI and
OPTION_NO_LOONGSON_MMI.
(md_longopts): Likewise.
(mips_ases): Define availability for MMI.
(mips_convert_ase_flags): Map ASE_LOONGSON_MMI to
AFL_ASE_LOONGSON_MMI.
(mips_cpu_info_table): Add ASE_LOONGSON_MMI for loongson2f/3a.
(md_show_usage): Add help for -mloongson-mmi and
-mno-loongson-mmi.
* doc/as.texi: Document -mloongson-mmi, -mno-loongson-mmi.
* doc/c-mips.texi: Document -mloongson-mmi, -mno-loongson-mmi,
.set loongson-mmi and .set noloongson-mmi.
* testsuite/gas/mips/loongson-2f.d: Move mmi test to ...
* testsuite/gas/mips/loongson-2f-mmi.d: Here. Add ISA/ASE
flag verification.
* testsuite/gas/mips/loongson-2f.s: Move mmi test to ...
* testsuite/gas/mips/loongson-2f-mmi.s: Here.
* testsuite/gas/mips/loongson-3a.d: Move mmi test to ...
* testsuite/gas/mips/loongson-3a-mmi.d: Here. Add ISA/ASE
flag verification.
* testsuite/gas/mips/loongson-3a.s: Move mmi test to ...
* testsuite/gas/mips/loongson-3a-mmi.s: Here.
* testsuite/gas/mips/mips.exp: Run loongson-2f-mmi and
loongson-3a-mmi tests.
include/
* elf/mips.h (AFL_ASE_MMI): New macro.
(AFL_ASE_MASK): Update to include AFL_ASE_LOONGSON_MMI.
* opcode/mips.h (ASE_LOONGSON_MMI): New macro.
opcodes/
* mips-dis.c (mips_arch_choices): Add MMI to loongson2f and
loongson3a descriptors.
(parse_mips_ase_option): Handle -M loongson-mmi option.
(print_mips_disassembler_options): Document -M loongson-mmi.
* mips-opc.c (LMMI): New macro.
(mips_opcodes): Replace IL2F|IL3A marking with LMMI for MMI
instructions.
commit db841b6fcd8b3bc2e6d6774e81c14dfbb9ac815d
Author: Maciej W. Rozycki <macro@mips.com>
Date: Fri Jul 20 13:21:33 2018 +0100
MIPS/LD: Fix crashing with a discarded dynamic relocation section
Fix a crash that occurs in `_bfd_mips_elf_finish_dynamic_sections' if a
dynamic relocation section has been created, but marked to be discarded
by an assignment to the /DISCARD/ output section in a linker script.
In that case the output section is the absolute section, which has no
ELF section data attached, so trying to set its `sh_size' parameter
causes a null pointer dereference.
This is only done as the value for the DT_RELSZ dynamic entry is being
set, so fix the problem by not creating DT_REL, DT_RELSZ or DT_RELENT
dynamic entries in the first place if the dynamic relocation section
will not be output, as with no dynamic relocation data present these
would not serve their purpose anyway.
Add a generic ELF test case to verify that no dynamic relocation data is
reported in the dynamic segment.
bfd/
* elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Do not
create DT_REL, DT_RELSZ or DT_RELENT dynamic entries if the
dynamic relocation section will be discarded from output.
(_bfd_mips_elf_finish_dynamic_sections) <DT_RELSZ>: Assert that
the dynamic relocation section will be retained in output.
ld/
* testsuite/ld-elf/reloc-discard.d: New test.
* testsuite/ld-elf/reloc-discard.ld: New test linker script.
* testsuite/ld-elf/reloc-discard.s: New test source.
commit 0458ca44409420c3d5cdbbb21561ee71fd930d31
Author: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Date: Fri Jul 20 11:15:57 2018 +0200
Specify architecture for SPARC gas tests
A couple of SPARC gas tests FAIL on Solaris/SPARC (both
sparc-sun-solaris2.11 and sparcv9-sun-solaris2.11):
FAIL: sparc PAUSE
FAIL: sparc CBCOND
FAIL: sparc CFR
FAIL: sparc CRYPTO
FAIL: sparc HPC+VIS3
FAIL: sparc IMA
FAIL: sparc OSA2015 %mwait asr and MWAIT instruction
FAIL: sparc OSA2015 %mcdper asr
FAIL: sparc SPARC5 and VIS4.0
FAIL: OSA2015 crypto instructions
FAIL: SPARC6
FAIL: FPCMPSHL OSA2017 instructions
FAIL: OSA2017 ONADD/ONSUB/ONMUL/ONDIV instructions.
FAIL: OSA2017 RLE instructions
FAIL: sparc64 rdasr
FAIL: sparc64 rdpr
FAIL: sparc64 rdhpr
FAIL: sparc64 wrasr
FAIL: sparc64 wrpr
It turns out there's a common pattern here: failures happen for all
tests that use SPARC ISA extensions beyond sparcv9, e.g. for the sparc
PAUSE test:
regexp_diff match failure
regexp "^ 0: b7 80 40 02 wr %g1, %g2, %pause$"
line " 0: b7 80 40 02 wr %g1, %g2, %asr27"
[...]
regexp_diff match failure
regexp "^ 8: b7 80 20 08 pause 8$"
line " 8: b7 80 20 08 wr 8, %asr27"
[...]
The fix is easy, actually: just as the tests specify the ISA extension
to use as a gas flag, the same needs to be done for objdump. For the
test above, which has -Av9v, this means passing -msparc:v9v to objdump.
Doing so makes all but two (unrelated; to be reported separately)
failures go away.
This doesn't happen on Linux/SPARC, where gas emits GNU object attributes
matching the hardcare capabilities used. Since gas doesn't yet implement
Solaris-style object capabilites, the explicit -march is needed, but only
passed on Solaris.
Tested on both sparc-sun-solaris2.11 and sparcv9-sun-solaris2.11.
* testsuite/gas/sparc/sparc.exp (set_tests_arch): New proc.
Prefix v9c, v9d, v9v, v9m, v9m8 tests with corresponding
set_tests_arch.
commit 79f5b65e3e7b10d914b1328ce6e9ad7c9ae39c63
Author: DJ Delorie <dj@redhat.com>
Date: Thu Jul 19 21:34:37 2018 -0400
Remove myself from target-specific MAINTAINERS
[binutils]
* MAINTAINERS (RL78, RX): Remove myself as maintainer.
[sim]
* MAINTAINERS (rl78, m32c, rx, v850): Remove myself as maintainer.
commit 8f153adc1db75601619dbead97fdbe621fbf69b0
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Jul 20 00:00:47 2018 +0000
Automatic date update in version.in
commit 4c6933327e2e30c97ea4e49dc6f7e0f48941fd6f
Author: Pedro Alves <palves@redhat.com>
Date: Thu Jul 19 16:34:55 2018 +0100
Eliminate remaining gdb/guile cleanups
The remaining gdb/guile cleanups all handle the memory returned by
gdbscm_scm_to_c_string.
This commit makes gdbscm_scm_to_c_string return a
gdb::unique_xmalloc_ptr instead of a naked pointer, and eliminates the
remaining cleanups.
gdb/ChangeLog:
2018-07-19 Pedro Alves <palves@redhat.com>
* guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
gdb::unique_xmalloc_ptr.
* guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
* guile/scm-exception.c (gdbscm_exception_message_to_string): Use
copy-initialization.
* guile/scm-pretty-print.c (ppscm_print_children): Use
gdb::unique_xmalloc_ptr instead of cleanups.
(gdbscm_apply_val_pretty_printer): Remove cleanups.
* guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
gdb::unique_xmalloc_ptr.
* guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
Adjust to use gdb::unique_xmalloc_ptr.
* guile/scm-utils.c (extract_arg): Adjust.
* guile/scm-value.c (gdbscm_value_field): Adjust to use
gdb::unique_xmalloc_ptr instead of a cleanup.
commit 4581dc8297381651284e2f4a9f835eebcc6f2328
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jul 19 08:49:58 2018 -0600
Remove make_cleanup_value_free_to_mark
Pedro's patch to introduce gdbscm_wrap removed the last caller of
make_cleanup_value_free_to_mark. This patch removes this function.
I'm checking this in as obvious. Tested by rebuilding, and by
grepping.
gdb/ChangeLog
2018-07-19 Tom Tromey <tom@tromey.com>
* utils.c (do_value_free_to_mark)
(make_cleanup_value_free_to_mark): Remove.
* utils.h (make_cleanup_value_free_to_mark): Remove.
commit fbb1d502eeae135dbe6ac3b0b122e574a9b888d6
Author: Tom de Vries <tdevries@suse.de>
Date: Thu Jul 19 16:24:16 2018 +0200
[gdb/testsuite] Fix regexp in list-thread-groups-available.exp
I ran into a gdb.mi/list-thread-groups-available.exp failure:
...
Running gdb/testsuite/gdb.mi/list-thread-groups-available.exp ...
FAIL: gdb.mi/list-thread-groups-available.exp:
list available thread groups (unexpected output)
PASS: gdb.mi/list-thread-groups-available.exp:
list available thread groups with filter
...
When doing an experiment of running it 100 times in a row, the failure
reproduced 3 times.
Analyzing the original failure led to insufficient quoting of square brackets
in a regexp. This patch fixes the regexp, which resulted in 0 failures in a
100-in-a-row run.
Tested on x86_64-linux.
2018-07-19 Tom de Vries <tdevries@suse.de>
* gdb.mi/list-thread-groups-available.exp (cores_re): Fix quoting in
regular expression.
commit db3410f80f793189d3c8afb8b80951333d3fe007
Author: Eli Zaretskii <eliz@gnu.org>
Date: Thu Jul 19 16:54:06 2018 +0300
Fix GDB build using mingw.org's MinGW
libiberty/
2018-07-18 Eli Zaretskii <eliz@gnu.org>
PR gdb/23434
* libiberty/simple-object-elf.c (ENOTSUP): If not defined by
errno.h, redirect ENOTSUP to ENOSYS.
commit 442a6ce858c0da0c5fba3eeb57a646254adf107a
Author: Nick Clifton <nickc@redhat.com>
Date: Thu Jul 19 14:23:31 2018 +0100
Stop potential memory leaks in dwarf CIE reader.
* dwarf.c (read_cie): Free allocated memory before returning with
a failure result.
commit 43cc6c3adb7f6ac45c06011f439ed06161d1d770
Author: Pedro Alves <palves@redhat.com>
Date: Thu Jul 19 10:56:47 2018 +0100
gdbscm_wrap, really forward args
Commit 557e56be2648 ("Eliminate most remaining cleanups under
gdb/guile/") missed adding the && to Args to really forward the
arguments properly. Noticed by inspection.
gdb/ChangeLog:
2018-07-19 Pedro Alves <palves@redhat.com>
* guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
forwarding reference.
commit f559b440bb6dc6eb853125039dfaaee84f3a7522
Author: Andreas Krebbel <krebbel@linux.ibm.com>
Date: Thu Jul 19 10:00:51 2018 +0200
S/390: Set the htm flag on PPA
The PPA instruction will be emitted by GCC transactional execution
builtins so it needs to be accepted with just -mhtm and without
-march=zEC12.
opcodes/ChangeLog:
2018-07-19 Andreas Krebbel <krebbel@linux.ibm.com>
* s390-opc.txt (PPA): Add the htm flag.
commit 5f32791e1ea970cabd6ca764f1cc282d9e8fef22
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Jul 19 08:36:19 2018 +0200
x86: fold narrowing VCVT* templates
When multiple (here: two) forms of an insn take different width inputs
but produce identical size outputs (here: RegXMM), the templates can be
combined.
Also drop IgnoreSize (and the now redundant size specifiers) wherever
applicable.
commit 625cbd7ac121a6df6d237c8368262f6634fb61ab
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Jul 19 08:35:38 2018 +0200
x86: fold VFPCLASSP{D,S} templates
These are special because they may not have a register operand to derive
the vector length from, which requires to also deal with the braodcast
case when determining vector length in build_evex_prefix().
Also drop IgnoreSize (and the now redundant size specifiers) from their
suffixed counterparts.
commit 86b15c32040ae35c74e84b18f7b65dea94436458
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Jul 19 08:34:45 2018 +0200
x86: fold various AVX512* templates
commit cf769ed505ed9b3eca24df67bb9cfc0adc1a033f
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Jul 19 08:34:01 2018 +0200
x86: fold various AVX512DQ templates
commit 8282b7ad0dfaffce380cb668dc2a8ca473758760
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Jul 19 08:32:17 2018 +0200
x86: fold various AVX512BW templates
commit 755908cce568d1cb5f2a3f1cc64472ed43eef8b5
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Jul 19 08:31:24 2018 +0200
x86: fold various AVX512CD templates
commit 7091c612013ed63fedabc26b1662c87071e41fd6
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Jul 19 08:29:35 2018 +0200
x86: fold various AVX512VL templates into their AVX512F counterparts
commit c30be56ebf7989e36f5c7d4a703cb00f7d4ca2ab
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Jul 19 08:28:29 2018 +0200
x86: pre-process opcodes table before parsing
Instead of expanding macro-like constructs in i386-gen, have the C pre-
processor do this for us. Besides being a prerequisite for the next
template folding steps, this also paves the way for removing various
hidden dependencies between #define-s in i386-opc.h and plain literal
numbers used in i386-opc.tbl.
The #undef of None is solely to leave the generated i386-tbl.h entirely
unchanged.
commit e387da76fc6ee61f6bc30edfa1210be173e96db4
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Jul 19 00:00:39 2018 +0000
Automatic date update in version.in
commit 3a5f2a48ffe3941396d7a19d9398c9a4945b4e5d
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 18 23:41:06 2018 +0100
Eliminate cleanup in gdbscm_execute_gdb_command
Note: the "may be modified" comment is no longer true nowadays.
gdb/ChangeLog:
2018-07-18 Pedro Alves <palves@redhat.com>
* guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
gdbscm_wrap. Use gdb::unique_xmalloc_ptr<char> instead of a
cleanup.
commit 557e56be2648db13cd5d9876f702ba119ee9e7fd
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 18 22:55:59 2018 +0100
Eliminate most remaining cleanups under gdb/guile/
The main complication with the Guile code is that we have two types of
exceptions to consider. GDB/C++ exceptions, and Guile/SJLJ
exceptions. Code that is facing the Guile interpreter must not throw
GDB exceptions, instead Scheme exceptions must be thrown. Also,
because Guile exceptions are SJLJ based, Guile-facing code must not
use local objects with dtors, unless wrapped in a scope with a
TRY/CATCH, because the dtors won't otherwise be run when a Guile
exceptions is thrown.
This commit adds a new gdbscm_wrap wrapper function than encapsulates
a pattern I noticed in many of the functions using
GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS. The wrapper is written
such that you can pass either a lambda to it, or a function plus a
variable number of forwarded args. I used a lambda when its body
would be reasonably short, and a separate function in the larger
cases.
This also convers a few functions that were using
GDBSCM_HANDLE_GDB_EXCEPTION to use gdbscm_wrap too because they
followed a similar pattern.
A few cases of make_cleanup calls are replaced with explicit xfree
calls. The make_cleanup/do_cleanups calls in those cases are
pointless, because do_cleanups won't be called when a Scheme exception
is thrown.
We also have a couple cases of Guile-facing code using RAII-type
objects to manage memory, but those are incorrect, exactly because
their dtor won't be called if a Guile exception is thrown.
gdb/ChangeLog:
2018-07-18 Pedro Alves <palves@redhat.com>
* guile/guile-internal.h: Add comment about mixing GDB and Scheme
exceptions.
(GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
(gdbscm_wrap): New.
* guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
directly instead of a cleanup.
* guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
(vlscm_unop): ... this. Reimplement using gdbscm_wrap.
(vlscm_binop_gdbthrow): New, factored out from ...
(vlscm_binop): ... this. Reimplement using gdbscm_wrap.
(vlscm_rich_compare): Use gdbscm_wrap.
* guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
instead of a cleanup.
(gdbscm_lookup_global_symbol): Use xfree directly instead of a
cleanup.
* guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
Use xfree directly instead of a cleanup.
* guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
Adjust to use gdbscm_wrap and scoped_value_mark.
(gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
(gdbscm_value_address, gdbscm_value_dereference)
(gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
scoped_value_mark.
(gdbscm_value_dynamic_type): Use scoped_value_mark.
(vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
scoped_value_mark.
(gdbscm_value_subscript, gdbscm_value_call): Adjust to use
gdbscm_wrap and scoped_value_mark.
(gdbscm_value_to_string): Use xfree directly instead of a
cleanup. Move 'buffer' unique_ptr to TRY scope.
(gdbscm_value_to_lazy_string): Use xfree directly instead of a
cleanup. Move 'buffer' unique_ptr to TRY scope. Use
scoped_value_mark.
(gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
(gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
scoped_value_mark.
(gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
gdbscm_wrap.
commit 42dc7699a26be0157c438dcaeb89da38287c6d2d
Author: Tom de Vries <tdevries@suse.de>
Date: Tue Jul 3 11:06:45 2018 +0200
[gdb/exp] Fix printing of type of optimized out vla
Consider this snippet from gcc/testsuite/gcc.dg/guality/vla-1.c:
...
int __attribute__((noinline))
f1 (int i)
{
char a[i + 1];
a[0] = 5; /* { dg-final { gdb-test .+1 "i" "5" } } */
return a[0]; /* { dg-final { gdb-test . "sizeof (a)" "6" } } */
}
...
When we compile the test-case with -O1 -g, and query the size of optimized
out vla 'a', we get:
...
$ ./gdb -batch -ex "b f1" -ex "r" -ex "p sizeof (a)" vla-1.exe
Breakpoint 1 at 0x4004a8: file vla-1.c, line 17.
Breakpoint 1, f1 (i=i@entry=5) at vla-1.c:17
17 return a[0];
$1 = 0
...
while we expect a size of '6'.
The problem is that default_read_var_value does not resolve the dynamic type
of a variable if the variable is optimized out.
This patch fixes that, and consequently gdb prints '6', as expected.
Tested on x86_64-linux.
2018-07-18 Tom de Vries <tdevries@suse.de>
* findvar.c (default_read_var_value): Also resolve dynamic type for
LOC_OPTIMIZED_OUT vars.
* gdb.base/vla-optimized-out.c: New test.
* gdb.base/vla-optimized-out.exp: New file.
commit 6592ceed489043051d02d41dc71f51e8ef8aa6f0
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed Jul 18 19:17:39 2018 +0100
microMIPS: Add SYSCALL instruction decoding
Fix a bug with commit 4cc0665f24bb ("microMIPS support"),
<https://sourceware.org/ml/gdb-patches/2012-05/msg00724.html>, and add
missing microMIPS SYSCALL instruction decoding needed to determine the
location to put a breakpoint at when single-stepping though a syscall.
gdb/
* mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
decoding.
commit d3554ec1ed057f4ecfee35d4bec81f9d5a545cb1
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed Jul 18 17:51:54 2018 +0100
BFD/XCOFF: Fix storage class setting for weak defined symbols
Fix an issue with commit 8602d4fea60d ("Add AIX weak support"),
<https://sourceware.org/ml/binutils/2009-03/msg00189.html>, and use the
correct condition to set the storage class for weak defined symbols.
The context here is as follows:
else if ((h->root.type == bfd_link_hash_defined
|| h->root.type == bfd_link_hash_defweak)
&& h->smclas == XMC_XO)
{
BFD_ASSERT (bfd_is_abs_section (h->root.u.def.section));
isym.n_value = h->root.u.def.value;
isym.n_scnum = N_UNDEF;
if (h->root.type == bfd_link_hash_undefweak
&& C_WEAKEXT == C_AIX_WEAKEXT)
isym.n_sclass = C_WEAKEXT;
else
isym.n_sclass = C_EXT;
aux.x_csect.x_smtyp = XTY_ER;
}
so clearly the inner condition can never be true. Correct the condition
then to check for the `bfd_link_hash_defweak' symbol type instead here,
and in a similar place a little further down in the same function.
bfd/
* xcofflink.c (xcoff_write_global_symbol): Fix symbol type
checks for defined weak symbols.
commit 972450a72cb9e75a5dda614d29b04bf738d38cb0
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed Jul 18 14:08:37 2018 +0100
MIPS/GAS/testsuite: Correct whitespace issues with Loongson tests
Remove CR characters, trailing whitespace and space characters appearing
immediately before a tab character, and replace spaces with tabs, all
across Loongson GAS tests.
gas/
* testsuite/gas/mips/loongson-2e.d: Correct whitespace issues.
* testsuite/gas/mips/loongson-2f.d: Likewise.
* testsuite/gas/mips/loongson-2f-2.d: Likewise.
* testsuite/gas/mips/loongson-2f-3.d: Likewise.
* testsuite/gas/mips/loongson-3a.d: Likewise.
* testsuite/gas/mips/loongson-3a-2.d: Likewise.
* testsuite/gas/mips/loongson-2e.s: Likewise.
* testsuite/gas/mips/loongson-2f.s: Likewise.
* testsuite/gas/mips/loongson-2f-3.s: Likewise.
* testsuite/gas/mips/loongson-3a.s: Likewise.
* testsuite/gas/mips/loongson-3a-2.s: Likewise.
commit 11a322db5c8bc23009e97af30180d6b14d86dbd3
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Jul 18 05:33:36 2018 -0700
x86: Split vcvtps2{,u}qq and vcvttps2{,u}qq
After
commit 1b54b8d7e4fc8055f9220a5287e8a94d8a65a88d
Author: Jan Beulich <jbeulich@novell.com>
Date: Mon Dec 18 09:36:14 2017 +0100
x86: fold RegXMM/RegYMM/RegZMM into RegSIMD
... qualified by their respective sizes, allowing to drop FirstXmm0 at
the same time.
folded RegXMM, RegYMM and RegZMM into RegSIMD, it's no longer impossible
to distinguish if Xmmword can represent a memory reference when operand
specification contains SIMD register. For example, template operands
specification like these
RegXMM|...|Xmmword|...
and
RegXMM|...
The Xmmword bitfield is always set by RegXMM which is represented by
"RegSIMD|Xmmword". This patch splits each of vcvtps2qq, vcvtps2uqq,
vcvttps2qq and vcvttps2uqq into 2 templates: one template only has
RegXMM source operand and the other only has mempry source operand.
gas/
PR gas/23418
* testsuite/gas/i386/xmmword.s: Add tests for vcvtps2qq,
vcvtps2uqq, vcvttps2qq and vcvttps2uqq.
* testsuite/gas/i386/xmmword.l: Updated.
opcodes/
PR gas/23418
* i386-opc.h (Byte): Update comments.
(Word): Likewise.
(Dword): Likewise.
(Fword): Likewise.
(Qword): Likewise.
(Tbyte): Likewise.
(Xmmword): Likewise.
(Ymmword): Likewise.
(Zmmword): Likewise.
* i386-opc.tbl: Split vcvtps2qq, vcvtps2uqq, vcvttps2qq and
vcvttps2uqq.
* i386-tbl.h: Regenerated.
commit afca762f598d453c563f244cd3777715b1a0cb72
Author: Andreas Krebbel <krebbel@linux.vnet.ibm.com>
Date: Thu Dec 21 13:12:03 2017 +0100
S/390: Improve partial relro support for 64 bit
Currently on S/390 the .got.plt always comes first which prevents the
GNU_RELRO segment from being extended across the non-plt GOT entries.
Just swapping both unfortunately is not that simple since our ABI
requires the _GLOBAL_OFFSET_TABLE_ symbol to point to the very
beginning of the entire GOT. Of the 3 magic GOT entries the first is
accessed via got pointer while second and third are being accessed via
DT_PLTGOT. In order to keep them together we make DT_PLTGOT to point
to the .got instead of .got.plt. However, this violates an assumption
in the dynamic linker prelink undo code about the GOTPLT entries
starting at DT_PLTGOT + 3. We got rid of this requirement with a
Glibc patch already in version 2.24:
https://sourceware.org/ml/libc-alpha/2016-06/msg01302.html
So the S/390 relro GOT layout will look like this with this patch:
+----------------------------------+
|got[0]: DYNAMIC | <--- _GLOBAL_OFFSET_TABLE_ == DT_PLTGOT .got
|got[1]: link_map parm |
|got[2]: &_dl_runtime_resolve |
+----------------------------------+
| | non-plt GOT entries
| |
| |
+----------------------------------+
| | <--- .gotplt, PLT GOT entries
| |
| |
| |
+----------------------------------+
The patch detects the current layout in size_dynamic_section in order
to deal also with linker scripts not generated by this ld version.
With partial relro enabled we pick a linker script where .got and
.got.plt are swapped which then triggers the rest of the logic.
ld/ChangeLog:
2018-07-18 Andreas Krebbel <krebbel@linux.ibm.com>
* emulparams/elf64_s390.sh: Define GENERATE_RELRO_SCRIPT and
SEPARATE_GOTPLT.
* testsuite/ld-s390/gotreloc_64-relro-1.dd: New test.
* testsuite/ld-s390/gotreloc_64-norelro-1.dd: Renamed from ...
* testsuite/ld-s390/gotreloc_64-1.dd: ... this.
* testsuite/ld-s390/s390.exp: Split the GOT testcase into two.
bfd/ChangeLog:
2018-07-18 Andreas Krebbel <krebbel@linux.ibm.com>
* elf-s390-common.c (s390_gotplt_after_got_p): New function.
(s390_got_pointer): New function.
(s390_got_offset): New function.
(s390_gotplt_offset): New function.
* elf64-s390.c (allocate_dynrelocs): Adjust comment.
(elf_s390_size_dynamic_sections): Move space for magic GOT entries
from .got.plt to .got if necessary and pick the right location for
_GLOBAL_OFFSET_TABLE_.
(elf_s390_relocate_section): Use the wrapper functions from
elf-s390-common.c to deal with both possible layouts (either .got
or .got.plt first).
(elf_s390_finish_dynamic_sections): Likewise.
(elf_s390_finish_dynamic_symbol): Make the location of the GOT
magic entries conditional.
commit a38137289e91fd548fc27fb6566a439233b94d65
Author: Andreas Krebbel <krebbel@linux.vnet.ibm.com>
Date: Mon Jun 11 13:23:00 2018 +0200
ld: Enable using separate linker script for -z relro
With this patch dedicated linker scripts can be generated for partial
relro triggered by defining GENERATE_RELRO_SCRIPT in the target
specific scripts.
This is necessary for e.g. S/390 where usually the .got.plt comes
first and prevents the relro segment from being extended across the
non-plt GOT entries.
The patch started with the work from Marcin taken from the mwk user
branches. However, the patch needed substantial changes due to the
'separate code' feature which got committed in the meantime.
ld/ChangeLog:
2018-07-18 Andreas Krebbel <krebbel@linux.ibm.com>
Marcin KoÅcielnicki <koriakin@0x04.net>
* emultempl/elf32.em: Add code to pick dedicated linker scripts
for partial relro.
* genscripts.sh: Generate dedicated linker scripts for partial relro.
commit 0984c34e7683e1e987eaf4f9e057b678cb67efa6
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Jul 18 08:37:38 2018 +0100
Updated French translation for gold and Spanish translation for ld.
ld * po/es.po: Updated Spanish translation.
gold * po/fr.po: Updated French translation.
commit 012ab4137393b948e7d5c9eb7e0124296eba72f2
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Jul 18 00:00:35 2018 +0000
Automatic date update in version.in
commit c6c6149af440c3032eb7d02c2852907c61aac470
Author: Tom Tromey <tom@tromey.com>
Date: Sat May 26 23:34:02 2018 -0600
Return unique_xmalloc_ptr from gdbscm_scm_to_string
This changes gdbscm_scm_to_string to return a unique_xmalloc_ptr and
then fixes all the callers. This allows for the removal of some
cleanups.
gdb/ChangeLog
2018-07-17 Tom Tromey <tom@tromey.com>
* guile/scm-param.c (pascm_set_func, pascm_show_func)
(compute_enum_list, pascm_set_param_value_x)
(gdbscm_parameter_value): Update.
* guile/guile-internal.h (gdbscm_scm_to_string): Update.
(gdbscm_scm_to_host_string): Update.
* guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
Update.
* guile/scm-cmd.c (cmdscm_add_completion): Update.
* guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
* guile/scm-string.c (gdbscm_scm_to_string): Return
unique_xmalloc_ptr.
(gdbscm_scm_to_host_string): Likewise.
commit a1a31cb8dce7d1bfa7878dc08c28af330ef2ed69
Author: Tom Tromey <tom@tromey.com>
Date: Sat May 26 23:26:39 2018 -0600
Return unique_xmalloc_ptr from gdbscm_safe_eval_string
This changes gdbscm_safe_eval_string to return a unique_xmalloc_ptr.
This allows for the removal of some cleanups. It also fixes a
potential latent memory leak in gdbscm_set_backtrace.
gdb/ChangeLog
2018-07-17 Tom Tromey <tom@tromey.com>
* guile/guile.c (gdbscm_eval_from_control_command): Update.
* guile/guile-internal.h (gdbscm_safe_eval_string): Update.
* guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
* guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
unique_xmalloc_ptr.
commit 15bf30027bcb167833a0ca2c619c03f177ef1ba4
Author: Tom Tromey <tom@tromey.com>
Date: Sat May 26 23:21:23 2018 -0600
Change gdbscm_exception_message_to_string to return a unique_xmalloc_ptr
This changes gdbscm_exception_message_to_string to return a
unique_xmalloc_ptr, allowing for the removal of some cleanups.
unique_xmalloc_ptr was chosen because at the root of the call chains
is a function from Guile that returns a malloc'd string.
gdb/ChangeLog
2018-07-17 Tom Tromey <tom@tromey.com>
* guile/scm-param.c (pascm_signal_setshow_error): Update.
* guile/guile-internal.h (gdbscm_exception_message_to_string):
Update.
* guile/scm-cmd.c (cmdscm_function): Update.
* guile/scm-pretty-print.c
(ppscm_print_exception_unless_memory_error): Update.
* guile/scm-exception.c (gdbscm_exception_message_to_string):
Return unique_xmalloc_ptr.
commit 7eb1a66c26b57803bb4245f84cf15278297bb649
Author: Tom Tromey <tom@tromey.com>
Date: Sat May 26 23:16:13 2018 -0600
Use std::string in ppscm_make_pp_type_error_exception
This changes ppscm_make_pp_type_error_exception to use std::string,
removing a cleanup.
gdb/ChangeLog
2018-07-17 Tom Tromey <tom@tromey.com>
* guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
Use string_printf.
commit c691de6a16a87adc686ce5cd6c9be54ee0b1a8c1
Author: Maciej W. Rozycki <macro@mips.com>
Date: Tue Jul 17 20:04:53 2018 +0100
BFD: Use `bfd_is_abs_symbol' to determine whether a symbol is absolute
Use `bfd_is_abs_symbol' to determine whether a symbol is absolute,
avoiding a problem with ordinary symbols defined in a linker script
outside an output section definition. Such symbols have its owning
section set to the absolute section up to the final link phase. A flag
has been added to the link hash to identify such symbols. Rather than
checking the flag by hand, use the macro that does it uniformly for all
users.
bfd/
* elf32-nds32.c (nds32_elf_relax_loadstore): Use
`bfd_is_abs_symbol' rather than `bfd_is_abs_section' in checking
whether the symbol is absolute.
(nds32_elf_relax_lo12): Likewise.
* elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Likewise.
(elfNN_aarch64_check_relocs): Likewise.
* xcofflink.c (xcoff_need_ldrel_p): Likewise.
(bfd_xcoff_import_symbol): Likewise.
(xcoff_write_global_symbol): Likewise.
commit d5c928c05356b22af08450bf43b262ccc1b1d8ee
Author: Maciej W. Rozycki <macro@mips.com>
Date: Tue Jul 17 20:04:53 2018 +0100
LD: Export relative-from-absolute symbol marking to BFD
It is usually possible to tell absolute and ordinary symbols apart in
BFD throughout the link, by checking whether the section that owns the
symbol is absolute or not.
That however does not work for ordinary symbols defined in a linker
script outside an output section statement. Initially such symbols are
entered into to the link hash as absolute symbols, owned by the absolute
section. A flag is set in the internal linker expression defining such
symbols to tell the linker to convert them to section-relative ones in
the final phase of the link. That flag is however not accessible to BFD
linker code, including BFD target code in particular.
Add a flag to the link hash then to copy the information held in the
linker expression. Define a macro, `bfd_is_abs_symbol', for BFD code to
use where determining whether a symbol is absolute or ordinary is
required before the final link phase.
This macro will correctly identify the special `__ehdr_start' symbol as
ordinary throughout link, for example, even though early on it will be
assigned to the absolute section. Of course this does not let BFD code
identify what the symbol's ultimate section will be before the final
link phase has converted this symbol (in `update_definedness').
include/
* bfdlink.h (bfd_link_hash_entry): Add `rel_from_abs' member.
bfd/
* linker.c (bfd_is_abs_symbol): New macro.
* bfd-in2.h: Regenerate.
ld/
* ldexp.c (exp_fold_tree_1) <etree_assign, etree_provide>
<etree_provided>: Copy expression's `rel_from_abs' flag to the
link hash.
commit 27724bad005cd734eb0b990205d315f8e2d3bd35
Author: Jim Wilson <jimw@sifive.com>
Date: Tue Jul 17 09:44:42 2018 -0700
RISC-V: Don't decrement pc after break.
gdb/
* riscv-tdep.c (riscv_has_feature): Delete comment that refers to
set_gdbarch_decr_pc_after_break. Call riscv_read_misa_reg always.
(riscv_gdbarch_init): Delete local has_compressed_isa. Delete now
unecessary braces after EF_RISCV_RVC test. Delete call to
set_gdbarch_decr_pc_after_break.
commit ce73f310150418a9a1625ab60a527d959096a9e2
Author: Jim Wilson <jimw@sifive.com>
Date: Tue Jul 17 09:42:23 2018 -0700
RISC-V: Correct legacy misa register number.
gdb/
* riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
RISCV_LAST_FP_REGNUM + 1.
(RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
commit 056dec39ed11e0027ae399018c3fef3a719718b9
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jun 28 11:19:33 2018 -0600
Remove --disable-gdbcli
I think it doesn't really make sense to allow building gdb without the
CLI. Perhaps at one time this was a goal, but libgdb is long gone and
the CLI is intrinsic to gdb.
So, this patch removes the implementation of this configure option.
It is still recognized (this is autoconf's default), but does nothing.
This simplifies configure.ac and Makefile.in a bit.
Tested by rebuilding.
gdb/ChangeLog
2018-07-17 Tom Tromey <tom@tromey.com>
* configure.ac: Remove --disable-gdbcli.
* configure: Rebuild.
* Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
(SUBDIR_CLI_CFLAGS): Remove.
(SFILES): Use SUBDIR_CLI_SRCS.
(COMMON_OBS): Use SUBDIR_CLI_OBS.
commit 4735f0edf4265e3e260e10a12921baf17987a020
Author: Tom Tromey <tom@tromey.com>
Date: Fri Jun 29 15:10:04 2018 -0600
Use scoped_free_pendings in coff_symtab_read
PR gdb/18624 concerns an assertion failure that occurs when setting a
breakpoint in a Go program on Windows.
What happens here is that coff_symtab_read uses buildsym but does not
instantiate scoped_free_pendings. So, the struct pending objects are
never released. Later, dwarf2read.c calls buildsym_init, which
asserts.
This patch fixes the problem by instantiating scoped_free_pendings in
coff_symtab_read.
Tested using the test executable from the PR. I don't know how to
test this more fully.
gdb/ChangeLog
2018-07-17 Tom Tromey <tom@tromey.com>
PR gdb/18624:
* coffread.c (coff_symtab_read): Use scoped_free_pendings.
commit 0909f342a21207c0b096e8caa7462b1c6809298e
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Jul 17 00:00:37 2018 +0000
Automatic date update in version.in
commit 117a0e996dab2abae985a2b4251ebfb092955dc8
Author: Jim Wilson <jimw@sifive.com>
Date: Mon Jul 16 14:50:36 2018 -0700
RISC-V: Add osabi support.
gdb/
* riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
commit 3fd217186c573ccbe22ad1512578fd316cd7870a
Author: Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
Date: Mon Jul 16 12:42:22 2018 -0300
Fix typo in NT_PPC_TM_CVSX note description
2018-07-16 Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
binutils/
* readelf.c (get_note_type): Fix typo in NT_PPC_TM_CVSX note
description.
commit cb2366c198d4c22b4bae6fca8f9ab4b0234c64aa
Author: Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com>
Date: Mon Jul 16 12:42:22 2018 -0300
Add grok/write functions for new ppc core note sections
This patch adds functions for grokking and writing more register core
note sections (NT_PPC_TAR, NT_PPC_PPR, NT_PPC_DSCR, NT_PPC_EBB,
NT_PPC_PMU, NT_PPC_TM_CGPR, NT_PPC_TM_CFPR, NT_PPC_TM_CVMX,
NT_PPC_TM_CVSX, NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR,
NT_PPC_TM_CDSCR).
2018-07-16 Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com>
bfd/
* elf-bfd.h (elfcore_write_ppc_tar): Add prototype.
(elfcore_write_ppc_ppr): Likewise.
(elfcore_write_ppc_dscr): Likewise.
(elfcore_write_ppc_ebb): Likewise.
(elfcore_write_ppc_pmu): Likewise.
(elfcore_write_ppc_tm_cgpr): Likewise.
(elfcore_write_ppc_tm_cfpr): Likewise.
(elfcore_write_ppc_tm_cvmx): Likewise.
(elfcore_write_ppc_tm_cvsx): Likewise.
(elfcore_write_ppc_tm_spr): Likewise.
(elfcore_write_ppc_tm_ctar): Likewise.
(elfcore_write_ppc_tm_cppr): Likewise.
(elfcore_write_ppc_tm_cdscr): Likewise.
* elf.c (elfcore_write_ppc_tar): New function.
(elfcore_write_ppc_ppr): Likewise.
(elfcore_write_ppc_dscr): Likewise.
(elfcore_write_ppc_ebb): Likewise.
(elfcore_write_ppc_pmu): Likewise.
(elfcore_write_ppc_tm_cgpr): Likewise.
(elfcore_write_ppc_tm_cfpr): Likewise.
(elfcore_write_ppc_tm_cvmx): Likewise.
(elfcore_write_ppc_tm_cvsx): Likewise.
(elfcore_write_ppc_tm_spr): Likewise.
(elfcore_write_ppc_tm_ctar): Likewise.
(elfcore_write_ppc_tm_cppr): Likewise.
(elfcore_write_ppc_tm_cdscr): Likewise.
(elfcore_write_register_note): Call them.
(elfcore_grok_ppc_tar): New function.
(elfcore_grok_ppc_ppr): Likewise.
(elfcore_grok_ppc_dscr): Likewise.
(elfcore_grok_ppc_ebb): Likewise.
(elfcore_grok_ppc_pmu): Likewise.
(elfcore_grok_ppc_tm_cgpr): Likewise.
(elfcore_grok_ppc_tm_cfpr): Likewise.
(elfcore_grok_ppc_tm_cvmx): Likewise.
(elfcore_grok_ppc_tm_cvsx): Likewise.
(elfcore_grok_ppc_tm_spr): Likewise.
(elfcore_grok_ppc_tm_ctar): Likewise.
(elfcore_grok_ppc_tm_cppr): Likewise.
(elfcore_grok_ppc_tm_cdscr): Likewise.
(elfcore_grok_note): Call them.
commit 8a67aaa8186ccfa10374027d0b3645548eb5f30c
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jul 16 14:30:56 2018 -0400
Add missing ChangeLog entry
I forgot (yes, again) the ChangeLog entry in my latest patch.
commit b4792091ca60bd865064a501d50661f522e26636
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jul 16 14:27:50 2018 -0400
Remove unused variables in ia64*tdep.c
gdb/ChangeLog:
* ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
variable.
(libunwind_frame_sniffer): Likewise.
(libunwind_frame_prev_register): Likewise.
(libunwind_sigtramp_frame_sniffer): Likewise.
* ia64-tdep.c (ia64_access_reg): Likewise.
(ia64_access_rse_reg): Likewise.
(ia64_libunwind_sigtramp_frame_this_id): Likewise.
* ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
commit ec74dcd894ce3087dad2b6d0da96c572d5e0c7c6
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jul 16 14:15:09 2018 -0400
Fix compilation error in ia64-vms-tdep.c with libunwind-ia64
I found this when doing a --enable-targets=all build with libunwind-ia64
properly configured.
CXX ia64-vms-tdep.o
/home/emaisin/src/binutils-gdb/gdb/ia64-vms-tdep.c: In function âint ia64_vms_find_proc_info_x(unw_addr_space_t, unw_word_t, unw_proc_info_t*, int, void*)â:
/home/emaisin/src/binutils-gdb/gdb/ia64-vms-tdep.c:79:33: error: invalid conversion from âvoid*â to âgdb_byte* {aka unsigned char*}â [-fpermissive]
pi->unwind_info, pi->unwind_info_size);
^
In file included from /home/emaisin/src/binutils-gdb/gdb/target.h:70:0,
from /home/emaisin/src/binutils-gdb/gdb/exec.h:23,
from /home/emaisin/src/binutils-gdb/gdb/gdbcore.h:29,
from /home/emaisin/src/binutils-gdb/gdb/ia64-vms-tdep.c:25:
/home/emaisin/src/binutils-gdb/gdb/target/target.h:35:12: note: initializing argument 2 of âint target_read_memory(CORE_ADDR, gdb_byte*, ssize_t)â
extern int target_read_memory (CORE_ADDR memaddr, gdb_byte *myaddr,
^
gdb/ChangeLog:
* ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
commit a700e753e5b019fb5d783c4e15cb29f165a339d3
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jul 16 14:07:09 2018 -0400
remote-sim.c: Remove unused variables
gdb/ChangeLog:
* remote-sim.c (gdbsim_target::close,
gdbsim_target::mourn_inferior): Remove unused variables.
commit 8b411ff8d537ae34f1336ba1e9694d694ddde27d
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jul 16 14:08:26 2018 -0400
Add missing ChangeLog entry
I forgot to append the ChangeLog entry to the last commit...
commit 5d691c8829d0e5c4c4b9cfb147c8a873ce18085b
Author: Simon Marchi <simark@simark.ca>
Date: Sat Jul 7 11:10:49 2018 -0400
Fix compilation error in ia64-tdep.c with libunwind-ia64
Commit
9018be22e022 ("Make target_read_alloc & al return vectors")
failed to update the code in ia64-tdep.c, for HAVE_LIBUNWIND_IA64_H.
This patch fixes that.
gdb/ChangeLog:
* ia64-tdep.c (ktab_buf): New global.
(getunwind_table): Return a gdb::optional<gdb::byte_vector>.
(get_kernel_table): Adjust.
commit edb0470b99a9f399ccb5d666173c4315f6cb02c0
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 20 23:42:01 2018 -0600
Use outermost_context_p in more places
This changes a few explicit checks of context_stack_depth to use
outermost_context_p instead. This simplifies some future work.
gdb/ChangeLog
2018-07-16 Tom Tromey <tom@tromey.com>
* xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
* dwarf2read.c (using_directives, new_symbol): Use
outermost_context_p.
* dbxread.c (process_one_symbol): Use outermost_context_p.
* coffread.c (coff_symtab_read): Use outermost_context_p.
commit 6cccc9a89160455aab634784c231af4590d943f3
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 20 23:28:39 2018 -0600
Move the using directives to buildsym_compunit
This moves the globals local_using_directives and
global_using_directives to be members of buildsym_compunit, and adds
the necessary accessors.
gdb/ChangeLog
2018-07-16 Tom Tromey <tom@tromey.com>
* dwarf2read.c (using_directives, read_func_scope)
(read_lexical_block_scope): Update.
* cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
* buildsym.h (local_using_directives, global_using_directives):
Don't declare.
(get_local_using_directives, set_local_using_directives)
(get_global_using_directives): Declare.
* buildsym.c (struct buildsym_compunit) <m_local_using_directives,
m_global_using_directives>: New members.
(finish_block_internal, prepare_for_building)
(reset_symtab_globals, end_symtab_get_static_block)
(push_context): Update.
(get_local_using_directives, set_local_using_directives)
(get_global_using_directives): New functions.
(buildsym_init): Update.
commit 652788a73137d8c16ac67a0cf9a8e51dd336d09e
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 20 22:45:44 2018 -0600
Make free_pending_blocks static
free_pending_blocks can be static because scoped_free_pendings (et al)
arrange for it to be NULL in the "steady state". This removes a
couple of unnecessary calls to free_pending_blocks and changes it to
be static.
gdb/ChangeLog
2018-07-16 Tom Tromey <tom@tromey.com>
* xcoffread.c (xcoff_initial_scan): Don't call
free_pending_blocks.
* dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
* buildsym.h (class scoped_free_pendings): Add constructor.
(free_pending_blocks): Don't declare.
* buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
(free_pending_blocks): Now static.
commit 8419ee5331d5b3253d2bfe1a039f12a167292dfc
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 20 20:48:44 2018 -0600
Move the subfile stack to buildsym_compunit
This moves the global subfile_stack to be a member of
buildsym_compunit. It also change this to be a std::vector, which
simplifies the code.
gdb/ChangeLog
2018-07-16 Tom Tromey <tom@tromey.com>
* buildsym.h (push_subfile, pop_subfile): Update declarations.
* buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
member.
(struct subfile_stack): Remove.
(subfile_stack): Remove.
(push_subfile, pop_subfile, buildsym_init): Update.
commit ccdac490bb3b568e88626afc84017c79e2d086e7
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 20 16:15:14 2018 -0600
Use gdb_assert in two places in buildsym.c
This changes buildsym.c to use gdb_assert rather than internal_error
in a couple of spots.
gdb/ChangeLog
2018-07-16 Tom Tromey <tom@tromey.com>
* buildsym.c (push_subfile): Use gdb_assert.
(pop_subfile): Use gdb_assert.
commit 43130d6f969cebcd407e210fd06e565647401ba9
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 20 12:07:44 2018 -0600
Remove merge_symbol_lists
I discovered that merge_symbol_lists is unused, so this removes it.
gdb/ChangeLog
2018-07-16 Tom Tromey <tom@tromey.com>
* buildsym.h (merge_symbol_lists): Remove.
* buildsym.c (merge_symbol_lists): Remove.
commit 77d6f1aa16685bc715c95decf6e3d3ae2e70dbc1
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 20 12:06:43 2018 -0600
Move scan_file_globals declaration to stabsread.h
scan_file_globals is defined in stabsread.c, so move its declaration
to stabsread.h.
gdb/ChangeLog
2018-07-16 Tom Tromey <tom@tromey.com>
* stabsread.c (scan_file_globals): Update comment.
* stabsread.h (scan_file_globals): Move from buildsym.h.
* buildsym.h (scan_file_globals): Move to stabsread.h.
commit 2c722d18f32b1c1f82c7546b1e41edec47d88dce
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 20 11:25:20 2018 -0600
Remove buildsym_new_init
buildsym_new_init is just an alias for buildsym_init. This removes
it. In the long run buildsym_init will also go away; this patch just
helps make things a bit clearer in the meantime.
gdb/ChangeLog
2018-07-16 Tom Tromey <tom@tromey.com>
* xcoffread.c (xcoff_new_init): Update.
* mipsread.c (mipscoff_new_init): Update.
* mdebugread.c (mdebug_build_psymtabs): Update.
* elfread.c (elf_new_init): Update.
* dbxread.c (dbx_new_init, coffstab_build_psymtabs)
(elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
* buildsym.h (buildsym_new_init): Don't declare.
* buildsym.c (buildsym_new_init): Remove.
commit 5985ac614d7e8ae65faadf62e9302c1c096b5647
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 20 11:19:14 2018 -0600
Move within_function to stabsread
The global within_function is only used by a few symbol readers. This
patch moves the global out of buildsym and into stabsread, which
seemed like a better fit. It also arranges for the existing readers
to clear the global at the appropriate time.
gdb/ChangeLog
2018-07-16 Tom Tromey <tom@tromey.com>
* stabsread.h (within_function): Move from buildsym.h.
* stabsread.c (start_stabs): Clear within_function.
* coffread.c (coff_start_symtab): Clear within_function.
* buildsym.h (within_function): Move to stabsread.h.
* buildsym.c (prepare_for_building): Update.
commit 6b84eeb21628a89b40c985b527d3d5db7806c93c
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 20 11:16:57 2018 -0600
Move processing_gcc to stabsread
processing_gcc is also only used by stabsread -- it is set by the
DWARF reader, but this turns out not to be needed. So, this patch
moves processing_gcc and removes the assignment from the DWARF reader.
gdb/ChangeLog
2018-07-16 Tom Tromey <tom@tromey.com>
* stabsread.h (processing_gcc_compilation): Move from buildsym.h.
* dwarf2read.c (dwarf2_start_symtab): Don't set
processing_gcc_compilation.
* buildsym.h (processing_gcc_compilation): Move to stabsread.h.
commit 2150c3ef045a525b1d74c06eb8b0811621f264e3
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 20 11:13:12 2018 -0600
Move some code from buildsym to stabsread
A few things that currently reside in buildsym.c turn out to be
specific to the stabs reader. This patch moves these from
buildsym.[ch] to stabsread.[ch].
gdb/ChangeLog
2018-07-16 Tom Tromey <tom@tromey.com>
* stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
(next_symbol_text_func): Move from buildsym.h.
* stabsread.c (hashname): Move from buildsym.c.
* buildsym.h (HASHSIZE, symnum, next_symbol_text)
(next_symbol_text_func, hashname): Move to stabsread.h.
* buildsym.c: Don't include bcache.h
(hashname): Move to stasbread.c.
commit 0ec44fc067ca71f968a4fedda1c17cba2e5ad0ca
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 20 11:12:57 2018 -0600
Make context_stack_size static in buildsym.c
context_stack_size is declared in buildsym.h, but only used in
buildsym.c. This makes it static in buildsym.c.
gdb/ChangeLog
2018-07-16 Tom Tromey <tom@tromey.com>
* buildsym.h (context_stack_size): Don't declare.
* buildsym.c (context_stack_size): New global.
commit 81cc346dc98678c5d196c7110795d8f2edfd8f50
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 20 11:04:16 2018 -0600
Move processing_acc_compilation to dbxread.c
processing_acc_compilation is only used in dbxread.c, so move it
there.
gdb/ChangeLog
2018-07-16 Tom Tromey <tom@tromey.com>
* dbxread.c (processing_acc_compilation): New global.
* buildsym.h (processing_acc_compilation): Don't declare.
commit 2c99ee5c4f44d52258fa176563cc6a4cfbf0069d
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 20 11:01:37 2018 -0600
Move last_source_start_addr to buildsym_compunit
This moves the global last_source_start_addr into buildsym_compunit,
adding some accessors as well.
gdb/ChangeLog
2018-07-16 Tom Tromey <tom@tromey.com>
* xcoffread.c (aix_process_linenos, complete_symtab): Update.
* dbxread.c (read_ofile_symtab): Update.
* coffread.c (coff_start_symtab, coff_end_symtab): Update.
* buildsym.h (last_source_start_addr): Remove.
(set_last_source_start_addr, get_last_source_start_addr):
Declare.
* buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
parameter.
(struct buildsym_compunit) <m_last_source_start_addr>: New
member.
(prepare_for_building): Remove start_addr parameter.
(start_symtab, restart_symtab, end_symtab_get_static_block)
(end_symtab_with_blockvector): Update.
(set_last_source_start_addr, get_last_source_start_addr): New
functions.
commit 530fedbcbf61b6d74c76a8ba720fe29d98896831
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 20 10:48:41 2018 -0600
Move have_line_numbers to buildsym_compunit
This moves the global have_line_numbers into buildsym_compunit.
gdb/ChangeLog
2018-07-16 Tom Tromey <tom@tromey.com>
* buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
member.
(have_line_numbers): Remove.
(record_line, prepare_for_building, end_symtab_get_static_block)
(augment_type_symtab): Update.
commit 6a976300e78cf6c90b5b70626ff1b28f495d8bab
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 20 10:46:25 2018 -0600
Move pending_macros to buildsym_compunit
This moves the pending_macros global into buildsym_compunit.
gdb/ChangeLog
2018-07-16 Tom Tromey <tom@tromey.com>
* buildsym.c (~buildsym_compunit): Free the macro table.
(struct buildsym_compunit) <get_macro_table, release_macros>: New
methods.
<m_pending_macros>: New member.
(pending_macros): Remove.
(~scoped_free_pendings, get_macro_table, prepare_for_building)
(reset_symtab_globals, end_symtab_get_static_block)
(end_symtab_with_blockvector, augment_type_symtab)
(buildsym_init): Update.
commit c0015d4497e0057536b5ec7e0fed8f8bca07572e
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 20 10:39:24 2018 -0600
Move last_source file to buildsym_compunit
This moves the global last_source_file into buildsym_compunit.
gdb/ChangeLog
2018-07-16 Tom Tromey <tom@tromey.com>
* buildsym.c (buildsym_compunit::buildsym_compunit): Add name
parameter.
(buildsym_compunit::set_last_source_file): New method.
<m_last_source_file>: New member.
(prepare_for_building): Remove "name" parameter.
(start_symtab, restart_symtab, reset_symtab_globals): Update.
(last_source_file): Remove.
(set_last_source_file, get_last_source_file): Update.
commit e62cca7ccb9ea47d18a0812a2c27f00e5048367b
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 20 10:25:53 2018 -0600
Add assert in prepare_for_building
This adds an assertion in prepare_for_building. This was useful for
verifying whether some subsequent changes were valid.
gdb/ChangeLog
2018-07-16 Tom Tromey <tom@tromey.com>
* buildsym.c (prepare_for_building): Add assert.
commit 905eb0e293820ae91941100ebed291a8f74e1f12
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 20 10:22:19 2018 -0600
Change buildsym_compunit::comp_dir to be a unique_xmalloc_ptr
This change buildsym_compunit::comp_dir to be a unique_xmalloc_ptr.
This is just a small cleanup to remove some manual memory management.
gdb/ChangeLog
2018-07-16 Tom Tromey <tom@tromey.com>
* buildsym.c (~buildsym_compunit): Update.
(struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
(start_subfile, patch_subfile_names)
(end_symtab_with_blockvector): Update.
commit b248663fe5654192101fc95dbe0cbfb389564359
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 20 10:20:53 2018 -0600
Use new and delete for buildsym_compunit
This changes buildsym_compunit to use new and delete.
gdb/ChangeLog
2018-07-16 Tom Tromey <tom@tromey.com>
* buildsym.c (struct buildsym_compunit): Add constructor,
destructor, initializers.
(start_buildsym_compunit): Remove.
(free_buildsym_compunit): Use "delete".
(start_symtab, restart_symtab): Use "new".
commit ad96220cc73a2daa24b1d2b2e4afed557879e6f4
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Jul 16 14:14:17 2018 +0100
Update release making notes to metion checking for new top level files.
* README-how-to-make-a-release: Add note to check for new top
level files and add them to the src-release.sh script.
commit 0a8288f78ad4d8d273b3dc7ab10b0fd43464d0aa
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Jul 16 14:10:35 2018 +0100
Update the src-release script to include the new top level files test-driver and ar-lib.
* src-release.sh (DEVO_SUPPORT): Add test-driver and ar-lib.
commit 3ac21baa8498d3aa9951f79e2c3336d532eeff7b
Author: Jan Beulich <jbeulich@novell.com>
Date: Mon Jul 16 08:19:21 2018 +0200
x86: fix operand size checking
Currently mov to/from control, debug, and test register insns accept any
size GPR operand (general pattern: templates with D set and both
operands being registers in distinct register files). This is due to
improper checking of the reverse case, including not informing the
caller whether a straight and/or reverse match was successful.
The helper functions need to be told two indexes: One to index the given
operand types array, and the other to index the template one. The caller
must attempt a further straight match only if the function reported a
straight match (and respectively for reverse matches).
commit 4ad422a6354ee4c9a5c6e0236b4f9ded36039bb9
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Jul 16 00:00:40 2018 +0000
Automatic date update in version.in
commit 4869c5854e255b545447fdda31a6f1a69d937fee
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sun Jul 15 10:40:49 2018 -0400
Fix filename in prior ChangeLog entry
commit b63ea3389dd991ebdaefe3ee264855ad923cf700
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Jul 15 00:01:15 2018 +0000
Automatic date update in version.in
commit 1074bc6d41f480e9e7b8f2e68f778225da2559b7
Author: Cary Coutant <ccoutant@gmail.com>
Date: Sat Jul 14 11:52:27 2018 -0700
Fix internal error when using --emit-relocs with plugins.
When an .eh_frame section has deferred layout because of plugins, gold
was neglecting to mark the section as deferred. When we later processed
the corresponding relocation section, we were then ignoring it, causing
the internal error later on in the link.
gold/
PR gold/23397
* object.cc (Sized_relobj_file::do_layout): Mark section as deferred.
* testsuite/Makefile.am (plugin_test_1): Add --emit-relocs option to
existing test case.
* testsuite/Makefile.in: Regenerate.
commit 1b115e8e0e051d65d0747f0a8a84eb6453866729
Author: Cary Coutant <ccoutant@gmail.com>
Date: Sat Jul 14 12:29:03 2018 -0700
Fix problem causing duplicated linker-generated symbols with versions.
When generating _end, _edata, etc. symbols, and a version script provides
a version name, and we are linking against another shared library that
provides those symbols with a different version, gold ends up trying to
resolve the other shared library's symbols to the new definitions, resulting
in two copies of each symbol, one as default, and one as non-default.
This patch tests for that condition, and ignores the symbols provided
by the other shared library.
gold/
PR gold/23409
* symtab.cc (Symbol_table::define_special_symbol): Add check for
version name on existing symbol.
* testsuite/Makefile.am (ver_test_pr23409): New test case.
* testsuite/Makefile.in: Regenerate.
* testsuite/ver_test_pr23409.sh: New test script.
* testsuite/ver_test_pr23409_1.script: New version script.
* testsuite/ver_test_pr23409_2.script: New version script.
commit 6cb624f8a02a844885025dd6d756f9dd1d380023
Author: Nick Clifton <nickc@redhat.com>
Date: Sat Jul 14 20:23:52 2018 +0100
Update the notes on how to make a binutils release.
* README-how-to-make-a-release: Updated with corrections based on
the 2.31 release experience.
commit ff27d0737ef0c9433a6a7c83c1e678ac57a27699
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Fri Jul 13 22:06:34 2018 -0400
Remove struct keyword in range-based for loop
Fix this with gcc 6.3.0:
/home/simark/src/binutils-gdb/gdb/symfile.c: In function 'void set_objfile_default_section_offset(objfile*, const section_addr_info&, CORE_ADDR)':
/home/simark/src/binutils-gdb/gdb/symfile.c:2114:14: error: types may not be defined in a for-range-declaration [-Werror]
for (const struct other_sections *objf_sect : objf_addrs_sorted)
^~~~~~
gdb/ChangeLog:
* symfile.c (set_objfile_default_section_offset): Remove struct
keyword.
commit 1e65a4a40e778e1eb58fb5d3b8d00be879f7ee63
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Jul 14 00:00:32 2018 +0000
Automatic date update in version.in
commit 31375626546b074268b2e1ccc7b52704b04bdb6c
Author: Stafford Horne <shorne@gmail.com>
Date: Sat Jul 14 05:59:26 2018 +0900
sim: Add Stafford Horne as or1k maintainer.
Since I helped upstream the or1k port I would like to claim myself as
maintainer.
sim/ChangeLog:
yyyy-mm-dd Stafford Horne <shorne@gmail.com>
* MAINTAINERS (or1k): Add myself as or1k maintainer.
Signed-off-by: Stafford Horne <shorne@gmail.com>
commit 6a15ecf5e0538ba416f6578403fceb9e5af98120
Author: Stafford Horne <shorne@gmail.com>
Date: Sat Jul 14 05:59:26 2018 +0900
gdb: Add Stafford Horne as or1k maintainer.
Since I helped upstream openrisc I would like to claim responsibility to
maintain it.
gdb/ChangeLog:
yyyy-mm-dd Stafford Horne <shorne@gmail.com>
* (Responsible Maintainers): Add myself as or1k maintainer.
Signed-off-by: Stafford Horne <shorne@gmail.com>
commit 7f1f7e23939adc7d71036a17fc6081e3af7ca585
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Fri Jul 13 16:20:34 2018 -0400
Expect for another variant of error message when gdbserver cannot resolve hostname
I've noticed that on a few hosts, when given an invalid hostname,
gdbserver fails with:
spawn /../../gdb/gdbserver/gdbserver --once tcp8:123:2353 /gdb/build/fedora-s390x/build/gdb/testsuite/outputs/gdb.server/server-connect/server-connect
tcp8:123:2353: cannot resolve name: No address associated with hostname
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Exiting
Unfortunately, this causes a fail on the new
gdb.server/server-connect.exp test (introduced by the IPv6 patch):
FAIL: gdb.server/server-connect.exp: tcp8: start gdbserver: gdbserver should fail but did not
This happens because we're expecting for another variant of this error
message:
cannot resolve name: Name or service not known
Therefore, this patch extends the helper function 'gdbserver_start' to
also recognize the "No address associated with hostname" message.
This "fixes" the testcase on the hosts that use this variant.
gdb/testsuite/ChangeLog:
2018-07-13 Sergio Durigan Junior <sergiodj@redhat.com>
* lib/gdbserver-support.exp (gdbserver_start): Expect for the
message "No address associated with hostname" when gdbserver
cannot resolve the hostname.
commit 027a4c30d03e3f434ddfa61e7f026e3b15f83daa
Author: Tom Tromey <tom@tromey.com>
Date: Fri Jul 13 11:14:57 2018 -0600
Remove a warning on macOS
This removes a clang warning coming from -Wmissing-braces.
ChangeLog
2018-07-13 Tom Tromey <tom@tromey.com>
* symfile.c (set_objfile_default_section_offset): Use extra braces
around initializer.
commit b84f59efc6d6d8e97135a1b92ca224d1b2cffe16
Author: Nick Clifton <nickc@redhat.com>
Date: Fri Jul 13 15:48:49 2018 +0100
Add a test that relocs are correctly generated for missing build notes.
* testsuite/gas/elf/missing-build-notes.s: New test. Checks that
relocs are correctly generated for missing build notes.
* testsuite/gas/elf/missing-build-notes.d: New file. Expected
output from objdump.
* testsuite/gas/elf/elf.exp: Run the new test.
commit 4ef4710f5c3e417dc43057e10d7675699bb38431
Author: Nick Clifton <nickc@redhat.com>
Date: Fri Jul 13 11:46:44 2018 +0100
Allow bit-patterns in the immediate field of ARM neon mov instructions.
* config/tc-arm.c (do_neon_mov): When converting an integer
immediate into a floating point value, check that the conversion
is valid. Also warn if the immediate is valid as both a floating
point value and a bit pattern.
* testsuite/gas/arm/vfp-mov-enc.s: Add instructions that use
floating point bit patterns.
* testsuite/gas/arm/vfp-mov-enc.d: Add regexps for the disassembly
of the new insns.
commit 5c1eda30f55e9c543de26fec0246f4d7655c81e4
Author: Andreas Arnez <arnez@linux.vnet.ibm.com>
Date: Fri Jul 13 12:46:14 2018 +0200
S390: Fix displaced stepping of "basr r,0"
The BASR instruction behaves differently depending on whether the second
operand is a number from 1 to 15, or zero. In the former case BASR jumps
to the address contained in the general register of that number, but in
the latter case no jump is performed. GDB's displaced-stepping logic does
not distinguish these cases, although it should.
This is fixed. In the case where no jump is performed the PC is adjusted
to point back after the original instruction. Otherwise the PC is left
alone.
gdb/ChangeLog:
* s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
non-branching basr.
commit a780ef4f27f8bc44082be81fdbee44bb11f1049c
Author: Pedro Alves <palves@redhat.com>
Date: Fri Jul 13 10:28:47 2018 +0100
GDBserver: Pass process_info pointer to target_kill
We start from a process_info pointer, pass down process->pid, and
then the target_kill implementations need to find the process from the
pid again. Pass the process_info pointer down directly instead.
gdb/gdbserver/ChangeLog:
2018-07-13 Pedro Alves <palves@redhat.com>
* linux-low.c (linux_kill): Change parameter to process_info
pointer instead of pid. Adjust.
* lynx-low.c (lynx_kill): Likewise.
* nto-low.c (nto_kill): Likewise.
* spu-low.c (spu_kill): Likewise.
* win32-low.c (win32_kill): Likewise.
* server.c (handle_v_kill, kill_inferior_callback)
(detach_or_kill_for_exit): Adjust.
* target.c (kill_inferior): Change parameter to process_info
pointer instead of pid. Adjust.
* target.h (struct target_ops) <kill>: Change parameter to
process_info pointer instead of pid. Adjust all implementations
and callers.
(kill_inferior): Likewise.
commit ef2ddb33bd29a7c4f7027b9e37e55c74c15af825
Author: Pedro Alves <palves@redhat.com>
Date: Fri Jul 13 10:28:46 2018 +0100
GDBserver: Pass process_info pointer to target_detach and target_join
We start from a process_info pointer, pass down process->pid, and then
the target_detach and target_join implementations need to find the
process from the pid again. Pass the process_info pointer down
directly instead.
gdb/gdbserver/ChangeLog:
2018-07-13 Pedro Alves <palves@redhat.com>
* linux-low.c (linux_detach, linux_join): Change parameter to
process_info pointer instead of pid. Adjust.
* lynx-low.c (lynx_detach, lynx_join): Likewise.
* nto-low.c (nto_detach): Likewise.
* spu-low.c (spu_detach, spu_join): Likewise.
* win32-low.c (win32_detach, win32_join): Likewise.
* server.c (handle_detach, detach_or_kill_for_exit): Adjust.
* target.h (struct target_ops) <detach, join>: Change parameter to
process_info pointer instead of pid. Adjust all implementations
and callers.
(detach_inferior, join_inferior): Rename 'pid' parameter to
'proc'.
commit 9451a3b9a1af46cbe988c3a2cf4c4754d7e84143
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Jul 13 00:01:06 2018 +0000
Automatic date update in version.in
commit bc7b042bcb22320ddc1b54d45b6a1d264dcbfbe6
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Mon May 21 09:16:13 2018 +0200
Add a self-test for cli-utils.c
tests added for:
* number_or_range_parser
In particular, it tests the cur_tok when parsing is finished.
* parse_flags
* parse_flags_qcs
gdb/ChangeLog
2018-07-12 Philippe Waroquiers <philippe.waroquiers@skynet.be>
* Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
unittests/cli-utils-selftests.c
* unittests/cli-utils-selftests.c: New file.
commit 5759ebb3b35f4bff8aba7ba06e8b0eb88d9d0831
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Sun May 20 20:31:27 2018 +0200
Modify gdb.threads/pthreads.exp to test FLAG qcs arguments for thread apply.
Also, add prefixes to make some non unique tests unique.
gdb/testsuite/ChangeLog
2018-07-12 Philippe Waroquiers <philippe.waroquiers@skynet.be>
* gdb.threads/pthreads.exp: Test qcs FLAG arguments.
Add some test prefixes to make tests unique.
commit 3606ccab0fea904adce8487ce4b2b26253a861e7
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Thu Jul 12 23:04:13 2018 +0200
Add a test for 'frame apply'
gdb/testsuite/ChangeLog
2018-07-12 Philippe Waroquiers <philippe.waroquiers@skynet.be>
* gdb.base/frameapply.c: New file.
* gdb.base/frameapply.exp: New file.
commit a14c4daab2fe90612e63169425e74098e74d5f28
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Thu Jul 12 23:02:14 2018 +0200
Announce the user visible changes for frame/thread apply in NEWS.
'frame apply', faas, taas, tfaas commands and [FLAG]... arg for thread apply.
gdb/ChangeLog
2018-07-12 Philippe Waroquiers <philippe.waroquiers@skynet.be>
* NEWS: Mention new commands. Mention change to 'thread apply'.
commit 0a2323003c1ecc356252426f6ed3f45309849ad3
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Sun Jun 24 13:02:43 2018 +0200
Documents the new commands 'frame apply', faas, taas, tfaas
Documents the new commands 'frame apply', faas, taas, tfaas.
Documents the new arguments [FLAG]... added to 'thread apply'.
gdb/doc/ChangeLog
2018-07-12 Philippe Waroquiers <philippe.waroquiers@skynet.be>
* gdb.texinfo (Debugging Programs with Multiple Threads):
Document changes to 'thread apply'. Document 'taas'.
Document 'tfaas'.
(Examining the Stack): Document 'frame apply'. Document 'faas'.
commit 1fe75df7eb1fcdf56bbf3041b473bd9a80120054
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Sat May 5 20:33:38 2018 +0200
Add [FLAG]... arguments to 'thread apply'.
Enhance 'thread apply' command to also accept [FLAG]... arguments.
An example usage for this new argument:
thread apply all -s frame apply all -s p some_local_var_somewhere
Prints the thread id, frame location and some_local_var_somewhere
value in frames of threads that have such local var.
To make the life of the user easier, the most typical use cases
have shortcuts :
taas : shortcut for 'thread apply all -s'
tfaas : shortcut for 'thread apply all -s frame apply all -s"
An example usage :
tfaas p some_local_var_somewhere
same as the longer:
'thread apply all -s frame apply all -s p some_local_var_somewhere'
gdb/ChangeLog
2018-07-12 Philippe Waroquiers <philippe.waroquiers@skynet.be>
* thread.c (thr_try_catch_cmd): New function.
(thread_apply_all_command): Handle qcs flags.
(thread_apply_command): Handle qcs flags.
(taas_command): New function.
(tfaas_command): New function.
(_initialize_thread): Update to setup the new commands 'taas
and 'tfaas'. Change doc string for 'thread apply'.
commit 6a70eb7d9bf1646e7a7379eb8efdba30c2cb9c92
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Sat May 5 20:27:11 2018 +0200
Implement frame apply [all | COUNT | -COUNT | level LEVEL... ] [FLAG]... COMMAND.
Implement frame apply [all | COUNT | -COUNT | level LEVEL... ] [FLAG]... COMMAND.
Also implement the command 'faas COMMAND', a shortcut for
'frame apply all -s COMMAND'.
The syntax of 'frame apply' to specify some innermost or outermost
frames is similar to 'backtrace' command, using COUNT or -COUNT.
To apply a COMMAND to a more specific set of frames, the following
new command and syntax can be used:
frame apply level LEVEL... [FLAG]... COMMAND
where LEVEL is one or more frame levels or range of frame levels.
The new command 'frame apply' allows to apply a COMMAND to a number of frames,
or to all frames, or to a set of frames.
The optional [FLAG]... arguments allow to control what output to produce
and how to handle errors raised when applying COMMAND to a frame.
Some example usages for this new command:
frame apply all info frame
Produce info frame for all frames.
frame apply all p $sp
For each frame, print the location, followed by the frame sp.
frame apply all -q p $sp
Same as before, but -q flag (q = quiet) indicates to only print
the frames sp.
frame apply all p some_local_var_somewhere
Print some_local_var_somewhere in all frames. 'frame apply'
will abort as soon as the print command fails.
frame apply all -c p some_local_var_somewhere
Same as before, but -c flag (c = continue) means to
print the error and continue applying command in case the
print command fails.
frame apply all -s p some_local_var_somewhere
Same as before, but -s flag (s = silent) means to
be silent for frames where the print command fails.
In other words, this allows to 'search' the frame in which
some_local_var_somewhere can be printed.
frame apply all -s -q p some_local_var_somewhere
Same as before, but does not print the frame info in which
the variable is found.
frame apply level 2-4 5 8-10 -s p i = i + 1
Increments i in the identified frames.
gdb/ChangeLog
2018-07-12 Philippe Waroquiers <philippe.waroquiers@skynet.be>
* stack.c: (trailing_outermost_frame): New function, mostly
extracted from backtrace_command_1.
(leading_innermost_frame): New function.
(backtrace_command_1): Update to call trailing_outermost_frame.
(frame_apply_command_count): New function.
(frame_apply_level_command): New function.
(frame_apply_all_command): New function.
(frame_apply_command): New function.
(faas_command): New function.
(frame_cmd_list): New variable.
(_initialize_stack): Update to setup the new commands 'frame apply'
and 'faas'.
commit 529c08b25ec7b9ba2a0b94083a08ec8d1a6e5528
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Sat May 5 20:20:56 2018 +0200
Add helper functions parse_flags and parse_flags_qcs
Add helper functions parse_flags and parse_flags_qcs.
parse_flags helper function allows to look for a set of flags at
the start of a string.
A flag must be given individually.
parse_flags_qcs is a specialised helper function to handle
the flags -q, -c and -s, that are used in the new command 'frame apply'
and in the command 'thread apply.
Modify number_or_range_parser::get_number to differentiate a
- followed by digits from a - followed by an alpha (i.e. a flag or an option).
That is needed for the addition of the [FLAG]... arguments to
thread apply ID... [FLAG]... COMMAND
Remove bool number_or_range_parser::m_finished, rather
implement the 'finished' logic inside number_or_range_parser::finished.
The new logic properly detects the end of parsing even if not at
end of the string. This ensures that number_or_range_parser::cur_tok
really points past the last parsed token when parsing is finished.
Before, it was always pointing at the end of the string.
As parsing now is finished directly when not positioned on a number,
number_is_in_list must do an error check before the loop getting all
numbers.
The error message for 'thread apply -$unknownconvvar p 1'
is now the more clear:
Convenience variable must have integer value.
Invalid thread ID: -$unknownconvvar p 1
instead of previously:
negative value
gdb/ChangeLog
2018-07-12 Philippe Waroquiers <philippe.waroquiers@skynet.be>
* cli-utils.c (number_or_range_parser::get_number): Only handle
numbers or convenience var as numbers.
(parse_flags): New function.
(parse_flags_qcs): New function.
(number_or_range_parser::finished): Ensure parsing end is detected
before end of string.
* cli-utils.h (parse_flags): New function.
(parse_flags_qcs): New function.
(number_or_range_parser): Remove m_finished bool.
(number_or_range_parser::skip_range): Set m_in_range to false.
gdb/testsuite/ChangeLog
2018-07-12 Philippe Waroquiers <philippe.waroquiers@skynet.be>
* gdb.base/skip.exp: Update expected error message.
commit 78da84f9940586202deb4e43decea6d32d237080
Author: Maciej W. Rozycki <macro@mips.com>
Date: Thu Jul 12 20:01:44 2018 +0100
MIPS/LD/testsuite: Correct mips-elf.exp test ABI/emul/endian arrangement
Similarly to commit 86b24e15c45b ("MIPS/LD/testsuite: Correct
comm-data.exp test ABI/emul/endian arrangement") update the mips-elf.exp
test script to:
- correctly select emulations for targets using non-traditional MIPS
emulations,
- correctly select ABIs for targets that do not support all of them,
- use the default endianness selection where possible to benefit targets
that support only one,
- simplify test invocation by providing ABI-specific `run_dump_test'
wrappers, specifically `run_dump_test_o32', `run_dump_test_n32',
`run_dump_test_n64' and `run_dump_test_eabi', which remove the need to
use conditionals across the Expect script or to repeat ABI-specific
GAS and LD flags with each invocation,
removing numerous test failures for `mips-sgi-irix6', `mips64-openbsd',
`mips64el-openbsd' and `mips64el-ps2-elf' targets and broadening
coverage for several MIPS targets.
There are some new failures for the `mips64el-ps2-elf' target with tests
that were not previously run for that target:
FAIL: MIPS16 link branch to absolute expression (n32)
FAIL: MIPS16 link branch to absolute expression 1 (n32)
FAIL: MIPS16 link branch to absolute expression 2 (n32)
FAIL: microMIPS link branch to absolute expression (n32)
FAIL: MIPS ELF got reloc n32
FAIL: MIPS ELF xgot reloc n32
FAIL: undefined weak symbol overflow (n32)
FAIL: R_MIPS16_HI16 and R_MIPS16_LO16 relocs n32
FAIL: ld-mips-elf/attr-gnu-4-0-n32-ph
FAIL: ld-mips-elf/attr-gnu-4-1-n32-ph
FAIL: ld-mips-elf/attr-gnu-4-2-n32-ph
FAIL: ld-mips-elf/attr-gnu-4-3-n32-ph
FAIL: MIPSr6 JALR reloc unaligned/cross-mode link test (n32)
which are mostly due to dump discrepancies caused by mapping differences
coming from the default linker scripts used by these test cases, or
sometimes because of the specific MIPS processor architecture recorded
in the ELF file taking precedence over the general MIPS ISA level also
recorded. Finally, the R_MIPS16_HI16/R_MIPS16_LO16 relocation test
failure is a preexisting issue with the IRIX style emulation.
These failures will have to be addressed separately.
ld/
* testsuite/ld-mips-elf/mips-elf.exp (run_dump_test_abi)
(run_dump_test_o32, run_dump_test_n32, run_dump_test_n64)
(run_dump_test_eabi): New procedures.
(has_newabi, has_elf32): Remove variables.
(has_abi): New associative array variable.
(abi_asflags, abi_ldflags): Update settings across targets.
(irixemul): New variable.
Replace `run_dump_test' calls where applicable throughout with
`run_dump_test_o32', `run_dump_test_n32', `run_dump_test_n64'
and `run_dump_test_eabi' as appropriate. Remove explicit
passing of `abi_asflags' and `abi_ldflags'. Use `noarch' for
tests that require their own architecture setting. Force the
big endianness for tests that require it. Select the endianness
required for `objdump invocation with the `reloc-2' test.
Conditionalize tests run via `run_ld_link_tests' on the ABI
required and use the ABI list from the `has_abi' array where
appropriate.
* testsuite/ld-mips-elf/attr-gnu-4-0-n32-ph.d: Remove ABI and
endianness selection options from `ld' and `source' tags. Relax
output format matching.
* testsuite/ld-mips-elf/attr-gnu-4-0-n64-ph.d: Likewise.
* testsuite/ld-mips-elf/attr-gnu-4-1-n32-ph.d: Likewise.
* testsuite/ld-mips-elf/attr-gnu-4-1-n64-ph.d: Likewise.
* testsuite/ld-mips-elf/attr-gnu-4-2-n32-ph.d: Likewise.
* testsuite/ld-mips-elf/attr-gnu-4-2-n64-ph.d: Likewise.
* testsuite/ld-mips-elf/attr-gnu-4-3-n32-ph.d: Likewise.
* testsuite/ld-mips-elf/attr-gnu-4-3-n64-ph.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-addend-micromips-n32.d: Remove
ABI and endianness selection options from `as', `ld', `source'
tags, and also the `-march=from-abi' option. Remove the `as'
tag where it would become empty.
* testsuite/ld-mips-elf/bal-jalx-addend-micromips-n64.d:
Likewise.
* testsuite/ld-mips-elf/bal-jalx-addend-micromips.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-addend-n32.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-addend-n64.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-addend.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-local-micromips-n32.d:
Likewise.
* testsuite/ld-mips-elf/bal-jalx-local-micromips-n64.d:
Likewise.
* testsuite/ld-mips-elf/bal-jalx-local-micromips.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-local-n32.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-local-n64.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-local.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-ignore-micromips-n32.d:
Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-ignore-micromips-n64.d:
Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-ignore-micromips.d:
Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-ignore-n32.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-ignore-n64.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-ignore.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-micromips-n32.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-micromips-n64.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-micromips.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-n32.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-n64.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic.d: Likewise.
* testsuite/ld-mips-elf/branch-absolute-addend-n32.d: Likewise.
* testsuite/ld-mips-elf/branch-absolute-addend-n64.d: Likewise.
* testsuite/ld-mips-elf/branch-absolute-addend.d: Likewise.
* testsuite/ld-mips-elf/branch-absolute-n32.d: Likewise.
* testsuite/ld-mips-elf/branch-absolute-n64.d: Likewise.
* testsuite/ld-mips-elf/branch-absolute.d: Likewise.
* testsuite/ld-mips-elf/dyn-sec64.d: Likewise.
* testsuite/ld-mips-elf/eh-frame1-n32.d: Likewise.
* testsuite/ld-mips-elf/eh-frame1-n64.d: Likewise.
* testsuite/ld-mips-elf/eh-frame2-n32.d: Likewise.
* testsuite/ld-mips-elf/eh-frame2-n64.d: Likewise.
* testsuite/ld-mips-elf/elf-rel-got-n32-embed.d: Likewise.
* testsuite/ld-mips-elf/elf-rel-got-n32.d: Likewise.
* testsuite/ld-mips-elf/elf-rel-got-n64-embed.d: Likewise.
* testsuite/ld-mips-elf/elf-rel-got-n64-irix.d: Likewise.
* testsuite/ld-mips-elf/elf-rel-got-n64.d: Likewise.
* testsuite/ld-mips-elf/elf-rel-xgot-n32-embed.d: Likewise.
* testsuite/ld-mips-elf/elf-rel-xgot-n32.d: Likewise.
* testsuite/ld-mips-elf/elf-rel-xgot-n64-embed.d: Likewise.
* testsuite/ld-mips-elf/elf-rel-xgot-n64-irix.d: Likewise.
* testsuite/ld-mips-elf/elf-rel-xgot-n64.d: Likewise.
* testsuite/ld-mips-elf/emit-relocs-1.d: Likewise.
* testsuite/ld-mips-elf/got-dump-2.d: Likewise.
* testsuite/ld-mips-elf/got-page-2.d: Likewise.
* testsuite/ld-mips-elf/jal-global-overflow-0.d: Likewise.
* testsuite/ld-mips-elf/jal-global-overflow-1.d: Likewise.
* testsuite/ld-mips-elf/jal-local-overflow-0.d: Likewise.
* testsuite/ld-mips-elf/jal-local-overflow-1.d: Likewise.
* testsuite/ld-mips-elf/jalbal.d: Likewise.
* testsuite/ld-mips-elf/jalx-addend-n32.d: Likewise.
* testsuite/ld-mips-elf/jalx-addend-n64.d: Likewise.
* testsuite/ld-mips-elf/jalx-addend.d: Likewise.
* testsuite/ld-mips-elf/jalx-local-n32.d: Likewise.
* testsuite/ld-mips-elf/jalx-local-n64.d: Likewise.
* testsuite/ld-mips-elf/jalx-local.d: Likewise.
* testsuite/ld-mips-elf/jr-to-b-1.d: Likewise.
* testsuite/ld-mips-elf/jr-to-b-2.d: Likewise.
* testsuite/ld-mips-elf/lsi-4010-isa.d: Likewise.
* testsuite/ld-mips-elf/micromips-branch-absolute-addend-n32.d:
Likewise.
* testsuite/ld-mips-elf/micromips-branch-absolute-addend-n64.d:
Likewise.
* testsuite/ld-mips-elf/micromips-branch-absolute-addend.d:
Likewise.
* testsuite/ld-mips-elf/micromips-branch-absolute-n32.d:
Likewise.
* testsuite/ld-mips-elf/micromips-branch-absolute-n64.d:
Likewise.
* testsuite/ld-mips-elf/micromips-branch-absolute.d: Likewise.
* testsuite/ld-mips-elf/mips16-branch-2.d: Likewise.
* testsuite/ld-mips-elf/mips16-branch-3.d: Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-1.d: Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-2.d: Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-addend-1.d:
Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-addend-n32-1.d:
Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-addend-n32.d:
Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-addend-n64-1.d:
Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-addend-n64.d:
Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-addend.d:
Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-n32-1.d:
Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-n32-2.d:
Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-n32.d: Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-n64-1.d:
Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-n64-2.d:
Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-n64.d: Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute.d: Likewise.
* testsuite/ld-mips-elf/mips16-branch-addend-2.d: Likewise.
* testsuite/ld-mips-elf/mips16-branch-addend-3.d: Likewise.
* testsuite/ld-mips-elf/mips16-hilo-n32.d: Likewise.
* testsuite/ld-mips-elf/mips16-pcrel-0.d: Likewise.
* testsuite/ld-mips-elf/mips16-pcrel-1.d: Likewise.
* testsuite/ld-mips-elf/mips16-pcrel-addend-2.d: Likewise.
* testsuite/ld-mips-elf/mips16-pcrel-addend-6.d: Likewise.
* testsuite/ld-mips-elf/mips16-pcrel-n32-0.d: Likewise.
* testsuite/ld-mips-elf/mips16-pcrel-n32-1.d: Likewise.
* testsuite/ld-mips-elf/mips16-pcrel-n64-sym32-0.d: Likewise.
* testsuite/ld-mips-elf/mips16-pcrel-n64-sym32-1.d: Likewise.
* testsuite/ld-mips-elf/mips16e2-pcrel-0.d: Likewise.
* testsuite/ld-mips-elf/mips16e2-pcrel-1.d: Likewise.
* testsuite/ld-mips-elf/mips16e2-pcrel-addend-2.d: Likewise.
* testsuite/ld-mips-elf/mips16e2-pcrel-addend-6.d: Likewise.
* testsuite/ld-mips-elf/mips16e2-pcrel-n32-0.d: Likewise.
* testsuite/ld-mips-elf/mips16e2-pcrel-n32-1.d: Likewise.
* testsuite/ld-mips-elf/mips16e2-pcrel-n64-sym32-0.d: Likewise.
* testsuite/ld-mips-elf/mips16e2-pcrel-n64-sym32-1.d: Likewise.
* testsuite/ld-mips-elf/multi-got-1.d: Likewise.
* testsuite/ld-mips-elf/multi-got-hidden-1.d: Likewise.
* testsuite/ld-mips-elf/multi-got-hidden-2.d: Likewise.
* testsuite/ld-mips-elf/multi-got-no-shared.d: Likewise.
* testsuite/ld-mips-elf/no-shared-1-n32.d: Likewise.
* testsuite/ld-mips-elf/no-shared-1-n64.d: Likewise.
* testsuite/ld-mips-elf/no-shared-1-o32.d: Likewise.
* testsuite/ld-mips-elf/pic-and-nonpic-2.d: Likewise.
* testsuite/ld-mips-elf/pic-and-nonpic-3-error.d: Likewise.
* testsuite/ld-mips-elf/pic-and-nonpic-4-error.d: Likewise.
* testsuite/ld-mips-elf/pie-n32.d: Likewise.
* testsuite/ld-mips-elf/pie-n64.d: Likewise.
* testsuite/ld-mips-elf/pie-o32.d: Likewise.
* testsuite/ld-mips-elf/rel32-n32.d: Likewise.
* testsuite/ld-mips-elf/rel32-o32.d: Likewise.
* testsuite/ld-mips-elf/rel64.d: Likewise.
* testsuite/ld-mips-elf/relax-jalr-n32.d: Likewise.
* testsuite/ld-mips-elf/reloc-1-n32.d: Likewise.
* testsuite/ld-mips-elf/reloc-1-n64.d: Likewise.
* testsuite/ld-mips-elf/reloc-2.d: Likewise.
* testsuite/ld-mips-elf/reloc-3-n32.d: Likewise.
* testsuite/ld-mips-elf/reloc-local-overflow.d: Likewise.
* testsuite/ld-mips-elf/textrel-1.d: Likewise.
* testsuite/ld-mips-elf/unaligned-branch-2.d: Likewise.
* testsuite/ld-mips-elf/unaligned-branch-ignore-2.d: Likewise.
* testsuite/ld-mips-elf/unaligned-branch-ignore-micromips.d:
Likewise.
* testsuite/ld-mips-elf/unaligned-branch-ignore-mips16.d:
Likewise.
* testsuite/ld-mips-elf/unaligned-branch-ignore-r6-1.d:
Likewise.
* testsuite/ld-mips-elf/unaligned-branch-micromips.d: Likewise.
* testsuite/ld-mips-elf/unaligned-branch-mips16.d: Likewise.
* testsuite/ld-mips-elf/unaligned-branch-r6-1.d: Likewise.
* testsuite/ld-mips-elf/unaligned-branch-r6-2.d: Likewise.
* testsuite/ld-mips-elf/unaligned-branch.d: Likewise.
* testsuite/ld-mips-elf/unaligned-jalx-addend-0.d: Likewise.
* testsuite/ld-mips-elf/unaligned-jalx-addend-1.d: Likewise.
* testsuite/ld-mips-elf/unaligned-jalx-addend-2.d: Likewise.
* testsuite/ld-mips-elf/unaligned-jalx-addend-3.d: Likewise.
* testsuite/ld-mips-elf/unaligned-jalx-addend-micromips-0.d:
Likewise.
* testsuite/ld-mips-elf/unaligned-jalx-addend-micromips-1.d:
Likewise.
* testsuite/ld-mips-elf/unaligned-jalx-addend-mips16-0.d:
Likewise.
* testsuite/ld-mips-elf/unaligned-jalx-addend-mips16-1.d:
Likewise.
* testsuite/ld-mips-elf/unaligned-jump-micromips.d: Likewise.
* testsuite/ld-mips-elf/unaligned-jump-mips16.d: Likewise.
* testsuite/ld-mips-elf/unaligned-jump.d: Likewise.
* testsuite/ld-mips-elf/unaligned-ldpc-0.d: Likewise.
* testsuite/ld-mips-elf/unaligned-ldpc-1.d: Likewise.
* testsuite/ld-mips-elf/unaligned-lwpc-0.d: Likewise.
* testsuite/ld-mips-elf/unaligned-lwpc-1.d: Likewise.
commit f880fcab1ae7713037ec85a56268f853fe6ca835
Author: Maciej W. Rozycki <macro@mips.com>
Date: Thu Jul 12 20:01:44 2018 +0100
MIPS/LD/testsuite: Limit reloc 6 tests to DSO targets
Complement commit 500c05ddbe98 ("MIPS/ld/testsuite: Limit export class
call reloc tests to DSO targets") and also check for target's shared
library support in determining whether to run reloc 6 tests, which
require it. No changes in results as all targets currently enabled for
NewABI testing support shared libraries.
ld/
* testsuite/ld-mips-elf/mips-elf.exp: Limit reloc 6 tests to
shared library targets.
commit 64b5847236593f23564bd37afb0ea503f751165c
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Thu Jul 12 13:03:31 2018 -0400
Declare 'ioarg' (from ser-tcp.c:try_connect) as 'u_long' when on Windows (and unbreak build on mingw32)
When building GDB on mingw32, it fails with:
../../binutils-gdb/gdb/ser-tcp.c: In function 'int try_connect(const addrinfo*, unsigned int*)':
../../binutils-gdb/gdb/ser-tcp.c:176:25: error: invalid conversion from 'int*' to 'u_long* {aka long unsigned int*}' [-fpermissive]
ioctl (sock, FIONBIO, &ioarg);
^~~~~~
In file included from ../../binutils-gdb/gdb/serial.h:23:0,
from ../../binutils-gdb/gdb/ser-tcp.c:21:
/usr/x86_64-w64-mingw32/sys-root/mingw/include/winsock2.h:977:34: note: initializing argument 3 of 'int ioctlsocket(SOCKET, long int, u_long*)'
WINSOCK_API_LINKAGE int WSAAPI ioctlsocket(SOCKET s,__LONG32 cmd,u_long *argp);
^~~~~~~~~~~
make[2]: *** [Makefile:1610: ser-tcp.o] Error 1
The problem happens because the IPv6
commit (c7ab0aef11d91b637bf091aa9176b8dc4aadee46) wrongly removed the
code responsible for declaring 'ioarg' with a different type if
building for Windows. This patch restores that.
gdb/ChangeLog:
2018-07-12 Sergio Durigan Junior <sergiodj@redhat.com>
* ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
on Windows.
commit cde3679eb5aca10a6d09f6aa4f846ac99a3371dd
Author: Nick Clifton <nickc@redhat.com>
Date: Thu Jul 12 15:46:17 2018 +0100
This patch adds support for the SSBB and PSSBB speculation barrier instructions to the AArch64 assembler and disassembler.
For more details see: https://static.docs.arm.com/ddi0596/a/DDI_0596_ARM_a64_instruction_set_architecture.pdf
opcodes * aarch64-tbl.h (aarch64_opcode_table): Add entry for
ssbb and pssbb and update dsb flags to F_HAS_ALIAS.
* aarch64-asm-2.c: Regenerate.
* aarch64-dis-2.c: Regenerate.
* aarch64-opc-2.c: Regenerate.
gas * testsuite/gas/aarch64/system.s: Add test for ssbb
and pssbb.
* testsuite/gas/aarch64/system.d: Update accordingly
and remove explicit addresses.
commit 45a28947f3fe5693560e9a1d6373807a9e82c04a
Author: Tamar Christina <tamar.christina@arm.com>
Date: Thu Jul 12 10:28:46 2018 +0100
Add remainder of Em16 restrictions for AArch64 gas.
This adds the missing Em16 constraints the rest of the instructions requiring them
and also adds a testcase to test all the instructions so these are checked from
now on.
The Em16 operand constrains the valid registers to the lower 16 registers when used
with a half precision qualifier.
The list has been cross checked (by hand) through the Arm ARM version Ca.
opcodes/
PR binutils/23192
* aarch64-tbl.h (sqdmlal, sqdmlal2, smlsl, smlsl2, sqdmlsl, sqdmlsl2,
mul, smull, smull2, sqdmull, sqdmull2, sqdmulh, sqrdmulh, mla, umlal,
umlal2, mls, umlsl, umlsl2, umull, umull2, sqdmlal, sqdmlsl, sqdmull,
sqdmulh, sqrdmulh): Use Em16.
gas/
PR binutils/23192
* testsuite/gas/aarch64/illegal-by-element.s: New.
* testsuite/gas/aarch64/illegal-by-element.d: New.
* testsuite/gas/aarch64/illegal-by-element.l: New.
commit 55cc53e98b86d9be559073c4f062735e2099d1fb
Author: Francois H. Theron <francois.theron@netronome.com>
Date: Wed Jul 11 18:14:16 2018 +0200
readelf: Don't print section type twice for --section-details
* readelf.c (process_section_headers): Don't print section type
twice for --section-details.
commit 639eff935742fda1f8d5fd629dc877eda9975c96
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Jul 12 00:00:31 2018 +0000
Automatic date update in version.in
commit c7ab0aef11d91b637bf091aa9176b8dc4aadee46
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Fri May 18 01:29:24 2018 -0400
Implement IPv6 support for GDB/gdbserver
This patch implements IPv6 support for both GDB and gdbserver. Based
on my research, it is the fourth attempt to do that since 2006. Since
I used ideas from all of the previous patches, I also added their
authors's names on the ChangeLogs as a way to recognize their
efforts. For reference sake, you can find the previous attempts at:
https://sourceware.org/ml/gdb-patches/2006-09/msg00192.html
https://sourceware.org/ml/gdb-patches/2014-02/msg00248.html
https://sourceware.org/ml/gdb-patches/2016-02/msg00226.html
The basic idea behind the patch is to start using the new
'getaddrinfo'/'getnameinfo' calls, which are responsible for
translating names and addresses in a protocol-independent way. This
means that if we ever have a new version of the IP protocol, we won't
need to change the code again (or, at least, won't have to change the
majority of the code).
The function 'getaddrinfo' returns a linked list of possible addresses
to connect to. Dealing with multiple addresses proved to be a hard
task with the current TCP auto-retry mechanism implemented on
ser-tcp:net_open. For example, when gdbserver listened only on an
IPv4 socket:
$ ./gdbserver --once 127.0.0.1:1234 ./a.out
and GDB was instructed to try to connect to both IPv6 and IPv4
sockets:
$ ./gdb -ex 'target extended-remote localhost:1234' ./a.out
the user would notice a somewhat big delay before GDB was able to
connect to the IPv4 socket. This happened because GDB was trying to
connect to the IPv6 socket first, and had to wait until the connection
timed out before it tried to connect to the IPv4 socket.
For that reason, I had to rewrite the main loop and implement a new
method for handling multiple connections. After some discussion,
Pedro and I agreed on the following algorithm:
1) For each entry returned by 'getaddrinfo', we try to open a socket
and connect to it.
2.a) If we have a successful 'connect', we just use that connection.
2.b) If we don't have a successfull 'connect', but if we've got a
ECONNREFUSED (meaning the the connection was refused), we keep track
of this fact by using a flag.
2.c) If we don't have a successfull 'connect', but if we've got a
EINPROGRESS (meaning that the connection is in progress), we perform
a 'select' call on the socket until we have a result (either a
successful connection, or an error on the socket).
3) If tcp_auto_retry is true, and we haven't gotten a successful
connection, and at least one of our attempts failed with
ECONNREFUSED, then we wait a little bit (i.e., call
'wait_for_connect'), check to see if there was a
timeout/interruption (in which case we bail out), and then go back
to (1).
After multiple tests, I was able to connect without delay on the
scenario described above, and was also able to connect in all other
types of scenarios.
I also implemented some hostname parsing functions (along with their
corresponding unit tests) which are used to help GDB and gdbserver to
parse hostname strings provided by the user. These new functions are
living inside common/netstuff.[ch]. I've had to do that since IPv6
introduces a new URL scheme, which defines that square brackets can be
used to enclose the host part and differentiate it from the
port (e.g., "[::1]:1234" means "host ::1, port 1234"). I spent some
time thinking about a reasonable way to interpret what the user wants,
and I came up with the following:
- If the user has provided a prefix that doesn't specify the protocol
version (i.e., "tcp:" or "udp:"), or if the user has not provided
any prefix, don't make any assumptions (i.e., assume AF_UNSPEC when
dealing with 'getaddrinfo') *unless* the host starts with "[" (in
which case, assume it's an IPv6 host).
- If the user has provided a prefix that does specify the protocol
version (i.e., "tcp4:", "tcp6:", "udp4:" or "udp6:"), then respect
that.
This method doesn't follow strictly what RFC 2732 proposes (that
literal IPv6 addresses should be provided enclosed in "[" and "]")
because IPv6 addresses still can be provided without square brackets
in our case, but since we have prefixes to specify protocol versions I
think this is not an issue.
Another thing worth mentioning is the new 'GDB_TEST_SOCKETHOST'
testcase parameter, which makes it possible to specify the
hostname (without the port) to be used when testing GDB and
gdbserver. For example, to run IPv6 tests:
$ make check-gdb RUNTESTFLAGS='GDB_TEST_SOCKETHOST=tcp6:[::1]'
Or, to run IPv4 tests:
$ make check-gdb RUNTESTFLAGS='GDB_TEST_SOCKETHOST=tcp4:127.0.0.1'
This required a few changes on the gdbserver-base.exp, and also a
minimal adjustment on gdb.server/run-without-local-binary.exp.
Finally, I've implemented a new testcase,
gdb.server/server-connect.exp, which is supposed to run on the native
host and perform various "smoke tests" using different connection
methods.
This patch has been regression-tested on BuildBot and locally, and
also built using a x86_64-w64-mingw32 GCC, and no problems were found.
gdb/ChangeLog:
2018-07-11 Sergio Durigan Junior <sergiodj@redhat.com>
Jan Kratochvil <jan.kratochvil@redhat.com>
Paul Fertser <fercerpav@gmail.com>
Tsutomu Seki <sekiriki@gmail.com>
Pedro Alves <palves@redhat.com>
* Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
'unittests/parse-connection-spec-selftests.c'.
(COMMON_SFILES): Add 'common/netstuff.c'.
(HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
* NEWS (Changes since GDB 8.2): Mention IPv6 support.
* common/netstuff.c: New file.
* common/netstuff.h: New file.
* ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
(wait_for_connect): Update comment. New parameter
'gdb::optional<int> sock' instead of 'struct serial *scb'.
Use 'sock' directly instead of 'scb->fd'.
(try_connect): New function, with code from 'net_open'.
(net_open): Rewrite main loop to deal with multiple
sockets/addresses. Handle IPv6-style hostnames; implement
support for IPv6 connections.
* unittests/parse-connection-spec-selftests.c: New file.
gdb/gdbserver/ChangeLog:
2018-07-11 Sergio Durigan Junior <sergiodj@redhat.com>
Jan Kratochvil <jan.kratochvil@redhat.com>
Paul Fertser <fercerpav@gmail.com>
Tsutomu Seki <sekiriki@gmail.com>
* Makefile.in (SFILES): Add '$(srcdir)/common/netstuff.c'.
(OBS): Add 'common/netstuff.o'.
(GDBREPLAY_OBS): Likewise.
* gdbreplay.c: Include 'wspiapi.h' and 'netstuff.h'.
(remote_open): Implement support for IPv6
connections.
* remote-utils.c: Include 'netstuff.h', 'filestuff.h'
and 'wspiapi.h'.
(handle_accept_event): Accept connections from IPv6 sources.
(remote_prepare): Handle IPv6-style hostnames; implement
support for IPv6 connections.
(remote_open): Implement support for printing connections from
IPv6 sources.
gdb/testsuite/ChangeLog:
2018-07-11 Sergio Durigan Junior <sergiodj@redhat.com>
Jan Kratochvil <jan.kratochvil@redhat.com>
Paul Fertser <fercerpav@gmail.com>
Tsutomu Seki <sekiriki@gmail.com>
* README (Testsuite Parameters): Mention new 'GDB_TEST_SOCKETHOST'
parameter.
* boards/native-extended-gdbserver.exp: Do not set 'sockethost'
by default.
* boards/native-gdbserver.exp: Likewise.
* gdb.server/run-without-local-binary.exp: Improve regexp used
for detecting when a remote debugging connection succeeds.
* gdb.server/server-connect.exp: New file.
* lib/gdbserver-support.exp (gdbserver_default_get_comm_port):
Do not prefix the port number with ":".
(gdbserver_start): New global GDB_TEST_SOCKETHOST. Implement
support for detecting and using it. Add '$debughost_gdbserver'
to the list of arguments used to start gdbserver. Handle case
when gdbserver cannot resolve a network name.
gdb/doc/ChangeLog:
2018-07-11 Sergio Durigan Junior <sergiodj@redhat.com>
Jan Kratochvil <jan.kratochvil@redhat.com>
Paul Fertser <fercerpav@gmail.com>
Tsutomu Seki <sekiriki@gmail.com>
* gdb.texinfo (Remote Connection Commands): Add explanation
about new IPv6 support. Add new connection prefixes.
commit 4c7333b308f5178813745f40e641231efb1cb763
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 11 23:31:44 2018 +0100
GDB: Work around D;PID handling bug in older GDBservers (PR gdb/23377)
This commit adds a GDB workaround for the GDBserver bug exposed by
commit f2ffa92bbce9 ("gdb: Eliminate the 'stop_pc' global"), so that
newer GDBs can continue working with older GDBservers.
gdb/ChangeLog:
2018-07-11 Pedro Alves <palves@redhat.com>
PR gdb/23377
* remote.c (remote_target::remote_detach_pid): Call
set_current_process.
commit 31445d1036f7fc41de2724cb016913c9b1461bb1
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 11 23:31:44 2018 +0100
GDBserver: Don't assume a current process in D;PID implementation (PR gdb/23377)
This fixes a gdb.base/multi-forks.exp regression with GDBserver.
Git commit f2ffa92bbce9 ("gdb: Eliminate the 'stop_pc' global") caused
the regression by exposing a latent bug in gdbserver.
The bug is that GDBserver's implementation of the D;PID packet
incorrectly assumes that the selected thread points to the process
being detached. This happens via the any_persistent_commands call,
which calls current_process:
(gdb) bt
#0 0x000000000040a57e in internal_error(char const*, int, char const*, ...)
(file=0x4a53c0 "src/gdb/gdbserver/inferiors.c", line=212, fmt=0x4a539e "%s:
Assertion `%s' failed.") at src/gdb/gdbserver/../common/errors.c:54
#1 0x0000000000420acf in current_process() () at
src/gdb/gdbserver/inferiors.c:212
#2 0x00000000004226a0 in any_persistent_commands() () at
gdb/gdbserver/mem-break.c:308
#3 0x000000000042cb43 in handle_detach(char*) (own_buf=0x6f0280 "D;62ea") at
src/gdb/gdbserver/server.c:1210
#4 0x0000000000433af3 in process_serial_event() () at
src/gdb/gdbserver/server.c:4055
#5 0x0000000000434878 in handle_serial_event(int, void*) (err=0,
client_data=0x0)
The "eliminate stop_pc" commit exposes the problem because before that
commit, GDB's switch_to_thread always read the newly-selected thread's
PC, and that would end up forcing GDBserver's selected thread to
change accordingly as side effect. After that commit, GDB no longer
reads the thread's PC, and GDBserver does not switch the thread.
Fix this by removing the assumption from GDBserver.
gdb/gdbserver/ChangeLog:
2018-07-11 Pedro Alves <palves@redhat.com>
PR gdb/23377
* mem-break.c (any_persistent_commands): Add process_info
parameter and use it instead of relying on the current process.
Change return type to bool.
* mem-break.h (any_persistent_commands): Add process_info
parameter and change return type to bool.
* server.c (handle_detach): Remove require_running_or_return call.
Look up the process_info for the process we're about to detach.
If not found, return back error to GDB. Adjust
any_persistent_commands call to pass down a process pointer.
commit a6f88f6e4458e672b8a72ee0c0998fdc79cf601e
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 11 20:39:12 2018 +0100
gdb: Remove traces of h8300 ecoff support
There's this little bit of ecoff support in the h8300 port that I ran
into that I think we could remove. Grepping around BFD, I don't think
ECOFF is supported for h8300.
And if not, I'm failing to see why we'd support ECOFF debug info in
ELF for h8300 (.mdebug). It kind of seems like someone just installed
the set_gdbarch_ecoff_reg_to_regnum hook at the same time the dwarf2
and stabs hooks were installed.
I'm removing this so that greps for ecoff stuff only lead to MIPS, as
ISTR that Linux/MIPS support still relies on some subset of ECOFF for
something.
gdb/ChangeLog:
2018-07-11 Pedro Alves <palves@redhat.com>
* h8300-tdep.c (h8300_gdbarch_init): Remove
set_gdbarch_ecoff_reg_to_regnum calls.
commit 16ff70ddd430b63ca4dd68bf1d52828f2ed4f030
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Sat Jul 7 17:16:55 2018 -0400
Fix PR c++/23373: GDB hangs when printing a struct with a static member of itself
This patch fixes a failure that happens when a structure has a static
member whose type is the same as itself. From the bug report:
Example code:
struct A
{
static A Empty;
int a;
};
int main(void) {
A a;
return 0;
}
Output:
(gdb) ptype/o A
/* offset | size */ type = struct A {
static struct A {
static struct A {
static struct A {
static struct A {
static struct A {
static struct A {
... # infinite loop
The problem here is that GDB is not taking into account the fact that
static members inside a class/struct are not stored in the
class/struct, and therefore they should not be accounted for during
the display of the offsets/sizes. The fix is simple: we just check if
the field we're dealing with (on
c-typeprint.c:c_type_print_base_struct_union) is static, and if it is
then we don't iterate over it.
This patch also adds a new test for this case, and doesn't introduce
any regressions. I believe it is important enough to be included in
the 8.2 branch.
OK?
gdb/ChangeLog:
2018-07-11 Sergio Durigan Junior <sergiodj@redhat.com>
PR c++/23373
* c-typeprint.c (c_type_print_base_struct_union): Don't print
offsets/sizes for static members of a class/struct.
gdb/testsuite/ChangeLog:
2018-07-11 Sergio Durigan Junior <sergiodj@redhat.com>
PR c++/23373
* gdb.base/ptype-offsets.cc (struct static_member): New
struct.
(main) <stmember>: New variable.
* gdb.base/ptype-offsets.exp: Add test for printing a struct
with a static member in it.
commit cb19713281c69c3625dd447a0c2ce539761989e2
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 11 19:49:19 2018 +0100
GDBserver: Fix "Cond. jump or move depends on uninit value" in x87 code
Running gdbserver under Valgrind I get:
==26925== Conditional jump or move depends on uninitialised value(s)
==26925== at 0x473E7F: i387_cache_to_xsave(regcache*, void*) (i387-fp.c:579)
==26925== by 0x46E3ED: x86_fill_xstateregset(regcache*, void*) (linux-x86-low.c:418)
==26925== by 0x45E747: regsets_store_inferior_registers(regsets_info*, regcache*) (linux-low.c:5456)
==26925== by 0x45EEF8: linux_store_registers(regcache*, int) (linux-low.c:5731)
==26925== by 0x426441: regcache_invalidate_thread(thread_info*) (regcache.c:89)
==26925== by 0x45CCAF: linux_resume_one_lwp_throw(lwp_info*, int, int, siginfo_t*) (linux-low.c:4447)
==26925== by 0x45CE2A: linux_resume_one_lwp(lwp_info*, int, int, siginfo_t*) (linux-low.c:4519)
==26925== by 0x45E17C: proceed_one_lwp(thread_info*, lwp_info*) (linux-low.c:5216)
==26925== by 0x45DC81: linux_resume_one_thread(thread_info*, bool) (linux-low.c:5031)
==26925== by 0x45DD34: linux_resume(thread_resume*, unsigned long)::{lambda(thread_info*)#2}::operator()(thread_info*) const (linux-low.c:5095)
==26925== by 0x462907: void for_each_thread<linux_resume(thread_resume*, unsigned long)::{lambda(thread_info*)#2}>(linux_resume(thread_resume*, unsigned long)::{lambda(thread_info*)#2}) (gdbthread.h:150)
==26925== by 0x45DE62: linux_resume(thread_resume*, unsigned long) (linux-low.c:5093)
==26925==
==26925== Conditional jump or move depends on uninitialised value(s)
==26925== at 0x473EBD: i387_cache_to_xsave(regcache*, void*) (i387-fp.c:586)
==26925== by 0x46E3ED: x86_fill_xstateregset(regcache*, void*) (linux-x86-low.c:418)
==26925== by 0x45E747: regsets_store_inferior_registers(regsets_info*, regcache*) (linux-low.c:5456)
==26925== by 0x45EEF8: linux_store_registers(regcache*, int) (linux-low.c:5731)
==26925== by 0x426441: regcache_invalidate_thread(thread_info*) (regcache.c:89)
==26925== by 0x45CCAF: linux_resume_one_lwp_throw(lwp_info*, int, int, siginfo_t*) (linux-low.c:4447)
==26925== by 0x45CE2A: linux_resume_one_lwp(lwp_info*, int, int, siginfo_t*) (linux-low.c:4519)
==26925== by 0x45E17C: proceed_one_lwp(thread_info*, lwp_info*) (linux-low.c:5216)
==26925== by 0x45DC81: linux_resume_one_thread(thread_info*, bool) (linux-low.c:5031)
==26925== by 0x45DD34: linux_resume(thread_resume*, unsigned long)::{lambda(thread_info*)#2}::operator()(thread_info*) const (linux-low.c:5095)
==26925== by 0x462907: void for_each_thread<linux_resume(thread_resume*, unsigned long)::{lambda(thread_info*)#2}>(linux_resume(thread_resume*, unsigned long)::{lambda(thread_info*)#2}) (gdbthread.h:150)
==26925== by 0x45DE62: linux_resume(thread_resume*, unsigned long) (linux-low.c:5093)
The problem is a type/width mismatch in code like this, in
gdbserver/i387-fp.c:
/* Some registers are 16-bit. */
collect_register_by_name (regcache, "fctrl", &val);
fp->fctrl = val;
In the above code:
#1 - 'val' is a 64-bit unsigned long.
#2 - "fctrl" is 32-bit in the register cache, thus half of 'val' is
left uninitialized by collect_register_by_name, which works with
an untyped raw buffer output (i.e., void*).
#3 - fp->fctrl is an unsigned short (16-bit). For some such
registers we're masking off the uninitialized bits with 0xffff,
but not in all cases.
We end up in such a fragile situation because
collect_registers_by_name works with an untyped output buffer pointer,
making it easy to pass a pointer to a variable of the wrong size.
Fix this by using regcache_raw_get_unsigned instead (actually a new
regcache_raw_get_unsigned_by_name wrapper), which always returns a
zero-extended ULONGEST register value. It ends up simplifying the
i387-tdep.c code a bit, even.
gdb/gdbserver/ChangeLog:
2018-07-11 Pedro Alves <palves@redhat.com>
* i387-fp.c (i387_cache_to_fsave, cache_to_fxsave)
(i387_cache_to_xsave): Use regcache_raw_get_unsigned_by_name
instead of collect_register_by_name.
* regcache.c (regcache_raw_get_unsigned_by_name): New.
* regcache.h (regcache_raw_get_unsigned_by_name): New.
commit c597cc3d6eb76802dd079b1262f2d425e07da3eb
Author: Sudakshina Das <sudi.das@arm.com>
Date: Wed Jul 11 18:05:34 2018 +0100
Adds the speculation barrier instructions to the ARM assembler and disassembler.
See:
https://developer.arm.com/support/arm-security-updates/speculative-processor-vulnerability/download-the-whitepaper
opcodes * arm-dis.c (arm_opcodes): Add ssbb and pssbb and move
csdb together with them.
(thumb32_opcodes): Likewise.
gas * config/tc-arm.c (insns): Add new ssbb and pssbb instructions.
* testsuite/gas/arm/csdb.s: Add new tests for ssbb and pssbb.
* testsuite/gas/arm/csdb.d: Likewise
* testsuite/gas/arm/thumb2_it_bad.s: Likewise.
* testsuite/gas/arm/thumb2_it_bad.l: Likewise.
* testsuite/gas/arm/barrier.d: Update with ssbb.
* testsuite/gas/arm/barrier-thumb.d: Likewise.
commit 1cb83cac9a8974bdb12aac90018ad1165ba86274
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed Jul 11 17:44:45 2018 +0100
MIPS/BFD: Fix TLS relocation resolution for regular executables
Correct an issue with commit 0f20cc3522e7 ("TLS support for MIPS"),
<https://sourceware.org/ml/binutils/2005-02/msg00607.html>, where a
condition used to determine whether to use a dynamic symbol for GD, LD
and IE TLS dynamic relocations against a symbol that has been defined
locally has been incorrectly reversed.
It's executables rather than dynamic shared objects where no symbol is
required, because such symbols cannot be preempted and therefore their
values (thread pointer offsets) are fixed at the static link time as is
the associated module ID of the main executable, so the original
condition should have been `shared' instead of `!shared'. This wrong
condition was then later converted from `!shared' to `!bfd_link_pic',
with commit 0e1862bb401f ("Add output_type to bfd_link_info").
Use the correct `bfd_link_dll' condition then, and adjust code for the
dynamic symbol index possibly being -1 as with symbols that have been
forced local, removing unnecessary dynamic relocations from dynamic
regular executables. PIE executables are unaffected as the existing
condition excluded them by chance due to the conversion mentioned above.
Adjust test cases accordingly.
bfd/
* elfxx-mips.c (mips_tls_got_relocs): Use `bfd_link_dll' rather
than `!bfd_link_pic' in determining the dynamic symbol index.
Avoid the index of -1.
(mips_elf_initialize_tls_slots): Likewise. Flatten code by
moving `dyn' to the beginning of the function block.
ld/
* testsuite/ld-mips-elf/tlsdyn-o32.d: Update test for dynamic
relocation removal.
* testsuite/ld-mips-elf/tlsdyn-o32.got: Likewise.
* testsuite/ld-mips-elf/tlsdyn-o32-1.d: Likewise.
* testsuite/ld-mips-elf/tlsdyn-o32-1.got: Likewise.
* testsuite/ld-mips-elf/tlsdyn-o32-2.d: Likewise.
* testsuite/ld-mips-elf/tlsdyn-o32-2.got: Likewise.
* testsuite/ld-mips-elf/tlsdyn-o32-3.d: Likewise.
* testsuite/ld-mips-elf/tlsdyn-o32-3.got: Likewise.
commit 9143e72c6d4ddefbcb41c0f6361ad140354145ef
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed Jul 11 17:44:45 2018 +0100
PR ld/22570: MIPS/BFD: Fix TLS relocation resolution for PIE executables
Correct a commit 0e1862bb401f ("Add output_type to bfd_link_info") issue
and use `bfd_link_dll' rather than `bfd_link_pic' in determining whether
to fully resolve GD, LD and IE TLS relocations referring to symbols
locally defined rather than deferring them to the load time by means of
dynamic relocations.
Such symbols cannot be preempted in PIE executables, which are
necessarily PIC, and therefore their values (thread pointer offsets) are
fixed at the static link time as is the associated module ID of the main
executable.
Given the `tlsbin-o32.s' and `tlsdyn-o32.s' sources from our test suite
this removes the absolute TLS relocations from the static:
DYNAMIC RELOCATION RECORDS
OFFSET TYPE VALUE
00000000 R_MIPS_NONE *ABS*
1000002c R_MIPS_TLS_TPREL32 *ABS*
10000030 R_MIPS_TLS_DTPMOD32 *ABS*
10000038 R_MIPS_TLS_DTPMOD32 *ABS*
and the dynamic:
DYNAMIC RELOCATION RECORDS
OFFSET TYPE VALUE
00000000 R_MIPS_NONE *ABS*
1000002c R_MIPS_TLS_TPREL32 *ABS*
10000038 R_MIPS_TLS_DTPMOD32 *ABS*
10000044 R_MIPS_TLS_DTPMOD32 *ABS*
10000030 R_MIPS_TLS_DTPMOD32 tlsvar_gd
10000034 R_MIPS_TLS_DTPREL32 tlsvar_gd
10000040 R_MIPS_TLS_TPREL32 tlsvar_ie
PIE executable respectively, as reported by `objdump -R', and fills the
corresponding GOT slots with the values expected, as recorded with the
test cases added. The new output from `objdump -R' is:
DYNAMIC RELOCATION RECORDS (none)
and:
DYNAMIC RELOCATION RECORDS
OFFSET TYPE VALUE
00000000 R_MIPS_NONE *ABS*
10000030 R_MIPS_TLS_DTPMOD32 tlsvar_gd
10000034 R_MIPS_TLS_DTPREL32 tlsvar_gd
10000040 R_MIPS_TLS_TPREL32 tlsvar_ie
for the static and the dynamic executable respectively.
2018-07-11 Maciej W. Rozycki <macro@mips.com>
Rich Felker <bugdal@aerifal.cx>
bfd/
PR ld/22570
* elfxx-mips.c (mips_tls_got_relocs): Use `bfd_link_dll' rather
than `bfd_link_pic' to determine whether dynamic relocations are
to be produced.
(mips_elf_initialize_tls_slots): Likewise.
ld/
PR ld/22570
* testsuite/ld-mips-elf/tlsbin-pie-o32.d: New test.
* testsuite/ld-mips-elf/tlsbin-pie-o32.got: New test.
* testsuite/ld-mips-elf/tlsdyn-pie-o32.d: New test.
* testsuite/ld-mips-elf/tlsdyn-pie-o32.got: New test.
* testsuite/ld-mips-elf/mips-elf.exp: Run the new tests.
commit 04879304dea94c02f19fa5c219d2cbee6269f9af
Author: Franz Sirl <franz.sirl-kernel@lauterbach.com>
Date: Wed Jan 24 13:39:11 2018 +0000
Fix printing the size of GOLD's memory areana on Cygwin based systems.
I just stumbled over this with 2.29.1 while building a cross-toolchain, on Cygwin64, but it's still the same for 2.30. m.arena has size_t on Cygwin64 and thus errors out due to -Werror=format.
gold * main.cc: Print m.arena as long long.
commit 12863263d6f610ec161aead53df89586787b2ce4
Author: Alan Hayward <alan.hayward@arm.com>
Date: Wed Jul 11 08:34:50 2018 +0100
Rename tdesc_register_size to tdesc_register_bitsize
tdesc_register_size returns number of bits, not bytes.
Rename to make it clearer.
Also, fixed bug in aarch64_get_tdesc_vq which assumed bytes.
gdb/
* target-descriptions.c (tdesc_register_bitsize): Rename.
* target-descriptions.h (tdesc_register_bitsize): Likewise.
* rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
* aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
commit a79eaed6a5075ca062d6d8ff3d7a5ccce5d1908f
Author: Jan Beulich <jbeulich@novell.com>
Date: Wed Jul 11 10:30:00 2018 +0200
x86: adjust monitor/mwait templates
Architecturally, MONITOR's and MONITORX'es memory operand is a 16- or
32-bit register outside of 64-bit mode, and a 64- or 32-bit register
inside 64-bit mode. The other register operands, including all of them
for MWAIT and MWAITX, are uniformly 32-bit, irrespective of mode. Retain
the original 64-bit MONITOR{,X} templates for compatibility only, and
fold the MWAIT{,X} ones.
commit 2fb5be8dac9db623ef6e2a61b1f5b09fd246872b
Author: Jan Beulich <jbeulich@novell.com>
Date: Wed Jul 11 10:28:56 2018 +0200
x86: drop {,reg16_}inoutportreg variables
The checking against reg16_inoutportreg can be had with a simple test of
a bit, and the value setting from inoutportreg can be replaced by using
the actual register's reg_type field.
Note that the so far redundant 2nd instance of OPERAND_TYPE_INOUTPORTREG
is left in place, for its use in type_names[].
commit bd59a6313dbbf349dff197975f1b6a78be51b7d6
Author: Jan Beulich <jbeulich@novell.com>
Date: Wed Jul 11 10:28:16 2018 +0200
x86: simplify legacy prefix emission
The check_prefix label was bogus from the beginning: The special
checking is supposed to happen for PadLock insns only; no
3-opcode-byte insn should go this path.
commit 7f5cad304773ecbfe8b390e0b5d79fe11edb2a6b
Author: Jan Beulich <jbeulich@novell.com>
Date: Wed Jul 11 10:25:40 2018 +0200
x86/Intel: accept memory operand size specifiers for CET insns
commit f0a85b07061964d6c608e6280ce61aa3fed1eabf
Author: Jan Beulich <jbeulich@novell.com>
Date: Wed Jul 11 10:24:44 2018 +0200
x86: replace off-by-one OTMax
With its name it should equal to the largest prior enumerator, which is
not very helpful as that will change every once in a while. Rename it to
OTNum instead to make name and value match, and correct use sites to no
longer use one too large a value.
commit 76d3a78a498e814fa1fea713091849cba7896f7a
Author: Jan Beulich <jbeulich@novell.com>
Date: Wed Jul 11 10:23:48 2018 +0200
x86: fix "REP RET" with -madd-bnd-prefix
Just like any other branches, RET should gain a BND prefix also when
already prefixed in source by REP.
commit c7df3df443db7b1840735c86a38e00243a2902f7
Author: Alan Modra <amodra@gmail.com>
Date: Wed Jul 11 13:53:20 2018 +0930
Revise "ld testsuite use of notarget"
git commit 624940689a wrongly changed fill.d and fill16.d notarget
entries to xfail, so revert that change and instead replace notarget
with skip. The two tests are complementary.
This patch also modifies the pr20022 test to use .data, avoiding
xfails on targets that complain about dynamic relocations in .text.
This shows a bug in metag which discards section _foo in pr2022.so.
* testsuite/ld-elf/hash.d: Comment on mips xfail.
* testsuite/ld-gc/pr20022b.s: Use .data not .text.
* testsuite/ld-gc/pr20022.d: Remove xfails.
* testsuite/ld-scripts/fill.d: Revert most of last patch, but use
skip rather than notarget.
* testsuite/ld-scripts/fill16.d: Likewise.
commit 1123588c0bf1d777a3eb9c01f2370473a14a1ca5
Author: Tom Tromey <tom@tromey.com>
Date: Tue Jun 5 10:35:38 2018 -0600
Use std::vector for moribund_locations
This changes moribund_locations to use a std::vector rather than VEC.
I also noticed that moribund_locations is only used in breakpoint.c,
so now it is static as well.
It might be possible to make this code a bit simpler by using a
ref_ptr in moribund_locations; however, I have not done this.
Tested by the buildbot.
gdb/ChangeLog
2018-07-10 Tom Tromey <tom@tromey.com>
* breakpoint.c (moribund_locations): Now static and a
std::vector.
(breakpoint_init_inferior, moribund_breakpoint_here_p)
(build_bpstat_chain, update_global_location_list)
(breakpoint_retire_moribund): Update.
* breakpoint.h (bp_location_p): Remove typedef. Don't declare
VEC.
commit 71feec82131fd692711dc773b1f9ae9365b51432
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Jul 11 00:00:50 2018 +0000
Automatic date update in version.in
commit 500c05ddbe989926d6b1298bfc88e6788426e0ef
Author: Maciej W. Rozycki <macro@mips.com>
Date: Tue Jul 10 16:56:46 2018 -0700
MIPS/ld/testsuite: Limit export class call reloc tests to DSO targets
Only run MIPS/LD export class call relocation tests with shared library
targets, avoiding:
.../ld/ld-new: -shared not supported
linker errors and removing:
FAIL: MIPS export class call relocation test (o32)
regressions with `mipsel-ps2-elf' and `mips64el-ps2-elf' targets.
ld/
* testsuite/ld-mips-elf/mips-elf.exp: Limit export class call
relocation tests to shared library targets.
commit 5270eddc6ed6b5d8e4e2817491bb44b784fa6f81
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed Jul 11 00:42:43 2018 +0100
BFD/ELF: Correct a `remove' global shadowing error for pre-4.8 GCC
Remove `-Wshadow' compilation errors:
cc1: warnings being treated as errors
.../bfd/elflink.c: In function 'bfd_elf_final_link':
.../bfd/elflink.c:11722: error: declaration of 'remove' shadows a global declaration
/usr/include/stdio.h:154: error: shadowed declaration is here
which for versions of GCC before 4.8 prevent support for ELF targets
from being built. See also GCC PR c/53066.
bfd/
* elflink.c (bfd_elf_final_link): Rename `remove' local variable
to `remove_section'.
commit be570f06848d262853de218e0b24245c93cb402b
Author: Alan Modra <amodra@gmail.com>
Date: Tue Jul 10 12:09:28 2018 +0930
xgate testsuite fixes
binutils/
* testsuite/lib/binutils-common.exp (supports_gnu_unique): Return
zero for xgate.
ld/
* testsuite/lib/ld-lib.exp (check_gc_sections_available): Return 0
for xgate.
* testsuite/ld-elf/elf.exp: Add xgate to pr21703 xfails.
* testsuite/ld-elf/shared.exp: Add xgate to pr21703 xfails.
* testsuite/ld-discard/extern.d: xfail xgate.
* testsuite/ld-discard/start.d: Likewise.
* testsuite/ld-discard/static.d: Likewise.
* testsuite/ld-elf/attributes.d: Likewise.
* testsuite/ld-elf/compressed1d.d: Likewise.
* testsuite/ld-elf/group1.d: Likewise.
* testsuite/ld-elf/group3b.d: Likewise.
* testsuite/ld-elf/group8a.d: Likewise.
* testsuite/ld-elf/group8b.d: Likewise.
* testsuite/ld-elf/group9a.d: Likewise.
* testsuite/ld-elf/group9b.d: Likewise.
* testsuite/ld-elf/linkonce2.d: Likewise.
* testsuite/ld-elf/merge.d: Likewise.
* testsuite/ld-elf/merge2.d: Likewise.
* testsuite/ld-elf/merge3.d: Likewise.
* testsuite/ld-elf/orphan-10.d: Likewise.
* testsuite/ld-elf/orphan-9.d: Likewise.
* testsuite/ld-elf/orphan-region.d: Likewise.
* testsuite/ld-elf/orphan.d: Likewise.
* testsuite/ld-elf/orphan3.d: Likewise.
* testsuite/ld-elf/pr12851.d: Likewise.
* testsuite/ld-elf/pr12975.d: Likewise.
* testsuite/ld-elf/pr13177.d: Likewise.
* testsuite/ld-elf/pr13195.d: Likewise.
* testsuite/ld-elf/pr14156b.d: Likewise.
* testsuite/ld-elf/pr17550c.d: Likewise.
* testsuite/ld-elf/pr17550d.d: Likewise.
* testsuite/ld-elf/pr17615.d: Likewise.
* testsuite/ld-elf/pr20528a.d: Likewise.
* testsuite/ld-elf/pr20528b.d: Likewise.
* testsuite/ld-elf/pr21562a.d: Likewise.
* testsuite/ld-elf/pr21562b.d: Likewise.
* testsuite/ld-elf/pr21562c.d: Likewise.
* testsuite/ld-elf/pr21562d.d: Likewise.
* testsuite/ld-elf/pr21562i.d: Likewise.
* testsuite/ld-elf/pr21562j.d: Likewise.
* testsuite/ld-elf/pr21562k.d: Likewise.
* testsuite/ld-elf/pr21562l.d: Likewise.
* testsuite/ld-elf/pr21562m.d: Likewise.
* testsuite/ld-elf/pr21562n.d: Likewise.
* testsuite/ld-elf/pr22677.d: Likewise.
* testsuite/ld-elf/pr22836-1a.d: Likewise.
* testsuite/ld-elf/pr22836-1b.d: Likewise.
* testsuite/ld-elf/pr349.d: Likewise.
* testsuite/ld-elf/warn1.d: Likewise.
* testsuite/ld-elf/warn2.d: Likewise.
* testsuite/ld-elf/warn3.d: Likewise.
commit 1594e052d4fec8690b6bfabd369bc030135eb91a
Author: Alan Modra <amodra@gmail.com>
Date: Sat Jul 7 21:23:53 2018 +0930
xgate cleanup
elf32-xgate.c contains many functions that are only stubs and
elf32-xgate.h contains unused declarations. While this might be
reasonable for the initial commit of a port with subsequent work
fleshing out the stubs, xgate has only had two minor target specific
patches since the initial commit over six years ago. The rest of the
changes have been general maintenance work applied to all ELF targets,
and some of this work could have been avoided if the stubs hadn't been
there. So this patch removes all the stubs.
I've kept the functionality of the old elf32_xgate_add_symbol_hook,
implemented in elf32_xgate_backend_symbol_processing. Presumably,
that's to set the symbol st_target_internal flag for use in
elf32-m68hc1x.c:elf32_m68hc11_relocate_section.
The empty elf32_xgate_relocate_section meant that xgate had no linker.
Or at least, no linker relocation processing. Deleting the
elf_backend_relocate_section define means the target will now use the
generic linker reloc processing. How good that is will depend on the
accuracy of the reloc howtos..
I haven't updated the ld testsuite to xfail tests expected to fail
for generic elf targets.
bfd/
* elf32-xgate.h: Delete.
* elf32-xgate.c: Delete unnecessary forward declarations, add two
that are now needed.
(xgate_elf_bfd_link_hash_table_create)
(xgate_elf_bfd_link_hash_table_free)
(xgate_elf_set_mach_from_flags, struct xgate_scan_param)
(stub_hash_newfunc, elf32_xgate_add_symbol_hook)
(elf32_xgate_setup_section_lists, elf32_xgate_size_stubs)
(elf32_xgate_build_stubs, elf32_xgate_check_relocs)
(elf32_xgate_relocate_section, _bfd_xgate_elf_set_private_flags)
(elf32_xgate_post_process_headers): Delete.
(elf32_xgate_backend_symbol_processing): New function.
(xgate_elf_ignore_reloc, xgate_elf_special_reloc)
(_bfd_xgate_elf_print_private_bfd_data): Make static.
(ELF_TARGET_ID, elf_info_to_howto, elf_backend_check_relocs)
(elf_backend_relocate_section, elf_backend_object_p)
(elf_backend_final_write_processing, elf_backend_can_gc_sections)
(elf_backend_post_process_headers, elf_backend_add_symbol_hook)
(bfd_elf32_bfd_link_hash_table_create)
(bfd_elf32_bfd_set_private_flags)
(xgate_stub_hash_lookup): Don't define.
(elf_backend_symbol_processing): Define.
* elf-bfd.h (elf_target_id): Delete XGATE_ELF_DATA.
ld/
* emulparams/xgateelf.sh (TEMPLATE_NAME) Set to generic.
(EXTRA_EM_FILE): Set to genelf.
commit 624940689a97573ed1e24ae054dcb2fd6906f557
Author: Alan Modra <amodra@gmail.com>
Date: Tue Jul 10 23:13:10 2018 +0930
ld testsuite use of notarget
Much of the time it is better to use xfail rather than notarget to
hide a testsuite failure no one is planning on fixing.
1) When a target is fixed, an inappropriate xfail results in XPASS
whereas notarget is silent. Leaving in an inappropriate notarget
entry risks the bug reappearing later, silently.
2) Tests might be used as a template for a new test, carrying over
notarget and/or xfail. Inappropriate notarget entries are silent.
3) An xfailed test that mysteriously XPASSes might actually indicate a
bug.
* testsuite/ld-elf/attributes.d: Use xfail rather than notarget.
* testsuite/ld-elf/hash.d: Likewise.
* testsuite/ld-elf/orphan-10.d: Likewise.
* testsuite/ld-elf/overlay.d: Likewise.
* testsuite/ld-elf/pr14926.d: Likewise.
* testsuite/ld-elf/pr17550d.d: Likewise.
* testsuite/ld-elf/pr19539.d: Likewise.
* testsuite/ld-elf/pr22319.d: Likewise.
* testsuite/ld-misc/defsym1.d: Likewise.
* testsuite/ld-pe/pr19803.d: Likewise.
* testsuite/ld-scripts/assign-loc.d: Likewise.
* testsuite/ld-scripts/defined4.d: Likewise.
* testsuite/ld-scripts/empty-address-1.d: Likewise.
* testsuite/ld-scripts/empty-address-2a.d: Likewise.
* testsuite/ld-scripts/empty-address-2b.d: Likewise.
* testsuite/ld-scripts/fill.d: Likewise.
* testsuite/ld-scripts/fill16.d: Likewise.
* testsuite/ld-scripts/pr14962.d: Likewise.
* testsuite/ld-scripts/pr14962-2.d: Likewise.
* testsuite/ld-unique/pr21529.d: Likewise.
* testsuite/ld-elf/compress1a.d: Likewise, and adjust targets.
* testsuite/ld-elf/compressed1a.d: Likewise.
* testsuite/ld-elf/compressed1d.d: Likewise.
* testsuite/ld-elf/compressed1e.d: Likewise.
* testsuite/ld-elf/eh5.d: Likewise.
* testsuite/ld-elf/group8a.d: Likewise.
* testsuite/ld-elf/linkonce2.d: Likewise.
* testsuite/ld-elf/orphan-9.d: Likewise.
* testsuite/ld-elf/pr17550a.d: Likewise.
* testsuite/ld-elf/pr17550b.d: Likewise.
* testsuite/ld-elf/pr17550c.d: Likewise.
* testsuite/ld-elf/pr19162.d: Likewise.
* testsuite/ld-elf/pr21884.d: Likewise.
* testsuite/ld-gc/pr19167.d: Likewise.
* testsuite/ld-gc/pr20022.d: Likewise.
* testsuite/ld-gc/start.d: Likewise.
* testsuite/ld-elf/orphan-11.d: Delete notarget.
* testsuite/ld-elf/orphan-12.d: Likewise.
* testsuite/ld-gc/stop.d: Likewise.
* testsuite/ld-scripts/empty-address-3a.d: Likewise.
* testsuite/ld-scripts/empty-address-3b.d: Likewise.
* testsuite/ld-ifunc/pr17154-x86-64-now.d: Delete duplicate notarget.
* testsuite/ld-scripts/section-match-1.d: Comment fix.
commit 3541979fff2861c9537f299e31ac17a436bf1228
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Tue Apr 10 20:21:58 2018 +0100
gdb/testsuite: Run test with software and hardware watchpoints
Expand the gdb.base/watchpoint-reuse-slot.exp test to be run twice,
once with hardware watchpoints disabled (this is new) and then with
hardware watchpoints enabled (the old way).
Running with hardware watchpoints enabled is skipped if the board file
says that hardware watchpoints are not supported on this target.
gdb/testsuite/ChangeLog:
* gdb.base/watchpoint-reuse-slot.exp: Test with hardware
watchpoints enabled and disabled.
commit 8c49aa89abb92516dfc3507b540f736ca6339c0c
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Sun Apr 8 11:08:32 2018 +0100
gdb/riscv: Fix assertion in inferior call code
An assertion when setting up arguments for an inferior call checks the
size of the argument against xlen. However, if xlen and flen are
different sizes, and the argument is being placed into a floating
pointer register then we should be comparing against flen not xlen.
This issue shows up as an assertion failure when running on an rv32g
target with a binary compiled using the rv32f abi and making an
inferior call involving large floating point arguments, for example
the test gdb.base/infcall-nested-structs.exp.
gdb/ChangeLog:
* riscv-tdep.c (riscv_is_fp_regno_p): New function.
(riscv_register_reggroup_p): Use new function, remove unneeded
parenthesis.
(riscv_push_dummy_call): Extend assert to compare against xlen or
flen based on register type.
commit 42ecac1732194293568ab6093c742ca74c1dbdf6
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Sun Apr 8 11:07:56 2018 +0100
gdb/riscv: Use TYPE_SAFE_NAME
In debug printing, use TYPE_SAFE_NAME instead of replicating the
functionality using TYPE_NAME and a null check.
gdb/ChangeLog:
* riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
commit 7153abac62fd8d7f20a307c85e3aa77a020ffc42
Author: Maciej W. Rozycki <macro@mips.com>
Date: Tue Jul 10 01:28:46 2018 +0100
MIPS/LD/testsuite: Make Linux dumps for n64 GOT relocation tests the default
The current default dumps for n64 GOT relocation tests only work for
IRIX targets really, while the Linux dumps are suitable for non-Linux
targets as well. Make the Linux dumps the default then and handle the
IRIX ones as a special case.
Define an `irix' variable as a shorthand for `[istarget *-*-irix*]' and
use it for these n64 GOT relocation tests as well as export class call
relocation tests.
ld/
* testsuite/ld-mips-elf/elf-rel-got-n64.d: Rename to...
* testsuite/ld-mips-elf/elf-rel-got-n64-irix.d: ... this.
* testsuite/ld-mips-elf/elf-rel-got-n64-linux.d: Rename to...
* testsuite/ld-mips-elf/elf-rel-got-n64.d: ... this.
* testsuite/ld-mips-elf/elf-rel-xgot-n64.d: Rename to...
* testsuite/ld-mips-elf/elf-rel-xgot-n64-irix.d: ... this.
* testsuite/ld-mips-elf/elf-rel-xgot-n64-linux.dd: Rename to...
* testsuite/ld-mips-elf/elf-rel-xgot-n64.d: ... this.
* testsuite/ld-mips-elf/mips-elf.exp: Update accordingly.
Define `irix' as a shorthand for `[istarget *-*-irix*]' and use
it throughout.
commit aa4bd7e6aef39f3d9264901fbb31473bd639bdd5
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Jul 10 00:00:35 2018 +0000
Automatic date update in version.in
commit c3c5e486808bc473d1642bb4ba84d80689c8fca2
Author: Cary Coutant <ccoutant@gmail.com>
Date: Mon Jul 9 16:12:27 2018 -0700
Fix test for availability of emplace_back.
Testing for the GCC version 5 or later isn't right, since C++ 11 support
wasn't enabled by default until later. This patch tests the C++ standard
support directly instead of inferring it from the GCC version.
gold/
* incremental.cc (Sized_incremental_binary::setup_readers): Use
emplace_back for C++ 11 or later.
commit 8d4c0995eb0996fdbc0ee490317e3765a94723d7
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Jul 9 23:43:27 2018 +0100
MIPS/LD/testsuite: Fix IRIX dumps for n64 GOT relocation tests
Factor in the presence of a `.gnu.attributes' section at the end of the
respective dumps:
Disassembly of section .gnu.attributes:
0000000000000000 <.gnu.attributes>:
0: 41000000 bc0f 4 <__dso_displacement+0x4>
4: 0f676e75 jal d9db9d4 <__dso_displacement+0xd9db9d4>
8: 00010000 sll zero,at,0x0
c: 00070401 0x70401
and also ignore any trailing output with the IRIX variant of n64 GOT
relocation tests, like already done with the Linux and the embedded
ones, removing:
FAIL: MIPS ELF got reloc n64
FAIL: MIPS ELF xgot reloc n64
LD testsuite regressions with the `mips-sgi-irix6' target.
ld/
* testsuite/ld-mips-elf/elf-rel-got-n64.d: Add `#pass' at the
end.
* testsuite/ld-mips-elf/elf-rel-xgot-n64.d: Likewise.
commit 4b8377e7dbd9e53149268685ba4810a7b09fb0cb
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Jul 9 21:30:44 2018 +0100
MIPS/BFD: Do not redirect to discarded lazy binding stubs
Correct a MIPS/BFD linker issue with dynamic symbol and corresponding
GOT entry values being redirected to lazy binding stubs where the stubs
section has been discarded by assigning to the `/DISCARD/' output
section in the linker script used. The issue manifests itself by the
values entered being relative to the absolute section, which is what any
discarded sections are internally assigned in the linker.
For the `stub-dynsym-2.s' piece of code included as a test case with
this change this issue results in the dynamic symbol table and the GOT
looking like:
Symbol table '.dynsym' contains 3 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 00000010 0 FUNC GLOBAL DEFAULT UND bar
2: 00000000 0 FUNC GLOBAL DEFAULT UND foo
Primary GOT:
Canonical gp value: 00097ff0
Reserved entries:
Address Access Initial Purpose
00090000 -32752(gp) 00000000 Lazy resolver
00090004 -32748(gp) 80000000 Module pointer (GNU extension)
Global entries:
Address Access Initial Sym.Val. Type Ndx Name
00090008 -32744(gp) 00000010 00000010 FUNC UND bar
0009000c -32740(gp) 00000000 00000000 FUNC UND foo
if assembled to regular MIPS code, or:
Symbol table '.dynsym' contains 3 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 0000000d 0 FUNC GLOBAL DEFAULT UND bar
2: 00000001 0 FUNC GLOBAL DEFAULT UND foo
Primary GOT:
Canonical gp value: 00097ff0
Reserved entries:
Address Access Initial Purpose
00090000 -32752(gp) 00000000 Lazy resolver
00090004 -32748(gp) 80000000 Module pointer (GNU extension)
Global entries:
Address Access Initial Sym.Val. Type Ndx Name
00090008 -32744(gp) 0000000d 0000000d FUNC UND bar
0009000c -32740(gp) 00000001 00000001 FUNC UND foo
if assembled to microMIPS code. Symbol values and GOT entries record
the offset into the inexistent stubs section and the ISA bit rather than
zero, which would be the case if a lazy binding stub was not used for
other reasons, such as the value of the symbol being taken for a purpose
other than making a function call (e.g. an R_MIPS_GOT16 relocation).
Correct the issue by refraining from redirecting symbols to lazy binding
stubs if the stubs section is going to be discarded.
bfd/
* elfxx-mips.c (_bfd_mips_elf_adjust_dynamic_symbol): Don't set
`->needs_lazy_stub' if the stubs output section is the absolute
section.
ld/
* testsuite/ld-mips-elf/stub-dynsym-2.dd: New test.
* testsuite/ld-mips-elf/stub-dynsym-2.gd: New test.
* testsuite/ld-mips-elf/stub-dynsym-2.sd: New test.
* testsuite/ld-mips-elf/stub-dynsym-discard-2.gd: New test.
* testsuite/ld-mips-elf/stub-dynsym-discard-2.sd: New test.
* testsuite/ld-mips-elf/stub-dynsym-micromips-2.dd: New test.
* testsuite/ld-mips-elf/stub-dynsym-micromips-2.gd: New test.
* testsuite/ld-mips-elf/stub-dynsym-micromips-2.sd: New test.
* testsuite/ld-mips-elf/stub-dynsym-micromips-insn32-2.dd: New
test.
* testsuite/ld-mips-elf/stub-dynsym-micromips-insn32-2.gd: New
test.
* testsuite/ld-mips-elf/stub-dynsym-micromips-insn32-2.sd: New
test.
* testsuite/ld-mips-elf/stub-dynsym-2.ld: New test linker
script.
* testsuite/ld-mips-elf/stub-dynsym-discard-2.ld: New test
linker script.
* testsuite/ld-mips-elf/mips-elf.exp: Run the new tests.
commit 055303e28f70880f7b2c3e44df0ba7646fc85cf8
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Mon Jul 2 22:28:22 2018 +0100
gdb: Use add_setshow_zuinteger_unlimited_cmd in remote.c
Switch to use add_setshow_zuinteger_unlimited_cmd for some of the
control variables in remote.c. The variables
hardware-watchpoint-limit, hardware-breakpoint-limit, and
hardware-watchpoint-length-limit are all changed. For example, a user
will now see this:
(gdb) show remote hardware-breakpoint-limit
The maximum number of target hardware breakpoints is unlimited.
Instead of this:
(gdb) show remote hardware-breakpoint-limit
The maximum number of target hardware breakpoints is -1.
And can do this:
(gdb) set remote hardware-breakpoint-limit unlimited
However, previously any negative value implied "unlimited", now only
-1, or the text "unlimited" can be used for unlimited. Any other
negative value will give an error about invalid input. This is a
small change in the user interface, but, hopefully, this will not
cause too many problems.
I've also added show functions for these three variables to allow for
internationalisation.
gdb/ChangeLog:
* remote.c (show_hardware_watchpoint_limit): New function.
(show_hardware_watchpoint_length_limit): New function.
(show_hardware_breakpoint_limit): New function.
(_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
where appropriate, update help text.
gdb/doc/ChangeLog:
* gdb.texinfo (Remote Configuration): Update descriptions for
set/show of hardware-watchpoint-limit, hardware-breakpoint-limit,
and hardware-watchpoint-length-limit variables.
commit 2af4d0d938d76e96ccb862a23d05862154262de9
Author: Jeff Law <law@redhat.com>
Date: Mon Jul 9 10:35:12 2018 -0600
* testsuite/nds32/ji-jr.d: Fix name tag.
commit 8a8c916960b0e1b00a5d323fc478f4b4ef1072f5
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Jul 9 15:50:57 2018 +0100
LD/testsuite: run_dump_test: Report UNSUPPORTED for excluded targets
Bring the LD implementation of `run_dump_test' in line with its binutils
and GAS counterparts and report the UNSUPPORTED status for tests the run
of which has been prevented by means of one or more of `target',
`alltargets' and `notarget' tags. Define `skip', `anyskip' and `noskip'
tags, which do not report anything for tests that are not run.
The rationale behind this is that we want to have unsupported tests
reported to ensure that they have actually been attempted and have not
been accidentally suppressed. Then tests which have target-specific
variants that cannot be expressed with a single .d file can make use of
the newly added tags to silently suppress the uninteresting variants.
ld/
* testsuite/lib/ld-lib.exp (run_dump_test): Call `unsupported'
if the target being tested has been excluded by means of one or
more of `target', `alltargets' and `notarget' tags. Add support
for `skip', `anyskip' and `noskip' tags.
commit 8f7fc65182f74dfa8e2aa9f81a1cdf786a3bdbe6
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Jul 9 15:50:57 2018 +0100
LD/testsuite: run_dump_test: Use the intended test name ASAP
Bring the LD implementation of `run_dump_test' in line with its binutils
and GAS counterparts and use the intended test name, from the `name' tag
if set, for test status reporting as soon as it is available.
ld/
* testsuite/lib/ld-lib.exp (run_dump_test): Move the setting of
`testname' earlier on and use it for test status reporting.
commit 9dcb0ba4457b8845fb704635e824471bf1faf092
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Jul 9 15:50:57 2018 +0100
S12Z/opcodes: Correct a `reg' global shadowing error for pre-4.8 GCC
Remove `-Wshadow' compilation errors:
cc1: warnings being treated as errors
.../opcodes/s12z-dis.c: In function 'lea_reg_xys_opr':
.../opcodes/s12z-dis.c:814: error: declaration of 'reg' shadows a global declaration
.../opcodes/s12z-dis.c:783: error: shadowed declaration is here
.../opcodes/s12z-dis.c: In function 'lea_reg_xys':
.../opcodes/s12z-dis.c:843: error: declaration of 'reg' shadows a global declaration
.../opcodes/s12z-dis.c:783: error: shadowed declaration is here
.../opcodes/s12z-dis.c: In function 'print_insn_loop_primitive':
.../opcodes/s12z-dis.c:2206: error: declaration of 'reg' shadows a global declaration
.../opcodes/s12z-dis.c:783: error: shadowed declaration is here
which for versions of GCC before 4.8 prevent support for S12Z targets
from being built. See also GCC PR c/53066.
opcodes/
* s12z-dis.c (lea_reg_xys_opr): Rename `reg' local variable to
`reg_xys'.
(lea_reg_xys): Likewise.
(print_insn_loop_primitive): Rename `reg' local variable to
`reg_dxy'.
commit c8ad9b9a31aa3e6039567fc1f152dd454c946d5f
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Fri Feb 2 15:51:31 2018 +0000
gdb/testsuite: Allow for failure to read some memory addresses
In the gdb.base/examine-backward.exp test script, we check to see if
address zero is readable, and then read memory first forward from
address zero, and then backward from address zero.
The problem is, being able to read address zero does not guarantee
that you'll be able to read from the other end of the address space,
and the test probably shouldn't assume that is the case.
This patch updates the test script so that even if address zero is
known non-readable, we still run the tests, the tests in question are
mostly about, can GDB calculate the correct address to read from, we
can confirm this even if the final read ultimately fails. We also no
longer assume that if address zero is readable, then the other end of
the address space will be readable.
One further change is that, when we examined the memory at address
zero, the regexp used to match the address expected that the zero
address would have two '0' digits as the least significant digits. As
GDB strips leading zeros from addresses this was causing the test to
fail. I've reduced the zero address to a single 0 digit.
gdb/testsuite/ChangeLog:
* gdb.base/examine-backward.exp: Still run tests around address
0x0, even if address 0x0 is not readable. Update the pattern for
matching address 0x0 in expected output.
commit 8fd32c1ce66c66b02b2eb506a038cfc615aad1cb
Author: Tom Tromey <tom@tromey.com>
Date: Mon Jul 2 07:36:04 2018 -0600
Don't mention XM_CDEPS or NAT_CLIBS
Neither XM_CDEPS nor NAT_CLIBS are defined anywhere, so remove the
uses.
gdb/ChangeLog
2018-07-09 Tom Tromey <tom@tromey.com>
* Makefile.in (CDEPS): Don't mention XM_CDEPS.
(CLIBS): Don't mention NAT_CLIBS.
commit 31278b5193ea6025c09110aef2d67d81a952ebcc
Author: Tom Tromey <tom@tromey.com>
Date: Mon Jul 2 07:32:10 2018 -0600
Remove ADD_FILES and ADD_DEPS from Makefile.in
Nothing defines XM_ADD_FILES, TM_ADD_FILES, or NAT_ADD_FILES any more,
so consequently ADD_FILES and ADD_DEPS are no longer needed. So, this
removes them.
gdb/ChangeLog
2018-07-09 Tom Tromey <tom@tromey.com>
* Makefile.in (ADD_FILES, ADD_DEPS): Remove.
(LIBGDB_OBS, clean mostlyclean): Update.
(gdb$(EXEEXT), insight$(EXEEXT)): Update.
commit e5fd1493fd9c2d8d55fd15b9bd6539781ee56209
Author: Tom Tromey <tom@tromey.com>
Date: Mon Jul 2 07:29:03 2018 -0600
Minimize yacc and lex output
This minimizes the "make" output from the yacc and lex rules,
following the same technique as the rest of the Makefile.
The lex rule had a special case to deal with the situation where flex
is not available. I don't think this is needed, so I removed it. If
flex is truly unavailable, the person building gdb can simply "touch"
the output file.
gdb/ChangeLog
2018-07-09 Tom Tromey <tom@tromey.com>
* Makefile.in (%.c: %.y): Use ECHO_YACC.
(%.c: %.l): Use ECHO_LEX. Just fail if flex not available.
* silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
commit 981e0c0c1aabcd78409184c79e8f88b5de918e38
Author: Tom Tromey <tom@tromey.com>
Date: Mon Jul 2 07:09:37 2018 -0600
Fix exec.c handling in Makefile
exec.c ws handled specially in COMMON_OBS, but there doesn't seem to
be a reason for this. This changes the Makefile to treat exec.c as an
ordinary source file.
gdb/ChangeLog
2018-07-09 Tom Tromey <tom@tromey.com>
* Makefile.in (ALLDEPFILES): Remove exec.c.
(COMMON_OBS): Remove exec.o.
(COMMON_SFILES): Add exec.c.
commit 14ccceb2e24df7defd5264ec3d078f79ecfa1b76
Author: Tom Tromey <tom@tromey.com>
Date: Mon Jul 2 07:07:35 2018 -0600
Remove lint support
I don't think anyone uses lint any more, so this removes the support
for it from the Makefile.
gdb/ChangeLog
2018-07-09 Tom Tromey <tom@tromey.com>
* Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
commit 5d3c3a68c3ffe37c06a7a8dad30c19241bd39f7a
Author: Tom Tromey <tom@tromey.com>
Date: Mon Jul 2 07:06:27 2018 -0600
Use a stamp file for version.c
This introduces a stamp file for version.c, preventing unnecessary
version.o rebuilds.
gdb/ChangeLog
2018-07-09 Tom Tromey <tom@tromey.com>
* Makefile.in (clean mostlyclean): Remove stamp-version.
(version.c): Depend on stamp-version.
(stamp-version): New rule, from version.c rule.
commit 1998086d5436499e8eaf16772e300459662c3d7c
Author: Tom Tromey <tom@tromey.com>
Date: Mon Jul 2 07:03:13 2018 -0600
Use a stamp file for init.c
This introduces a stamp file for init.c. This prevents constant
rebuilds of init.o, by arranging for init.c to only be modified when
its contents change. (FWIW this is a standard idiom in use by
Automake and by gdb itself for many years.)
gdb/ChangeLog
2018-07-09 Tom Tromey <tom@tromey.com>
* Makefile.in (init.c): Depend on stamp-init.
(stamp-init): New rule, from init.c rule.
(clean mostlyclean): Remove stamp-init.
commit 4c7549492b301d7d118379c3e98afc0b364d1935
Author: Tom Tromey <tom@tromey.com>
Date: Sun Jul 1 18:31:08 2018 -0600
Simplify INIT_FILES
This simplifies the INIT_FILES variable. COMMON_OBS includes
CONFIG_OBS and SUBDIR_GCC_COMPILE_OBS, so there's no need to reference
CONFIG_OBS or SUBDIR_GCC_COMPILE_SRCS there. Once this is done, it it
clear that duplicates can't occur, so remove the duplicate-removing
code as well.
gdb/ChangeLog
2018-07-09 Tom Tromey <tom@tromey.com>
* Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
SUBDIR_GCC_COMPILE_SRCS.
commit 6497f1dd035530c483fdae22aaa6fcc715775f58
Author: Tom Tromey <tom@tromey.com>
Date: Sun Jul 1 18:29:42 2018 -0600
Remove some unused code from init.c build rule
The init.c build rule has a few sed expressions that aren't necessary
any more. This removes them.
gdb/ChangeLog
2018-07-09 Tom Tromey <tom@tromey.com>
* Makefile.in (init.c): Remove some unused sed rules.
commit 97a34db94284f42829e5e5c9c4fa65b216739bcb
Author: Tom Tromey <tom@tromey.com>
Date: Sun Jul 1 17:34:51 2018 -0600
Remove TSOBS from gdb/Makefile.in
The TSOBS variable doesn't seem to serve a useful purpose in
gdb/Makefile.in, so remove it.
gdb/ChangeLog
2018-07-09 Tom Tromey <tom@tromey.com>
* Makefile.in (TSOBS): Remove.
(INIT_FILES): Update.
(LIBGDB_OBS): Update.
(COMMON_SFILES): Add inflow.c.
(SFILES): Remove inflow.c.
commit 872899f1efeda1e93ed569d322c6b2ee85ce885c
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Jul 9 06:51:17 2018 -0700
bfd: Use changequote for "i[3-7]86-*-linux-*"
Use changequote to match "i[3-7]86-*-linux-*", instead of
"i3-786-*-linux-*".
PR ld/23388
* configure.ac: Use changequote for "i[3-7]86-*-linux-*".
* configure: Regenerated.
commit 61658d78f08920e6afe7b43bcaa287521da196aa
Author: Alan Modra <amodra@gmail.com>
Date: Mon Jul 9 12:09:59 2018 +0930
m68hc1* fixes
With config.sub now properly returning m68hc12-unknown-elf rather than
m68hc12-unknown-none, more ELF tests run. This patch enables
STB_GNU_UNIQUE processing fixing some testsuite failures that probably
no m68hc12 user cares about, and removes some XPASSes.
bfd/
* elf32-m68hc1x.c (elf32_m68hc11_post_process_headers): Call
_bfd_elf_post_process_headers.
ld/
* testsuite/ld-discard/extern.d: Remove m68hc12 xfail.
* testsuite/ld-discard/start.d: Likewise.
* testsuite/ld-discard/static.d: Likewise.
commit f5a1cdde80a5cc5f1b86be7e94fb062d3fd4aca9
Author: Christophe Lyon <christophe.lyon@linaro.org>
Date: Mon Jul 9 07:45:46 2018 +0000
[ARM] Fix warning cannot find thumb start symbol
In case params.thumb_entry_symbol has its default NULL value, using it
to print a warning in gld${EMULATION_NAME}_finish results in a crash.
Use h->root.string instead which either points to
params.thumb_entry_symbol name or to entry_symbol name.
2018-07-09 Christophe Lyon <christophe.lyon@linaro.org>
* emultempl/armelf.em (gld${EMULATION_NAME}_finish): Use the right
symbol name in case of warning.
Change-Id: Iec61a833c0ad538b1440bf326ba67834c314dd63
commit dc7fc9ab5dc4afe62af8703a26968acf08b4437e
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Jul 9 00:00:48 2018 +0000
Automatic date update in version.in
commit a47a3dc8fb3512865a0115e86fc901758a62e0eb
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Jul 8 00:01:00 2018 +0000
Automatic date update in version.in
commit 25289ac1670fb164770b0753116b1e909beed4cb
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Sat Jul 7 23:02:36 2018 +0200
contrib/gdb-add-index.sh -dwarf-5
------------------------------------------------------------------------------
(gdb) help save gdb-index
Save a gdb-index file.
Usage: save gdb-index [-dwarf-5] DIRECTORY
No options create one file with .gdb-index extension for pre-DWARF-5
compatible .gdb_index section. With -dwarf-5 creates two files with
extension .debug_names and .debug_str for DWARF-5 .debug_names section.
------------------------------------------------------------------------------
But gdb-add-index command provided no way how to pass the -dwarf-5 option.
gdb/ChangeLog
2018-07-07 Jan Kratochvil <jan.kratochvil@redhat.com>
* contrib/gdb-add-index.sh ($dwarf5): New, use it.
commit e83f4d97504515f8c5f290eeb25eac87cca6892f
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sat Jul 7 11:13:14 2018 -0400
ia64-tdep.c: Fix -Wwrite-strings errors
Simply add const where necessary to get rid of errors like:
/home/simark/src/binutils-gdb/gdb/ia64-libunwind-tdep.c:114:1: error: ISO C++ forbids converting a string constant to âchar*â [-Werror=write-strings]
static char *get_reg_name = STRINGIFY(UNW_OBJ(get_reg));
^~~~~~~~~~~~~~
/home/simark/src/binutils-gdb/gdb/common/preprocessor.h:28:25: note: in definition of macro âSTRINGIFY_1â
#define STRINGIFY_1(x) #x
^
/home/simark/src/binutils-gdb/gdb/ia64-libunwind-tdep.c:114:29: note: in expansion of macro âSTRINGIFYâ
static char *get_reg_name = STRINGIFY(UNW_OBJ(get_reg));
^~~~~~~~~
gdb/ChangeLog:
* ia64-tdep.c (get_reg_name, get_fpreg_name, get_saveloc_name,
is_signal_frame_name, step_name, init_remote_name,
create_addr_space_name, destroy_addr_space_name,
search_unwind_table_name, find_dyn_list_name): Constify.
commit 674e55f7b11e4d3ac6d321cdb0b70c68f24fe564
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Jul 7 00:00:46 2018 +0000
Automatic date update in version.in
commit c451bb34ae8bd2d0669bd563366883cfbcf0de9b
Author: Max Filippov <jcmvbkbc@gmail.com>
Date: Mon Jul 2 11:12:44 2018 -0700
xtensa: don't emit dynamic relocation for weak undefined symbol
Resolved reference to a weak undefined symbol in PIE must not have
a dynamic relative relocation against itself, otherwise the value of a
reference will be changed from 0 to the base of executable, breaking
code like the following:
void weak_function (void);
if (weak_function)
weak_function ();
This fixes tests for PR ld/22269 and a number of PIE tests in xtensa gcc
testsuite.
bfd/
2018-07-06 Max Filippov <jcmvbkbc@gmail.com>
* elf32-xtensa.c (elf_xtensa_allocate_dynrelocs): Don't allocate
space for dynamic relocation for undefined weak symbol.
(elf_xtensa_relocate_section): Don't emit R_XTENSA_RELATIVE
relocation for undefined weak symbols.
(shrink_dynamic_reloc_sections): Don't shrink dynamic relocation
section for relocations against undefined weak symbols.
commit ad1cc4e492e51ff334df81b5e8610f91b50e373a
Author: Alan Hayward <alan.hayward@arm.com>
Date: Fri Jul 6 16:25:21 2018 +0100
Add checks for the NT_ARM_SVE section in a core file.
The NT_ARM_SVE section is documented here:
https://github.com/torvalds/linux/blob/master/Documentation/arm64/sve.txt
* A NT_ARM_SVE note will be added to each coredump for each thread of the
dumped process. The contents will be equivalent to the data that would have
been read if a PTRACE_GETREGSET of NT_ARM_SVE were executed for each thread
when the coredump was generated.
* elf.c (elfcore_grok_aarch_sve): New function.
(elfcore_grok_note): Check for Aarch64 SVE.
(elfcore_write_aarch_sve): New function.
(elfcore_write_register_note): Check for Aarch64 SVE.
* elf-bfd.h(elfcore_grok_aarch_sve): New declaration.
commit f311ba7ed84d66ae2cd77bd969747d7ab959d866
Author: Tamar Christina <tamar.christina@arm.com>
Date: Fri Jul 6 16:18:19 2018 +0100
Fix SBO bit in disassembly mask for ldrah on AArch64.
The disassembly mask for ldarh incorrectly didn't mask out bit 20 which
is part of the SBO part of the instruction and shouldn't be considered input.
This fixes the wrong bit fixing the disassembly of instructions to
ldarh and makes the behavior consistent.
opcodes/
PR binutils/23242
* aarch64-tbl.h (ldarh): Fix disassembly mask.
commit cba05feb51cb97f75f9a7814b081ce45245ac7b2
Author: Tamar Christina <tamar.christina@arm.com>
Date: Fri Jul 6 16:15:41 2018 +0100
Fix the read/write flag for these registers on AArch64
The previous constraints were based on information already in opcodes and it
seems that a few of them were wrong. I have now hand verified the ones changed
by the previous patch and corrected where needed.
This prevents a warning to be issued when one shouldn't be.
opcodes/
PR binutils/23369
* aarch64-opc.c (aarch64_sys_regs): Make read/write csselr_el1,
vsesr_el2, osdtrrx_el1, osdtrtx_el1, pmsidr_el1.
gas/testsuite/
PR binutils/23369
* gas/aarch64/msr.d (csselr_el1,
vsesr_el2, osdtrrx_el1, osdtrtx_el1, pmsidr_el1): New.
* gas/aarch64/msr.s: Likewise.
commit e0e5e971ae89da1ded13013bb7378dc5f09363af
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Tue Apr 10 20:18:53 2018 +0100
gdb/testsuite: Ensure test links in malloc and free
The test associated with the source file
gdb.base/share-env-with-gdbserver.c relies on calling malloc and free
within the inferior from GDB. However, as the test source itself
makes no use of these functions, there's no requirement that they be
linked into the test executable.
This commit adds a dummy call to malloc and free to ensure they are
linked into the test executable.
gdb/testsuite/ChangeLog:
* gdb.base/share-env-with-gdbserver.c (main): Add call to
malloc/free.
commit d20e98ab59ea49d3f90bf05ac7b16c0d3588ce41
Author: Nick Clifton <nickc@redhat.com>
Date: Fri Jul 6 13:52:59 2018 +0100
Stop readelf from reporting gaps in the gnu build notes if the gap crosses a section boundary.
* readelf.c (same_section): New function.
(print_gnu_build_attribute_description): Do not complain about
gaps that cross a section boundary.
commit 2e48456f0236d39b6de98feb7168f56cef155912
Author: Nick Clifton <nickc@redhat.com>
Date: Fri Jul 6 11:46:14 2018 +0100
Fix the relocs created to adjust notes created by the assembler.
* write.c (maybe_generate_build_notes): Bias reloc offsets by the
number of notes already generated.
commit 269965964e8a6586a07912a60e08eeb0053bfb2a
Author: Sebastian Huber <sebastian.huber@embedded-brains.de>
Date: Fri Jul 6 08:23:40 2018 +0200
Update config.sub
* config.sub: Sync with upstream version 2018-07-03.
commit fe75810f8e0cc33384f22d0479506711d4014c60
Author: Alan Modra <amodra@gmail.com>
Date: Fri Jul 6 15:07:08 2018 +0930
Fix diagnostic errors
Fixes a number of build errors like the following
.../elf32-arm.c: In function 'elf32_arm_nabi_write_core_note':
.../elf32-arm.c:2177: error: #pragma GCC diagnostic not allowed inside functions
.../elf32-arm.c:2186: error: #pragma GCC diagnostic not allowed inside functions
See the comment in diagnostics.h.
include/
* diagnostics.h: Comment on macro usage.
bfd/
* elf32-arm.c (elf32_arm_nabi_write_core_note): Don't use
DIAGNOTIC_PUSH and DIAGNOSTIC_POP unconditionally.
* elf32-ppc.c (ppc_elf_write_core_note): Likewise.
* elf32-s390.c (elf_s390_write_core_note): Likewise.
* elf64-ppc.c (ppc64_elf_write_core_note): Likewise.
* elf64-s390.c (elf_s390_write_core_note): Likewise.
* elfxx-aarch64.c (_bfd_aarch64_elf_write_core_note): Likewise.
commit 724436fccb68156ff53b7b03cb7f41547a65c30c
Author: Alan Modra <amodra@gmail.com>
Date: Fri Jul 6 01:08:16 2018 +0930
[GOLD] PowerPC .gnu.attributes support
elfcpp/
* powerpc.h (Tag_GNU_Power_ABI_FP): Define.
(Tag_GNU_Power_ABI_Vector, Tag_GNU_Power_ABI_Struct_Return): Define.
gold/
* powerpc.cc: Include attributes.h.
(Powerpc_relobj::attributes_section_data_): New variable, with
accessor and associated constructor and destructor support.
(Powerpc_dynobj::attributes_section_data_): Likewise.
(Powerpc_relobj::do_read_symbols): Stash SHT_GNU_ATTRIBUTES section
contents in attributes_section_data_.
(Powerpc_dynobj::do_read_symbols): Likewise.
(Target_powerpc): Add attributes_section_data_, last_fp_, last_ld_,
last_vec_, and last_struct_ vars.
(Target_powerpc::merge_object_attributes): New function.
(Target_powerpc::do_finalize_sections): Iterate over input objects
merging attributes. Create output attributes section.
commit 6821842f15efaec045d9e38f115af01ddffdaede
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Thu Jul 5 21:50:12 2018 -0400
darwin: Silence syscall deprecated declaration warning
This patch silences this warning:
/Users/simark/src/binutils-gdb/gdb/darwin-nat.c:839:10: error: 'syscall' is deprecated: first deprecated in macOS 10.12 - syscall(2) is unsupported; please switch to a supported interface. For SYS_kdebug_trace use kdebug_signpost(). [-Werror,-Wdeprecated-declarations]
res = syscall (SYS___pthread_kill, thread->gdb_port, nsignal);
^
/usr/include/unistd.h:745:6: note: 'syscall' has been explicitly marked deprecated here
int syscall(int, ...);
^
The comment of the new pthread_kill function explains why we use the
syscall function directly.
include/ChangeLog:
* diagnostics.h (DIAGNOSTIC_IGNORE_DEPRECATED_DECLARATIONS):
Define for clang.
gdb/ChangeLog:
* darwin-nat.c (darwin_pthread_kill): New function.
(darwin_resume_thread): Use darwin_pthread_kill.
commit bb11866d6a635fadb9285d18e2fb819d2de2c28c
Author: Jim Wilson <jimw@sifive.com>
Date: Thu Jul 5 17:49:11 2018 -0700
RISC-V: Add riscv-*-* configure support, and minor cleanup.
bfd/
* config.bfd (riscv32*-*-*): Renamed from riscv32-*-*.
(riscv64*-*-*): Likewise.
(riscv-*-*): Add as an alias for riscv32*-*-*.
ld/
* configure.tgt (riscv-*-*): Add as an alias for riscv32*-*-*.
commit 01b5d12f284e1ce5a1441ce6ac383a59f3e4b05a
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Jul 6 00:00:41 2018 +0000
Automatic date update in version.in
commit a5628fa8443f2182fcd799e03de31d1f8759df83
Author: Maciej W. Rozycki <macro@mips.com>
Date: Thu Jul 5 19:44:02 2018 +0100
MIPS/LD/testsuite: Use $linux_gnu consistently across `mips-elf.exp'
Replace two remaining spelled-out calls to `[istarget mips*-*-linux*]'
in `mips-elf.exp' with $linux_gnu, which is equivalent.
ld/
* testsuite/ld-mips-elf/mips-elf.exp: Replace remaining calls to
`[istarget mips*-*-linux*]' with $linux_gnu.
commit 56ad703d56ffe5dc55d5e719a6ec41fd6cf9bfbe
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Jul 5 09:24:07 2018 -0700
x86: Remove x86 ISA properties with empty bits
There is no need to generate x86 ISA properties with empty bits in
linker output.
bfd/
PR ld/23372
* elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Remove x86
ISA properties with empty bits.
ld/
PR ld/23372
* testsuite/ld-i386/i386.exp: Run pr23372a and pr23372b.
* testsuite/ld-i386/pr23372a.d: New file.
* testsuite/ld-i386/pr23372a.s: Likewise.
* testsuite/ld-i386/pr23372b.d: Likewise.
* testsuite/ld-i386/pr23372b.s: Likewise.
* testsuite/ld-i386/pr23372c.s: Likewise.
* testsuite/ld-x86-64/pr23372a-x32.d: Likewise.
* testsuite/ld-x86-64/pr23372a.d: Likewise.
* testsuite/ld-x86-64/pr23372a.s: Likewise.
* testsuite/ld-x86-64/pr23372b-x32.d: Likewise.
* testsuite/ld-x86-64/pr23372b.d: Likewise.
* testsuite/ld-x86-64/pr23372b.s: Likewise.
* testsuite/ld-x86-64/pr23372c.s: Likewise.
* testsuite/ld-x86-64/x86-64.exp: Run pr23372a, pr23372a-x32,
pr23372b and pr23372b-x32.
commit c524414837791938eb5aed58a3334c4f8e04fe4b
Author: Sebastian Huber <sebastian.huber@embedded-brains.de>
Date: Fri Jun 29 13:06:40 2018 +0200
Update config.guess and config.sub
* config.guess: Sync with upstream version 2018-06-26.
* config.sub: Sync with upstream version 2018-07-02.
commit d8dab05495df17d8c961be8913e7a1e152670382
Author: Nick Clifton <nickc@redhat.com>
Date: Thu Jul 5 12:16:56 2018 +0100
Updated Russian, Bulgarian, and Brazilian Portuguese translations for various components of the binutuls.
ld * po/bg.po: Updated Bulgarian translation.
* po/pt_BR.po: Updated Brazilian Portuguese translation.
binutils* po/bg.po: Updated Bulgarian translation.
bfd,gas * po/ru.po: Updated Russian translation.
commit c530603c59efb5630ce67446be64d42c0522fee2
Author: Tom de Vries <tdevries@suse.de>
Date: Sat Jun 16 18:39:30 2018 +0200
[gdb] Fix build error in macroexp.c
When doing a combined build with the gcc and binutils-gdb repos, I run into
this build error in gdb:
...
gdb/macroexp.c: \
In function âvoid get_next_token_for_substitution(macro_buffer*, \
macro_buffer*, char**, macro_buffer*, char**, int*, bool*)â:
gdb/macroexp.c:925:17: error: \
implicitly-declared âconstexpr macro_buffer& \
macro_buffer::operator=(const macro_buffer&)â is deprecated \
[-Werror=deprecated-copy]
*token = *lookahead;
...
Wdeprecated-copy is a new gcc warning added after gcc 8.
This patch fixes the build error by adding an explicit copy operator to the
macro_buffer class. I've added asserts to ensure that both the dest and src
of the copy are shared, in other words, neither is owner of the text pointer.
I've run the gdb testsuite on x86_64-linux and the asserts did not trigger.
2018-07-05 Tom de Vries <tdevries@suse.de>
* macroexp.c (macro_buffer) <operator=>: New member function.
commit 4a91d0ba307eb24eb87ad27f4ea8fcde823c3e61
Author: Alan Modra <amodra@gmail.com>
Date: Wed Jul 4 10:41:31 2018 +0930
Error for mismatched powerpc ABI tags
And report the two input files that are incompatible rather than
reporting that an input file is incompatible with the output.
bfd/
* elf-bfd.h (_bfd_elf_ppc_merge_fp_attributes): Update prototype.
* elf32-ppc.c (_bfd_elf_ppc_merge_fp_attributes): Return error
on mismatch. Remove "warning: " from messages. Track last bfd
used to set tags.
(ppc_elf_merge_obj_attributes): Likewise. Handle status from
_bfd_elf_ppc_merge_fp_attributes.
* elf64-ppc.c (ppc64_elf_merge_private_bfd_data): Handle status
from _bfd_elf_ppc_merge_fp_attributes.
ld/
* testsuite/ld-powerpc/attr-gnu-4-12.d: Update expected output.
* testsuite/ld-powerpc/attr-gnu-4-13.d: Likewise.
* testsuite/ld-powerpc/attr-gnu-4-21.d: Likewise.
* testsuite/ld-powerpc/attr-gnu-4-23.d: Likewise.
* testsuite/ld-powerpc/attr-gnu-4-31.d: Likewise.
* testsuite/ld-powerpc/attr-gnu-4-32.d: Likewise.
* testsuite/ld-powerpc/attr-gnu-8-23.d: Likewise.
* testsuite/ld-powerpc/attr-gnu-12-21.d: Likewise.
commit 4423fa967210f4132b81d5fe80a1f6f3ec0ab1c8
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Jul 5 00:00:45 2018 +0000
Automatic date update in version.in
commit a7d0f0f000b39269c25509a22a12549c6ef26b1f
Author: Tom Tromey <tom@tromey.com>
Date: Wed Jul 4 11:32:50 2018 -0600
Use exit_inferior in darwin_attach_pid
Commit a50c11c666 was intended to use exit_inferior in
darwin_attach_pid, but I accidentally pushed the wrong version of the
patch. This fixes the problem.
gdb/ChangeLog
2018-07-04 Tom Tromey <tom@tromey.com>
* darwin-nat.c (darwin_attach_pid): Use exit_inferior.
commit 6242c6a690ce8e18aad711103902bfff00cc2757
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Wed Jul 4 12:40:25 2018 -0400
darwin: Don't use sbrk
This patch gets rid of this warning on macOS:
CXX main.o
/Users/simark/src/binutils-gdb/gdb/main.c:492:27: error: 'sbrk' is deprecated [-Werror,-Wdeprecated-declarations]
lim_at_start = (char *) sbrk (0);
^
/usr/include/unistd.h:585:1: note: 'sbrk' has been explicitly marked deprecated here
__deprecated __WATCHOS_PROHIBITED __TVOS_PROHIBITED
^
/usr/include/sys/cdefs.h:176:37: note: expanded from macro '__deprecated'
#define __deprecated __attribute__((deprecated))
^
sbrk on macOS is not useful for our purposes, since sbrk(0) always
returns the same value. From what I read, brk/sbrk on macOS is just an
emulation, it always returns a pointer in a 4MB section reserved for
that.
So instead of letting users use "maint set per-command space on" and
print silly results, I think we should just disable that feature for
this platform (as we do for platforms that don't have sbrk).
I defined a HAVE_USEFUL_SBRK macro and used that instead of HAVE_SBRK.
gdb/ChangeLog:
* common/common-defs.h (HAVE_USEFUL_SBRK): Define.
* main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
* maint.c: Likewise.
* top.c: Likewise.
commit 4e5b2f8961a385056922f45a5cbb02bbbad4a737
Author: Joel Brobecker <brobecker@adacore.com>
Date: Wed Jul 4 08:48:05 2018 -0700
Update NEWS post GDB 8.2 branch creation.
gdb/ChangeLog:
* NEWS: Create a new section for the next release branch.
Rename the section of the current branch, now that it has
been cut.
commit 538ccc4a222e8da14236fb5639ffe6b5ed1931a0
Author: Joel Brobecker <brobecker@adacore.com>
Date: Wed Jul 4 08:42:44 2018 -0700
Bump version to 8.2.50.DATE-git.
Now that the GDB 8.2 branch has been created, we can
bump the version number.
gdb/ChangeLog:
GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
* version.in: Bump version to 8.2.50.DATE-git.
commit 1b919490e8ba30bf1d6941df0ed112b0e557017e
Author: Vyacheslav Barinov <v.barinov@samsung.com>
Date: Wed Jul 4 16:13:29 2018 +0100
Warn if /proc is not accessible
There's a buildroot where I want to debug a binary, and I tried to
connect to it from outside, but got very weird errors like
architecture mismatch or protocol errors. At last, after switching on
'--debug' for gdbserver I found a message 'Can't open /proc/pid/'
message and suddenly found that I forgot to mount procfs in my
buildroot.
Make discovering the problem easier by making GDB / GDBserver warn
(even without --debug) if /proc can not be accessed.
Native debugging:
(gdb) start
Temporary breakpoint 1 at 0x400835: file test.c, line 10.
Starting program: /tmp/test
warning: /proc is not accessible.
GDBserver/remote debugging:
$ ./gdbserver :9999 ./gdbserver
gdbserver: /proc is not accessible.
gdb/ChangeLog:
2018-07-04 Vyacheslav Barinov <v.barinov@samsung.com>
Pedro Alves <palves@redhat.com>
* linux-nat.c (linux_init_ptrace): Rename to ...
(linux_init_ptrace_procfs): ... this. Call
linux_proc_init_warnings.
(linux_nat_target::post_attach)
(linux_nat_target::post_startup_inferior): Adjust.
* nat/linux-procfs.c (linux_proc_init_warnings): Define function.
* nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
gdb/gdbserver/ChangeLog:
2018-07-04 Vyacheslav Barinov <v.barinov@samsung.com>
Pedro Alves <palves@redhat.com>
* linux-low.c (initialize_low): Call linux_proc_init_warnings.
commit 94d401b8b88a76b1372ce44e805516756a4f737b
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Jul 4 06:27:58 2018 -0700
ld: Set non_ir_ref_regular for --undefined SYMBOL
Set non_ir_ref_regular to TRUE for symbols forced into the output file
so that they won't be removed by garbage collection with LTO.
PR ld/23309
* ldlang.c (insert_undefined): Set non_ir_ref_regular to TRUE.
* plugin.c (is_visible_from_outside): Don't scan entry_symbol.
* testsuite/ld-plugin/pr23309.c: New file.
* testsuite/ld-plugin/pr23309.d: Likewise.
commit b14b7ff14ffe911ec562004304841cf7d2775a19
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Jul 4 06:22:40 2018 -0700
ld: Properly display default for -z separate-code
Check DEFAULT_LD_Z_SEPARATE_CODE to display default for -z separate-code.
PR ld/23358
* lexsup.c (elf_shlib_list_options): Properly display default
for -z separate-code.
commit db40acb0bed088872837f916029d8800c33f9f94
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Jul 4 06:18:22 2018 -0700
Also install diagnostics.h
Since bfd.h is an installed header, also install diagnostics.h.
* Makefile.am (bfdinclude_HEADERS): Add $(INCDIR)/diagnostics.h.
* Makefile.in: Regenerated.
commit 1ea5da02629b4bf9c4cea50aee189f94fa7d1a3b
Author: Tom de Vries <tdevries@suse.de>
Date: Wed Jul 4 00:07:30 2018 +0200
[gdb/symtab] Fix version check in dwarf compilation unit header
The version check of the dwarf compilation unit header in
error_check_comp_unit_head is done too late, and consequently dwarf code with
an unsupported version in the compilation unit header is interpreted as dwarf5
code in read_comp_unit_head.
Fixed by moving the check earlier.
Build and reg-tested on x86_64-linux.
2018-07-04 Tom de Vries <tdevries@suse.de>
* dwarf2read.c (error_check_comp_unit_head): Move dwarf version
check ...
(read_comp_unit_head): ... here.
* gdb.dwarf2/dw2-error.exp: Update expected error message.
commit f51e0e20bd303a9b366084ac719db10978402713
Author: Tom Tromey <tom@tromey.com>
Date: Tue Jun 5 10:22:01 2018 -0600
Remove VEC from breakpoint
This removes a use of VEC from breakpoint.h, also removing the
now-unnecessary breakpoint_p typedef.
This patch fixes a latent memory leak in
find_matching_tracepoint_location, which neglected to free the vector
returned by all_tracepoints.
Tested by the buildbot.
gdb/ChangeLog
2018-07-03 Tom Tromey <tom@tromey.com>
* tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
(stop_tracing, tstatus_command)
(find_matching_tracepoint_location, merge_uploaded_tracepoints)
(print_one_static_tracepoint_marker): Update.
* breakpoint.c (static_tracepoints_here, all_tracepoints): Return
std::vector.
* breakpoint.h (breakpoint_p): Remove typedef. Don't declare
VEC.
(all_tracepoints, static_tracepoints_here): Return std::vector.
commit 9b960ba18c83e3f9aad16fe8bf845f5c469712bd
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Jul 4 00:01:24 2018 +0000
Automatic date update in version.in
commit d7e15655a40e9133a1cbf53ea071f82cd6745ac8
Author: Tom Tromey <tom@tromey.com>
Date: Mon Jun 11 14:45:22 2018 -0600
Remove ptid_equal
Remove ptid_equal in favor of using "==".
gdb/ChangeLog
2018-07-03 Tom Tromey <tom@tromey.com>
* common/ptid.c (ptid_equal): Remove.
* common/ptid.h (ptid_equal): Don't declare.
* ada-tasks.c: Update.
* breakpoint.c: Update.
* common/agent.c: Update.
* corelow.c: Update.
* darwin-nat-info.c: Update.
* darwin-nat.c: Update.
* dcache.c: Update.
* dtrace-probe.c: Update.
* dummy-frame.c: Update.
* fbsd-nat.c: Update.
* frame.c: Update.
* gdbthread.h: Update.
* gnu-nat.c: Update.
* go32-nat.c: Update.
* inf-loop.c: Update.
* inf-ptrace.c: Update.
* infcall.c: Update.
* infcmd.c: Update.
* inflow.c: Update.
* infrun.c: Update.
* linux-fork.c: Update.
* linux-nat.c: Update.
* linux-thread-db.c: Update.
* mi/mi-cmd-var.c: Update.
* mi/mi-interp.c: Update.
* mi/mi-main.c: Update.
* nto-procfs.c: Update.
* ppc-linux-tdep.c: Update.
* procfs.c: Update.
* python/py-inferior.c: Update.
* python/py-record-btrace.c: Update.
* python/py-record.c: Update.
* ravenscar-thread.c: Update.
* regcache.c: Update.
* remote-sim.c: Update.
* remote.c: Update.
* sol-thread.c: Update.
* solib.c: Update.
* target.c: Update.
* tui/tui-stack.c: Update.
* varobj.c: Update.
* windows-nat.c: Update.
* windows-tdep.c: Update.
gdb/gdbserver/ChangeLog
2018-07-03 Tom Tromey <tom@tromey.com>
* linux-low.c: Update.
* lynx-low.c: Update.
* mem-break.c: Update.
* nto-low.c: Update.
* remote-utils.c: Update.
* server.c: Update.
* spu-low.c: Update.
* target.c: Update.
* win32-low.c: Update.
commit 26a57c9256d7ec2b4da2f1d85a9fba830948dbd9
Author: Tom Tromey <tom@tromey.com>
Date: Mon Jun 11 14:35:00 2018 -0600
Remove ptid_match
This removes ptid_match in favor of the ptid_t::matches method.
gdb/ChangeLog
2018-07-03 Tom Tromey <tom@tromey.com>
* common/ptid.c (ptid_match): Remove.
* common/ptid.h (ptid_match): Don't declare.
* fbsd-nat.c: Update.
* infcmd.c: Update.
* infrun.c: Update.
* linux-nat.c: Update.
* record-btrace.c: Update.
* regcache.c: Update.
* remote.c: Update.
gdb/gdbserver/ChangeLog
2018-07-03 Tom Tromey <tom@tromey.com>
* server.c: Update.
commit d2a107e3f9e84808ae0860693f1c488b1e3f5559
Author: Tom Tromey <tom@tromey.com>
Date: Mon Jun 11 12:22:04 2018 -0600
Remove ptid_tid_p
This removes ptid_tid_p in favor of the ptid_t::tid_p method.
gdb/ChangeLog
2018-07-03 Tom Tromey <tom@tromey.com>
* common/ptid.c (ptid_tid_p): Remove.
* common/ptid.h (ptid_tid_p): Don't declare.
* sol-thread.c: Update.
commit 15a9e13e521ec3acb4bd3616f349b9d19780cd48
Author: Tom Tromey <tom@tromey.com>
Date: Mon Jun 11 12:20:11 2018 -0600
Remove ptid_lwp_p
This removes ptid_lwp_p in favor of the ptid_t::lwp_p method.
gdb/ChangeLog
2018-07-03 Tom Tromey <tom@tromey.com>
* common/ptid.c (ptid_lwp_p): Remove.
* common/ptid.h (ptid_lwp_p): Don't declare.
* fbsd-nat.c: Update.
* linux-nat.c: Update.
* nat/linux-procfs.c: Update.
* nat/x86-linux-dregs.c: Update.
* sol-thread.c: Update.
commit 0e998d966be13e548721109a4e44b2887fc5cb24
Author: Tom Tromey <tom@tromey.com>
Date: Mon Jun 11 12:18:15 2018 -0600
Remove ptid_is_pid
This removes ptid_is_pid in favor of the ptid_t::is_pid method.
gdb/ChangeLog
2018-07-03 Tom Tromey <tom@tromey.com>
* common/ptid.c (ptid_is_pid): Remove.
* common/ptid.h (ptid_is_pid): Don't declare.
* infrun.c: Update.
* linux-nat.c: Update.
* mi/mi-interp.c: Update.
* remote.c: Update.
* thread.c: Update.
gdb/gdbserver/ChangeLog
2018-07-03 Tom Tromey <tom@tromey.com>
* linux-low.c: Update.
commit cc6bcb548d67a5a0a7223d81bd43c299312320c8
Author: Tom Tromey <tom@tromey.com>
Date: Mon Jun 11 12:14:34 2018 -0600
Remove ptid_get_tid
This removes ptid_get_tid in favor of calling the ptid_t::tid method.
gdb/ChangeLog
2018-07-03 Tom Tromey <tom@tromey.com>
* common/ptid.c (ptid_get_tid): Remove.
* common/ptid.h (ptid_get_tid): Don't declare.
* ada-tasks.c: Update.
* aix-thread.c: Update.
* bsd-uthread.c: Update.
* darwin-nat.c: Update.
* fbsd-nat.c: Update.
* i386-darwin-nat.c: Update.
* infrun.c: Update.
* linux-tdep.c: Update.
* nto-procfs.c: Update.
* ppc-ravenscar-thread.c: Update.
* python/py-infthread.c: Update.
* ravenscar-thread.c: Update.
* sol-thread.c: Update.
* sparc-ravenscar-thread.c: Update.
* windows-nat.c: Update.
gdb/gdbserver/ChangeLog
2018-07-03 Tom Tromey <tom@tromey.com>
* target.c: Update.
commit e38504b39279fa86cbb2c4a45ab8ec34e3aef90b
Author: Tom Tromey <tom@tromey.com>
Date: Mon Jun 11 12:10:09 2018 -0600
Remove ptid_get_lwp
This removes ptid_get_lwp in favor of calling the ptid_t::lwp method.
gdb/ChangeLog
2018-07-03 Tom Tromey <tom@tromey.com>
* common/ptid.c (ptid_get_lwp): Remove.
* common/ptid.h (ptid_get_lwp): Don't declare.
* aarch64-linux-nat.c: Update.
* ada-tasks.c: Update.
* aix-thread.c: Update.
* amd64-linux-nat.c: Update.
* arm-linux-nat.c: Update.
* corelow.c: Update.
* fbsd-nat.c: Update.
* fbsd-tdep.c: Update.
* gnu-nat.c: Update.
* i386-cygwin-tdep.c: Update.
* i386-gnu-nat.c: Update.
* i386-linux-nat.c: Update.
* ia64-linux-nat.c: Update.
* inf-ptrace.c: Update.
* infrun.c: Update.
* linux-fork.c: Update.
* linux-nat.c: Update.
* linux-tdep.c: Update.
* linux-thread-db.c: Update.
* mips-linux-nat.c: Update.
* nat/aarch64-linux-hw-point.c: Update.
* nat/aarch64-linux.c: Update.
* nat/linux-btrace.c: Update.
* nat/linux-osdata.c: Update.
* nat/linux-procfs.c: Update.
* nat/x86-linux-dregs.c: Update.
* obsd-nat.c: Update.
* ppc-fbsd-nat.c: Update.
* ppc-linux-nat.c: Update.
* procfs.c: Update.
* python/py-infthread.c: Update.
* ravenscar-thread.c: Update.
* remote.c: Update.
* s390-linux-nat.c: Update.
* sol-thread.c: Update.
* sol2-tdep.c: Update.
* spu-linux-nat.c: Update.
* x86-linux-nat.c: Update.
* xtensa-linux-nat.c: Update.
gdb/gdbserver/ChangeLog
2018-07-03 Tom Tromey <tom@tromey.com>
* linux-low.c: Update.
* linux-mips-low.c: Update.
* lynx-low.c: Update.
* nto-low.c: Update.
* remote-utils.c: Update.
* server.c: Update.
* spu-low.c: Update.
* target.c: Update.
* thread-db.c: Update.
commit e99b03dcf42606425eab8bd12eadb8aa4007f35a
Author: Tom Tromey <tom@tromey.com>
Date: Mon Jun 11 12:05:27 2018 -0600
Remove ptid_get_pid
This removes ptid_get_pid in favor of calling the ptid_t::pid method.
gdb/ChangeLog
2018-07-03 Tom Tromey <tom@tromey.com>
* common/ptid.c (ptid_get_pid): Remove.
* common/ptid.h (ptid_get_pid): Don't declare.
* aarch64-linux-nat.c: Update.
* ada-lang.c: Update.
* aix-thread.c: Update.
* alpha-bsd-nat.c: Update.
* amd64-fbsd-nat.c: Update.
* amd64-linux-nat.c: Update.
* arm-linux-nat.c: Update.
* arm-nbsd-nat.c: Update.
* auxv.c: Update.
* break-catch-syscall.c: Update.
* breakpoint.c: Update.
* bsd-uthread.c: Update.
* corelow.c: Update.
* ctf.c: Update.
* darwin-nat.c: Update.
* fbsd-nat.c: Update.
* fbsd-tdep.c: Update.
* gcore.c: Update.
* gnu-nat.c: Update.
* hppa-nbsd-nat.c: Update.
* hppa-obsd-nat.c: Update.
* i386-fbsd-nat.c: Update.
* ia64-linux-nat.c: Update.
* inf-ptrace.c: Update.
* infcmd.c: Update.
* inferior.c: Update.
* inferior.h: Update.
* inflow.c: Update.
* infrun.c: Update.
* linux-fork.c: Update.
* linux-nat.c: Update.
* linux-tdep.c: Update.
* linux-thread-db.c: Update.
* m68k-bsd-nat.c: Update.
* mi/mi-interp.c: Update.
* mi/mi-main.c: Update.
* mips-linux-nat.c: Update.
* mips-nbsd-nat.c: Update.
* mips64-obsd-nat.c: Update.
* nat/aarch64-linux-hw-point.c: Update.
* nat/aarch64-linux.c: Update.
* nat/linux-btrace.c: Update.
* nat/linux-osdata.c: Update.
* nat/linux-procfs.c: Update.
* nat/x86-linux-dregs.c: Update.
* nto-procfs.c: Update.
* obsd-nat.c: Update.
* ppc-linux-nat.c: Update.
* ppc-nbsd-nat.c: Update.
* ppc-obsd-nat.c: Update.
* proc-service.c: Update.
* procfs.c: Update.
* python/py-inferior.c: Update.
* python/py-infthread.c: Update.
* ravenscar-thread.c: Update.
* record.c: Update.
* remote-sim.c: Update.
* remote.c: Update.
* rs6000-nat.c: Update.
* s390-linux-nat.c: Update.
* sh-nbsd-nat.c: Update.
* sol-thread.c: Update.
* sparc-nat.c: Update.
* sparc64-tdep.c: Update.
* spu-linux-nat.c: Update.
* spu-tdep.c: Update.
* target-debug.h: Update.
* target.c: Update.
* thread.c: Update.
* tid-parse.c: Update.
* tracefile-tfile.c: Update.
* vax-bsd-nat.c: Update.
* windows-nat.c: Update.
* x86-linux-nat.c: Update.
* x86-nat.c: Update.
gdb/gdbserver/ChangeLog
2018-07-03 Tom Tromey <tom@tromey.com>
* linux-low.c: Update.
* linux-mips-low.c: Update.
* lynx-low.c: Update.
* mem-break.c: Update.
* nto-low.c: Update.
* remote-utils.c: Update.
* server.c: Update.
* spu-low.c: Update.
* target.c: Update.
* tracepoint.c: Update.
commit f2907e49910853edf3c1aec995b3c44b3bba8999
Author: Tom Tromey <tom@tromey.com>
Date: Mon Jun 11 11:25:49 2018 -0600
Remove pid_to_ptid
This removes pid_to_ptid in favor of calling the ptid_t constructor
directly.
gdb/ChangeLog
2018-07-03 Tom Tromey <tom@tromey.com>
* common/ptid.c (pid_to_ptid): Remove.
* common/ptid.h (pid_to_ptid): Don't declare.
* aix-thread.c: Update.
* arm-linux-nat.c: Update.
* common/ptid.c: Update.
* common/ptid.h: Update.
* corelow.c: Update.
* ctf.c: Update.
* darwin-nat.c: Update.
* fbsd-nat.c: Update.
* fork-child.c: Update.
* gnu-nat.c: Update.
* go32-nat.c: Update.
* inf-ptrace.c: Update.
* infcmd.c: Update.
* inferior.c: Update.
* infrun.c: Update.
* linux-fork.c: Update.
* linux-nat.c: Update.
* nat/aarch64-linux-hw-point.c: Update.
* nat/fork-inferior.c: Update.
* nat/x86-linux-dregs.c: Update.
* nto-procfs.c: Update.
* obsd-nat.c: Update.
* procfs.c: Update.
* progspace.c: Update.
* remote.c: Update.
* rs6000-nat.c: Update.
* s390-linux-nat.c: Update.
* sol-thread.c: Update.
* spu-linux-nat.c: Update.
* target.c: Update.
* top.c: Update.
* tracefile-tfile.c: Update.
* windows-nat.c: Update.
gdb/gdbserver/ChangeLog
2018-07-03 Tom Tromey <tom@tromey.com>
* linux-low.c: Update.
* linux-ppc-low.c: Update.
* linux-x86-low.c: Update.
* proc-service.c: Update.
* server.c: Update.
* spu-low.c: Update.
* thread-db.c: Update.
* win32-low.c: Update.
commit fd79271bd9dd6bb1626fb6f5ec3a415dc24950b1
Author: Tom Tromey <tom@tromey.com>
Date: Mon Jun 11 11:18:51 2018 -0600
Remove ptid_build
This removes ptid_build in favor of simply calling the ptid_t
constructor directly.
gdb/ChangeLog
2018-07-03 Tom Tromey <tom@tromey.com>
* common/ptid.h (ptid_build): Don't declare.
* common/ptid.c (ptid_build): Remove.
* aix-thread.c: Update.
* bsd-kvm.c: Update.
* bsd-uthread.c: Update.
* common/agent.c: Update.
* common/ptid.c: Update.
* common/ptid.h: Update.
* corelow.c: Update.
* darwin-nat.c: Update.
* fbsd-nat.c: Update.
* gnu-nat.c: Update.
* linux-fork.c: Update.
* linux-nat.c: Update.
* linux-thread-db.c: Update.
* nat/linux-osdata.c: Update.
* nat/linux-procfs.c: Update.
* nto-procfs.c: Update.
* obsd-nat.c: Update.
* proc-service.c: Update.
* procfs.c: Update.
* ravenscar-thread.c: Update.
* remote-sim.c: Update.
* remote.c: Update.
* sol-thread.c: Update.
* target.c: Update.
* windows-nat.c: Update.
gdb/gdbserver/ChangeLog
2018-07-03 Tom Tromey <tom@tromey.com>
* linux-low.c: Update.
* lynx-low.c: Update.
* nto-low.c: Update.
* remote-utils.c: Update.
* spu-low.c: Update.
* thread-db.c: Update.
* win32-low.c: Update.
commit 057302ceb3b1c171afe9bfa24642af208a60b6e9
Author: Tom Tromey <tom@tromey.com>
Date: Mon Jul 2 09:20:40 2018 -0600
Remove exit_inferior_num_silent
The sole caller of exit_inferior_num_silent was getting the inferior's
number to then use the number to look up the inferior again. I think
it's better to simply not have exit_inferior_num_silent; any potential
callers that only have the inferior's number should probably be
converted to pass the inferior itself around instead.
Tested by the buildbot.
gdb/ChangeLog
2018-07-03 Tom Tromey <tom@tromey.com>
* infrun.c (follow_exec): Use exit_inferior_silent.
* inferior.c (exit_inferior_num_silent): Remove.
* inferior.h (exit_inferior_num_silent): Don't declare.
commit a50c11c666e07b922d64aa5bb2747f180ce17c03
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jun 28 11:57:39 2018 -0600
Fix crash in "run" on macOS when gdb is not signed
On macOS, when gdb is not code-signed, it will throw an exception from
darwin_attach_pid. However, gdb also then crashes:
thread.c:93: internal-error: struct thread_info *inferior_thread(): Assertion `tp' failed.
I think the problem here is that darwin_attach_pid does not clean up
inferior_ptid and inf->pid on failure. This leads to a situation
where gdb tries to find a thread, but cannot.
In other cases, gdb would mourn the inferior at this point; but here
this is not possible because the target has not been pushed. Instead
this patch works by simply updating the inferior and inferior_ptid on
failure.
Tested by building an unsigned gdb on macOS and trying to run an
inferior.
gdb/ChangeLog
2018-07-03 Tom Tromey <tom@tromey.com>
PR cli/23340:
* darwin-nat.c (darwin_attach_pid): Reset inferior and
inferior_ptid on error.
commit b8a6ced79668ec8af3180e50b76f7517ebbab0d9
Author: Alan Modra <amodra@gmail.com>
Date: Tue Jul 3 17:57:36 2018 +0930
Correct removal of .gnu.attributes
Setting SEC_EXCLUDE for empty .gnu.attributes is too late in the link
process for the linker to remove the section. That must be done in
bfd_elf_final_link, as we do for removed group sections.
* elflink.c (bfd_elf_final_link): Remove zero size .gnu.attributes
sections.
commit 8d2c8c3d17926826864f4b739362f66af547428f
Author: Alan Modra <amodra@gmail.com>
Date: Tue Jul 3 14:50:38 2018 +0930
GNU attribute output on errors
.gnu.attributes entries from linker input files are merged to the
output file, the output having the union of compatible input
attributes. Incompatible attributes generally cause a linker error
and no output. However in some cases only a warning is emitted, and
one of the incompatible input attributes is passed on to the output.
PowerPC tends to emit warnings rather than errors, and the output
takes the first input attribute. For example, if we have two input
files with Tag_GNU_Power_ABI_FP, the first with a value signifying
"double-precision hard float, IBM long double", the second with a
value signifying "double-precision hard float, IEEE long double",
we'll get a warning about incompatible long double types and the
output will say "double-precision hard float, IBM long double".
The output attribute of course isn't correct. It would be correct to
specify "IBM and IEEE long double", but we don't have a way to
represent that currently. While it would be possible to extend the
encoding, there isn't much gain in doing so. A shared library
providing support for both long double types should link against
objects using either long double type without warning or error. That
is what you'd get if such a shared library had no Tag_GNU_Power_ABI_FP
attribute.
So this patch provides a way for the backend to omit .gnu.attributes
tags from the output.
* elf-bfd.h (ATTR_TYPE_FLAG_ERROR, ATTR_TYPE_HAS_ERROR): Define.
* elf-attrs.c (is_default_attr): Handle ATTR_TYPE_HAS_ERROR.
* elf32-ppc.c (_bfd_elf_ppc_merge_fp_attributes): Use
ATTR_TYPE_FLAG_INT_VAL. Set ATTR_TYPE_HAS_ERROR on finding
incompatible attribute.
(ppc_elf_merge_obj_attributes): Likewise. Return
_bfd_elf_merge_object_attributes result.
* elf64-ppc.c (ppc64_elf_merge_private_bfd_data): Return
_bfd_elf_merge_object_attributes result.
commit af0bfb9c4283ce80fe37ad6360d12cae8ec38696
Author: Alan Modra <amodra@gmail.com>
Date: Tue Jul 3 12:18:10 2018 +0930
Hide dynamic symbols in discarded sections
This is a followup to git commit 97196564c7 "Strip global symbol
defined in discarded section". If a symbol defined in a discarded
section was dynamic, that patch left .dynsym with holes (ie. all zero
entries). For example, the following from libstdc++.so:
Symbol table '.dynsym' contains 6090 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND
1: 00000000000a74e0 0 SECTION LOCAL DEFAULT 10
2: 0000000000264180 0 SECTION LOCAL DEFAULT 17
3: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_addUserCommitAction
4: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_memcpyRtWn
5: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND
readelf: Warning: local symbol 5 found at index >= .dynsym's sh_info value of 3
6: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND
readelf: Warning: local symbol 6 found at index >= .dynsym's sh_info value of 3
[snip]
This patch removes the symbols from .dynsym too.
PR 17550
* elflink.c (_bfd_elf_fix_symbol_flags): Hide dynamic symbols
in discarded sections.
commit 1825c89e221b1bf80e73e858f1f2afcfe51272dd
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Jul 3 00:00:55 2018 +0000
Automatic date update in version.in
commit 12f09816cecc4e4ee7574a86846b3a17adbf7904
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Jul 2 23:57:22 2018 +0100
MIPS/BFD: Make section GC work with `ict_irix5' targets
Prevent runtime procedure table symbols, produced with `ict_irix5' MIPS
targets, from being swept in section GC, fixing linker errors like:
./ld-new: tmpdir/dump: protected symbol `_procedure_table_size' isn't defined
./ld-new: final link failed: bad value
triggered whenever section GC is enabled with those targets and
consequently removing the following test suite failures:
FAIL: Build pr22649-2a.so
FAIL: Build pr22649-2c.so
FAIL: PR ld/20828 dynamic symbols with section GC (auxiliary shared library)
FAIL: PR ld/20828 dynamic symbols with section GC (plain)
FAIL: PR ld/20828 dynamic symbols with section GC (version script)
FAIL: PR ld/20828 dynamic symbols with section GC (versioned shared library)
FAIL: PR ld/20828 dynamic symbols with section GC (versioned)
FAIL: --gc-sections with .text._init
FAIL: pr20022
observed with `mips-elf', `tx39-elf', `mipsisa32-elf', `mipsisa64-elf',
`mipsel-elf', `mipsisa32el-elf', `mipsisa64el-elf', `mips64vr-elf',
`mips64vrel-elf', `mips64vr4300-elf', `mips64vr4300el-elf',
`mips-sgi-irix5' and `mips-rtems' targets, among others. This fix makes
section GC usable with the affected targets.
bfd/
* elfxx-mips.c (_bfd_mips_elf_create_dynamic_sections): Set
`mark' for symbols created from `mips_elf_dynsym_rtproc_names'
list.
commit 14c80123c05ad7cbb52fbb5d35c08b46a0e72d7f
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Jul 2 23:57:22 2018 +0100
microMIPS/GAS: Handle several percent-ops with macros
In the microMIPS mode also accept %half, %got, %call, %got_hi, %got_lo,
%call_hi, %call_lo, %neg, %got_page, %highest, %got_disp, %tlsgd,
%tlsldm, %dtprel_hi, %dtprel_lo, %gottprel, %tprel_hi and %tprel_lo
percent-ops with macros, so that they can be used with instructions that
expand into sequences if relocation is required due to their limited
offset span, such as LL, LWL, etc., fixing GAS assertions:
.../gas/testsuite/gas/mips/elf-rel28.s: Assembler messages:
.../gas/testsuite/gas/mips/elf-rel28.s:17: Internal error in macro_build at .../gas/config/tc-mips.c:8854.
Please report this bug.
observed if an attempt is made to assemble the `elf-rel28.s' test case
modified to use one of the affected instructions to microMIPS code.
gas/
* config/tc-mips.c (macro_build) <'i', 'j'>: Also accept
BFD_RELOC_16, BFD_RELOC_MIPS_GOT16, BFD_RELOC_MIPS_CALL16,
BFD_RELOC_MIPS_GOT_HI16, BFD_RELOC_MIPS_GOT_LO16,
BFD_RELOC_MIPS_CALL_HI16, BFD_RELOC_MIPS_CALL_LO16,
BFD_RELOC_MIPS_SUB, BFD_RELOC_MIPS_GOT_PAGE,
BFD_RELOC_MIPS_HIGHEST, BFD_RELOC_MIPS_GOT_DISP,
BFD_RELOC_MIPS_TLS_GD, BFD_RELOC_MIPS_TLS_LDM,
BFD_RELOC_MIPS_TLS_DTPREL_HI16, BFD_RELOC_MIPS_TLS_DTPREL_LO16,
BFD_RELOC_MIPS_TLS_GOTTPREL, BFD_RELOC_MIPS_TLS_TPREL_HI16 and
BFD_RELOC_MIPS_TLS_TPREL_LO16 relocations if in the microMIPS
mode.
* testsuite/gas/mips/elf-rel28-lldscd-n32.d: New test.
* testsuite/gas/mips/elf-rel28-lldscd-micromips-n32.d: New test.
* testsuite/gas/mips/elf-rel28-lldscd-n64.d: New test.
* testsuite/gas/mips/elf-rel28-lldscd-micromips-n64.d: New test.
* testsuite/gas/mips/elf-rel28.s: Add instruction selection.
* testsuite/gas/mips/mips.exp: Run the new tests.
commit 156f2c001e22dfeee69c92bdb380d5eb28a3de78
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Jul 2 23:57:22 2018 +0100
microMIPS/BFD: Add missing NewABI TLS and miscellaneous relocations
Complement commit df58fc944dbc ("MIPS: microMIPS ASE support"),
<https://sourceware.org/ml/binutils/2011-07/msg00198.html>, and add TLS
and a few miscellaneous relocations to NewABI microMIPS support, fixing
GAS assertion failures:
.../gas/testsuite/gas/mips/elf-rel28.s: Assembler messages:
.../gas/testsuite/gas/mips/elf-rel28.s:19: Internal error in append_insn at .../gas/config/tc-mips.c:7660.
Please report this bug.
observed if an attempt is made to assemble the `elf-rel28.s' test case
to microMIPS code. The relocations are the same as with o32 support,
except for `partial_inplace' and `src_mask' updates for the respective
RELA variants.
bfd/
* elf64-mips.c (micromips_elf64_howto_table_rel): Add
R_MICROMIPS_HI0_LO16, R_MICROMIPS_TLS_GD, R_MICROMIPS_TLS_LDM,
R_MICROMIPS_TLS_DTPREL_HI16, R_MICROMIPS_TLS_DTPREL_LO16,
R_MICROMIPS_TLS_GOTTPREL, R_MICROMIPS_TLS_TPREL_HI16,
R_MICROMIPS_TLS_TPREL_LO16, R_MICROMIPS_GPREL7_S2 and
R_MICROMIPS_PC23_S2 relocation entries.
(micromips_elf64_howto_table_rela): Likewise.
(micromips_reloc_map): Likewise.
* elfn32-mips.c (elf_micromips_howto_table_rel): Likewise.
(elf_micromips_howto_table_rela): Likewise.
(micromips_reloc_map): Likewise.
gas/
* testsuite/gas/mips/elf-rel28-micromips-n32.d: New test.
* testsuite/gas/mips/elf-rel28-micromips-n64.d: New test.
* testsuite/gas/mips/mips.exp: Run the new tests.
commit 30e5322741b7cb8fe90bec43ab93eecceaaec0e7
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Jul 2 23:57:21 2018 +0100
MIPS/LD/testsuite: Fix a typo in PR ld/21334 test name
ld/
* testsuite/ld-mips-elf/mips-elf.exp: Fix a typo in PR ld/21334
test name.
commit 471b9d15076fffb738f1bc6fcea41d0dcb59c947
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Jul 2 23:57:21 2018 +0100
GDB PR tdep/8282: MIPS: Wire in `set disassembler-options'
Implement MIPS target support for passing options to the disassembler,
complementing commit 65b48a81404c ("GDB: Add support for the new
set/show disassembler-options commands.").
This includes options that expect an argument, so adjust the generic
code and data structures used so as to handle such options. So as to
give backends syntax flexibility no specific delimiter has been defined
to separate options from their respective arguments, so it has to be
included as the last character of the option name. Completion code
however has not been adjusted and consequently option arguments cannot
be completed at this time.
Also the MIPS target has non-empty defaults for the options, so that ABI
names for the general-purpose registers respect our `set mips abi ...'
setting rather than always being determined from the ELF headers of the
binary file selected. Handle these defaults as implicit options, never
shown to the user and always prepended to the user-specified options, so
that the latters can override the defaults.
The resulting output for the MIPS target is as follows:
(gdb) show disassembler-options
The current disassembler options are ''
The following disassembler options are supported for use with the
'set disassembler-options <option>[,<option>...]' command:
no-aliases Use canonical instruction forms.
msa Recognize MSA instructions.
virt Recognize the virtualization ASE instructions.
xpa Recognize the eXtended Physical Address (XPA) ASE
instructions.
ginv Recognize the Global INValidate (GINV) ASE instructions.
gpr-names=ABI Print GPR names according to specified ABI.
Default: based on binary being disassembled.
fpr-names=ABI Print FPR names according to specified ABI.
Default: numeric.
cp0-names=ARCH Print CP0 register names according to specified architecture.
Default: based on binary being disassembled.
hwr-names=ARCH Print HWR names according to specified architecture.
Default: based on binary being disassembled.
reg-names=ABI Print GPR and FPR names according to specified ABI.
reg-names=ARCH Print CP0 register and HWR names according to specified
architecture.
For the options above, the following values are supported for "ABI":
numeric 32 n32 64
For the options above, the following values are supported for "ARCH":
numeric r3000 r3900 r4000 r4010 vr4100 vr4111 vr4120 r4300 r4400 r4600
r4650 r5000 vr5400 vr5500 r5900 r6000 rm7000 rm9000 r8000 r10000 r12000
r14000 r16000 mips5 mips32 mips32r2 mips32r3 mips32r5 mips32r6 mips64
mips64r2 mips64r3 mips64r5 mips64r6 interaptiv-mr2 sb1 loongson2e
loongson2f loongson3a octeon octeon+ octeon2 octeon3 xlr xlp
(gdb)
which corresponds to what `objdump --help' used to print for the MIPS
target, with minor formatting changes, most notably option argument
lists being wrapped, but also the amount of white space separating
options from the respective descriptions. The relevant part the new
code is now also used by `objdump --help', which means these formatting
changes apply to both outputs, except for argument list wrapping, which
is GDB-specific.
This also adds a separating new line between the heading and option
lists where descriptions are provided, hence:
(gdb) set architecture s390:31-bit
(gdb) show disassembler-options
The current disassembler options are ''
The following disassembler options are supported for use with the
'set disassembler-options <option>[,<option>...]' command:
esa Disassemble in ESA architecture mode
zarch Disassemble in z/Architecture mode
insnlength Print unknown instructions according to length from first two bits
(gdb)
but:
(gdb) set architecture powerpc:common
(gdb) show disassembler-options
The current disassembler options are ''
The following disassembler options are supported for use with the
'set disassembler-options <option>[,<option>...]' command:
403, 405, 440, 464, 476, 601, 603, 604, 620, 7400, 7410, 7450, 7455, 750cl,
821, 850, 860, a2, altivec, any, booke, booke32, cell, com, e200z4, e300,
e500, e500mc, e500mc64, e5500, e6500, e500x2, efs, efs2, power4, power5,
power6, power7, power8, power9, ppc, ppc32, 32, ppc64, 64, ppc64bridge,
ppcps, pwr, pwr2, pwr4, pwr5, pwr5x, pwr6, pwr7, pwr8, pwr9, pwrx, raw, spe,
spe2, titan, vle, vsx
(gdb)
Existing affected target backends have been adjusted accordingly.
This has been verified manually with:
(gdb) set architecture arm
(gdb) set architecture powerpc:common
(gdb) set architecture s390:31-bit
to cause no issues with the `show disassembler-options' and `set
disassembler-options' commands. A test case for the MIPS target has
also been provided, covering the default settings with ABI overrides as
well as disassembler option overrides.
2018-07-02 Maciej W. Rozycki <macro@mips.com>
Simon Marchi <simon.marchi@polymtl.ca>
include/
PR tdep/8282
* dis-asm.h (disasm_option_arg_t): New typedef.
(disasm_options_and_args_t): Likewise.
(disasm_options_t): Add `arg' member, document members.
(disassembler_options_mips): New prototype.
(disassembler_options_arm, disassembler_options_powerpc)
(disassembler_options_s390): Update prototypes.
opcodes/
PR tdep/8282
* mips-dis.c (mips_option_arg_t): New enumeration.
(mips_options): New variable.
(disassembler_options_mips): New function.
(print_mips_disassembler_options): Reimplement in terms of
`disassembler_options_mips'.
* arm-dis.c (disassembler_options_arm): Adapt to using the
`disasm_options_and_args_t' structure.
* ppc-dis.c (disassembler_options_powerpc): Likewise.
* s390-dis.c (disassembler_options_s390): Likewise.
gdb/
PR tdep/8282
* disasm.h (gdb_disassembler): Add
`m_disassembler_options_holder'. member
* disasm.c (get_all_disassembler_options): New function.
(gdb_disassembler::gdb_disassembler): Use it.
(gdb_buffered_insn_length_init_dis): Likewise.
(gdb_buffered_insn_length): Adjust accordingly.
(set_disassembler_options): Handle options with arguments.
(show_disassembler_options_sfunc): Likewise. Add a leading new
line if showing options with descriptions.
(disassembler_options_completer): Adapt to using the
`disasm_options_and_args_t' structure.
* mips-tdep.c (mips_disassembler_options): New variable.
(mips_disassembler_options_o32): Likewise.
(mips_disassembler_options_n32): Likewise.
(mips_disassembler_options_n64): Likewise.
(gdb_print_insn_mips): Don't set `disassembler_options'.
(gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
functions.
(mips_gdbarch_init): Always set `gdbarch_print_insn' to
`gdb_print_insn_mips'. Set `gdbarch_disassembler_options',
`gdbarch_disassembler_options_implicit' and
`gdbarch_valid_disassembler_options'.
* arm-tdep.c (_initialize_arm_tdep): Adapt to using the
`disasm_options_and_args_t' structure.
* gdbarch.sh (disassembler_options_implicit): New `gdbarch'
method.
(valid_disassembler_options): Switch from `disasm_options_t' to
the `disasm_options_and_args_t' structure.
* NEWS: Document `set disassembler-options' support for the MIPS
target.
* gdbarch.h: Regenerate.
* gdbarch.c: Regenerate.
gdb/doc/
PR tdep/8282
* gdb.texinfo (Source and Machine Code): Document `set
disassembler-options' support for the MIPS target.
gdb/testsuite/
PR tdep/8282
* gdb.arch/mips-disassembler-options.exp: New test.
* gdb.arch/mips-disassembler-options.s: New test source.
commit b638b5d57fafc84a8dc0ff91d7579a3c24aad90c
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Jul 2 13:08:09 2018 -0700
x86-64: Clear the R_X86_64_converted_reloc_bit bit
We need to clear the R_X86_64_converted_reloc_bit bit after setting it
to avoid leaking it out by --emit-relocs.
bfd/
PR ld/23324
* elf64-x86-64.c (elf_x86_64_relocate_section): Clear the
R_X86_64_converted_reloc_bit bit.
ld/
PR ld/23324
* testsuite/ld-x86-64/pr23324.s: New file.
* testsuite/ld-x86-64/pr23324a.d: Likewise.
* testsuite/ld-x86-64/pr23324b.d: Likewise.
commit eac61af65bcd24a48633da375527eb3f36ab47ed
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jun 28 08:02:42 2018 -0600
Allow BFD to recognize macOS universal libraries
Bug #13157 is about a gdb regression, where previously it could handle
universal libraries, but now cannot.
gdb isn't working for me on macOS for other reasons, so I wrote this
small test program to show the problem:
#include <config.h>
#include <stdio.h>
#include <stdlib.h>
#include <bfd.h>
void
die (const char *what)
{
fprintf (stderr, "die: %s\n", what);
exit (1);
}
int
main (int argc, char **argv)
{
bfd *file = bfd_openr (argv[1], NULL);
if (file == NULL)
die ("couldn't open");
if (!bfd_check_format (file, bfd_archive))
die ("not an archive");
printf ("yay\n");
bfd_close (file);
return 0;
}
Then I built a simple universal binary. With git master BFD, I get:
$ ./doit ./universal-exe
die: not an archive
Jeff Muizelaar tracked this down to the BFD change for PR binutils/21787.
This patch changed bfd_generic_archive_p to sometimes reset the BFD's
"format" field.
However, simply changing bfd_generic_archive_p regressed the test case
in that bug.
Debugging PR binutils/21787 again, what I saw is that the mach-o
universal binary support acts like a bfd_archive but does not provide
a _close_and_cleanup function. However, if a BFD appears as an
archive member, it must always remove its own entry from its parent's
map. Otherwise, when the parent is destroyed, the already-destroyed
child BFD will be referenced. mach-o does not use the usual archive
member support, so simply using _bfd_archive_close_and_cleanup (as
other targets do) will not work.
This patch fixes the problem by introducing a new
_bfd_unlink_from_archive_parent function, then arranging for it to be
called in the mach-o case.
Ok?
bfd/ChangeLog
2018-07-02 Jeff Muizelaar <jrmuizel@gmail.com>
Tom Tromey <tom@tromey.com>
PR 13157
PR 21787
* mach-o.c (bfd_mach_o_fat_close_and_cleanup): New function.
(bfd_mach_o_close_and_cleanup): Redefine.
* archive.c (_bfd_unlink_from_archive_parent): New function,
extracted from..
(_bfd_archive_close_and_cleanup): ..here.
(bfd_generic_archive_p): Do not clear archive's format.
* libbfd-in.h (_bfd_unlink_from_archive_parent): Declare.
* libbfd.h: Regenerate.
commit 41823f29a811bb250ae274652281a6294fdc2530
Author: Sebastian Huber <sebastian.huber@embedded-brains.de>
Date: Fri Jun 29 10:50:11 2018 +0200
gdb: Prefer RISC-V register name "s0" over "fp"
The "fp" register name is an alias for "s0" which is an alias for "x8".
The "fp" name is only understood by very recent Binutils and thus not
used by GCC. GCC does not emit a frame pointer with common optimization
options such as -Og or -O2.
It is still possible to use the "fp" register name, e.g.
(gdb) p/x $fp
$1 = 0x800367c8
works.
However, in the register dump you see now:
(gdb) info registers
...
t2 0xffffffffffffffff 18446744073709551615
s0 0x800367c8 0x800367c8
s1 0x80033280 2147693184
...
gdb/
* riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0"
entries.
commit c0c468d562649df0f695737262b6230b7a56a4bb
Author: Thomas Preud'homme <thomas.preudhomme@arm.com>
Date: Mon Jul 2 11:22:20 2018 +0100
[ARM] Update bfd's Tag_CPU_arch knowledge
BFD's bfd_get_mach () function returns a bfd specific value representing
the architecture of the target which is populated from the Tag_CPU_arch
build attribute value of that target. Among other users of that
interfacem, objdump which uses it to print the architecture version of
the binary being examinated and to decide what instruction is available
if run with "-m arm" via its own mapping from bfd_mach_arm_X values to
feature bits available.
However, both BFD and objdump's most recent known architecture is
Armv5TE. When encountering a newer architecture bfd_get_mach will return
bfd_mach_arm_unknown. This is unfortunate since objdump uses that value
to allow all instructions on all architectures which is already what it
does by default, making the "-m arm" trick useless.
This patch updates BFD and objdump's knowledge of Arm architecture
versions up to the latest Armv8-M Baseline and Mainline, Armv8-R and
Armv8.4-A architectures. Since several architecture versions (eg. 8.X-A)
share the same Tag_CPU_arch build attribute value and
bfd_mach_arm values, the mapping from bfd machine value to feature bits
need to return the most featureful feature bits that would yield the
given bfd machine value otherwise some instruction would not disassemble
under "-m arm" mode. The patch rework that mapping to make this clearer
and simplify writing the mapping rules. In particular, for simplicity
all FPU instructions are allowed in all cases.
Finally, the patch also rewrite the cpu_arch_ver table in GAS to use the
TAG_CPU_ARCH_X macros rather than hardcode their value.
2018-07-02 Thomas Preud'homme <thomas.preudhomme@arm.com>
bfd/
* archures.c (bfd_mach_arm_5TEJ, bfd_mach_arm_6, bfd_mach_arm_6KZ,
bfd_mach_arm_6T2, bfd_mach_arm_6K, bfd_mach_arm_7, bfd_mach_arm_6M,
bfd_mach_arm_6SM, bfd_mach_arm_7EM, bfd_mach_arm_8, bfd_mach_arm_8R,
bfd_mach_arm_8M_BASE, bfd_mach_arm_8M_MAIN): Define.
* bfd-in2.h: Regenerate.
* cpu-arm.c (arch_info_struct): Add entries for above new
bfd_mach_arm values.
* elf32-arm.c (bfd_arm_get_mach_from_attributes): Add Tag_CPU_arch to
bfd_mach_arm mapping logic for pre Armv4 and Armv5TEJ and later
architectures. Force assert failure for any new Tag_CPU_arch value.
gas/
* config/tc-arm.c (cpu_arch_ver): Use symbolic TAG_CPU_ARCH macros
rather than hardcode their values.
ld/
* arm-dis.c (select_arm_features): Fix typo in heading comment. Allow
all FPU features and add mapping from new bfd_mach_arm values to
allowed CPU feature bits.
opcodes/
* testsuite/ld-arm/tls-descrelax-be8.d: Add architecture version in
expected result.
* testsuite/ld-arm/tls-descrelax-v7.d: Likewise.
* testsuite/ld-arm/tls-longplt-lib.d: Likewise.
* testsuite/ld-arm/tls-longplt.d: Likewise.
commit a05a5b64cf33d36d93a92fd03ae900e18dbe5572
Author: Thomas Preud'homme <thomas.preudhomme@arm.com>
Date: Mon Jul 2 11:18:24 2018 +0100
Fix use of "command line X" in binutils doc
Binutils documentation uses a mix of spelling for the compound word
"command-line X". According to [1]:
"Sometimes compound words are written separately (nail polish),
sometimes with a hyphen (short-sighted) and sometimes as one word
(eyelashes). Often new compounds are written as two separate words and,
as they become more familiar, they are either connected with a hyphen
(-) or made into one word."
I think command-line X is common enough in our industry that the two
workds command and line should be connected. Since command-line is more
common than commandline, I propose to update binutils documentation to
consistently use "command-line" when this is used as an adjective to a
noun (eg. command-line argument, command-line switch, command-line
option and command-line flag). I've left occurences of "the command
line" as is. I've also left gdb, sim and readline alone and have only
touched public documentation (texi and NEWS files).
[1]
http://dictionary.cambridge.org/grammar/british-grammar/word-formation/compounds
2018-07-02 Thomas Preud'homme <thomas.preudhomme@arm.com>
bfd/
* doc/bfdint.texi: Use command-line consistently when used in a
compount word.
* doc/bfdsumm.texi: Likewise.
binutils/
* NEWS: Use command-line consistently when used in a compount word.
* doc/binutils.texi: Likewise and fix trailing whitespace on same
line.
gas/
* NEWS: Use command-line consistently when used in a compount word.
* doc/as.texi: Likewise.
* doc/c-aarch64.texi: Likewise.
* doc/c-alpha.texi: Likewise.
* doc/c-arc.texi: Likewise.
* doc/c-arm.texi: Likewise.
* doc/c-avr.texi: Likewise.
* doc/c-bfin.texi: Likewise.
* doc/c-cris.texi: Likewise.
* doc/c-epiphany.texi: Likewise.
* doc/c-i386.texi: Likewise.
* doc/c-ia64.texi: Likewise.
* doc/c-lm32.texi: Likewise.
* doc/c-m32r.texi: Likewise.
* doc/c-m68k.texi: Likewise.
* doc/c-mips.texi: Likewise.
* doc/c-mmix.texi: Likewise.
* doc/c-msp430.texi: Likewise.
* doc/c-mt.texi: Likewise.
* doc/c-nios2.texi: Likewise.
* doc/c-ppc.texi: Likewise.
* doc/c-pru.texi: Likewise.
* doc/c-rl78.texi: Likewise.
* doc/c-rx.texi: Likewise.
* doc/c-tic6x.texi: Likewise.
* doc/c-v850.texi: Likewise.
* doc/c-vax.texi: Likewise.
* doc/c-visium.texi: Likewise.
* doc/c-xstormy16.texi: Likewise.
* doc/c-xtensa.texi: Likewise.
* doc/c-z80.texi: Likewise.
* doc/c-z8k.texi: Likewise.
* doc/internals.texi: Likewise.
gprof/
* gprof.texi: Use command-line consistently when used in a compount
word.
ld/
* NEWS: Use command-line consistently when used in a compount word.
* ld.texinfo: Likewise.
* ldint.texinfo: Likewise.
commit f2075844e2d4dc0f3f0d15b1acf20651f19cbb33
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Jul 2 00:00:53 2018 +0000
Automatic date update in version.in
commit 3e4ce31cb84b1b28dacaa5bb577da1e9d2740891
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Jul 1 00:01:04 2018 +0000
Automatic date update in version.in
commit 4119873a48042e532f7485b84cca83ea0bf1fcf6
Author: Alexandre Oliva <oliva@adacore.com>
Date: Fri Jun 29 23:49:28 2018 -0300
Introduce @unless/@endunless and postbootstrap Makefile targets
This patch turns dependencies of non-bootstrap targets on bootstrap
targets for bootstrap builds into dependencies on stage_last. This
arrangement gets stage1-bubble to run from stage_last if we haven't
started a bootstrap yet, and to use the current stage otherwise. This
was already the case of target libs, just not of non-bootstrapped host
modules.
In order to retain preexisting dependencies in non-bootstrap builds,
or in gcc-less builds, this introduces support for @unless/@endunless
pairs in Makefile.in.
There is a remaining possibility of problem if activating, in a tree
configured for bootstrap, a parallel build of two or more modules, at
least one bootstrapped and one not. In this case, make might decide
to build stage_current and stage_last in parallel, the latter will
start a submake to build stage1 while the initial make, having
satisfied stage_current, proceeds to build the bootstrapped module in
non-bootstrapped configurations. The two builds will overlap and will
likely conflict. This situation does NOT arise in normal settings,
however: a post-bootstrap build of all-host all-target will indeed
activate such targets concurrently, but only after building all
bootstrapped modules successfully, and it will have both stage_last
and stage_current targets already satisfied, so the potential race
between builds will not arise.
Another remaining problem, that is slightly expanded with this patch,
is that of an interrupted build in a tree configured for bootstrap,
continued with a non-bootstrapped target. Target modules that were
not bootstrapped would already fail to complete the current stage when
activated explicitly in the command line for a retry; host modules,
however, would attempt to build their bootstrapped dependencies, which
is what led to the problem of concurrent builds addressed with this
patch. An interrupted or failed build might still recover correctly,
if the non-bootstrapped target is activated in both builds, because
then make will remove stage_last when its build command is
interrupted, so that it will attempt to recreate it with stage1-bubble
in the second try. A bootstrap build, however, will not be attempting
to build stage_last, so the file will remain and the retry won't go
through stage1-bubble. We have lived with that for target modules, so
we can probably live with that for host modules too.
Another undesirable consequence of this change is that non-boostrapped
host modules, in a tree configured for bootstrap, when activated as
make all-<module>, will build all of stage1 instead of only the
module's usual dependencies. This is intentional and necessary to fix
the parallel-build problem. If it's not desirable, disabling the
unnecessary bootstrap configuration will suffice to restore the
original set of dependencies.
for ChangeLog
* configure.ac: Introduce support for @unless/@endunless.
* Makefile.tpl (dep-kind): Rewrite with cond; return
postbootstrap in some cases.
(make-postboot-dep, postboot-targets): New.
(dependencies): Do not output postbootstrap dependencies at
first. Output non-target ones changed for configure to depend
on stage_last @if gcc-bootstrap, and the original deps @unless
gcc-bootstrap.
* configure.in, Makefile.in: Rebuilt.
commit c0867626d277101afcead91e94f20cbe89a3aced
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Fri Jun 29 21:36:42 2018 -0400
Add missing parameter to 'amd64_create_target_description' (and unbreak build)
While building gdbserver on GNU/Linux, the build failed with:
../../../binutils-gdb/gdb/gdbserver/linux-x86-tdesc.c: In function âconst target_desc* amd64_linux_read_description(uint64_t, bool)â:
../../../binutils-gdb/gdb/gdbserver/linux-x86-tdesc.c:121:67: error: too few arguments to function âtarget_desc* amd64_create_target_description(uint64_t, bool, bool, bool)â
*tdesc = amd64_create_target_description (xcr0, is_x32, true);
^
In file included from ../../../binutils-gdb/gdb/gdbserver/linux-x86-tdesc.c:26:0:
../../../binutils-gdb/gdb/gdbserver/../arch/amd64.h:21:14: note: declared here
target_desc *amd64_create_target_description (uint64_t xcr0, bool is_x32,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
According to Joel Brobecker:
> I think the parameter should be set to "true". Otherwise, it will
> not include the fs_base and gs_base register in the list of registers.
> Although the name of the source file says x86, the code itself is
> protected by...
>
> #ifdef __x86_64__
>
> ... and is inside a function called amd64_linux_read_description.
> I also verified that this file gets compiled on amd64-linux platforms.
> See gdb/gdbserver/configure.srv:
>
> x86_64-*-linux*) srv_regobj="$srv_amd64_linux_regobj $srv_i386_linux_regobj"
>
> The last piece of confirmation is that setting the parameter to "true"
> provides the behavior before the parameter was added; and the reason
> for adding the parameter was to remove the {fs,gs}_base registers
> from the list for Windows only.
Therefore I'm pushing the patch to unbreak the build.
gdb/gdbserver/ChangeLog:
2018-06-29 Joel Brobecker <brobecker@adacore.com>
* linux-x86-tdesc.c (amd64_linux_read_description): Add missing
parameter in call to 'amd64_create_target_description'.
commit 6d3c4956402409b711738f2c0afc02f6c9d5782e
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Jun 30 00:00:50 2018 +0000
Automatic date update in version.in
commit 41206e32fb909ebacf6db009fc1f177bde74a652
Author: Joel Brobecker <brobecker@adacore.com>
Date: Fri Jun 29 18:42:27 2018 -0400
fix GDB build failure for various amd64 targets
The following patch caused some amd64-*-tdep files to fail to compile:
| commit de52b9607d2623f18b7a7dbee3e1123d8d63f5da
| Date: Tue Jun 26 16:33:27 2018 +0100
| Subject: x86_64-windows GDB crash due to fs_base/gs_base registers
This is because we added one additional "segments" argument to
function amd64_target_description and forgot to update all the callers.
This patch fixes the omissions.
gdb/ChangeLog:
* amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
parameter in call to amd64_target_description.
* amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
* amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
(amd64fbsd_init_abi): Likewise.
* amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
* amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
* amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
* amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
The change to amd64-fbsd-nat.c was done "blind" (no access to system),
but is reasonably straightforward. The changes to the -tdep.c files
were verify by rebuilding GDB on x86_64-linux when configured with
--enable-targets=all.
commit b9c04e5a8289507fdeb783c337f59a76ff491685
Author: Jim Wilson <jimw@sifive.com>
Date: Fri Jun 29 15:12:23 2018 -0700
RISC-V: Add gas support for "fp" register.
gas/
* config/tc-riscv.c (md_begin): Call hash_reg_name for "fp".
commit de52b9607d2623f18b7a7dbee3e1123d8d63f5da
Author: Pedro Alves <palves@redhat.com>
Date: Tue Jun 26 16:33:27 2018 +0100
x86_64-windows GDB crash due to fs_base/gs_base registers
GDB is currently crashing anytime we try to access the fs_base/gs_base
registers, either to read them, or to write them. This can be observed
under various scenarios:
- Explicit reference to those registers (eg: print $fs_base) --
probably relatively rare;
- Calling a function in the inferior, with the crash happening
because we are trying to read those registers in order to save
their value ahead of making the function call;
- Just a plain "info registers";
The crash was introduced by the following commit:
| commit 48aeef91c248291dd03583798904612426b1f40a
| Date: Mon Jun 26 18:14:43 2017 -0700
| Subject: Include the fs_base and gs_base registers in amd64 target descriptions.
The Windows-nat implementation was unfortunately not prepared to deal
with those new registers. In particular, the way it fetches registers
is done by using a table where the index is the register number, and
the value at that index is the offset in the area in the thread's CONTEXT
data where the corresponding register value is stored.
For instance, in amd64-windows-nat.c, we can find the mappings static
array containing the following 57 elements in it:
#define context_offset(x) (offsetof (CONTEXT, x))
static const int mappings[] =
{
context_offset (Rax),
[...]
context_offset (FloatSave.MxCsr)
};
That array is then used by windows_fetch_one_register via:
char *context_offset = ((char *) &th->context) + mappings[r];
The problem is that fs_base's register number is 172, which is
well past the end of the mappings array (57 elements in total).
We end up getting an undefined offset, which happens to be so large
that it then causes the address where we try to read the register
value (a little bit later) to be invalid, thus crashing GDB with
a SEGV.
This patch side-steps the issue entirely by removing support for
those registers in GDB on x86_64-windows, because a look at the
CONTEXT structure indicates no support for getting those registers.
A more comprehensive fix would patch the potential buffer overflow
of the mappings array, but this can be done as a separate commit.
gdb/ChangeLog:
* gdb/amd64-tdep.h (amd64_create_target_description): Add
"segments" parameter.
* gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
(_initialize_amd64_tdep): Update call to
amd64_create_target_description.
(amd64_target_description): Add "segments" parameter. Adjust
the implementation to use it.
* gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
call to amd64_create_target_description.
* gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
* gdb/arch/amd64.h (amd64_create_target_description): Add
"segments" register.
* gdb/arch/amd64.c (amd64_create_target_description): Add
"segments" parameter. Call create_feature_i386_64bit_segments
only if SEGMENTS is true.
* gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
call to amd64_create_target_description.
Tested on x86_64-windows using AdaCore's testsuite (by Joel Brobecker
<brobecker at adacore dot com>).
commit 75acb4867dc8bdd701983af6899d823c9e2e53a4
Author: Pedro Alves <palves@redhat.com>
Date: Fri Jun 29 20:45:35 2018 +0100
Improve alignment of "info threads" output, align "Target Id" column
It's long annoyed me that "info threads"'s columns are misaligned.
Particularly the "Target Id" column's content is usually longer than
the specified column width, so the table ends up with the "Frame"
column misaligned. For example, currently we get this:
(gdb) info threads
Id Target Id Frame
1 Thread 0x7ffff7fb5740 (LWP 9056) "threads" 0x00007ffff7bc28ad in __pthread_join (threadid=140737345763072, thread_return=0x7fffffffd3e8) at pthread_join.c:90
2 Thread 0x7ffff7803700 (LWP 9060) "function0" thread_function0 (arg=0x0) at threads.c:90
* 3 Thread 0x7ffff7002700 (LWP 9061) "threads" thread_function1 (arg=0x1) at threads.c:106
The fact that the "Frame" heading is in a weird spot is particularly
annoying.
This commit turns the above into into this:
(gdb) info threads
Id Target Id Frame
1 Thread 0x7ffff7fb5740 (LWP 7548) "threads" 0x00007ffff7bc28ad in __pthread_join (threadid=140737345763072, thread_return=0x7fffffffd3e8) at pthread_join.c:90
2 Thread 0x7ffff7803700 (LWP 7555) "function0" thread_function0 (arg=0x0) at threads.c:91
* 3 Thread 0x7ffff7002700 (LWP 7557) "threads" thread_function1 (arg=0x1) at threads.c:104
It does that by computing the max width of the "Target Id" column and
using that as column width when creating the table.
This results in calling target_pid_to_str / target_extra_thread_info /
target_thread_name twice for each thread, but I think that it doesn't
matter in practice performance-wise, because the remote target caches
the info, and with native targets it shouldn't be noticeable. It
could matter if we have many threads (say, thousands), but then "info
threads" is practically useless in such a scenario anyway -- better
thread filtering and aggregation would be necessary.
(Note: I have an old branch somewhere where I attempted at making
gdb's "info threads"-like tables follow a model/view design, so that a
general framework took care of issues like these, but it's incomplete
and a much bigger change. This patch doesn't prevent going in that
direction in the future, of course.)
gdb/ChangeLog:
2018-06-29 Pedro Alves <palves@redhat.com>
* thread.c (thread_target_id_str): New, factored out from ...
(print_thread_info_1): ... here. Use it to compute the max
"Target Id" column width.
gdb/testsuite/ChangeLog:
2018-06-29 Pedro Alves <palves@redhat.com>
* gdb.threads/names.exp: Adjust expected "info threads" output.
commit c76a8ea36c9567b2b194285ceeae29bbfc26b20a
Author: Pedro Alves <palves@redhat.com>
Date: Fri Jun 29 20:45:34 2018 +0100
remote & target_extra_thread_info, use cache w/ qThreadExtraInfo and qP too
The following patch will make "info threads" call target_extra_thread_info
more frequently. When I looked at the remote implementation, I noticed
that if we're not using qXfer:threads:read, then we'd be increasing the
remote protocol traffic. This commit prevents that from happening.
Also, it removes a gratuitous local static buffer, which seems good on
its own.
gdb/ChangeLog:
2018-06-29 Pedro Alves <palves@redhat.com>
* remote.c (remote_target::extra_thread_info): Delete
'display_buf' and 'n' locals. from the cache, regardless of
packet mechanims is in use. Use cache for qThreadExtra and qP
methods too.
commit cd2bb709940d33668fe6dbe8d4ffee0ed44c25e6
Author: Pedro Alves <palves@redhat.com>
Date: Fri Jun 29 19:31:49 2018 +0100
"break LINENO/*ADDRESS", inline functions and "info break" output
While experimenting with the previous patch, I noticed this inconsistency
in GDB's output:
(gdb) b 32
Breakpoint 1 at 0x40062f: file inline-break.c, line 32. (1)
(gdb) r
....
Breakpoint 1, func1 (x=1) at inline-break.c:32 (2)
32 return x * 23; /* break here */
(gdb) info breakpoints
Num Type Disp Enb Address What
1 breakpoint keep y 0x40062f in main at inline-break.c:32 (3)
breakpoint already hit 1 time
(gdb)
Notice that when the breakpoint as set, GDB showed "inline-break.c,
line 32" (1), the same line number that was specified in the command.
When we run to the breakpoint, we present the stop at the same line
number, and correctly show "func1" as the function name (2).
But in "info break" output (3), notice that we say "in main", not "in
func1".
The same thing happens if you set a breakpoint by address. I.e.:
(gdb) b *0x40062f
Breakpoint 2 at 0x40062f: file inline-break.c, line 32.
(gdb) info breakpoints
Num Type Disp Enb Address What
2 breakpoint keep y 0x000000000040062f in main at inline-break.c:32
(gdb) r
....
Breakpoint 2, func1 (x=1) at inline-break.c:32
32 return x * 23; /* break here */
The problem is that the breakpoints were set at an inline function,
but when we set such a breakpoint by line number or address, we don't
record the functions symbol in the sal, and as consequence the
breakpoint location does not have an associated symbol either.
Then, in print_breakpoint_location, if the location does not have a
symbol, we call find_pc_sect_function to find one, and this is what
finds "main", because find_pc_sect_function uses
block_linkage_function:
/* Return the symbol for the function which contains a specified
lexical block, described by a struct block BL. The return value
will not be an inlined function; the containing function will be
returned instead. */
struct symbol *
block_linkage_function (const struct block *bl)
To fix this, this commit adds an alternative to find_pc_sect_function
that uses block_containing_function instead:
/* Return the symbol for the function which contains a specified
block, described by a struct block BL. The return value will be
the closest enclosing function, which might be an inline
function. */
struct symbol *
block_containing_function (const struct block *bl)
(It seems odd to me that block_linkage_function says "the CONTAINING
function will be returned", and then block_containing_function says it
returns "the closest enclosing function". Something seems reversed
here. Still, I've kept the same nomenclature and copied the comments,
so that at least there's consistency. Maybe we should fix that up
somehow.)
Then I wondered, why make print_breakpoint_location look up the symbol
every time it is called, instead of just always storing the symbol
when the location is created, since the location already stores the
symbol in some cases. So to find which cases might be missing setting
the symbol in the sal which is used to create the breakpoint location,
I added an assertion to print_breakpoint_location, and ran the
testsuite. That caught a few places, unsurprisingly:
- setting a breakpoint by line number
- setting a breapoint by address
- ifunc resolving
Those are all fixed by this commit. I decided not to add the
assertion to block_linkage_function and leave the existing "if (sym)"
check in place, because it's plausible that we have symtabs with line
info but no symbols. I.e., that would not be a GDB bug, but
a peculiarity of debug info input.
gdb/ChangeLog:
2018-06-29 Pedro Alves <palves@redhat.com>
* blockframe.c (find_pc_sect_containing_function): New function.
* breakpoint.c (print_breakpoint_location): Don't call
find_pc_sect_function.
* linespec.c (create_sals_line_offset): Record the location's
symbol in the sal.
* linespec.c (convert_address_location_to_sals): Fill in sal's
symbol with find_pc_sect_containing_function.
* symtab.c (find_function_start_sal): Rename to ...
(find_function_start_sal_1): ... this.
(find_function_start_sal): Reimplement as wrapper around
find_function_start_sal_1, and use
find_pc_sect_containing_function to fill in the sal's symbol.
(find_function_start_sal(symbol*, bool)): Adjust.
* symtab.h (find_pc_function, find_pc_sect_function): Adjust
comments.
(find_pc_sect_containing_function): Declare.
gdb/testsuite/ChangeLog:
2018-06-29 Pedro Alves <palves@redhat.com>
* gdb.opt/inline-break.exp (line number, address): Add "info
break" tests.
commit 991ff2922affa0b3afb837d2246d01f0c1fdb364
Author: Pedro Alves <palves@redhat.com>
Date: Fri Jun 29 19:31:49 2018 +0100
Fix running to breakpoint set in inline function by lineno/address
Commit 61b04dd04ac2 ("Change inline frame breakpoint skipping logic
(fix gdb.gdb/selftest.exp)") caused a GDB crash when you set a
breakpoint by line number in an inline function, and then run to the
breakpoint:
$ gdb -q test Reading symbols from test...done.
(gdb) b inline-break.c:32
Breakpoint 1 at 0x40062f: file inline-break.c, line 32.
(gdb) run
Starting program: /[...]/test
[1] 75618 segmentation fault /[...]/gdb -q test
The problem occurs because we assume that a bp_location's symbol is
not NULL, which is not true when we set the breakpoint with a linespec
location:
Program received signal SIGSEGV, Segmentation fault.
0x00000000006f42bb in stopped_by_user_bp_inline_frame (
stop_chain=<optimized out>, frame_block=<optimized out>)
at gdb/inline-frame.c:305
305 && frame_block == SYMBOL_BLOCK_VALUE (loc->symbol))
(gdb) p loc->symbol
$1 = (const symbol *) 0x0
The same thing happens if you run to a breakpoint set in an inline
function by address:
(gdb) b *0x40062f
Breakpoint 3 at 0x40062f: file inline-break.c, line 32.
To fix this, add a null pointer check, to avoid the crash, and make it
so that if there's no symbol for the location, then we present the
stop at the inline function. This preserves the previous behavior
when e.g., setting a breakpoint by address, with "b *ADDRESS".
gdb/ChangeLog:
2018-06-29 Pedro Alves <palves@redhat.com>
* inline-frame.c (stopped_by_user_bp_inline_frame): Return
true if the the location has no symbol.
gdb/testsuite/ChangeLog:
2018-06-29 Pedro Alves <palves@redhat.com>
* gdb.opt/inline-break.c (func1): Add "break here" marker.
* gdb.opt/inline-break.exp: Test setting breakpoints by line
number and address and running to them.
commit 356819b6bcc793afea9495243c588da989b4e6e1
Author: Pedro Alves <palves@redhat.com>
Date: Fri Jun 29 19:32:57 2018 +0100
Fix format of last gdb/testsuite/ChangeLog entry
commit 49af4b7012b682470bba3d66262bd34f48b9f500
Author: Richard Bunt <richard.bunt@arm.com>
Date: Fri Jun 29 17:34:58 2018 +0100
Remove unstable test output
Changed test output from:
PASS: gdb.base/watchpoint-hw-attach.exp: attach 25501
to
PASS: gdb.base/watchpoint-hw-attach.exp: attach
gdb/testsuite/ChangeLog:
* gdb.base/watchpoint-hw-attach.exp: Remove unstable output.
commit 262e07d0115adc08cf7481689d9d146a01ee5bb8
Author: Maciej W. Rozycki <macro@mips.com>
Date: Fri Jun 29 15:45:28 2018 +0100
MIPS/BFD: Remove extraneous undefined weak symbol visibility check
Remove an extraneous symbol visibility check made for undefined weak
symbols in determination whether an R_MIPS_REL32 dynamic relocation has
to be placed in output, complementing commit ad9512030937 ("mips: Check
UNDEFWEAK_NO_DYNAMIC_RELOC"). That check duplicates one already made by
the UNDEFWEAK_NO_DYNAMIC_RELOC macro as a part of a broader condition
used to decide if to enter undefined weak symbols to the dynamic symbol
table or not.
bfd/
* elfxx-mips.c (allocate_dynrelocs): Remove extraneous symbol
visibility check made for undefined weak symbols.
commit ee9439704485a1e9413470fe2634b164fa31644f
Author: Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
Date: Fri Jun 29 13:06:05 2018 +0100
[Patch AArch64] Warn on unpredictable stlxrb , stlxrh and stlxr cases.
A recent case in golang highlighted that gas wasn't warning on these
unpredictable cases in the architecture. Fixed thusly.
I need to audit gcc to make sure we have early clobbers on the
patterns but that's a separate patch.
Tested aarch64-none-elf and gas
Ok ?
Ramana
2018-06-29 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
* config/tc-aarch64.c (warn_unpredictable_ldst): Add
unpredictable cases for ldxp, stlxrb, stlxrh, stlxr. *
testsuite/gas/aarch64/diagnostic.s: New tests. *
testsuite/gas/aarch64/diagnostic.l: Adjust.
commit 369c9167d47e69aad2e260cc1db17f8c894c138b
Author: Tamar Christina <tamar.christina@arm.com>
Date: Fri Jun 29 12:12:27 2018 +0100
Fix AArch64 encodings for by element instructions.
Some instructions in Armv8-a place a limitation on FP16 registers that can be
used as the register from which to select an element from.
e.g. fmla restricts Rm to 4 bits when using an FP16 register. This restriction
does not apply for all instructions, e.g. fcmla does not have this restriction
as it gets an extra bit from the M field.
Unfortunately, this restriction to S_H was added for all _Em operands before,
meaning for a large number of instructions you couldn't use the full register
file.
This fixes the issue by introducing a new operand _Em16 which applies this
restriction only when paired with S_H and leaves the _Em and the other
qualifiers for _Em16 unbounded (i.e. using the full 5 bit range).
Also the patch updates all instructions that should be affected by this.
opcodes/
PR binutils/23192
* aarch64-asm-2.c: Regenerate.
* aarch64-dis-2.c: Likewise.
* aarch64-opc-2.c: Likewise.
* aarch64-dis.c (aarch64_ext_reglane): Add AARCH64_OPND_Em16 constraint.
* aarch64-opc.c (operand_general_constraint_met_p,
aarch64_print_operand): Likewise.
* aarch64-tbl.h (aarch64_opcode_table): Change Em to Em16 for smlal,
smlal2, fmla, fmls, fmul, fmulx, sqrdmlah, sqrdlsh, fmlal, fmlsl,
fmlal2, fmlsl2.
(AARCH64_OPERANDS): Add Em2.
gas/
PR binutils/23192
* config/tc-aarch64.c (process_omitted_operand, parse_operands): Add
AARCH64_OPND_Em16
* testsuite/gas/aarch64/advsimd-armv8_3.s: Expand tests to cover upper
16 registers.
* testsuite/gas/aarch64/advsimd-armv8_3.d: Likewise.
* testsuite/gas/aarch64/advsimd-compnum.s: Likewise.
* testsuite/gas/aarch64/advsimd-compnum.d: Likewise.
* testsuite/gas/aarch64/sve.d: Likewise.
include/
PR binutils/23192
*opcode/aarch64.h (aarch64_opnd): Add AARCH64_OPND_Em16.
commit fd1ae9058720aa2738cc4852647097dd89c2bb88
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Jun 29 00:00:39 2018 +0000
Automatic date update in version.in
commit 44cee4fdf46a13b63d90ed706c815d9c81e972e3
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jun 28 10:32:13 2018 -0600
Add --enable-codesign to gdb's configure
macOS requires that the gdb executable be signed in order to be able
to successfully use ptrace. This must be done after each link.
This patch adds a new --enable-codesign configure option so that this
step can be automated.
gdb/ChangeLog
2018-06-28 Tom Tromey <tom@tromey.com>
* NEWS: Mention --enable-codesign.
* silent-rules.mk (ECHO_SIGN): New variable.
* configure.ac: Add --enable-codesign.
* configure: Rebuild.
* Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
(gdb$(EXEEXT)): Optionally invoke codesign.
commit f2ffa92bbce9dd5fbedc138ac2a3bc8a88327d09
Author: Pedro Alves <palves@redhat.com>
Date: Thu Jun 28 20:18:24 2018 +0100
gdb: Eliminate the 'stop_pc' global
In my multi-target work, I need to add a few more
scoped_restore_current_thread and switch_to_thread calls in some
places, and in some lower-level places I was fighting against the fact
that switch_to_thread reads/refreshes the stop_pc global.
Instead of piling on workarounds, let's just finally eliminate the
stop_pc global. We already have the per-thread
thread_info->suspend.stop_pc field, so it's mainly a matter of using
that more/instead.
gdb/ChangeLog:
2018-06-28 Pedro Alves <palves@redhat.com>
* gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
comments.
(switch_to_thread_no_regs): Adjust comment.
* infcmd.c (stop_pc): Delete.
(post_create_inferior, info_program_command): Replace references
to stop_pc with references to thread_info->suspend.stop_pc.
* inferior.h (stop_pc): Delete declaration.
* infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
(handle_inferior_event_1, handle_signal_stop)
(process_event_stop_test, keep_going_stepped_thread)
(handle_step_into_function, handle_step_into_function_backward)
(print_stop_location): Replace references to stop_pc with
references to thread_info->suspend.stop_pc.
(struct infcall_suspend_state) <stop_pc>: Delete field.
(save_infcall_suspend_state, restore_infcall_suspend_state):
Remove references to inf_stat->stop_pc.
* linux-fork.c (fork_load_infrun_state): Likewise.
* record-btrace.c (record_btrace_set_replay): Likewise.
* record-full.c (record_full_goto_entry): Likewise.
* remote.c (print_one_stopped_thread): Likewise.
* target.c (target_resume): Extend comment.
* thread.c (set_executing_thread): New.
(set_executing): Use it.
(switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
Remove references to stop_pc.
commit ecdc3a72c89e43e0e13c5478723b4f70b3964e9f
Author: Pedro Alves <palves@redhat.com>
Date: Thu Jun 28 16:57:18 2018 +0100
Fix follow-exec regression / crash
After commit 00431a78b28f ("Use thread_info and inferior pointers more
throughout"), following an exec can result in gdb crashing. On some
systems, this is visible with gdb.multi/multi-arch-exec.exp and
gdb.base/foll-exec-mode.exp. E.g.:
$ make check TESTS="gdb.multi/multi-arch-exec.exp gdb.base/foll-exec-mode.exp"
[snip]
FAIL: gdb.multi/multi-arch-exec.exp: first_arch=1: selected_thread=1: follow_exec_mode=new: continue across exec that changes architecture (GDB internal error)
ERROR: : spawn id exp10 not open
while executing
Running multi-arch-exec under Valgrind we easily spot the problem:
process 16305 is executing new program: ..../gdb.multi/multi-arch-exec/1-multi-arch-exec-hello
[New inferior 2 (process 0)]
[New process 16305]
==16129== Invalid read of size 8
==16129== at 0x7FA14D: get_thread_regcache(thread_info*) (regcache.c:399)
==16129== by 0x75E54B: handle_inferior_event_1(execution_control_state*) (infrun.c:5292)
==16129== by 0x75E82D: handle_inferior_event(execution_control_state*) (infrun.c:5382)
==16129== by 0x75BC6A: fetch_inferior_event(void*) (infrun.c:3918)
==16129== by 0x748DA3: inferior_event_handler(inferior_event_type, void*) (inf-loop.c:43)
==16129== by 0x464B5D: handle_target_event(int, void*) (linux-nat.c:4359)
==16129== by 0x7047E0: handle_file_event(file_handler*, int) (event-loop.c:733)
==16129== by 0x704D83: gdb_wait_for_event(int) (event-loop.c:859)
==16129== by 0x703BF6: gdb_do_one_event() (event-loop.c:322)
==16129== by 0x703CA2: start_event_loop() (event-loop.c:371)
==16129== by 0x791D95: captured_command_loop() (main.c:330)
==16129== by 0x79311C: captured_main(void*) (main.c:1157)
==16129== Address 0x15a5bad0 is 32 bytes inside a block of size 600 free'd
==16129== at 0x4C2E1E8: operator delete(void*) (vg_replace_malloc.c:576)
==16129== by 0x8A15D0: delete_thread_1(thread_info*, bool) (thread.c:465)
==16129== by 0x8A15FA: delete_thread(thread_info*) (thread.c:476)
==16129== by 0x8A0D43: add_thread_silent(ptid_t) (thread.c:291)
==16129== by 0x8A0DF0: add_thread_with_info(ptid_t, private_thread_info*) (thread.c:317)
==16129== by 0x8A0E79: add_thread(ptid_t) (thread.c:331)
==16129== by 0x75764C: follow_exec(ptid_t, char*) (infrun.c:1233)
==16129== by 0x75E534: handle_inferior_event_1(execution_control_state*) (infrun.c:5290)
==16129== by 0x75E82D: handle_inferior_event(execution_control_state*) (infrun.c:5382)
==16129== by 0x75BC6A: fetch_inferior_event(void*) (infrun.c:3918)
==16129== by 0x748DA3: inferior_event_handler(inferior_event_type, void*) (inf-loop.c:43)
==16129== by 0x464B5D: handle_target_event(int, void*) (linux-nat.c:4359)
The problem is that handle_inferior_event_1 is reading the stop_pc off
of a thread that was deleted by follow_exec. Before commit
00431a78b28f, we didn't crash because we were passing down a ptid to
get_thread_regcache instead of ecs->event_thread.
Fix this by simply moving the stop_pc reading until after
ecs->event_thread is refreshed.
gdb/ChangeLog:
2018-06-28 Pedro Alves <palves@redhat.com>
* infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
Moving fetching stop_pc until after ecs->event_thread is refreshed.
commit d95d3aef9e63242e732e293e1f081d40d0d27eda
Author: Tom Tromey <tom@tromey.com>
Date: Tue Jun 5 09:42:15 2018 -0600
Make dwarf2_free_objfile static
I noticed that dwarf2_free_objfile can be made static, by changing it
to be a registry cleanup function. This simplifies the code, as well,
because now symbol readers don't have to explicitly call it.
Tested by the buildbot.
gdb/ChangeLog
2018-06-28 Tom Tromey <tom@tromey.com>
* coffread.c (coff_symfile_finish): Update.
* xcoffread.c (xcoff_symfile_finish): Update.
* elfread.c (elf_symfile_finish): Update.
* symfile.h (dwarf2_free_objfile): Don't declare.
* dwarf2read.c (_initialize_dwarf2_read): Use
register_objfile_data_with_cleanup.
(dwarf2_free_objfile): Now static. Change signature.
commit 2512d7efdf49a1b8953932626bfdfa1da2367d9d
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Thu Jun 28 16:09:37 2018 +0200
Remove 2 excessive executable permission flags
Fedora rpmbuild has been complaining:
*** WARNING: ./usr/src/debug/gdb-8.1.50.20180618-24.fc28.x86_64/gdb/gdbserver/x86-tdesc.h is executable but has empty or no shebang, removing executable bit
gdb/gdbserver/ChangeLog
2018-06-28 Jan Kratochvil <jan.kratochvil@redhat.com>
* x86-tdesc.h: Remove executable permission flag.
gdb/testsuite/ChangeLog
2018-06-28 Jan Kratochvil <jan.kratochvil@redhat.com>
* lib/compiler.c: Remove executable permission flag.
commit be1b6474f0d471c01f5c4d1f33e4f13df9ffb82c
Author: Richard Bunt <richard.bunt@arm.com>
Date: Thu Jun 28 08:59:59 2018 +0100
Fixed top frame assumption in watchpoint-hw-attach
watchpoint-hw-attach.exp was noticed to fail on some machines.
Thanks to the input from sergiodj and palves on the IRC channel,
it was concluded that the test case incorrectly assumed that on
attach it was landed in the top-most frame of the inferior. This
was fixed by running to a break point in main by explicitly
defining the source file name before continuing with the test.
Tested on the following architectures x86_64, aarch64 and ppc64le.
gdb/testsuite/ChangeLog:
* gdb.base/watchpoint-hw-attach.c (main): Remove unneeded
code.
* gdb.base/watchpoint-hw-attach.exp: Break in outermost frame.
commit 291f9a9643f87fa4eb6a7c280eaa3877c11e3a1f
Author: Petr Tesarik <ptesarik@suse.cz>
Date: Thu Jun 28 08:33:17 2018 +0200
Add an optional offset option to the "add-symbol-file" command
If all sections of a symbol file are loaded with a fixed offset, it
is easier to specify that offset than listing all sections
explicitly. There is also a similar option for "symbol-file".
gdb/ChangeLog:
2018-06-28 Petr Tesarik <ptesarik@suse.cz>
* symfile.c (add_symbol_file_command, _initialize_symfile): Add
option "-o" to add-symbol-file-load to add an offset to each
section's load address.
* symfile.c (set_objfile_default_section_offset): New function.
gdb/doc/ChangeLog:
2018-06-28 Petr Tesarik <ptesarik@suse.cz>
* gdb.texinfo (Files): Document "add-symbol-file -o offset".
gdb/testsuite/ChangeLog:
2018-06-28 Petr Tesarik <ptesarik@suse.cz>
* gdb.base/relocate.exp: Add test for "add-symbol-file -o ".
commit d81a3eaff36b41ed67758a119a6864b50f60a60d
Author: Petr Tesarik <ptesarik@suse.cz>
Date: Thu Jun 28 08:32:27 2018 +0200
Make sure that sorting does not change section order
Symbol files may contain multiple sections with the same name.
Section addresses specified by add-symbol-file are assigned to the
corresponding BFD sections in addr_info_make_relative using sorted
indexes of both vectors. Since the sort algorithm is not inherently
stable, the comparison function uses sectindex to maintain the
original order. However, add_symbol_file_command uses zero for all
sections, so if the user specifies multiple sections with the same
name, they will be assigned randomly to symbol file sections with
the same name.
gdb/ChangeLog:
2018-06-28 Petr Tesarik <ptesarik@suse.cz>
* symfile.c (add_symbol_file_command): Make sure that sections
commit ed6dfe517ee323ed631aa8b9816289ea35219409
Author: Petr Tesarik <ptesarik@suse.cz>
Date: Thu Jun 28 08:30:42 2018 +0200
Make add-symbol-file's address argument optional
The (first) .text section must be always specified as the second
non-option argument. The documentation states that GDB cannot
figure out this address by itself. This is true if the object file
was indeed relocated, but it is also confusing, because all other
sections can be omitted and will use the address provided by BFD.
gdb/ChangeLog:
2018-06-28 Petr Tesarik <ptesarik@suse.cz>
* symfile.c (add_symbol_file_command, _initialize_symfile): Do not
require the second argument. If omitted, load sections at the
addresses specified in the file.
gdb/doc/ChangeLog:
2018-06-28 Petr Tesarik <ptesarik@suse.cz>
* gdb.texinfo (Files): The address argument for "add-symbol-file"
is no longer mandatory.
gdb/testsuite/ChangeLog:
2018-06-28 Petr Tesarik <ptesarik@suse.cz>
* gdb.base/relocate.exp: Test add-symbol-file behavior when the
address argument is omitted.
commit d4d429d589c4d6a4450146fbcac8e1aad445114d
Author: Petr Tesarik <ptesarik@suse.cz>
Date: Thu Jun 28 08:01:33 2018 +0200
Add an optional offset option to the "symbol-file" command
If the main file is relocated at runtime, all symbols are offset by
a fixed amount. Let the user specify this offset when loading a
symbol file.
gdb/ChangeLog:
2018-06-28 Petr Tesarik <ptesarik@suse.cz>
* symfile.c (symbol_file_command, symbol_file_add_main_1)
(_initialize_symfile): Add option "-o" to symbol-file to add an
offset to each section of the symbol file.
gdb/doc/ChangeLog:
2018-06-28 Petr Tesarik <ptesarik@suse.cz>
* gdb.texinfo (Files): Document "symbol-file -o offset".
gdb/testsuite/ChangeLog:
2018-06-28 Petr Tesarik <ptesarik@suse.cz>
* gdb.base/relocate.exp: Add test for "symbol-file -o ".
commit 39b27ab6ae77d4fe1735417f2de90eada658dc6b
Author: Petr Tesarik <ptesarik@suse.cz>
Date: Thu Jun 28 08:01:33 2018 +0200
Add myself as a write-after-approval GDB maintainer.
gdb/ChangeLog:
2018-06-28 Petr Tesarik <ptesarik@suse.cz>
* MAINTAINERS (Write After Approval): Add Petr Tesarik.
commit 1b47b6a21896902a959becf9f06650612a9cb0cd
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Jun 28 00:00:42 2018 +0000
Automatic date update in version.in
commit 41827fc34de3463891160a9d57df9f5c58c0b65f
Author: Tom Tromey <tom@tromey.com>
Date: Tue Jun 5 09:23:48 2018 -0600
Update "func" help text to GNU standards
In my earlier series to change help text to follow the GNU standards
for metasyntactic variables, I missed one: the "func" command. This
patch updates its help text.
Tested by the buildbot.
gdb/ChangeLog
2018-06-27 Tom Tromey <tom@tromey.com>
* stack.c (_initialize_stack): Update "func" help text.
commit 0c6aef226ede6ef6547adb170fb5afb002e96257
Author: Tom Tromey <tom@tromey.com>
Date: Tue Jun 5 10:02:45 2018 -0600
Remove a VEC from py-unwind.c
This removes a use of VEC from py-unwind.c, replacing it wit
std::vector. It also changes saved_regs to hold a gdbpy_ref<>,
simplifying the memory management.
Tested against gdb.python on x86-64 Fedora 26.
gdb/ChangeLog
2018-06-27 Tom Tromey <tom@tromey.com>
* python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
std::vector.
(unwind_infopy_str, pyuw_create_unwind_info)
(unwind_infopy_add_saved_register, pyuw_sniffer)
(unwind_infopy_dealloc, unwind_infopy_add_saved_register):
Update.
(struct saved_reg): Add constructor.
<value>: Now a gdbpy_ref<>.
commit 6317728958287f0876f04941267de5d87eefa578
Author: Tom Tromey <tom@tromey.com>
Date: Wed Jun 27 13:06:33 2018 -0600
Fix crash in machoread.c
"./gdb ./gdb" was crashing for me on macOS. Investigating showed that
macho_symfile_read was crashing because "symbol_table" was being freed
too soon. This was introduced by my earlier patch to change
macho_symfile_read to use a std::vector.
Tested on macOS 10.13.5 using "./gdb ./gdb". This should un-break
various already existing tests (testsuite/gdb.gdb at least), so no new
test case.
I'm checking this in as obvious.
gdb/ChangeLog
2018-06-27 Tom Tromey <tom@tromey.com>
* machoread.c (macho_symfile_read): Define "symbol_table" earlier.
commit e76f78a05299f34605fc8ffa8b371a50b9446bab
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed Jun 27 15:31:05 2018 -0400
Format gdb-gdb.py.in with autopep8
Format using "autopep8 -i".
gdb/ChangeLog:
* gdb-gdb.py.in: Format using autopep8.
commit 9a14af7b1a6765a353d4bf710d267a1c47a162fb
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed Jun 27 15:21:47 2018 -0400
Add pretty-printer for CORE_ADDR
Add a pretty-printer that prints CORE_ADDR values in hex.
gdb/ChangeLog:
* gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
(type_lookup_function): Recognize CORE_ADDR values.
commit 189366cd86ce2e5758c27054b7f62d1f769a0825
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed Jun 27 14:32:07 2018 -0400
gdb-gdb.py.in: Don't print value's tag_name
This has been removed recently.
gdb/ChangeLog:
* gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
print tag_name.
commit 68ad5fb9aa5ea8d00f95a19cd0c3ab211fb21f83
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed Jun 27 14:32:05 2018 -0400
gdb-gdb.py.in: Fix ordering of TypeFlags objects with Python 3
Python 3 doesn't use __cmp__ to order objects, it uses __lt__. Because
of this, we get this exception when trying to pretty-print "type"
objects:
I tested it with Python 2.7 as well.
gdb/ChangeLog:
* gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
<__lt__>: Add.
commit 141ec9f67f11a34bae5953b2923bb71fc74dd52f
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed Jun 27 14:32:02 2018 -0400
Copy gdb-gdb.py to build dir
I have thought for a long time how nice it would be to have cool pretty
printers for GDB's internal types. Well, turns out there are few
already in gdb-gdb.py! Unfortunately, if you build GDB outside of the
source directory, that file never gets loaded. top-gdb will look for a
file called
../path/to/build/gdb/gdb-gdb.py
but that file is in the source directory at
../path/to/src/gdb/gdb-gdb.py
This patch makes it so we copy it to the build directory, just like we
do for gdb-gdb.gdb. With this, I can at least see the file getting
automatically loaded:
(top-gdb) info pretty-printer
global pretty-printers:
builtin
mpx_bound128
objfile /home/emaisin/build/binutils-gdb/gdb/gdb pretty-printers:
type_lookup_function
I noticed that running "make" didn't re-generate gdb-gdb.py from
gdb-gdb.py.in. That's because it's copied when running the configure
script and that's it. I added a rule in the Makefile for that (and for
gdb-gdb.gdb too) and added them as a dependency to the "all" target.
gdb/ChangeLog:
* gdb-gdb.py: Move to...
* gdb-gdb.py.in: ... here.
* configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
* Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
dependencies.
(distclean): Remove gdb-gdb.py when cleaning.
(gdb-gdb.py, gdb-gdb.gdb): New rules.
* configure: Re-generate.
commit 4c4e7ad46ed77f552e2624d2f711c0ce51714395
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jun 27 17:19:32 2018 +0100
Fix Cell debugging regression
Commit 00431a78b28f ("Use thread_info and inferior pointers more
throughout") broke Cell multi-arch debugging, because it made the
proc-service routines (ps_lgetregs etc.) access registers using the
SPU architecture if GDB happens to interrupt SPU code. The
proc-service routines must always operate on the "main" (in this case
PowerPC) architecture, because that's the register set libthread_db
expects to be using.
Restore the previous behavior, but wrapped in a new
get_ps_regcache function with a describing comment.
Also, the ps_l*regs routines have an explicit lwpid parameter that
said commit missed; with the commit mentioned above, we started always
reading the registers off of the current thread, which is incorrect.
That is fixed by this commit too.
gdb/ChangeLog:
2018-06-27 Pedro Alves <palves@redhat.com>
* proc-service.c (get_ps_regcache): New.
(ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
(ps_lsetfpregs): Use it.
commit 7ab6656f274b450942deb8800257c0d2e060fa84
Author: Omair Javaid <omair.javaid@linaro.org>
Date: Tue May 15 19:04:21 2018 +0500
Fix lost line info for symbol at addr zero
This patch fixes a unique condition where GDB fails to provide line
information of symbol at address zero when code is compiled with text
address zero but loaded at an offset > 0.
For example lets compile following code snippet:
int main() {
return 0;
}
gcc -O0 -g3 -nostdlib -emain -Wl,-Ttext=0x00 -o file.out file.c
Start gdb and run:
add-symbol-file file.out 0xffff0000
info line main
GDB will return error saying no line info is available for the symbol.
This is a direct consequence of the fix for PR 12528 where GDB tries to ignore
line table for a function which has been garbage collected by the linker.
As the garbage collected symbols are sent to address zero GDB assumes a symbol
actually placed at address zero as garbage collected.
This was fixed with an additional check address < lowpc. But when symbol is
loaded at an offset lowpc becomes lowpc + offset while no offset is added to
address rather final symbol address is calculated based on baseaddr and address
added together. So in case where symbols are loaded at an offset the condition
address < lowpc will always return true.
This patch fixes this by comparing address against a non offset lowpc.
This patch also adds a GDB test case to replicate this behavior.
gdb:
2018-06-27 Omair Javaid <omair.javaid@linaro.org>
PR gdb/21695
* dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
(dwarf_decode_lines_1): Adjust.
gdb/testsuite:
2018-06-27 Omair Javaid <omair.javaid@linaro.org>
PR gdb/21695
* gdb.base/infoline-reloc-main-from-zero.exp: New test.
* gdb.base/infoline-reloc-main-from-zero.c: New file.
commit bd583225a52f920f71e417ef87092d25553dc85e
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed Jun 27 10:52:57 2018 -0400
Add overrides, fix FreeBSD build
Fix this:
CXX fbsd-nat.o
In file included from fbsd-nat.c:44:
./fbsd-nat.h:40:7: error: 'find_memory_regions' overrides a member function but is not marked 'override' [-Werror,-Winconsistent-missing-override]
int find_memory_regions (find_memory_region_ftype func, void *data);
^
./target.h:702:17: note: overridden virtual function is here
virtual int find_memory_regions (find_memory_region_ftype func, void *data)
^
In file included from fbsd-nat.c:44:
./fbsd-nat.h:42:8: error: 'info_proc' overrides a member function but is not marked 'override' [-Werror,-Winconsistent-missing-override]
bool info_proc (const char *, enum info_proc_what);
^
./target.h:950:18: note: overridden virtual function is here
virtual bool info_proc (const char *, enum info_proc_what);
^
gdb/ChangeLog:
* fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
override.
<info_proc>: Likewise.
commit e11078da44268a4813ed81a27853143af86c3e24
Author: Alan Modra <amodra@gmail.com>
Date: Wed Jun 27 12:47:13 2018 +0930
gas object file locations
With the update to newer autotools, some gas object files are now
built in config/, breaking xtensa-elf and ia64-vms. This patch fixes
the dependencies.
* configure.ac: Specify extra_objects with leading "config/"
for xtensa-relax.o and te-vms.o. Use case statements to unique
extra_objects. Formatting.
* configure: Regenerate.
commit ac0734dea70e4d3d548ebd9282e88d65947b28a9
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Jun 27 00:00:41 2018 +0000
Automatic date update in version.in
commit 9a325b7b3ff056647de536941eaba911d1d794ad
Author: Joel Brobecker <brobecker@adacore.com>
Date: Tue Jun 26 14:38:32 2018 -0700
Minor reorganization of fetch_registers/store_registers in windows-nat.c
This patch is a small reorganizational patch that splits
do_windows_fetch_inferior_registers into two parts:
(a) One part that first reloads the thread's context when needed,
and then decides based on the given register number whether
one register needs to be fetched or all of them.
This part is moved to windows_nat_target::fetch_registers.
(b) The rest of the code, which actually fetches the register value
and supplies it to the regcache.
A similar treatment is applied to do_windows_store_inferior_registers.
This change is preparation work for changing the way we calculate
the location of a given register in the thread context structure,
and should be a no op.
gdb/ChangeLog:
* windows-nat.c (do_windows_fetch_inferior_registers): Rename
to windows_fetch_one_register, and only handle the case of
fetching one register. Move the code that reloads the context
and iterates over all registers if R is negative to...
(windows_nat_target::fetch_registers): ... here.
(do_windows_store_inferior_registers): Rename to
windows_store_one_register, and only handle the case of storing
one register. Move the code that handles the case where r is
negative to...
(windows_nat_target::store_registers) ... here.
Tested on x86-windows and x86_64-windows using AdaCore's testsuite.
commit a33ccfc7afd9e32dd310f54d04719efeec8df342
Author: Tom Tromey <tom@tromey.com>
Date: Fri Jun 8 13:18:25 2018 -0600
Support ptype/o in Rust
This adds support for ptype/o to the Rust language code.
By default, the Rust compiler reorders fields to reduce padding. So,
the Rust language code sorts the fields by offset before printing.
This may yield somewhat odd-looking results, but it is faithful to
"what really happens", and might be useful when doing lower-level
debugging.
The reordering can be disabled using #[repr(c)]; ptype/o might be more
useful in this case.
gdb/ChangeLog
2018-06-26 Tom Tromey <tom@tromey.com>
PR rust/22574:
* typeprint.c (whatis_exp): Allow ptype/o for Rust.
* rust-lang.c (rust_print_struct_def): Add podata parameter.
Update.
(rust_internal_print_type): Add podata parameter.
(rust_print_type): Update.
gdb/testsuite/ChangeLog
2018-06-26 Tom Tromey <tom@tromey.com>
PR rust/22574:
* gdb.rust/simple.exp (test_one_slice): Add ptype/o tests.
* gdb.rust/simple.rs (struct SimpleLayout): New.
commit e0c547d14ae1d5c06b59178f4b1dd1f5e08b3feb
Author: Tom Tromey <tom@tromey.com>
Date: Fri Jun 8 12:43:47 2018 -0600
Move ptype/o printing code to typeprint.c
This moves the hole-printing support code for ptype/o from
c-typeprint.c to be methods on print_offset_data. This allows the
code to be used from non-C languages.
gdb/ChangeLog
2018-06-26 Tom Tromey <tom@tromey.com>
* typeprint.h (struct print_offset_data) <update, finish,
maybe_print_hole>: New methods.
<indentation>: New constant.
* typeprint.c (print_offset_data::indentation): Define.
(print_offset_data::maybe_print_hole, print_offset_data::update)
(print_offset_data::finish): Move from c-typeprint.c and rename.
* c-typeprint.c (OFFSET_SPC_LEN): Remove.
(print_spaces_filtered_with_print_options): Update.
(c_print_type_union_field_offset, maybe_print_hole)
(c_print_type_struct_field_offset): Move to typeprint.c and
rename.
(c_type_print_base_struct_union): Update.
commit 30aa13067f70ba1d11c35d13be753118c457842c
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Jun 26 14:03:16 2018 +0100
Updated translations.
gas * po/uk.po: Updated Ukranian translation.
bfd * po/uk.po: Updated Ukranian translation.
ld * po/uk.po: Updated Ukranian translation.
gold * po/uk.po: Updated Ukranian translation.
opcodes * po/uk.po: Updated Ukranian translation.
* po/de.po: Updated German translation.
* po/pt_BR.po: Updated Brazilian Portuguese translation.
binutils* po/sv.po: Updated Swedish translation.
* po/uk.po: Updated Ukranian translation.
commit 791755f59dde1d1bc191fd3742d32929091dec83
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Jun 26 13:40:13 2018 +0100
Fix the MSP430 assembler's parsing of register names.
PR 23335
* config/tc-msp430.c (check_reg): Only accept register name
strings that do not end in an alphanumeric character.
* testsuite/gas/msp430/msp430x.d: Update expected disassembly.
commit 2822b09ff6024d042f1258194d6938c5a401b4fb
Author: Alan Modra <amodra@gmail.com>
Date: Tue Jun 26 14:30:16 2018 +0930
PR23169 bogus test
The testcase isn't valid. If it happens to run on your target, you're
lucky.
PR 23169
* testsuite/ld-ifunc/ifunc.exp: Don't run pr23169 tests on
powerpc. Comment.
commit 2db70efacd3f8f208a1ab7946c34f79fae33092b
Author: Alan Modra <amodra@gmail.com>
Date: Tue Jun 26 14:29:28 2018 +0930
Fix parens in ld bootstrap.exp
Seen with tcl 8.5.13:
ERROR: tcl error sourcing .../ld/testsuite/ld-bootstrap/bootstrap.exp.
ERROR: expected boolean value but got " [istarget ia64-*-elf*] || [istarget ia64-*-linux*"
while executing
"if { "$flags" == "--static" && { [istarget ia64-*-elf*] || [istarget ia64-*-linux*] }
|| [istarget mips*-*-linux*] } {
# On ia64 and mips, tmpdir/l..."
* testsuite/ld-bootstrap/bootstrap.exp: Use parentheses rather
than curly braces in logical expression.
commit 2393a7e3e6b3ec51bc404c6adebffea5db9f04b1
Author: Alan Modra <amodra@gmail.com>
Date: Thu Jun 21 23:19:41 2018 +0930
Revert "Use offsets instead of addresses in ELF_SECTION_IN_SEGMENT for non SHT_NOBITS"
This reverts commit 57c0d77c2ce5e583dab322e05f8291bcbad0ccd3.
commit eca4b721468e239a6a1ca7c9bd9c967085067dfe
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Jun 26 12:56:23 2018 +0100
Fix spelling mistakes.
opcodes * nfp-dis.c: Fix spelling mistake.
ld * emultempl/aarch64elf.em: Fix spelling mistake.
* emultempl/avrelf.em: Likewise.
* emultempl/elf32.em: Likewise.
binutils* doc/binutils.texi: Fix spelling mistakes.
* README--how-to-make-a-release: Likewise.
commit e4a882f4b042bf44bb2668373132be2b678dfe47
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Jun 26 00:00:44 2018 +0000
Automatic date update in version.in
commit 75cbc781e371279f4403045be93b07fd8fe7fde5
Author: Pedro Alves <palves@redhat.com>
Date: Mon Jun 25 17:18:18 2018 +0100
gdb: For macOS, s/thread_info/struct thread_info/
The macOS build currently fails with several instances of this problem:
In file included from ../../src/gdb/darwin-nat.h:22:0,
from ../../src/gdb/i386-darwin-nat.c:37:
../../src/gdb/gdbthread.h:376:59: error: type/value mismatch at argument 1 in template parameter list for 'template<class T, class Policy> class gdb::ref_ptr'
= gdb::ref_ptr<thread_info, refcounted_object_ref_policy>;
^
../../src/gdb/gdbthread.h:376:59: note: expected a type, got 'thread_info'
../../src/gdb/gdbthread.h:396:28: error: variable or field 'delete_thread' declared void
extern void delete_thread (thread_info *thread);
^
(...)
This is because there's a thread_info function in the Darwin/XNU/mach API:
http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/thread_info.html
Fix this in the same way it had been fixed in commit 7aabaf9d4ad5
("Create private_thread_info hierarchy"), by adding an explicit
"struct" keyword.
gdb/ChangeLog:
2018-06-25 Pedro Alves <palves@redhat.com>
* gdbthread.h (thread_info_ref, delete_thread)
(delete_thread_silent, first_thread_of_inferior)
(any_thread_of_inferior, switch_to_thread)
(enable_thread_stack_temporaries)
(thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
(get_last_thread_stack_temporary)
(value_in_thread_stack_temporaries, can_access_registers_thread):
Spell out "struct thread_info" instead of just "thread_info".
* inferior.h (notice_new_inferior): Likewise.
commit b7a08269ca53323c5fe190370da281358dfee6b2
Author: Pedro Alves <palves@redhat.com>
Date: Mon Jun 25 17:42:22 2018 +0100
gdb: Fix build on several hosts/ports
Commit 00431a78b28f ("Use thread_info and inferior pointers more
throughout") missed updating some callers, like e.g.,:
gdb/remote-sim.c: In member function 'virtual void gdbsim_target::mourn_inferior()':
gdb/remote-sim.c:1198:50: error: cannot convert 'ptid_t' to 'thread_info*' for argument '1' to 'void delete_thread_silent(thread_info*)'
delete_thread_silent (sim_data->remote_sim_ptid);
gdb/mygit/src/gdb/procfs.c: In member function âvirtual void procfs_target::detach(inferior*, int)â:
gdb/mygit/src/gdb/procfs.c:1931:23: error: invalid conversion from âintâ to âinferior*â [-fpermissive]
detach_inferior (pid);
^
In file included from gdb/mygit/src/gdb/procfs.c:24:0:
gdb/mygit/src/gdb/inferior.h:476:13: note: initializing argument 1 of âvoid detach_inferior(inferior*)â
etc.
This fixes it.
The delete_thread_silent calls in both go32-nat.c and remote-sim.c are
unnecessary because generic_mourn_inferior calls exit_inferior, which
deletes the inferior's threads.
gdb/ChangeLog:
2018-06-25 Pedro Alves <palves@redhat.com>
* windows-nat.c (windows_delete_thread): Use find_thread_ptid and
pass thread_info pointer to delete_thread.
(windows_nat_target::detach): Pass inferior pointer to
detach_inferior.
* aix-thread.c (sync_threadlists): Pass thread_info pointer to
delete_thread.
* bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
* darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
and pass a thread_info pointer to delete_thread.
* fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
pass thread_info pointer to delete_thread.
* go32-nat.c (go32_nat_target::mourn_inferior): Remove
delete_thread_silent call.
* procfs.c (procfs_target::detach): Pass inferior pointer to
detach_inferior.
(procfs_target::wait): Pass thread_info pointer to delete_thread.
* remote-sim.c (gdbsim_target::mourn_inferior): Remove
delete_thread_silent call.
* windows-nat.c (windows_delete_thread): Use find_thread_ptid and
pass thread_info pointer to delete_thread.
(windows_nat_target::detach): Pass inferior pointer to
delete_inferior.
commit 1021d1cb1214771711c61117ba0923c73a3ff431
Author: Tom Tromey <tom@tromey.com>
Date: Sun Jun 24 21:25:44 2018 -0600
Add a syntax table to dwarf-mode.el
This adds a syntax table for dwarf-mode to dwarf-mode.el. I noticed
the need for this when trying to use mark-sexp (C-M-SPC) on a hex
number -- it copied the trailing ">" as well, which isn't desirable.
I've also bumped the version number to make this simpler to install
via the Emacs package system.
Tested locally. I'm checking this in.
binutils/ChangeLog
2018-06-25 Tom Tromey <tom@tromey.com>
* dwarf-mode.el (dwarf-mode-syntax-table): New variable.
Bump version number.
commit bb69498c61638ea88b626f78e911afa74ed22da6
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Jun 25 12:49:14 2018 +0100
Fix compile time warning message for the AArch64 BFD backend, about a possible attempt to call sprintf on a NULL buffer pointer.
* elfnn-aarch64.c (_bfd_aarch64_erratum_835769_stub_name): Check
for malloc returning NULL.
(_bfd_aarch64_erratum_843419_fixup): Check for
_bfd_aarch64_erratum_835769_stub_name returning NULL.
commit c1080aae0f87ad55d1fc6003c76dc093b3c0749d
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Jun 25 00:00:52 2018 +0000
Automatic date update in version.in
commit 79d89b552486a1f65b803115c8f99a93cc5c7486
Author: Nick Clifton <nickc@redhat.com>
Date: Sun Jun 24 20:09:10 2018 +0100
Add more updated to release notes
commit 71300e2c0c24442979a3d01b8423cfaf8ea83003
Author: Nick Clifton <nickc@redhat.com>
Date: Sun Jun 24 19:13:01 2018 +0100
Regenerate configure and pot files with updated binutils version number.
commit 5127f207329b795f865234f4461b230d159e2a22
Author: Nick Clifton <nickc@redhat.com>
Date: Sun Jun 24 18:46:33 2018 +0100
Update version number on development (aka HEAD) branch.
commit 719d8288507d9f35c76bdeed5b597348bd345883
Author: Nick Clifton <nickc@redhat.com>
Date: Sun Jun 24 18:36:15 2018 +0100
Add 2.30 branch notes to ChangeLogs and NEWS files.
commit 6706f7706241eda253d26ce4c927dd5bed4942a7
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Jun 24 00:01:17 2018 +0000
Automatic date update in version.in
commit 155ea1bc92f5c9b34aa5251045d08d6409ca1de9
Author: Cary Coutant <ccoutant@gmail.com>
Date: Sat Jun 23 00:46:13 2018 -0700
Bump version number and summarize new features in 1.16.
gold/
* version.cc (version_string): Bump to 1.16.
* NEWS: Add new features in 1.16.
commit add4131108de4b4a0f3003cb542e9548914fbed1
Author: Cary Coutant <ccoutant@gmail.com>
Date: Sat Jun 23 00:26:07 2018 -0700
Fix "may be used uninitialized" warning.
gold/
PR gold/22914
* x86_64.cc (Target_x86_64::record_gnu_property): Initialize val.
commit 750ea5ed38abbda8a6f25e276bff3dfc8e4ce0ee
Author: Cary Coutant <ccoutant@gmail.com>
Date: Fri Jun 22 17:28:05 2018 -0700
Add x86-64 support for Indirect Branch Tracking (IBT).
gold/
PR gold/22915
* x86_64.cc (Output_data_plt_x86_64_ibt): New class.
(Target_x86_64::do_make_data_plt): (All instantiations) Check for
IBT feature bit and create IBT PLTs.
commit a2575bec2413d361c6ecfc4aecb2a31c86123f95
Author: Cary Coutant <ccoutant@gmail.com>
Date: Fri Jun 22 23:36:50 2018 -0700
Update support for .note.gnu.property sections.
The original patch did not give the target enough hooks to discover that
an input object file does not have a particular property. For the
GNU_PROPERTY_X86_FEATURE_1_AND property, for example, where a missing
property should be assumed to be all zeroes, and ANDed with other
object modules, this is essential. We now store the target-specific
properties locally in the Target structure as native uint32_t fields,
then AND the per-object feature bits with the program's feature bits
when we're finished processing each input object file. The target-specific
properties are then added back to the output note section during
finalization.
gold/
PR gold/22914
* layout.cc (read_sized_value): Fix spelling of section name.
(Layout::layout_gnu_property): Call Sized_target::record_gnu_property
for target-specific properties;
don't store them with target-independent properties yet.
(Layout::merge_gnu_properties): New method.
(Layout::add_gnu_property): New method.
(Layout::create_gnu_properties_note): Call target to finalize
target-specific properties. Fix spelling of output section name.
* layout.h (Layout::merge_gnu_properties): New method.
(Layout::add_gnu_property): New method.
* object.cc (Sized_relobj_file::do_layout): Call
Layout::merge_gnu_properties.
* target.h (Target::merge_gnu_property): Remove.
(Target::finalize_gnu_properties): New method.
(Target::do_merge_gnu_property): Move to Sized_target and rename.
(Target::do_finalize_gnu_properties): New virtual method.
(Sized_target::record_gnu_property): Moved and renamed from
Target::do_merge_gnu_property.
(Sized_target::merge_gnu_properties): New virtual method.
* x86_64.cc (Target_x86_64::isa_1_used_, isa_1_needed_)
(feature_1_, object_feature_1_, seen_first_object_): New data members.
(Target_x86_64::do_merge_gnu_property): Rename to ...
(Target_x86_64::record_gnu_property): ... this. Save target-specific
properties in Target class object.
(Target_x86_64::merge_gnu_properties): New method.
(add_property): New static inline function.
(Target_x86_64::do_finalize_gnu_properties): New method.
* testsuite/Makefile.am (gnu_property_test): Remove C source file;
link directly without compiler driver.
* testsuite/Makefile.in: Regenerate.
* testsuite/gnu_property_a.S: Add _start.
commit a1893a821c4a2e953d13b97360b85650f2127134
Author: Cary Coutant <ccoutant@gmail.com>
Date: Fri Jun 22 18:19:51 2018 -0700
Silence GCC 9 error about deprecated implicit copy constructor.
Replacing push_back() with emplace_back() eliminates the calls to the
copy constructor, but I still had to provide explicit copy constructors
because of the call to vector::reserve(), which tries to instantiate them
even though they'll never actually be called when reserve() is called
on an empty vector.
gold/
* incremental.cc (Sized_incremental_binary::setup_readers): Use
emplace_back for GCC 5 and later.
* incremental.h (Incremental_binary::Input_reader): Provide copy
constructor.
(Sized_incremental_binary::Sized_input_reader): Likewise.
commit 2e7a29d5701d6b320cddf0b1677116d2fe49587b
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Jun 23 00:00:50 2018 +0000
Automatic date update in version.in
commit 6d72d289c4718c72f36880876d7460d6da4fa21a
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Fri Jun 22 13:40:47 2018 -0400
Fix "info registers" regexes in gdb.base/jit-reader.exp
Commit
e813d34 ("Align natural-format register values to the same column")
changed the output of "info registers" (tabs to spaces), but didn't
update gdb.base/jit-reader.exp. Update the regexes to expect spaces
instead.
gdb/testsuite/ChangeLog:
* gdb.base/jit-reader.exp (jit_reader_test): Expect spaces in
"info registers" output.
commit 6c04fd9b2fb4396c0189cb414ce598161ac8673e
Author: Cary Coutant <ccoutant@gmail.com>
Date: Fri Jun 22 09:27:39 2018 -0700
Add support for .note.gnu.property sections.
elfcpp/
PR gold/22914
* elfcpp.h (NT_GNU_PROPERTY_TYPE_0): New note type.
(GNU_PROPERTY_*): New Gnu property types.
* x86_64.h (GNU_PROPERTY_X86_FEATURE_1_IBT)
(GNU_PROPERTY_X86_FEATURE_1_SHSTK): New x86 feature bits.
gold/
PR gold/22914
* layout.cc (Layout::Layout): Initialize gnu_properties_.
(read_sized_value, write_sized_value): New functions.
(Layout::layout_gnu_property): New method.
(Layout::create_notes): Call create_gnu_properties_note.
(Layout::create_gnu_properties_note): New method.
* layout.h (Layout::layout_gnu_property): New method.
(Layout::create_gnu_properties_note): New method.
(Layout::Gnu_property, Layout::Gnu_properties): New types.
(Layout::gnu_properties_): New data member.
* object.cc (Sized_relobj_file::layout_gnu_property_section): New
method.
(Sized_relobj_file::do_layout): Handle .note.gnu.property sections.
* object.h (Sized_relobj_file::layout_gnu_property_section): New
method.
* target.h (Target::merge_gnu_property): New method.
(Target::do_merge_gnu_property): New virtual method.
* x86_64.cc (Target_x86_64::do_merge_gnu_property): New method.
* testsuite/Makefile.am (gnu_property_test): New test case.
* testsuite/Makefile.in: Regenerate.
* testsuite/gnu_property_a.S: New source file.
* testsuite/gnu_property_b.S: New source file.
* testsuite/gnu_property_c.S: New source file.
* testsuite/gnu_property_main.c: New source file.
* testsuite/gnu_property_test.sh: New test script.
commit 8e7767e3f782c46451a548d708f5582669d7a6d7
Author: Alan Hayward <alan.hayward@arm.com>
Date: Wed Jun 20 18:19:05 2018 +0100
Use partial register read/writes in transfer_regset
This avoids assert failures when the register is bigger than the
slot size. This happens on Aarch64 when truncating Z registers
into an fpsimd structure. This can be triggered by running
gdb command "generate-core-file".
Also, when the register is smaller then the slot size, then
zero pad when writing to the slot, and truncate when writing
to the regcache. This happens on Aarch64 with the CPSR register.
Continue to ensure registers are invalidated when both buffers
are null.
gdb/
* regcache.c (readable_regcache::read_part): Fix asserts.
(reg_buffer::raw_collect_part): New function.
(regcache::write_part): Fix asserts.
(reg_buffer::raw_supply_part): New function.
(regcache::transfer_regset_register): New helper function.
(regcache::transfer_regset): Call new functions.
(regcache_supply_regset): Use gdb_byte*.
(regcache::supply_regset): Likewise.
(regcache_collect_regset): Likewise.
(regcache::collect_regset): Likewise.
* regcache.h (reg_buffer::raw_collect_part): New declaration.
(reg_buffer::raw_supply_part): Likewise.
(regcache::transfer_regset_register): Likewise.
(regcache::transfer_regset): Use gdb_byte*.
commit 514cd3a0f589fa48ca7bc9504c36436c0cbefcb2
Author: Tamar Christina <tamar.christina@arm.com>
Date: Fri Jun 22 12:27:53 2018 +0100
Correct negs aliasing on AArch64.
This patch fixes a disassembly issue with the aliases to subs with a shifted
register. The subs instruction with the zero register as destination is
supposed to alias to cmp and when the first input register is the zero register
the subs is supposed to be aliased to negs.
This means that a subs with destination and first input registers the zero
register is supposed to be a cmp.
This is done by raising the priority of the cmp alias.
opcodes/
* aarch64-tbl.h (aarch64_opcode_table): Fix alias flag for negs
* aarch64-asm-2.c: Regenerate.
* aarch64-dis-2.c: Likewise.
gas/
* testsuite/gas/aarch64/addsub.s: Add negs to zero reg test.
* testsuite/gas/aarch64/addsub.d: Likewise.
commit bfd60e344c8001910825a358ad674003738ebb6b
Author: Alan Hayward <alan.hayward@arm.com>
Date: Fri Jun 22 10:26:51 2018 +0100
Fix up HAS_SVE_STATE macro
Prevents build break on aarch64 Suse.
2018-06-22 Alan Hayward <alan.hayward@arm.com>
gdb/
* nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
commit 8ea3acd6262f066f651b250826eb2c476de42dd2
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Jun 22 00:00:53 2018 +0000
Automatic date update in version.in
commit 385e4d0f27945ef38e19a8fd3ec4cd76ff3b87a5
Author: Maciej W. Rozycki <macro@mips.com>
Date: Thu Jun 21 22:45:47 2018 +0100
MIPS/opcodes: Fix a typo in `-M ginv' option description
opcodes/
* mips-dis.c (print_mips_disassembler_options): Fix a typo in
`-M ginv' option description.
commit cea6ffbd06a6ebb5c21cb51e7775b8ebb5e34f38
Author: Cary Coutant <ccoutant@gmail.com>
Date: Thu Jun 21 13:51:16 2018 -0700
Fix treatment of symbol versions with unused as-needed libraries.
When we have a weak reference to a symbol defined in an
as-needed library, and that library ends up not-needed, gold
simply clears the version information in the symbol table, even
if the symbol could have been resolved by a needed library later
in the link order. This results in a loss of version information,
which can cause the program to bind to the wrong version at run
time.
This patch lets a dynamic definition override an earlier one if
the earlier one is from a not-needed library, so that we can
retain the version information from the binding to the needed
library. In order to do that, the tracking of needed/not-needed
had to be moved up to symbol resolution time, instead of during
Symbol_table::set_dynsym_indexes().
In cases where we still end up discarding version information,
I've added a warning.
For the original problem report and discussion, see:
https://stackoverflow.com/questions/50751421/undefined-behavior-in-shared-lib-using-libpthread-but-not-having-it-in-elf-as-d
gold/
* resolve.cc (Symbol_table::resolve): Rename tobinding to
orig_tobinding. Call set_is_needed() for objects that resolve
non-weak references.
(Symbol_table::should_override): Allow a dynamic definition to
override an earlier one in a not-needed library.
* symtab.cc (Symbol_table::set_dynsym_indexes): Remove separate
processing for as-needed symbols. Add warning when discarding
version informatin.
* testsuite/Makefile.am (weak_as_needed): New test case.
* testsuite/Makefile.in: Regenerate.
* testsuite/weak_as_needed.sh: New test script.
* testsuite/weak_as_needed_a.c: New source file.
* testsuite/weak_as_needed_b.c: New source file.
* testsuite/weak_as_needed_b.script: New version script.
* testsuite/weak_as_needed_c.c: New source file.
* testsuite/weak_as_needed_c.script: New version script.
commit 1ced1a5f108fd0a0c88d2298dbdd2dd2a2ee38f0
Author: Maciej W. Rozycki <macro@mips.com>
Date: Thu Jun 21 21:40:57 2018 +0100
MIPS/BFD: Correct formatting of compact EH backend methods
Correct the formatting of `_bfd_mips_elf_compact_eh_encoding' and
`_bfd_mips_elf_cant_unwind_opcode' definitions which extend beyond 79
columns.
bfd/
* elfxx-mips.c (_bfd_mips_elf_compact_eh_encoding)
(_bfd_mips_elf_cant_unwind_opcode): Correct formatting.
commit 334cd8a780840d6aee86790fe2fe5f02fe56edf6
Author: Maciej W. Rozycki <macro@mips.com>
Date: Thu Jun 21 21:40:56 2018 +0100
MIPS/BFD: Keep EI_ABIVERSION setting together
Shuffle code in `_bfd_mips_post_process_headers' so that the setting of
the EI_ABIVERSION ELF file header field is complete before calling
`_bfd_elf_post_process_headers'. This used to be the case, but was
changed with commit 351cdf24d223 ("[MIPS] Implement O32 FPXX, FP64 and
FP64A ABI extensions") for no reason.
bfd/
* elfxx-mips.c (_bfd_mips_post_process_headers): Keep
EI_ABIVERSION setting together.
commit bb29b84d8c2cc2e91f8dec7f7eb64f03470bd03c
Author: Maciej W. Rozycki <macro@mips.com>
Date: Thu Jun 21 21:40:56 2018 +0100
MIPS/BFD: Use enumeration constants for EI_ABIVERSION
Define enumeration constants based on generated `libc-abis.h' from GNU
libc, adding a MIPS_ prefix as these are port-specific. Use them to
replace magic numbers stored in the EI_ABIVERSION field of the ELF file
header.
bfd/
* elfxx-mips.c (MIPS_LIBC_ABI_DEFAULT, MIPS_LIBC_ABI_MIPS_PLT)
(MIPS_LIBC_ABI_UNIQUE, MIPS_LIBC_ABI_MIPS_O32_FP64)
(MIPS_LIBC_ABI_MAX): New enumeration constants.
(_bfd_mips_post_process_headers): Use them in place of magic
numbers.
commit 25eb8346acc04b10d62295eb4c67c928b01a8aaf
Author: Jim Wilson <jimw@sifive.com>
Date: Thu Jun 21 11:45:43 2018 -0700
RISC-V: Fix 3 PIE related ld testsuite failures.
bfd/
* elfnn-riscv.c (riscv_elf_finish_dynamic_symbol): Update comment.
Use SYMBOL_REFERENCES_LOCAL. Add asserts for h->got.offset.
commit 00431a78b28f913a9d5c912c49680e39cfd20847
Author: Pedro Alves <palves@redhat.com>
Date: Thu Jun 21 17:09:31 2018 +0100
Use thread_info and inferior pointers more throughout
This is more preparation bits for multi-target support.
In a multi-target scenario, we need to address the case of different
processes/threads running on different targets that happen to have the
same PID/PTID. E.g., we can have both process 123 in target 1, and
process 123 in target 2, while they're in reality different processes
running on different machines. Or maybe we've loaded multiple
instances of the same core file. Etc.
To address this, in my WIP multi-target branch, threads and processes
are uniquely identified by the (process_stratum target_ops *, ptid_t)
and (process_stratum target_ops *, pid) tuples respectively. I.e.,
each process_stratum instance has its own thread/process number space.
As you can imagine, that requires passing around target_ops * pointers
in a number of functions where we're currently passing only a ptid_t
or an int. E.g., when we look up a thread_info object by ptid_t in
find_thread_ptid, the ptid_t alone isn't sufficient.
In many cases though, we already have the thread_info or inferior
pointer handy, but we "lose" it somewhere along the call stack, only
to look it up again by ptid_t/pid. Since thread_info or inferior
objects know their parent target, if we pass around thread_info or
inferior pointers when possible, we avoid having to add extra
target_ops parameters to many functions, and also, we eliminate a
number of by ptid_t/int lookups.
So that's what this patch does. In a bit more detail:
- Changes a number of functions and methods to take a thread_info or
inferior pointer instead of a ptid_t or int parameter.
- Changes a number of structure fields from ptid_t/int to inferior or
thread_info pointers.
- Uses the inferior_thread() function whenever possible instead of
inferior_ptid.
- Uses thread_info pointers directly when possible instead of the
is_running/is_stopped etc. routines that require a lookup.
- A number of functions are eliminated along the way, such as:
int valid_gdb_inferior_id (int num);
int pid_to_gdb_inferior_id (int pid);
int gdb_inferior_id_to_pid (int num);
int in_inferior_list (int pid);
- A few structures and places hold a thread_info pointer across
inferior execution, so now they take a strong reference to the
(refcounted) thread_info object to avoid the thread_info pointer
getting stale. This is done in enable_thread_stack_temporaries and
in the infcall.c code.
- Related, there's a spot in infcall.c where using a RAII object to
handle the refcount would be handy, so a gdb::ref_ptr specialization
for thread_info is added (thread_info_ref, in gdbthread.h), along
with a gdb_ref_ptr policy that works for all refcounted_object types
(in common/refcounted-object.h).
gdb/ChangeLog:
2018-06-21 Pedro Alves <palves@redhat.com>
* ada-lang.h (ada_get_task_number): Take a thread_info pointer
instead of a ptid_t. All callers adjusted.
* ada-tasks.c (ada_get_task_number): Likewise. All callers
adjusted.
(print_ada_task_info, display_current_task_id, task_command_1):
Adjust.
* breakpoint.c (watchpoint_in_thread_scope): Adjust to use
inferior_thread.
(breakpoint_kind): Adjust.
(remove_breakpoints_pid): Rename to ...
(remove_breakpoints_inf): ... this. Adjust to take an inferior
pointer. All callers adjusted.
(bpstat_clear_actions): Use inferior_thread.
(get_bpstat_thread): New.
(bpstat_do_actions): Use it.
(bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
to take a thread_info pointer. All callers adjusted.
(set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
(breakpoint_re_set_thread): Use inferior_thread.
* breakpoint.h (struct inferior): Forward declare.
(bpstat_stop_status): Update.
(remove_breakpoints_pid): Delete.
(remove_breakpoints_inf): New.
* bsd-uthread.c (bsd_uthread_target::wait)
(bsd_uthread_target::update_thread_list): Use find_thread_ptid.
* btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
(maint_btrace_packet_history_cmd)
(maint_btrace_clear_packet_history_cmd): Adjust.
(maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
inferior_thread.
* cli/cli-interp.c: Include "inferior.h".
* common/refcounted-object.h (struct
refcounted_object_ref_policy): New.
* compile/compile-object-load.c: Include gdbthread.h.
(store_regs): Use inferior_thread.
* corelow.c (core_target::close): Use current_inferior.
(core_target_open): Adjust to use first_thread_of_inferior and use
the current inferior.
* ctf.c (ctf_target::close): Adjust to use current_inferior.
* dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
<thread>: ... this new field. All references adjusted.
(dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
Take a thread_info pointer instead of a ptid_t.
* dummy-frame.h (dummy_frame_push, dummy_frame_pop)
(dummy_frame_discard, register_dummy_frame_dtor): Take a
thread_info pointer instead of a ptid_t.
* elfread.c: Include "inferior.h".
(elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
Use inferior_thread.
* eval.c (evaluate_subexp): Likewise.
* frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
inferior_thread.
* gdb_proc_service.h (struct thread_info): Forward declare.
(struct ps_prochandle) <ptid>: Delete, replaced by ...
<thread>: ... this new field. All references adjusted.
* gdbarch.h, gdbarch.c: Regenerate.
* gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
'thread' parameter. All implementations and callers adjusted.
* gdbthread.h (thread_info) <set_running>: New method.
(delete_thread, delete_thread_silent): Take a thread_info pointer
instead of a ptid.
(global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
(first_thread_of_process): Delete, replaced by ...
(first_thread_of_inferior): ... this new function. All callers
adjusted.
(any_live_thread_of_process): Delete, replaced by ...
(any_live_thread_of_inferior): ... this new function. All callers
adjusted.
(switch_to_thread, switch_to_no_thread): Declare.
(is_executing): Delete.
(enable_thread_stack_temporaries): Update comment.
<enable_thread_stack_temporaries>: Take a thread_info pointer
instead of a ptid_t. Incref the thread.
<~enable_thread_stack_temporaries>: Decref the thread.
<m_ptid>: Delete
<m_thr>: New.
(thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
(get_last_thread_stack_temporary)
(value_in_thread_stack_temporaries, can_access_registers_thread):
Take a thread_info pointer instead of a ptid_t. All callers
adjusted.
* infcall.c (get_call_return_value): Use inferior_thread.
(run_inferior_call): Work with thread pointers instead of ptid_t.
(call_function_by_hand_dummy): Work with thread pointers instead
of ptid_t. Use thread_info_ref.
* infcmd.c (proceed_thread_callback): Access thread's state
directly.
(ensure_valid_thread, ensure_not_running): Use inferior_thread,
access thread's state directly.
(continue_command): Use inferior_thread.
(info_program_command): Use find_thread_ptid and access thread
state directly.
(proceed_after_attach_callback): Use thread state directly.
(notice_new_inferior): Take a thread_info pointer instead of a
ptid_t. All callers adjusted.
(exit_inferior): Take an inferior pointer instead of a pid. All
callers adjusted.
(exit_inferior_silent): New.
(detach_inferior): Delete.
(valid_gdb_inferior_id, pid_to_gdb_inferior_id)
(gdb_inferior_id_to_pid, in_inferior_list): Delete.
(detach_inferior_command, kill_inferior_command): Use
find_inferior_id instead of valid_gdb_inferior_id and
gdb_inferior_id_to_pid.
(inferior_command): Use inferior and thread pointers.
* inferior.h (struct thread_info): Forward declare.
(notice_new_inferior): Take a thread_info pointer instead of a
ptid_t. All callers adjusted.
(detach_inferior): Delete declaration.
(exit_inferior, exit_inferior_silent): Take an inferior pointer
instead of a pid. All callers adjusted.
(gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
(valid_gdb_inferior_id): Delete.
* infrun.c (follow_fork_inferior, proceed_after_vfork_done)
(handle_vfork_child_exec_or_exit, follow_exec): Adjust.
(struct displaced_step_inferior_state) <pid>: Delete, replaced by
...
<inf>: ... this new field.
<step_ptid>: Delete, replaced by ...
<step_thread>: ... this new field.
(get_displaced_stepping_state): Take an inferior pointer instead
of a pid. All callers adjusted.
(displaced_step_in_progress_any_inferior): Adjust.
(displaced_step_in_progress_thread): Take a thread pointer instead
of a ptid_t. All callers adjusted.
(displaced_step_in_progress, add_displaced_stepping_state): Take
an inferior pointer instead of a pid. All callers adjusted.
(get_displaced_step_closure_by_addr): Adjust.
(remove_displaced_stepping_state): Take an inferior pointer
instead of a pid. All callers adjusted.
(displaced_step_prepare_throw, displaced_step_prepare)
(displaced_step_fixup): Take a thread pointer instead of a ptid_t.
All callers adjusted.
(start_step_over): Adjust.
(infrun_thread_ptid_changed): Remove bit updating ptids in the
displaced step queue.
(do_target_resume): Adjust.
(fetch_inferior_event): Use inferior_thread.
(context_switch, get_inferior_stop_soon): Take an
execution_control_state pointer instead of a ptid_t. All callers
adjusted.
(switch_to_thread_cleanup): Delete.
(stop_all_threads): Use scoped_restore_current_thread.
* inline-frame.c: Include "gdbthread.h".
(inline_state) <inline_state>: Take a thread pointer instead of a
ptid_t. All callers adjusted.
<ptid>: Delete, replaced by ...
<thread>: ... this new field.
(find_inline_frame_state): Take a thread pointer instead of a
ptid_t. All callers adjusted.
(skip_inline_frames, step_into_inline_frame)
(inline_skipped_frames, inline_skipped_symbol): Take a thread
pointer instead of a ptid_t. All callers adjusted.
* inline-frame.h (skip_inline_frames, step_into_inline_frame)
(inline_skipped_frames, inline_skipped_symbol): Likewise.
* linux-fork.c (delete_checkpoint_command): Adjust to use thread
pointers directly.
* linux-nat.c (get_detach_signal): Likewise.
* linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
(thread_db_notice_clone): Adjust.
(thread_db_find_new_threads_silently)
(thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
a thread pointer instead of a ptid_t. All callers adjusted.
* mi/mi-cmd-var.c: Include "inferior.h".
(mi_cmd_var_update_iter): Update to use thread pointers.
* mi/mi-interp.c (mi_new_thread): Update to use the thread's
inferior directly.
(mi_output_running_pid, mi_inferior_count): Delete, bits factored
out to ...
(mi_output_running): ... this new function.
(mi_on_resume_1): Adjust to use it.
(mi_user_selected_context_changed): Adjust to use inferior_thread.
* mi/mi-main.c (proceed_thread): Adjust to use thread pointers
directly.
(interrupt_thread_callback): : Adjust to use thread and inferior
pointers.
* proc-service.c: Include "gdbthread.h".
(ps_pglobal_lookup): Adjust to use the thread's inferior directly.
* progspace-and-thread.c: Include "inferior.h".
* progspace.c: Include "inferior.h".
* python/py-exitedevent.c (create_exited_event_object): Adjust to
hold a reference to an inferior_object.
* python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
inferior_thread.
* python/py-inferior.c (struct inferior_object): Give the type a
tag name instead of a typedef.
(python_on_normal_stop): No need to check if the current thread is
listed.
(inferior_to_inferior_object): Change return type to
inferior_object. All callers adjusted.
(find_thread_object): Delete, bits factored out to ...
(thread_to_thread_object): ... this new function.
* python/py-infthread.c (create_thread_object): Use
inferior_to_inferior_object.
(thpy_is_stopped): Use thread pointer directly.
(gdbpy_selected_thread): Use inferior_thread.
* python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
field, replaced with ...
<thread>: ... this new field. All users adjusted.
(btpy_insn_or_gap_new): Drop const.
(btpy_list_new): Take a thread pointer instead of a ptid_t. All
callers adjusted.
* python/py-record.c: Include "gdbthread.h".
(recpy_insn_new, recpy_func_new): Take a thread pointer instead of
a ptid_t. All callers adjusted.
(gdbpy_current_recording): Use inferior_thread.
* python/py-record.h (recpy_record_object) <ptid>: Delete
field, replaced with ...
<thread>: ... this new field. All users adjusted.
(recpy_element_object) <ptid>: Delete
field, replaced with ...
<thread>: ... this new field. All users adjusted.
(recpy_insn_new, recpy_func_new): Take a thread pointer instead of
a ptid_t. All callers adjusted.
* python/py-threadevent.c: Include "gdbthread.h".
(get_event_thread): Use thread_to_thread_object.
* python/python-internal.h (struct inferior_object): Forward
declare.
(find_thread_object, find_inferior_object): Delete declarations.
(thread_to_thread_object, inferior_to_inferior_object): New
declarations.
* record-btrace.c: Include "inferior.h".
(require_btrace_thread): Use inferior_thread.
(record_btrace_frame_sniffer)
(record_btrace_tailcall_frame_sniffer): Use inferior_thread.
(get_thread_current_frame): Use scoped_restore_current_thread and
switch_to_thread.
(get_thread_current_frame): Use thread pointer directly.
(record_btrace_replay_at_breakpoint): Use thread's inferior
pointer directly.
* record-full.c: Include "inferior.h".
* regcache.c: Include "gdbthread.h".
(get_thread_arch_regcache): Use the inferior's address space
directly.
(get_thread_regcache, registers_changed_thread): New.
* regcache.h (get_thread_regcache(thread_info *thread)): New
overload.
(registers_changed_thread): New.
(remote_target) <remote_detach_1>: Swap order of parameters.
(remote_add_thread): <remote_add_thread>: Return the new thread.
(get_remote_thread_info(ptid_t)): New overload.
(remote_target::remote_notice_new_inferior): Use thread pointers
directly.
(remote_target::process_initial_stop_replies): Use
thread_info::set_running.
(remote_target::remote_detach_1, remote_target::detach)
(extended_remote_target::detach): Adjust.
* stack.c (frame_show_address): Use inferior_thread.
* target-debug.h (target_debug_print_thread_info_pp): New.
* target-delegates.c: Regenerate.
* target.c (default_thread_address_space): Delete.
(memory_xfer_partial_1): Use current_inferior.
(target_detach): Use current_inferior.
(target_thread_address_space): Delete.
(generic_mourn_inferior): Use current_inferior.
* target.h (struct target_ops) <thread_address_space>: Delete.
(target_thread_address_space): Delete.
* thread.c (init_thread_list): Use ALL_THREADS_SAFE. Use thread
pointers directly.
(delete_thread_1, delete_thread, delete_thread_silent): Take a
thread pointer instead of a ptid_t. Adjust all callers.
(ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
(first_thread_of_process): Delete, replaced by ...
(first_thread_of_inferior): ... this new function. All callers
adjusted.
(any_thread_of_process): Rename to ...
(any_thread_of_inferior): ... this, and take an inferior pointer.
(any_live_thread_of_process): Rename to ...
(any_live_thread_of_inferior): ... this, and take an inferior
pointer.
(thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
(value_in_thread_stack_temporaries)
(get_last_thread_stack_temporary): Take a thread pointer instead
of a ptid_t. Adjust all callers.
(thread_info::set_running): New.
(validate_registers_access): Use inferior_thread.
(can_access_registers_ptid): Rename to ...
(can_access_registers_thread): ... this, and take a thread
pointer.
(print_thread_info_1): Adjust to compare thread pointers instead
of ptids.
(switch_to_no_thread, switch_to_thread): Make extern.
(scoped_restore_current_thread::~scoped_restore_current_thread):
Use m_thread pointer directly.
(scoped_restore_current_thread::scoped_restore_current_thread):
Use inferior_thread.
(thread_command): Use thread pointer directly.
(thread_num_make_value_helper): Use inferior_thread.
* top.c (execute_command): Use inferior_thread.
* tui/tui-interp.c: Include "inferior.h".
* varobj.c (varobj_create): Use inferior_thread.
(value_of_root_1): Use find_thread_global_id instead of
global_thread_id_to_ptid.
commit 33bab475a6984afedac8a036b3bb40b5555b4127
Author: Alan Hayward <alan.hayward@arm.com>
Date: Wed Jun 20 09:31:37 2018 +0100
Avoid memcpys in regcache read_part/write_part for full registers.
Additionally, tidy up the functions: Remove asserts, use gdb_byte,
update comments.
gdb/
* regcache.c (readable_regcache::read_part): Avoid memcpy when
possible.
(regcache::write_part): Likewise.
(readable_regcache::cooked_read_part): Update comment.
(readable_regcache::cooked_write_part): Likewise.
* regcache.h: (readable_regcache::read_part): Likewise.
(regcache::write_part): Likewise.
commit d388f64333fb977c1b975cb9d26c762b143f4cb9
Author: Alan Modra <amodra@gmail.com>
Date: Wed Jun 20 14:16:52 2018 +0930
Regen doc/Makefile.in
Also make the automake strictness "foreign". My regeneration of the
three doc/Makefile.in files already had --foreign in the automake
invocation, so this just makes it explicit.
bfd/
* doc/Makefile.am (AUTOMAKE_OPTIONS): Add "foreign".
* doc/Makefile.in: Regenerate.
binutils/
* doc/Makefile.am (AUTOMAKE_OPTIONS): Add "foreign".
* doc/Makefile.in: Regenerate.
gas/
* doc/Makefile.am (AUTOMAKE_OPTIONS): Add "foreign".
* doc/Makefile.in: Regenerate.
zlib/
* Makefile.in: Regenerate.
commit 8363f9d5f2fab2c8b5a25c35c572f0426a716b66
Author: Richard Bunt <richard.bunt@arm.com>
Date: Thu Jun 21 14:09:34 2018 +0100
Enable hardware watchpoints on attach for aarch64
This commit fixes a bug whereby hardware watchpoints are not used on
aarch64 when attaching to a target. The fix adds an aarch64 specialization
of post_attach which records the number of available hardware debug registers
using aarch64_linux_get_debug_reg_capacity. This implementation mirrors that
of aarch64_linux_child_post_startup_inferior which successfully enables the
use of hardware watchpoints when launching the target under the debugger.
gdb/ChangeLog:
* aarch64-linux-nat.c (post_attach): New.
(aarch64_linux_nat_target::post_attach): Override post_attach to
record the number of hardware debug registers.
gdb/testsuite/ChangeLog:
* gdb.base/watchpoint-hw-attach.c: New test.
* gdb.base/watchpoint-hw-attach.exp: New file.
commit 57c0d77c2ce5e583dab322e05f8291bcbad0ccd3
Author: Alan Hayward <alan.hayward@arm.com>
Date: Thu Jun 21 09:37:58 2018 +0100
Use offsets instead of addresses in ELF_SECTION_IN_SEGMENT for non SHT_NOBITS
For sections that are not SHT_NOBITS, use sh_offset and p_offset instead of
sh_addr and p_vaddr when calculating if a section fits in a segment. Both
methods are valid when using the GNU linker.
include/
* elf/internal.h (ELF_SECTION_IN_SEGMENT): Donât check addresses
for non SHT_NOBITS.
commit 0d0b0ea29af6abc0790d22f843a3d0cb09424a3a
Author: Tom Tromey <tom@tromey.com>
Date: Wed Jun 20 15:35:04 2018 -0600
Fix a memory leak in py-param.c
Mark Wielaard pointed out this memory leak to me:
==17633== 775 bytes in 1 blocks are definitely lost in loss record 13,346 of 13,967
==17633== at 0x4C2DB6B: malloc (vg_replace_malloc.c:299)
==17633== by 0x6652B7: xmalloc (common-utils.c:45)
==17633== by 0xC4C889: xstrdup (xstrdup.c:34)
==17633== by 0x5A71FD: unicode_to_encoded_string(_object*, char const*) (py-utils.c:81)
==17633== by 0x5A73EB: python_string_to_host_string(_object*) (py-utils.c:158)
==17633== by 0x59CC6C: get_doc_string(_object*, _object*) (py-param.c:334)
==17633== by 0x59D2AA: parmpy_init(_object*, _object*, _object*) (py-param.c:728)
The bug here is that parmpy_init is written as though
add_setshow_generic takes ownership of its doc-string arguments.
However, it does not. This patch fixes the bug in a straightforward
way and also applies some missing constification to make the problem
more apparent.
Tested on x86-64 Fedora 26.
gdb/ChangeLog
2018-06-20 Tom Tromey <tom@tromey.com>
* python/py-param.c (add_setshow_generic): Make parameters const.
(parmpy_init): Update.
commit 6ff79ccd1ca06a4c557ee81b73e0a535b9fd6001
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Jun 21 00:00:39 2018 +0000
Automatic date update in version.in
commit 302abd6e9facdfec3473e19ff65a5479f850ad62
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Wed Jun 20 12:49:03 2018 -0400
Rename regcache_cooked_read_ftype and make a function_view
regcache_cooked_read_ftype can be converted to a function_view, which
allows us to use lambda functions and therefore avoid having to pass an
opaque pointer parameter.
Adjusting the fallouts showed that the "const regcache &" passed to the
readonly_detached_regcache constructor is cast to non-const in
do_cooked_read. I changed the constructor parameter to be non-const.
Finally, I renamed the typedef from regcache_cooked_read_ftype to
register_read_ftype, since there is nothing that forces us to use it
only for regcaches nor cooked registers.
gdb/ChangeLog:
* regcache.h (regcache_cooked_read_ftype): Rename to...
(register_read_ftype): ...this, change type to function_view.
(class reg_buffer) <save>: Remove src parameter.
(readonly_detached_regcache) <readonly_detached_regcache>: Make
parameter non-const in first overload. Remove src parameter in
second overload.
* regcache.c (do_cooked_read): Remove.
(readonly_detached_regcache::readonly_detached_regcache): Make
parameter non-const, adjust call to other constructor.
(reg_buffer::save): Remove src parameter.
* frame.c (do_frame_register_read): Remove.
(frame_save_as_regcache): Use lambda function.
* ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
parameter to ppu2spu_data *.
(ppu2spu_sniffer): Use lambda function.
commit f00674fe074f6ea778503a50132c3214a9c6aec8
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed Jun 20 12:46:28 2018 -0400
testsuite: Fix cc-with-tweaks.sh being executed in the wrong shell
The cc-with-tweaks.sh script needs to be executed with bash. When
trying to run this:
make check RUNTESTFLAGS="--target_board=dwarf4-gdb-index" TESTS="gdb.base/return.exp"
I get:
gdb compile failed, /home/emaisin/src/binutils-gdb/gdb/contrib/cc-with-tweaks.sh: 174: /home/emaisin/src/binutils-gdb/gdb/contrib/cc-with-tweaks.sh: Bad substitution
The reason is that the board files execute cc-with-tweaks.sh using
/bin/sh, which points to dash on my machine. Remove the /bin/sh part
and let the shebang choose the right interpreter.
gdb/testsuite/ChangeLog:
* boards/cc-with-tweaks.exp: Don't call cc-with-tweaks.sh
through /bin/sh.
* boards/dwarf4-gdb-index.exp: Likewise.
* boards/fission-dwp.exp: Likewise.
commit 19f3f25f370fbf7f5c2aa12a909d57f6e38ee2da
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Wed Jun 20 12:40:54 2018 -0400
Remove struct keyword in range-based for-loop
Fix this with gcc 6.3.0, and make the loop variable const while at it:
/home/simark/src/binutils-gdb/gdb/record-full.c: In member function 'virtual int record_full_target::insert_breakpoint(gdbarch*, bp_target_info*)':
/home/simark/src/binutils-gdb/gdb/record-full.c:1789:8: error: types may not be defined in a for-range-declaration [-Werror]
for (struct record_full_breakpoint &bp : record_full_breakpoints)
gdb/ChangeLog:
* record-full.c (record_full_target::insert_breakpoint): Remove
"struct" keyword, add const.
commit 6077de0645ce12a9c4e99f8839a846b42a535b0a
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Jun 20 16:30:05 2018 +0100
Fix potential illegal memroy access when using a build-id note with a negative size.
PR 23316
* opncls.c (get_build_id): Check for a negative or excessive data
size in the build-id note.
commit 1d554008b3747c6ccaa8e3a08cc797cfade242f3
Author: Ulrich Weigand <ulrich.weigand@de.ibm.com>
Date: Wed Jun 20 16:24:16 2018 +0200
Improve gdb.base/float128.exp failure message
If the "print large128" sub-test fails in a manner that typically
indicates internal overflow due to GDB being built without MPFR
support, explicitly state this in the failure message.
gdb/testsuite/ChangeLog:
2018-06-20 Ulrich Weigand <uweigand@de.ibm.com>
* gdb.base/float128.exp: Add comment and improved fail message
to the failure case of "print large128" test.
commit b939d8a0dedbe0f0667500e1741e25baf03fe64c
Author: Renlin Li <renlin.li@arm.com>
Date: Fri Apr 27 10:48:18 2018 +0100
[BFD][AARCH64]Properly truncate no overflow checking relocation value for load/store immediate.
bfd/ChangeLog:
2018-06-20 Renlin Li <renlin.li@arm.com>
* elfxx-aarch64.c (_bfd_aarch64_elf_resolve_relocation): Use PG_OFFSET
to resolve BFD_RELOC_AARCH64_TLSLD_LDST16_DTPREL_LO12_NC,
BFD_RELOC_AARCH64_TLSLD_LDST32_DTPREL_LO12_NC,
BFD_RELOC_AARCH64_TLSLD_LDST64_DTPREL_LO12_NC,
BFD_RELOC_AARCH64_TLSLD_LDST8_DTPREL_LO12_NC,
BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12_NC,
BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12_NC,
BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12_NC,
BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12_NC.
ld/ChangeLog:
2018-06-20 Renlin Li <renlin.li@arm.com>
* testsuite/ld-aarch64/emit-relocs-115.d: Update test with new value.
* testsuite/ld-aarch64/emit-relocs-534.d: Likewise.
* testsuite/ld-aarch64/emit-relocs-555.d: Likewise.
commit fc6141f097056f830a412afebed8d81a9d72b696
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Jun 20 12:38:10 2018 +0100
Change the ARM assembler's ADR and ADRl pseudo-ops so that they will only set the bottom bit of imported thumb function symbols if the -mthumb-interwork option is active.
For more information see the email thread starting here:
https://www.sourceware.org/ml/binutils/2018-05/msg00348.html
PR 21458
* tc-arm.c (do_adr): Only set the bottom bit of an imported thumb
function symbol address if -mthumb-interwork is active.
(do_adrl): Likewise.
* doc/c-arm.texi: Update descriptions of the -mthumb-interwork
option and the ADR and ADRL pseudo-ops.
* NEWS: Mention the new behaviour of the ADR and ADRL pseudo-ops.
* testsuite/gas/arm/pr21458.d: Add -mthumb-interwork option to
assembler command line.
* testsuite/gas/arm/adr.d: Likewise.
* testsuite/gas/arm/adrl.d: Likewise.
commit c6643fcc058d6b4aebca75818fbbb705837a9fa3
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Jun 20 10:43:00 2018 +0100
Stop objcopy from corrupting mach-o files.
PR 23299
* mach-o.c (cputype): New function.
(cpusubtype): New function.
(bfd_mach_o_bfd_print_private_data): New function. Dispalys the
values in the MACH-O file header.
(bfd_mach_o_bfd_copy_private_header_data): Copy the cputype and
cpusubtype fields from the input bfd's mach-o header to the output
bfd.
* mach-o-target.c (bfd_mach_o_bfd_print_private_bfd_data):
Redefine to bfd_mach_o_bfd_print_private_data.
* mach-o.h (bfd_mach_o_bfd_print_private_bfd_data): Prototype.
commit ebb1332297da904a4adab0d3696a5512604f5edd
Author: Cary Coutant <ccoutant@gmail.com>
Date: Wed Jun 20 01:24:11 2018 -0700
Fix problem where gold does not create base version for executables.
gold/
PR gold/23268
* dynobj.cc (Versions::Versions): Change init for needs_base_version_.
(Versions::record_version): Add verdefs for both shared objects and
executables.
(Versions::add_def): Likewise for base version.
(Versions::add_need): Don't add base version for executables.
(Versions::version_index): Look up version for both shared objects and
executables.
* testsuite/Makefile.am (ver_test_14): New test case.
* testsuite/Makefile.in: Regenerate.
* testsuite/ver_test_14.script: New version script.
* testsuite/ver_test_14.sh: New test script.
commit 160d1b3d74593bf42155da24569f54a6e7140f65
Author: Sebastian Huber <sebastian.huber@embedded-brains.de>
Date: Tue Jun 19 07:12:48 2018 +0200
RISC-V: Accept constant operands in la and lla
opcodes/
PR gas/23305
* riscv-opc.c (riscv_opcodes): Use new format specifier 'B' for
la and lla.
gas/
PR gas/23305
* config/tc-riscv.c (riscv_ip): Add format specifier 'B' for
constants and symbols.
* testsuite/gas/riscv/lla32.d: New file.
* testsuite/gas/riscv/lla32.s: Likewise.
* testsuite/gas/riscv/lla64-fail.d: Likewise.
* testsuite/gas/riscv/lla64-fail.l: Likewise.
* testsuite/gas/riscv/lla64-fail.s: Likewise.
* testsuite/gas/riscv/lla64.d: Likewise.
* testsuite/gas/riscv/lla64.s: Likewise.
commit 4ef2c1b90ecca33c2948b7b009860767d64c6398
Author: Cary Coutant <ccoutant@gmail.com>
Date: Tue Jun 19 19:03:25 2018 -0700
Fix typo in most recent entry.
commit c8dc28bcc04532f3074a827dc940c033be4be4e7
Author: Cary Coutant <ccoutant@gmail.com>
Date: Tue Jun 19 18:57:28 2018 -0700
Replace thread config with automatic config using ax_pthread.m4.
The autotools library macro (AX_PTHREAD) is now used to detect if
pthreads is present and multi-threaded linking in gold is automatically
enabled if it is found. This enables multi-threaded gold on platforms
where pthreads is enabled via other methods than just -lpthread
(e.g., MinGW).
2018-06-19 Joshua Watt <jpewhacker@gmail.com>
Cary Coutant <ccoutant@gmail.com>
gold/
* configure.ac: Replace manual thread configuration with AX_PTHREAD.
Add --enable-threads=auto.
* Makefile.am (THREADFLAGS, THREADLIBS): New defines.
(AM_CFLAGS, AM_CXXFLAGS): Add $(THREADFLAGS.
(THREADSLIB): Remove; change all references to THREADLIBS.
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
* config.in: Regenerate.
* configure: Regenerate.
* testsuite/Makefile.am (THREADSLIB): Replace with...
(THREADFLAGS, THREADLIBS): ... these.
(LDADD): Remove; add as individual defines for...
(object_unittest, binary_unittest, leb128_unittest)
(overflow_unittest): ... these tests.
(tls_test, tls_pic_test, tls_pie_test, tls_pie_pic_test)
(tls_shared_test, tls_shared_ie_test, tls_shared_gd_to_ie_test)
(tls_shared_gnu2_gd_to_ie_test, tls_shared_gnu2_test_LDFLAGS)
(tls_shared_nonpic_test_LDFLAGS): Add $(THREADFLAGS) and ($THREADLIBS).
* testsuite/Makefile.in: Regenerate.
commit 27ab04240bb40e052f288b2960fb99210b6f67b1
Author: Cary Coutant <ccoutant@gmail.com>
Date: Tue Jun 19 16:52:54 2018 -0700
Remove *.stderr when "make clean".
gold/
* testsuite/Makefile.am (MOSTLYCLEANFILES): Add *.stderr.
* testsuite/Makefile.in: Regenerate.
commit 7c69913eaa31cdec6bdc9e7709f7d01f81ef8c55
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Jun 20 00:00:56 2018 +0000
Automatic date update in version.in
commit 789ff5b6c26ce7e4ebfcfa5a9a695407c17fa4ea
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed Jun 20 00:37:51 2018 +0100
PR ld/22966: Fix n64 MIPS `.got.plt' range checks
The addressable signed 32-bit range for n64 MIPS `.got.plt' references
is from 0xffffffff7fff8000 to 0x7fff7fff, due to how the composition of
an LUI and an LD instruction works for address calculation in the 64-bit
addressing mode, such as when CP0.Status.UX=1.
We currently have a range check in `mips_finish_exec_plt', however it is
not correct as it verifies that the `.got.plt' start address referred is
between 0xffffffff80000000 and 0x7fffffff. It is also implemented as an
assertion rather than a proper error message despite that the situation
can be triggered by user input. Additionally there is no check made for
individual `.got.plt' entries referred even though they can be out of
range while the `.got.plt' start address is not.
Fix all these problems and use the correct range for the check, limiting
it to n64 output files, and then issue a proper error message both in
`mips_finish_exec_plt' and in `_bfd_mips_elf_finish_dynamic_symbol',
suggesting the use of the `-Ttext-segment=...' option that will often
work and with the default linker scripts in particular. Add suitable
tests covering boundary cases.
bfd/
PR ld/22966
* elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Verify the
`.got.plt' entry referred is in range.
(mips_finish_exec_plt): Correct the range check for `.got.plt'
start. Replace the assertion used for that with a proper error
message.
ld/
PR ld/22966
* testsuite/ld-mips-elf/n64-plt-1.dd: New test.
* testsuite/ld-mips-elf/n64-plt-1.gd: New test.
* testsuite/ld-mips-elf/n64-plt-2.ed: New test.
* testsuite/ld-mips-elf/n64-plt-3.ed: New test.
* testsuite/ld-mips-elf/n64-plt-4.dd: New test.
* testsuite/ld-mips-elf/n64-plt-4.gd: New test.
* testsuite/ld-mips-elf/n64-plt-1.ld: New test linker script.
* testsuite/ld-mips-elf/n64-plt-2.ld: New test linker script.
* testsuite/ld-mips-elf/n64-plt-3.ld: New test linker script.
* testsuite/ld-mips-elf/n64-plt-4.ld: New test linker script.
* testsuite/ld-mips-elf/n64-plt.s: New test source.
* testsuite/ld-mips-elf/n64-plt-lib.s: New test source.
* testsuite/ld-mips-elf/mips-elf.exp: Run the new tests.
commit 6a382bceadc7228d20746079570a15f115e55d0c
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed Jun 20 00:37:51 2018 +0100
MIPS/BFD: Fix `loc' formatting in `_bfd_mips_elf_finish_dynamic_symbol'
Fix a formatting fallout in `_bfd_mips_elf_finish_dynamic_symbol' from
commit ce558b89b15a ("Delete duplicate target short-cuts to dynamic
sections").
bfd/
* elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Fix
formatting.
commit a4eb69274d3b220b6ec22d019a8994e136f9dce5
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed Jun 20 00:37:51 2018 +0100
MIPS/LD/testsuite: XFAIL DT_TEXTREL map file warning test
Remove:
FAIL: DT_TEXTREL map file warning
introduced with commit 63c1f59d6655 ("readonly_dynrelocs"), coming from
the lack of a "dynamic relocation against `foo' in read-only section
`.rodata'" warning message produced.
The cause of the failure is that for sections which have dynamic
relocations attached the MIPS backend sets SHF_WRITE, in
`mips_elf_create_dynamic_relocation', yielding:
$ readelf -S textrel.so | grep rodata
[ 8] .rodata PROGBITS 00000254 000254 000004 00 WA 0 0 1
$
so the section is read/write and therefore there is nothing to warn
about.
This arrangement came from commit 7403cb6305f5 ("PATCH for N32 ABI"),
<https://sourceware.org/ml/binutils/1999-q2/msg00375.html>, i.e. for all
practical purposes it has been there since forever, and therefore it can
be considered a part of the ABI and the test case irrelevant for MIPS
targets.
We don't have a clean way to request UNSUPPORTED result, which would be
the most appropriate here, so just XFAIL the test instead.
ld/
* testsuite/ld-elf/shared.exp: XFAIL DT_TEXTREL map file warning
test for `mips*-*-*'.
commit d0ac1c44885daf68f631befa37e3f3bad318fbbf
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Tue Jun 19 16:54:48 2018 -0400
Bump to autoconf 2.69 and automake 1.15.1
When trying to run the update-gnulib.sh script in gdb, I get this:
Error: Wrong automake version (Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/\${ <-- HERE ([^ =:+{}]+)}/ at /opt/automake/1.11.1/bin/automake line 4113.), we need 1.11.1.
Aborting.
Apparently, it's an issue with a regex in automake that triggers a
warning starting with Perl 5.22. It has been fixed in automake 1.15.1.
So I think it's a good excuse to bump the versions of autoconf and
automake used in the gnulib import. And to avoid requiring multiple
builds of autoconf/automake, it was suggested that we bump the required
version of those tools for all binutils-gdb.
For autoconf, the 2.69 version is universally available, so it's an easy
choice. For automake, different distros and distro versions have
different automake versions. But 1.15.1 seems to be the most readily
available as a package. In any case, it's easy to build it from source.
I removed the version checks from AUTOMAKE_OPTIONS and AC_PREREQ,
because I don't think they are useful in our case. They only specify a
lower bound for the acceptable version of automake/autoconf. That's
useful if you let the user choose the version of the tool they want to
use, but want to set a minimum version (because you use a feature that
was introduced in that version). In our case, we force people to use a
specific version anyway. For the autoconf version, we have the check in
config/override.m4 that enforces the version we want. It will be one
less thing to update next time we change autotools version.
I hit a few categories of problems that required some changes. They are
described below along with the chosen solutions.
Problem 1:
configure.ac:17: warning: AM_INIT_AUTOMAKE: two- and three-arguments forms are deprecated. For more info, see:
configure.ac:17: http://www.gnu.org/software/automake/manual/automake.html#Modernize-AM_005fINIT_005fAUTOMAKE-invocation
Solution 1:
Adjust the code based on the example at that URL.
Problem 2 (in zlib/):
Makefile.am: error: required file './INSTALL' not found
Makefile.am: 'automake --add-missing' can install 'INSTALL'
Makefile.am: error: required file './NEWS' not found
Makefile.am: error: required file './AUTHORS' not found
Makefile.am: error: required file './COPYING' not found
Makefile.am: 'automake --add-missing' can install 'COPYING'
Solution 2:
Add the foreign option to AUTOMAKE_OPTIONS.
Problem 3:
doc/Makefile.am:20: error: support for Cygnus-style trees has been removed
Solution 3:
Remove the cygnus options.
Problem 4:
Makefile.am:656: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
Solution 4:
Rename "INCLUDES = " to "AM_CPPFLAGS += " (because AM_CPPFLAGS is
already defined earlier).
Problem 5:
doc/Makefile.am:71: warning: suffix '.texinfo' for Texinfo files is discouraged; use '.texi' instead
doc/Makefile.am: warning: Oops!
doc/Makefile.am: It appears this file (or files included by it) are triggering
doc/Makefile.am: an undocumented, soon-to-be-removed automake hack.
doc/Makefile.am: Future automake versions will no longer place in the builddir
doc/Makefile.am: (rather than in the srcdir) the generated '.info' files that
doc/Makefile.am: appear to be cleaned, by e.g. being listed in CLEANFILES or
doc/Makefile.am: DISTCLEANFILES.
doc/Makefile.am: If you want your '.info' files to be placed in the builddir
doc/Makefile.am: rather than in the srcdir, you have to use the shiny new
doc/Makefile.am: 'info-in-builddir' automake option.
Solution 5:
Rename .texinfo files to .texi.
Problem 6:
doc/Makefile.am: warning: Oops!
doc/Makefile.am: It appears this file (or files included by it) are triggering
doc/Makefile.am: an undocumented, soon-to-be-removed automake hack.
doc/Makefile.am: Future automake versions will no longer place in the builddir
doc/Makefile.am: (rather than in the srcdir) the generated '.info' files that
doc/Makefile.am: appear to be cleaned, by e.g. being listed in CLEANFILES or
doc/Makefile.am: DISTCLEANFILES.
doc/Makefile.am: If you want your '.info' files to be placed in the builddir
doc/Makefile.am: rather than in the srcdir, you have to use the shiny new
doc/Makefile.am: 'info-in-builddir' automake option.
Solution 6:
Remove the hack at the bottom of doc/Makefile.am and use
the info-in-builddir automake option.
Problem 7:
doc/Makefile.am:35: error: required file '../texinfo.tex' not found
doc/Makefile.am:35: 'automake --add-missing' can install 'texinfo.tex'
Solution 7:
Use the no-texinfo.tex automake option. We also have one in
texinfo/texinfo.tex, not sure if we should point to that, or move it
(or a newer version of it added with automake --add-missing) to
top-level.
Problem 8:
Makefile.am:131: warning: source file 'config/tc-aarch64.c' is in a subdirectory,
Makefile.am:131: but option 'subdir-objects' is disabled
automake: warning: possible forward-incompatibility.
automake: At least a source file is in a subdirectory, but the 'subdir-objects'
automake: automake option hasn't been enabled. For now, the corresponding output
automake: object file(s) will be placed in the top-level directory. However,
automake: this behaviour will change in future Automake versions: they will
automake: unconditionally cause object files to be placed in the same subdirectory
automake: of the corresponding sources.
automake: You are advised to start using 'subdir-objects' option throughout your
automake: project, to avoid future incompatibilities.
Solution 8:
Use subdir-objects, that means adjusting references to some .o that will now
be in config/.
Problem 9:
configure.ac:375: warning: AC_LANG_CONFTEST: no AC_LANG_SOURCE call detected in body
../../lib/autoconf/lang.m4:193: AC_LANG_CONFTEST is expanded from...
../../lib/autoconf/general.m4:2601: _AC_COMPILE_IFELSE is expanded from...
../../lib/autoconf/general.m4:2617: AC_COMPILE_IFELSE is expanded from...
../../lib/m4sugar/m4sh.m4:639: AS_IF is expanded from...
../../lib/autoconf/general.m4:2042: AC_CACHE_VAL is expanded from...
../../lib/autoconf/general.m4:2063: AC_CACHE_CHECK is expanded from...
configure.ac:375: the top level
Solution 9:
Use AC_LANG_SOURCE, or use proper quoting.
Problem 10 (in intl/):
configure.ac:7: warning: AC_COMPILE_IFELSE was called before AC_USE_SYSTEM_EXTENSIONS
/usr/share/aclocal/threadlib.m4:36: gl_THREADLIB_EARLY_BODY is expanded from...
/usr/share/aclocal/threadlib.m4:29: gl_THREADLIB_EARLY is expanded from...
/usr/share/aclocal/threadlib.m4:318: gl_THREADLIB is expanded from...
/usr/share/aclocal/lock.m4:9: gl_LOCK is expanded from...
/usr/share/aclocal/intl.m4:211: gt_INTL_SUBDIR_CORE is expanded from...
/usr/share/aclocal/intl.m4:25: AM_INTL_SUBDIR is expanded from...
/usr/share/aclocal/gettext.m4:57: AM_GNU_GETTEXT is expanded from...
configure.ac:7: the top level
Solution 10:
Add AC_USE_SYSTEM_EXTENSIONS in configure.ac.
ChangeLog:
* libtool.m4: Use AC_LANG_SOURCE.
* configure.ac: Remove AC_PREREQ, use AC_LANG_SOURCE.
* README-maintainer-mode: Update version requirements.
* ar-lib: New file.
* test-driver: New file.
* configure: Re-generate.
bfd/ChangeLog:
* Makefile.am (AUTOMAKE_OPTIONS): Remove 1.11.
(INCLUDES): Rename to ...
(AM_CPPFLAGS): ... this.
* configure.ac: Remove AC_PREREQ.
* doc/Makefile.am (AUTOMAKE_OPTIONS): Remove 1.9, cygnus, add
info-in-builddir no-texinfo.tex.
(info_TEXINFOS): Rename bfd.texinfo to bfd.texi.
* doc/bfd.texinfo: Rename to ...
* doc/bfd.texi: ... this.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* config.in: Re-generate.
* configure: Re-generate.
* doc/Makefile.in: Re-generate.
binutils/ChangeLog:
* configure.ac: Remove AC_PREREQ.
* doc/Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus, add
info-in-builddir no-texinfo.tex.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* config.in: Re-generate.
* configure: Re-generate.
* doc/Makefile.in: Re-generate.
config/ChangeLog:
* override.m4 (_GCC_AUTOCONF_VERSION): Bump from 2.64 to 2.69.
etc/ChangeLog:
* configure.in: Remove AC_PREREQ.
* configure: Re-generate.
gas/ChangeLog:
* Makefile.am (AUTOMAKE_OPTIONS): Remove 1.11, add subdir-objects.
(TARG_CPU_O, OBJ_FORMAT_O, ATOF_TARG_O): Add config/ prefix.
* configure.ac (TARG_CPU_O, OBJ_FORMAT_O, ATOF_TARG_O, emfiles,
extra_objects): Add config/ prefix.
* doc/as.texinfo: Rename to...
* doc/as.texi: ... this.
* doc/Makefile.am: Rename as.texinfo to as.texi throughout.
Remove DISTCLEANFILES hack.
(AUTOMAKE_OPTIONS): Remove 1.8, cygnus, add no-texinfo.tex and
info-in-builddir.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* config.in: Re-generate.
* configure: Re-generate.
* doc/Makefile.in: Re-generate.
gdb/ChangeLog:
* common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
* configure.ac: Remove AC_PREREQ, add missing quoting.
* gnulib/configure.ac: Modernize usage of
AC_INIT/AM_INIT_AUTOMAKE. Remove AC_PREREQ.
* gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
(AUTOMAKE_VERSION): Bump to 1.15.1.
* configure: Re-generate.
* config.in: Re-generate.
* aclocal.m4: Re-generate.
* gnulib/aclocal.m4: Re-generate.
* gnulib/config.in: Re-generate.
* gnulib/configure: Re-generate.
* gnulib/import/Makefile.in: Re-generate.
gdb/gdbserver/ChangeLog:
* configure.ac: Remove AC_PREREQ, add missing quoting.
* configure: Re-generate.
* config.in: Re-generate.
* aclocal.m4: Re-generate.
gdb/testsuite/ChangeLog:
* configure.ac: Remove AC_PREREQ.
* configure: Re-generate.
gold/ChangeLog:
* configure.ac: Remove AC_PREREQ, add missing quoting and usage
of AC_LANG_SOURCE.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* configure: Re-generate.
* testsuite/Makefile.in: Re-generate.
gprof/ChangeLog:
* configure.ac: Remove AC_PREREQ.
* Makefile.am: Remove DISTCLEANFILES hack.
(AUTOMAKE_OPTIONS): Remove 1.11, add info-in-builddir.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* configure: Re-generate.
* gconfig.in: Re-generate.
intl/ChangeLog:
* configure.ac: Add AC_USE_SYSTEM_EXTENSIONS, remove AC_PREREQ.
* configure: Re-generate.
* config.h.in: Re-generate.
* aclocal.m4: Re-generate.
ld/ChangeLog:
* configure.ac: Remove AC_PREREQ.
* Makefile.am: Remove DISTCLEANFILES hack, rename ld.texinfo to
ld.texi, ldint.texinfo to ldint.texi throughout.
(AUTOMAKE_OPTIONS): Add info-in-builddir.
* README: Rename ld.texinfo to ld.texi, ldint.texinfo to
ldint.texi throughout.
* gen-doc.texi: Likewise.
* h8-doc.texi: Likewise.
* ld.texinfo: Rename to ...
* ld.texi: ... this.
* ldint.texinfo: Rename to ...
* ldint.texi: ... this.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* config.in: Re-generate.
* configure: Re-generate.
libdecnumber/ChangeLog:
* configure.ac: Remove AC_PREREQ.
* configure: Re-generate.
* aclocal.m4.
libiberty/ChangeLog:
* configure.ac: Remove AC_PREREQ.
* configure: Re-generate.
* config.in: Re-generate.
opcodes/ChangeLog:
* Makefile.am (AUTOMAKE_OPTIONS): Remove 1.11.
* configure.ac: Remove AC_PREREQ.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* configure: Re-generate.
readline/ChangeLog.gdb:
* configure: Re-generate.
* examples/rlfe/configure: Re-generate.
sim/ChangeLog:
* All configure.ac: Remove AC_PREREQ.
* All configure: Re-generate.
zlib/ChangeLog.bin-gdb:
* configure.ac: Modernize AC_INIT call, remove AC_PREREQ.
* Makefile.am (AUTOMAKE_OPTIONS): Remove 1.8, cygnus, add
foreign.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* configure: Re-generate.
commit d856f9a8d64ef35b66000c42981f2f66f133d794
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jun 18 11:31:15 2018 -0400
include: Sync with GCC
Bring changes from GCC in shared headers.
include/ChangeLog:
Sync with GCC
2018-05-24 Tom Rix <trix@juniper.net>
* dwarf2.def (DW_FORM_strx*, DW_FORM_addrx*): New.
2017-11-20 Kito Cheng <kito.cheng@gmail.com>
* longlong.h [__riscv] (__umulsidi3): Define.
[__riscv] (umul_ppmm): Likewise.
[__riscv] (__muluw3): Likewise.
commit 6ae502670996ec6e8b574dbaa4577d79fa9e9799
Author: Pedro Alves <palves@redhat.com>
Date: Tue Jun 19 18:16:40 2018 +0100
Silence -Wmaybe-uninitialized warning in minsyms.c:lookup_minimal_symbol_by_pc_section
Compiling with GCC 8.1 shows this warning:
gdb/minsyms.c: In function 'bound_minimal_symbol lookup_minimal_symbol_by_pc_section(CORE_ADDR, obj_section*, lookup_msym_prefer)':
gdb/minsyms.c:825:40: warning: 'want_type' may be used uninitialized in this function [-Wmaybe-uninitialized]
&& MSYMBOL_TYPE (&msymbol[hi]) != want_type
That warning is a false positive, because the switch that converts
enum lookup_msym_prefer values to enum enum minimal_symbol_type values
has a case for every lookup_msym_prefer enumerator:
switch (prefer)
{
case lookup_msym_prefer::TEXT:
want_type = mst_text;
break;
case lookup_msym_prefer::TRAMPOLINE:
want_type = mst_solib_trampoline;
break;
case lookup_msym_prefer::GNU_IFUNC:
want_type = mst_text_gnu_ifunc;
break;
}
The problem is that GCC assumes that enum variables may hold values
other than the named enumerators (like e.g., "lookup_msym_prefer
prefer = (lookup_msym_prefer) 10;").
Rework the code a bit, adding a gdb_assert to make it explicit to the
compiler that want_type is initialized in all normal-return paths.
gdb/ChangeLog:
2018-06-19 Pedro Alves <palves@redhat.com>
* minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
(lookup_minimal_symbol_by_pc_section): ... here with
gdb_assert_not_reached added.
commit 61b04dd04ac2c64d455bc6e17f08a106305b06b3
Author: Pedro Alves <palves@redhat.com>
Date: Tue Jun 19 16:30:13 2018 +0100
Change inline frame breakpoint skipping logic (fix gdb.gdb/selftest.exp)
Currently, gdb.gdb/selftest.exp fails if you build GDB with
optimization (-O2, etc.).
The reason is that after setting a breakpoint in captured_main, we
stop at:
...
Breakpoint 1, captured_main_1 (context=<optimized out>) at src/gdb/main.c:492
...
while selftest_setup expects a stop at captured_main.
Here, captured_main_1 has been inlined into captured_main, and
captured_main has been inlined into gdb_main:
...
$ nm ./build/gdb/gdb | egrep ' [tT] .*captured_main|gdb_main' | c++filt
000000000061b950 T gdb_main(captured_main_args*)
...
Indeed, the two inlined functions show up in the backtrace:
...
(gdb) bt
#0 captured_main_1 (context=<optimized out>) at main.c:492
#1 captured_main (data=<optimized out>) at main.c:1147
#2 gdb_main (args=args@entry=0x7fffffffdb80) at main.c:1173
#3 0x000000000040fea5 in main (argc=<optimized out>, argv=<optimized out>)
at gdb.c:32
...
We're now stopping at captured_main_1 because commit ddfe970e6bec
("Don't elide all inlined frames") makes GDB present a stop at the
innermost inlined frame if the program stopped by a user breakpoint.
Now, the selftest.exp testcase explicitly asks to stop at
"captured_main", not "captured_main_1", so I'm thinking that it's
GDB'S behavior that should be improved. That is what this commit
does, by only showing a stop at an inline frame if the user breakpoint
was set in that frame's block.
Before this commit:
(top-gdb) b captured_main
Breakpoint 1 at 0x792f99: file src/gdb/main.c, line 492.
(top-gdb) r
Starting program: build/gdb/gdb
Breakpoint 1, captured_main_1 (context=<optimized out>) at src/gdb/main.c:492
492 lim_at_start = (char *) sbrk (0);
(top-gdb)
After this commit, we now instead get:
(top-gdb) b captured_main
Breakpoint 1 at 0x791339: file src/gdb/main.c, line 492.
(top-gdb) r
Starting program: build/gdb/gdb
Breakpoint 1, captured_main (data=<optimized out>) at src/gdb/main.c:1147
1147 captured_main_1 (context);
(top-gdb)
and:
(top-gdb) b captured_main_1
Breakpoint 2 at 0x791339: file src/gdb/main.c, line 492.
(top-gdb) r
Starting program: build/gdb/gdb
Breakpoint 2, captured_main_1 (context=<optimized out>) at src/gdb/main.c:492
492 lim_at_start = (char *) sbrk (0);
(top-gdb)
Note that both captured_main and captured_main_1 resolved to the same
address, 0x791339. That is necessary to trigger the issue in
question. The gdb.base/inline-break.exp testcase currently does not
exercise that, but the new test added by this commit does. That new
test fails without the GDB fix and passes with the fix. No
regressions on x86-64 GNU/Linux.
While at it, the THIS_PC comparison in stopped_by_user_bp_inline_frame
is basically a nop, so just remove it -- if a software or hardware
breakpoint explains the stop, then it must be that it was installed at
the current PC.
gdb/ChangeLog:
2018-06-19 Pedro Alves <palves@redhat.com>
* inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
parameter with a block parameter. Compare location's block symbol
with the frame's block instead of addresses.
(skip_inline_frames): Pass the current block instead of the
frame's address. Break out as soon as we determine the frame
should not be skipped.
gdb/testsuite/ChangeLog:
2018-06-19 Pedro Alves <palves@redhat.com>
* gdb.opt/inline-break.c (func_inline_callee, func_inline_caller)
(func_extern_caller): New.
(main): Call func_extern_caller.
* gdb.opt/inline-break.exp: Add tests for inline frame skipping
logic change.
commit 3a075e5628e345701902fd696b4f27941a6b87d0
Author: Andreas Schwab <schwab@suse.de>
Date: Tue Jun 19 16:39:40 2018 +0200
Fix ChangeLog entry
commit 39e07931b1be69b13acb8322687f825bd00afe91
Author: Andreas Schwab <schwab@suse.de>
Date: Mon Jun 18 10:29:31 2018 +0200
readelf: Handle more RISC-V relocations
* readelf.c (is_16bit_abs_reloc): Handle R_RISCV_SET16.
(is_8bit_abs_reloc): New function.
(is_6bit_abs_reloc): New function.
(is_6bit_inplace_sub_reloc): New function.
(apply_relocations): Use them. Handle 6-bit relocations.
commit f63b508a8709da08448ea68c9db7c5d9f168da0c
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Mon Jun 18 20:44:50 2018 -0400
Fix ChangeLog merge conflict
I noticed that gdb/testsuite/ChangeLog had some conflict markers... this
patch fixes it.
commit e31716b076446c171d2fcd6a4d4ab7d04e618525
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Jun 19 00:01:05 2018 +0000
Automatic date update in version.in
commit e054112458e12cb562cf84cabcb1970ca5ef1ff1
Author: Eric Botcazou <ebotcazou@gcc.gnu.org>
Date: Tue Jun 19 00:05:40 2018 +0200
This was already applied on the GCC side.
* Makefile.def (fortran): Add check-target-libgomp-fortran.
* Makefile.tpl (check-target-libgomp-fortran): New phony target.
* Makefile.in: Regenerate.
* configure: Regenerate.
commit bf2977b5f3d25779cdc06ba79c05244d70bd8b59
Author: Weimin Pan <weimin.pan@oracle.com>
Date: Mon Jun 18 21:15:13 2018 +0000
Fix failure to find member of a typedef base class
The test case below demonstrates the problem, as described in this PR's Comment 5:
typedef struct {
int x;
} A;
struct C : A {
int y;
};
int main()
{
C c;
return 55;
}
$ gdb a.out
(gdb) ptype C::x
Internal error: non-aggregate type to value_struct_elt_for_reference
In value_struct_elt_for_reference(), need to call check_typedef() on
the aggregate type to handle the case of *curtype being ptr->typedef.
Tested on x86_64-linux. No regressions.
commit c4eb05ff9a3739378f8a846751da4d0e221b4c8c
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jun 18 16:21:30 2018 -0400
Remove current_traceframe declaration
The variable has been removed in c12a508 ("Add client_state struct."),
remove the leftover declaration.
gdb/gdbserver/ChangeLog:
* tracepoint.h (current_traceframe): Remove declaration.
commit f709fabb61246953e68ae46478a3b269c0615fce
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 27 09:33:24 2018 -0600
Use unique_xmalloc_ptr in solib-aix.c
This removes a cleanup from solib-aix.c via unique_xmalloc_ptr.
gdb/ChangeLog
2018-06-18 Tom Tromey <tom@tromey.com>
* solib-aix.c (solib_aix_get_section_offsets): Return
unique_xmalloc_ptr.
(solib_aix_solib_create_inferior_hook): Update.
commit 668eb2f045ea535976cf484355831a8808b5ff35
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 27 09:31:26 2018 -0600
Use unique_xmalloc_ptr in darwin_current_sos
This changes darwin_current_sos to use unique_xmalloc_ptr rather than
a cleanup.
gdb/ChangeLog
2018-06-18 Tom Tromey <tom@tromey.com>
* solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
commit 309822ca289d602b9f9baf4760329ddd08b1d204
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 27 09:27:56 2018 -0600
Use unique_xmalloc_ptr in two solib functions
This removes a couple of cleanups by using unique_xmalloc_ptr instead.
These two changes are combined because the two functions are very
similar.
gdb/ChangeLog
2018-06-18 Tom Tromey <tom@tromey.com>
* solib-frv.c (frv_relocate_main_executable): Use
unique_xmalloc_ptr.
* solib-dsbt.c (dsbt_relocate_main_executable): Use
unique_xmalloc_ptr.
commit 06424eac62da949519c0c641fbc3e8372a9c7f0b
Author: Tom Tromey <tom@tromey.com>
Date: Tue May 29 13:51:58 2018 -0600
Remove resume_section_map_updates_cleanup
This removes resume_section_map_updates_cleanup, replacing it with a
scoped_restore.
Tested by the buildbot.
gdb/ChangeLog
2018-06-18 Tom Tromey <tom@tromey.com>
* objfiles.h (inhibit_section_map_updates): Update.
(resume_section_map_updates, resume_section_map_updates_cleanup):
Remove.
* solib-svr4.c (svr4_handle_solib_event): Update.
* objfiles.c (inhibit_section_map_updates): Return
scoped_restore_tmpl<int>.
(resume_section_map_updates, resume_section_map_updates_cleanup):
Remove.
commit b4be9fadea469e2c937c81a8f1d3243206f9bcfc
Author: Tom Tromey <tom@tromey.com>
Date: Mon May 21 12:35:59 2018 -0600
Use unique_xmalloc_ptr for read_string
This changes read_string's "buffer" out-parameter to be a
unique_xmalloc_ptr, then updates the users. This allows for the
removal of some cleanups.
I chose unique_xmalloc_ptr rather than byte_vector here due to the way
Guile unwinding seems to work.
Tested by the buildbot.
gdb/ChangeLog
2018-06-18 Tom Tromey <tom@tromey.com>
* valprint.h (read_string): Update.
* valprint.c (read_string): Change type of "buffer".
(val_print_string): Update.
* python/py-value.c (valpy_string): Update.
* language.h (struct language_defn) <la_get_string>: Change
type of "buffer".
(default_get_string, c_get_string): Update.
* language.c (default_get_string): Change type of "buffer".
* guile/scm-value.c (gdbscm_value_to_string): Update.
* c-lang.c (c_get_string): Change type of "buffer".
commit 3f0dbd670b59aade6224aadcbc3a1943a4645a68
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jun 7 16:49:57 2018 -0600
Remove cleanups from ser-mingw.c
This removes the only cleanup from ser-mingw.c, replacing it with a
specialization of std::unique_ptr.
Tested by the buildbot.
gdb/ChangeLog
2018-06-18 Tom Tromey <tom@tromey.com>
* ser-mingw.c (struct pipe_state_destroyer): New.
(pipe_state_up): New typedef.
(cleanup_pipe_state): Remove.
(pipe_windows_open): Use pipe_state_up. Don't release argv.
commit 69d340c68449f238fe665abf4a3a7989cd2d8376
Author: Tom Tromey <tom@tromey.com>
Date: Fri Jun 1 23:02:37 2018 -0600
Remove la_error
While working on the parser code, I noticed that yyerror is exported
from each parser. It is used by this code in parse.c:
TRY
{
if (lang->la_parser (&ps))
lang->la_error (NULL);
}
However, it seems to me that la_error will never be called here,
because in every case, la_parser throws an exception on error -- each
implementation of yyerror just calls error.
So, this patch removes la_error and makes all the yyerror functions
static. This is handy primarily because it makes it simpler to make
the expression parsers pure.
Tested by the buildbot.
gdb/ChangeLog
2018-06-18 Tom Tromey <tom@tromey.com>
* rust-lang.h (rust_yyerror): Don't declare.
* rust-lang.c (rust_language_defn): Update.
* rust-exp.y (yyerror): Now static.
* parse.c (parse_exp_in_context_1): Update.
* p-lang.h (p_yyerror): Don't declare.
* p-lang.c (p_language_defn): Update.
* p-exp.y (yyerror): Now static.
* opencl-lang.c (opencl_language_defn): Update.
* objc-lang.c (objc_language_defn): Update.
* m2-lang.h (m2_yyerror): Don't declare.
* m2-lang.c (m2_language_defn): Update.
* m2-exp.y (yyerror): Now static.
* language.h (struct language_defn) <la_error>: Remove.
* language.c (unk_lang_error): Remove.
(unknown_language_defn, auto_language_defn): Remove.
* go-lang.h (go_yyerror): Don't declare.
* go-lang.c (go_language_defn): Update.
* go-exp.y (yyerror): Now static.
* f-lang.h (f_yyerror): Don't declare.
* f-lang.c (f_language_defn): Update.
* f-exp.y (yyerror): Now static.
* d-lang.h (d_yyerror): Don't declare.
* d-lang.c (d_language_defn): Update.
* d-exp.y (yyerror): Now static.
* c-lang.h (c_yyerror): Don't declare.
* c-lang.c (c_language_defn, cplus_language_defn)
(asm_language_defn, minimal_language_defn): Update.
* c-exp.y (yyerror): Now static.
* ada-lang.h (ada_yyerror): Don't declare.
* ada-lang.c (ada_language_defn): Update.
* ada-exp.y (yyerror): Now static.
commit db67d458959d211835f78d8f2aebb5ae84eb42e7
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jun 18 09:37:12 2018 -0400
configure.ac: Sync with GCC
Here's an extra one... I'll need to make some changes to the root
configure.ac. This patch makes sure it is in sync with GCC first.
ChangeLog:
* configure.ac: Sync with GCC, remove MPX-related things.
commit f57a3bca61357a599be99552aaa6084bd8276682
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Fri Jun 15 23:07:44 2018 -0400
libdecnumber: Sync with GCC
commit b0f49e3fd776bd64d55c76f001f353c1327d3001
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jun 18 09:37:44 2018 -0400
zlib: Sync with GCC
zlib/ChangeLog.bin-gdb:
Sync with FSF GCC sources.
commit 978588dc5854b02dc24e0eed18741415176753d8
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Fri Jun 15 23:07:42 2018 -0400
libiberty: Sync with GCC
Also sync include/simple-object.h, which goes together with the change
in libiberty.
commit 37f980dc03cc85795ea2e4de4ca69d3d7d1153c7
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jun 18 09:32:39 2018 -0400
config: Sync with GCC
... and re-generate all possible configure files, since they may depend
on things in config/.
config/ChangeLog:
Sync with GCC
2018-06-08 Martin Liska <mliska@suse.cz>
* bootstrap-mpx.mk: Remove.
2018-05-10 Martin Liska <mliska@suse.cz>
PR bootstrap/64914
* bootstrap-ubsan.mk: Define UBSAN_BOOTSTRAP.
2018-05-09 Joshua Watt <jpewhacker@gmail.com>
* ax_pthread.m4: Add file.
2018-05-08 Richard Biener <rguenther@suse.de>
PR bootstrap/85571
* bootstrap-lto-noplugin.mk: Disable compare.
* bootstrap-lto.mk: Supply contrib/compare-lto for do-compare.
2018-04-24 H.J. Lu <hongjiu.lu@intel.com>
PR bootstrap/85490
* bootstrap-cet.mk (STAGE4_CFLAGS): New.
2018-04-24 H.J. Lu <hongjiu.lu@intel.com>
PR target/85485
* bootstrap-cet.mk (STAGE2_CFLAGS): Remove -mcet.
(STAGE3_CFLAGS): Likewise.
2018-04-24 H.J. Lu <hongjiu.lu@intel.com>
PR target/85485
* cet.m4 (GCC_CET_FLAGS): Replace -mcet with -mshstk.
2018-04-19 Jakub Jelinek <jakub@redhat.com>
* cet.m4 (GCC_CET_FLAGS): Default to --disable-cet, replace
--enable-cet=default with --enable-cet=auto.
2018-04-18 David Malcolm <dmalcolm@redhat.com>
PR jit/85384
* acx.m4 (GCC_BASE_VER): Remove \$\$ from sed expression.
commit 77236b8349e95c869179b1efa4e6c2ee5c878141
Author: Alan Modra <amodra@gmail.com>
Date: Mon Jun 18 16:42:23 2018 +0930
Build ifunc tests when non-native
Plus a number of fixes to the pr23169 tests.
* testsuite/lib/ld-lib.exp (check_ifunc_available): Pass without
running executable when non-native.
(check_ifunc_attribute_available): Likewise.
* testsuite/ld-ifunc/pr23169a.rd: Remove extraneous lines. Match
st_other strings. Pass when func is an ifunc.
* testsuite/ld-ifunc/pr23169b.rd: Remove extraneous lines. Correct
reloc regexp. Correct match-anything line.
* testsuite/ld-ifunc/pr23169c.rd: Remove extraneous lines. Match
st_other strings.
commit ed1299fe460812ad4bbdc2192d0c0cbeba3d6b66
Author: Mephi <mephi42@gmail.com>
Date: Mon Jun 18 12:56:44 2018 +0100
Add support for the TLV relocation generated by LLVM for x86_64 MACH-O targets.
PR 23297
* mach-o-x86-64.c (x86_64_howto_table): Add entry for
BFD_RELOC_MACH_O_X86_64_RELOC_TLV.
(bfd_mach_o_x86_64_canonicalize_one_reloc): Handle the new reloc.
(bfd_mach_o_x86_64_swap_reloc_out): Likewise.
* reloc.c (BFD_RELOC_MACH_O_X86_64_TV): New entry.
* bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.
commit 02895270ec7243f46ea3e84dc385515533dc0139
Author: Alan Hayward <alan.hayward@arm.com>
Date: Fri Jun 15 12:23:23 2018 +0100
Ptrace support for AArch64 SVE gdbserver
Add checks to detect SVE tdesc. Easiest way to do this is by checking the
size of the vector registers.
Use the common aarch64 ptrace copy functions for reading/writing registers.
A wrapper is required due to the common functions using reg_buffer_common.
gdbserver/
* linux-aarch64-low.c (is_sve_tdesc): New function.
(aarch64_sve_regs_copy_to_regcache): Likewise.
(aarch64_sve_regs_copy_from_regcache): Likewise.
(aarch64_regs_info): Add SVE checks.
(initialize_low_arch): Initialize SVE.
commit e9902bfc28b80190c76ffe5fad3bb73fd4a2ba28
Author: Alan Hayward <alan.hayward@arm.com>
Date: Fri Jun 15 12:21:31 2018 +0100
Ptrace support for Aarch64 SVE
Add support for reading and writing registers for Aarch64 SVE.
We need to support the cases where the kernel only gives us a
fpsimd structure. This occurs when there is no active SVE state
in the kernel (for example, after starting a new process).
Added checks to make sure the vector length has not changed whilst
the process is running.
gdb/
* aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
(store_sveregs_to_thread): Likewise.
(aarch64_linux_fetch_inferior_registers): Check for SVE.
(aarch64_linux_store_inferior_registers): Likewise.
* nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
function.
(aarch64_sve_regs_copy_to_regcache): Likewise.
(aarch64_sve_regs_copy_from_regcache): Likewise.
* nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
declaration.
(aarch64_sve_regs_copy_to_regcache): Likewise.
(aarch64_sve_regs_copy_from_regcache): Likewise.
(sve_context): Structure from Linux headers.
(SVE_SIG_ZREGS_SIZE): Define from Linux headers.
(SVE_SIG_ZREG_SIZE): Likewise.
(SVE_SIG_PREG_SIZE): Likewise.
(SVE_SIG_FFR_SIZE): Likewise.
(SVE_SIG_REGS_OFFSET): Likewise.
(SVE_SIG_ZREGS_OFFSET): Likewise.
(SVE_SIG_ZREG_OFFSET): Likewise.
(SVE_SIG_ZREGS_SIZE): Likewise.
(SVE_SIG_PREGS_OFFSET): Likewise.
(SVE_SIG_PREG_OFFSET): Likewise.
(SVE_SIG_PREGS_SIZE): Likewise.
(SVE_SIG_FFR_OFFSET): Likewise.
(SVE_SIG_REGS_SIZE): Likewise.
(SVE_SIG_CONTEXT_SIZE): Likewise.
(SVE_PT_REGS_MASK): Likewise.
(SVE_PT_REGS_FPSIMD): Likewise.
(SVE_PT_REGS_SVE): Likewise.
(SVE_PT_VL_INHERIT): Likewise.
(SVE_PT_VL_ONEXEC): Likewise.
(SVE_PT_REGS_OFFSET): Likewise.
(SVE_PT_FPSIMD_OFFSET): Likewise.
(SVE_PT_FPSIMD_SIZE): Likewise.
(SVE_PT_SVE_ZREG_SIZE): Likewise.
(SVE_PT_SVE_PREG_SIZE): Likewise.
(SVE_PT_SVE_FFR_SIZE): Likewise.
(SVE_PT_SVE_FPSR_SIZE): Likewise.
(SVE_PT_SVE_FPCR_SIZE): Likewise.
(__SVE_SIG_TO_PT): Likewise.
(SVE_PT_SVE_OFFSET): Likewise.
(SVE_PT_SVE_ZREGS_OFFSET): Likewise.
(SVE_PT_SVE_ZREG_OFFSET): Likewise.
(SVE_PT_SVE_ZREGS_SIZE): Likewise.
(SVE_PT_SVE_PREGS_OFFSET): Likewise.
(SVE_PT_SVE_PREG_OFFSET): Likewise.
(SVE_PT_SVE_PREGS_SIZE): Likewise.
(SVE_PT_SVE_FFR_OFFSET): Likewise.
(SVE_PT_SVE_FPSR_OFFSET): Likewise.
(SVE_PT_SVE_FPCR_OFFSET): Likewise.
(SVE_PT_SVE_SIZE): Likewise.
(SVE_PT_SIZE): Likewise.
(HAS_SVE_STATE): New define.
gdbserver/
* Makefile.in: Add aarch64-sve-linux-ptrace.c.
commit 17a1cc89b5706f0ad8142ab85d62bce33249e905
Author: Alan Hayward <alan.hayward@arm.com>
Date: Thu Jun 14 10:10:03 2018 +0100
Add Aarch64 SVE compatibility macros
This header provides compatibility support for SVE allow building
even when the underlying host system lacks support for SVE.
If the binary is then run on an SVE-enabled kernel then support
will automatically be available.
gdb/
* nat/aarch64-sve-linux-sigcontext.h: New file.
* nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
new files.
(SVE_VQ_MIN): Likewise.
(SVE_VQ_MAX): Likewise.
(SVE_VL_MIN): Likewise.
(SVE_VL_MAX): Likewise.
(SVE_NUM_ZREGS): Likewise.
(SVE_NUM_PREGS): Likewise.
(sve_vl_valid): Likewise.
(struct user_sve_header): Likewise.
commit 0fe3a558306ba4792c96e7258bd7209a206e2867
Author: Tom de Vries <tdevries@suse.de>
Date: Mon Jun 11 13:34:57 2018 +0200
[gdb/testsuite/ada] Fix number-of-bp test in bp_inlined_func.exp
At the moment, bp_inlined_func.exp passes for a combined current gcc and
gdb-binutils repos build but fails for a build with system gcc (7.3.1) and
ld (2.29.1).
It checks for 4 breakpoints on read_small:
...
gdb_test "break read_small" \
"Breakpoint $decimal at $hex: read_small\\. \\(4 locations\\)" \
"set breakpoint at read_small"
...
and fails because it gets 5 breakpoint locations instead:
...
(gdb) break read_small
Breakpoint 2 at 0x401f9a: read_small. (5 locations)
(gdb) FAIL: gdb.ada/bp_inlined_func.exp: set breakpoint at read_small
...
The 4 expected breakpoint locations are inlined versions of read_small, and
the 5th breakpoint location has this address:
...
(gdb) info breakpoint
Num Type Disp Enb Address What
1 breakpoint keep y <MULTIPLE>
1.1 y 0x0000000000401f9a in b.read_small
at bp_inlined_func/b.adb:20
...
which is the read_small function itself:
...
(gdb) x 0x0000000000401f9a
0x401f9a <b__read_small+4>: 0x22f8058b
...
This patch updates the test to allow 5 breakpoint locations.
Tested on the configurations mentioned above, on x86_64.
2018-06-18 Tom de Vries <tdevries@suse.de>
* gdb.ada/bp_inlined_func.exp: Allow 5 breakpoint locations.
commit fd8079f900805d333e4b39657b8da1bb13dfe8cb
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Jun 18 00:01:09 2018 +0000
Automatic date update in version.in
commit 8887b88af8e3cba76ed9f28c7ee8eef78ead36ec
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Jun 17 00:00:41 2018 +0000
Automatic date update in version.in
commit 7010835a6c5fd3679feae7e6345f2f10d4d761b4
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Thu May 10 23:52:49 2018 +0100
gdb: Don't drop SIGSTOP during stop_all_threads
This patch fixes an issue where GDB would sometimes hang when
attaching to a multi-threaded process. This issue was especially
likely to trigger if the machine (running the inferior) was under
load.
In summary, the problem is an imbalance between two functions in
linux-nat.c, stop_callback and stop_wait_callback. In stop_callback
we send SIGSTOP to a thread, but _only_ if the thread is not already
stopped, and if it is not signalled, which means it should stop soon.
In stop_wait_callback we wait for the SIGSTOP to arrive, however, we
are aware that the thread might have been signalled for some other
reason, and so if a signal other than SIGSTOP causes the thread to
stop then we stash that signal away so it can be reported back later.
If we get a SIGSTOP then this is discarded, after all, this signal was
sent from stop_callback. Except that this might not be the case, it
could be that SIGSTOP was sent to a thread from elsewhere in GDB, in
which case we would not have sent another SIGSTOP from stop_callback
and the SIGSTOP received in stop_wait_callback should not be ignored.
Below I've laid out the exact sequence of events that I saw that lead
me to track down the above diagnosis.
After attaching to the inferior GDB sends a SIGSTOP to all of the
threads and then returns to the event loop waiting for interesting
things to happen.
Eventually the first target event is detected (this will be the first
SIGSTOP arriving) and GDB calls inferior_event_handler which calls
fetch_inferior_event. Inside fetch_inferior_event GDB calls
do_target_wait which calls target_wait to find a thread with an event.
The target_wait call ends up in linux_nat_wait_1, which first checks
to see if any threads already have stashed stop events to report, and
if there are none then we enter a loop fetching as many events as
possible out of the kernel. This event fetching is non-blocking, and
we give up once the kernel has no more events ready to give us.
All of the events from the kernel are passed through
linux_nat_filter_event which stashes the wait status for all of the
threads that reported a SIGSTOP, these will be returned by future
calls to linux_nat_wait_1.
Lets assume for a moment that we've attached to a multi-threaded
inferior, and that all but one thread has reported its stop during the
initial wait call in linux_nat_wait_1. The other thread will be
reporting a SIGSTOP, but the kernel has not yet managed to deliver
that signal to GDB before GDB gave up waiting and continued handling
the events it already had. GDB selects one of the threads that has
reported a SIGSTOP and passes this thread ID back to
fetch_inferior_event.
To handle the thread's SIGSTOP, GDB calls handle_signal_stop, which
calls stop_all_threads, this calls wait_one, which in turn calls
target_wait.
The first call to target_wait at this point will result in a stashed
wait status being returned, at which point we call setup_inferior.
The call to setup_inferior leads to a call into try_thread_db_load_1
which results in a call to linux_stop_and_wait_all_lwps. This in turn
calls stop_callback on each thread followed by stop_wait_callback on
each thread.
We're now ready to make the mistake. In stop_callback we see that our
problem thread is not stopped, but is signalled, so it should stop
soon. As a result we don't send another SIGSTOP.
We then enter stop_wait_callback, eventually the problem thread stops
with SIGSTOP which we _incorrectly_ assume came from stop_callback,
and we discard.
Once stop_wait_callback has done its damage we return from
linux_stop_and_wait_all_lwps, finish in try_thread_db_load_1, and
eventually unwind back to the call to setup_inferior in
stop_all_threads. GDB now loops around, and performs another
target_wait to get the next event from the inferior.
The target_wait calls causes us to once again reach linux_nat_wait_1,
and we pass through some code that calls resume_stopped_resumed_lwps.
This allows GDB to resume threads that are physically stopped, but
which GDB doesn't see any good reason for the thread to remain
stopped. In our case, the problem thread which had its SIGSTOP
discarded is stopped, but doesn't have a stashed wait status to
report, and so GDB sets the thread going again.
We are now stuck waiting for an event on the problem thread that might
never arrive.
When considering how to write a test for this bug I struggled. The
issue was only spotted _randomly_ when a machine was heavily loaded
with many multi-threaded applications, and GDB was being attached (by
script) to all of these applications in parallel. In one reproducer I
required around 5 applications each of 5 threads per machine core in
order to reproduce the bug 2 out of 3 times.
What we really want to do though is simulate the kernel being slow to
report events through waitpid during the initial attach. The solution
I came up with was to write an LD_PRELOAD library that intercepts
(some) waitpid calls and rate limits them to one per-second. Any more
than that simply return 0 indicating there's no event available.
Obviously this can only be applied to waitpid calls that have the
WNOHANG flag set.
Unfortunately, once you ignore a waitpid call GDB can get a bit stuck.
Usually, once the kernel has made a child status available to waitpid
GDB will be sent a SIGCHLD signal. However, if the kernel makes 5
child statuses available but, due to the preload library we only
collect one of them, then the kernel will not send any further SIGCHLD
signals, and so, when GDB, thinking that the remaining statuses have
not yet arrived sits waiting for a SIGCHLD it will be disappointed.
The solution, implemented within the preload library, is that, when we
hold back a waitpid result from GDB we spawn a new thread. This
thread delays for a short period, and then sends GDB a SIGCHLD. This
causes GDB to retry the waitpid, at which point sufficient time has
passed and our library allows the waitpid call to complete.
gdb/ChangeLog:
* linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
was requested by GDB.
gdb/testsuite/ChangeLog:
* gdb.threads/attach-slow-waitpid.c: New file.
* gdb.threads/attach-slow-waitpid.exp: New file.
* gdb.threads/slow-waitpid.c: New file.
commit c8e17638904b9cbe845ddf9a7b08149f9db63866
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Jun 16 00:00:56 2018 +0000
Automatic date update in version.in
commit 479b3ef4a35ce578417af4619c5e87477e658333
Author: Tom de Vries <tdevries@suse.de>
Date: Thu Jun 14 23:52:30 2018 +0200
[gdb] Add me to write-after-approval section in MAINTAINERS
I've committed one patch modifying gdb ([gdb/cli] Honour 'print pretty' when
printing result of finish command) and I'm covered by the Novell blanket
copyright assignment. So AFAIU, I qualify for write-after-approval.
This patch adds me to the MAINTAINERS file in the write-after-approval section.
2018-06-15 Tom de Vries <tdevries@suse.de>
* MAINTAINERS (Write After Approval): Add Tom de Vries.
commit 5785bb826b2618831af26bc19cf7db2c80efc380
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Jun 15 00:00:48 2018 +0000
Automatic date update in version.in
commit 8199b8f4d45b2240d09142f1df70849dda2cc638
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Thu Jun 14 18:38:23 2018 -0400
update-gnulib.sh: Report required versions of autoconf/aclocal
Update the messages printed when the wrong version of autoconf/aclocal
is found to include the expected version too, like we already do for
automake.
gdb/ChangeLog:
* gnulib/update-gnulib.sh: Print expected versions of
autoconf/aclocal.
commit 55c748a1c01f33cec0f762969db1bae457e8bcca
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Thu Jun 14 18:23:39 2018 -0400
type alignment: Use type_length_units
The type alignment value is returned in 8-bit-bytes instead of target
memory addressable units. For example, on a target with 16-bit-bytes
where sizeof(int) == 1 (one addressable unit), alignof(int) currently
returns 2. After, this patch, it returns 1.
gdb/ChangeLog:
* arch-utils.c (default_type_align): Use type_length_units.
* gdbtypes.c (type_align): Use type_length_units.
commit b9a3c020eab9f6e73a439592b3ba8f8cdadcaa1e
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Thu Jun 14 17:46:15 2018 -0400
Fix "beneath" conversion on AIX
GDB build on AIX is broken according to BuildBot:
../../binutils-gdb/gdb/aix-thread.c: In member function 'virtual void aix_thread_target::mourn_inferior()':
../../binutils-gdb/gdb/aix-thread.c:1735:34: error: 'beneath' cannot be used as a function
target_ops *beneath = beneath ();
^
This obvious commit fixes it. There's apparently another issue
breaking the build there, but that's unrelated.
gdb/ChangeLog:
2018-06-14 Sergio Durigan Junior <sergiodj@redhat.com>
* aix-thread.c (aix_thread_target::xfer_partial): Use
"beneath" as a method.
commit 6f20c942c3dbc08d02f74e4d508e19f8617bc5e3
Author: Faraz Shahbazker <Faraz.Shahbazker@mips.com>
Date: Thu Jun 14 21:34:49 2018 +0100
MIPS: Add Global INValidate ASE support
Add support for the Global INValidate Application Specific Extension
for Release 6 of the MIPS Architecture.
[1] "MIPS Architecture for Programmers Volume II-A: The MIPS32
Instruction Set Manual", Imagination Technologies Ltd., Document
Number: MD00086, Revision 6.06, December 15, 2016, Section 3.2
"Alphabetical List of Instructions", pp. 187-191
bfd/
* elfxx-mips.c (print_mips_ases): Add GINV extension.
binutils/
* readelf.c (print_mips_ases): Add GINV extension.
gas/
* NEWS: Mention MIPS Global INValidate ASE support.
* config/tc-mips.c (options): Add OPTION_GINV and OPTION_NO_GINV.
(md_longopts): Likewise.
(mips_ases): Define availability for GINV.
(mips_convert_ase_flags): Map ASE_GINV to AFL_ASE_GINV.
(md_show_usage): Add help for -mginv and -mno-ginv.
* doc/as.texinfo: Document -mginv, -mno-ginv.
* doc/c-mips.texi: Document -mginv, -mno-ginv, .set ginv and
.set noginv.
* testsuite/gas/mips/ase-errors-1.s: Add error checks for GINV
ASE.
* testsuite/gas/mips/ase-errors-2.s: Likewise.
* testsuite/gas/mips/ase-errors-1.l: Likewise.
* testsuite/gas/mips/ase-errors-2.l: Likewise.
* testsuite/gas/mips/ginv.d: New test.
* testsuite/gas/mips/ginv-err.d: New test.
* testsuite/gas/mips/ginv-err.l: New test stderr output.
* testsuite/gas/mips/ginv.s: New test source.
* testsuite/gas/mips/ginv-err.s: New test source.
* testsuite/gas/mips/mips.exp: Run the new tests.
include/
* elf/mips.h (AFL_ASE_GINV, AFL_ASE_RESERVED1): New macros.
(AFL_ASE_MASK): Update to include AFL_ASE_GINV.
* opcode/mips.h: Document "+\" operand format.
(ASE_GINV): New macro.
opcodes/
* mips-dis.c (mips_arch_choices): Add GINV to mips32r6 and
mips64r6 descriptors.
(parse_mips_ase_option): Handle -Mginv option.
(print_mips_disassembler_options): Document -Mginv.
* mips-opc.c (decode_mips_operand) <+\>: New operand format.
(GINV): New macro.
(mips_opcodes): Define ginvi and ginvt.
commit 8993072900ae3980957f704a1e3e033a22a4dcac
Author: Maciej W. Rozycki <macro@mips.com>
Date: Thu Jun 14 21:34:48 2018 +0100
MIPS: Add CRC ASE support (ChangeLog)
Add missing ChangeLog entry in gas/ for NEWS from commit 730c31740a69
("MIPS: Add CRC ASE support").
commit 74fdb8ff707f0a02b587630324d29c0755e6b5d5
Author: Tom de Vries <tdevries@suse.de>
Date: Thu Jun 14 22:25:38 2018 +0200
[gdb] Fixup incomplete patch 0dbfed25e9
commit 87a8eca781910ec2079426f309145be18df8106c
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Mon Jun 4 23:21:00 2018 +0200
Fix/improve on-line help of 'define' command.
There is an inconsistency between the doc and the online help.
=> the doc is correct, so fixing/improving the on-line help.
2018-06-14 Philippe Waroquiers <philippe.waroquiers@skynet.be>
* cli/cli-script.c (_initialize_cli_script): Fix online documentation
of 'define' command.
commit 0dbfed25e9d4a01ea3f57b76d77ffbd8c066de0d
Author: Tom de Vries <tdevries@suse.de>
Date: Sun Jun 10 16:19:17 2018 +0200
[gdb] Add 'Concept Index' entry '&' for background execution
GDB's execution commands have a foreground and background variant: f.i.,
there's 'continue' and 'continue&', and both are listed individually in the
'Command, Variable, and Function Index'. But the '&' is not listed in the
'Concept Index' as being connected with the concept background execution.
This patch adds an '&' in the 'Concept Index':
...
* $_, $__, and value history: Memory. (line 119)
+* &, background execution of commands: Background Execution.
+ (line 16)
* --annotate: Mode Options. (line 121)
...
pointing to this line in 'Background Execution':
...
To specify background execution, add a '&' to the command.
...
Build on x86_64.
2018-06-14 Tom de Vries <tdevries@suse.de>
* gdb.texinfo (Background Execution): Add @cindex for '&'.
commit 14897d65b5a279684289bf6b99136de60c31f1c0
Author: Pedro Alves <palves@redhat.com>
Date: Thu Jun 14 17:47:03 2018 +0100
Avoid gdb.base/fork-running-state.exp lingering processes
Currently, the gdb.base/fork-running-state.exp testcase leaves a few
processes lingering until a 3 minutes alarm kills them:
pedro 28308 1 0 13:55 ? 00:00:00 /home/pedro/gdb/binutils-gdb/build/gdb/testsuite/outputs/gdb.base/fork-running-state/fork-running-state
pedro 28340 1 0 13:55 ? 00:00:00 /home/pedro/gdb/binutils-gdb/build/gdb/testsuite/outputs/gdb.base/fork-running-state/fork-running-state
pedro 28372 1 0 13:55 ? 00:00:00 /home/pedro/gdb/binutils-gdb/build/gdb/testsuite/outputs/gdb.base/fork-running-state/fork-running-state
pedro 28400 1 0 13:55 ? 00:00:00 /home/pedro/gdb/binutils-gdb/build/gdb/testsuite/outputs/gdb.base/fork-running-state/fork-running-state
pedro 28431 1 0 13:55 ? 00:00:00 /home/pedro/gdb/binutils-gdb/build/gdb/testsuite/outputs/gdb.base/fork-running-state/fork-running-state
pedro 28463 1 0 13:55 ? 00:00:00 /home/pedro/gdb/binutils-gdb/build/gdb/testsuite/outputs/gdb.base/fork-running-state/fork-running-state
Those processes used to kill themselves, but that was changed by
commit f50d8a2eaea0 ("Fix gdb.base/fork-running-state.exp race").
This commit restores the self-killing, but only in the cases gdb won't
try killing the processes, thus avoiding the old race.
(The restored code in fork_parent isn't exactly the same as it was.
In this version, we're exiting immediately when 'wait' returns
success, while in the old version we'd loop again and end up in the
perror call. The output from that perror call is not expected by the
"kill inferior" tests, and would result in a test FAIL.)
gdb/testsuite/ChangeLog:
2018-06-14 Pedro Alves <palves@redhat.com>
* gdb.base/fork-running-state.c: Include <errno.h>.
(exit_if_relative_exits): New.
(fork_child): If 'exit_if_relative_exits' is true, exit if the parent
exits.
(fork_parent): If 'exit_if_relative_exits' is true, exit if the
child exits.
commit 5d9a06087942ddf4f9ab724b5b4c1a45507d8321
Author: Tom de Vries <tdevries@suse.de>
Date: Fri Jun 8 12:37:53 2018 +0200
[gdb/cli] Honour 'print pretty' when printing result of finish command
Consider this testcase:
...
struct s {
int a;
int b;
};
struct s foo ()
{
struct s r;
r.a = 1;
r.b = 2;
return r;
}
int
main (void)
{
struct s v;
v = foo ();
return v.a + v.b;
}
...
When we compile it with -g, load the exec with gdb, and run till the end of foo,
we can print r:
...
(gdb) p r
$1 = {a = 1, b = 2}
...
and by setting pretty printing to on, we can get the fields of r printed each
on its own line:
...
(gdb) set print pretty
(gdb) p r
$2 = {
a = 1,
b = 2
}
...
However, when we finish foo, the printed function result value is not using
the pretty printing setting:
...
(gdb) finish
Run till exit from #0 foo () at test.c:11
0x00000000004004c1 in main () at test.c:18
18 v = foo ();
Value returned is $3 = {a = 1, b = 2}
...
This patch fixes that by using get_user_print_options instead of
get_no_prettyformat_print_options in print_return_value_1, which gives us:
...
(gdb) finish
Run till exit from #0 foo () at test.c:11
0x00000000004004c1 in main () at test.c:18
18 v = foo ();
Value returned is $2 = {
a = 1,
b = 2
}
...
Build & reg-tested on x86_64.
2018-06-14 Tom de Vries <tdevries@suse.de>
PR cli/22573
* infcmd.c (print_return_value_1): Use get_user_print_options instead of
get_no_prettyformat_print_options.
* gdb.base/finish-pretty.c: New test.
* gdb.base/finish-pretty.exp: New file.
commit 1f6f5dba57ffbc073b1ead89647288feaaed2caf
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Jun 14 05:37:19 2018 -0700
elf: Check if the first symbol version is base version
Check VER_FLG_BASE instead of assuming that the first symbol version is
base version.
bfd/
PR binutils/23267
* elf.c (_bfd_elf_get_symbol_version_string): Check if the first
symbol version is base version.
binutils/
PR binutils/23267
* readelf.c (get_symbol_version_string): Check if the first
symbol version is base version.
commit 7b045207d1b8980add1c87b643504e3ef987e7a2
Author: Pedro Alves <palves@redhat.com>
Date: Thu Jun 14 12:54:09 2018 +0100
Revert accidental push of "Inline breakpoints" commit
commit 11ae5818f76e0af4dcf7ee069e0756ccf6901ebe
Author: Pedro Alves <palves@redhat.com>
Date: Thu Jun 14 12:25:41 2018 +0100
gdb.gdb/selftest.exp, Use multi_line to build gdb's expected startup output
This regex had to be touched at least twice these past few days. Use
multi_line to make it more readable.
Note this also tightens the regex a little bit in some spots.
gdb/testsuite/ChangeLog:
2018-06-14 Pedro Alves <palves@redhat.com>
* gdb.gdb/selftest.exp (test_with_self): Use multi_line to build
gdb's expected startup output.
commit a898ca0e0c5893c58b60a7f76225d104df240549
Author: Pedro Alves <palves@redhat.com>
Date: Thu Jun 14 12:23:56 2018 +0100
Inline breakpoints
gdb/ChangeLog:
yyyy-mm-dd Pedro Alves <palves@redhat.com>
* inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
parameter with a block parameter. Compare location's block symbol
with the frame's block instead of addresses.
(skip_inline_frames): Pass the current block instead of the
frame's address. Break out as soon as we determine the frame
should not be skipped.
gdb/testsuite/ChangeLog:
yyyy-mm-dd Pedro Alves <palves@redhat.com>
* gdb.opt/inline-break.c (func_callee, func_caller): New.
(main): Call func_caller.
commit 1d39de443a38448226ffc408290c17c54c598c39
Author: Pedro Alves <palves@redhat.com>
Date: Thu Jun 14 11:40:23 2018 +0100
Remove stale inline function handling from selftest_setup
Before commit 70ee000084aa ("[gdb] Allow function arguments in bp
print match in selftest_setup"), this pattern in selftest_setup:
-re "Starting program.*Breakpoint \[0-9\]+,.* at .*main.c:.*$function.*$gdb_prompt $" {
# $function may be inlined, so the program stops at the line
# calling $function.
pass "$description"
}
happened to match if captured_main_1 was inlined and captured_main was
not, because captured_main calls captured_main_1 first thing, which
coincidentally matches "$function.*":
Breakpoint 1, captured_main (data=<optimized out>) at src/gdb/main.c:1147
1147 captured_main_1 (context);
That would probably be better "$function .*", with a space, but I
think that even better is to remove the "may be inlined" case too now,
because since ddfe970e6bec ("Don't elide all inlined frames") GDB
presents the stop at the inline function instead of at the caller.
gdb/testsuite/ChangeLog:
2018-06-14 Pedro Alves <palves@redhat.com>
* lib/selftest-support.exp (selftest_setup): Remove inlined
function handling.
commit 70ee000084aa4fdfc00bd5284a024b65023dad35
Author: Tom de Vries <tdevries@suse.de>
Date: Tue Jun 12 15:02:10 2018 +0200
[gdb] Allow function arguments in bp print match in selftest_setup
2018-06-14 Tom de Vries <tdevries@suse.de>
* lib/selftest-support.exp (selftest_setup): Allow function arguments in
matching of breakpoint printing.
commit 11f4b608e6977e7800fbe5625c542be8cf7e241b
Author: Tom de Vries <tdevries@suse.de>
Date: Thu Jun 14 11:08:32 2018 +0200
[gdb/testsuite] Add missing ChangeLog entries
commit 7f923b7fd2a7c55f2337b3b79a2b2081a7bbe22b
Author: Alan Modra <amodra@gmail.com>
Date: Thu Jun 14 08:59:12 2018 +0930
ELF dynsyms
Many ELF targets arrange to emit a number of section symbols in
.dynsym for use by dynamic relocations. This happens before the
dynamic relocations are output, and the need for those symbols
determined. In most cases they are not needed. A proper analysis of
the need for dynamic section symbols is target specific and tedious,
so this patch just excludes them in the obvious case when no
dynamic relocations are present.
The patch also runs the new pr23161 and pr23162 tests on more targets.
bfd/
* elf-bfd.h (struct elf_link_hash_table): Add "dynamic_relocs".
* elflink.c (_bfd_elf_init_2_index_sections): Comment fix.
(_bfd_elf_add_dynamic_entry): Set "dynamic_relocs".
(_bfd_elf_link_renumber_dynsyms): Exclude all section symbols when
"dynamic_relocs" is not set.
* elfxx-mips.c (count_section_dynsyms): Likewise.
ld/
* testsuite/ld-elf/readelf.exp: Delete DUMP and selection of
variant ver_def.vd.
* testsuite/ld-elf/ver_def-tic6x.vd: Delete.
* testsuite/ld-elf/shared.exp: Run most pr23161 and pr23162 tests for
linux, nacl and gnu targets.
* testsuite/ld-mips-elf/mips-elf.exp: Set base_syms to 1.
* testsuite/ld-elf/pr23161a.rd: Don't check reloc type. Allow any
order of __bss_start, _edata and _end.
* testsuite/ld-elf/pr23161b.rd: Don't check plt and dyn relocs.
Allow and order of __bss_start, _edata and _end.
* testsuite/ld-elf/pr23162.rd: Fail if __bss_start, _edata or _end
relocs are present rather than testing for no relocations.
* testsuite/ld-aarch64/gc-plt-relocs.d,
* testsuite/ld-aarch64/ifunc-1-local.d,
* testsuite/ld-aarch64/ifunc-1.d,
* testsuite/ld-aarch64/ifunc-2-local.d,
* testsuite/ld-aarch64/ifunc-2.d,
* testsuite/ld-aarch64/ifunc-21.d,
* testsuite/ld-aarch64/ifunc-3a.d,
* testsuite/ld-arm/farcall-mixed-lib-v4t.d,
* testsuite/ld-arm/farcall-mixed-lib.d,
* testsuite/ld-arm/gc-hidden-1.d,
* testsuite/ld-arm/tls-gdesc-got.d,
* testsuite/ld-arm/tls-lib-loc.d,
* testsuite/ld-arm/tls-longplt-lib.d,
* testsuite/ld-arm/tls-thumb1.d,
* testsuite/ld-cris/libdso-10.d,
* testsuite/ld-cris/libdso-11.d,
* testsuite/ld-cris/libdso-13b.d,
* testsuite/ld-cris/libdso-14.d,
* testsuite/ld-cris/libdso-15.d,
* testsuite/ld-cris/pic-gc-72.d,
* testsuite/ld-cris/pic-gc-73.d,
* testsuite/ld-cris/tls-gc-71.d,
* testsuite/ld-mips-elf/mips16-pic-4a.nd,
* testsuite/ld-mips-elf/pic-and-nonpic-3a.dd,
* testsuite/ld-mips-elf/pie-n32.d,
* testsuite/ld-mips-elf/pie-n64.d,
* testsuite/ld-mips-elf/pie-o32.d: Update for removed dynamic
section symbols.
commit ff91d2f0e20fc91b6b101a0b20cbd38ab2d7fb50
Author: Alan Modra <amodra@gmail.com>
Date: Wed Jun 13 23:57:17 2018 +0930
PR23282, Reinstate seek optimization
PR 23282
* bfdio.c (bfd_seek): Optimize away seeks to current position.
commit ab89b5a57cff984d1edbcb6ca19c8f4a77c511a8
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed Jun 13 21:57:10 2018 -0400
Fix GDB sparc build
Cross-compiling for sparc64 bumped into a few issues, fixed by this
patch.
1. Include target.h in sparc-nat.h fixes:
/home/emaisin/src/binutils-gdb/gdb/sparc-nat.h:45:8: error: âtarget_xfer_statusâ does not name a type
extern target_xfer_status sparc_xfer_wcookie (enum target_object object,
2. Remove extra semi-colon at sparc64-linux-nat.c:40 fixes:
/home/emaisin/src/binutils-gdb/gdb/sparc64-linux-nat.c:41:3: error: expected unqualified-id before â{â token
{ sparc_store_inferior_registers (this, regcache, regnum); }
3. Remove "this" argument fixes:
/home/emaisin/src/binutils-gdb/gdb/sparc64-linux-nat.c: In member function âvirtual void sparc64_linux_nat_target::fetch_registers(regcache*, int)â:
/home/emaisin/src/binutils-gdb/gdb/sparc64-linux-nat.c:38:59: error: cannot convert âsparc64_linux_nat_target*â to âregcache*â for argument â1â to âvoid sparc_fetch_inferior_registers(regcache*, int)â
{ sparc_fetch_inferior_registers (this, regcache, regnum); }
^
/home/emaisin/src/binutils-gdb/gdb/sparc64-linux-nat.c: In member function âvirtual void sparc64_linux_nat_target::store_registers(regcache*, int)â:
/home/emaisin/src/binutils-gdb/gdb/sparc64-linux-nat.c:41:59: error: cannot convert âsparc64_linux_nat_target*â to âregcache*â for argument â1â to âvoid sparc_store_inferior_registers(regcache*, int)â
{ sparc_store_inferior_registers (this, regcache, regnum); }
^
4. Use sparc64_forget_process instead of sparc_forget_process fixes:
/home/emaisin/src/binutils-gdb/gdb/sparc64-linux-nat.c: In member function âvirtual void sparc64_linux_nat_target::low_forget_process(pid_t)â:
/home/emaisin/src/binutils-gdb/gdb/sparc64-linux-nat.c:47:30: error: âsparc_forget_processâ was not declared in this scope
{ sparc_forget_process (pid); }
^
gdb/ChangeLog:
* sparc-nat.h: Include target.h.
* sparc64-linux-nat.c (class sparc64_linux_nat_target)
<fetch_registers>: Remove this argument in function call.
<store_registers>: Remove this argument in function call, remove
extra semicolon.
<low_forget_process>: Call sparc64_forget_process instead of
sparc_forget_process.
commit 7be6cc928461bce11f52c01653b1eb916ecfbb8e
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Jun 14 00:00:36 2018 +0000
Automatic date update in version.in
commit 730c31740a69eaee73e0fc5430d80daa683c26e7
Author: Scott Egerton <scott.egerton@imgtec.com>
Date: Wed Jun 13 15:39:05 2018 +0100
MIPS: Add CRC ASE support
Add support for the CRC Application Specific Extension for Release 6 of
the MIPS Architecture.
[1] "MIPS Architecture for Programmers Volume II-A: The MIPS32
Instruction Set Manual", Imagination Technologies Ltd., Document
Number: MD00086, Revision 6.06, December 15, 2016, Section 3.2
"Alphabetical List of Instructions", pp. 143-148
[2] "MIPS Architecture for Programmers Volume II-A: The MIPS64
Instruction Set Manual", Imagination Technologies Ltd., Document
Number: MD00087, Revision 6.06, December 15, 2016, Section 3.2
"Alphabetical List of Instructions", pp. 165-170
ChangeLog:
bfd/
2018-06-13 Scott Egerton <scott.egerton@imgtec.com>
Faraz Shahbazker <Faraz.Shahbazker@mips.com>
* elfxx-mips.c (print_mips_ases): Add CRC.
binutils/
2018-06-13 Scott Egerton <scott.egerton@imgtec.com>
Faraz Shahbazker <Faraz.Shahbazker@mips.com>
* readelf.c (print_mips_ases): Add CRC.
gas/
2018-06-13 Scott Egerton <scott.egerton@imgtec.com>
Faraz Shahbazker <Faraz.Shahbazker@mips.com>
Maciej W. Rozycki <macro@mips.com>
* config/tc-mips.c (options): Add OPTION_CRC and OPTION_NO_CRC.
(md_longopts): Likewise.
(md_show_usage): Add help for -mcrc and -mno-crc.
(mips_ases): Define availability for CRC and CRC64.
(mips_convert_ase_flags): Map ASE_CRC to AFL_ASE_CRC.
* doc/as.texinfo: Document -mcrc, -mno-crc.
* doc/c-mips.texi: Document -mcrc, -mno-crc, .set crc and
.set no-crc.
* testsuite/gas/mips/ase-errors-1.l: Add error checks for CRC
ASE.
* testsuite/gas/mips/ase-errors-2.l: Likewise.
* testsuite/gas/mips/ase-errors-1.s: Likewise.
* testsuite/gas/mips/ase-errors-2.s: Likewise.
* testsuite/gas/mips/crc.d: New test.
* testsuite/gas/mips/crc64.d: New test.
* testsuite/gas/mips/crc-err.d: New test.
* testsuite/gas/mips/crc64-err.d: New test.
* testsuite/gas/mips/crc-err.l: New test stderr output.
* testsuite/gas/mips/crc64-err.l: New test stderr output.
* testsuite/gas/mips/crc.s: New test source.
* testsuite/gas/mips/crc64.s: New test source.
* testsuite/gas/mips/crc-err.s: New test source.
* testsuite/gas/mips/crc64-err.s: New test source.
* testsuite/gas/mips/mips.exp: Run the new tests.
include/
2018-06-13 Scott Egerton <scott.egerton@imgtec.com>
Faraz Shahbazker <Faraz.Shahbazker@mips.com>
* elf/mips.h (AFL_ASE_CRC): New macro.
(AFL_ASE_MASK): Update to include AFL_ASE_CRC.
* opcode/mips.h (ASE_CRC): New macro.
* opcode/mips.h (ASE_CRC64): Likewise.
opcodes/
2018-06-13 Scott Egerton <scott.egerton@imgtec.com>
Faraz Shahbazker <Faraz.Shahbazker@mips.com>
* mips-dis.c (mips_arch_choices): Add CRC and CRC64 ASEs.
* mips-opc.c (CRC, CRC64): New macros.
(mips_builtin_opcodes): Define crc32b, crc32h, crc32w,
crc32cb, crc32ch and crc32cw for CRC. Define crc32d and
crc32cd for CRC64.
commit a08ac84b963facb4c4a85c4d5df057d44e2a276d
Author: Tom de Vries <tdevries@suse.de>
Date: Sun Jun 10 15:21:31 2018 +0200
[gdb/testsuite] Fix hang in fork-running-state.c
When I run make check:
...
$ cd build/gdb
$ make check 2>&1 | tee ../CHECKLOG.gdb
...
I see after ~30m the summary of the test run printed, but make still hangs.
This seems to be due to some sleeping processes:
...
$ ps fx | grep fork-run
6475 ? S 0:00 gdb.base/fork-running-state/fork-running-state
6451 ? S 0:00 gdb.base/fork-running-state/fork-running-state
6427 ? S 0:00 gdb.base/fork-running-state/fork-running-state
...
Killing the sleeping processes like this:
...
kill -9 $(ps -A | grep fork-running-st | awk '{print $1}')
...
allows make to finish.
If I isolate one debug session from fork-running-state.exp that causes one of
these sleeping processes, we get:
...
(gdb) set non-stop on
(gdb) break main
Breakpoint 1 at 0x400665: file src/gdb/testsuite/gdb.base/fork-running-state.c,
line 52.
(gdb) run
Starting program: build/gdb/testsuite/outputs/gdb.base/fork-running-state/
fork-running-state
Breakpoint 1, main () at src/gdb/testsuite/gdb.base/fork-running-state.c:52
52 save_parent = getpid ();
(gdb) set detach-on-fork on
(gdb) set follow-fork parent
(gdb) continue &
Continuing.
[Detaching after fork from child process 18797]
(gdb) info threads
Id Target Id Frame
* 1 process 18793 "fork-running-st" (running)
(gdb) set print inferior-events off
(gdb) kill inferior 1
...
So, AFAIU, the hanging process is the child process that gdb detaches from.
There's an alarm set in main before the fork, but alarms are not preserved in
the fork child:
...
$ man alarm
...
NOTES
Alarms created by alarm() are preserved across execve(2) and are not
inherited by children created via fork(2).
...
So, AFAIU, once the parent is killed, there's no alarm to terminate the child.
The patch fixes this by moving the setting of the alarm into the
fork_main/fork_child functions, making sure that an alarm will trigger for
the child.
Tested with make check on x86_64.
2018-06-13 Tom de Vries <tdevries@suse.de>
PR testsuite/23269
* gdb.base/fork-running-state.c (main): Move setting of alarm ...
(fork_child): ... here, and ...
(fork_parent): ... here.
commit c75d3d4144fa8b5312bf581451bf800251b7bd71
Author: Tom de Vries <tdevries@suse.de>
Date: Mon Jun 11 15:35:54 2018 +0200
[gdb/testsuite] Update gdb startup text in selftest.exp
Atm selftest.exp fails for me.
One of the reasons is that in c61b06a19a34baab66e3809c7b41b0c31009ed9f (Remove
some text from --version output) an eol was added after "There is NO
WARRANTY, to the extent permitted by law".
This patch updates the matching of the gdb startup message in selftest.exp
accordingly.
Tested selftest.exp (with two other selftest.exp related fixes applied).
2018-06-12 Tom de Vries <tdevries@suse.de>
* gdb.gdb/selftest.exp (test_with_self): Update gdb startup text.
commit 7a486e6d2ec4aff56cf280dbad18f3f651f45714
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Jun 13 11:51:15 2018 +0100
Fix problems with objdump.1: Unbalanced group in command synopsis. You probably forgot to open or close a [ ] or { } group properly.
* doc/binutils.texi (objdump): Add missing closing square
parenthesis to listing of objcopy's command line options.
commit 62c808aef64d77d5585f54c792ebe3f388a960a9
Author: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Date: Wed Jun 13 11:05:51 2018 +0200
Fix procfs.c compilation
procfs.c currently doesn't compile on Solaris:
/vol/src/gnu/gdb/gdb/local/gdb/procfs.c: In function `void _initialize_procfs()':
/vol/src/gnu/gdb/gdb/local/gdb/procfs.c:3734:15: error: invalid initialization of reference of type `const target_info&' from expression of type `procfs_target*'
add_target (&the_procfs_target);
^~~~~~~~~~~~~~~~~~
In file included from /vol/src/gnu/gdb/gdb/local/gdb/inferior.h:40,
from /vol/src/gnu/gdb/gdb/local/gdb/procfs.c:24:
/vol/src/gnu/gdb/gdb/local/gdb/target.h:2305:13: note: in passing argument 1 of `void add_target(const target_info&, void (*)(const char*, int), void (*)(cmd_list_element*, completion_tracker&, const char*, const char*))'
extern void add_target (const target_info &info,
^~~~~~~~~~
/vol/src/gnu/gdb/gdb/local/gdb/procfs.c: In member function `virtual char* procfs_target::make_corefile_notes(bfd*, int*)':
/vol/src/gnu/gdb/gdb/local/gdb/procfs.c:3898:16: error: too many arguments to function `gdb::optional<std::vector<unsigned char, gdb::default_init_allocator<unsigned char, std::allocator<unsigned char> > > > target_read_alloc(target_ops*, target_object, const char*)'
NULL, &auxv);
^
In file included from /vol/src/gnu/gdb/gdb/local/gdb/inferior.h:40,
from /vol/src/gnu/gdb/gdb/local/gdb/procfs.c:24:
/vol/src/gnu/gdb/gdb/local/gdb/target.h:341:40: note: declared here
extern gdb::optional<gdb::byte_vector> target_read_alloc
^~~~~~~~~~~~~~~~~
/vol/src/gnu/gdb/gdb/local/gdb/procfs.c:3898:16: error: cannot convert `gdb::optional<std::vector<unsigned char, gdb::default_init_allocator<unsigned char, std::allocator<unsigned char> > > >' to `int' in assignment
NULL, &auxv);
^
Fixed as follows. Built and ran make check on 64-bit Solaris 11.5/x86
(amd64-pc-solaris2.11) only.
* procfs.c (_initialize_procfs): Use add_inf_child_target.
(procfs_target::make_corefile_notes): Adjust to new
target_read_alloc return type.
commit c75c496d6db058628694329fed8a40fffb17fb54
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Jun 13 00:00:44 2018 +0000
Automatic date update in version.in
commit 1840d81a201932a2d5ad5b089aad85943a5a0a82
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Wed May 23 17:06:02 2018 +0100
gdb: Run INF_EXEC_COMPLETE handler for additional cases
When making an inferior call, and non-stop mode is off, then, once the
inferior call is complete all threads will be stopped, and we should
run the INF_EXEC_COMPLETE handler. This will result in a call to
'target_async(0)' to remove the event handlers for the target.
This was discussed by Yao Qi in this mailing list thread:
https://sourceware.org/ml/gdb/2017-10/msg00032.html
Without this then the target event handlers are left in place even
when the target is stopped, which is different to what happens during
a standard stop proceedure (for example when one thread hits a
breakpoint).
gdb/ChangeLog:
PR gdb/22882
* infrun.c (fetch_inferior_event): If GDB is not proceeding then
run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
Move should_notify_stop local into more inner scope.
commit 9516f85aea1d9a34d1cd3f59b7b9eeb590e58c70
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Wed May 23 14:25:20 2018 +0100
gdb: Mark async event handler when event is already pending
In PR22882 inferior functions are called on different threads while
scheduler-locking is turned on. This results in a hang. This was
discussed in this mailing list thread:
https://sourceware.org/ml/gdb/2017-10/msg00032.html
The problem is that when the thread is set running in order to execute
the inferior call, a call to target_async is made. If the target is
not already registered as 'target_async' then this will install the
async event handler, AND unconditionally mark the handler as having an
event pending.
However, if the target is already registered as target_async then the
event handler is not installed (its already installed) and the
handler is NOT marked as having an event pending.
If we try to set running a thread that already has a pending event,
then we do want to set target_async, however, there will not be an
external event incoming (the thread is already stopped) so we rely on
manually marking the event handler as having a pending event in order
to see the threads pending stop event. This is fine, if, at the point
where we call target_async, the target is not already marked as async.
But, if it is, then the event handler will not be marked as ready, and
the threads pending stop event will never be processed.
A similar pattern of code can be seen in linux_nat_target::resume,
where, when a thread has a pending event, the call to target_async is
followed by a call to async_file_mark to ensure that the pending
thread event will be processed, even if target_async was already set.
gdb/ChangeLog:
PR gdb/22882
* infrun.c (resume_1): Add call to mark_async_event_handler.
gdb/testsuite/ChangeLog:
* gdb.threads/multiple-successive-infcall.exp: Remove kfail case,
rewrite test to describe action performed, rather than possible
failure.
commit defd21729f1ceb51999afcb342310835f8ab2faf
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Wed May 23 14:24:28 2018 +0100
gdb: Fix an infrun debug log message
Run the test gdb.threads/multiple-successive-infcall.exp by hand, if
you turn on 'debug infrun 1', you'll see that the debug line fixed in
this commit is printed and contains the wrong $pc value. Fixed in
this commit.
gdb/ChangeLog:
* infrun.c (do_target_wait): Change old version of $pc printed.
commit 1d3bf4a0a07d0758842fa5cc584b95771e7c226c
Author: Hans-Peter Nilsson <hp@bitrange.com>
Date: Tue Jun 12 18:37:19 2018 +0200
testsuite/ld-cris/libdso-1.d: Correct recent address pattern update.
commit 212b9bc7b4cfa7702005928dc3bffb3ba3a6e19a
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Jun 12 13:22:24 2018 +0100
Fix the PR22983 test so that it will work regardless of the order of the symbols in the dynamic symbol table.
See email thread starting here for more details:
https://sourceware.org/ml/binutils/2018-06/msg00036.html
PR 22983
* testsuite/ld-plugin/lto.exp: Use individual tests to check for
the presence of each expected symbol.
* testsuite/ld-plugin/pr22983.1.d: New file.
* testsuite/ld-plugin/pr22983.2.d: New file.
* testsuite/ld-plugin/pr22983.3.d: New file.
* testsuite/ld-plugin/pr22983.4.d: New file.
commit d89c18895bfdbf092ff34fd7c593cdab4105b5cc
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Jun 12 12:45:49 2018 +0100
Fix syntax error in AArch64 default linker scripts when invoked with -shared.
* emulparams/aarch64elf.sh (OTHER_BSS_END_SYMBOLS): Make the
definition of the __bss_end__ symbol conditional upon CREATE_SHLIB.
commit 7b23e0874de0b15fdb33fdd2e8c3563ff67a4f60
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jun 11 21:51:25 2018 -0400
Rename some functions, index -> gdb_index
Since we now have two index formats, DWARF5/debug_names and gdb_index, I
wanted to rename some functions to make it clear that they deal with the
gdb_index format specifically.
gdb/ChangeLog:
* dwarf2read.c (read_index_from_section): Rename to...
(read_gdb_index_from_section): ... this, update all callers.
(dwarf2_read_index): Rename to...
(dwarf2_read_gdb_index): ... this, update all callers.
commit 69c67a0b2a93ba8c431d1ebb90d57a1e4d0ec3a1
Author: John David Anglin <danglin@gcc.gnu.org>
Date: Mon Jun 11 21:15:32 2018 -0400
Fix gdb build on hppa-linux
Fixes:
CXX hppa-linux-nat.o
../../src/gdb/hppa-linux-nat.c:277:17: error: no 'void hppa_linux_nat_target::fetch_inferior_registers(regcache*, int)' member function declared in class 'hppa_linux_nat_target'
int regno)
^
../../src/gdb/hppa-linux-nat.c:224:1: error: 'void fetch_register(regcache*, int)' defined but not used [-Werror=unused-function]
fetch_register (struct regcache *regcache, int regno)
^~~~~~~~~~~~~~
gdb/ChangeLog:
* gdb/hppa-linux-nat.c
(hppa_linux_nat_target::fetch_inferior_registers): Rename to
hppa_linux_nat_target::fetch_registers.
commit 90b345f613e3ae8b21d2b5efd00a6970f57e578e
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Jun 12 00:00:49 2018 +0000
Automatic date update in version.in
commit 41fc26a2cbc1dc1d08da003d363b2b5821f62076
Author: Eli Zaretskii <eliz@gnu.org>
Date: Mon Jun 11 20:30:11 2018 +0300
Fix build of GDB documentation.
gdb/doc/ChangeLog
2018-06-11 Eli Zaretskii <eliz@gnu.org>
* gdb.texinfo (Maintenance Commands): Add a missing @anchor.
commit 092a534fe14be3eda270256fb2799fd893a1f57c
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Jun 11 15:27:42 2018 +0100
MIPS/GAS: Correct `-O0' and `-O' option help, add `-O1' and `-O2'
Match commit 4ffff32f75b1 ("Match mips_optimize to the -O option
supplied") and adjust `--help' output for `-O0', `-O', `-O1' and `-O2'
options.
gas/
* config/tc-mips.c (md_show_usage): Correct help text for `-O0'
and `-O'. Mention `-O1'. Add `-O2' and its description.
commit fefa175e8f518f17121a1870270a415c851cbacc
Author: Alan Hayward <alan.hayward@arm.com>
Date: Mon Jun 11 10:32:52 2018 +0100
Enable Aarch64 SVE for gdbserver
gdbserver/
* linux-aarch64-ipa.c (get_ipa_tdesc): Add null VQ param.
(initialize_low_tracepoint): Likewise
* linux-aarch64-low.c (aarch64_arch_setup): Get VQ.
* linux-aarch64-tdesc-selftest.c (aarch64_tdesc_test): Add null VQ
param.
* linux-aarch64-tdesc.c (aarch64_linux_read_description): Add VQ
checks.
* linux-aarch64-tdesc.h (aarch64_linux_read_description): Add VQ.
commit 5a485b38994ca09481863fa509cff4643552e1ed
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Jun 11 10:51:16 2018 +0100
Updated Spanish translations for the binutils/ and ld/ subdirectories.
* po/es.po: Updated Spanish translation.
commit b91ad3ff949be78a43653b6138cbd515d4bdb637
Author: Alan Hayward <alan.hayward@arm.com>
Date: Mon Jun 11 10:29:20 2018 +0100
Increase gdbsever PBUFSIZ
PBUFSIZ is no longer big enough for SVE. Increase accordingly.
gdbserver/
* server.h (PBUFSIZ): Increase size
commit 65d4cadafd7d9d5bb84810cde98a8c3a007a0594
Author: Alan Hayward <alan.hayward@arm.com>
Date: Mon Jun 11 10:24:20 2018 +0100
Add Aarch64 SVE dwarf regnums
This is as per the spec:
https://developer.arm.com/products/architecture/a-profile/docs/100985/0000
gdb/
* aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
* aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
(AARCH64_DWARF_SVE_FFR): Likewise.
(AARCH64_DWARF_SVE_P0): Likewise.
(AARCH64_DWARF_SVE_Z0): Likewise.
commit f868386e72baad6f35d4288f433266e03ed2753d
Author: Alan Hayward <alan.hayward@arm.com>
Date: Mon Jun 11 10:09:30 2018 +0100
Add regcache raw_compare method
gdb/
* common/common-regcache.h (raw_compare): New function.
* regcache.c (regcache::raw_compare): Likewise.
* regcache.h (regcache::raw_compare): New declaration.
gdbserver/
* regcache.c (regcache::raw_compare): New function.
* regcache.h (regcache::raw_compare): New declaration.
commit 9c861883169cb9eec4581ab6db3a1b711e79ee10
Author: Alan Hayward <alan.hayward@arm.com>
Date: Mon Jun 11 10:09:16 2018 +0100
Add reg_buffer_common
A purely virtual class containing functions from gdb/regcache.h
Both the gdb regcache structures and gdbserver regcache inherit
directly from reg_buffer_common. This will allow for common
functions which require the use of a regcache.
gdb/
* common/common-regcache.h (reg_buffer_common): New structure.
* regcache.c (reg_buffer::invalidate): Move from detached_regcache.
(reg_buffer::raw_supply): Likewise.
(reg_buffer::raw_supply_integer): Likewise.
(reg_buffer::raw_supply_zeroed): Likewise.
(reg_buffer::raw_collect): Likewise.
(reg_buffer::raw_collect_integer): Likewise.
* regcache.h (reg_buffer::invalidate): Move from detached_regcache.
(reg_buffer::raw_supply): Likewise.
(reg_buffer::raw_supply_integer): Likewise.
(reg_buffer::raw_supply_zeroed): Likewise.
(reg_buffer::raw_collect): Likewise.
(reg_buffer::raw_collect_integer): Likewise.
gdbserver/
* regcache.c (new_register_cache): Use new.
(free_register_cache): Use delete.
(register_data): Use const.
(supply_register): Move body inside regcache.
(regcache::raw_supply): New override function.
(collect_register): Move body inside regcache.
(regcache::raw_collect): New override function.
(regcache::get_register_status): New override function.
* regcache.h (struct regcache): Inherit from reg_buffer_common.
commit 953edf2b6cfe765ca7176c414e9f63aa62bdb09c
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jun 7 06:26:55 2018 -0600
Remove use of queue from remote.c
This removes a use of the queue data structure (common/queue.h) from
remote.c.
The queue is replaced with a std::vector. A queue was not needed, as
the code never de-queued items.
This removes quite a bit of boilerplate code, mostly involved with
marshalling arguments to be passed through the queue iterator.
Tested by the buildbot.
gdb/ChangeLog
2018-06-10 Tom Tromey <tom@tromey.com>
* remote.c (stop_reply_p): Remove typedef. Don't declare queue.
(class remote_state) <stop_reply_queue>: Now std::vector.
(remote_state::~remote_state)
(remote_target::stop_reply_queue_length): Update.
(struct queue_iter_param, remove_child_of_pending_fork)
(struct check_pending_event_prevents_wildcard_vcont_callback_data)
(check_pending_event_prevents_wildcard_vcont_callback)
(remove_stop_reply_for_inferior)
(remove_stop_reply_of_remote_state)
(remote_notif_remove_once_on_match)
(stop_reply_match_ptid_and_ws)
(remote_kill_child_of_pending_fork): Remove.
(remote_target::remove_new_fork_children)
(remote_target::check_pending_events_prevent_wildcard_vcont)
(remote_target::discard_pending_stop_replies)
(remote_target::discard_pending_stop_replies_in_queue)
(remote_target::remote_notif_remove_queued_reply)
(remote_target::queued_stop_reply)
(remote_target::push_stop_reply, remote_target::peek_stop_reply)
(remote_target::wait, remote_target::kill_new_fork_children)
(remote_target::async): Update.
commit 1ddbba9df5fda9b1af5306fe182a5f1c3197f53a
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jun 7 15:56:37 2018 -0600
Remove cleanups from record-full.c
This removes cleanups from record-full.c. In this case, the cleanups
were only ever run when an exception was thrown. So, I replaced these
with try/catch, rather than introduce a new specialized RAII type.
Tested by the buildbot.
gdb/ChangeLog
2018-06-10 Tom Tromey <tom@tromey.com>
* record-full.c (record_full_arch_list_cleanups): Remove.
(record_full_message): Use try/catch.
(record_full_wait_cleanups): Remove.
(record_full_wait_1): Use try/catch.
(record_full_restore): Likewise.
commit 219605fd6adadadfd40234e39254077e044741d0
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jun 7 17:22:49 2018 -0600
Remove a VEC from record-full.c
This replaces a VEC in record-full.c with a std::vector. This version
of the patch also catches a memory leak in the original code noticed
by Simon.
Tested by the buildbot.
gdb/ChangeLog
2018-06-10 Tom Tromey <tom@tromey.com>
* record-full.c (record_full_breakpoint_p): Remove typedef. Don't
declare VEC. Add constructor.
<in_target_beneath>: Now bool.
(record_full_breakpoints): Now a std::vector, static.
(record_full_sync_record_breakpoints)
(record_full_init_record_breakpoints)
(record_full_target::insert_breakpoint)
(record_full_target::remove_breakpoint): Update. Don't use XNEW.
commit 71b73764977a3895b0dda3e7260eece7a8d3e60c
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sun Jun 10 22:33:37 2018 -0400
Remove more "struct" keywords in range-based for loops
GCC 6.3.0 produces this kind of errors:
CXX dwarf2read.o
/home/simark/src/binutils-gdb/gdb/dwarf2read.c: In function 'void process_cu_includes(dwarf2_per_objfile*)':
/home/simark/src/binutils-gdb/gdb/dwarf2read.c:10220:8: error: types may not be defined in a for-range-declaration [-Werror]
for (struct dwarf2_per_cu_data *iter : dwarf2_per_objfile->just_read_cus)
^~~~~~
Removing the struct keyword makes it happy.
gdb/ChangeLog:
* dwarf2read.c (process_cu_includes): Remove struct keyword.
* serial.c (serial_interface_lookup): Remove struct keyword.
commit 65a68903e2294fcd1a5496a4fe467a5b28dc0f27
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Jun 11 00:01:03 2018 +0000
Automatic date update in version.in
commit 4360561f5a326d9765cf1d95e5f779c5ab51045e
Author: Tom Tromey <tom@tromey.com>
Date: Sun Jun 10 08:24:04 2018 -0600
Fix some missed "beneath" conversions
The buildbot pointed out that arm-linux-nat.c was not properly using
"beneath" as a method. A search showed a few more places with this
issue.
Tested by the buildbot, though of course this only checked
arm-linux-nat.c. Nevertheless I'm checking this in under the obvious
rule.
gdb/ChangeLog
2018-06-10 Tom Tromey <tom@tromey.com>
* procfs.c (procfs_target::xfer_partial): Use "beneath" as a
method.
* nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
a method.
* go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
method.
* arm-linux-nat.c (arm_linux_nat_target::read_description): Use
"beneath" as a method.
* arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
Use "beneath" as a method.
commit d14b92bf8a7f4c57eb6c5fca559c7bbb8a747358
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jun 7 16:06:41 2018 -0600
Remove cleanups from tracefile.c
This removes cleanups from tracefile.c, by introducing a unique_ptr
specialization.
This code could be made even simpler via a deeper C++-ification, but I
have not attempted that.
Tested by the buildbot.
gdb/ChangeLog
2018-06-10 Tom Tromey <tom@tromey.com>
* tracefile.c (struct trace_file_writer_deleter): New.
<operator()>: Rename from trace_file_writer_xfree.
(trace_file_writer_up): New typedef.
(tsave_command, trace_save_tfile, trace_save_ctf): Update.
commit 835dcf92618e294d3c6c2bedd94af712809c96a3
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Sat Jun 9 22:30:34 2018 -0400
Use std::unique_ptr in reg_buffer
Using std::unique_ptr allows to remove the manual xfree in the
destructor.
If I understand correctly, using the () after the new operator will make
sure the allocated objects will be value initialized, which for scalars
means they are zero-initialized. So it should have the same behavior as
XCNEWVEC.
gdb/ChangeLog:
* regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
<m_registers, m_register_status>: Change type to
std::unique_ptr.
* regcache.c (reg_buffer::reg_buffer): Use new instead of
XCNEWVEC.
commit aac0d564cea04b1c5f386e8cea924ca59057e8b4
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Sat Jun 9 22:08:06 2018 -0400
Change type of reg_buffer::m_register_status to register_status
The type of reg_buffer::m_register_status is an array of signed char,
probably to ensure that each element takes up only one byte. Instead,
since we use C++11, we can force the underlying type of register_status
to be signed char and use the enum type.
gdb/ChangeLog:
* common/common-regcache.h (enum register_status): Add
underlying type "signed char".
* regcache.h (reg_buffer) <m_register_status>: Change type to
register_status *.
* regcache.c (reg_buffer::reg_buffer): Alocate arrays of
register_status instead of signed char.
(reg_buffer::save): Use REG_UNKNOWN instead of 0.
(reg_buffer::get_register_status): Remove cast.
(readable_regcache::raw_read): Remove cast.
(readable_regcache::cooked_read): Remove cast.
commit 09897e3330d41699b6146f9b8767734f92587dcc
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Jun 10 00:01:24 2018 +0000
Automatic date update in version.in
commit 405918449085378e96dc841a3d536ce161ce1539
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jun 7 16:28:22 2018 -0600
Remove use of queue.h from gdbserver/event-loop.c
This removes a use of queue.h from gdbserver/event-loop.c, replacing
it with std::queue.
I was not completely sure whether std::queue is even that useful.
Perhaps plain std::list could be used just as easily.
Tested by the buildbot.
gdb/gdbserver/ChangeLog
2018-06-09 Tom Tromey <tom@tromey.com>
* event-loop.c (gdb_event, gdb_event_p): Remove typedefs. Don't
declare queue.
(event_queue): Use std::queue.
(gdb_event_xfree): Remove.
(initialize_event_loop, process_event, wait_for_event): Update.
commit 77ad7394454c29cc7a4a865cd226491df457f6f6
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jun 7 16:20:12 2018 -0600
Remove two more uses of make_cleanup_close
This removes two more uses of make_cleanup_close, replacing them with
relatively straightforward uses of scoped_fd.
Tested by the buildbot.
gdb/ChangeLog
2018-06-09 Tom Tromey <tom@tromey.com>
* source.c (reverse_search_command, forward_search_command): Use
scoped_fd.
commit 191cca638351fcaf9bee93a396bd4f8b74f915eb
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jun 7 17:25:41 2018 -0600
Remove a VEC from serial.c
This replaces a VEC in serial.c with a std::vector.
Tested by the buildbot.
gdb/ChangeLog
2018-06-09 Tom Tromey <tom@tromey.com>
* serial.c (serial_ops_p): Remove typedef. Don't declare VEC.
(serial_ops_list): Now static, std::vector.
(serial_interface_lookup, serial_add_interface): Update.
commit c5d0225d250b4c6537a0d22f0a89975834bfd294
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jun 7 22:11:47 2018 -0600
Remove a VEC from dwarf2read.c
This removes a VEC from dwarf2read.c, replacing it with a std::vector.
Tested by the buildbot.
gdb/ChangeLog
2018-06-09 Tom Tromey <tom@tromey.com>
* dwarf2read.c (process_cu_includes): Update.
(process_full_comp_unit): Update.
* dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
std::vector.
commit d68033ea86780183c2a2a28077fe495acde5887c
Author: Maciej W. Rozycki <macro@mips.com>
Date: Sat Jun 9 01:09:23 2018 +0100
MIPS/LD/testsuite: Add microMIPS lazy binding stub tests
Adapt the existing regular MIPS lazy binding stub tests for microMIPS
code verification. Check both regular and `--insn32' variants.
Correct indentation issues in the conditional updated.
ld/
* testsuite/ld-mips-elf/stub-dynsym-micromips-1-7fff.d: New
test.
* testsuite/ld-mips-elf/stub-dynsym-micromips-1-8000.d: New
test.
* testsuite/ld-mips-elf/stub-dynsym-micromips-1-fff0.d: New
test.
* testsuite/ld-mips-elf/stub-dynsym-micromips-1-10000.d: New
test.
* testsuite/ld-mips-elf/stub-dynsym-micromips-1-2fe80.d: New
test.
* testsuite/ld-mips-elf/stub-dynsym-micromips-insn32-1-7fff.d:
New test.
* testsuite/ld-mips-elf/stub-dynsym-micromips-insn32-1-8000.d:
New test.
* testsuite/ld-mips-elf/stub-dynsym-micromips-insn32-1-fff0.d:
New test.
* testsuite/ld-mips-elf/stub-dynsym-micromips-insn32-1-10000.d:
New test.
* testsuite/ld-mips-elf/stub-dynsym-micromips-insn32-1-2fe80.d:
New test.
* testsuite/ld-mips-elf/mips-elf.exp: Run the new tests. Fix
indentation.
commit 653e0a1e047b00d77bf9b094f06a9781d6d45589
Author: Maciej W. Rozycki <macro@mips.com>
Date: Sat Jun 9 01:09:23 2018 +0100
MIPS/LD/testsuite: Fix lazy binding stub test symbol count comment
Update the symbol count in the comment associated with lazy binding stub
tests to match `base_syms', complementing commit 889acb80acd5
("MIPS/Linux/LD/testsuite: Linker script _gp scope updates"),
<https://sourceware.org/ml/binutils/2012-08/msg00066.html>, and commit
2f9efdfcdbf1 ("mips/bfd/ld: Fix --as-needed on mips and update related
ld tests"), <https://sourceware.org/ml/binutils/2013-09/msg00131.html>.
ld/
* testsuite/ld-mips-elf/mips-elf.exp: Update symbol count in the
comment associated with lazy binding stub tests.
commit 2f8b83ee9629c41a171d795ff600cccb00e1b119
Author: Maciej W. Rozycki <macro@mips.com>
Date: Sat Jun 9 01:09:22 2018 +0100
MIPS/LD: Add missing `mips-*-windiss' target emulation dependency
As from commit 2ebd05b80b22 ("MIPS/LD: Correct `mips-*-windiss' target
emulation configuration") we have:
EXTRA_EM_FILE=mipself
in `emulparams/elf32mipswindiss.sh', however no corresponding Makefile
`mipself.em' dependency for `eelf32mipswindiss.c'. Add it.
ld/
* Makefile.am (eelf32mipswindiss.c): Add `mipself.em' dependency.
* Makefile.in: Regenerate.
commit 30d42fef63b418428c92f6081172e0e5d62b6d36
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Jun 9 00:00:45 2018 +0000
Automatic date update in version.in
commit 6341380d5cb8e645d79953a24701219a048f426f
Author: Stan Cox <scox@redhat.com>
Date: Fri Jun 8 16:40:52 2018 -0400
Add missing client_state struct references to win target.
gdbserver/ChangeLog
* win32-low.c (win32_create_inferior): last_ptid and last_status
moved to client_state.
commit 03349c934525d0f78a3f971a351b1202ea21ec94
Author: Pedro Alves <palves@redhat.com>
Date: Fri Jun 8 20:48:28 2018 +0100
Make gdbreplay use more common routines
This makes gdbreplay share a bit more code with gdbserver, and paves
the way to share more in future. Including common-defs.h pulls in
defines and headers that gdb and gdbserver assume are always
defined/available too, such as for example _(), ansidecl.h or a set of
system headers. Including that revealed (static vs extern conflict)
gdbreplay had a local copy of perror_with_name (which exited directly
instead of throwing an error). So I removed gdbreplay's local copy,
and then added enough .o files until gdbreplay linked successfully.
Also, use xstrdup instead of strdup.
gdb/gdbserver/ChangeLog:
2018-06-08 Pedro Alves <palves@redhat.com>
* Makefile.in (GDBREPLAY_OBS): Add common/cleanups.o,
common/common-exceptions.o, common/common-utils.o,
common/errors.o, common/print-utils.o and utils.o.
* gdbreplay.c: Include "common-defs.h" instead of the two
'config.h's here. Don't include stdio.h, errno.h, stdlib.h,
string.h or alloca.h.
(perror_with_name): Delete.
(remote_open): Use xstrdup instead of strdup.
(main): Rename to ...
(captured_main): ... this.
(main): New.
commit ecf99cc09236316db27fd8ffaedca864f81ea081
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Jun 8 12:41:31 2018 -0700
ld/x86: Remove hidden _edata, __bss_start, and _end
There is no need to put hidden _edata, __bss_start, and _end in dynamic
symbol table in shared libraries.
bfd/
PR ld/23161
* elfxx-x86.c (elf_x86_hide_linker_defined): New function.
(_bfd_x86_elf_link_check_relocs): Use it to hide hidden
__bss_start, _end and _edata in shared libraries.
ld/
PR ld/23161
* testsuite/ld-elf/pr23161d.rd: Remove local _edata, __bss_start,
and _end from dynamic symbol table.
commit aeab512851bf6ed623d1c6c4305b6ce05e51a10c
Author: Paul Koning <paul_koning@dell.com>
Date: Fri Jun 8 13:26:36 2018 -0400
Fix build issue with Python 3.7
Originally reported in
https://bugzilla.redhat.com/show_bug.cgi?id=1577396 -- gdb build fails
with Python 3.7 due to references to a Python internal function whose
declaration changed in 3.7.
gdb/ChangeLog
2018-06-08 Paul Koning <paul_koning@dell.com>
PR gdb/23252
* python/python.c (do_start_initialization):
Avoid call to internal Python API.
(init__gdb_module): New function.
commit 5045b3d78903d1f6faa4cb511fa801e50dfacf48
Author: Gary Benson <gbenson@redhat.com>
Date: Fri Jun 8 18:06:46 2018 +0100
linux: Add maintenance commands to test libthread_db
This commit adds two new commands which may be used to test thread
debugging libraries used by GDB:
* "maint check libthread-db" tests the thread debugging library GDB
is using for the current inferior.
* "maint set/show check-libthread-db" selects whether libthread_db
tests should be run automatically as libthread_db is auto-loaded.
The default is to not run tests automatically.
The test itself is a basic integrity check exercising all libthread_db
functions used by GDB on GNU/Linux systems. By extension this also
exercises the proc_service functions provided by GDB that libthread_db
uses.
This functionality is useful for NPTL developers and libthread_db
developers. It could also prove useful investigating bugs reported
against GDB where the thread debugging library or GDB's proc_service
layer is suspect.
gdb/ChangeLog:
* linux-thread-db.c (valprint.h): New include.
(struct check_thread_db_info): New structure.
(check_thread_db_on_load, tdb_testinfo): New static globals.
(check_thread_db, check_thread_db_callback): New functions.
(try_thread_db_load_1): Run integrity checks if requested.
(maintenance_check_libthread_db): New function.
(_initialize_thread_db): Register "maint check libthread-db"
and "maint set/show check-libthread-db".
* NEWS: Mention the above new commands.
gdb/doc/ChangeLog:
* gdb.texinfo (Maintenance Commands): Document "maint check
libthread-db" and "maint set/show check-libthread-db".
gdb/testsuite/ChangeLog:
* gdb.threads/check-libthread-db.exp: New file.
* gdb.threads/check-libthread-db.c: Likewise.
commit 2f4f025ff15b900706c8597060003a506107cf23
Author: Tom Tromey <tom@tromey.com>
Date: Fri Jun 8 10:06:43 2018 -0600
Fix gdb mingw build
I noticed that the mingw build was failing in the buildbot. This
patch fixes the problem. I'm checking it in as obvious.
gdb/ChangeLog
2018-06-08 Tom Tromey <tom@tromey.com>
* windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
now a method.
commit 7ebd13590ca56ba32350dbfd1b66c5dc2468268e
Author: kyrtka01 <kyrylo.tkachov@arm.com>
Date: Fri Jun 8 15:40:39 2018 +0100
[arm][gas] Add support for Arm Cortex-A76
This patch adds support to gas for -mcpu=cortex-a76 in the usual way.
make check-gas passes without problems.
2018-06-08 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/tc-arm.c (arm_cpus): Add Cortex-A76 entry.
* doc/c-arm.texi (-mcpu): Document cortex-a76.
commit c2a0f9293adfad7fc1ee6a264f2f4f2a29872e64
Author: kyrtka01 <kyrylo.tkachov@arm.com>
Date: Fri Jun 8 15:39:47 2018 +0100
[AArch64][gas] Add support for Arm Cortex-A76
This patch adds support to gas for -mcpu=cortex-a76 in the usual way.
make check-gas passes without problems.
2018-06-08 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/tc-aarch64.c (aarch64_cpus): Add Cortex-A76 entry.
* doc/c-aarch64.texi (-mcpu): Document cortex-a76.
commit 343b0027aed57c5a2d499e7e6e228608969a10be
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jun 7 15:38:25 2018 -0600
Remove last cleanup from btrace code
This removes the last cleanup from btrace.c, replacing it with a use
of unique_xmalloc_ptr.
gdb/ChangeLog
2018-06-08 Tom Tromey <tom@tromey.com>
* btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
commit 8dcc53b37f4fe4797825c2a43bb1fb3df56b30d1
Author: Tom Tromey <tom@tromey.com>
Date: Thu Jun 7 15:34:36 2018 -0600
Remove cleanups from btrace code
This removes some cleanups from the btrace code by minorly C++-ifying
struct btrace_data.
gdb/ChangeLog
2018-06-08 Tom Tromey <tom@tromey.com>
* common/btrace-common.h (struct btrace_data): Add constructor,
destructor, move assignment operator.
<empty, clear, fini>: New methods.
<format>: Initialize.
(btrace_data_init, btrace_data_fini, btrace_data_clear)
(btrace_data_empty): Don't declare.
* common/btrace-common.c (btrace_data_init): Remove.
(btrace_data::fini): Rename from btrace_data_fini.
(btrace_data::empty): Rename from btrace_data_empty.
(btrace_data::clear): Rename from btrace_data_clear. Return
bool.
* btrace.h (make_cleanup_btrace_data): Don't declare.
* btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
(parse_xml_btrace): Update.
(do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
(maint_btrace_clear_packet_history_cmd): Update.
gdb/gdbserver/ChangeLog
2018-06-08 Tom Tromey <tom@tromey.com>
* linux-low.c (linux_low_read_btrace): Update.
commit cb36699271e2f3308b6f1aa40086950111308020
Author: Egeyar Bagcioglu <egeyar.bagcioglu@oracle.com>
Date: Fri Jun 8 14:02:52 2018 +0100
Prevent undefined FMOV instructions being accepted by the AArch64 assembler.
Detect illegal FMOV instructions that changes the size from 32 bits to 64
bits and vice versa. Add tests for these and other undefined FMOV
instructions.
PR 20319
gas * testsuite/gas/aarch64/illegal-3.s: Test if unallocated FMOV encodings
are detected as undefined.
* testsuite/gas/aarch64/illegal-3.d: Likewise.
* testsuite/gas/aarch64/illegal.s: Test if FMOV instructions that are
changing the size from 32 bits to 64 bits and vice versa trigger an
error.
* testsuite/gas/aarch64/illegal.l: Likewise.
opcodes * aarch64-tbl.h: Introduce QL_INT2FP_FMOV and QL_FP2INT_FMOV.
(aarch64_opcode_table) : Use QL_INT2FP_FMOV and QL_FP2INT_FMOV.
commit fd161d860f1df7140153eab4726705cc3e2727b0
Author: Alan Modra <amodra@gmail.com>
Date: Fri Jun 8 20:17:34 2018 +0930
Define various symbols conditionally in shared libraries
The values of symbols in shared libraries like _end, _edata, and
__bss_start are generally not that useful outside of the shared
library. This patch defines them conditionally with PROVIDE, since a
shared library might need the local value. An example is glibc ld.so
local access to "_begin", "_etext" and "_end". (ld.so gains access to
the local values by making the references using hidden visibility.
That makes the definitions hidden too.)
We can't use PROVIDE_HIDDEN in the linker scripts because the shared
library might need the value of the symbol in the executable. An
example is freebsd libc dynamic access to "_end".
PR ld/23161
* emulparams/aarch64cloudabi.sh: PROVIDE __bss_start__, _bss_end__,
and __end__ in shared libraries.
* emulparams/aarch64fbsd.sh: Likewise.
* emulparams/aarch64linux.sh: Likewise.
* emulparams/aarch64linux32.sh: Likewise.
* emulparams/armelf_fuchsia.sh: Likewise.
* emulparams/armelf_linux.sh: Likewise.
* emulparams/armelf_phoenix.sh: Likewise.
* emulparams/aarch64elf.sh: Likewise, and __data_start
* emulparams/aarch64elf32.sh: Likewise.
* emulparams/armelf.sh: Likewise.
* emulparams/armnto.sh: Likewise.
* emulparams/elf32bmip.sh: Remove duplicate ". = ." from
OTHER_GOT_SYMBOLS. PROVIDE _ftext, _fdata, and _fbss in shared libs.
* emulparams/elf32bmipn32-defs.sh: Likewise.
* emulparams/elf32frv.sh: PROVIDE __end and __data_start in shared libs.
* emulparams/elf32lriscv-defs.sh: Tidy.
* emulparams/elf32mcore.sh: PROVIDE __bss_start and _bss_end in
shared libs
* emulparams/elf32ppccommon.sh: PROVIDE __end in shared libs.
* emulparams/elf32rl78.sh: Tidy.
* emulparams/i386nto.sh: PROVIDE _btext in shared libs.
* emulparams/shelf_nto.sh: Likewise.
* emulparams/shlelf_nto.sh: Likewise.
* emulparams/score3_elf.sh: PROVIDE _gp, _bss_start__, _bss_end__,
__bss_end__, __end__, _fdata, _sdata_begin, and _bss_start in
shared libs.
* scripttempl/elf.sc: Don't use EXECUTABLE_SYMBOLS for shared
libraries. PROVIDE _edata, edata, __bss_start, and _end in shared
libraries.
* testsuite/ld-elf/pr23161.map,
* testsuite/ld-elf/pr23161a.c,
* testsuite/ld-elf/pr23161b.c,
* testsuite/ld-elf/pr23161c.c,
* testsuite/ld-elf/pr23161a.rd,
* testsuite/ld-elf/pr23161b.rd,
* testsuite/ld-elf/pr23161c.rd,
* testsuite/ld-elf/pr23161d.rd: New tests.
* testsuite/ld-elf/shared.exp: Run ld/23161 tests.
* testsuite/ld-elf/pr23162.rd,
* testsuite/ld-aarch64/ifunc-1-local.d,
* testsuite/ld-aarch64/ifunc-1.d,
* testsuite/ld-aarch64/ifunc-2-local.d,
* testsuite/ld-aarch64/ifunc-2.d,
* testsuite/ld-aarch64/ifunc-21.d,
* testsuite/ld-aarch64/ifunc-3a.d,
* testsuite/ld-alpha/tlsbin.rd,
* testsuite/ld-alpha/tlsbin.sd,
* testsuite/ld-alpha/tlsbinr.rd,
* testsuite/ld-alpha/tlspic.rd,
* testsuite/ld-alpha/tlspic.sd,
* testsuite/ld-cris/dso-pltdis1.d,
* testsuite/ld-cris/dso-pltdis2.d,
* testsuite/ld-cris/dso12-pltdis.d,
* testsuite/ld-cris/gotplt1.d,
* testsuite/ld-cris/gotplt2.d,
* testsuite/ld-cris/gotplt3.d,
* testsuite/ld-cris/hiddef1.d,
* testsuite/ld-cris/libdso-1.d,
* testsuite/ld-cris/libdso-10.d,
* testsuite/ld-cris/libdso-11.d,
* testsuite/ld-cris/libdso-12.d,
* testsuite/ld-cris/libdso-12b.d,
* testsuite/ld-cris/libdso-12c.d,
* testsuite/ld-cris/libdso-13.d,
* testsuite/ld-cris/libdso-13b.d,
* testsuite/ld-cris/libdso-14.d,
* testsuite/ld-cris/libdso-15.d,
* testsuite/ld-cris/libdso-15b.d,
* testsuite/ld-cris/libdso-1c.d,
* testsuite/ld-cris/libdso-1d.d,
* testsuite/ld-cris/libdso-2.d,
* testsuite/ld-cris/pic-gc-72.d,
* testsuite/ld-cris/pic-gc-73.d,
* testsuite/ld-cris/pr16044.d,
* testsuite/ld-cris/pv32-1.d,
* testsuite/ld-cris/tls-dso-dtpoffd2.d,
* testsuite/ld-cris/tls-dso-dtpoffd4.d,
* testsuite/ld-cris/tls-dso-tpoffgotcomm1.d,
* testsuite/ld-cris/tls-gc-71.d,
* testsuite/ld-cris/tls-gd-1.d,
* testsuite/ld-cris/tls-gd-1h.d,
* testsuite/ld-cris/tls-gd-2.d,
* testsuite/ld-cris/tls-gd-2h.d,
* testsuite/ld-cris/tls-ie-10.d,
* testsuite/ld-cris/tls-ie-11.d,
* testsuite/ld-cris/tls-ie-78.d,
* testsuite/ld-cris/tls-ie-8.d,
* testsuite/ld-cris/tls-ie-9.d,
* testsuite/ld-cris/tls-js1.d,
* testsuite/ld-cris/tls-ld-4.d,
* testsuite/ld-cris/tls-ld-5.d,
* testsuite/ld-cris/tls-ld-6.d,
* testsuite/ld-cris/tls-ld-7.d,
* testsuite/ld-cris/tls-ldgd-14.d,
* testsuite/ld-cris/tls-ldgd-15.d,
* testsuite/ld-cris/tls-ldgdex-14.d,
* testsuite/ld-cris/tls-ldgdex-15.d,
* testsuite/ld-cris/tls-ldgdx-14.d,
* testsuite/ld-cris/tls-ldgdx-15.d,
* testsuite/ld-cris/tls-legdx-16.d,
* testsuite/ld-cris/tls-legdx-17.d,
* testsuite/ld-cris/tls-local-54.d,
* testsuite/ld-cris/tls-local-60.d,
* testsuite/ld-cris/tls-local-61.d,
* testsuite/ld-cris/tls-local-63.d,
* testsuite/ld-cris/tls-local-64.d,
* testsuite/ld-cris/tls-ok-30.d,
* testsuite/ld-cris/tls-ok-32.d,
* testsuite/ld-cris/tls-ok-34.d,
* testsuite/ld-cris/tls-und-38.d,
* testsuite/ld-cris/tls-und-42.d,
* testsuite/ld-cris/tls-und-46.d,
* testsuite/ld-cris/tls-und-50.d,
* testsuite/ld-cris/weakhiddso.d,
* testsuite/ld-cris/weakref2.d,
* testsuite/ld-frv/fdpic-shared-1.d,
* testsuite/ld-frv/fdpic-shared-2.d,
* testsuite/ld-frv/fdpic-shared-3.d,
* testsuite/ld-frv/fdpic-shared-4.d,
* testsuite/ld-frv/fdpic-shared-5.d,
* testsuite/ld-frv/fdpic-shared-7.d,
* testsuite/ld-frv/fdpic-shared-8.d,
* testsuite/ld-frv/tls-dynamic-2.d,
* testsuite/ld-i386/ibt-plt-1.d,
* testsuite/ld-i386/ibt-plt-2a.d,
* testsuite/ld-i386/ibt-plt-2b.d,
* testsuite/ld-i386/ibt-plt-2c.d,
* testsuite/ld-i386/ibt-plt-2d.d,
* testsuite/ld-i386/ibt-plt-3a.d,
* testsuite/ld-i386/ibt-plt-3b.d,
* testsuite/ld-i386/ibt-plt-3c.d,
* testsuite/ld-i386/ibt-plt-3d.d,
* testsuite/ld-i386/plt2.dd,
* testsuite/ld-i386/pr20830.d,
* testsuite/ld-i386/tlsbin-nacl.rd,
* testsuite/ld-i386/tlsbin.rd,
* testsuite/ld-i386/tlsbin2-nacl.rd,
* testsuite/ld-i386/tlsbin2.rd,
* testsuite/ld-i386/tlsbindesc-nacl.rd,
* testsuite/ld-i386/tlsbindesc.rd,
* testsuite/ld-i386/tlsdesc-nacl.rd,
* testsuite/ld-i386/tlsdesc.rd,
* testsuite/ld-i386/tlsgdesc-nacl.rd,
* testsuite/ld-i386/tlsgdesc.rd,
* testsuite/ld-i386/tlsnopic-nacl.rd,
* testsuite/ld-i386/tlsnopic.dd,
* testsuite/ld-i386/tlsnopic.rd,
* testsuite/ld-i386/tlsnopic.sd,
* testsuite/ld-i386/tlspic-nacl.rd,
* testsuite/ld-i386/tlspic.rd,
* testsuite/ld-i386/tlspic2-nacl.rd,
* testsuite/ld-i386/tlspic2.rd,
* testsuite/ld-ia64/merge1.d,
* testsuite/ld-ia64/merge2.d,
* testsuite/ld-ia64/merge3.d,
* testsuite/ld-ia64/merge4.d,
* testsuite/ld-ia64/merge5.d,
* testsuite/ld-ia64/tlsbin.rd,
* testsuite/ld-ia64/tlspic.rd,
* testsuite/ld-ifunc/ifunc-2-i386-now.d,
* testsuite/ld-ifunc/ifunc-2-local-i386-now.d,
* testsuite/ld-ifunc/ifunc-2-local-x86-64-now.d,
* testsuite/ld-ifunc/ifunc-2-local-x86-64.d,
* testsuite/ld-ifunc/ifunc-2-x86-64-now.d,
* testsuite/ld-ifunc/ifunc-2-x86-64.d,
* testsuite/ld-ifunc/pr17154-i386-now.d,
* testsuite/ld-ifunc/pr17154-i386.d,
* testsuite/ld-ifunc/pr17154-x86-64-now.d,
* testsuite/ld-ifunc/pr17154-x86-64.d,
* testsuite/ld-m68k/tls-def-1.d,
* testsuite/ld-m68k/tls-gd-1.d2,
* testsuite/ld-metag/shared.d,
* testsuite/ld-metag/stub_pic_app.d,
* testsuite/ld-mips-elf/rel32-n32.d,
* testsuite/ld-mips-elf/rel32-o32.d,
* testsuite/ld-mips-elf/rel64.d,
* testsuite/ld-powerpc/ambiguousv1.d,
* testsuite/ld-powerpc/ambiguousv1b.d,
* testsuite/ld-powerpc/ambiguousv2.d,
* testsuite/ld-powerpc/ambiguousv2b.d,
* testsuite/ld-powerpc/tlsexe.d,
* testsuite/ld-powerpc/tlsexe.r,
* testsuite/ld-powerpc/tlsexe32.d,
* testsuite/ld-powerpc/tlsexe32.g,
* testsuite/ld-powerpc/tlsexe32.r,
* testsuite/ld-powerpc/tlsexetoc.d,
* testsuite/ld-powerpc/tlsexetoc.r,
* testsuite/ld-powerpc/tlsso.d,
* testsuite/ld-powerpc/tlsso.r,
* testsuite/ld-powerpc/tlsso32.g,
* testsuite/ld-powerpc/tlsso32.r,
* testsuite/ld-powerpc/tlstocso.d,
* testsuite/ld-powerpc/tlstocso.g,
* testsuite/ld-powerpc/tlstocso.r,
* testsuite/ld-s390/gotreloc_31-1.dd,
* testsuite/ld-s390/tlsbin.dd,
* testsuite/ld-s390/tlsbin.rd,
* testsuite/ld-s390/tlsbin_64.dd,
* testsuite/ld-s390/tlsbin_64.rd,
* testsuite/ld-s390/tlspic.rd,
* testsuite/ld-s390/tlspic_64.rd,
* testsuite/ld-sh/tlsbin-2.d,
* testsuite/ld-sh/tlspic-2.d,
* testsuite/ld-sparc/gotop32.rd,
* testsuite/ld-sparc/gotop64.rd,
* testsuite/ld-sparc/tlssunbin32.rd,
* testsuite/ld-sparc/tlssunbin64.rd,
* testsuite/ld-sparc/tlssunnopic32.rd,
* testsuite/ld-sparc/tlssunnopic64.rd,
* testsuite/ld-sparc/tlssunpic32.rd,
* testsuite/ld-sparc/tlssunpic64.rd,
* testsuite/ld-x86-64/bnd-branch-1-now.d,
* testsuite/ld-x86-64/bnd-ifunc-1-now.d,
* testsuite/ld-x86-64/bnd-ifunc-2-now.d,
* testsuite/ld-x86-64/bnd-ifunc-2.d,
* testsuite/ld-x86-64/bnd-plt-1-now.d,
* testsuite/ld-x86-64/bnd-plt-1.d,
* testsuite/ld-x86-64/ibt-plt-1-x32.d,
* testsuite/ld-x86-64/ibt-plt-1.d,
* testsuite/ld-x86-64/ibt-plt-2a-x32.d,
* testsuite/ld-x86-64/ibt-plt-2a.d,
* testsuite/ld-x86-64/ibt-plt-2b-x32.d,
* testsuite/ld-x86-64/ibt-plt-2b.d,
* testsuite/ld-x86-64/ibt-plt-2c-x32.d,
* testsuite/ld-x86-64/ibt-plt-2c.d,
* testsuite/ld-x86-64/ibt-plt-2d-x32.d,
* testsuite/ld-x86-64/ibt-plt-2d.d,
* testsuite/ld-x86-64/ibt-plt-3a-x32.d,
* testsuite/ld-x86-64/ibt-plt-3a.d,
* testsuite/ld-x86-64/ibt-plt-3b-x32.d,
* testsuite/ld-x86-64/ibt-plt-3b.d,
* testsuite/ld-x86-64/ibt-plt-3c-x32.d,
* testsuite/ld-x86-64/ibt-plt-3c.d,
* testsuite/ld-x86-64/ibt-plt-3d-x32.d,
* testsuite/ld-x86-64/ibt-plt-3d.d,
* testsuite/ld-x86-64/ilp32-4-nacl.d,
* testsuite/ld-x86-64/ilp32-4.d,
* testsuite/ld-x86-64/load1c-nacl.d,
* testsuite/ld-x86-64/load1c.d,
* testsuite/ld-x86-64/load1d-nacl.d,
* testsuite/ld-x86-64/load1d.d,
* testsuite/ld-x86-64/mpx3n.dd,
* testsuite/ld-x86-64/mpx4.dd,
* testsuite/ld-x86-64/mpx4n.dd,
* testsuite/ld-x86-64/plt2.dd,
* testsuite/ld-x86-64/pr14207.d,
* testsuite/ld-x86-64/pr19162.d,
* testsuite/ld-x86-64/pr20253-1f.d,
* testsuite/ld-x86-64/pr20253-1l.d,
* testsuite/ld-x86-64/pr20830a-now.d,
* testsuite/ld-x86-64/pr20830a.d,
* testsuite/ld-x86-64/pr20830b-now.d,
* testsuite/ld-x86-64/pr20830b.d,
* testsuite/ld-x86-64/pr21038a-now.d,
* testsuite/ld-x86-64/pr21038a.d,
* testsuite/ld-x86-64/pr21038b-now.d,
* testsuite/ld-x86-64/pr21038b.d,
* testsuite/ld-x86-64/pr21038c-now.d,
* testsuite/ld-x86-64/pr21038c.d,
* testsuite/ld-x86-64/tlsbin-nacl.rd,
* testsuite/ld-x86-64/tlsbin.rd,
* testsuite/ld-x86-64/tlsbin2-nacl.rd,
* testsuite/ld-x86-64/tlsbin2.rd,
* testsuite/ld-x86-64/tlsbindesc-nacl.rd,
* testsuite/ld-x86-64/tlsbindesc.rd,
* testsuite/ld-x86-64/tlsdesc-nacl.rd,
* testsuite/ld-x86-64/tlsdesc.rd,
* testsuite/ld-x86-64/tlsgdesc-nacl.rd,
* testsuite/ld-x86-64/tlsgdesc.rd,
* testsuite/ld-x86-64/tlspic-nacl.rd,
* testsuite/ld-x86-64/tlspic.rd,
* testsuite/ld-x86-64/tlspic2-nacl.rd,
* testsuite/ld-x86-64/tlspic2.rd: Update.
commit 4f652d7b9a15cd3aae25de38f51baafe7e529646
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Jun 8 00:00:43 2018 +0000
Automatic date update in version.in
commit 13e3c6088e4456ed27dfdf9127c20d252895d874
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Thu Jun 7 14:17:53 2018 -0400
Add ChangeLog entry for e5a77256e8961294b3ea7d483124834311ca363b
I forgot to add a ChangeLog entry for my previous commit:
commit e5a77256e8961294b3ea7d483124834311ca363b
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Tue Jun 5 17:55:39 2018 -0400
Guard declarations of 'sve_{vq,vl}_from_{vl,vq}' macros on Aarch64 (and unbreak build)
This commit fixes that.
commit a1740ee1573d6e0e21692f815b322e3d062bbbee
Author: Pedro Alves <palves@redhat.com>
Date: Thu Jun 7 17:27:48 2018 +0100
Introduce class target_stack
Currently, the target stack is represented by a singly linked list,
with target_ops having a pointer to the target beneath. This poses a
problem for multi-process / multi-target debugging. In that case, we
will naturally want multiple instances of target stacks. E.g., one
stack for inferior 1 which is debugging a core file, and another
target stack for inferior 2 which is debugging a remote process. The
problem then is in finding a target's "beneath" target, if we consider
that for some target_ops types, we'll be sharing a single target_ops
instance between several inferiors. For example, so far, I found no
need to have multiple instances of the spu_multiarch_target /
exec_target / dummy_target targets.
Thus this patch, which changes the target stack representation to an
array of pointers. For now, there's still a single global instance of
this new target_stack class, though further down in the multi-target
work, each inferior will have its own instance.
gdb/ChangeLog:
2018-06-07 Pedro Alves <palves@redhat.com>
* target.h (target_ops) <beneath>: Now a method. All references
updated.
(class target_stack): New.
* target.c (g_target_stack): New.
(g_current_top_target): Delete.
(current_top_target): Get the top target out of g_target_stack.
(target_stack::push, target_stack::unpush): New.
(push_target, unpush_target): Reimplement.
(target_is_pushed): Reimplement in terms of g_target_stack.
(target_ops::beneath, target_stack::find_beneath): New.
commit d6ca69cddc3fc6ef61fdfe3c3803d13b0b4e13e9
Author: Pedro Alves <palves@redhat.com>
Date: Thu Jun 7 17:27:47 2018 +0100
Eliminate find_target_beneath
Call target_ops::beneath() throughout instead.
gdb/ChangeLog:
2018-06-07 Pedro Alves <palves@redhat.com>
* target.h (find_target_beneath): Delete declaration.
* target.c (find_target_beneath): Delete definition.
* aix-thread.c: All callers of find_target_beneath adjusted to
call target_ops::beneath instead.
* bsd-uthread.c: Likewise.
* linux-thread-db.c: Likewise.
* ravenscar-thread.c: Likewise.
* sol-thread.c: Likewise.
* spu-multiarch.c: Likewise.
commit b6a8c27bb8fb383be6f57724eb9aafa9f2f83aa5
Author: Pedro Alves <palves@redhat.com>
Date: Thu Jun 7 17:27:47 2018 +0100
target_ops::beneath -> target_ops::beneath()
This changes target_ops::beneath from a pointer to a method, and
adjusts all references throughout. The idea here is to make it easier
to change the target stack representation from an intrusive singly
linked list to something else without leaking implementation details
throughout.
The commit does not change the representation yet, that will be done
in a following patch. That is why a new target_ops::m_beneath field
appears here. That new field isn't really documented properly or made
private, simply because it will be removed shortly.
Note that target_ops::beneath() is essentially the same as the current
find_target_beneath routine. The following patch will eliminate the
latter.
gdb/ChangeLog:
2018-06-07 Pedro Alves <palves@redhat.com>
* target.h (target_ops) <beneath>: Now a method. All references
updated.
(target_ops) <m_beneath>: New.
* target.c (target_ops::beneath): New.
* corelow.c: Adjust all references to target_ops::beneath.
* linux-thread-db.c: Likewise.
* make-target-delegates: Likewise.
* record-btrace.c: Likewise.
* record-full.c: Likewise.
* remote.c: Likewise.
* target.c: Likewise.
* target-delegates.c: Regenerate.
commit 8b88a78e63526b84d540b9c7d5f459593a248d5e
Author: Pedro Alves <palves@redhat.com>
Date: Thu Jun 7 17:27:46 2018 +0100
target_stack -> current_top_target() throughout
The recent C++ification of target_ops replaced references to the old
"current_target" squashed target throughout with references to a
"target_stack" pointer. I had picked the "target_stack" name very
early in the multi-target work, and managed to stick with it, even
though it's a bit of a misnomer, since it isn't really a "target
stack" object, but a pointer into the current top target in the stack.
As I'm splitting more pieces off of the multi-target branch, I've come
to think that it's better to rename it now. A following patch will
introduce a new class to represent a target stack, and "target_stack"
would be _its_ ideal name. (In the branch, the class is called
a_target_stack to work around the clash.)
Thus this commit renames target_stack to current_top_target and
replaces all references throughout. Also, while at it,
current_top_target is made a function instead of a pointer, to make it
possible to change its internal implementation without leaking
implementation details out. In a couple patches, the implementation
of the function will change to refer to a target stack object, and
then further down the multi-target work, it'll change again to find
the right target stack for the current inferior.
gdb/ChangeLog:
2018-06-07 Pedro Alves <palves@redhat.com>
* target.h (target_stack): Delete.
(current_top_target): Declare function.
* target.c (target_stack): Delete.
(g_current_top_target): New.
(current_top_target): New function.
* auxv.c: Use current_top_target instead of target_stack
throughout.
* avr-tdep.c: Likewise.
* breakpoint.c: Likewise.
* corefile.c: Likewise.
* elfread.c: Likewise.
* eval.c: Likewise.
* exceptions.c: Likewise.
* frame.c: Likewise.
* gdbarch-selftests.c: Likewise.
* gnu-v3-abi.c: Likewise.
* ia64-tdep.c: Likewise.
* ia64-vms-tdep.c: Likewise.
* infcall.c: Likewise.
* infcmd.c: Likewise.
* infrun.c: Likewise.
* linespec.c: Likewise.
* linux-tdep.c: Likewise.
* minsyms.c: Likewise.
* ppc-linux-nat.c: Likewise.
* ppc-linux-tdep.c: Likewise.
* procfs.c: Likewise.
* regcache.c: Likewise.
* remote.c: Likewise.
* rs6000-tdep.c: Likewise.
* s390-linux-nat.c: Likewise.
* s390-tdep.c: Likewise.
* solib-aix.c: Likewise.
* solib-darwin.c: Likewise.
* solib-dsbt.c: Likewise.
* solib-spu.c: Likewise.
* solib-svr4.c: Likewise.
* solib-target.c: Likewise.
* sparc-tdep.c: Likewise.
* sparc64-tdep.c: Likewise.
* spu-tdep.c: Likewise.
* symfile.c: Likewise.
* symtab.c: Likewise.
* target-descriptions.c: Likewise.
* target-memory.c: Likewise.
* target.c: Likewise.
* target.h: Likewise.
* tracefile-tfile.c: Likewise.
* tracepoint.c: Likewise.
* valops.c: Likewise.
* valprint.c: Likewise.
* value.c: Likewise.
* windows-tdep.c: Likewise.
* mi/mi-main.c: Likewise.
commit c7110220be62590222e35525dda499902ee49a89
Author: Tom Tromey <tom@tromey.com>
Date: Sat May 5 10:24:54 2018 -0600
Change build_address_symbolic to return std::string
This changes two out parameters of build_address_symbolic to be
std::string, and updates the callers. This allows removing some
cleanups.
This patch also moves the declaration of build_address_symbolic out of
defs.h. I think that many things in defs.h should be elsewhere
instead. In this case, I moved the declaration to valprint.h, becuase
there is no "printcmd.h" -- but perhaps it would be better to
introduce that instead.
Tested by the buildbot.
gdb/ChangeLog
2018-06-07 Tom Tromey <tom@tromey.com>
* valprint.h (build_address_symbolic): Declare.
* printcmd.c (print_address_symbolic): Update.
(build_address_symbolic): Change "name" and "filename" to
std::string.
* disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
Update.
* defs.h (build_address_symbolic): Remove declaration.
commit 2a9b2c1abe29e1063240604d2464b8de9a46011f
Author: Tamar Christina <tamar.christina@arm.com>
Date: Thu Jun 7 11:53:13 2018 +0100
Fix AArch64 unintialized variable which can cause diagnostic failures.
This patch fixes an uninitialized memory issue that can under certain
circumstances turn an error into a warning because non_fatal was not initialised
in all cases.
Verified using valgrind.
gas/config/tc-aarch64.c
PR binutils/21446
* tc-aarch64.c (record_operand_error, record_operand_error_with_data):
Initialize non_fatal.
commit 63bad7b636870e3a0af4fc97cc2b8ec5c2603a41
Author: Alan Hayward <alan.hayward@arm.com>
Date: Thu Oct 19 16:35:35 2017 +0100
Aarch64 SVE pseudo register support
Add the functionality for reading/writing pseudo registers.
On SVE the V registers are pseudo registers. This is supported
by adding AARCH64_SVE_V0_REGNUM.
* aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
(aarch64_vnv_type): Add function.
(aarch64_pseudo_register_name): Add V regs for SVE.
(aarch64_pseudo_register_type): Likewise.
(aarch64_pseudo_register_reggroup_p): Likewise.
(aarch64_pseudo_read_value_2): Use V0 offset for SVE
(aarch64_pseudo_read_value): Add V regs for SVE.
(aarch64_pseudo_write_2): Use V0 offset for SVE
(aarch64_pseudo_write): Add V regs for SVE.
* aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
commit 066b621238bb79de517564284ec58e99fb33e6bd
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Jun 7 00:00:50 2018 +0000
Automatic date update in version.in
commit fc6041a7763e330413b7a6e7f77c38cbf2b67793
Author: Alan Modra <amodra@gmail.com>
Date: Sat Jun 2 18:46:03 2018 +0930
EXECUTABLE_SYMBOLS -> OTHER_SYMBOLS
EXECUTABLE_SYMBOLS is supposed to be true to its name, only defining
symbols for the executable.
* emulparams/elf64bmip.sh (EXECUTABLE_SYMBOLS): Don't define.
(OTHER_SYMBOLS): Define this instead.
* emulparams/elf32bmipn32.sh (EXECUTABLE_SYMBOLS): Don't define.
(OTHER_SYMBOLS): Define similarly to elf64bmip.sh.
* emulparams/elf64hppa.sh (EXECUTABLE_SYMBOLS): Don't define.
(OTHER_SYMBOLS): Define instead.
commit 527278f3360dde3e5439b8d10f3f635155b35aca
Author: Alan Modra <amodra@gmail.com>
Date: Sat Jun 2 18:05:24 2018 +0930
TIC6X __c6xabi_DSBT_BASE
Adding an undefined __c6xabi_DSBT_BASE via an EXTERN in the linker
script isn't ideal, as the symbol is not always needed. This patch
adds the undefined symbol on encountering relocations where it is
implicitly referenced.
bfd/
* elf32-tic6x.c (elf32_tic6x_check_relocs): Reference
__c6xabi_DSBT_BASE explicitly for R_C6000_SBR_* relocs.
ld/
* emulparams/elf32_tic6x_le.sh (EXECUTABLE_SYMBOLS): Don't define.
commit e5a77256e8961294b3ea7d483124834311ca363b
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Tue Jun 5 17:55:39 2018 -0400
Guard declarations of 'sve_{vq,vl}_from_{vl,vq}' macros on Aarch64 (and unbreak build)
Commit 122394f1476b1c925a281b15399119500c8231c1 ("Function for reading
the Aarch64 SVE vector length") has added macros to manipulate SVE
vector sizes based on Linux kernel sources, but did not guard them
with #ifndef's, which breaks the build when the system headers already
have these macros:
CXX aarch64-linux-nat.o
In file included from ../../gdb/aarch64-tdep.h:25,
from ../../gdb/aarch64-linux-nat.c:30:
../../gdb/arch/aarch64.h:79: error: "sve_vq_from_vl" redefined [-Werror]
#define sve_vq_from_vl(vl) ((vl) / 0x10)
In file included from /usr/include/bits/sigcontext.h:30,
from /usr/include/signal.h:291,
from build-gnulib/import/signal.h:52,
from ../../gdb/linux-nat.h:23,
from ../../gdb/aarch64-linux-nat.c:26:
/usr/include/asm/sigcontext.h:154: note: this is the location of the previous definition
#define sve_vq_from_vl(vl) ((vl) / SVE_VQ_BYTES)
In file included from ../../gdb/aarch64-tdep.h:25,
from ../../gdb/aarch64-linux-nat.c:30:
../../gdb/arch/aarch64.h:80: error: "sve_vl_from_vq" redefined [-Werror]
#define sve_vl_from_vq(vq) ((vq) * 0x10)
In file included from /usr/include/bits/sigcontext.h:30,
from /usr/include/signal.h:291,
from build-gnulib/import/signal.h:52,
from ../../gdb/linux-nat.h:23,
from ../../gdb/aarch64-linux-nat.c:26:
/usr/include/asm/sigcontext.h:155: note: this is the location of the previous definition
#define sve_vl_from_vq(vq) ((vq) * SVE_VQ_BYTES)
In order to fix this breakage, this commit guards the declaration of
the macros using #ifndef's.
gdb/ChangeLog:
2018-06-06 Sergio Durigan Junior <sergiodj@redhat.com>
* arch/aarch64.h (sve_vg_from_vl): Guard with #ifndef.
(sve_vl_from_vg): Likewise.
(sve_vq_from_vl): Likewise.
(sve_vl_from_vq): Likewise.
(sve_vq_from_vg): Likewise.
(sve_vg_from_vq): Likewise.
commit eb5c42e511321b51849735a6d2762941fd5d6520
Author: Sameera Deshpande <sameera.deshpande@linaro.org>
Date: Wed Jun 6 15:19:59 2018 +0100
Update the AArch64 assembler to note that the Qualcomm Saphira cpu supports ARMv8.4
gas * config/tc-aarch64.c (aarch64_cpus): Add support of ARMv8.4 in
saphira.
commit 08f22593f0069b1ed00fb4fa18b696064a1cef54
Author: Alan Modra <amodra@gmail.com>
Date: Wed Jun 6 19:38:28 2018 +0930
armelf_fbsd and armelf_fuchsia dependencies
* Makefile.am (earmelf_fbsd.c): Correct dependencies.
(earmelfb_fbsd.c, earmelfb_fuchsia.c): Likewise.
* Makefile.in: Regenerate.
commit ce72cd46ec611fe6440053f282b1b6cb7e977ff6
Author: Alan Modra <amodra@gmail.com>
Date: Wed Jun 6 15:30:35 2018 +0930
Fix xtensa "clobbered by longjmp" warnings
.../opcodes/xtensa-dis.c: In function âprint_insn_xtensaâ:
.../opcodes/xtensa-dis.c:257:17: error: variable âfmtâ might be clobbered by âlongjmpâ or âvforkâ [-Werror=clobbered]
xtensa_format fmt;
^~~
.../opcodes/xtensa-dis.c:262:26: error: variable âvalid_insnâ might be clobbered by âlongjmpâ or âvforkâ [-Werror=clobbered]
int first, first_slot, valid_insn = 0;
^~~~~~~~~~
* xtensa-dis.c (print_insn_xtensa): Init fmt and valid_insn after
setjmp. Move init for some other vars later too.
commit 773ff7907c05313aebbcd5e8319e5b869ac4f792
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Jun 6 00:00:53 2018 +0000
Automatic date update in version.in
commit c61b06a19a34baab66e3809c7b41b0c31009ed9f
Author: Tom Tromey <tom@tromey.com>
Date: Fri May 11 12:21:03 2018 -0600
Remove some text from --version output
I happened to notice recently that "gdb --version" says:
GNU gdb (GDB) 8.0.50.20170911-git
Copyright (C) 2017 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word".
This is a bit on the wordy side, but also references interactive
commands, which I think doesn't really make sense for --version.
This patch removes some text from --version, while leaving it in the
"show version" output. It also adds a newline between the URLs and
the "For help, ..." text, because I thought that was easier to read.
Finally, it indents one of the URLs, since that was simpler to read,
but not the other URL, because the current format is specified by the
GNU coding standards section on "--version".
Now the --version output looks like:
GNU gdb (GDB) 8.1.50.20180511-git
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Tested by the buildbot.
gdb/ChangeLog
2018-06-05 Tom Tromey <tom@tromey.com>
* cli/cli-cmds.c (show_version): Update.
* top.c (print_gdb_version): Add "interactive" parameter.
Update.
* main.c (captured_main_1): Update.
* top.h (print_gdb_version): Add "interactive" parameter and a
comment.
gdb/testsuite/ChangeLog
2018-06-05 Tom Tromey <tom@tromey.com>
* gdb.base/default.exp: Update expected "show version" output.
commit 115f7325b5b76450b9a1d16848a2a54f54e49747
Author: David Malcolm <dmalcolm@redhat.com>
Date: Tue Jun 5 18:22:25 2018 +0100
Fix typo in common/enum-flags.h example
The DEF_ENUM_FLAGS_TYPE macro should be used with a trailing
semicolon, but the example in the comment lacks one.
gdb/ChangeLog:
2018-06-05 David Malcolm <dmalcolm@redhat.com>
* common/enum-flags.h: Add trailing semicolon to example in
comment.
commit eb6af80922a56b67228f7564facc4cb4aa44a0ae
Author: Tom Tromey <tom@tromey.com>
Date: Wed Apr 25 08:52:00 2018 -0600
Add "continue" response to pager
This adds a "continue" response to the pager. If the user types "c"
in response to the pager prompt, pagination will be disabled for the
duration of one command -- but re-enabled afterward. This is handy if
you type a command that produces a lot of output, and you don't want
to baby-sit it by typing "return" each time the prompt comes up.
Tested by the buildbot.
gdb/ChangeLog
2018-06-05 Tom Tromey <tom@tromey.com>
PR cli/12326:
* NEWS: Add entry about pager.
* utils.c (pagination_disabled_for_command): New global.
(prompt_for_continue): Allow "c" response to prompt.
(reinitialize_more_filter): Clear
pagination_disabled_for_command.
(fputs_maybe_filtered): Check pagination_disabled_for_command.
gdb/doc/ChangeLog
2018-06-05 Tom Tromey <tom@tromey.com>
PR cli/12326:
* gdb.texinfo (Screen Size): Document "c" response to pagination
prompt.
gdb/testsuite/ChangeLog
2018-06-05 Tom Tromey <tom@tromey.com>
PR cli/12326:
* gdb.cp/static-print-quit.exp: Update.
* lib/gdb.exp (pagination_prompt): Update.
* gdb.base/page.exp: Use pagination_prompt. Add new tests.
* gdb.python/python.exp: Update.
commit 5c4ce239a3ab9263163a0fe8e7487b39a41c43d1
Author: Alan Modra <amodra@gmail.com>
Date: Tue Jun 5 22:31:23 2018 +0930
Tidy bfdio to consistenly use containing archive
Archive element IO is performed on the file of the containing archive,
which leads to the BFD "where" field of archives and their elements
being out of sync with the real file position. (We're talking
traditional archives here, not thin archives.) The old bfd_seek code
recognized this by not attempting to optimize away seeks for
archives. However, there was other code that could return bogus
results. For example, cache.c limits the number of open files by
closing a file and remembering its state once the limit is reached.
If bfd_tell is called on an archive element when the containing
archive is closed, it will return an invalid file pointer.
It's possible to have a valid "where" field for archives by always
using and updating the containing archive BFD. That's what this patch
does. Note that cache.c used to find the containing archive BFD
anyway for the iostream, so we're not really doing extra work, just
transferring it up to the correct abstraction level.
The patch also gets rid of some hacks. bfd_tell was called when
bfd_seek failed, in an attempt to correct "where". That's got to be
papering over another problem, so that code has been removed.
bfd_read also had an "optimiziation" to return early when the number
of bytes was zero, and bfd_seek optimized calls that didn't move the
file pointer. This was covering for a coff_slurp_line_table bug where
IO was attempted on a pe-dll BFD without an iovec.
* bfd.c (struct bfd): Update comment on "where" usage.
* bfdio.c (bfd_bwrite, bfd_stat): Use and update "iovec",
"iostream", and "where" from containing archive file. Return
error on NULL iovec.
(bfd_bread): Similarly, and return error attempted out of
bounds archive element access.
(bfd_tell, bfd_flush): Use and update "iovec", "iostream", and
"where" from containing archive file.
(bfd_seek): Likewise. Return error on NULL iovec. Don't
attempt to optimize away seeks. Don't paper over errors by
calling bfd_tell.
(bfd_get_mtime): Call bfd_stat rather than iovec->bstat.
(bfd_get_size): Likewise.
(bfd_mmap): Operate on and use iovec of containing archive
file. Return error on NULL iovec.
* cache.c (bfd_cache_lookup_worker): Abort if working on
archive element bfd.
(cache_bread_1): Delete bfd parameter, add FILE* parameter.
Don't ignore zero byte reads.
(cache_bread): Look up FILE* in cache here. Error on NULL
lookup.
(cache_bwrite): Rename "where" to "from".
(cache_bmmap): Don't handle archive elements.
* coffcode.h (coff_slurp_line_table): Exit early on zero
lineno count.
* bfd-in2.h: Regenerate.
commit 27b0767593284f97384b3597ebd211164f8c8b47
Author: Alan Modra <amodra@gmail.com>
Date: Tue Jun 5 21:04:00 2018 +0930
PR23254, ld.bfd mishandles file pointers while scanning archive
Best practice is to not mix lseek/read with fseek/fread on the same
underlying file descriptor, as not all stdio implementations will cope.
Since the plugin uses lseek/read while bfd uses fseek/fread this patch
reopens the file for exclusive use by the plugin rather than trying to
restore the file descriptor. That allows the plugin to read the file
after plugin_call_claim_file too.
bfd/
PR 23254
* plugin.c (bfd_plugin_open_input): Allow for possibility of
nested archives. Open file again for plugin.
(try_claim): Don't save and restore file position. Close file
if not claimed.
* sysdep.h (O_BINARY): Define.
ld/
PR 23254
* plugin.c (plugin_call_claim_file): Revert 2016-07-19 patch.
(plugin_object_p): Don't dup file descriptor.
commit 8347745522002d5c0093bac584a2eaf9386ad219
Author: Alan Modra <amodra@gmail.com>
Date: Tue Jun 5 21:01:56 2018 +0930
Another s12z regen
* Makefile.in: Regenerate.
commit 112ba8675ec7756ef8065feb655df2d4f39ee731
Author: Flavio Ceolin <flavio.ceolin@intel.com>
Date: Tue Jun 5 12:39:47 2018 +0100
Add a test of the linker's "-z noexecstack" command line option.
ld * testsuite/ld-elf/elf.exp Run new test.
* testsuite/ld-elf/stack-noexec.rd New file: Expected readelf output.
commit 84e219e23cfb7d2632dec0d1c3ac2d942b620882
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Jun 5 12:26:44 2018 +0100
Updated Malay and Esperanto translations for the gprof/ subdirectory.
2018-06-05 Nick Clifton <nickc@redhat.com>
* po/eo.po: Updated Esperanto translation.
* po/ms.po: Updated Malay translation.
commit e6d079c2fb797e84d7d234f9c8277fbe4558213b
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Jun 5 00:00:36 2018 +0000
Automatic date update in version.in
commit 54d343a24019367e85bb2e90966f2da483868637
Author: Tom Tromey <tom@tromey.com>
Date: Fri May 25 13:32:20 2018 -0600
Remove last Ada cleanups
This removes the last cleanups from the Ada code by changing
ada_lookup_symbol_list's out parameter to be a std::vector, and then
fixing up the fallout.
This is a relatively shallow change. Deeper changes are possible, for
example (1) changing various other functions to accept a vector rather
than a pointer, or (2) changing ada_lookup_symbol_list to return the
vector and omitting the length entirely.
Tested by the buildbot, but I'll wait for Joel to test these as well.
gdb/ChangeLog
2018-06-04 Tom Tromey <tom@tromey.com>
* ada-lang.h (ada_lookup_symbol_list): Update.
* ada-lang.c (resolve_subexp): Update.
(symbols_are_identical_enums): Change type of syms. Remove nsyms
parameter.
(remove_extra_symbols, remove_irrelevant_renamings): Likewise.
(ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
results parameter to std::vector.
(ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
Update.
* ada-exp.y (block_lookup): Update.
(select_possible_type_sym): Change type of syms. Remove nsyms
parameter.
(write_var_or_type, write_name_assoc): Update.
commit 178d6a638693d1a7a66b0553f16b1df95b4f27ee
Author: Joel Brobecker <brobecker@adacore.com>
Date: Mon Jun 4 15:03:32 2018 -0500
(windows) GDB/MI crash when using "-list-thread-groups --available"
On Windows, using the "-list-thread-groups --available" GDB/MI command
before an inferior is being debugged:
% gdb -q -i=mi
=thread-group-added,id="i1"
=cmd-param-changed,param="auto-load safe-path",value="/"
(gdb)
-list-thread-groups --available
Segmentation fault
Ooops!
The SEGV happens because the -list-thread-groups --available command
triggers a windows_nat_target::xfer_partial call for a TARGET_OBJECT_OSDATA
object. Until a program is being debugged, the target_ops layer that
gets the call is the Windows "native" layer. Except for a couple of
specific objects (TARGET_OBJECT_MEMORY and TARGET_OBJECT_LIBRARIES),
this layer's xfer_partial method delegates the xfer of other objects
to the target beneath:
default:
return beneath->xfer_partial (object, annex,
readbuf, writebuf, offset, len,
xfered_len);
Unfortunately, there is no "beneath layer" in this case, so
beneath is NULL and dereferencing it leads to the SEGV.
This patch fixes the issue by checking beneath before trying
to delegate the request.
gdb/ChangeLog:
* windows-nat.c (windows_nat_target::xfer_partial): Return
TARGET_XFER_E_IO if we need to delegate to the target beneath
but BENEATH is NULL.
gdb/testsuite/ChangeLog:
* gdb.mi/list-thread-groups-no-inferior.exp: New testcase.
commit 4b8e28c79356265b2c111e044142fb6d6d2db44e
Author: Max Filippov <jcmvbkbc@gmail.com>
Date: Thu May 24 11:22:14 2018 -0700
xtensa: use property tables for correct disassembly
xtensa disassembler does not use information from the .xt.prop sections
to switch between code/data disassembly in text sections. This may
result in incorrect disassembly when data is interpreted as code and
disassembler loses synchronization with instruction stream. Use .xt.prop
section information to correctly interpret code and data and synchronize
with instruction stream.
2018-06-04 Max Filippov <jcmvbkbc@gmail.com>
bfd/
* elf32-xtensa.c (xtensa_read_table_entries): Make global.
(compute_fill_extra_space): Drop declaration. Rename function to
xtensa_compute_fill_extra_space.
(compute_ebb_actions, remove_dead_literal): Update references to
compute_fill_extra_space.
include/
* elf/xtensa.h (xtensa_read_table_entries)
(xtensa_compute_fill_extra_space): New declarations.
opcodes/
* xtensa-dis.c (bfd.h, elf/xtensa.h): New includes.
(dis_private): Add new fields for property section tracking.
(xtensa_coalesce_insn_tables, xtensa_find_table_entry)
(xtensa_instruction_fits): New functions.
(fetch_data): Bump minimal fetch size to 4.
(print_insn_xtensa): Make struct dis_private static.
Load and prepare property table on section change.
Don't disassemble literals. Don't disassemble instructions that
cross property table boundaries.
commit 8255c61b8ad5ac933672d26e5c9454aaf09ccaeb
Author: Max Filippov <jcmvbkbc@gmail.com>
Date: Tue May 22 21:48:09 2018 -0700
xtensa: add separate property sections option
It is currently not possible to correctly match .xt.prop information
for sections with identical VMA. Allow creation of separate property
sections in the BFD. Add assembler option --separate-prop-tables to
allow creation of separate property sections.
2018-06-04 Volodymyr Arbatov <arbatov@cadence.com>
bfd/
* elf32-xtensa.c (elf32xtensa_separate_props): New global
variable.
(xtensa_add_names): New function.
(xtensa_property_section_name): Add new parameter
separate_sections, use it to choose property section name.
(xtensa_get_separate_property_section): New function.
(xtensa_get_property_section): Invoke
xtensa_get_separate_property_section to get individual property
section if it exists, common property section otherwise.
(xtensa_make_property_section): Pass elf32xtensa_separate_props
to xtensa_property_section_name.
gas/
* config/tc-xtensa.c (elf32xtensa_separate_props): New
declaration.
(option_separate_props, option_no_separate_props): New
enumeration constants.
(md_longopts): Add separate-prop-tables option.
(md_parse_option): Add cases for option_separate_props and
option_no_separate_props.
(md_show_usage): Add help for [no-]separate-prop-tables options.
commit 95da9854466ada2572b42f5528711a06a2d42db1
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Jun 4 10:01:34 2018 -0700
Use DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION to silence GCC 8.1
GCC 8.1 warns about destination size with -Wstringop-truncation:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85643
Use DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION to silence it.
bfd/
PR binutils/23146
* bfd-in.h: Include "diagnostics.h".
* bfd-in2.h: Regenerated.
* elf32-arm.c (elf32_arm_nabi_write_core_note): Use
DIAGNOSTIC_PUSH, DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION and
DIAGNOSTIC_POP to silence GCC 8.1 warnings with
-Wstringop-truncation.
* elf32-ppc.c (ppc_elf_write_core_note): Likewse.
* elf32-s390.c (elf_s390_write_core_note): Likewse.
* elf64-ppc.c (ppc64_elf_write_core_note): Likewse.
* elf64-s390.c (elf_s390_write_core_note): Likewse.
* elfxx-aarch64.c (_bfd_aarch64_elf_write_core_note): Likewse.
include/
* diagnostics.h (DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION): Always
define for GCC.
commit 62b74cb8b00ca2b42de30ceff4d2f1552b77a10d
Author: Alan Hayward <alan.hayward@arm.com>
Date: Mon Jun 4 17:21:04 2018 +0100
Use ELF_SECTION_IN_SEGMENT to map segments
The macro ELF_SECTION_IN_SEGMENT should be used when calculating if
a section maps to a segment.
gdb/
* elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
commit baf00c2d75351de7a42dae32aea3a71c8902cd25
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jun 4 10:40:27 2018 -0400
Add configure.nat as a dependency of config.status
After pulling Alan's change that added aarch64-sve-linux-ptrace.o to
configure.nat, I got an undefined reference to aarch64_sve_get_vq when
doing a "make clean && make". It turns out that re-running configure
(./config.status --recheck) was needed to re-generate the Makefile with
aarch64-sve-linux-ptrace.o included in the object list. Putting
configure.nat in the dependencies of config.status would make sure that
when we modify configure.nat, the configure script is re-ran. I think
it also makes sense because configure.tgt and configure.host are also
there.
gdb/ChangeLog:
* Makefile.in (config.status): Add configure.nat as a
dependency.
commit c12a5089640109567e2e06f0c5d2d1bf4fb3f5eb
Author: Stan Cox <scox@redhat.com>
Date: Mon Jun 4 10:20:49 2018 -0400
Add client_state struct.
Collect per client specific global data items into struct client_state,
which is similar in purpose to remote.c::remote_state.
gdbserver/ChangeLog
* server.h (struct client_state): New.
* server.c (cont_thread, general_thread, multi_process)
(report_fork_events, report_vfork_events, report_exec_events)
(report_thread_events, swbreak_feature, hwbreak_feature)
(vCont_supported, disable_randomization, pass_signals)
(program_signals, program_signals_p, last_status, last_ptid, own_buf):
Moved to client_state.
* remote-utils.c (remote_debug, noack_mode)
(transport_is_reliable): Moved to client_state.
* tracepoint.c (current_traceframe): Moved to client_state.
Update all callers.
* server.c, remote-utils.c, tracepoint.c, fork-child.c,
linux-low.c, remote-utils.h, target.c: Use client_state.
commit 23081219bfe58dd07b1e0a110728d7195155d0e2
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Jun 4 06:33:07 2018 -0700
Add DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION
Add DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION for GCC 8.1 to silence
-Wstringop-truncation warning:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85643
* diagnostics.h (DIAGNOSTIC_STRINGIFY_1): New.
(DIAGNOSTIC_STRINGIFY): Likewise.
(DIAGNOSTIC_IGNORE): Replace STRINGIFY with DIAGNOSTIC_STRINGIFY.
(DIAGNOSTIC_IGNORE_SELF_MOVE): Define empty if not defined.
(DIAGNOSTIC_IGNORE_DEPRECATED_REGISTER): Likewise.
(DIAGNOSTIC_IGNORE_UNUSED_FUNCTION): Likewise.
(DIAGNOSTIC_IGNORE_SWITCH_DIFFERENT_ENUM_TYPES): Likewise.
(DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION): New.
commit 214b073cedadbdc7a0d272dc5ede79a5ab7785ea
Author: Tom Tromey <tom@tromey.com>
Date: Fri Jun 1 11:50:01 2018 -0600
Change functions in cp-name-parser.y into methods
Pedro pointed out in an earlier patch that it would be possible to
make some helper functions in cp-name-parser.y into methods on
cpname_state, cleaning up the code a bit. This patch implements this
idea.
Doing this required moving the %union earlier in the .y file, so the
patch is somewhat bigger than you might expect.
Tested by building with both bison and byacc, and then running the
gdb.cp tests.
gdb/ChangeLog
2018-06-04 Tom Tromey <tom@tromey.com>
* cp-name-parser.y (cpname_state): Add method declarations.
(HANDLE_QUAL): Update.
(cpname_state::d_grab, cpname_state::fill_comp)
(cpname_state::make_operator, cpname_state::make_dtor)
(cpname_state::make_builtin_type, cpname_state::make_name)
(cpname_state::d_qualify, cpname_state::d_int_type)
(cpname_state::d_unary, cpname_state::d_binary): Now methods.
(%union): Move earlier.
commit 3c5cd5c3b4dcb88da4ff980186b63fa169ba9263
Author: Alan Hayward <alan.hayward@arm.com>
Date: Thu Apr 26 14:58:40 2018 +0100
Add aarch64 pseudo help functions
Reduce code copy/paste by adding two helper functions for
aarch64_pseudo_read_value and aarch64_pseudo_write
Does not change any functionality.
gdb/
* aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
(aarch64_pseudo_write_1): Likewise.
(aarch64_pseudo_read_value): Use helper.
(aarch64_pseudo_write): Likewise.
commit 59f413d5412217c5c6f9e25d0279a1997426d60a
Author: Pedro Alves <palves@redhat.com>
Date: Mon Jun 4 12:26:39 2018 +0100
Fix macOS null pointer dereference
<https://sourceware.org/bugzilla/show_bug.cgi?id=22960#c4> reports
that macOS gdb crashes with a null pointer dereference in
push_target(struct target_ops *). This commit fixes that.
The problem is that commit f6ac5f3d63e0 ("Convert struct target_ops to
C++") left the darwin_ops global uninitialized.
We don't need that global anymore, we can use the (new)
get_native_target function instead for the same effect.
gdb/ChangeLog:
2018-06-04 Pedro Alves <palves@redhat.com>
* darwin-nat.c (darwin_ops): Delete.
(darwin_attach_pid): Use get_native_target.
commit 1332a1400145b5cca04c4d1ea77e0191d8dc5727
Author: Alan Hayward <alan.hayward@arm.com>
Date: Mon Jun 4 12:13:43 2018 +0100
Use uint64_t for aarch64 tdep VQ
commit ba2d2bb24ea593c7fb17f51ef23f122064bb17d7
Author: Alan Hayward <alan.hayward@arm.com>
Date: Mon Jun 4 11:39:41 2018 +0100
Enable SVE for GDB
Enable SVE support for GDB by reading the VQ when creating a
target description.
Also ensurse that SVE is taken into account when creating
the tdep structure, and store the current VQ value directly in tdep.
gdb/
* aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
* aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
(aarch64_gdbarch_init): Check for SVE.
* aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
commit 39bfb9373c5cca78948c94174d46891c1a3d3613
Author: Alan Hayward <alan.hayward@arm.com>
Date: Fri Jun 1 16:37:45 2018 +0100
Use uint64_t for SVE VQ
Previously VQ was of type long. Using uint64_t ensures it always matches the
same type as the VG register.
Note that in the Linux kernel, VQ is 16bits. We cast it up to 64bits
immediately after reading to ensure we always use the same type throughout
the code.
gdb/
* aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
* aarch64-tdep.h (aarch64_read_description): Likewise.
* arch/aarch64.c (aarch64_create_target_description): Likewise.
* arch/aarch64.h (aarch64_create_target_description): Likewise.
* features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
* nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
* nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
commit ff183b0d8287db69c9fe9ea63cc1fdb51f392f78
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Jun 4 00:00:48 2018 +0000
Automatic date update in version.in
commit cf7a5066b92552b62ca4d247c241a19d1a6e599d
Author: Jim Wilson <jimw@sifive.com>
Date: Sun Jun 3 15:42:29 2018 -0700
RISC-V: Handle out-of-range calls to undefined weak.
bfd/
PR ld/23244
* elfnn-riscv.c (riscv_elf_relocate_section) <R_RISCV_CALL>: Check
for and handle an undefined weak with no PLT.
ld/
* testsuite/ld-riscv-elf/ld-riscv-elf.exp: Run new weak ref tests.
* testsuite/ld-riscv-elf/weakref.ld: New.
* testsuite/ld-riscv-elf/weakref32.d: New.
* testsuite/ld-riscv-elf/weakref32.s: New.
* testsuite/ld-riscv-elf/weakref64.d: New.
* testsuite/ld-riscv-elf/weakref64.s: New.
commit 137b5cbd204241ec47873c353cf7e41b47182d53
Author: Jim Wilson <jimw@sifive.com>
Date: Sun Jun 3 14:44:44 2018 -0700
RISC-V: Fix symbol address problem with versioned symbols.
bfd/
PR ld/22756
* elfnn-riscv.c (riscv_relax_delete_bytes): Add versioned_hidden check
to code that ignores duplicate symbols.
commit b15fe636afad8bfef76940823bed96f2c1860c30
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Jun 3 00:00:49 2018 +0000
Automatic date update in version.in
commit 41c60b4b2668947726fb5762de95d57b931a3200
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Sat Jun 2 09:17:06 2018 -0400
Split value_fetch_lazy
While reading value_fetch_lazy, I thought it would be good to split it
in small functions (especially the part that handles lval_register).
gdb/ChangeLog:
* value.c (value_fetch_lazy_bitfield): New.
(value_fetch_lazy_memory): New.
(value_fetch_lazy_register): New.
(value_fetch_lazy): Factor out to smaller functions.
commit a1313186709b5d714c44f9a7d4e93ee36de5ef84
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Jun 2 00:00:35 2018 +0000
Automatic date update in version.in
commit 7b640f726819bedab1515ce49f03c0de26193b3b
Author: Tom Tromey <tom@tromey.com>
Date: Wed May 30 08:19:01 2018 -0600
Make two cp-name-parser.y constants "const"
This changes "backslashable" and "represented" in cp-name-parser.y to
be const. This lets the compiler make them read-only (though in my
build it seems that GCC inlines them, which seems even better).
gdb/ChangeLog
2018-06-01 Tom Tromey <tom@tromey.com>
* cp-name-parser.y (backslashable, represented): Now const.
commit 98e69eb381347eb06dfedaa0b185ad26818ce5cd
Author: Tom Tromey <tom@tromey.com>
Date: Tue May 29 12:54:59 2018 -0600
Include parser-defs.h in cp-name-parser.y
This changes cp-name-parser.y to include parser-defs.h, removing the
copy-pasted declaration of parser_fprintf. This can be done now that
cp-name-parser.y does not define any global variables.
gdb/ChangeLog
2018-06-01 Tom Tromey <tom@tromey.com>
* cp-name-parser.y: Include parser-defs.h.
(parser_fprintf): Remove declaration.
commit 49265499d81d40ed07b71481749f35f209521f5a
Author: Tom Tromey <tom@tromey.com>
Date: Wed May 23 21:46:59 2018 -0600
Make cp-name-parser.y a pure parser
This changes cp-name-parser.y to be a pure parser.
Originally I had thought that doing this would mean that gdb would
always require Bison. However, I've learned that Byacc supports some
of the Bison extensions in this area. So, the new code ought to work
reasonably well with both.
Note that the Byacc documentations says:
%pure-parser
Most variables (other than yydebug and yynerrs) are allocated
on the stack within yyparse, making the parser reasonably
reentrant.
In our case this is ok, first because gdb does not yet actualy require
reentrancy, and second because gdb does not use yynerrs.
gdb/ChangeLog
2018-06-01 Tom Tromey <tom@tromey.com>
* cp-name-parser.y: Use %pure-parser, %lex-param, and
%parse-param.
(lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
(global_result): Remove globals.
(struct cpname_state): New.
(yyparse): Don't declare.
(yylex, yyerror): Move declarations after %union.
(d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
(make_name): Add state parameter.
Update all callers.
(d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
parameter.
(HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
Update.
(yylex): Add lvalp, state parameters.
(yyerror): Add state parameter.
(cp_demangled_name_to_comp): Update.
commit 55b6c9849624fc105539e08222fb8ff128a5f7e2
Author: Tom Tromey <tom@tromey.com>
Date: Tue May 29 12:20:09 2018 -0600
Use yy-remap.h in cp-name-parser.y
This changes cp-name-parser.y to use yy-remap.h, rather than its old
manual approach.
This required declaring parser_fprintf in cp-name-parser.y.
parser-defs.h can't be included here because parser-defs.h declares a
global "lexptr", which conflicts with the local one in
cp-name-parser.y. This is only temporary, and will be cleaned up
later in the series.
gdb/ChangeLog
2018-06-01 Tom Tromey <tom@tromey.com>
* cp-name-parser.y (parser_fprintf): Declare.
(GDB_YY_REMAP_PREFIX): Define.
Include yy-remap.h. Don't redefine yy* identifiers.
commit 3513a6bb20ef286e303367d4ef4963b5dab877cb
Author: Tom Tromey <tom@tromey.com>
Date: Wed May 23 21:05:52 2018 -0600
Remove a static buffer from cp-name-parser.y
This removes a static buffer from cp-name-parser.y by replacing the
fixed-sized buffer with a std::string out parameter.
gdb/ChangeLog
2018-06-01 Tom Tromey <tom@tromey.com>
* python/py-type.c (typy_legacy_template_argument): Update.
* cp-support.h (cp_demangled_name_to_comp): Update.
* cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
parameter to be a "std::string *".
(main): Update.
commit e9cb46ab59ff2ea94a7fd9fa857a084d3a9b8b39
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Jun 1 09:38:22 2018 -0700
Move gdb/common/diagnostics.h to include/diagnostics.h
Move gdb/common/diagnostics.h to include/diagnostics.h so that it can
be used in binutils.
gdb/
* ada-lex.l: Include "diagnostics.h" instead of
"common/diagnostics.h".
* unittests/environ-selftests.c: Likewise.
* common/diagnostics.h: Moved to ../include.
include/
* diagnostics.h: Moved from ../gdb/common/diagnostics.h.
commit 8e817061976910fd1ac7bb8f689dbd96123ea593
Author: Joel Brobecker <brobecker@adacore.com>
Date: Fri Jun 1 09:36:05 2018 -0700
inadvertent language switch during breakpoint_re_set_one
Trying to insert a breakpoint using *FUNC'address with an Ada program
and then running the program until reaching that breakpoint currently
yields the following behavior:
(gdb) break *a'address
Breakpoint 1 at 0x40240c: file a.adb, line 1.
(gdb) run
[1] + 27222 suspended (tty output) /[...]/gdb -q simple_main
Unsuspending GDB then shows it was suspended trying to report
the following error:
Starting program: /home/takamaka.a/brobecke/ex/simple/a
Error in re-setting breakpoint 1: Unmatched single quote.
Error in re-setting breakpoint 1: Unmatched single quote.
Error in re-setting breakpoint 1: Unmatched single quote.
[Inferior 1 (process 32470) exited normally]
The "a'address" is Ada speak for function A's address ("A" by
itself means the result of calling A with no arguments). The
transcript above shows that we're having problems trying to
parse the breakpoint location while re-setting it. As a result,
we also fail to stop at the breakpoint.
Normally, breakpoint locations are evaluated with the current_language
being set to the language of the breakpoint. But, unfortunately for us,
what happened in this case is that parse_exp_in_context_1 calls
get_selected_block which eventually leads to a call to select_frame
because the current_frame hadn't been set yet. select_frame then
finds that our language_mode is auto, and therefore changes the
current_language to match the language of the frame we just selected.
In our case, the language chosen was 'c', which of course is not
able to parse an Ada expression, hence the error.
This patch prevents this by forcing the language_mode to manual
before we call breakpoint_re_set_one.
gdb/ChangeLog:
* breakpoint.c (breakpoint_re_set): Temporarily force language_mode
to language_mode_manual while calling breakpoint_re_set_one.
gdb/testsuite/ChangeLog:
* gdb.ada/bp_fun_addr: New testcase.
Tested on x86_64-linux.
commit 55e99962b24d9f2dc8a64b473259ca12e369fd20
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Jun 1 09:34:04 2018 -0700
Bump version number to 2.30.52
Bump version number to 2.30.52 since _bfd_link_hide_symbol has been added
to bfd_target.
bfd/
* version.m4: Bump version to 2.30.52
* configure: Regenerated.
binutils/
* configure: Regenerated.
gas/
* configure: Regenerated.
gprof/
* configure: Regenerated.
ld/
* configure: Regenerated.
opcodes/
* configure: Regenerated.
commit a737d952e0a9122dd0d439ba2a2ca531b070e6bd
Author: Tom Tromey <tom@tromey.com>
Date: Tue Apr 17 13:51:25 2018 -0600
Remove type_name_no_tag and rename type_name_no_tag_or_error
type_name_no_tag is just a plain wrapper for TYPE_NAME now, so this
patch removes it. And, because tag names no longer exist, this
renames type_name_no_tag_or_error to type_name_or_error.
gdb/ChangeLog
2018-06-01 Tom Tromey <tom@tromey.com>
* valops.c (value_cast_structs, destructor_name_p): Update.
* symtab.c (gdb_mangle_name): Update.
* stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
Update.
* p-valprint.c (pascal_object_is_vtbl_ptr_type)
(pascal_object_print_value_fields, pascal_object_print_value):
Update.
* p-typeprint.c (pascal_type_print_derivation_info): Update.
* linespec.c (find_methods): Update.
* gdbtypes.h (type_name_no_tag): Remove.
(type_name_or_error): Rename from type_name_no_tag_or_error.
* gdbtypes.c (type_name_no_tag): Remove.
(type_name_or_error): Rename from type_name_no_tag_or_error.
(lookup_struct_elt_type, check_typedef): Update.
* expprint.c (print_subexp_standard): Update.
* dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
* d-namespace.c (d_lookup_nested_symbol): Update.
* cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
(cp_print_class_member): Update.
* cp-namespace.c (cp_lookup_nested_symbol): Update.
* completer.c (add_struct_fields): Update.
* c-typeprint.c (cp_type_print_derivation_info)
(c_type_print_varspec_prefix, c_type_print_base_struct_union):
Update.
* ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
(ada_prefer_type, ada_is_exception_sym): Update.
commit e86ca25fd6cc06488c9dda936cf83f0fcdf6b58b
Author: Tom Tromey <tom@tromey.com>
Date: Tue Apr 17 13:51:24 2018 -0600
Remove TYPE_TAG_NAME
TYPE_TAG_NAME has been an occasional source of confusion and bugs. It
seems to me that it is only useful for C and C++ -- but even there,
not so much, because at least with DWARF there doesn't seem to be any
way to wind up with a type where the name and the tag name are both
non-NULL and different.
So, this patch removes TYPE_TAG_NAME entirely. This should save a
little memory, but more importantly, it simplifies this part of gdb.
A few minor test suite adjustments were needed. In some situations
the new code does not yield identical output to the old code.
gdb/ChangeLog
2018-06-01 Tom Tromey <tom@tromey.com>
* valops.c (enum_constant_from_type, value_namespace_elt)
(value_maybe_namespace_elt): Update.
* valarith.c (find_size_for_pointer_math): Update.
* target-descriptions.c (make_gdb_type): Update.
* symmisc.c (print_symbol): Update.
* stabsread.c (define_symbol, read_type)
(complain_about_struct_wipeout, add_undefined_type)
(cleanup_undefined_types_1): Update.
* rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
(rust_range_type_p, val_print_struct, rust_print_struct_def)
(rust_internal_print_type, rust_composite_type)
(rust_evaluate_funcall, rust_evaluate_subexp)
(rust_inclusive_range_type_p): Update.
* python/py-type.c (typy_get_tag): Update.
* p-typeprint.c (pascal_type_print_base): Update.
* mdebugread.c (parse_symbol, parse_type): Update.
* m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
Update.
* guile/scm-type.c (gdbscm_type_tag): Update.
* go-lang.c (sixg_string_p): Update.
* gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
Update.
* gdbtypes.h (struct main_type) <tag_name>: Remove.
(TYPE_TAG_NAME): Remove.
* gdbtypes.c (type_name_no_tag): Simplify.
(check_typedef, check_types_equal, recursive_dump_type)
(copy_type_recursive, arch_composite_type): Update.
* f-typeprint.c (f_type_print_base): Update. Print "Type" prefix
in summary mode when needed.
* eval.c (evaluate_funcall): Update.
* dwarf2read.c (fixup_go_packaging, read_structure_type)
(process_structure_scope, read_enumeration_type)
(read_namespace_type, read_module_type, determine_prefix): Update.
* cp-support.c (inspect_type): Update.
* coffread.c (process_coff_symbol, decode_base_type): Update.
* c-varobj.c (c_is_path_expr_parent): Update.
* c-typeprint.c (c_type_print_base_struct_union): Update.
(c_type_print_base_1): Update. Print struct/class/union/enum in
summary when using C language.
* ax-gdb.c (gen_struct_ref, gen_namespace_elt)
(gen_maybe_namespace_elt): Update.
* ada-lang.c (ada_type_name): Simplify.
(empty_record, ada_template_to_fixed_record_type_1)
(template_to_static_fixed_type)
(to_record_with_fixed_variant_part, ada_check_typedef): Update.
gdb/testsuite/ChangeLog
2018-06-01 Tom Tromey <tom@tromey.com>
* gdb.xml/tdesc-regs.exp (load_description): Update expected
results.
* gdb.dwarf2/method-ptr.exp: Set language to C++.
* gdb.dwarf2/member-ptr-forwardref.exp: Set language to C++.
* gdb.cp/typeid.exp (do_typeid_tests): Update type_re.
* gdb.base/maint.exp (maint_pass_if): Update.
commit c1ec8cea7ff53eb76cb7c354b813c67fde755409
Author: Tom Tromey <tom@tromey.com>
Date: Tue Apr 17 13:51:23 2018 -0600
Thread language through c_type_print_args
Currently dwarf2read.c will pass the CU's language to
c_type_print_args -- but this doesn't affect all aspects of type
printing, because some code in c-typeprint.c refers to
current_language.
This patch threads the language through more of the type printing
code, adding an overload to c_type_print. Some uses of
current_language remain, but now they are only in top-level functions.
gdb/ChangeLog
2018-06-01 Tom Tromey <tom@tromey.com>
* dwarf2read.c (dwarf2_compute_name): Pass CU's language to
c_print_type.
* c-typeprint.c (c_print_type_1): Add "language" parameter.
(c_print_type): Update.
(c_print_type): New overload.
(c_type_print_varspec_prefix, c_type_print_args)
(c_type_print_varspec_suffix, c_print_type_no_offsets)
(c_type_print_base_struct_union, c_type_print_base_1)
(cp_type_print_method_args): Add "language" parameter.
(c_type_print_base): Update.
* c-lang.h (c_print_type): Add new overload.
commit bc8453a7bb617a5f14a465516f9f87c2ab6e05d5
Author: Tom Tromey <tom@tromey.com>
Date: Tue Apr 17 13:51:22 2018 -0600
Make c_type_print_varspec_suffix static
I noticed that c_type_print_varspec_suffix is only called from
c-typeprint.c, so this patch makes it "static".
gdb/ChangeLog
2018-06-01 Tom Tromey <tom@tromey.com>
* typeprint.h (c_type_print_varspec_suffix): Don't declare.
* c-typeprint.c (c_type_print_varspec_suffix): Now static.
commit 739e8682ff1cffc2809c91853efeef232d29e582
Author: Alan Hayward <alan.hayward@arm.com>
Date: Fri Jun 1 16:02:37 2018 +0100
Add SVE register defines
In order to prevent gaps in the register numbering, the Z registers
reuse the V register numbers (which become pseudos on SVE).
2018-06-01 Alan Hayward <alan.hayward@arm.com>
* aarch64-tdep.c (aarch64_sve_register_names): New const
var.
* arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
(AARCH64_SVE_Z_REGS_NUM): New define.
(AARCH64_SVE_P_REGS_NUM): Likewise.
(AARCH64_SVE_NUM_REGS): Likewise.
commit 3a00b02d277023ccfc5ccba3fcd4bae7aa485a49
Author: Alexandre Oliva <aoliva@redhat.com>
Date: Fri Jun 1 06:00:25 2018 -0300
Drop view when consuming line info
Fix locviews on ia64. If we do not drop the view after copying line
info to slots in the bundle, we may attempt to compute the view more
than once and get very confused.
for gas/ChangeLog
* dwarf2dbg.c (dwarf2_consume_line_info): Drop view.
commit 733bd0abdd059beff9d2c3be94fcd3b72fd44aaf
Author: Jan Beulich <jbeulich@novell.com>
Date: Fri Jun 1 08:41:16 2018 +0200
x86: fold MOV to/from segment register templates
First of all there's no point in having separate Cpu386 templates - the
respective SReg3 registers can't be specified for pre-386 anyway; see
parse_real_register().
And then we can also make use of D here for the memory forms of the
insn. This cannot be done for the non-64bit GPR forms because of the
IgnoreSize that cannot be dropped from the to-SREG variant.
commit dfd27d41831853da1c7694e2d9e765eccbed22cf
Author: Jan Beulich <jbeulich@novell.com>
Date: Fri Jun 1 08:40:38 2018 +0200
x86: don't emit REX.W for SLDT and STR
Just like for other selector register reads, they're unnecessary and
should hence be avoided.
commit 44846f29ab3a5fdab229cb63d9cd42323ed85767
Author: Jan Beulich <jbeulich@novell.com>
Date: Fri Jun 1 08:39:54 2018 +0200
x86: relax redundant REX prefix check
All REX bits can be specified via individual prefixes. Redundancy should
only be reported on a per-bit basis.
Note that I originally had further checks added to the test case,
checking the effect also on PDEP. I had to strip those, because my patch
to correctly handle those
(https://sourceware.org/ml/binutils/2017-02/msg00280.html) was rejected.
I continue to think that there should not be any new prefix introduced
to handle the VEX case - whether the encoding of an insn requires VEX et
al should not be of immediate interest to the programmer.
commit 4787f4a5860864337c4f1261713b9462b79ea16a
Author: Jan Beulich <jbeulich@novell.com>
Date: Fri Jun 1 08:39:08 2018 +0200
x86: simplify control register check
... as is already done elsewhere: There's no need for the use of
operand_type_equal() here - the bit identifying control registers isn't
used for any other purposes.
commit e0c7f900259ee54a6fdbc5d4103f30209dbec1bc
Author: Jan Beulich <jbeulich@novell.com>
Date: Fri Jun 1 08:38:36 2018 +0200
x86: tighten condition for emitting LOCK on control register accesses
The control register is never expressed by REX.B; this bit only affects
the involved GPR. Also only one of the operands can have its "control"
flag set, so only check the correct operand.
commit 647957107595c7f8209686577739240b7a222aba
Author: Jan Beulich <jbeulich@novell.com>
Date: Fri Jun 1 08:37:24 2018 +0200
x86/Intel: accept "oword ptr" for INVPCID
The insn is no different in this reagrd from INVEPT and INVVPID.
commit 030157d8a65afcc6292a4d3d183b816ed2ff7c57
Author: Alan Modra <amodra@gmail.com>
Date: Fri Jun 1 11:00:46 2018 +0930
Make _bfd_error_handler available outside libbfd
Needed when building libopcodes.so.
bfd/
* bfd.c (_bfd_error_handler): Arrange for this function to be
declared in bfd-in2.h.
* libbfd-in.h (_bfd_error_handler): Don't declare.
* libbfd.h: Regenerate.
* bfd-in2.h: Regenerate.
opcodes/
* sysdep.h (_bfd_error_handler): Don't declare.
* msp430-decode.opc: Include bfd.h. Don't include ansidecl.h here.
* rl78-decode.opc: Likewise.
* msp430-decode.c: Regenerate.
* rl78-decode.c: Regenerate.
commit 61a9a607b5f515c50c0a13d7e1b6bdf9d20d295e
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Jun 1 00:01:00 2018 +0000
Automatic date update in version.in
commit 984ee559a26e138d8bcc1f850c1cacb9eded2b1c
Author: Tom Tromey <tom@tromey.com>
Date: Thu Apr 26 16:51:40 2018 -0600
Fix "set" handling of Python parameters
It's long bothered me that setting a Python parameter from the CLI
will print the "set" help text by default. I think usually "set"
commands should be silent. And, while you can modify this behavior a
bit by providing a "get_set_string" method, if this method returns an
empty string, a blank line will be printed.
This patch removes the "help" behavior and changes the get_set_string
behavior to avoid printing a blank line. The code has a comment about
preserving API behavior, but I don't think this is truly important;
and in any case the workaround -- implementing get_set_string -- is
trivial.
Regression tested on x86-64 Fedora 26.
2018-04-26 Tom Tromey <tom@tromey.com>
* NEWS: Mention new "set" behavior.
* python/py-param.c (get_set_value): Don't print an empty string.
Don't call get_doc_string.
gdb/doc/ChangeLog
2018-04-26 Tom Tromey <tom@tromey.com>
* python.texi (Parameters In Python): Update get_set_string
documentation.
commit 7729052b5377bfbf1c5ec5eaab59dd5071d4c5b1
Author: Tom Tromey <tom@tromey.com>
Date: Sun Apr 22 15:13:09 2018 -0600
Add basic Python API for convenience variables
This adds a basic Python API for accessing convenience variables.
With this, convenience variables can be read and set from Python.
Although gdb supports convenience variables whose value changes at
each call, this is not exposed to Python; it could be, but I think
it's just as good to write a convenience function in this situation.
This is PR python/23080.
Tested on x86-64 Fedora 26.
2018-04-22 Tom Tromey <tom@tromey.com>
PR python/23080:
* NEWS: Update for new functions.
* python/py-value.c (gdbpy_set_convenience_variable)
(gdbpy_convenience_variable): New functions.
* python/python-internal.h (gdbpy_convenience_variable)
(gdbpy_set_convenience_variable): Declare.
* python/python.c (python_GdbMethods): Add convenience_variable,
set_convenience_variable.
doc/ChangeLog
2018-04-22 Tom Tromey <tom@tromey.com>
PR python/23080:
* python.texi (Basic Python): Document gdb.convenience_variable,
gdb.set_convenience_variable.
testsuite/ChangeLog
2018-04-22 Tom Tromey <tom@tromey.com>
PR python/23080:
* gdb.python/python.exp: Add convenience variable tests.
commit 8a60efe714e636c9f958058a8dfb12de81bdcbfa
Author: Uros Bizjak <ubizjak@gmail.com>
Date: Thu May 31 11:18:02 2018 -0400
Fix Alpha native GDB build
[Commit log by Simon Marchi]
I get this error:
CXX linux-nat.o
/home/simark/src/binutils-gdb/gdb/linux-nat.c: In function 'void save_stop_reason(lwp_info*)':
/home/simark/src/binutils-gdb/gdb/linux-nat.c:2718:9: error: duplicated 'if' condition [-Werror=duplicated-cond]
else if (GDB_ARCH_IS_TRAP_HWBKPT (siginfo.si_code))
^~
In file included from /home/simark/src/binutils-gdb/gdb/linux-nat.c:31:0:
/home/simark/src/binutils-gdb/gdb/nat/linux-ptrace.h:173:41: note: previously used here
# define GDB_ARCH_IS_TRAP_BRKPT(X) ((X) == TRAP_BRKPT)
~~~~~^~~~~~~~~~~~~~
/home/simark/src/binutils-gdb/gdb/linux-nat.c:2709:13: note: in expansion of macro 'GDB_ARCH_IS_TRAP_BRKPT'
else if (GDB_ARCH_IS_TRAP_BRKPT (siginfo.si_code))
^~~~~~~~~~~~~~~~~~~~~~
For Alpha, we currently define GDB_ARCH_IS_TRAP_BRKPT and
GDB_ARCH_IS_TRAP_HWBKPT both to ((X) == TRAP_BRKPT), which causes the
two if branches to be duplicated.
Alpha doesn't have hardware breakpoints, so the Linux kernel for Alpha
never sets si_code to TRAP_HWBKPT. We can just remove the special
definitions of these macros for __alpha__ and rely on the default ones.
Since the kernel will never report TRAP_HWBKPT, we will just never enter
the "hardware breakpoint" branch on Alpha (which is fine since it
doesn't have them).
gdb/ChangeLog:
* nat/linux-ptrace.h [__alpha__]
(GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
definitions.
commit 4b2dfa9d877a919e05817e6bfa4eda3addaf1b34
Author: Maciej W. Rozycki <macro@mips.com>
Date: Thu May 31 15:15:35 2018 +0100
arch-utils: Make the last endianness actually chosen sticky
Use the last endianness explicitly selected, either by choosing a binary
file or with the `set endian' command, for future automatic selection.
As observed with the `gdb.base/step-over-no-symbols.exp' test case when
discarding the binary file even while connected to a live target the
endianness automatically selected is reset to the GDB target's default,
even if it does not match the endianness of the target being talked to.
For example with a little-endian MIPS target and the default endianness
being big we get this:
(gdb) file .../gdb/testsuite/outputs/gdb.base/step-over-no-symbols/step-over-no-symbols
Reading symbols from .../gdb/testsuite/outputs/gdb.base/step-over-no-symbols/step-over-no-symbols...done.
(gdb) delete breakpoints
(gdb) info breakpoints
No breakpoints or watchpoints.
(gdb) break main
Breakpoint 1 at 0x400840: file .../gdb/testsuite/gdb.base/start.c, line 34.
[...]
(gdb) continue
Continuing.
Breakpoint 1, main () at .../gdb/testsuite/gdb.base/start.c:34
34 foo();
(gdb) delete breakpoints
Delete all breakpoints? (y or n) y
(gdb) info breakpoints
No breakpoints or watchpoints.
(gdb) file
A program is being debugged already.
Are you sure you want to change the file? (y or n) y
No executable file now.
Discard symbol table from `.../gdb/testsuite/outputs/gdb.base/step-over-no-symbols/step-over-no-symbols'? (y or n) y
No symbol file now.
(gdb) PASS: gdb.base/step-over-no-symbols.exp: displaced=off: purging symbols
p /x $pc
$1 = 0x40084000
(gdb) PASS: gdb.base/step-over-no-symbols.exp: displaced=off: get before PC
break *$pc
Breakpoint 2 at 0x40084000
(gdb) PASS: gdb.base/step-over-no-symbols.exp: displaced=off: break *$pc
set displaced-stepping off
(gdb) PASS: gdb.base/step-over-no-symbols.exp: displaced=off: set displaced-stepping off
stepi
Warning:
Cannot insert breakpoint 2.
Cannot access memory at address 0x40084000
Command aborted.
(gdb) FAIL: gdb.base/step-over-no-symbols.exp: displaced=off: stepi
p /x $pc
$2 = 0x40084000
(gdb) PASS: gdb.base/step-over-no-symbols.exp: displaced=off: get after PC
FAIL: gdb.base/step-over-no-symbols.exp: displaced=off: advanced
Remote debugging from host ...
monitor exit
(gdb) Killing process(es): ...
testcase .../gdb/testsuite/gdb.base/step-over-no-symbols.exp completed in 2 seconds
which shows that with the removal of the executable debugged the
endianness of $pc still at `main' gets swapped and the value in that
register is now incorrectly interpreted as 0x40084000 rather than
0x400840 as shown earlier on with the `break' command. Consequently the
debug session no longer works as expected, until the endianness is
overridden with an explicit `set endian little' command.
This will happen while working with any target hardware whose endianness
does not match the default GDB target's endianness guessed and recorded
for a later use in `initialize_current_architecture'.
Given that within a single run of GDB it is more likely that consecutive
target connections will use the same endianness than that the endianness
will be swapped between connections, it makes sense to preserve the last
endianness explicitly selected as the automatic default. It will make a
session like above, where an executable is removed, work correctly and
will retain the endianness for a further reconnection to the target.
And the new automatic default will still be overridden by subsequently
choosing a binary to debug, or with an explicit `set endian' command.
With the change in place the test case above completes successfully:
(gdb) continue
Continuing.
Breakpoint 1, main () at .../gdb/testsuite/gdb.base/start.c:34
34 foo();
(gdb) delete breakpoints
Delete all breakpoints? (y or n) y
(gdb) info breakpoints
No breakpoints or watchpoints.
(gdb) file
A program is being debugged already.
Are you sure you want to change the file? (y or n) y
No executable file now.
Discard symbol table from `.../gdb/testsuite/outputs/gdb.base/step-over-no-symbols/step-over-no-symbols'? (y or n) y
No symbol file now.
(gdb) PASS: gdb.base/step-over-no-symbols.exp: displaced=off: purging symbols
p /x $pc
warning: GDB can't find the start of the function at 0x400840.
GDB is unable to find the start of the function at 0x400840
and thus can't determine the size of that function's stack frame.
This means that GDB may be unable to access that stack frame, or
the frames below it.
This problem is most likely caused by an invalid program counter or
stack pointer.
However, if you think GDB should simply search farther back
from 0x400840 for code which looks like the beginning of a
function, you can increase the range of the search using the `set
heuristic-fence-post' command.
$1 = 0x400840
(gdb) PASS: gdb.base/step-over-no-symbols.exp: displaced=off: get before PC
break *$pc
Breakpoint 2 at 0x400840
(gdb) PASS: gdb.base/step-over-no-symbols.exp: displaced=off: break *$pc
set displaced-stepping off
(gdb) PASS: gdb.base/step-over-no-symbols.exp: displaced=off: set displaced-stepping off
stepi
warning: GDB can't find the start of the function at 0x4007f8.
0x004007f8 in ?? ()
(gdb) PASS: gdb.base/step-over-no-symbols.exp: displaced=off: stepi
p /x $pc
$2 = 0x4007f8
(gdb) PASS: gdb.base/step-over-no-symbols.exp: displaced=off: get after PC
PASS: gdb.base/step-over-no-symbols.exp: displaced=off: advanced
Remote debugging from host ...
monitor exit
(gdb) Killing process(es): ...
testcase .../gdb/testsuite/gdb.base/step-over-no-symbols.exp completed in 2 seconds
gdb/
* arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
the endianness selected.
* NEWS: Document `set endian auto' mode operation update.
gdb/doc/
* gdb.texinfo (Choosing Target Byte Order): Document endianness
selection details with the `set endian auto' mode.
gdb/testsuite
* gdb.base/endian.exp: New test.
* gdb.base/endian.c: New test source.
commit 122394f1476b1c925a281b15399119500c8231c1
Author: Alan Hayward <alan.hayward@arm.com>
Date: Thu May 31 14:36:48 2018 +0100
Function for reading the Aarch64 SVE vector length
Returns 0 for systems without SVE support.
Note the defines taken from Linux kernel headers
in aarch64-sve-linux-ptrace.h.
gdb/
* Makefile.in: Add new header.
* gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
(sve_vl_from_vg): Likewise.
(sve_vq_from_vl): Likewise.
(sve_vl_from_vq): Likewise.
(sve_vq_from_vg): Likewise.
(sve_vg_from_vq): Likewise.
* configure.nat: Add new c file.
* nat/aarch64-sve-linux-ptrace.c: New file.
* nat/aarch64-sve-linux-ptrace.h: New file.
gdbserver/
* configure.srv: Add new c/h file.
commit 95228a0d790f16deae3436e18f41b70fc711a5b2
Author: Alan Hayward <alan.hayward@arm.com>
Date: Thu May 31 13:33:04 2018 +0100
Add Aarch64 SVE target description
No code uses the new descriptions yet.
gdb/
* aarch64-linux-nat.c (aarch64_linux_read_description):
Add parmeter zero.
* aarch64-linux-tdep.c (aarch64_linux_core_read_description):
Likewise.
* aarch64-tdep.c (tdesc_aarch64_list): Add.
(aarch64_read_description): Use VQ to index tdesc_aarch64_list.
(aarch64_gdbarch_init): Add parmeter zero.
* aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
* arch/aarch64.c (aarch64_create_target_description): Check VQ.
* arch/aarch64.h (aarch64_create_target_description): Add VQ.
parmeter.
* doc/gdb.texinfo: Describe SVE feature
* features/aarch64-sve.c: New file.
gdbserver/
* linux-aarch64-tdesc.c (aarch64_linux_read_description): Add
null VQ.
commit 22467434fdc240e7c166f77f371909a8a07fc358
Author: edlinger <edlinger@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Mon May 28 18:21:23 2018 +0000
include: 2018-05-28 Bernd Edlinger <bernd.edlinger@hotmail.de>
include:
* splay-tree.h (splay_tree_compare_strings,
splay_tree_delete_pointers): Declare new utility functions.
libiberty:
2018-05-28 Bernd Edlinger <bernd.edlinger@hotmail.de>
* splay-tree.c (splay_tree_compare_strings,
splay_tree_delete_pointers): New utility functions.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@260850 138bc75d-0d04-0410-961f-82ee72b054a4
commit 5b372a4d35bd5874c1a6db2b89f42c7ed3097c63
Author: marxin <marxin@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Thu May 10 10:15:42 2018 +0000
Improve boostrap-ubsan config (PR bootstrap/64914).
2018-05-10 Martin Liska <mliska@suse.cz>
PR bootstrap/64914
* md5.c: Use strict alignment with UBSAN_BOOTSTRAP.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@260112 138bc75d-0d04-0410-961f-82ee72b054a4
commit e4554bf70235e3ebb10521ddbcbb2bf17abe4865
Author: law <law@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Mon Apr 30 18:00:49 2018 +0000
* argv.c (expandargv): Fix memory leak for expanded arguments.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@259775 138bc75d-0d04-0410-961f-82ee72b054a4
commit 5969f0dba74e17c694faf333b120f1e0b95783ed
Author: Omair Javaid <omair.javaid@linaro.org>
Date: Sat May 26 05:58:51 2018 +0500
Unset gdbarch significant_addr_bit by default
This patch fixes a bug introduced by fix to AArch64 pointer tagging.
In our fix for tagged pointer support our agreed approach was to sign
extend user-space address after clearing tag bits. This is not same
for all architectures and this patch allows sign extension for
addresses on targets which specifically set significant_addr_bit.
More information about patch that caused the issues and discussion
around tagged pointer support can be found in links below:
https://sourceware.org/ml/gdb-patches/2018-05/msg00000.html
https://sourceware.org/ml/gdb-patches/2017-12/msg00159.html
gdb/ChangeLog:
2018-05-31 Omair Javaid <omair.javaid@linaro.org>
PR gdb/23210
* gdbarch.sh (significant_addr_bit): Default to zero when
not set by target architecture.
* gdbarch.c: Re-generated.
* utils.c (address_significant): Update.
commit 0034eed03a7428c4902244a33a286763bca65016
Author: Alan Modra <amodra@gmail.com>
Date: Tue May 29 10:53:18 2018 +0930
Run a few more binutils tests non-native
Setting CC_FOR_TARGET from the environment CC was just plain wrong,
and no doubt the reason these tests were only run natively.
* testsuite/binutils-all/compress.exp (test_gnu_debuglink): Don't
set CC_FOR_TARGET. Run test non-native.
* testsuite/binutils-all/objdump.exp (test_build_id_debuglink):
Likewise.
(test_follow_debuglink): Run test non-native.
commit 4a4459db18a8dfa5745e129ea5cd654f8db0f2f0
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu May 31 00:00:35 2018 +0000
Automatic date update in version.in
commit 61367c61574e4d1f422e0f560672c4e63116fd7a
Author: Joel Brobecker <brobecker@adacore.com>
Date: Wed May 30 16:43:02 2018 -0700
(ARI) remove trailing newline in call to error in stack.c::func_command
gdb/ChangeLog:
* stack.c (func_command): Remove trailing newline in call to error.
commit 34a79281e4bd5d1a7f1d22a5a5be1ac2db56a3fc
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed May 30 14:54:46 2018 -0400
Remove regcache_raw_collect
Remove regcache_raw_collect, update callers to use
regcache::raw_collect.
gdb/ChangeLog:
* regcache.h (regcache_raw_collect): Remove, update callers to
use regcache::raw_collect.
* regcache.c (regcache_raw_collect): Remove.
commit 73e1c03f93f0294b464dc2b67de1f9aaae84838d
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed May 30 14:54:45 2018 -0400
Remove regcache_raw_supply
Remove regcache_raw_supply, update callers to use
detached_regcache::raw_supply.
gdb/ChangeLog:
* regcache.h (regcache_raw_supply): Remove, update callers to
use detached_regcache::raw_supply.
* regcache.c (regcache_raw_supply): Remove.
commit e4c4a59b48b2cec10cffac4f562937de00cb5f3f
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed May 30 14:54:44 2018 -0400
Remove regcache_cooked_write_part
Remove regcache_cooked_write_part, update callers to use
regcache::cooked_write_part.
gdb/ChangeLog:
* regcache.h (regcache_cooked_write_part): Remove, update
callers to use regcache::cooked_write_part.
* regcache.c (regcache_cooked_write_part): Remove.
commit 73bb0000525a67694c1e8921e7c34ee0d985787e
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed May 30 14:54:43 2018 -0400
Remove regcache_cooked_read_part
Remove regcache_cooked_read_part, update callers to use
readable_regcache::cooked_read_part.
gdb/ChangeLog:
* regcache.h (regcache_cooked_read_part): Remove, update callers
to use readable_regcache::cooked_read_part.
* regcache.c (regcache_cooked_read_part): Remove.
commit 46a45e9d5b067e484971e3972fa3eae0a224324f
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed May 30 14:54:42 2018 -0400
Remove regcache_cooked_read_value
Remove regcache_cooked_read_value, update callers to use
readable_regcache::cooked_read_value.
gdb/ChangeLog:
* regcache.h (regcache_cooked_read_value): Remove, update
callers to use readable_regcache::cooked_read_value.
* regcache.c (regcache_cooked_read_value): Remove.
commit b66f5587de2a096f357124b20376b2bab980238b
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed May 30 14:54:42 2018 -0400
Remove regcache_cooked_write
Remove regcache_cooked_write, update callers to use
regcache::cooked_write.
gdb/ChangeLog:
* regcache.h (regcache_cooked_write): Remove, update callers to
use regcache::cooked_write.
* regcache.c (regcache_cooked_write): Remove.
commit 6aa7d72401387cacc5a7699520045ce9083a526a
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed May 30 14:54:41 2018 -0400
Remove regcache_invalidate
Remove regcache_invalidate, update callers to use
detached_regcache::invalidate instead.
gdb/ChangeLog:
* regcache.h (regcache_invalidate): Remove, update callers to
use detached_regcache::invalidate instead.
* regcache.c (regcache_invalidate): Remove.
commit 4f0420fdabda76f462bd29a02d9be575e0e0cce7
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed May 30 14:54:40 2018 -0400
Remove regcache_raw_write_part
Remove regcache_raw_write_part, update callers to use
regcache::raw_write_part instead.
gdb/ChangeLog:
* regcache.h (regcache_raw_write_part): Remove, update callers
to use regcache::raw_write_part instead.
* regcache.c (regcache_raw_write_part): Remove.
commit 502fe83eb549476fac09ec62c7fd66447791ba2a
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed May 30 14:54:39 2018 -0400
Remove regcache_raw_read_part
Remove regcache_raw_read_part, update callers to use
readable_regcache::raw_read_part instead.
gdb/ChangeLog:
* regcache.h (regcache_raw_read_part): Remove, update callers to
use readable_regcache::raw_read_part instead.
* regcache.c (regcache_raw_read_part): Remove.
commit dca08e1fe158d04517ba3ddd7ece9dd1596c8e8c
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed May 30 14:54:38 2018 -0400
Remove regcache_cooked_read
Remove regcache_cooked_read, update callers to use
readable_regcache::cooked_read instead.
gdb/ChangeLog:
* regcache.h (regcache_cooked_read): Remove, update callers to
use readable_regcache::cooked_read instead.
* regcache.c (regcache_cooked_read): Remove.
commit 10eaee5f56611ce5f92ccd305849c0cc6addd130
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed May 30 14:54:37 2018 -0400
Remove regcache_raw_write
Remove regcache_raw_write, update all callers to use regcache::raw_write
instead.
gdb/ChangeLog:
* regcache.h (regcache_raw_write): Remove, update callers to use
regcache::raw_write instead.
* regcache.c (regcache_raw_write): Remove.
commit 0b8835861cde41744a08f215b48fccd135815b63
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed May 30 14:54:36 2018 -0400
Remove regcache_raw_read
Remove regcache_raw_read, update all callers to use
readable_regcache::raw_read instead.
gdb/ChangeLog:
* regcache.h (regcache_raw_read): Remove, update callers to use
readable_regcache::raw_read instead.
* regcache.c (regcache_raw_read): Remove.
commit 0b47d9858ca0805cd52ba959276d08899c7b9f8c
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed May 30 14:54:36 2018 -0400
Remove regcache_raw_update
Remove regcache_raw_update, update callers to use
readable_regcache::raw_update instead.
gdb/ChangeLog:
* regcache.h (regcache_raw_update): Remove, update callers to
use readable_regcache::raw_update instead.
* regcache.c (regcache_raw_update): Remove.
commit 0ec9f11447514a797ae13760825fa45f9deedd8c
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed May 30 14:54:35 2018 -0400
Remove regcache_register_status
Remove regcache_register_status, change callers to use
reg_buffer::get_register_status directly.
gdb/ChangeLog:
* regcache.h (regcache_register_status): Remove, update callers
to use reg_buffer::get_register_status directly instead.
* regcache.c (regcache_register_status): Remove.
commit 222312d359fe0a68f8583ba315583ee8cc94f252
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed May 30 14:54:34 2018 -0400
Remove regcache_get_ptid
Remove regcache_get_ptid, change all callers to call the regcache method
directly.
gdb/ChangeLog:
* regcache.h (regcache_get_ptid): Remove, update all callers to
call regcache::ptid instead.
* regcache.c (regcache_get_ptid): Remove.
commit 1869e86f2eb13a9e1d1c42b97cdb98fef88afd83
Author: Ant Bikeneev <ant.bikineev@gmail.com>
Date: Wed May 30 17:06:26 2018 +0100
Add option to ar's 't' command to display the offset of elements within the archive.
PR 23107
* ar.c (display_offsets): New variable.
(usage): Add description of 'O' operator.
(decode_option): Handle 'O' operator.
(print_descr): Pass display_offsets to print_arelt_descr.
* arsup.c: Update call to printy_arelt_descr.
* objdump.c: Likewise.
* bucomm.c (print_arelt_descr): If offsets parameter is true then
display offset of archive element within the archive.
* bucomm.h: Update prototype for print_arelt_descr.
* doc/binutils.texi: Update description of ar command.
* NEWS: Mention the new feature.
* testsuite/binutils-all/ar.exp: Add text of new feature.
commit fdbe37e35fed48091296434652101a63fa4360cf
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed May 30 12:04:35 2018 -0400
Add or1k target to --enable-targets=all
The or1k-tdep.o object is missing from the ALL_TARGET_OBS, which means
it's not currently included in an --enable-targets=all build.
gdb/ChangeLog:
* Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
commit 421acf18739edb54111b64d2b328ea2e7bf19889
Author: Amaan Cheval <amaan.cheval@gmail.com>
Date: Sat May 19 01:50:40 2018 +0530
2018-05-30 Amaan Cheval <amaan.cheval@gmail.com>
* config.bfd (x86_64-*-*): Add pei-x86-64 target to x86_64-*-rtems*
This is needed to generate UEFI application image files from ELFs.
commit f7c6f42310233479ea6339430b7c1ca1f9ec68e1
Author: Pedro Alves <palves@redhat.com>
Date: Wed May 30 14:18:47 2018 +0100
Mark END_CATCH as ATTRIBUTE_NORETURN (-Wmaybe-uninitialized warnings)
This commit fixes a set of -Wmaybe-uninitialized warnings in GDB and
GDBserver, seen with GCC 7.3.1 on F27 at -O2. Specifically, all of
these:
src/gdb/breakpoint.c:5040:4: warning: âeâ may be used uninitialized in this function [-Wmaybe-uninitialized]
src/gdb/cli/cli-cmds.c:277:71: warning: âtrackerâ may be used uninitialized in this function [-Wmaybe-uninitialized]
src/gdb/cli/cli-cmds.c:302:22: warning: âwordâ may be used uninitialized in this function [-Wmaybe-uninitialized]
src/gdb/gdbserver/server.c:1895:7: warning: âresultâ may be used uninitialized in this function [-Wmaybe-uninitialized]
src/gdb/gdbserver/server.c:1966:7: warning: âresultâ may be used uninitialized in this function [-Wmaybe-uninitialized]
For example, looking at one of the gdbserver ones in more detail:
../../../src/gdb/gdbserver/server.c: In function âint handle_qxfer_btrace_conf(const char*, gdb_byte*, const gdb_byte*, ULONGEST, LONGEST)â:
../../../src/gdb/gdbserver/server.c:1966:7: warning: âresultâ may be used uninitialized in this function [-Wmaybe-uninitialized]
if (result != 0)
^~
In this case (like the others), the 'result' variable is assigned in
both TRY and CATCH blocks:
TRY
{
result = target_read_btrace_conf (thread->btrace, &cache);
if (result != 0)
memcpy (own_buf, cache.buffer, cache.used_size);
}
CATCH (exception, RETURN_MASK_ERROR)
{
sprintf (own_buf, "E.%s", exception.message);
result = -1;
}
END_CATCH
if (result != 0)
return -3;
so it would seem like the warning is bogus.
However, END_CATCH is really a catch block in disguise, and that path
indeed does not initialize the variable:
#define END_CATCH \
catch (...) \
{ \
exception_rethrow (); \
} \
}
exception_rethrow does not return normally (it rethrows the current
exception after running cleanups), but the compiler can not see that.
If it could return normally, then indeed 'result' could be used
uninitialized if the TRY block threw some non-gdb exception, which
would be caught by END_CATCH.
The fix it to let the compiler know that the exception_rethrow does
not return normally, using ATTRIBUTE_NORETURN.
gdb/ChangeLog:
2018-05-30 Pedro Alves <palves@redhat.com>
* common/common-exceptions.h (exception_rethrow): Use
ATTRIBUTE_NORETURN.
commit a9660a6f4063c7e1fb892ec709c954c56896ab8d
Author: Amit Pawar <Amit.Pawar@amd.com>
Date: Wed May 30 12:27:35 2018 +0530
Add znver2 support.
gas/
* config/tc-i386.c (cpu_flag_init): Add CPU_ZNVER2_FLAGS.
* doc/c-i386.texi : Document znver2.
* gas/testsuite/gas/i386/arch-13.s: Updated for znver2.
* gas/testsuite/gas/i386/arch-13.d: Updated.
* gas/testsuite/gas/i386/arch-13-znver1.d: Updated.
* gas/testsuite/gas/i386/arch-13-znver2.d: New file.
* gas/testsuite/gas/i386/x86-64-arch-3.s: Updated for znver2.
* gas/testsuite/gas/i386/x86-64-arch-3.d: Updated.
* gas/testsuite/gas/i386/x86-64-arch-3-znver1.d: Updated.
* gas/testsuite/gas/i386/x86-64-arch-3-znver2.d: New file.
* gas/testsuite/gas/i386/i386.exp: Updated for new test.
opcode/
* i386-gen.c (cpu_flag_init): Add CPU_ZNVER2_FLAGS.
* i386-init.h : Regenerated.
commit 5294170687db7d997a00f88b765ef353121aa441
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Tue May 29 20:13:04 2018 -0400
Remove "struct" keyword in range-based for loops
I get this kind of errors with GCC 6.3.0:
/home/simark/src/binutils-gdb/gdb/breakpoint.c: In function 'void print_solib_event(int)':
/home/simark/src/binutils-gdb/gdb/breakpoint.c:4618:12: error: types may not be defined in a for-range-declaration [-Werror]
for (struct so_list *iter : current_program_space->added_solibs)
^~~~~~
Removing the struct keyword makes it happy.
gdb/ChangeLog:
* breakpoint.c (print_solib_event, check_status_catch_solib):
Remove struct keyword in range-based for loops.
* dbxread.c (find_corresponding_bincl_psymtab): Likewise.
* dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
Likewise.
* linespec.c (find_superclass_methods, search_minsyms_for_name):
Likewise.
* symfile.c (addr_info_make_relative): Likewise.
* thread.c (value_in_thread_stack_temporaries): Likewise.
commit 51af6fa066ee6e4ce0ef203678b3281d71f29cbb
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed May 30 00:01:00 2018 +0000
Automatic date update in version.in
commit 64cc34d87089ff24b43e0a8760be132b7afa6f34
Author: Weimin Pan <weimin.pan@oracle.com>
Date: Tue May 29 22:01:34 2018 +0000
Removing lookup_minimal_symbol_and_objfile
Function lookup_minimal_symbol_and_objfile iterates on all objfiles and
calls lookup_minimal_symbol for each of them, effectively searching in all
objfiles. lookup_bound_minimal_symbol calls lookup_minimal_symbol with NULL,
which also effectively searches all objfiles. AFAIK, they do exactly the same
thing, so we can get rid of one (and lookup_minimal_symbol_and_objfile happens
to be the most inefficient because it ends up n^2 on the number of objfiles).
Tested in both aarch64-linux-gnu and amd64-linux-gnu. No regressions.
commit e7ec8713ec12a633fcdfc5524c9ee050389b6f9d
Author: Tom Tromey <tom@tromey.com>
Date: Mon May 28 21:26:50 2018 -0600
Fix fall-through comment in windows-nat.c
Now that the mingw builder in the buildbot is working again, it
pointed out a build failure due to a missing fall-through comment in
windows-nat.c. This patch fixes the problem.
Tested by first triggering the failure with a local mingw build, then
by rebuilding successfully with the patch.
I'm checking this in as obvious.
gdb/ChangeLog
2018-05-29 Tom Tromey <tom@tromey.com>
* windows-nat.c (handle_exception): Update fall-through comment.
commit bcb430e4cd5bcd913813236536031f1fc7f72aee
Author: Tom Tromey <tom@tromey.com>
Date: Tue May 29 00:38:23 2018 -0600
Change program_space::added_solibs to a std::vector
This changes program_space::added_solibs to a std::vector, removing a
VEC.
Tested by the buildbot.
gdb/ChangeLog
2018-05-29 Tom Tromey <tom@tromey.com>
* progspace.h (so_list_ptr): Remove typedef. Don't declare VEC.
(struct program_space) <added_solibs>: Now a std::vector.
* breakpoint.c (print_solib_event): Update.
(check_status_catch_solib): Update.
* progspace.c (clear_program_space_solib_cache): Update.
* solib.c (update_solib_list): Update.
commit 894882e344735ace5231f179484086f7697d27cc
Author: Tom Tromey <tom@tromey.com>
Date: Tue May 29 00:29:23 2018 -0600
Remove a VEC from type.c
This removes a VEC from type.c, by using std::vector.
While doing this I also took the opportunity to change
types_deeply_equal to return bool. This caught some weird code in
typy_richcompare, now fixed.
And, since I was changing types_deeply_equal, it seemed like a good
idea to also change types_equal, so this patch includes that as well.
Tested by the buildbot.
ChangeLog
2018-05-29 Tom Tromey <tom@tromey.com>
* python/py-type.c (typy_richcompare): Update.
* guile/scm-type.c (tyscm_equal_p_type_smob): Update.
* gdbtypes.h (types_deeply_equal): Return bool.
(types_equal): Likewise.
* gdbtypes.c (type_equality_entry_d): Remove typedef. Don't
declare VEC.
(check_types_equal): Change worklist to std::vector. Return
bool.
(struct type_equality_entry): Add constructor.
(compare_maybe_null_strings): Return bool.
(check_types_worklist): Return bool. Change worklist to
std::vector.
(types_deeply_equal): Use std::vector.
(types_equal): Return bool.
(compare_maybe_null_strings): Simplify.
commit 10b2ded43caa3298cded1df8b620caaaee3f9209
Author: Tom Tromey <tom@tromey.com>
Date: Tue May 29 00:16:01 2018 -0600
Remove tp_t typedef
The tp_t typedef is no longer used and can be removed.
ChangeLog
2018-05-29 Tom Tromey <tom@tromey.com>
* record-btrace.c (tp_t): Remove typedef. Don't declare VEC.
commit 4f7deebe0c56863f0c97edfe9ac9931dfdfc8f0a
Author: Tom Tromey <tom@tromey.com>
Date: Tue May 29 00:14:58 2018 -0600
Remove const_char_ptr typedef
The const_char_ptr is no longer used, so it can be removed.
ChangeLog
2018-05-29 Tom Tromey <tom@tromey.com>
* objc-lang.h: Don't include cp-support.h.
* common/gdb_vecs.h (const_char_ptr): Remove typedef. Don't
declare VEC.
commit fe1658217f3f55c5fb2943715536302ff170e952
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue May 29 00:00:36 2018 +0000
Automatic date update in version.in
commit 92e68c1d65f844c0027f471a0c9e1722d781ef7d
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon May 28 10:46:16 2018 -0700
x86-64: Add TLSDESC fields to elf_x86_lazy_plt_layout
ENDBR64 is added to the special TLSDESC entry, which is similar to the
PLT0 entry, in the x86-64 lazy procedure linkage table to support Intel
CET. The NaCl PLT is different from the normal PLT. This patch adds
plt_tlsdesc_entry, plt_tlsdesc_entry_size, plt_tlsdesc_got1_offset,
plt_tlsdesc_got2_offset, plt_tlsdesc_got1_insn_end and
plt_tlsdesc_got2_insn_end to elf_x86_lazy_plt_layout to support both
normal and NaCl TLSDESC entries. This fixed
FAIL: TLS descriptor -fpic -shared transitions
for x86_64-nacl.
* elf32-i386.c (elf_i386_lazy_plt): Add plt_tlsdesc_entry,
plt_tlsdesc_entry_size, plt_tlsdesc_got1_offset,
plt_tlsdesc_got2_offset, plt_tlsdesc_got1_insn_end and
plt_tlsdesc_got2_insn_end for TLSDESC entry.
(elf_i386_lazy_ibt_plt): Likewise.
(elf_i386_nacl_plt): Likewise.
* elf64-x86-64.c (tlsdesc_plt_entry): Moved and renamed to ...
(elf_x86_64_tlsdesc_plt_entry): This.
(elf_x86_64_lazy_plt): Add plt_tlsdesc_entry,
plt_tlsdesc_entry_size, plt_tlsdesc_got1_offset,
plt_tlsdesc_got2_offset, plt_tlsdesc_got1_insn_end and
plt_tlsdesc_got2_insn_end for TLSDESC entry.
(elf_x86_64_lazy_bnd_plt): Likewise.
(elf_x86_64_lazy_ibt_plt): Likewise.
(elf_x32_lazy_ibt_plt): Likewise.
(elf_x86_64_nacl_plt): Likewise.
(elf_x86_64_finish_dynamic_sections): Use plt_tlsdesc_entry,
plt_tlsdesc_entry_size, plt_tlsdesc_got1_offset,
plt_tlsdesc_got2_offset, plt_tlsdesc_got1_insn_end and
plt_tlsdesc_got2_insn_end to update TLSDESC entry.
* elfxx-x86.h (elf_x86_lazy_plt_layout): Update comments.
Add plt_tlsdesc_entry, plt_tlsdesc_entry_size,
plt_tlsdesc_got1_offset, plt_tlsdesc_got2_offset,
plt_tlsdesc_got1_insn_end and plt_tlsdesc_got2_insn_end.
(elf_x86_non_lazy_plt_layout): Update comments.
(elf_x86_plt_layout): Likewise.
commit ac98f9e2275ffcca560eaa0bddd282a1ff94fc28
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon May 28 08:15:06 2018 -0700
ld: Unify STT_GNU_IFUNC handling
Take STT_GNU_IFUNC handling scattered across targets and gather it in
the generic ELF linker.
bfd/
PR ld/23238
* elf-s390-common.c (elf_s390_add_symbol_hook): Removed.
* elf32-arc.c (elf_arc_add_symbol_hook): Likewise.
(elf_backend_add_symbol_hook): Likewise.
* elf32-m68k.c (elf_m68k_add_symbol_hook): Likewise.
(elf_backend_add_symbol_hook): Likewise.
* elf32-s390.c (elf_backend_add_symbol_hook): Likewise.
* elf32-sparc.c (elf32_sparc_add_symbol_hook): Likewise.
(elf_backend_add_symbol_hook): Likewise.
* elf64-s390.c (elf_backend_add_symbol_hook): Likewise.
* elfxx-aarch64.c (_bfd_aarch64_elf_add_symbol_hook): Likewise.
* elfxx-aarch64.h (_bfd_aarch64_elf_add_symbol_hook): Likewise.
(elf_backend_add_symbol_hook): Likewise.
* elf32-arm.c (elf32_arm_add_symbol_hook): Remove STT_GNU_IFUNC
handling.
* elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise.
* elf64-ppc.c (ppc64_elf_add_symbol_hook): Likewise.
* elf64-sparc.c (elf64_sparc_add_symbol_hook): Likewise.
* elflink.c (elf_link_add_object_symbols): Set
elf_gnu_symbol_ifunc for STT_GNU_IFUNC symbols.
ld/
PR ld/23238
* testsuite/ld-ifunc/ifunc-26.d: New file.
* testsuite/ld-ifunc/ifunc-26.s: Likewise.
* testsuite/ld-ifunc/ifunc.exp: Run *.d tests without a
working compiler.
commit 03fce1c78c01a9b0e30e91be60e7af717a10bb2c
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon May 28 08:05:09 2018 -0700
ld: Skip some x86 IFUNC tests for NaCl targets
Since NaCl linker may not support "-m elf_i386" nor "-m elf_x86_64", skip
x86 IFUNC tests for NaCl targets where "-m elf_i386" or "-m elf_x86_64"
are passed to linker.
* testsuite/ld-ifunc/ifunc-10-i386.d: Skip NaCl targets.
* testsuite/ld-ifunc/ifunc-10-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-11-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-11-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-12-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-12-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-13-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-13-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-14a-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-14a-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-14b-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-14b-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-14c-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-14c-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-14d-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-14d-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-14e-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-14e-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-14f-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-14f-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-15-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-15-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-16-i386-now.d: Likewise.
* testsuite/ld-ifunc/ifunc-16-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-16-x86-64-now.d: Likewise.
* testsuite/ld-ifunc/ifunc-16-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-17a-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-17a-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-17b-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-17b-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-18a-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-18a-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-18b-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-18b-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-19a-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-19a-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-19b-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-19b-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-2-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-2-local-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-2-local-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-2-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-20-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-20-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-21-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-21-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-22-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-22-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-5a-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-5a-local-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-5a-local-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-5a-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-5b-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-5b-local-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-5b-local-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-5b-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-5r-local-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-5r-local-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-6a-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-6a-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-6b-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-6b-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-7a-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-7a-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-7b-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-7b-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-8-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-8-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-9-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-9-x86-64.d: Likewise.
* testsuite/ld-ifunc/pr17154-i386.d: Likewise.
* testsuite/ld-ifunc/pr17154-x86-64-now.d: Likewise.
* testsuite/ld-ifunc/pr17154-x86-64.d: Likewise.
commit bb3b5316332875b436b4a88d1ec6968eba46a870
Author: Alan Modra <amodra@gmail.com>
Date: Mon May 28 16:30:23 2018 +0930
PR23235, make check uses system installed ld
This patch doesn't stop the build-id and debuglink tests using the
installed ld, it just prevents a compiler failure from resulting in a
test fail. We could move the tests to the ld testsuite but it doesn't
seem all that important.
PR 23235
* testsuite/binutils-all/compress.exp (test_gnu_debuglink): Return
unsupported rather than fail on compile errors.
* testsuite/binutils-all/objdump.exp (test_build_id_debuglink):
Likewise. Save and restore CFLAGS_FOR_TARGET.
commit 46207bf3b5b9880804ee4b527cc22b314eb5daba
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon May 28 00:00:23 2018 +0000
Automatic date update in version.in
commit b8283aea9e599f17dbae7f52223994e3a9168143
Author: Tom Tromey <tom@tromey.com>
Date: Sun May 27 13:05:03 2018 -0600
Remove last reference to REMOTE_OBS
REMOTE_OBS was removed from Makefile.in in
18ca73470a0d7eb96a807c97559cbb9fddb4b461, but one reference remains.
This patch removes the lingerer.
ChangeLog
2018-05-27 Tom Tromey <tom@tromey.com>
* Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
commit 121dac5822d98459343bde74d5235b988206d965
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun May 27 00:01:17 2018 +0000
Automatic date update in version.in
commit 099bb8fb97d79d03a20926d6014a5fc27a5ca75e
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sat May 26 04:27:09 2018 -0700
ld: Add _bfd_elf_link_hide_sym_by_version
bfd_hide_sym_by_version can't be used to check if a versioned symbol is
hidden. This patch adds _bfd_elf_link_hide_sym_by_version to support
both versioned and unversioned symbols by extracting versioned symbol
check from _bfd_elf_link_assign_sym_version.
bfd/
PR ld/23194
* elf-bfd.h (_bfd_elf_link_hide_sym_by_version): New.
* elflink.c (_bfd_elf_link_hide_versioned_symbol): New function.
Extracted from _bfd_elf_link_assign_sym_version.
(_bfd_elf_link_hide_sym_by_version): New function.
(_bfd_elf_link_assign_sym_version): Use
_bfd_elf_link_hide_versioned_symbol.
* elfxx-x86.c (_bfd_x86_elf_link_symbol_references_local): Call
_bfd_elf_link_hide_sym_by_version instead of
bfd_hide_sym_by_version. Don't check unversioned symbol.
ld/
PR ld/23194
* testsuite/ld-i386/pr23194.d: Expect only R_386_GLOB_DAT
against foobar.
* testsuite/ld-i386/pr23194.map: Add foobar.
* testsuite/ld-x86-64/pr23194.map: Likewise.
* testsuite/ld-i386/pr23194.s: Add a common foobar symbol.
* testsuite/ld-x86-64/pr23194.s: Likewise.
* testsuite/ld-x86-64/pr23194.d: Expect only R_X86_64_GLOB_DAT
against foobar.
commit d7460de3eadeb5b7665ad8569f54e59eccdef378
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat May 26 00:00:34 2018 +0000
Automatic date update in version.in
commit 41a883c8edf98e86176d007bc8ad1c86c9675528
Author: Tom Tromey <tom@tromey.com>
Date: Tue Apr 10 08:24:43 2018 -0600
Clear entire "location" in value constructor
My recent change to allocate values with "new" may have introduced a
small bug. In particular, the previous code allocated with XCNEW, but
the new code only clears a part of the "location" field in the
constructor. I didn't try very hard to actually trigger a bug here,
the problem remains theoretical.
This patch just arranges to initialize the entire location.
Regression tested by the buildbot.
2018-05-25 Tom Tromey <tom@tromey.com>
* value.c (value::location): Initialize.
commit bf259e253f0d27323756fb434ba6e94d50846021
Author: Tom Tromey <tom@tromey.com>
Date: Thu May 24 22:09:24 2018 -0600
Remove cleanups from dbxread.c
This removes the remaining cleanups from dbxread.c, via std::vector,
scoped_restore, and unique_xmalloc_ptr.
Tested by the buildbot.
ChangeLog
2018-05-25 Tom Tromey <tom@tromey.com>
* dbxread.c (init_bincl_list): Remove.
(bincl_list): Now a std::vector.
(bincls_allocated, next_bincl): Remove.
(free_bincl_list, do_free_bincl_list_cleanup)
(make_cleanup_free_bincl_list): Remove.
(dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
unique_xmalloc_ptr.
(find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
(struct header_file_location): Add constructor.
(add_bincl_to_list): Remove.
commit d525a99be1b02dda6c69007e31dd06f276378aea
Author: Tom Tromey <tom@tromey.com>
Date: Fri May 25 12:39:51 2018 -0600
Add "name" method to class interp
In a review Pedro pointed out that interp::name is intended to be
read-only, and so an accessor would be a better fit. This patch
renames the field and adds a "name" method that is used instead.
ChangeLog
2018-05-25 Tom Tromey <tom@tromey.com>
* tui/tui.c (tui_enable): Update.
* mi/mi-interp.c (mi_interp::init): Update.
* interps.h (class interp) <name>: New method.
<m_name>: Rename from name.
(~scoped_restore_interp): Update.
* interps.c (interp::interp): Update.
(interp_add, interp_set, interp_lookup_existing)
(current_interp_named_p): Update.
commit da505cff6e29b18244dc9f6886bcb4d436263dee
Author: Tom Tromey <tom@tromey.com>
Date: Sun Apr 29 23:12:07 2018 -0600
Remove interp_name
This removes the interp_name function. It is only used a few spots --
one of which was only calling it on "this". It's simpler to remove
it; and should class interp become opaque in the future, it will be
just as easy to update the two remaining spots to use an accessor.
ChangeLog
2018-05-25 Tom Tromey <tom@tromey.com>
* interps.c (interp_name): Remove.
* mi/mi-interp.c (mi_interp::init): Update.
* interps.h (interp_name): Remove.
(~scoped_restore_interp): Update.
* tui/tui.c (tui_enable): Update.
commit 29f943408122a7cffa25abb41def99833436f097
Author: Tom Tromey <tom@tromey.com>
Date: Sun Apr 29 23:12:06 2018 -0600
Remove interp_ui_out
The function interp_ui_out simply calls the interp_ui_out method.
However, if it is passed a NULL interpreter, it first finds the
current interpreter. I believe, though, that NULL is never passed
here, and I think it's simpler to just remove this function and
require callers to be more explicit.
ChangeLog
2018-05-25 Tom Tromey <tom@tromey.com>
* utils.c (fputs_maybe_filtered): Update.
* linespec.c (decode_line_full): Update.
* mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
(mi_print_breakpoint_for_event, mi_solib_loaded)
(mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
(mi_user_selected_context_changed): Update.
* mi/mi-main.c (mi_execute_command): Update.
* cli/cli-script.c (execute_control_command): Update.
* python/python.c (execute_gdb_command): Update.
* solib.c (info_sharedlibrary_command): Update.
* interps.c (interp_ui_out): Remove.
* interps.h (interp_ui_out): Remove.
commit 716b8bc52eef6044f1ff361e3e2eeb9307849034
Author: Tom Tromey <tom@tromey.com>
Date: Sun Apr 29 23:12:05 2018 -0600
Change the as_*_interp functions to use dynamic_cast
This changes the various as_*_interp functions to be implemented using
dynamic_cast. I believe this is a small improvement, because it is
more typesafe -- the C++ runtime does the type-checking for us.
ChangeLog
2018-05-25 Tom Tromey <tom@tromey.com>
* tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
* mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
* cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
commit 753ff9bd837e2ba183e3ff789847a81221561392
Author: Tom Tromey <tom@tromey.com>
Date: Sun Apr 29 23:12:04 2018 -0600
Use scoped_restore in a couple of interp-related places
While looking through the "interp" code I found a couple of spots that
could use scoped_restore.
ChangeLog
2018-05-25 Tom Tromey <tom@tromey.com>
* cli/cli-interp.c (safe_execute_command): Use scoped_restore.
* interps.c (interp_exec): Use scoped_restore.
commit 5ca3b2605cc9ab5b33032c6478147366be60cd95
Author: Tom Tromey <tom@tromey.com>
Date: Thu May 24 21:52:54 2018 -0600
Use gdb::byte_vector in remote.c
This changes a couple of spots in remote.c to use gdb::byte_vector,
allowing for some cleanup removal.
ChangeLog
2018-05-25 Tom Tromey <tom@tromey.com>
* remote.c (remote_target::remote_file_get): Use
gdb::byte_vector.
(remote_target::remote_file_put): Likewise.
commit 3173aa2fc212389268f76433e70b35116a936a8d
Author: Tom Tromey <tom@tromey.com>
Date: Thu May 24 22:32:24 2018 -0600
Remove cleanups from coff-pe-read.c
This removes cleanups from coff-pe-read.c, using std::string,
std::vector, and gdb::def_vector.
Tested by the buildbot, though I'm not sure these code paths are
exercised there.
ChangeLog
2018-05-25 Tom Tromey <tom@tromey.com>
* coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
a std::string.
(get_pe_section_index, add_pe_exported_sym): Update.
(read_pe_exported_syms): Use gdb::def_vector.
commit 09a5e1b570eefbc029939fd43c99152996060d95
Author: Tom Tromey <tom@tromey.com>
Date: Thu May 24 18:23:37 2018 -0600
Use TRY/CATCH in remove_prev_frame
This changes remove_prev_frame to use TRY/CATCH instead of a cleanup.
TRY/CATCH seemed appropriate here because the cleanup is only needed
in the case where an exception is thrown.
Tested by the buildbot.
ChangeLog
2018-05-25 Tom Tromey <tom@tromey.com>
* frame.c (remove_prev_frame): Remove.
(get_prev_frame_if_no_cycle): Use TRY/CATCH.
commit d8dab6c3bbe6432ff20237e621f2f3a3d30d4d4b
Author: Maciej W. Rozycki <macro@mips.com>
Date: Fri May 25 12:37:45 2018 +0100
MIPS/Linux: Correct o32 core file FGR interpretation
Our interpretation of the layout of floating-point general registers
(FGRs) in o32 MIPS/Linux core files is different from how the kernel
makes them, affecting the CP0 Status.FR=0 aka FP32 mode (we don't
currently support the CP0 Status.FR=1 aka FP64 mode with the o32 ABI).
In the FP32 mode pairs of consecutive even/odd-numbered 32-bit registers
are placed together as 64-bit values in even-indexed 64-bit slots
corresponding to the even index, leaving the odd-indexed 64-bit slots
unused. These 64-bit values are stored according to the endianness in
effect, which is how the MIPS II SDC1 instruction would store them.
It has always been like that with the Linux kernel for MIPS II and
higher ISA processors, which are the vast majority ever supported, as it
is indeed SDC1 that the kernel uses to store FGRs in a floating-point
context.
With MIPS I processors, which lack the SDC1 instruction, a layout that
we expect used to be used long ago, but it was corrected for consistency
with newer processors back in 2002, with `linux-mips.org' (LMO) commit
42533948caac ("Major pile of FP emulator changes."), the fix corrected
with LMO commit 849fa7a50dff ("R3k FPU ptrace() handling fixes."), and
then broken and fixed over and over again, until last time fixed with
commit 80cbfad79096 ("MIPS: Correct MIPS I FP context layout").
Consequently the values we see in FP32 core files or produce with the
`gcore' command are different from those obtained from the same FP
context of a live process, e.g. with a big-endian configuration these
live values:
(gdb) info registers float
f0: 0x4b5c6d7e flt: 14445950 dbl: 1.7446153562345001e-274
f1: 0x0718293a flt: 1.14473244e-34
f2: 0xc3d4e5f6 flt: -425.79657 dbl: -1.046160437414959e-233
f3: 0x8f90a1b2 flt: -1.42617791e-29
f4: 0x4c5d6e7f flt: 58046972 dbl: 1.1908587841220294e-269
f5: 0x08192a3b flt: 4.60914044e-34
f6: 0xc4d5e6f7 flt: -1711.21765 dbl: -6.2784661835068965e-306
f7: 0x8091a2b3 flt: -1.33745124e-38
f8: 0x45566778 flt: 3430.4668 dbl: 1.6530355595710607e-303
f9: 0x01122334 flt: 2.68412219e-38
f10: 0xcddeeff0 flt: -467533312 dbl: -2.1174864564135575e-262
f11: 0x899aabbc flt: -3.72356497e-33
f12: 0x46576879 flt: 13786.1182 dbl: 1.143296486773654e-298
f13: 0x02132435 flt: 1.08102453e-37
f14: 0xcedfe0f1 flt: -1.87803046e+09 dbl: -1.4399511533369862e-257
f15: 0x8a9bacbd flt: -1.4990934e-32
f16: 0x4758697a flt: 55401.4766 dbl: 7.8856820439568725e-294
f17: 0x03142536 flt: 4.3536007e-37
f18: 0xcfd0e1f2 flt: -7.00893696e+09 dbl: -9.7791926757340559e-253
f19: 0x8b9cadbe flt: -6.03504325e-32
f20: 0x48596a7b flt: 222633.922 dbl: 5.4255001483306113e-289
f21: 0x04152637 flt: 1.75324132e-36
f22: 0xc0d1e2f3 flt: -6.55895376 dbl: -6.6332401002310683e-248
f23: 0x8c9daebf flt: -2.42948516e-31
f24: 0x495a6b7c flt: 894647.75 dbl: 3.7244369058749787e-284
f25: 0x05162738 flt: 7.06016945e-36
f26: 0xc1d2e3f4 flt: -26.3613052 dbl: -4.4941535759306202e-243
f27: 0x8d9eafb0 flt: -9.77979703e-31
f28: 0x4a5b6c7d flt: 3595039.25 dbl: 2.5514593711161396e-279
f29: 0x06172839 flt: 2.84294945e-35
f30: 0xc2d3e4f5 flt: -105.947182 dbl: -3.035646690850097e-238
f31: 0x8e9fa0b1 flt: -3.93512664e-30
fcsr: 0x0
fir: 0xf30000
(gdb)
show up in a core file as these:
(gdb) info registers float
f0: 0x0718293a flt: 1.14473244e-34 dbl: nan
f1: 0x7ff80000 flt: nan
f2: 0x8f90a1b2 flt: -1.42617791e-29 dbl: nan
f3: 0x7ff80000 flt: nan
f4: 0x08192a3b flt: 4.60914044e-34 dbl: nan
f5: 0x7ff80000 flt: nan
f6: 0x8091a2b3 flt: -1.33745124e-38 dbl: nan
f7: 0x7ff80000 flt: nan
f8: 0x01122334 flt: 2.68412219e-38 dbl: nan
f9: 0x7ff80000 flt: nan
f10: 0x899aabbc flt: -3.72356497e-33 dbl: nan
f11: 0x7ff80000 flt: nan
f12: 0x02132435 flt: 1.08102453e-37 dbl: nan
f13: 0x7ff80000 flt: nan
f14: 0x8a9bacbd flt: -1.4990934e-32 dbl: nan
f15: 0x7ff80000 flt: nan
f16: 0x03142536 flt: 4.3536007e-37 dbl: nan
f17: 0x7ff80000 flt: nan
f18: 0x8b9cadbe flt: -6.03504325e-32 dbl: nan
f19: 0x7ff80000 flt: nan
f20: 0x04152637 flt: 1.75324132e-36 dbl: nan
f21: 0x7ff80000 flt: nan
f22: 0x8c9daebf flt: -2.42948516e-31 dbl: nan
f23: 0x7ff80000 flt: nan
f24: 0x05162738 flt: 7.06016945e-36 dbl: nan
f25: 0x7ff80000 flt: nan
f26: 0x8d9eafb0 flt: -9.77979703e-31 dbl: nan
f27: 0x7ff80000 flt: nan
f28: 0x06172839 flt: 2.84294945e-35 dbl: nan
f29: 0x7ff80000 flt: nan
f30: 0x8e9fa0b1 flt: -3.93512664e-30 dbl: nan
f31: 0x7ff80000 flt: nan
(gdb)
Notice how values from odd-numbered registers are shown in corresponding
even-numbered registers and how dummy 0x7ff80000 NaN values, which the
kernel places in unused slots, are reported in odd-numbered registers.
Correct our intepretation then, to match the kernel's. As it happens
the o32 FGR core file representation matches that used by the `ptrace'
PTRACE_GETFPREGS request, which means our 64-bit handlers can be readily
used, as they already correctly handle the differences between o32 FP32
mode vs n32/n64 representations.
Adjust comments accordingly throughout, in particular remove a reference
to the r3000/tx39 MIPS I processor peculiarity, long irrelevant.
Add a test case to verify correctness. Avoid GCC bugs and limitations
in the test case where possible; the test case still fails to build with
GCC 8 and the o32 FP64 mode (i.e. with `-mips32r2 -mfp64' options)
giving:
mips-fpregset-core.c: In function 'main':
mips-fpregset-core.c:66:3: error: inconsistent operand constraints in an 'asm'
asm (
^~~
(GCC PR target/85909), but that is not a concern for us as yet, because
as noted above we do not currently support the o32 FP64 mode anyway.
gdb/
* mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
Remove prototypes.
* mips-linux-nat.c (supply_fpregset): Always call
`mips64_supply_fpregset' rather than `mips_supply_fpregset'.
(fill_fpregset): Always call `mips64_fill_fpregset' rather than
`mips_fill_fpregset'.
* mips-linux-tdep.c (mips_supply_fpregset)
(mips_supply_fpregset_wrapper, mips_fill_fpregset)
(mips_fill_fpregset_wrapper): Remove functions.
(mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
(mips_linux_fpregset): Remove variable.
(mips_linux_iterate_over_regset_sections): Use
`mips64_linux_fpregset' in place of `mips_linux_fpregset'.
(mips_linux_o32_sigframe_init): Remove comment.
gdb/testsuite/
* gdb.arch/mips-fpregset-core.exp: New test.
* gdb.arch/mips-fpregset-core.c: New test source.
commit 3c69da406c72423afa4bd0e4fc4c805ec0b944a1
Author: Pedro Alves <palves@redhat.com>
Date: Fri May 25 11:58:58 2018 +0100
remote_target::m_remote_state, pointer -> object
The only reason remote_target::m_remote_state is a pointer is that
struct remote_state is incomplete when struct remote_target is
defined.
This commit thus moves struct remote_state (and its dependencies)
higher up and makes remote_target::m_remote_state an object instead of
a pointer.
gdb/ChangeLog:
2018-05-25 Pedro Alves <palves@redhat.com>
* remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
(struct readahead_cache, struct packet_reg, struct
remote_arch_state, class remote_state): Move higher up in the
file.
(remote_target::m_remote_state): Now an object instead of a pointer.
(remote_target::get_remote_state): Adjust.
commit 277eb7f64ae0c949715751a382350368ef14e95e
Author: Alan Modra <amodra@gmail.com>
Date: Fri May 25 16:05:30 2018 +0930
s12z regen
This patch regenerates a number of files that either were edited by
hand or not regenerated when s12z support was added to binutils.
bfd/
* Makefile.in: Regenerate.
* po/SRC-POTFILES.in: Regenerate.
gas/
* po/POTFILES.in: Regenerate.
ld/
* po/BLD-POTFILES.in: Regenerate.
opcodes/
* Makefile.in: Regenerate.
* po/POTFILES.in: Regenerate.
commit 629dabe3b731c6194499652301935f34c3c20e0c
Author: Alan Modra <amodra@gmail.com>
Date: Fri May 25 15:07:15 2018 +0930
Fix hidden visibility compiler test
Warnings from configure tests aren't usually checked. gcc's
"visibility attribute not supported in this configuration" warning is
enabled by default so we don't need to add any warning flag except
-Werror.
* configure.ac (bfd_cv_hidden): Run test with -Werror in CFLAGS.
* configure: Regenerate.
commit f9885f5602476e402626bf305d6bc328eaf626c3
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri May 25 00:00:18 2018 +0000
Automatic date update in version.in
commit 39f0c2040f13ae0eb3405b8cf2ff6491c6f354a5
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Sat May 5 15:55:58 2018 +0100
gdb: Split func_command into two parts.
The func_command function is used to emulate the dbx 'func' command.
However, finding a stack frame based on function name might be a useful
feature, and so the core of func_command is now split out into a
separate function.
gdb/ChangeLog:
* stack.c (select_and_print_frame): Delete.
(struct function_bounds): Move struct within function.
(func_command): Most content moved into new function
find_frame_for_function, use new function, print result, add
function comment.
(find_frame_for_function): New function, now returns a result.
commit d392224a0942df2f23b1149a71f62afc7f34beb8
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Thu May 24 23:19:05 2018 +0200
PATCH (obvious): Fix a comment, and pass stream to cb_data.
iterate_over_block_arg_vars is a void function, so does
not return 1 or 0.
print_frame_arg_vars tells it prints on STREAM,
so pass STREAM in the cb_data, not gdb_stdout.
gdb/ChangeLog
2018-05-24 Philippe Waroquiers <philippe.waroquiers@skynet.be>
* stack.c (iterate_over_block_arg_vars): Fix comment.
(print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
commit a974b5ec9a253d330290d132098065b77f29bd36
Author: Tom Tromey <tom@tromey.com>
Date: Mon Apr 30 08:37:31 2018 -0600
Update help text in record.c
This updates some help text in record.c to conform to GNU standards.
I also added a "Usage" line to "record save".
2018-04-29 Tom Tromey <tom@tromey.com>
* record.c (_initialize_record): Update help text.
commit c8a15b78e676b9101045b729a38128cbe5673701
Author: Tom Tromey <tom@tromey.com>
Date: Mon Apr 30 08:37:30 2018 -0600
Update help text in linux-fork.c
This updates some help text in linux-fork.c to conform to GNU
standards.
2018-04-29 Tom Tromey <tom@tromey.com>
* linux-fork.c (_initialize_linux_fork): Update help text.
commit 55063ddb8e9a3179b65047db21f4c8607782d075
Author: Tom Tromey <tom@tromey.com>
Date: Mon Apr 30 08:37:29 2018 -0600
Update help text in record-btrace.c
This updates the help text in record-btrace.c to conform to GNU
standards.
2018-04-29 Tom Tromey <tom@tromey.com>
* record-btrace.c (_initialize_record_btrace): Update help text.
commit 02d016b71fd38648fad589c1557b83135b1dd552
Author: Tom Tromey <tom@tromey.com>
Date: Mon Apr 30 08:37:28 2018 -0600
Update help text in tracepoint.c
This changes the help text of a couple of commands in tracepoint.c to
follow the GNU style.
ChangeLog
2018-04-29 Tom Tromey <tom@tromey.com>
* tracepoint.c (_initialize_tracepoint): Update help text.
testsuite/ChangeLog
2018-04-30 Tom Tromey <tom@tromey.com>
* gdb.trace/tfind.exp: Update help tests.
commit 7c9ee61b9f5fcad94fda11af1ab7469d78f17fbe
Author: Tom Tromey <tom@tromey.com>
Date: Mon Apr 30 08:37:27 2018 -0600
Update help text in disasm.c
This changes some help text in disasm.c to follow the GNU style.
2018-04-29 Tom Tromey <tom@tromey.com>
* disasm.c (_initialize_disasm): Update help text.
commit 0a8ba311d0c4facef158af3d79c78489d5efcc4b
Author: Tom Tromey <tom@tromey.com>
Date: Mon Apr 30 08:37:26 2018 -0600
Update help text for "jump" command
This updates the usage text for the "jump" command to conform to the
GNU style.
2018-04-29 Tom Tromey <tom@tromey.com>
* infcmd.c (_initialize_infcmd): Update help text.
commit ffb2b66cabe9deefefa1312ef0b7bb064656e611
Author: Tom Tromey <tom@tromey.com>
Date: Mon Apr 30 08:37:25 2018 -0600
Update help text in dcache.c
This updates some text in dcache.c to follow GNU standards.
Here, I found a couple of spots needing an update.
2018-04-29 Tom Tromey <tom@tromey.com>
* dcache.c (dcache_info_1): Update usage text.
(_initialize_dcache): Update help text.
commit bf212be198a7dd7700e08862f241ed85f88408e3
Author: Tom Tromey <tom@tromey.com>
Date: Mon Apr 30 08:37:24 2018 -0600
Update help strings in TUI
This updates some help strings in the TUI to more closely follow GNU
standards. In this case I chose to reuse some existing "usage" macros
in the help text. Also, I found that XDBWIN_HEIGHT_USAGE is unused,
so I removed it.
ChangeLog
2018-04-29 Tom Tromey <tom@tromey.com>
* tui/tui-layout.c (_initialize_tui_layout): Update help text.
* tui/tui-win.c (WIN_HEIGHT_USAGE, FOCUS_USAGE): Update
(XDBWIN_HEIGHT_USAGE): Remove.
(_initialize_tui_win): Use macros. Update help text.
commit 99806209a4f89fc76d338982239ab8c214df4b4d
Author: Tom Tromey <tom@tromey.com>
Date: Mon Apr 30 08:37:23 2018 -0600
Update memattr.c help strings
This changes memattr.c to use the GNU style for help strings.
2018-04-29 Tom Tromey <tom@tromey.com>
* memattr.c (_initialize_mem): Update help string.
commit 0cab2f1e91f92130c5e0d89a99ce639ebd8ec1b0
Author: Tom Tromey <tom@tromey.com>
Date: Mon Apr 30 08:37:22 2018 -0600
Update core-related help strings
This updates some help strings in corefile.c and gcore.c.
2018-04-27 Tom Tromey <tom@tromey.com>
* corefile.c (_initialize_core): Update help string.
* gcore.c (_initialize_gcore): Update help string.
commit 784e4b3e80c1093203ae1a0da33be7a670942713
Author: Tom Tromey <tom@tromey.com>
Date: Mon Apr 30 08:37:21 2018 -0600
Update help strings in skip.c
This changes help strings in skip.c to follow the GNU style.
2018-04-27 Tom Tromey <tom@tromey.com>
* skip.c (_initialize_step_skip): Update help strings.
commit a3c25011e4b0519dca984d23a8a2843b92b9ce2c
Author: Tom Tromey <tom@tromey.com>
Date: Mon Apr 30 08:37:20 2018 -0600
Fix help and documentation for inferior commands
This changes inferior.c to add Usage lines for all commands, and to
change how "metasyntactic variables" are written to conform to GNU
style.
While doing this I noticed that the manual doesn't document the
argument to "info inferiors", so I've added that as well.
ChangeLog
2018-04-27 Tom Tromey <tom@tromey.com>
* inferior.c (initialize_inferiors): Update help strings.
doc/ChangeLog
2018-04-27 Tom Tromey <tom@tromey.com>
* gdb.texinfo (Inferiors and Programs): Document argument to "info
inferiors".
commit e80ae1906b63e092f3900addbc869f0836f8d71d
Author: Jim Wilson <jimw@sifive.com>
Date: Thu May 24 10:35:59 2018 -0700
RISC-V: Fix .align handling when .option norelax.
gas/
PR gas/23219
* config/tc-riscv.c (riscv_frag_align_code): Move frag_more call after
!riscv_opts.relax check.
(riscv_handle_align): Rewrite !riscv_opts.relax support.
* config/tc-riscv (MAX_MEM_FOR_RS_ALIGN_CODE): Update.
* testsuite/gas/riscv/no-relax-align.d: New
* testsuite/gas/riscv/no-relax-align.s: New
* testsuite/gas/riscv/no-relax-align-2.d: New
* testsuite/gas/riscv/no-relax-align-2.s: New
commit 45f25d6c83c31a48a01ef8293bb3978f5e58e653
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Fri May 18 17:45:16 2018 +0100
gdb: Restore selected frame in print_frame_local_vars
PR gdb/23203 reports 'bt full' causing the currently selected frame to
change, this issue is fixed in this commit.
Add a new class scoped_restore_selected_frame that saves and restores
the selected frame. Make use of this in print_frame_local_vars to
restore the selected frame on exit.
gdb/ChangeLog:
PR gdb/23203
* frame.c
(scoped_restore_selected_frame::scoped_restore_selected_frame):
Define.
(scoped_restore_selected_frame::~scoped_restore_selected_frame):
Define.
* frame.h (class scoped_restore_selected_frame): New class.
* stack.c (print_frame_local_vars): Remove catching and rethrowing
of any exception, use scoped_restore_selected_frame to restore the
frame instead.
gdb/testsuite/ChangeLog:
PR gdb/23203
* gdb.base/bt-selected-frame.c: New file.
* gdb.base/bt-selected-frame.exp: New file.
* lib/gdb.exp (get_current_frame_number): New function.
commit d9f6d7f8b636a2b32004273143d72a77d82b40de
Author: Maciej W. Rozycki <macro@mips.com>
Date: Thu May 24 15:31:32 2018 +0100
testsuite: Extend TLS core file testing with an OS-generated dump
Complementing commit 280ca31f4d60 ("Add test for fetching TLS from
core file") extend gdb.threads/tls-core.exp with an OS-generated dump
where supported.
This verifies not only that our core dump interpreter is consistent
with our producer, but that it matches the OS verified as well,
avoiding a possible case where our interpreter would be bug-compatible
with our producer but not the OS and it would go unnoticed in testing.
This results in:
PASS: gdb.threads/tls-core.exp: native: load core file
PASS: gdb.threads/tls-core.exp: native: print thread-local storage variable
PASS: gdb.threads/tls-core.exp: gcore: load core file
PASS: gdb.threads/tls-core.exp: gcore: print thread-local storage variable
with local testing and:
UNSUPPORTED: gdb.threads/tls-core.exp: native: load core file
UNSUPPORTED: gdb.threads/tls-core.exp: native: print thread-local storage variable
PASS: gdb.threads/tls-core.exp: gcore: load core file
PASS: gdb.threads/tls-core.exp: gcore: print thread-local storage variable
with remote testing, or for testing on ports that don't supports
cores.
gdb/testsuite/ChangeLog:
2018-05-24 Maciej W. Rozycki <macro@mips.com>
Pedro Alves <palves@redhat.com>
* gdb.threads/tls-core.c: Include <stdlib.h>
(thread_proc): Call `abort'.
* gdb.threads/tls-core.exp: Generate a core with core_find too.
(tls_core_test): New procedure, bits factored out from ...
(top level): ... here. Test both native cores and gcore cores.
commit da05d921f0b7b9f9f07ac4e78ee228e7ecf847e0
Author: Pedro Alves <palves@redhat.com>
Date: Thu May 24 13:07:53 2018 +0100
Fix macOS build, missing override
Fixes:
In file included from ../../src/gdb/darwin-nat.c:63:0:
../../src/gdb/darwin-nat.h:28:8: error: 'virtual void darwin_nat_target::create_inferior(const char*, const string&, char**, int)' can be marked override [-Werror=suggest-override]
void create_inferior (const char *exec_file,
^
gdb/ChangeLog:
2018-05-24 Pedro Alves <palves@redhat.com>
* darwin-nat.h (darwin_nat_target::create_inferior): Mark with
override.
commit 08163f025e414bd3cebe0adac83ed4a7ce13625e
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu May 24 00:00:28 2018 +0000
Automatic date update in version.in
commit 9ef6d1e31f380349c8f329d1adb47ee53ec1f6c2
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed May 23 10:15:11 2018 -0700
Add ATTRIBUTE_NONSTRING to ppc64_elf_write_core_note
This patch silences gcc8 -Wstringop-truncation warnings.
* elf64-ppc.c (ppc64_elf_write_core_note): Add ATTRIBUTE_NONSTRING
to data.
commit a8be540e8ae8d16da5854c75d4724f3875aeba2e
Author: Tom Tromey <tom@tromey.com>
Date: Wed May 16 23:25:09 2018 -0600
Remove struct complaints
struct complaints now just holds a single enum value, so remove it and
symfile_complaint_book and replace it with a global variable.
gdb/ChangeLog
2018-05-23 Tom Tromey <tom@tromey.com>
* complaints.c (struct complaints): Remove.
(symfile_complaint_book): Remove.
(series): New global.
(complaint_internal): Update.
(clear_complaints): Update.
commit ff1cf532dbabdee0d34974a77809bf2fa23d43a5
Author: Tom Tromey <tom@tromey.com>
Date: Wed May 16 23:22:54 2018 -0600
Remove struct complain
At this point, struct complain is just holds a key, a value, and a
"next" pointer to form a linked list. It's simpler to replace this
with an unordered map.
gdb/ChangeLog
2018-05-23 Tom Tromey <tom@tromey.com>
* complaints.c (counters): New global.
(struct complain): Remove.
(struct complaints) <root>: Remove.
(complaint_sentinel): Remove.
(symfile_complaint_book): Update.
(find_complaint) Remove.
(complaint_internal, clear_complaints): Update.
gdb/testsuite/ChangeLog
2018-05-23 Tom Tromey <tom@tromey.com>
* gdb.gdb/complaints.exp (test_initial_complaints): Simplify.
commit 7ff8817441fcebe3d32343dbd9d514366bfe8e23
Author: Tom Tromey <tom@tromey.com>
Date: Wed May 16 23:14:03 2018 -0600
Remove file and line from struct complain
The file and line handling in complaints.c wasn't used once
internal_complaint was removed. This patch removes all the related
code.
gdb/ChangeLog
2018-05-23 Tom Tromey <tom@tromey.com>
* complaints.c (struct complain) <file, line>: Remove.
(find_complaint): Remove file, line parameters.
(complaint_internal): Update.
commit de54e1a5d231c5857e870acc788f9b843ff5f050
Author: Tom Tromey <tom@tromey.com>
Date: Wed May 16 23:10:51 2018 -0600
Remove vcomplaint
vcomplaint now has a single caller, so merge it with that caller.
gdb/ChangeLog
2018-05-23 Tom Tromey <tom@tromey.com>
* complaints.c (vcomplaint): Remove.
(complaint_internal) Merge in contents of vcomplaint.
commit 2ac237e52beb08e09037ff917924319246b5ea6d
Author: Tom Tromey <tom@tromey.com>
Date: Wed May 16 23:05:54 2018 -0600
Remove struct explanation
Now that there's only a single reason for a complaint to be emitted,
this removes "struct explanation" and changes vcomplaint to emit the
desired messages directly.
gdb/ChangeLog
2018-05-23 Tom Tromey <tom@tromey.com>
* complaints.c (struct complaints) <explanation>: Remove.
(symfile_explanations): Remove.
(symfile_complaint_book): Update.
(vcomplaint): Update.
(struct explanation): Remove.
commit b98664d3862579c5a0d23901b1e2fc1f595f39ff
Author: Tom Tromey <tom@tromey.com>
Date: Wed May 16 22:54:44 2018 -0600
Remove symfile_complaints
The complaint system seems to allow for multiple different complaint
topics. However, in practice only symfile_complaints has ever been
defined. Seeing that complaints.c dates to 1992, and that no new
complaints have been added in the intervening years, I think it is
reasonable to admit that complaints are specifically related to
debuginfo reading.
This patch removes symfile_complaints and updates all the callers.
Some of these spots should perhaps be calls to warning instead, but I
did not make that change.
gdb/ChangeLog
2018-05-23 Tom Tromey <tom@tromey.com>
* complaints.c (symfile_complaints): Remove.
(complaint_internal): Remove "complaints" parameter.
(clear_complaints, vcomplaint): Remove "c" parameter.
(get_complaints): Remove.
* dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
(dwarf2_debug_line_missing_file_complaint)
(dwarf2_debug_line_missing_end_sequence_complaint)
(dwarf2_complex_location_expr_complaint)
(dwarf2_const_value_length_mismatch_complaint)
(dwarf2_section_buffer_overflow_complaint)
(dwarf2_macro_malformed_definition_complaint)
(dwarf2_invalid_attrib_class_complaint)
(create_addrmap_from_index, dw2_symtab_iter_next)
(dw2_expand_marked_cus)
(dw2_debug_names_iterator::find_vec_in_debug_names)
(dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
(create_debug_type_hash_table, init_cutu_and_read_dies)
(partial_die_parent_scope, add_partial_enumeration)
(skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
(dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
(read_import_statement, read_file_scope, create_dwo_cu_reader)
(create_cus_hash_table, create_dwp_hash_table)
(inherit_abstract_dies, read_func_scope, read_call_site_scope)
(dwarf2_rnglists_process, dwarf2_ranges_process)
(dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
(dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
(handle_struct_member_die, process_structure_scope)
(read_array_type, read_common_block, read_module_type)
(read_tag_pointer_type, read_typedef, read_base_type)
(read_subrange_type, load_partial_dies, partial_die_info::read)
(partial_die_info::read, partial_die_info::read)
(partial_die_info::read, read_checked_initial_length_and_offset)
(dwarf2_string_attr, read_formatted_entries)
(dwarf_decode_line_header)
(lnp_state_machine::check_line_address, dwarf_decode_lines_1)
(new_symbol, dwarf2_const_value_attr, lookup_die_type)
(read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
(dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
(get_signatured_type, get_DW_AT_signature_type)
(decode_locdesc, file_file_name, consume_improper_spaces)
(skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
(dwarf_decode_macro_bytes, dwarf_decode_macros)
(dwarf2_symbol_mark_computed, set_die_type)
(read_attribute_value): Update.
* stap-probe.c (handle_stap_probe, get_stap_base_address):
Update.
* dbxread.c (unknown_symtype_complaint)
(lbrac_mismatch_complaint, repeated_header_complaint)
(set_namestring, function_outside_compilation_unit_complaint)
(read_dbx_symtab, process_one_symbol): Update.
* gdbtypes.c (stub_noname_complaint): Update.
* windows-nat.c (handle_unload_dll): Update.
* coffread.c (coff_symtab_read, enter_linenos, decode_type)
(decode_base_type): Update.
* xcoffread.c (bf_notfound_complaint, ef_complaint)
(eb_complaint, record_include_begin, record_include_end)
(enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
(process_xcoff_symbol, read_symbol)
(function_outside_compilation_unit_complaint)
(scan_xcoff_symtab): Update.
* machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
* buildsym.c (finish_block_internal, make_blockvector)
(end_symtab_get_static_block, augment_type_symtab): Update.
* dtrace-probe.c (dtrace_process_dof)
(dtrace_static_probe_ops::get_probes): Update.
* complaints.h (struct complaint): Don't declare.
(symfile_complaints): Remove.
(complaint_internal): Remove "complaints" parameter.
(complaint): Likewise.
(clear_complaints): Likewise.
* symfile.c (syms_from_objfile_1, finish_new_objfile)
(reread_symbols): Update.
* dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
(dwarf2_frame_cache, decode_frame_entry): Update.
* dwarf2loc.c (dwarf_reg_to_regnum): Update.
* objc-lang.c (lookup_objc_class, lookup_child_selector)
(info_selectors_command): Update.
* macrotab.c (macro_include, check_for_redefinition)
(macro_undef): Update.
* objfiles.c (filter_overlapping_sections): Update.
* stabsread.c (invalid_cpp_abbrev_complaint)
(reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
(define_symbol, error_type, read_type, rs6000_builtin_type)
(stabs_method_name_from_physname, read_member_functions)
(read_cpp_abbrev, read_baseclasses, read_tilde_fields)
(attach_fields_to_type, complain_about_struct_wipeout)
(read_range_type, read_args, common_block_start)
(common_block_end, cleanup_undefined_types_1, scan_file_globals):
Update.
* mdebugread.c (index_complaint, unknown_ext_complaint)
(basic_type_complaint, bad_tag_guess_complaint)
(bad_rfd_entry_complaint, unexpected_type_code_complaint)
(reg_value_complaint, parse_symbol, parse_type, upgrade_type)
(parse_procedure, parse_lines)
(function_outside_compilation_unit_complaint)
(parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
(bad_tag_guess_complaint, reg_value_complaint): Update.
* cp-support.c (demangled_name_complaint): Update.
* macroscope.c (sal_macro_scope): Update.
* dwarf-index-write.c (class debug_names): Update.
gdb/testsuite/ChangeLog
2018-05-23 Tom Tromey <tom@tromey.com>
* gdb.gdb/complaints.exp (test_initial_complaints): Don't mention
symfile_complaints.
(test_short_complaints): Likewise.
(test_empty_complaints): Likewise.
(test_initial_complaints): Update.
commit 4e9668d0d1ddad73af7c20a92a00704fbea2a8d9
Author: Tom Tromey <tom@tromey.com>
Date: Wed May 16 22:27:50 2018 -0600
Remove "noisy" parameter from clear_complaints
After the previous patch, the "noisy" parameter to clear_complaints is
no longer used, so this patch removes it.
gdb/ChangeLog
2018-05-23 Tom Tromey <tom@tromey.com>
* complaints.c (clear_complaints): Remove "noisy" parameter.
* complaints.h (clear_complaints): Update.
* symfile.c (syms_from_objfile_1, finish_new_objfile)
(reread_symbols): Update.
gdb/testsuite/ChangeLog
2018-05-23 Tom Tromey <tom@tromey.com>
* gdb.gdb/complaints.exp (test_empty_complaints): Update.
commit 43ba33c7689a9eeb20a3c36ecb9867574963ee0e
Author: Tom Tromey <tom@tromey.com>
Date: Wed May 16 22:23:09 2018 -0600
Remove elements from complaint_series
I couldn't find a way to get complaints to use a couple of cases, and
the difference between the actual printed output for these cases was
minimal anyway. So, this patch removes a couple of constants from
complaint_series, plus the associated code.
gdb/ChangeLog
2018-05-23 Tom Tromey <tom@tromey.com>
* complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
SUBSEQUENT_MESSAGE.
(vcomplaint, clear_complaints): Update.
(symfile_explanations): Remove some messages.
gdb/testsuite/ChangeLog
2018-05-23 Tom Tromey <tom@tromey.com>
* gdb.gdb/complaints.exp (test_serial_complaints): Remove.
(test_short_complaints): Update.
commit 2b9496b2b4781b21bc30a70337e24205f8a923d8
Author: Tom Tromey <tom@tromey.com>
Date: Wed May 16 15:09:32 2018 -0600
Remove internal_complaint
I happened to notice that gdb has both complaint_internal and
internal_complaint. The latter is unused, so this patch removes it.
gdb/ChangeLog
2018-05-23 Tom Tromey <tom@tromey.com>
* complaints.c (internal_complaint): Remove.
* complaints.h (internal_complaint): Remove.
commit 81e25b7c91efcc3ff54605b11859375a5c885c8b
Author: Erik Kurzinger <ekurzinger@nvidia.com>
Date: Wed May 23 12:04:39 2018 +0100
Improve File I/O overflow detection in gdbserver (PR server/23198)
Currently, the function used by gdbserver to parse integers from
received File I/O commands will detect overflow and fail for any value
over 0xfffffff. Among other things, this has the effect of limiting
the file offsets for reading or writing to about 268MB which can be
insufficient for particularly large libraries.
This change allows the parsing of integers up to the true maximum
positive value of 0x7fffffff, increasing the file size limit to about
2GB.
gdb/gdbserver/ChangeLog:
2018-05-23 Erik Kurzinger <ekurzinger@nvidia.com>
PR server/23198
* hostio.c (require_int): Do not report overflow for integers
between 0xfffffff and 0x7fffffff.
commit f2a3bd7da2bcd3a4d7ff33bec738f2ef1c0dacc4
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed May 23 00:00:29 2018 +0000
Automatic date update in version.in
commit 035522c0228be33b2124ada2f178187e7e53aa6c
Author: Pedro Alves <palves@redhat.com>
Date: Tue May 22 23:26:46 2018 +0100
Fix gdb.base/remote.exp with native-extended-gdbserver board
This fixes gdb.base/remote.exp regressions caused by the previous
commit to the testcase, when tested with
--target_board=native-extended-gdbserver. For example:
...
show remote memory-write-packet-size
The memory-write-packet-size is 0 (default). Packets are limited to 16383 bytes.
(gdb) FAIL: gdb.base/remote.exp: write-packet default
...
With that board, GDB connects to GDBserver at gdb_start time, so GDB
is showing the actual remote/gdbserver packet size limits.
Fix it using the usual "disconnect" pattern. While at it, there's no
need to start GDB before compiling the testcase.
gdb/testsuite/ChangeLog:
2018-05-22 Pedro Alves <palves@redhat.com>
* gdb.base/remote.exp: Only gdb_start after compiling the
testcase. Issue "disconnect" before testing "set remote" command
defaults. Issue clean_restart before running to main.
commit 35f1fea3fcd44546a6cf074029c284c64ad25b3c
Author: Maciej W. Rozycki <macro@mips.com>
Date: Tue May 22 22:52:14 2018 +0100
gdb/x86: Fix `-Wstrict-overflow' build error in `i387_collect_xsave'
Make `i' defined within `i387_collect_xsave' unsigned, removing a
`-Werror=strict-overflow' compilation error:
.../gdb/i387-tdep.c: In function 'void i387_collect_xsave(const regcache*, int, void*, int)':
.../gdb/i387-tdep.c:1348:1: error: assuming signed overflow does not occur when assuming that (X + c) < X is always false [-Werror=strict-overflow]
i387_collect_xsave (const struct regcache *regcache, int regnum,
^
cc1plus: all warnings being treated as errors
Makefile:1610: recipe for target 'i387-tdep.o' failed
make: *** [i387-tdep.o] Error 1
seen with GCC 5.4.0, a commit 8ee22052f690 ("gdb/x86: Handle kernels
using compact xsave format") regression. While `regnum' can be -1 on
entry to the function, to mean all registers, `i' is only used with
non-negative register numbers.
gdb/
* i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
commit 7e947ad3438b2954e0bd248fd2c95a86bd9fe33b
Author: Maciej W. Rozycki <macro@mips.com>
Date: Tue May 22 22:52:14 2018 +0100
MIPS/gdbserver: Correctly handle narrow big-endian register transfers
Fix an issue with `gdbserver' on big-endian n64 MIPS targets, where
$dspctl is 32-bit while the `ptrace' transfer data type is 64-bit.
Such register data is held in the low order 32 bits of the 64-bit data
quantity exchanged with the buffer used by `fetch_register' and
`store_register', however `supply_register' and `collect_register'
access the same data as a 32-bit quantity. Consequently the register is
presented and written as all-zeros held in the most-significant part of
the big-endian 64-bit data quantity represented in the buffer:
(gdb) info registers
zero at v0 v1
R0 0000000000000000 0000000000000001 0000000000000001 0000000000000000
a0 a1 a2 a3
R4 00000001200212b0 0000000000000000 0000000000000021 000000012001a260
a4 a5 a6 a7
R8 000000012001a260 0000000000000004 800000010c60c000 fffffffffffffff8
t0 t1 t2 t3
R12 0000000000000000 000000fff7edab68 0000000000000001 0000000000000000
s0 s1 s2 s3
R16 000000fff7ee2068 0000000120008b80 0000000000000000 0000000000000000
s4 s5 s6 s7
R20 000000000052e5c8 000000000052f008 0000000000000000 0000000000000000
t8 t9 k0 k1
R24 0000000000000000 00000001200027c0 0000000000000000 0000000000000000
gp sp s8 ra
R28 00000001200212b0 000000ffffffc850 000000ffffffc850 0000000120005ee8
status lo hi badvaddr
0000000000109cf3 0000000000943efe 000000000000000e 000000012001a008
cause pc
0000000000800024 0000000120005ee8
fcsr fir hi1 lo1
0e800000 00f30000 0000000000000000 0101010101010101
hi2 lo2 hi3 lo3
0202020202020202 0303030303030303 0404040404040404 0505050505050505
dspctl restart
00000000 0000000000000000
(gdb)
Correct this problem then by using the `mips_supply_register'
`mips_collect_register' accessors for 32-bit registers where the
`ptrace' data type is 64-bit. These accessors already operate on 32-bit
data quantities held in 64-bit containers:
(gdb) info registers
zero at v0 v1
R0 0000000000000000 0000000000000001 0000000000000001 0000000000000000
a0 a1 a2 a3
R4 00000001200212b0 0000000000000000 0000000000000021 000000012001a260
a4 a5 a6 a7
R8 000000012001a260 0000000000000004 800000010d82e900 fffffffffffffff8
t0 t1 t2 t3
R12 0000000000000000 000000fff7edab68 0000000000000001 0000000000000000
s0 s1 s2 s3
R16 000000fff7ee2068 0000000120008b80 0000000000000000 0000000000000000
s4 s5 s6 s7
R20 000000000052e5c8 000000000052f008 0000000000000000 0000000000000000
t8 t9 k0 k1
R24 0000000000000000 00000001200027c0 0000000000000000 0000000000000000
gp sp s8 ra
R28 00000001200212b0 000000ffffffc850 000000ffffffc850 0000000120005ee8
status lo hi badvaddr
0000000000109cf3 0000000000943efe 000000000000000e 000000012001a008
cause pc
0000000000800024 0000000120005ee8
fcsr fir hi1 lo1
0e800000 00f30000 0000000000000000 0101010101010101
hi2 lo2 hi3 lo3
0202020202020202 0303030303030303 0404040404040404 0505050505050505
dspctl restart
55aa33cc 0000000000000000
(gdb)
gdb/gdbserver/
* linux-mips-low.c [HAVE_PTRACE_GETREGS] (mips_collect_register)
(mips_supply_register): Move outside HAVE_PTRACE_GETREGS.
(mips_collect_ptrace_register, mips_supply_ptrace_register): New
functions.
(the_low_target): Wire them.
commit 6b8edb5101861228778b7c2d014e20c5ba0c156a
Author: Pedro Alves <palves@redhat.com>
Date: Tue May 22 18:22:11 2018 +0100
remote: one struct remote_state per struct remote_target
'struct remote_state' today contains per-connection state, however
there's only a single global instance of that type. In order to
support multiple connections, we must have one such object per
connection.
Thus this patch eliminates the 'remote_state' global in favor of
having a remote_state instance per remote_target instance.
The get_remote_state free function is eliminated as well, by making it
a remote_target method instead.
The patch then fixes the fallout by making all free functions that
refer to get_remote_state() directly or indirectly be methods of
remote_target too.
Likewise, remote-fileio.c and remote-notif.c routines are
parameterized with a remote_target pointer too, so they can call into
the right remote_target instance.
References to the global 'get_remote_state ()->remote_desc' to tell
whether the remote target is open (!= nullptr) must be replaced with
something else:
- Command implementations use a new get_current_remote_target free
function.
- remote_target::open_1 checks the exception type instead.
Finally, remote_target and extended_remote_target are made
heap-allocated targets. As with the earlier core target patches, it
still won't be possible to have more than one remote_target instance
in practice, but this puts us closer.
gdb/ChangeLog:
2018-05-22 Pedro Alves <palves@redhat.com>
* remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
(remote_fileio_badfd, remote_fileio_return_errno)
(remote_fileio_return_success, remote_fileio_func_open)
(remote_fileio_func_open, remote_fileio_func_close)
(remote_fileio_func_read, remote_fileio_func_write)
(remote_fileio_func_lseek, remote_fileio_func_rename)
(remote_fileio_func_unlink, remote_fileio_func_stat)
(remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
(remote_fileio_func_isatty, remote_fileio_func_system): Add
remote_target parameter.
(remote_fio_func_map) <func>: Add remote_target parameter.
(do_remote_fileio_request, remote_fileio_request):
* remote-fileio.h (remote_fileio_request):
* remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
remote_target parameter.
(remote_notif_process, handle_notification): Adjust to pass down
the remote.
(remote_notif_state_allocate): Add remote_target parameter. Save
it.
* remote-notif.h (struct remote_target): Forward declare.
(struct notif_client) <parse, ack, can_get_pending_events>: Add
remote_target parameter.
(struct remote_notif_state) <remote>: New field.
(remote_notif_ack, remote_notif_parse): Add remote_target
parameter.
(remote_notif_state_allocate, remote_notif_state_allocate): Add
remote_target parameter.
* remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
(threads_listing_context, rmt_thread_action, protocol_feature)
(packet_reg, stop_reply, stop_reply_p, enum packet_support)
(packet_result, struct threads_listing_context, remote_state):
Move definitions and declarations higher up.
(remote_target) <~remote_target>: Declare.
(remote_download_command_source, remote_file_put, remote_file_get)
(remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
(remote_hostio_pread_vFile, remote_hostio_send_command)
(remote_hostio_set_filesystem, remote_hostio_open)
(remote_hostio_close, remote_hostio_unlink, remote_state)
(get_remote_state, get_remote_packet_size, get_memory_packet_size)
(get_memory_write_packet_size, get_memory_read_packet_size)
(append_pending_thread_resumptions, remote_detach_1)
(append_resumption, remote_resume_with_vcont)
(add_current_inferior_and_thread, wait_ns, wait_as)
(process_stop_reply, remote_notice_new_inferior)
(process_initial_stop_replies, remote_add_thread)
(btrace_sync_conf, remote_btrace_maybe_reopen)
(remove_new_fork_children, kill_new_fork_children)
(discard_pending_stop_replies, stop_reply_queue_length)
(check_pending_events_prevent_wildcard_vcont)
(discard_pending_stop_replies_in_queue, stop_reply)
(remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
(peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
(remote_interrupt_as, remote_interrupt_ns)
(remote_get_noisy_reply, remote_query_attached)
(remote_add_inferior, remote_current_thread, get_current_thread)
(set_thread, set_general_thread, set_continue_thread)
(set_general_process, write_ptid)
(remote_unpack_thread_info_response, remote_get_threadinfo)
(parse_threadlist_response, remote_get_threadlist)
(remote_threadlist_iterator, remote_get_threads_with_ql)
(remote_get_threads_with_qxfer)
(remote_get_threads_with_qthreadinfo, extended_remote_restart)
(get_offsets, remote_check_symbols, remote_supported_packet)
(remote_query_supported, remote_packet_size)
(remote_serial_quit_handler, remote_detach_pid)
(remote_vcont_probe, remote_resume_with_hc)
(send_interrupt_sequence, interrupt_query)
(remote_notif_get_pending_events, fetch_register_using_p)
(send_g_packet, process_g_packet, fetch_registers_using_g)
(store_register_using_P, store_registers_using_G)
(set_remote_traceframe, check_binary_download)
(remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
(remote_xfer_live_readonly_partial, remote_read_bytes)
(remote_send_printf, remote_flash_write, readchar)
(remote_serial_write, putpkt, putpkt_binary, skip_frame)
(read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
(getpkt_or_notif_sane, remote_vkill, remote_kill_k)
(extended_remote_disable_randomization, extended_remote_run)
(send_environment_packet, extended_remote_environment_support)
(extended_remote_set_inferior_cwd, remote_write_qxfer)
(remote_read_qxfer, push_stop_reply, vcont_r_supported)
(packet_command): Now methods of ...
(remote_target): ... this class.
(m_remote_state) <remote_target>: New field.
(struct remote_state) <stop_reply_queue,
remote_async_inferior_event_token, wait_forever_enabled_p>: New
fields.
(remote_state::remote_state): Allocate stop_reply_queue.
(remote_state): Delete global.
(get_remote_state_raw): Delete.
(remote_target::get_remote_state): Allocate m_remote_state on
demand.
(get_current_remote_target): New.
(remote_ops, extended_remote_ops): Delete.
(wait_forever_enabled_p, remote_async_inferior_event_token):
Delete, moved to struct remote_state.
(remote_target::close): Delete self. Destruction bits split to
...
(remote_target::~remote_target): ... this.
(show_memory_packet_size): Adjust to use
get_current_remote_target.
(struct protocol_feature) <func>: Add remote_target parameter.
All callers adjusted.
(curr_quit_handler_target): New.
(remote_serial_quit_handler): Reimplement.
(remote_target::open_1): Adjust to use get_current_remote_target.
Heap-allocate remote_target/extended_remote_target instances.
(vcont_builder::vcont_builder): Add remote_target parameter, and
save it in m_remote. All callers adjusted.
(vcont_builder::m_remote): New field.
(vcont_builder::restart, vcont_builder::flush)
(vcont_builder::push_action): Use it.
(remote_target::commit_resume): Use it.
(struct queue_iter_param) <remote>: New field.
(remote_target::remove_new_fork_children): Fill in 'remote' field.
(check_pending_event_prevents_wildcard_vcont_callback_data): New.
(check_pending_event_prevents_wildcard_vcont_callback)
(remote_target::check_pending_events_prevent_wildcard_vcont)
(remote_target::discard_pending_stop_replies)
(remote_target::discard_pending_stop_replies_in_queue)
(remote_target::remote_notif_remove_queued_reply): Fill in
'remote' field.
(remote_notif_get_pending_events): New.
(remote_target::readchar, remote_target::remote_serial_write):
Save/restore curr_quit_handler_target.
(putpkt): New.
(kill_new_fork_children): Fill in 'remote' field.
(packet_command): Use get_current_remote_target, defer to
remote_target method of same name.
(scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
parameter, and save it in m_remote. All callers adjusted.
(scoped_remote_fd::release): Use m_remote.
(scoped_remote_fd::m_remote): New field.
(remote_file_put, remote_file_get, remote_file_delete): Use
get_current_remote_target, defer to remote_target method of same
name.
(remote_btrace_reset): Add remote_state paremeter. Update all
callers.
(remote_async_inferior_event_handler). Pass down 'data'.
(remote_new_objfile): Use get_current_remote_target.
(remote_target::vcont_r_supported): New.
(set_range_stepping): Use get_current_remote_target and
remote_target::vcont_r_supported.
(_initialize_remote): Don't allocate 'remote_state' and
'stop_reply_queue' globals.
* remote.h (struct remote_target): Forward declare.
(getpkt, putpkt, remote_notif_get_pending_events): Add
'remote_target' parameter.
commit f5db4863f51b83bc6b54504d61e1731011cfdec2
Author: Pedro Alves <palves@redhat.com>
Date: Tue May 22 18:22:11 2018 +0100
remote: Make vcont_builder a class
gdb/ChangeLog:
2018-05-22 Pedro Alves <palves@redhat.com>
* remote.c (vcont_builder): Now a class. Make all data members
private.
(vcont_builder) <vcont_builder, restart, flush, push_action>:
Declare methods.
(vcont_builder_restart): Rename to ...
(vcont_builder::restart): ... this.
(vcont_builder_flush): Rename to ...
(vcont_builder::flush): ... this.
(vcont_builder_push_action): Rename to ...
(vcont_builder::push_action): ... this.
(remote_target::commit_resume): Adjust.
commit cc0be08f80d4348e8f81471c80409710c4d4cd1a
Author: Pedro Alves <palves@redhat.com>
Date: Tue May 22 18:22:10 2018 +0100
Handle "show remote memory-write-packet-size" when not connected
Currently "show remote memory-write-packet-size" says that the packet
size is limited to whatever is stored in the remote_state global, even
if not connected to a target.
When we get to support multiple instances of remote targets, there
won't be a remote_state global anymore, so that must be replaced by
something else.
Since it doesn't make sense to print the limit of the packet size of a
non-existing connection, this patch makes us say that the limit will
be further reduced when we connect.
The text is taken from the command's online help, which says:
"The actual limit is further reduced dependent on the target."
Note that a value of "0" is special, as per "help set remote
memory-write-packet-size":
~~~
Specify the number of bytes in a packet or 0 (zero) for the
default packet size.
~~~
I've tweaked "show remote memory-write-packet-size" to include
"(default)" in the output in that case, like this:
(gdb) show remote memory-write-packet-size
The memory-write-packet-size is 0 (default). The actual limit will be further reduced dependent on the target.
While working on this, I noticed that an explicit "set remote
write-packet-size 0" does not makes GDB go back to the exact same
state as the default state when GDB starts up:
(gdb) show remote memory-write-packet-size
The memory-write-packet-size is 0. [...]
^^
(gdb) set remote memory-write-packet-size 0
(gdb) show remote memory-write-packet-size
The memory-write-packet-size is 16384. [...]
^^^^^
The "16384" number comes from DEFAULT_MAX_MEMORY_PACKET_SIZE.
This happens because git commit a5c0808e221c ("gdb: remove packet size
limit") at
<https://sourceware.org/ml/gdb-patches/2015-08/msg00743.html>, added
this:
/* So that the query shows the correct value. */
if (size <= 0)
size = DEFAULT_MAX_MEMORY_PACKET_SIZE;
to set_memory_packet_size, but despite what the comment suggests, that
also has the side-effect of recording DEFAULT_MAX_MEMORY_PACKET_SIZE
in config->size.
Finally, DEFAULT_MAX_MEMORY_PACKET_SIZE only makes sense for "set
remote memory-write-packet-size fixed", so I've renamed it
accordingly, to make it a little bit clearer.
gdb/ChangeLog:
2018-05-22 Pedro Alves <palves@redhat.com>
* remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
(DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
(get_fixed_memory_packet_size): New.
(get_memory_packet_size): Use it.
(set_memory_packet_size): Don't override the config size with
DEFAULT_MAX_MEMORY_PACKET_SIZE.
(show_memory_packet_size): Use get_fixed_memory_packet_size.
Don't refer to get_memory_packet_size if not connected to a remote
target. Show "(default)" if configured size is 0.
gdb/testsuite/ChangeLog:
2018-05-22 Pedro Alves <palves@redhat.com>
* gdb.base/remote.exp: Adjust expected output of "show remote
memory-write-packet-size". Add tests for "set remote
memory-write-packet-size 0" and "set remote
memory-write-packet-size fixed/limit".
commit 9607784ac00f9278094e962963f6271472b1dfca
Author: Pedro Alves <palves@redhat.com>
Date: Tue May 22 18:22:09 2018 +0100
remote: Move discard_pending_stop_replies call
This helps because discard_pending_stop_replies will later become a
method of remote_target. Otherwise, when we have multiple instances
of remote_target, we'd have to make discard_pending_stop_replies find
the inferior's target_ops, and upcast it to remote_target (if indeed a
remote) to find the pending stop replies queue to clear.
gdb/ChangeLog:
2018-05-22 Pedro Alves <palves@redhat.com>
* remote.c (remote_target::mourn_inferior): Move
discard_pending_stop_replies call here from ...
(_initialize_remote): ... here.
commit 0e9a6b2f040e016c9dd7f9841a0272e488ed2fd5
Author: Pedro Alves <palves@redhat.com>
Date: Tue May 22 18:22:09 2018 +0100
remote: Small cleanup in compare_section_command
The set_general_process call in compare_sections_command isn't
actually needed. remote_target::verify_memory and
remote_target::xfer_partial already handle making sure the remote is
pointing at the right process or thread.
Getting this out of the way helps a bit with further elimination of
the remote_state global, because we have to handle the case of a user
invoking the command even if not connect to a remote target.
gdb/ChangeLog:
2018-05-22 Pedro Alves <palves@redhat.com>
* remote.c (compare_section_command): Remove set_general_process
call.
commit 43c3a0e4735033ed2fe3a4cb65f911cee69f55ae
Author: Pedro Alves <palves@redhat.com>
Date: Tue May 22 18:22:08 2018 +0100
remote: remote_arch_state pointers -> remote_arch_state objects
The previous patch made the map store pointers to remote_arch_state
instead of objects directly, simply because struct remote_arch_state
is still incomplete where struct remote_state is declared. This patch
thus moves the remote_arch_state declaration higher up in the file,
and makes the map store remote_arch_state objects directly instead of
pointers to objects.
gdb/ChangeLog:
2018-05-22 Pedro Alves <palves@redhat.com>
* remote.c (struct packet_reg, struct remote_arch_state):
Move higher up in the file.
(remote_state) <m_arch_states>: Store remote_arch_state values
instead of remote_arch_state pointers.
(remote_state::get_remote_arch_state): Adjust.
commit 9d6eea31325e4027b5f035e941864fa6d780a8ca
Author: Pedro Alves <palves@redhat.com>
Date: Tue May 22 18:22:08 2018 +0100
remote: multiple remote_arch_state instances per arch
Currently, we associate gdbarch-related remote protocol state on a
per-gdbarch data object. Things like the size of the g/G packet, and
the max remote packet size. If we'll support being connected to
different remote servers at the same time, then we need to cope with
each having their own packet sizes, even if they are each debugging
programs of the same architecture. I.e., a single instance of
remote_arch_state per arch is not sufficient.
This patch moves the remote_arch_state object to a map of
gdbarch-to-remote_arch_state saved in the remote_state structure.
Usually there will only be one entry in the map, though we may see
more with stubs that support multi-process and/or archs with multiple
ABIs (e.g, one remote_arch_state for 64-bit inferiors and another for
32-bit inferiors).
gdb/ChangeLog:
2018-05-22 Pedro Alves <palves@redhat.com>
* remote.c: Include <unordered_map>.
(remote_state): Now a class.
(remote_state) <get_remote_arch_state>: Declare method.
<get_remote_arch_state>: New field.
(remote_arch_state) <remote_arch_state>: Declare ctor.
<regs>: Now a unique_ptr.
(remote_gdbarch_data_handle): Delete.
(get_remote_arch_state): Delete.
(remote_state::get_remote_arch_state): New.
(get_remote_state): Adjust to call remote_state's
get_remote_arch_state method.
(init_remote_state): Delete, bits factored out to ...
(remote_arch_state::remote_arch_state): ... this new method.
(get_remote_packet_size, get_memory_packet_size)
(process_g_packet, remote_target::fetch_registers)
(remote_target::prepare_to_store, store_registers_using_G)
(remote_target::store_registers, remote_target::get_trace_status):
Adjust to call remote_state's method.
(_initialize_remote): Remove reference to
remote_gdbarch_data_handle.
commit dd194f6b36727987dc7f0d707512bd886982099c
Author: Pedro Alves <palves@redhat.com>
Date: Tue May 22 18:22:07 2018 +0100
remote: Make readahead_cache a C++ class
The idea here is eliminate the get_remote_state calls from within
readahead_cache_invalidate, readahead_cache_invalidate_fd,
remote_hostio_pread_from_cache by making those functions be class
methods instead. Later on we'll have one readahead_cache instance per
remote connection, and this change makes that easier.
gdb/ChangeLog:
2018-05-22 Pedro Alves <palves@redhat.com>
* remote.c (struct readahead_cache) <invalidate, invalidate_fd,
pread>: New method declarations.
(remote_target::open_1): Adjust.
(readahead_cache_invalidate): Rename to ...
(readahead_cache::invalidate): ... this, and adjust to be a class
method.
(readahead_cache_invalidate_fd): Rename to ...
(readahead_cache::invalidate_fd): ... this, and adjust to be a
class method.
(remote_hostio_pwrite): Adjust.
(remote_hostio_pread_from_cache): Rename to ...
(readahead_cache::pread): ... this, and adjust to be a class
method.
(remote_hostio_close): Adjust.
commit 440b7aece49b9a1e9ff4537214134c3cd06425d9
Author: Pedro Alves <palves@redhat.com>
Date: Tue May 22 18:22:07 2018 +0100
remote: Eliminate remote_hostio_close_cleanup
gdb/ChangeLog:
2018-05-22 Pedro Alves <palves@redhat.com>
* remote.c (remote_hostio_close_cleanup): Delete.
(class scoped_remote_fd): New.
(remote_file_put, remote_file_get): Use it.
commit de44f5a73576b426b32b605e0d5016d4fae9b4b1
Author: Pedro Alves <palves@redhat.com>
Date: Tue May 22 18:22:06 2018 +0100
remote: struct remote_state, use op new, fix leaks
A bit of C++ification. Also plugs a few leaks, since currently
nothing is freeing a few fields of remote_state. They're now freed in
the added destructor.
gdb/ChangeLog:
2018-05-22 Pedro Alves <palves@redhat.com>
(struct vCont_action_support): Use bool and initialize all fields.
(struct readahead_cache): Initialize all fields.
(remote_state): Use bool and initialize all fields.
(remote_state::remote_state, remote_state::~remote_state): New.
(new_remote_state): Delete.
(_initialize_remote): Use new to allocate remote_state.
commit b1b60145aedb8adcb0b9dcf43a5ae735c2f03b51
Author: Pedro Alves <palves@redhat.com>
Date: Tue May 22 17:35:38 2018 +0100
Support UTF-8 identifiers in C/C++ expressions (PR gdb/22973)
Factor out cp_ident_is_alpha/cp_ident_is_alnum out of
gdb/cp-name-parser.y and use it in the C/C++ expression parser too.
New test included.
gdb/ChangeLog:
2018-05-22 Pedro Alves <palves@redhat.com>
å¼µä¿è <zjz@zjz.name>
PR gdb/22973
* c-exp.y: Include "c-support.h".
(parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
of tolower. Use c_ident_is_alpha to scan names.
* c-lang.c: Include "c-support.h".
(convert_ucn, convert_octal, convert_hex, convert_escape): Use
ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
* c-support.h: New file, with bits factored out from ...
* cp-name-parser.y: ... this file.
Include "c-support.h".
(cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
c-support.h and renamed.
(symbol_end, yylex): Adjust.
gdb/testsuite/ChangeLog:
2018-05-22 Pedro Alves <palves@redhat.com>
PR gdb/22973
* gdb.base/utf8-identifiers.c: New file.
* gdb.base/utf8-identifiers.exp: New file.
commit 0ec848ad25bb77edd9c9c3c097c3dd5b8874a6c0
Author: Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
Date: Tue May 22 11:09:06 2018 -0300
[PowerPC] Recognize isa205 in linux core files
Currently the ppc linux core file target doesn't return target
descriptions with the lager FPSCR introduced in isa205.
This patch changes the core file target so that the auxv is read from
the core file to determine the size of FPSCR, so that the appropriate
target description is selected.
gdb/ChangeLog:
2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
* arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
parameter type to CORE_ADDR.
* arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
parameter type in declaration to CORE_ADDR.
* ppc-linux-tdep.c (ppc_linux_core_read_description): Call
target_auxv_search to get AT_HWCAP and use the result to get the
target description.
* ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
to CORE_ADDR. Remove the cast of the return value to unsigned
long. Fix error predicate of target_auxv_search.
(ppc_linux_nat_target::read_description): Change the type of the
hwcap variable to CORE_ADDR.
gdb/testsuite/ChangeLog:
2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
* gdb.arch/powerpc-fpscr-gcore.exp: New file.
commit 0fb2aaa15e04238644471f7d89be3667784b19c0
Author: Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
Date: Tue May 22 11:09:05 2018 -0300
[PowerPC] Fix inclusion of dfp pseudoregs in tdep
Previously, decimal floating point pseudoregisters were always included
in the target if it had a floating point unit.
This patch changes this to only include them if the target description
indicates that they are present, i.e. if the FPSCR register has more
than 32 bits.
gdb/ChangeLog:
2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
* rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
if the size of fpscr is larger than 32 bits.
commit 2c3305f6b0432e37d26ce7761d0c4415ab5ca911
Author: Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
Date: Tue May 22 11:09:05 2018 -0300
[PowerPC] Fix VSX registers in linux core files
The functions used by the VSX regset to collect and supply registers
from core files where incorrect. This patch changes the regset to use
the standard regset collect/supply functions to fix this. The native
target is also changed to use the same regset.
gdb/ChangeLog:
2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
* ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
(ppc32_linux_vsxregmap): New global.
(ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
regcache_supply_regset, and regcache_collect_regset.
* ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
* ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
(fetch_vsx_register, store_vsx_register): Remove.
(fetch_vsx_registers): Add regno parameter. Get regset using
ppc_linux_vsxregset. Use regset to supply registers.
(store_vsx_registers): Add regno parameter. Get regset using
ppc_linux_vsxregset. Use regset to collect registers.
(fetch_register): Call fetch_vsx_registers instead of
fetch_vsx_register.
(store_register): Call store_vsx_registers instead of
store_vsx_register.
(fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
new regno parameter.
(store_ppc_registers): Call store_vsx_registers with -1 for the
new regno parameter.
* rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
(ppc_collect_vsxregset): Remove.
gdb/testsuite/ChangeLog:
2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
* gdb.arch/powerpc-vsx-gcore.exp: New file.
commit 1d75a65809b49d41e97518b99c551a4bb2517500
Author: Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
Date: Tue May 22 11:09:05 2018 -0300
[PowerPC] Fix access to VSCR in linux targets
The 4-byte VSCR register is found inside a 16-byte field in the regset
returned by ptrace and in core files. The position of VSCR depends on
the endianess of the target, which was previously assumed to be
big-endian for the purpose of getting VSCR. This patch removes this
assumption to fix access to VSCR in little-endian mode.
gdb/ChangeLog:
2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
* ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
offset fields.
* ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
for vector register offset fields.
(ppc64_fbsd_reg_offsets): Likewise.
* ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
to vector register offset fields.
* ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
to vector register offset fields.
* ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
vector register offset fields.
* rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
initializers for vector register offset fields.
(rs6000_aix64_reg_offsets): Likewise.
* rs6000-tdep.c (ppc_vrreg_offset): Remove.
(ppc_supply_vrregset): Remove.
(ppc_collect_vrregset): Remove.
* ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
(ppc_linux_vrregset) : New function.
(ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
(ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
(ppc32_linux_vrregset): Remove.
(ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
and use result instead of ppc32_linux_vrregset.
(ppc32_linux_reg_offsets): Remove initializers for vector register
offset fields.
(ppc64_linux_reg_offsets): Likewise.
* ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
* ppc-linux-nat.c: Include regset.h.
(gdb_vrregset_t): Adjust comment to account for little-endian
mode.
(supply_vrregset, fill_vrregset): Remove.
(fetch_altivec_register, store_altivec_register): Remove.
(fetch_altivec_registers): Add regno parameter. Get regset using
ppc_linux_vrregset. Use regset to supply registers.
(store_altivec_registers): Add regno parameter. Get regset using
ppc_linux_vrregset. Use regset to collect registers.
(fetch_register): Call fetch_altivec_registers instead of
fetch_altivec_register.
(store_register): Call store_altivec_registers instead of
store_altivec_register.
(fetch_ppc_registers): Call fetch_altivec_registers with -1 for
the new regno parameter.
(store_ppc_registers): Call store_altivec_registers with -1 for
the new regno parameter.
gdb/gdbserver/ChangeLog:
2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
* linux-ppc-low.c (ppc_fill_vrregset): Add vscr_offset variable.
Set vscr_offset to 0 in little-endian mode and 12 in big-endian
mode. Call collect_register_by_name with vscr using
vscr_offset. Zero-pad vscr and vrsave fields in collector buffer.
(ppc_store_vrregset): Add and set vscr_offset variable as in
ppc_fill_vrregset. Call supply_register_by_name with vscr using
vscr_offset.
commit d078308a2ed1290e587b4365e2d7382d951a26af
Author: Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
Date: Tue May 22 11:09:05 2018 -0300
[PowerPC] Consolidate linux vector regset sizes
This patch defines constants for the sizes of the two vector
regsets (vector-scalar registers and regular vector registers).
The native, gdbserver and core file targets are changed to use these
constants.
The Linux ptrace calls return (or read) a smaller regset than the one
found in core files for vector registers, because ptrace uses a single
4-byte quantity for vrsave at the end of the regset, while the
core-file regset uses a full 16-byte field for vrsave. For simplicity,
the larger size is used in both cases, and so a buffer with 12 unused
additional bytes is passed to ptrace in the native target.
gdb/ChangeLog:
2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
* arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
(PPC_LINUX_SIZEOF_VSXREGSET): Define.
* ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
(gdb_vrregset_t): Change array type size to
PPC_LINUX_SIZEOF_VRREGSET.
(gdb_vsxregset_t): Change array type size to
PPC_LINUX_SIZEOF_VSXREGSET.
* ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
PPC_LINUX_SIZEOF_VSXREGSET.
gdb/gdbserver/ChangeLog:
2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
* linux-ppc-low.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
(ppc_arch_setup): Change SIZEOF_VRREGS and SIZEOF_VSXREGS to
PPC_LINUX_SIZEOF_VRREGSET and PPC_LINUX_SIZEOF_VSXREGSET.
commit 7273b5fc4baef93f8caaed678476e8cb3625338d
Author: Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
Date: Tue May 22 11:09:05 2018 -0300
[PowerPC] Disable regsets using zero sizes in gdbserver
Currently the linux-ppc-low.c fill/store functions for extended
regsets check whether they should execute by using the global hwcap
variable.
This patch explicitly sets the regset sizes to zero when needed to
disable them instead, so that the fill/store functions are not called
in the first place by regsets_fetch_inferior_registers in linux-low.c.
gdb/gdbserver/ChangeLog:
2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
* linux-ppc-low.c (ppc_fill_vsxregset): Remove ppc_hwcap check.
(ppc_store_vsxregset): Likewise.
(ppc_fill_vrregset): Likewise.
(ppc_store_vrregset): Likewise.
(ppc_fill_evrregset): Likewise.
(ppc_store_evrregset): Likewise.
(ppc_regsets): Set VSX/VR/EVR regset sizes to 0.
(ppc_arch_setup): Iterate through ppc_regsets and set sizes when
needed.
commit 2e077f5e67aeff78e096a250bd225cd4658a35dc
Author: Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
Date: Tue May 22 11:09:05 2018 -0300
[PowerPC] Consolidate wordsize getter between native and gdbserver
This patch moves the native target wordsize getter for ppc linux to
nat/ so that it can be used to simplify ppc_arch_setup in
gdbserver. The ptrace call used to get MSR for this is ultimately the
same as before, but it is no longer necessary to create a temporary
regcache to call fetch_inferior_registers.
gdb/ChangeLog:
2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
* configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
* ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
nat/ppc-linux.c.
(ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
ppc_linux_target_wordsize with tid.
(ppc_linux_nat_target::read_description): Call ppc_linux_target
wordsize with tid.
* nat/ppc-linux.c: Include nat/gdb_ptrace.h.
(ppc64_64bit_inferior_p): Add static and inline specifiers.
(ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
tid parameter. Remove static specifier.
* nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
(ppc_linux_target_wordsize): New declaration.
gdb/gdbserver/ChangeLog:
2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
* linux-ppc-low.c (ppc_arch_setup): Remove code for getting the
wordsize of the inferior. Call ppc_linux_target_wordsize.
commit bd64614eb737096f40b976fb505ddd42e7f1614c
Author: Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
Date: Tue May 22 11:09:05 2018 -0300
[PowerPC] Consolidate linux target description selection
Share target description declarations and selection among ppc linux
native targets, core files, gdbserver and IPA.
To avoid complicated define guards, gdbserver and IPA now have
declarations for all descriptions, including 64-bit generated
descriptions when compiled in 32-bit mode. These have always been
linked into the gdbserver and IPA binaries. Because they might be
uninitialized, the selection function checks that the selected
description is initialized.
gdb/ChangeLog:
2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
* arch/ppc-linux-common.c: New file.
* arch/ppc-linux-common.h: New file.
* arch/ppc-linux-tdesc.h: New file.
* configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
* Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
(HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
arch/ppc-linux-tdesc.h.
* ppc-linux-nat.c: Include arch/ppc-linux-common.h and
arch/ppc-linux-tdesc.h.
(ppc_linux_nat_target::read_description): Remove target
description matching code. Fill a ppc_linux_features struct and
call ppc_linux_match_description with it. Move comment about ISA
2.05 to ppc-linux-common.c.
* ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
arch/ppc-linux-tdesc.h.
(ppc_linux_core_read_description): Remove target description
matching code. Fill a ppc_linux_features struct and call
ppc_linux_match_description with it.
* ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
(tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
(tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
(tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
(tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
(tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
(tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
(tdesc_powerpc_e500l): Remove.
gdb/gdbserver/ChangeLog:
2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
* configure.srv (srv_tgtobj): Add arch/ppc-linux-common.o.
* Makefile.in (SFILES): Add arch/ppc-linux-common.c.
* linux-ppc-tdesc.h: Rename to linux-ppc-tdesc-init.h.
* linux-ppc-tdesc-init.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
(tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
(tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
(tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
(tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
(tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
(tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
(tdesc_powerpc_e500l): Remove.
* linux-ppc-ipa.c: Include arch/ppc-linux-tdesc.h and
linux-ppc-tdesc-init.h. Don't include linux-ppc-tdesc.h.
* linux-ppc-low.c: Include arch/ppc-linux-common.h,
arch/ppc-linux-tdesc.h, and linux-ppc-tdesc-init.h. Don't include
linux-ppc-tdesc.h.
(ppc_arch_setup): Remove target description matching code. Fill a
ppc_linux_features struct and call ppc_linux_match_description
with it.
commit 241db429d5735ae8875e38991c82204b310c2ff5
Author: Joel Brobecker <brobecker@adacore.com>
Date: Tue May 22 10:04:15 2018 -0400
fix "stale cleanup" internal-warning when using "catch assert" command
Trying to insert a catchpoint on all Ada assertions now triggers
the following internal warning regardless of the situation. For
instance, not even debugging any program:
(gdb) catch assert
/[...]/gdb/common/cleanups.c:264: internal-warning:
restore_my_cleanups has found a stale cleanup
This is due to a small bug in the following C++-ification commit:
commit bc18fbb575437dd10089ef4619e46c0b9a93097d
Author: Tom Tromey <tom@tromey.com>
Date: Fri May 18 15:58:50 2018 -0600
Subject: Change ada_catchpoint::excep_string to be a std::string
The stale cleanup in question is the following one in top.c:execute_command:
cleanup_if_error = make_bpstat_clear_actions_cleanup ();
This cleanup is expected to be discarded if there are no exception.
There were no GDB exception; however, a C++ exception was triggered,
because we passed NULL as the excep_string argument when calling
create_ada_exception_catchpoint, which is a reference to a const
string. So we get a C++ exception during the std::string constructor,
which propagates up, causing the cleanup to unexpectedly remain
in the cleanup chain.
This patch fixes the immediate issue of the incorrect call to
create_ada_exception_catchpoint.
gdb/ChangeLog:
* ada-lang.c (catch_assert_command): Pass empty string instead
of NULL for excep_string argument.
Tested on x86_64-linux, fixes the following failures:
* catch_assert_if.exp: insert catchpoint on failed assertions with condition
* catch_ex.exp: insert catchpoint on failed assertions
This also fixes about a dozen UNRESOLVED tests that are a consequence
of the two tests above failing and crashing GDB.
commit 215f527155ea776fff3f2f836d5da1e300e8c370
Author: Alan Modra <amodra@gmail.com>
Date: Tue May 22 18:34:18 2018 +0930
PR23207, hppa ld SIGSEGVs on invalid object files
The last patch was enough to cure the testcase, but not the original
object file. This patch does the same for hppa as is done for ppc64,
simply test for the section belonging to a group. I've also
restricted stubs to load, alloc, code sections.
PR 23207
* elf32-hppa.c (hppa_get_stub_entry): Return NULL when link_sec
is NULL.
(elf32_hppa_size_stubs): Only create stubs for load, alloc, code
sections.
(final_link_relocate): Revert last change.
commit 7455c018e45766ab7193cbd45f98f781e0dc7d84
Author: Alan Modra <amodra@gmail.com>
Date: Mon May 21 21:29:25 2018 +0930
PR23207, hppa ld SIGSEGVs on invalid object files
We don't create PLT call stubs for anything in non-alloc sections,
so it doesn't pay to go looking for them. The problem is that
non-alloc sections aren't processed by group_sections and thus don't
get a link_sec set up for them.
PR 23207
* elf32-hppa.c (final_link_relocate): Don't look for plt call
stubs in non-alloc sections.
commit 29e11a0437ec618a8799dd152ee8a7b9bb9c172b
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon May 21 20:41:11 2018 -0700
ld: Adjust tic6x tests
Adjust tic6x tests for removing local symbol, __c6xabi_DSBT_BASE, defined
by PROVIDE_HIDDEN in linker script from dynamic symbol table.
PR ld/23201
* testsuite/ld-tic6x/shlib-1.rd: Adjusted.
* testsuite/ld-tic6x/shlib-1b.rd: Likewise.
* testsuite/ld-tic6x/shlib-1r.rd: Likewise.
* testsuite/ld-tic6x/shlib-1rb.rd: Likewise.
* testsuite/ld-tic6x/shlib-app-1.rd: Likewise.
* testsuite/ld-tic6x/shlib-app-1b.rd: Likewise.
* testsuite/ld-tic6x/shlib-app-1r.rd: Likewise.
* testsuite/ld-tic6x/shlib-app-1rb.rd: Likewise.
* testsuite/ld-tic6x/shlib-noindex.rd: Likewise.
* testsuite/ld-tic6x/static-app-1.rd: Likewise.
* testsuite/ld-tic6x/static-app-1b.rd: Likewise.
* testsuite/ld-tic6x/static-app-1r.rd: Likewise.
* testsuite/ld-tic6x/static-app-1rb.rd: Likewise.
commit 34a87bb07a4a3b2202fc25167a6b0f12575edc87
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon May 21 20:39:09 2018 -0700
ld: Hide symbols defined by HIDDEN/PROVIDE_HIDDEN
There should be no difference in output for symbols defined by HIDDEN
or PROVIDE_HIDDEN assignments whether they are explicitly marked as
hidden or not. This patch adds a new BFD function, bfd_link_hide_symbol,
to hide symbols defined by HIDDEN and PROVIDE_HIDDEN assignments.
bfd
PR ld/23201
* aout-target.h (MY_bfd_link_hide_symbol): New.
* aout-tic30.c (MY_bfd_link_hide_symbol): Likewise.
* binary.c (binary_bfd_link_hide_symbol): Likewise.
* coff-alpha.c (_bfd_ecoff_bfd_link_hide_symbol): Likewise.
* coff-mips.c (_bfd_ecoff_bfd_link_hide_symbol): Likewise.
* coff-rs6000.c (_bfd_xcoff_bfd_link_hide_symbol): Likewise.
* coffcode.h (coff_bfd_link_hide_symbol): Likewise.
* elf-bfd.h (_bfd_elf_link_hide_symbol): Likewise.
* elfxx-target.h (bfd_elfNN_bfd_link_hide_symbol): Likewise.
* i386msdos.c (msdos_bfd_link_hide_symbol): Likewise.
* ihex.c (ihex_bfd_link_hide_symbol): Likewise.
* libbfd-in.h (_bfd_nolink_bfd_link_hide_symbol): Likewise.
* linker.c (_bfd_generic_link_hide_symbol): Likewise.
(bfd_link_hide_symbol): Likewise.
* mach-o-target.c (bfd_mach_o_bfd_link_hide_symbol): Likewise.
* mmo.c (mmo_bfd_link_hide_symbol): Likewise.
* pef.c (bfd_pef_bfd_link_hide_symbol): Likewise.
* plugin.c (bfd_plugin_bfd_link_hide_symbol): Likewise.
* ppcboot.c (ppcboot_bfd_link_hide_symbol): Likewise.
* som.c (som_bfd_link_hide_symbol): Likewise.
* srec.c (srec_bfd_link_hide_symbol): Likewise.
* tekhex.c (tekhex_bfd_link_hide_symbol): Likewise.
* vms-alpha.c (vms_bfd_link_hide_symbol): Likewise.
(alpha_vms_bfd_link_hide_symbol): Likewise.
* xsym.c (bfd_sym_bfd_link_hide_symbol): Likewise.
* coff64-rs6000.c (rs6000_xcoff64_vec): Add
_bfd_generic_link_hide_symbol.
(rs6000_xcoff64_aix_vec): Likewise.
* elflink.c (bfd_elf_record_link_assignment): Don't make forced
local symbol dynamic.
(_bfd_elf_link_hide_symbol): New function.
* elfxx-x86.c (_bfd_x86_elf_link_symbol_references_local): Don't
check root.ldscript_def.
* targets.c (bfd_target): Add _bfd_link_hide_symbol.
(BFD_JUMP_TABLE_LINK): Add NAME##_bfd_link_hide_symbol.
* bfd-in2.h: Regenerated.
* libbfd.h: Likewise.
ld/
PR ld/23201
* ldexp.c (exp_fold_tree_1): Call bfd_link_hide_symbol to hide
a symbol.
* testsuite/ld-elf/provide-hidden-dynabs.nd: Removed.
* testsuite/ld-elf/provide-hidden-dynsec.nd: Likewise.
* testsuite/ld-elf/provide-hidden.exp: Replace
provide-hidden-dynsec.nd with provide-hidden-sec.nd and
provide-hidden-dyn.nd. Replace provide-hidden-dynabs.nd with
provide-hidden-abs.nd and provide-hidden-dyn.nd.
* testsuite/ld-i386/pr23189.d: Expect no dynamic relocation.
* testsuite/ld-x86-64/pr23189.d: Likewise.
commit bae363f1146378207e1dffe5f23845644a1d0b7a
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon May 21 19:25:19 2018 -0700
Mark section in a section group with SHF_GROUP
All sections in a section group should be marked with SHF_GROUP. But
some tools generate broken objects without SHF_GROUP. This patch fixes
them up for objcopy and strip.
PR binutils/23199
* elf.c (setup_group): Mark section in a section group with
SHF_GROUP.
commit 75d74ccace05f6166a45dbaa352abf753891d3be
Author: Maciej W. Rozycki <macro@mips.com>
Date: Tue May 22 01:52:35 2018 +0100
MIPS/Linux: Disable n32 USR `ptrace' accesses to 64-bit registers
On the MIPS target DSP ASE registers can only be accessed with the
PTRACE_PEEKUSR and PTRACE_POKEUSR `ptrace' requests. With the n32 ABI
these requests only pass 32-bit data quantities, which are narrower than
the width of DSP accumulator registers, which are 64-bit.
Generic code is prepared to transfer registers wider than the `ptrace'
data type by offsetting into the USR address space, by the data width
transferred. That however does not work with the MIPS target, because
of how the API has been defined, where USR register addresses are
actually indices rather than offsets. Consequently given address `a'
using `a + 4' accesses the fourth next register rather than the upper
half of the original register.
With native debugging this causes clobbered register contents, as well
as access failures as locations beyond the available USR space are
addressed:
(gdb) info registers
zero at v0 v1
R0 0000000000000000 0000000000000001 0000000000000001 0000000000000000
a0 a1 a2 a3
R4 0000000010019158 0000000000000000 0000000000000011 0000000010019160
a4 a5 a6 a7
R8 0000000010019160 fffffffffff00000 fffffffffffffff8 0000000000000000
t0 t1 t2 t3
R12 0000000010019150 0000000000000001 0000000000000001 000000000000000f
s0 s1 s2 s3
R16 0000000077ee6f20 0000000010007bb0 0000000000000000 0000000000000000
s4 s5 s6 s7
R20 000000000052e668 000000000052f008 0000000000000000 0000000000000000
t8 t9 k0 k1
R24 0000000000000001 0000000010019010 0000000000000000 0000000000000000
gp sp s8 ra
R28 0000000010020280 000000007fff4c10 000000007fff4c10 0000000010004f48
status lo hi badvaddr
0000000000109cf3 0000000000943efe 000000000000000e 000000001001900c
cause pc
0000000000800024 0000000010004f48
fcsr fir hi1 lo1
0e800000 00f30000 0000000004040404 0101010105050505
hi2 lo2 hi3 lo3
0202020255aa33cc Couldn't read register (#75): Input/output error.
(gdb)
With `gdbserver' this makes debugging impossible due to a fatal failure:
(gdb) target remote :2346
Remote debugging using :2346
Reading symbols from .../sysroot/mips-r2-hard/lib32/ld.so.1...done.
0x77fc3d50 in __start () from .../sysroot/mips-r2-hard/lib32/ld.so.1
(gdb) continue
Continuing.
warning: Remote failure reply: E01
Remote communication error. Target disconnected.: Connection reset by peer.
(gdb)
Correct the problem by marking any register in the MIPS backend whose
width exceeds the width of the `ptrace' data type unavailable for the
purpose of PTRACE_PEEKUSR and PTRACE_POKEUSR requests:
(gdb) info registers
zero at v0 v1
R0 0000000000000000 0000000000000001 0000000000000001 0000000000000000
a0 a1 a2 a3
R4 0000000010019158 0000000000000000 0000000000000011 0000000010019160
a4 a5 a6 a7
R8 0000000010019160 fffffffffff00000 fffffffffffffff8 0000000000000000
t0 t1 t2 t3
R12 0000000010019150 0000000000000001 0000000000000001 000000000000000f
s0 s1 s2 s3
R16 0000000077ee6f20 0000000010007bb0 0000000000000000 0000000000000000
s4 s5 s6 s7
R20 000000000052e5c8 000000000052f008 0000000000000000 0000000000000000
t8 t9 k0 k1
R24 0000000000000001 0000000010019010 0000000000000000 0000000000000000
gp sp s8 ra
R28 0000000010020280 000000007fff4be0 000000007fff4be0 0000000010004f48
status lo hi badvaddr
0000000000109cf3 0000000000943efe 000000000000000e 000000001001900c
cause pc
0000000000800024 0000000010004f48
fcsr fir hi1 lo1
0e800000 00f30000 <unavailable> <unavailable>
hi2 lo2 hi3 lo3
<unavailable> <unavailable> <unavailable> <unavailable>
dspctl restart
55aa33cc 0000000000000000
(gdb)
as there is no way to access full contents of these registers with the
limited API available anyway.
This obviously does not affect general-purpose registers (which use the
PTRACE_GETREGS and PTRACE_SETREGS requests for access) or floating-point
general registers (which use PTRACE_GETFPREGS and PTRACE_SETFPREGS).
And $dspctl, being 32-bit, remains accessible too, which is important
for BPOSGE32 branch decoding in single-stepping.
For DSP accumulator access with the n32 ABI a new `ptrace' API is required
on the kernel side.
gdb/
* mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
the width of the requested register exceeds the width of the
`ptrace' data type.
gdb/gdbserver/
* linux-mips-low.c (mips_cannot_fetch_register): Return 1 if the
width of the requested register exceeds the width of the
`ptrace' data type.
(mips_cannot_store_register): Likewise.
commit e54bb2a017cde382a38ca68464e287893a009dd2
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue May 22 00:00:37 2018 +0000
Automatic date update in version.in
commit e4439e4346ec0d2cb0e65b497d26382e1054c93b
Author: Maciej W. Rozycki <macro@mips.com>
Date: Tue May 22 00:55:08 2018 +0100
MIPS/gdbserver: Fix issues with $zero register reads
Consistently supply hardwired $zero as a zeroed register, correcting
issues with the PTRACE_GETREGS path that currently copies the value of
$restart into $zero as illustrated by this program:
$ cat read.c
int
main (void)
{
char buf[1024];
ssize_t size;
size = read (0, buf, sizeof (buf));
return size;
}
$
and this corresponding debug session:
(gdb) break main
Breakpoint 1 at 0x120000970: file read.c, line 9.
(gdb) target remote :2346
Remote debugging using :2346
Reading symbols from .../sysroot/mips-r2-hard/lib64/ld.so.1...done.
0x000000fff7fca5a0 in __start ()
from .../sysroot/mips-r2-hard/lib64/ld.so.1
(gdb) continue
Continuing.
Breakpoint 1, main () at read.c:9
9 size = read (0, buf, sizeof (buf));
(gdb) info registers
zero at v0 v1
R0 0000000000000000 0000000000000001 000000fff7ffe710 0000000000000000
a0 a1 a2 a3
R4 0000000000000001 000000ffffffeb88 000000ffffffeb98 0000000000000000
a4 a5 a6 a7
R8 000000fff7fc8800 000000fff7fc38f0 000000ffffffeb80 2f2f2f2f2f2f2f2f
t0 t1 t2 t3
R12 0000000000000437 0000000000000002 000000fff7ffd000 0000000120000a00
s0 s1 s2 s3
R16 000000fff7fc7068 0000000120000b90 0000000000000000 0000000000000000
s4 s5 s6 s7
R20 0000000000521d88 0000000000522608 0000000000000000 0000000000000000
t8 t9 k0 k1
R24 0000000000000000 0000000120000970 0000000000000000 0000000000000000
gp sp s8 ra
R28 000000fff7fc8800 000000ffffffea50 0000000000000000 000000fff7e4088c
status lo hi badvaddr
0000000000109cf3 0000000000005ea5 0000000000000211 000000fff7eadf00
cause pc
0000000000800024 0000000120000970
fcsr fir restart
00000000 00f30000 0000000000000000
(gdb) continue
Continuing.
^C
Program received signal SIGINT, Interrupt.
0x000000fff7f084ac in __GI___libc_read (fd=0, buf=0xffffffe640, nbytes=1024)
at ../sysdeps/unix/sysv/linux/read.c:27
27 return SYSCALL_CANCEL (read, fd, buf, nbytes);
(gdb) info registers
zero at v0 v1
R0 0000000000001388 0000000000000001 0000000000000200 000000fff7ffe710
a0 a1 a2 a3
R4 0000000000000000 000000ffffffe640 0000000000000400 0000000000000001
a4 a5 a6 a7
R8 000000fff7fc8800 000000fff7fc38f0 000000ffffffeb80 2f2f2f2f2f2f2f2f
t0 t1 t2 t3
R12 00000000000005e3 0000000000000002 000000fff7ffd000 000000012000099c
s0 s1 s2 s3
R16 000000fff7fc7068 0000000120000b90 0000000000000000 0000000000000000
s4 s5 s6 s7
R20 0000000000521d88 0000000000522608 0000000000000000 0000000000000000
t8 t9 k0 k1
R24 0000000000000000 000000fff7f2da20 0000000000000000 0000000000000000
gp sp s8 ra
R28 000000fff7fc8800 000000ffffffe600 0000000000000000 000000012000099c
status lo hi badvaddr
0000000000109cf3 00000000000001e6 00000000000000be 000000fff7f08470
cause pc
0000000000800020 000000fff7f084ac
fcsr fir restart
00000000 00f30000 0000000000001388
(gdb)
and with the PTRACE_PEEKUSR path that does not supply this register at
all, causing issues analogous to ones addressed for the native MIPS
backend with commit 4e6ff0e1b86f ("MIPS/Linux/native: Supply $zero for
the !PTRACE_GETREGS case"):
(gdb) info registers
zero at v0 v1
R0 <unavailable> 0000000000000001 0000000000000001 0000000000000000
a0 a1 a2 a3
R4 00000001200212b0 0000000000000000 0000000000000021 000000012001a260
a4 a5 a6 a7
R8 000000012001a260 0000000000000004 800000010cab1680 fffffffffffffff8
t0 t1 t2 t3
R12 0000000000000000 000000fff7edab68 0000000000000001 0000000000000000
s0 s1 s2 s3
R16 000000fff7ee2068 0000000120008b80 0000000000000000 0000000000000000
s4 s5 s6 s7
R20 000000000052e5c8 000000000052f008 0000000000000000 0000000000000000
t8 t9 k0 k1
R24 0000000000000000 00000001200027c0 0000000000000000 0000000000000000
gp sp s8 ra
R28 00000001200212b0 000000ffffffc880 000000ffffffc880 0000000120005ee8
status lo hi badvaddr
<unavailable> 0000000000943efe 000000000000000e 000000012001a008
cause pc
0000000000800024 0000000120005ee8
fcsr fir restart
0e800000 00f30000 0000000000000000
(gdb)
and (under certain circumstances):
(gdb) next
Register 0 is not available
(gdb)
The problem with PTRACE_GETREGS happens because `mips_store_gregset'
supplies the contents of register slot #0, occupied by $restart, to
$zero. The problem with PTRACE_PEEKUSR happens because for $zero
`mips_cannot_fetch_register' returns one, and no alternative way to
supply that register has been defined.
Correct `mips_store_gregset' then for the PTRACE_GETREGS case and add
`mips_fetch_register' for the PTRACE_PEEKUSR case.
gdb/gdbserver/
* linux-mips-low.c (mips_fetch_register): New function. Update
preceding comment.
(mips_store_gregset): Supply 0 rather than $restart for $zero.
(the_low_target): Wire `mips_fetch_register'.
commit 98553ad33eba6353b0e4181ae51dfdf2d7e652ac
Author: Peter Bergner <bergner@vnet.ibm.com>
Date: Mon May 21 17:31:07 2018 -0500
Remove fake operand handling for extended mnemonics.
opcodes/
* ppc-opc.c (insert_bat, extract_bat, insert_bba, extract_bba,
insert_rbs, extract_rbs, insert_xb6s, extract_xb6s): Delete functions.
(insert_bab, extract_bab, insert_btab, extract_btab,
insert_rsb, extract_rsb, insert_xab6, extract_xab6): New functions.
(BAT, BBA VBA RBS XB6S): Delete macros.
(BTAB, BAB, VAB, RAB, RSB, XAB6): New macros.
(BB, BD, RBX, XC6): Update for new macros.
(powerpc_opcodes) <evmr, evnot, vmr, vnot, crnot, crclr, crset,
crmove, not, not., mr, mr., xxspltd, xxswapd, xvmovsp, xvmovdp,
e_crnot, e_crclr, e_crset, e_crmove>: Likewise.
* ppc-dis.c (print_insn_powerpc): Delete handling of fake operands.
include/
* opcode/ppc.h (PPC_OPERAND_FAKE): Delete macro.
gas/
* config/tc-ppc.c (md_assemble): Delete handling of fake operands.
* testsuite/gas/ppc/common.s (crmove, cror, or., or, nor., nor): Add
test of extended mnemonics.
* testsuite/gas/ppc/common.d: Likewise. Don't match instruction offset.
* testsuite/gas/ppc/spe.s (evor, evnor): Add test of extended mnemonics.
* testsuite/gas/ppc/spe.d: Likewise. Don't match instruction offset.
commit 122b53ea6a99c8811fb9cb84869b949b1ac55b22
Author: Tom Tromey <tom@tromey.com>
Date: Mon May 21 13:28:16 2018 -0600
Remove output_command_const
I happened to notice that output_command_const still exists, but is
not needed any more -- commands are always const-correct now. This
patch removes this leftover.
2018-05-21 Tom Tromey <tom@tromey.com>
* printcmd.c (output_command): Remove.
(output_command_const): Rename to output_command.
* valprint.h (output_command): Rename from output_command_const.
* tracepoint.c (trace_dump_actions): Call output_command.
commit bc18fbb575437dd10089ef4619e46c0b9a93097d
Author: Tom Tromey <tom@tromey.com>
Date: Fri May 18 15:58:50 2018 -0600
Change ada_catchpoint::excep_string to be a std::string
This changes ada_catchpoint::excep_string to be a std::string and then
fixes up all t he users.
This found a memory leak in catch_ada_exception_command_split, where
"cond" was copied but never freed.
I changed the type of the "cond_string" argument to
catch_ada_exception_command_split to follow the rule that out
parameters should be pointers and not references.
This patch enables the removal of some cleanups and also the function
ada_get_next_arg.
ChangeLog
2018-05-21 Tom Tromey <tom@tromey.com>
* mi/mi-cmd-catch.c (mi_cmd_catch_assert)
(mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
* ada-lang.h (create_ada_exception_catchpoint): Update.
* ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
std::string.
(create_excep_cond_exprs, ~ada_catchpoint)
(should_stop_exception, print_one_exception)
(print_mention_exception, print_recreate_exception): Update.
(ada_get_next_arg): Remove.
(catch_ada_exception_command_split): Use std::string. Change type
of "excep_string", "cond_string".
(catch_ada_exception_command): Update.
(create_ada_exception_catchpoint): Change type of excep_string.
(ada_exception_sal): Remove excep_string parameter.
(~ada_catchpoint): Remove.
commit 790217f6736cc0f0a177a681ba1c7cc5f995cfe7
Author: Tom Tromey <tom@tromey.com>
Date: Fri May 18 15:42:27 2018 -0600
Remove cleanup from ada_collect_symbol_completion_matches
ada_collect_symbol_completion_matches installs a null_cleanup but not
any other cleanups. This patch removes it.
ChangeLog
2018-05-21 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_collect_symbol_completion_matches): Remove
cleanup.
commit 6f46ac8531ead61003c96b8e2fa6a383ea8d8c58
Author: Tom Tromey <tom@tromey.com>
Date: Fri May 18 15:41:33 2018 -0600
Remove cleanup from ada-lang.c
This removes a cleanup from ada-lang.c by having
ada_exception_message_1 return a unique_xmalloc_ptr.
ChangeLog
2018-05-21 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_exception_message_1, ada_exception_message):
Return unique_xmalloc_ptr.
(print_it_exception): Update.
commit 15b6611c69f6fdb7a20cd50d33d9acf8c5c32037
Author: Tom Tromey <tom@tromey.com>
Date: Fri May 18 14:23:27 2018 -0600
Remove a cleanup from trace_dump_actions
This changes trace_dump_actions to use std::string, removing a
cleanup.
Tested by the buildbot.
ChangeLog
2018-05-21 Tom Tromey <tom@tromey.com>
* tracepoint.c (trace_dump_actions): Use std::string.
commit c0c9f665d9d4cdcef59cc7951396d843a7ea6a48
Author: Tom Tromey <tom@tromey.com>
Date: Fri May 18 14:30:25 2018 -0600
Use std::string in reread_symbols
This removes a cleanup from reread_symbols by using std::string. This
fixes a memory leak, because this cleanup is ordinarily discarded, not
run.
Tested by the buildbot.
ChangeLog
2018-05-21 Tom Tromey <tom@tromey.com>
* symfile.c (reread_symbols): Use std::string for original_name.
commit 22ca247e9e29c11ccfc99b5d187c7dc925608b78
Author: Tom Tromey <tom@tromey.com>
Date: Fri May 18 14:07:57 2018 -0600
Use std::unique_ptr in dwarf2_read_debug_names
This changes dwarf2_read_debug_names to use std::unique_ptr from the
outset. This simplifies the code that installs the resulting map into
dwarf2_per_objfile.
Tested by the buildbot.
ChangeLog
2018-05-21 Tom Tromey <tom@tromey.com>
* dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
(mapped_index_base): Use DISABLE_COPY_AND_ASSIGN. Default
constructor.
commit 184cde7552b5434196b8380be23b39ff4a5a17e6
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sun May 20 23:18:29 2018 -0400
Fix copy-pasto, allocate objfile_per_bfd_storage with obstack_new
I realized after pushing that I made a copy-pasto, I had:
# define HAVE_IS_TRIVIALLY_COPYABLE 1
instead of
# define HAVE_IS_TRIVIALLY_CONSTRUCTIBLE 1
with the consequence that IsMallocable was always std::true_type (and
was therefore not enforcing anything). Fixing that mistake triggered a
build failure:
/home/simark/src/binutils-gdb/gdb/objfiles.c:150:12: required from here
/home/simark/src/binutils-gdb/gdb/common/poison.h:228:3: error: static assertion failed: Trying to use XOBNEW with a non-POD data type.
I am not sure why I did not see this when I originally wrote the patch
(but I saw and fixed other failures). In any case, I swapped XOBNEW
with obstack_new to get rid of it.
Regtested on the buildbot.
gdb/ChangeLog:
* common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
instance to...
(HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
* objfiles.c (get_objfile_bfd_data): Allocate
objfile_per_bfd_storage with obstack_new when allocating on
obstack.
commit e39db4db7c553ae1c4aaf158cd0ebf3cf6d478fb
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Sun May 20 21:07:03 2018 -0400
Use XOBNEW/XOBNEWVEC/OBSTACK_ZALLOC when possible
Since XOBNEW/XOBNEWVEC/OBSTACK_ZALLOC are now poisoned to prevent using
them with non-trivially-constructible objects, it is worth using them
over plain obstack_alloc. This patch changes the locations I could find
where we can do that change easily.
gdb/ChangeLog:
* ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
OBSTACK_ZALLOC.
* dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
* hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
* mdebugread.c (mdebug_build_psymtabs): Likewise.
(add_pending): Likewise.
(parse_symbol): Likewise.
(parse_partial_symbols): Likewise.
(psymtab_to_symtab_1): Likewise.
(new_psymtab): Likewise.
(elfmdebug_build_psymtabs): Likewise.
* minsyms.c (terminate_minimal_symbol_table): Likewise.
* objfiles.c (get_objfile_bfd_data): Likewise.
(objfile_register_static_link): Likewise.
* psymtab.c (allocate_psymtab): Likewise.
* stabsread.c (read_member_functions): Likewise.
* xcoffread.c (xcoff_end_psymtab): Likewise.
commit 284a0e3cbffa92ee5c94065fcdd5a528482344fc
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Sun May 20 21:06:03 2018 -0400
Introduce obstack_new, poison other "typed" obstack functions
Since we use obstacks with objects that are not default constructible,
we sometimes need to manually call the constructor by hand using
placement new:
foo *f = obstack_alloc (obstack, sizeof (foo));
f = new (f) foo;
It's possible to use allocate_on_obstack instead, but there are types
that we sometimes want to allocate on an obstack, and sometimes on the
regular heap. This patch introduces a utility to make this pattern
simpler if allocate_on_obstack is not an option:
foo *f = obstack_new<foo> (obstack);
Right now there's only one usage (in tdesc_data_init).
To help catch places where we would forget to call new when allocating
such an object on an obstack, this patch also poisons some other methods
of allocating an instance of a type on an obstack:
- OBSTACK_ZALLOC/OBSTACK_CALLOC
- XOBNEW/XOBNEW
- GDBARCH_OBSTACK_ZALLOC/GDBARCH_OBSTACK_CALLOC
Unfortunately, there's no way to catch wrong usages of obstack_alloc.
By pulling on that string though, it tripped on allocating struct
template_symbol using OBSTACK_ZALLOC. The criterion currently used to
know whether it's safe to "malloc" an instance of a struct is whether it
is a POD. Because it inherits from struct symbol, template_symbol is
not a POD. This criterion is a bit too strict however, it should still
safe to allocate memory for a template_symbol and memset it to 0. We
didn't use is_trivially_constructible as the criterion in the first
place only because it is not available in gcc < 5. So here I considered
two alternatives:
1. Relax that criterion to use std::is_trivially_constructible and add a
bit more glue code to make it work with gcc < 5
2. Continue pulling on the string and change how the symbol structures
are allocated and initialized
I managed to do both, but I decided to go with #1 to keep this patch
simpler and more focused. When building with a compiler that does not
have is_trivially_constructible, the check will just not be enforced.
gdb/ChangeLog:
* common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
compiler supports std::is_trivially_constructible.
* common/poison.h: Include obstack.h.
(IsMallocable): Define to is_trivially_constructible if the
compiler supports it, define to true_type otherwise.
(xobnew): New.
(XOBNEW): Redefine.
(xobnewvec): New.
(XOBNEWVEC): Redefine.
* gdb_obstack.h (obstack_zalloc): New.
(OBSTACK_ZALLOC): Redefine.
(obstack_calloc): New.
(OBSTACK_CALLOC): Redefine.
(obstack_new): New.
* gdbarch.sh: Include gdb_obstack in gdbarch.h.
(gdbarch_obstack): New declaration in gdbarch.h, definition in
gdbarch.c.
(GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
obstack_calloc/obstack_zalloc.
(gdbarch_obstack_zalloc): Remove.
* target-descriptions.c (tdesc_data_init): Use obstack_new.
commit b1aed5de0cc075ab5061453f88cedbf2d3e97ff6
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon May 21 00:00:50 2018 +0000
Automatic date update in version.in
commit 205f121826140cccbead2078006fd2545a87bce7
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun May 20 00:01:18 2018 +0000
Automatic date update in version.in
commit 59f66be3aca7ef310c1d4464e93b251fe87135e0
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Sat May 19 08:54:44 2018 +0200
Remove useless variable int i in backtrace_command_1
value of int i was not used in the loop or after the loop.
Pushed as obvious.
commit 50c65c2d60b371b8b85a804a5a71bf967ba9b355
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Sat May 19 08:38:57 2018 +0200
Fix reference in comment: SRC_AND_LOC instead of LOC_AND_SRC
Pushed as obvious
commit 2dd50e74b7e313e0cb3ada6da2649b1020f9f46c
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat May 19 00:00:39 2018 +0000
Automatic date update in version.in
commit 97373b2eba6077d5059370a95931b93a8b118813
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri May 18 14:23:41 2018 -0700
x86: Don't set eh->local_ref to 1 for versioned symbol
bfd_hide_sym_by_version can't be used to check if a versioned symbol is
hidden. It has to be synced with _bfd_elf_link_assign_sym_version to
get the correct answer.
bfd/
PR ld/23194
* elfxx-x86.c (_bfd_x86_elf_link_symbol_references_local): Don't
set eh->local_ref to 1 if a symbol is versioned and there is a
version script.
ld/
PR ld/23194
* testsuite/ld-i386/i386.exp: Run pr23194.
* testsuite/ld-x86-64/x86-64.exp: Likewise.
* testsuite/ld-i386/pr23194.d: New file.
* testsuite/ld-i386/pr23194.map: Likewise.
* testsuite/ld-i386/pr23194.s: Likewise.
* testsuite/ld-x86-64/pr23194.d: Likewise.
* testsuite/ld-x86-64/pr23194.map: Likewise.
* testsuite/ld-x86-64/pr23194.s: Likewise.
commit 941036f4ffb95a553fd1a0c44313d72ddcf5cbf0
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri May 18 14:13:26 2018 -0700
ld: Run pr23189 for all targets
Since the pr23189 test isn't Linux specific, run it for all targets.
* testsuite/ld-i386/i386.exp: Run pr23189 for all targets.
* testsuite/ld-x86-64/x86-64.exp: Likewise.
commit 7ff8cb8c51adec9cd1b461f9b670223d01223fef
Author: Tom Tromey <tom@tromey.com>
Date: Wed May 16 14:33:15 2018 -0600
Allocate dwz_file with new
This adds a constructor to struct dwz_file and arranges for it to be
allocated with "new" and wrapped in a unique_ptr. This cuts down on
the amount of manual memory management that must be done.
Regression tested by the buildbot.
gdb/ChangeLog
2018-05-18 Tom Tromey <tom@tromey.com>
* dwarf2read.c (struct dwz_file): Add constructor, initializers.
<dwz_bfd>: Now a gdb_bfd_ref_ptr.
(~dwarf2_per_objfile): Update
(dwarf2_get_dwz_file): Use new.
* dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
unique_ptr.
commit 7f99954970001cfc1b155d877ac2966d77e2c647
Author: Jim Wilson <jimw@sifive.com>
Date: Fri May 18 14:03:18 2018 -0700
RISC-V: Add RV32E support.
Kito Cheng <kito.cheng@gmail.com>
Monk Chiang <sh.chiang04@gmail.com>
bfd/
* elfnn-riscv.c (_bfd_riscv_elf_merge_private_bfd_data): Handle
EF_RISCV_RVE.
binutils/
* readelf.c (get_machine_flags): Handle EF_RISCV_RVE.
gas/
* config/tc-riscv.c (rve_abi): New.
(riscv_set_options): Add rve field. Initialize it.
(riscv_set_rve) New function.
(riscv_set_arch): Support 'e' ISA subset.
(reg_lookup_internal): If rve, check register is available.
(riscv_set_abi): New parameter rve.
(md_parse_option): Pass new argument to riscv_set_abi.
(riscv_after_parse_args): Call riscv_set_rve. If rve_abi, set
EF_RISCV_RVE.
* doc/c-riscv.texi (-mabi): Document new ilp32e argument.
include/
* elf/riscv.h (EF_RISCV_RVE): New define.
commit 400174b12a46fffbfad7c2504c33bb3ac29f3ef9
Author: Tom Tromey <tom@tromey.com>
Date: Thu May 17 00:04:53 2018 -0600
Allocate dwp_file with new
This adds a constructor and initializer to dwp_file and changes it to
be allocated with "new". This removes a bit of manual refcount
management.
Tested by the buildbot.
gdb/ChangeLog
2018-05-18 Tom Tromey <tom@tromey.com>
* dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
unique_ptr.
* dwarf2read.c (struct dwp_file): Add constructor and
initializers.
(open_and_init_dwp_file): Return a unique_ptr.
(dwarf2_per_objfile, create_dwp_hash_table)
(create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
(lookup_dwo_unit_in_dwp): Update.
(open_and_init_dwp_file, get_dwp_file): Update.
commit 3063847f29cb83bae0cdf018c2dca68b65a50780
Author: Tom Tromey <tom@tromey.com>
Date: Thu May 17 16:43:53 2018 -0600
Use new to allocate mapped_index
This changes struct mapped_index to be allocated with new. This
simplifies the creation a bit (see dwarf2_read_index) and also removes
a somewhat ugly explicit destructor call from ~dwarf2_per_objfile.
Tested by the buildbot.
gdb/ChangeLog
2018-05-18 Tom Tromey <tom@tromey.com>
* dwarf2read.c (dwarf2_per_objfile): Update.
(struct mapped_index): Add initializers.
(dwarf2_read_index): Use new.
(dw2_symtab_iter_init): Update.
* dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
unique_ptr.
commit 6487709f3fca687ba1420b6487db5cd1e7cf8cde
Author: Jim Wilson <jimw@sifive.com>
Date: Fri May 18 13:05:21 2018 -0700
RISC-V: Fix ld-elf/pr22269* testcases.
bfd/
* elfnn-riscv.c (allocate_dynrelocs): Discard dynamic relocations if
UNDEFWEAK_NO_DYNAMIC_RELOC is true.
(riscv_elf_relocate_section): Don't generate dynamic relocation if
UNDEFWEAK_NO_DYNAMIC_RELOC is true.
(riscv_elf_finish_dynamic_symbol): Likewise.
commit d3d02dee8d33ef46ed91b3e87ea1b377b14ec845
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Fri May 18 16:02:44 2018 -0400
Remove mapped_index::total_size
It is unused.
gdb/ChangeLog:
* dwarf2read.c (mapped_index) <total_size>: Remove.
commit 1d143c36eedc0f0b124e6aa6fb3b98b1e6ff74b0
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Fri May 18 15:47:56 2018 -0400
format_pieces-selftests.c: Silence ARI warnings
Silence this:
unittests/format_pieces-selftests.c:51: warning: code: Do not use printf("%ll"), instead use printf("%s",phex()) to dump a `long long' value
unittests/format_pieces-selftests.c:56: warning: code: Do not use printf("%ll"), instead use printf("%s",phex()) to dump a `long long' value
gdb/ChangeLog:
* unittests/format_pieces-selftests.c (test_format_specifier):
Add ARI comments.
commit ce1e8424c69793139ec8d2a60c4a21ab136ae9e0
Author: Tom Tromey <tom@tromey.com>
Date: Sat May 12 17:04:50 2018 -0600
Show padding in ptype/o output
I was recently using ptype/o to look at the layout of some objects in
gdb. I noticed that trailing padding was not shown -- but I wanted to
be able to look at that, too.
This patch changes ptype/o to also print trailing holes.
Tested on x86-64 Fedora 26.
gdb/ChangeLog
2018-05-18 Tom Tromey <tom@tromey.com>
* c-typeprint.c (maybe_print_hole): New function.
(c_print_type_struct_field_offset): Update.
(c_type_print_base_struct_union): Call maybe_print_hole.
gdb/testsuite/ChangeLog
2018-05-18 Tom Tromey <tom@tromey.com>
* gdb.base/ptype-offsets.exp: Update.
commit 7b4ae824289504c173a597e86a00ceab452095b7
Author: John Darrington <john@darrington.wattle.id.au>
Date: Fri May 18 15:26:18 2018 +0100
Add support for the Freescale s12z processor.
bfd * Makefile.am: Add s12z files.
* Makefile.in: Regenerate.
* archures.c: Add bfd_s12z_arch.
* bfd-in.h: Add exports of bfd_putb24 and bfd_putl24.
* bfd-in2.h: Regenerate.
* config.bfd: Add s12z target.
* configure.ac: Add s12z target.
* configure: Regenerate.
* cpu-s12z.c: New file.
* elf32-s12z.c: New file.
* libbfd.c (bfd_putb24): New function.
(bfd_putl24): New function.
* libbfd.h: Regenerate.
* reloc.c: Add s12z relocations.
(bfd_get_reloc_size): Handle size 5 relocs.
* targets.c: Add s12z_elf32_vec.
opcodes * Makefile.am: Add support for s12z architecture.
* configure.ac: Likewise.
* disassemble.c: Likewise.
* disassemble.h: Likewise.
* Makefile.in: Regenerate.
* configure: Regenerate.
* s12z-dis.c: New file.
* s12z.h: New file.
include * elf/s12z.h: New header.
ld * Makefile.am: Add support for s12z architecture.
* configure.tgt: Likewise.
* Makefile.in: Regenerate.
* emulparams/m9s12zelf.sh: New file.
* scripttempl/elfm9s12z.sc: New file.
* testsuite/ld-discard/static.d: Expect to fail for the s12z
target.
* testsuite/ld-elf/endsym.d: Likewise.
* testsuite/ld-elf/merge.d: Likewise.
* testsuite/ld-elf/pr14926.d: Skip for the s12z target.
* testsuite/ld-elf/sec64k.exp: Likewise.
* testsuite/ld-s12z: New directory.
* testsuite/ld-s12z/opr-linking.d: New file.
* testsuite/ld-s12z/opr-linking.s: New file.
* testsuite/ld-s12z/relative-linking.d: New file.
* testsuite/ld-s12z/relative-linking.s: New file.
* testsuite/ld-s12z/z12s.exp: New file.
gas * Makefile.am: Add support for s12z target.
* Makefile.in: Regenerate.
* NEWS: Mention the new support.
* config/tc-s12z.c: New file.
* config/tc-s12z.h: New file.
* configure.tgt: Add s12z support.
* doc/Makefile.am: Likewise.
* doc/Makefile.in: Regenerate.
* doc/all.texi: Add s12z documentation.
* doc/as.textinfo: Likewise.
* doc/c-s12z.texi: New file.
* testsuite/gas/s12z: New directory.
* testsuite/gas/s12z/abs.d: New file.
* testsuite/gas/s12z/abs.s: New file.
* testsuite/gas/s12z/adc-imm.d: New file.
* testsuite/gas/s12z/adc-imm.s: New file.
* testsuite/gas/s12z/adc-opr.d: New file.
* testsuite/gas/s12z/adc-opr.s: New file.
* testsuite/gas/s12z/add-imm.d: New file.
* testsuite/gas/s12z/add-imm.s: New file.
* testsuite/gas/s12z/add-opr.d: New file.
* testsuite/gas/s12z/add-opr.s: New file.
* testsuite/gas/s12z/and-imm.d: New file.
* testsuite/gas/s12z/and-imm.s: New file.
* testsuite/gas/s12z/and-opr.d: New file.
* testsuite/gas/s12z/and-opr.s: New file.
* testsuite/gas/s12z/and-or-cc.d: New file.
* testsuite/gas/s12z/and-or-cc.s: New file.
* testsuite/gas/s12z/bfext-special.d: New file.
* testsuite/gas/s12z/bfext-special.s: New file.
* testsuite/gas/s12z/bfext.d: New file.
* testsuite/gas/s12z/bfext.s: New file.
* testsuite/gas/s12z/bit-manip.d: New file.
* testsuite/gas/s12z/bit-manip.s: New file.
* testsuite/gas/s12z/bit.d: New file.
* testsuite/gas/s12z/bit.s: New file.
* testsuite/gas/s12z/bra-expression-defined.d: New file.
* testsuite/gas/s12z/bra-expression-defined.s: New file.
* testsuite/gas/s12z/bra-expression-undef.d: New file.
* testsuite/gas/s12z/bra-expression-undef.s: New file.
* testsuite/gas/s12z/bra.d: New file.
* testsuite/gas/s12z/bra.s: New file.
* testsuite/gas/s12z/brclr-symbols.d: New file.
* testsuite/gas/s12z/brclr-symbols.s: New file.
* testsuite/gas/s12z/brset-clr-opr-imm-rel.d: New file.
* testsuite/gas/s12z/brset-clr-opr-imm-rel.s: New file.
* testsuite/gas/s12z/brset-clr-opr-reg-rel.d: New file.
* testsuite/gas/s12z/brset-clr-opr-reg-rel.s: New file.
* testsuite/gas/s12z/brset-clr-reg-imm-rel.d: New file.
* testsuite/gas/s12z/brset-clr-reg-imm-rel.s: New file.
* testsuite/gas/s12z/brset-clr-reg-reg-rel.d: New file.
* testsuite/gas/s12z/brset-clr-reg-reg-rel.s: New file.
* testsuite/gas/s12z/clb.d: New file.
* testsuite/gas/s12z/clb.s: New file.
* testsuite/gas/s12z/clr-opr.d: New file.
* testsuite/gas/s12z/clr-opr.s: New file.
* testsuite/gas/s12z/clr.d: New file.
* testsuite/gas/s12z/clr.s: New file.
* testsuite/gas/s12z/cmp-imm.d: New file.
* testsuite/gas/s12z/cmp-imm.s: New file.
* testsuite/gas/s12z/cmp-opr-inc.d: New file.
* testsuite/gas/s12z/cmp-opr-inc.s: New file.
* testsuite/gas/s12z/cmp-opr-rdirect.d: New file.
* testsuite/gas/s12z/cmp-opr-rdirect.s: New file.
* testsuite/gas/s12z/cmp-opr-reg.d: New file.
* testsuite/gas/s12z/cmp-opr-reg.s: New file.
* testsuite/gas/s12z/cmp-opr-rindirect.d: New file.
* testsuite/gas/s12z/cmp-opr-rindirect.s: New file.
* testsuite/gas/s12z/cmp-opr-sxe4.d: New file.
* testsuite/gas/s12z/cmp-opr-sxe4.s: New file.
* testsuite/gas/s12z/cmp-opr-xys.d: New file.
* testsuite/gas/s12z/cmp-opr-xys.s: New file.
* testsuite/gas/s12z/cmp-s-imm.d: New file.
* testsuite/gas/s12z/cmp-s-imm.s: New file.
* testsuite/gas/s12z/cmp-s-opr.d: New file.
* testsuite/gas/s12z/cmp-s-opr.s: New file.
* testsuite/gas/s12z/cmp-xy.d: New file.
* testsuite/gas/s12z/cmp-xy.s: New file.
* testsuite/gas/s12z/com-opr.d: New file.
* testsuite/gas/s12z/com-opr.s: New file.
* testsuite/gas/s12z/complex-shifts.d: New file.
* testsuite/gas/s12z/complex-shifts.s: New file.
* testsuite/gas/s12z/db-tb-cc-opr.d: New file.
* testsuite/gas/s12z/db-tb-cc-opr.s: New file.
* testsuite/gas/s12z/db-tb-cc-reg.d: New file.
* testsuite/gas/s12z/db-tb-cc-reg.s: New file.
* testsuite/gas/s12z/dbCC.d: New file.
* testsuite/gas/s12z/dbCC.s: New file.
* testsuite/gas/s12z/dec-opr.d: New file.
* testsuite/gas/s12z/dec-opr.s: New file.
* testsuite/gas/s12z/dec.d: New file.
* testsuite/gas/s12z/dec.s: New file.
* testsuite/gas/s12z/div.d: New file.
* testsuite/gas/s12z/div.s: New file.
* testsuite/gas/s12z/eor.d: New file.
* testsuite/gas/s12z/eor.s: New file.
* testsuite/gas/s12z/exg.d: New file.
* testsuite/gas/s12z/exg.s: New file.
* testsuite/gas/s12z/ext24-ld-xy.d: New file.
* testsuite/gas/s12z/ext24-ld-xy.s: New file.
* testsuite/gas/s12z/inc-opr.d: New file.
* testsuite/gas/s12z/inc-opr.s: New file.
* testsuite/gas/s12z/inc.d: New file.
* testsuite/gas/s12z/inc.s: New file.
* testsuite/gas/s12z/inh.d: New file.
* testsuite/gas/s12z/inh.s: New file.
* testsuite/gas/s12z/jmp.d: New file.
* testsuite/gas/s12z/jmp.s: New file.
* testsuite/gas/s12z/jsr.d: New file.
* testsuite/gas/s12z/jsr.s: New file.
* testsuite/gas/s12z/ld-imm-page2.d: New file.
* testsuite/gas/s12z/ld-imm-page2.s: New file.
* testsuite/gas/s12z/ld-imm.d: New file.
* testsuite/gas/s12z/ld-imm.s: New file.
* testsuite/gas/s12z/ld-immu18.d: New file.
* testsuite/gas/s12z/ld-immu18.s: New file.
* testsuite/gas/s12z/ld-large-direct.d: New file.
* testsuite/gas/s12z/ld-large-direct.s: New file.
* testsuite/gas/s12z/ld-opr.d: New file.
* testsuite/gas/s12z/ld-opr.s: New file.
* testsuite/gas/s12z/ld-s-opr.d: New file.
* testsuite/gas/s12z/ld-s-opr.s: New file.
* testsuite/gas/s12z/ld-small-direct.d: New file.
* testsuite/gas/s12z/ld-small-direct.s: New file.
* testsuite/gas/s12z/lea-immu18.d: New file.
* testsuite/gas/s12z/lea-immu18.s: New file.
* testsuite/gas/s12z/lea.d: New file.
* testsuite/gas/s12z/lea.s: New file.
* testsuite/gas/s12z/mac.d: New file.
* testsuite/gas/s12z/mac.s: New file.
* testsuite/gas/s12z/min-max.d: New file.
* testsuite/gas/s12z/min-max.s: New file.
* testsuite/gas/s12z/mod.d: New file.
* testsuite/gas/s12z/mod.s: New file.
* testsuite/gas/s12z/mov.d: New file.
* testsuite/gas/s12z/mov.s: New file.
* testsuite/gas/s12z/mul-imm.d: New file.
* testsuite/gas/s12z/mul-imm.s: New file.
* testsuite/gas/s12z/mul-opr-opr.d: New file.
* testsuite/gas/s12z/mul-opr-opr.s: New file.
* testsuite/gas/s12z/mul-opr.d: New file.
* testsuite/gas/s12z/mul-opr.s: New file.
* testsuite/gas/s12z/mul-reg.d: New file.
* testsuite/gas/s12z/mul-reg.s: New file.
* testsuite/gas/s12z/mul.d: New file.
* testsuite/gas/s12z/mul.s: New file.
* testsuite/gas/s12z/neg-opr.d: New file.
* testsuite/gas/s12z/neg-opr.s: New file.
* testsuite/gas/s12z/not-so-simple-shifts.d: New file.
* testsuite/gas/s12z/not-so-simple-shifts.s: New file.
* testsuite/gas/s12z/opr-18u.d: New file.
* testsuite/gas/s12z/opr-18u.s: New file.
* testsuite/gas/s12z/opr-expr.d: New file.
* testsuite/gas/s12z/opr-expr.s: New file.
* testsuite/gas/s12z/opr-ext-18.d: New file.
* testsuite/gas/s12z/opr-ext-18.s: New file.
* testsuite/gas/s12z/opr-idx-24-reg.d: New file.
* testsuite/gas/s12z/opr-idx-24-reg.s: New file.
* testsuite/gas/s12z/opr-idx3-reg.d: New file.
* testsuite/gas/s12z/opr-idx3-reg.s: New file.
* testsuite/gas/s12z/opr-idx3-xysp-24.d: New file.
* testsuite/gas/s12z/opr-idx3-xysp-24.s: New file.
* testsuite/gas/s12z/opr-indirect-expr.d: New file.
* testsuite/gas/s12z/opr-indirect-expr.s: New file.
* testsuite/gas/s12z/opr-symbol.d: New file.
* testsuite/gas/s12z/opr-symbol.s: New file.
* testsuite/gas/s12z/or-imm.d: New file.
* testsuite/gas/s12z/or-imm.s: New file.
* testsuite/gas/s12z/or-opr.d: New file.
* testsuite/gas/s12z/or-opr.s: New file.
* testsuite/gas/s12z/p2-mul.d: New file.
* testsuite/gas/s12z/p2-mul.s: New file.
* testsuite/gas/s12z/page2-inh.d: New file.
* testsuite/gas/s12z/page2-inh.s: New file.
* testsuite/gas/s12z/psh-pul.d: New file.
* testsuite/gas/s12z/psh-pul.s: New file.
* testsuite/gas/s12z/qmul.d: New file.
* testsuite/gas/s12z/qmul.s: New file.
* testsuite/gas/s12z/rotate.d: New file.
* testsuite/gas/s12z/rotate.s: New file.
* testsuite/gas/s12z/s12z.exp: New file.
* testsuite/gas/s12z/sat.d: New file.
* testsuite/gas/s12z/sat.s: New file.
* testsuite/gas/s12z/sbc-imm.d: New file.
* testsuite/gas/s12z/sbc-imm.s: New file.
* testsuite/gas/s12z/sbc-opr.d: New file.
* testsuite/gas/s12z/sbc-opr.s: New file.
* testsuite/gas/s12z/shift.d: New file.
* testsuite/gas/s12z/shift.s: New file.
* testsuite/gas/s12z/simple-shift.d: New file.
* testsuite/gas/s12z/simple-shift.s: New file.
* testsuite/gas/s12z/single-ops.d: New file.
* testsuite/gas/s12z/single-ops.s: New file.
* testsuite/gas/s12z/specd6.d: New file.
* testsuite/gas/s12z/specd6.s: New file.
* testsuite/gas/s12z/st-large-direct.d: New file.
* testsuite/gas/s12z/st-large-direct.s: New file.
* testsuite/gas/s12z/st-opr.d: New file.
* testsuite/gas/s12z/st-opr.s: New file.
* testsuite/gas/s12z/st-s-opr.d: New file.
* testsuite/gas/s12z/st-s-opr.s: New file.
* testsuite/gas/s12z/st-small-direct.d: New file.
* testsuite/gas/s12z/st-small-direct.s: New file.
* testsuite/gas/s12z/st-xy.d: New file.
* testsuite/gas/s12z/st-xy.s: New file.
* testsuite/gas/s12z/sub-imm.d: New file.
* testsuite/gas/s12z/sub-imm.s: New file.
* testsuite/gas/s12z/sub-opr.d: New file.
* testsuite/gas/s12z/sub-opr.s: New file.
* testsuite/gas/s12z/tfr.d: New file.
* testsuite/gas/s12z/tfr.s: New file.
* testsuite/gas/s12z/trap.d: New file.
* testsuite/gas/s12z/trap.s: New file.
binutils* readelf.c: Add support for s12z architecture.
* testsuite/lib/binutils-common.exp (is_elf_format): Excluse s12z
targets.
commit 011b32fd4270fb7111ee1f63695ccd44562ee7df
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri May 18 06:43:19 2018 -0700
x86: Don't set eh->local_ref to 1 for linker defined symbols
Since symbols created by HIDDEN and PROVIDE_HIDDEN assignments in
linker script may be marked as defined, but not hidden, we can't
set eh->local_ref to 1 in _bfd_x86_elf_link_symbol_references_local.
Also R_386_GOT32X should be handled as just like R_386_GOT32 when
relocating a section. The input R_386_GOT32X relocations, which
can be relaxed, should have been converted to R_386_PC32, R_386_32
or R_386_GOTOFF.
bfd/
PR ld/23189
* elf32-i386.c (elf_i386_relocate_section): Handle R_386_GOT32X
like R_386_GOT32.
* elfxx-x86.c (_bfd_x86_elf_link_symbol_references_local): Don't
set eh->local_ref to 1 for linker defined symbols.
ld/
PR ld/23189
* testsuite/ld-i386/i386.exp: Run pr23189.
* testsuite/ld-x86-64/x86-64.exp: Likewise.
* testsuite/ld-i386/pr23189.d: New file.
* testsuite/ld-i386/pr23189.s: Likewise.
* testsuite/ld-i386/pr23189.t: Likewise.
* testsuite/ld-x86-64/pr23189.d: Likewise.
* testsuite/ld-x86-64/pr23189.s: Likewise.
* testsuite/ld-x86-64/pr23189.t: Likewise.
commit 4bba0fb1c6d391a217c25e44398a7e1c7090155f
Author: Alan Modra <amodra@gmail.com>
Date: Fri May 18 17:09:45 2018 +0930
PR23199, Invalid SHT_GROUP entry leads to group confusion
This patch prevents elf_next_in_group list pointer confusion when
SHT_GROUP sections specify other SHT_GROUP sections in their list of
group sections.
PR 23199
* elf.c (setup_group): Formatting. Check that SHT_GROUP entries
don't point at other SHT_GROUP sections. Set shdr corresponding
to invalid entry, to NULL rather than section 0. Identify
SHT_GROUP section index when reporting an error. Cope with NULL
shdr pointer.
commit 8722de9c419c98ce2fb1f294097244c0bc45e030
Author: Alan Modra <amodra@gmail.com>
Date: Fri May 18 11:35:18 2018 +0930
ATTRIBUTE_HIDDEN for libbfd.h
* libbfd-in.h (ATTRIBUTE_HIDDEN): Define and use throughout.
* configure.ac (HAVE_HIDDEN): Check compiler support for hidden
visibility.
* libbfd.h: Regenerate.
* configure: Regenerate.
* config.in: Regenerate.
commit 0b4395434942ecc6f3006004784d19d9a4fbbf55
Author: Alan Modra <amodra@gmail.com>
Date: Fri May 18 08:30:50 2018 +0930
libbfd.h and libcoff.h include guards
* libbfd-in.h: Add include guard.
* libcoff-in.h: Likewise.
* doc/Makefile.am (libbfd.h, libcoff.h): Append another #endif.
* doc/Makefile.in: Regenerate.
* libbfd.h: Regenerate.
* libcoff.h: Regenerate.
commit 29e0f0a144fcabb6fa088c58b49e5924d7c43967
Author: Alan Modra <amodra@gmail.com>
Date: Fri May 18 08:31:13 2018 +0930
opcodes sources should not include libbfd.h
* nfp-dis.c: Don't #include libbfd.h.
(init_nfp3200_priv): Use bfd_get_section_contents.
(nit_nfp6000_mecsr_sec): Likewise.
commit 838c49a4f3df728ed08bb77fb86ebaf199747b04
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri May 18 00:00:41 2018 +0000
Automatic date update in version.in
commit ddfe970e6bec29f779a60b071f12590e53cfe6eb
Author: Keith Seitz <keiths@redhat.com>
Date: Thu May 17 12:15:11 2018 -0700
Don't elide all inlined frames
This patch essentially causes GDB to treat inlined frames like "normal"
frames from the user's perspective. This means, for example, that when a
user sets a breakpoint in an inlined function, GDB will now actually stop
"in" that function.
Using the test case from breakpoints/17534,
3 static inline void NVIC_EnableIRQ(int IRQn)
4 {
5 volatile int y;
6 y = IRQn;
7 }
8
9 __attribute__( ( always_inline ) ) static inline void __WFI(void)
10 {
11 __asm volatile ("nop");
12 }
13
14 int main(void) {
15
16 x= 42;
17
18 if (x)
19 NVIC_EnableIRQ(16);
20 else
21 NVIC_EnableIRQ(18);
(gdb) b NVIC_EnableIRQ
Breakpoint 1 at 0x4003e4: NVIC_EnableIRQ. (2 locations)
(gdb) r
Starting program: 17534
Breakpoint 1, main () at 17534.c:19
19 NVIC_EnableIRQ(16);
Because skip_inline_frames currently skips every inlined frame, GDB "stops"
in the caller. This patch adds a new parameter to skip_inline_frames
that allows us to pass in a bpstat stop chain. The breakpoint locations
on the stop chain can be used to determine if we've stopped inside an inline
function (due to a user breakpoint). If we have, we do not elide the frame.
With this patch, GDB now reports that the inferior has stopped inside the
inlined function:
(gdb) r
Starting program: 17534
Breakpoint 1, NVIC_EnableIRQ (IRQn=16) at 17534.c:6
6 y = IRQn;
Many thanks to Jan and Pedro for guidance on this.
gdb/ChangeLog:
* breakpoint.c (build_bpstat_chain): New function, moved from
bpstat_stop_status.
(bpstat_stop_status): Add optional parameter, `stop_chain'.
If no stop chain is passed, call build_bpstat_chain to build it.
* breakpoint.h (build_bpstat_chain): Declare.
(bpstat_stop_status): Move documentation here from breakpoint.c.
* infrun.c (handle_signal_stop): Before eliding inlined frames,
build the stop chain and pass it to skip_inline_frames.
Pass this stop chain to bpstat_stop_status.
* inline-frame.c: Include breakpoint.h.
(stopped_by_user_bp_inline_frame): New function.
(skip_inline_frames): Add parameter `stop_chain'.
Move documention to inline-frame.h.
If non-NULL, use stopped_by_user_bp_inline_frame to determine
whether the frame should be elided.
* inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
Add moved documentation and update for new parameter.
gdb/testsuite/ChangeLog:
* gdb.ada/bp_inlined_func.exp: Update inlined frame locations
in expected breakpoint stop locations.
* gdb.dwarf2/implptr.exp (implptr_test_baz): Use up/down to
move to proper scope to test variable values.
* gdb.opt/inline-break.c (inline_func1, not_inline_func1)
(inline_func2, not_inline_func2, inline_func3, not_inline_func3):
New functions.
(main): Call not_inline_func3.
* gdb.opt/inline-break.exp: Start inferior and set breakpoints at
inline_func1, inline_func2, and inline_func3. Test that when each
breakpoint is hit, GDB properly reports both the stop location
and the backtrace. Repeat tests for temporary breakpoints.
commit b17992c1c02a2d8a832a887c2de23a7f3ab869f8
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Thu May 17 13:05:59 2018 -0400
Make format_pieces recognize the \e escape sequence
I noticed that the printf command did not recognize the \e escape
sequence, used amongst other things to use colors:
(gdb) printf "This is \e[32mgreen\e[m!\n"
Unrecognized escape character \e in format string.
This patch makes format_pieces recognize it, which makes that command
print the expected result in glorious color.
I wrote a really simple unit test for format_pieces.
format_pieces::operator[] is unused so I removed it. I added
format_piece::operator==, which is needed to compare vectors of
format_piece.
gdb/ChangeLog:
PR cli/14975
* Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
unittests/format_pieces-selftests.c.
* common/format.h (format_piece) <operator==>: New.
(format_pieces) <operator[]>: Remove.
* common/format.c (format_pieces::format_pieces): Handle \e.
* unittests/format_pieces-selftests.c: New.
commit 58f0c71853f98afe623ab89c4362682885905ebb
Author: Tom Tromey <tom@tromey.com>
Date: Thu Apr 12 08:24:41 2018 -0600
Fix for dwz-related crash
PR symtab/23010 reports a crash that occurs when using -readnow
on a dwz-generated debuginfo file.
The crash occurs because the DWARF has a partial CU with no language
set, and then a full CU that references this partial CU using
DW_AT_abstract_origin.
In this case, the partial CU is read by dw2_expand_all_symtabs using
language_minimal; but then this conflicts with the creation of the
block's symbol table in the C++ CU.
This patch fixes the problem by arranging for partial CUs not to be
read by -readnow. I tend to think that it doesn't make sense to read
a partial CU in isolation -- they should only be read when imported
into some other CU.
In conjunction with some other patches I am going to post, this also
fixes the Rust -readnow crash that Jan reported.
There are two problems with this patch:
1. It is difficult to reason about. There are many cases where I've
patched the code to call init_cutu_and_read_dies with the flag set
to "please do read partial units" -- but I find it difficult to be
sure that this is always correct.
2. It is still missing a standalone test case. This seemed hard.
2018-05-17 Tom Tromey <tom@tromey.com>
PR symtab/23010:
* dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
(dw2_instantiate_symtab): Add skip_partial parameter.
(dw2_find_last_source_symtab, dw2_map_expand_apply)
(dw2_lookup_symbol, dw2_expand_symtabs_for_function)
(dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
(dw2_expand_symtabs_matching_one)
(dw2_find_pc_sect_compunit_symtab)
(dw2_debug_names_lookup_symbol)
(dw2_debug_names_expand_symtabs_for_function): Update.
(init_cutu_and_read_dies): Add skip_partial parameter.
(process_psymtab_comp_unit, build_type_psymtabs_1)
(process_skeletonless_type_unit, load_partial_comp_unit)
(psymtab_to_symtab_1): Update.
(load_full_comp_unit): Add skip_partial parameter.
(process_imported_unit_die, dwarf2_read_addr_index)
(follow_die_offset, dwarf2_fetch_die_loc_sect_off)
(dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
(read_signatured_type): Update.
commit 809276d28ad0212dd5a3f9074090e1425e5e4d8e
Author: Nick Clifton <nickc@redhat.com>
Date: Thu May 17 16:24:42 2018 +0100
Updated simplified Chinese translation for the opcodes directory.
opcodes * po/zh_CN.po: Updated simplified Chinese translation.
commit 3e6188349fbf16e9da69837e5e1211537805e422
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Thu May 17 09:52:08 2018 -0400
value.c: Remove unused variables
Obvious patch to remove unused local variables (found by adding
-Wunused). I didn't touch this one in value_fetch_lazy, because
check_typedef could have a desired side-effect.
3743 struct type *type = check_typedef (value_type (val));
gdb/ChangeLog:
* value.c (release_value): Remove unused variable.
(record_latest_value): Likewise.
(access_value_history): Likewise.
(preserve_values): Likewise.
commit fe10fe3131e688d528877706db1e98e15434c0dc
Author: Tom Tromey <tom@tromey.com>
Date: Wed May 16 11:39:09 2018 -0600
Initialize py_type_printers in ext_lang_type_printers
When running gdb in the build directory without passing
--data-directory, I noticed I could provoke a crash by:
$ ./gdb -nx ./gdb
(gdb) ptype/o struct dwarf2_per_objfile
... and then trying to "q" out at the pagination prompt.
valgrind complained about an uninitialized use of py_type_printers.
Initializing this member fixes the bug.
I believe this bug can occur even when the gdb Python libraries are
available, for example if get_type_recognizers fails.
Tested by hand on x86-64 Fedora 26. No test case because it seemed
difficult to guarantee failures.
gdb/ChangeLog
2018-05-17 Tom Tromey <tom@tromey.com>
* extension.h (struct ext_lang_type_printers) <py_type_printers>:
Initialize.
commit 1a87f0eedcf3fb54b665d6c92007c721c6b25218
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu May 17 00:00:42 2018 +0000
Automatic date update in version.in
commit 1d7611244c140a1a08f3365cd5881120eba7749d
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed May 16 20:43:30 2018 +0100
PR gdb/22286: linux-nat-trad: Support arbitrary register widths
Update `fetch_register' and `store_register' code to support arbitrary
register widths rather than only ones that are a multiply of the size of
the `ptrace' data type used with PTRACE_PEEKUSR and PTRACE_POKEUSR
requests to access registers. Remove associated assertions, correcting
an issue with accessing the DSPControl (`$dspctl') register on n64 MIPS
native targets:
(gdb) print /x $dspctl
.../gdb/linux-nat-trad.c:50: internal-error: void linux_nat_trad_target::fetch_register(regcache*, int): Assertion `(size % sizeof (PTRACE_TYPE_RET)) == 0' failed.
A problem internal to GDB has been detected,
further debugging may prove unreliable.
Quit this debugging session? (y or n) n
This is a bug, please report it. For instructions, see:
<http://www.gnu.org/software/gdb/bugs/>.
.../gdb/linux-nat-trad.c:50: internal-error: void linux_nat_trad_target::fetch_register(regcache*, int): Assertion `(size % sizeof (PTRACE_TYPE_RET)) == 0' failed.
A problem internal to GDB has been detected,
further debugging may prove unreliable.
Create a core file of GDB? (y or n) n
Command aborted.
(gdb)
All registers are now reported correctly and their architectural
hardware widths respected:
(gdb) print /x $dspctl
$1 = 0x55aa33cc
(gdb) info registers
zero at v0 v1
R0 0000000000000000 0000000000000001 000000fff7ffeb20 0000000000000000
a0 a1 a2 a3
R4 0000000000000001 000000ffffffeaf8 000000ffffffeb08 0000000000000000
a4 a5 a6 a7
R8 000000fff7ee3800 000000fff7ede8f0 000000ffffffeaf0 2f2f2f2f2f2f2f2f
t0 t1 t2 t3
R12 0000000000000437 0000000000000002 000000fff7ffd000 0000000120000ad0
s0 s1 s2 s3
R16 000000fff7ee2068 0000000120000e60 0000000000000000 0000000000000000
s4 s5 s6 s7
R20 0000000000521ec8 0000000000522608 0000000000000000 0000000000000000
t8 t9 k0 k1
R24 0000000000000000 0000000120000d9c 0000000000000000 0000000000000000
gp sp s8 ra
R28 0000000120019030 000000ffffffe990 000000ffffffe990 000000fff7d5b88c
status lo hi badvaddr
0000000000109cf3 0000000000005ea5 0000000000000211 000000fff7fc6fe0
cause pc
0000000000800024 0000000120000dbc
fcsr fir hi1 lo1
00000000 00f30000 0000000000000000 0101010101010101
hi2 lo2 hi3 lo3
0202020202020202 0303030303030303 0404040404040404 0505050505050505
dspctl restart
55aa33cc 0000000000000000
(gdb)
NB due to the lack of access to 64-bit DSP hardware all DSP register
values in the dumps are artificial and have been created with a debug
change applied to the kernel handler of the `ptrace' syscall.
The use of `store_unsigned_integer' and `extract_unsigned_integer'
unconditionally in all cases rather than when actual data occupies a
part of the data quantity exchanged with `ptrace' makes code perhaps
marginally slower, however I think avoiding it is not worth code
obfuscation it would cause. If this turns out unfounded, then there
should be no problem with optimizing this code later.
gdb/
PR gdb/22286
* linux-nat-trad.c (linux_nat_trad_target::fetch_register):
Also handle registers whose width is not a multiple of
PTRACE_TYPE_RET.
(linux_nat_trad_target::store_register): Likewise.
commit 49d519ec2fe80b48f404c0209b41bf8fee47cf39
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed May 16 20:43:29 2018 +0100
NDS32/GAS: Correct an `expr' global shadowing error for pre-4.8 GCC
Remove `-Wshadow' compilation errors:
cc1: warnings being treated as errors
.../gas/config/tc-nds32.c: In function 'md_assemble':
.../gas/config/tc-nds32.c:5212: error: declaration of 'expr' shadows a global declaration
.../gas/expr.h:180: error: shadowed declaration is here
make[4]: *** [tc-nds32.o] Error 1
which for versions of GCC before 4.8 prevent support for NDS32 targets
from being built. See also GCC PR c/53066.
gas/
* tc-nds32.c (md_assemble): Rename `expr' local variable to
`insn_expr'.
commit 1624c9ca3fd32bf25b2cb63f99270abe41f718f5
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed May 16 20:43:29 2018 +0100
NDS32/BFD: Fix build error in `nds32_convert_32_to_16'
Fix:
cc1: warnings being treated as errors
.../bfd/elf32-nds32.c: In function 'nds32_convert_32_to_16':
.../bfd/elf32-nds32.c:6816: error: 'insn_type' may be used uninitialized in this function
make[4]: *** [elf32-nds32.lo] Error 1
seen with GCC 4.1.2 and 4.4.7.
bfd/
* elf32-nds32.c (nds32_convert_32_to_16): Preset `insn_type'.
commit 06333fea767dc1eaf88ac286293fcbaa0ef2de9e
Author: Tom Tromey <tom@tromey.com>
Date: Fri May 11 12:36:19 2018 -0600
Make "cbfd" a gdb_bfd_ref_ptr
This changes program_space::cbfd to be a gdb_bfd_ref_ptr. This makes
it somewhat less error-prone to use, because now it manages the
reference counting automatically.
Tested by the buildbot.
2018-05-16 Tom Tromey <tom@tromey.com>
* gdbcore.h (core_bfd): Redefine.
* corelow.c (core_target::close): Update.
(core_target_open): Update.
* progspace.h (struct program_space) <cbfd>: Now a
gdb_bfd_ref_ptr.
commit 921222e2e8e8427c6a609b1ff66265dceb0d07eb
Author: Tom Tromey <tom@tromey.com>
Date: Tue Jun 14 12:46:56 2016 +0100
Use a distinguishing name for minidebug objfile
One part of PR cli/19551 is that the mini debug info objfile reuses the
name of the main objfile from which it comes. This can be seen because
gdb claims to be reading symbols from the same file two times, like:
Reading symbols from /bin/gdb...Reading symbols from /bin/gdb...(no debugging symbols found)...done.
I think this would be less confusing if the minidebug objfile were given
a different name. That is what this patch implements. It also arranges
for the minidebug objfile to be marked OBJF_NOT_FILENAME.
After this patch the output looks like:
Reading symbols from /bin/gdb...Reading symbols from .gnu_debugdata for /usr/libexec/gdb...(no debugging symbols found)...done.
Tested by the buildbot.
gdb/ChangeLog
2018-05-16 Tom Tromey <tom@tromey.com>
PR cli/19551:
* symfile-add-flags.h (enum symfile_add_flags)
<SYMFILE_NOT_FILENAME>: New constant.
* symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME. Get
objfile name from BFD.
(symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
* minidebug.c (find_separate_debug_file_in_section): Put
".gnu_debugdata" into BFD's file name.
commit 3acb7083a675fb3077739a2ae41a4a4cd6ef9cc3
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed May 16 12:41:19 2018 -0400
regcache.c: Remove unused typedefs
gdb/ChangeLog:
* regcache.c (regcache_read_ftype, regcache_write_ftype):
Remove.
commit 7cf7fcc83ca9fb4c4b591b3142bcf12e6e8a2aa5
Author: Alan Modra <amodra@gmail.com>
Date: Wed May 16 11:33:48 2018 +0930
PR22458, failure to choose a matching ELF target
https://sourceware.org/ml/binutils/2013-05/msg00271.html was supposed
to banish "file format is ambiguous" errors for ELF. It didn't,
because the code supposedly detecting formats that implement
match_priority didn't work. That was due to not placing all matching
targets into the vector of matching targets. ELF objects should all
match the generic ELF target (priority 2), plus one or more machine
specific targets (priority 1), and perhaps a single machine specific
target with OS/ABI set (priority 0, best match). So the armel object
in the testcase actually matches elf32-littlearm,
elf32-littlearm-symbian, and elf32-littlearm-vxworks (all priority 1),
and elf32-little (priority 2). As the PR reported, elf32-little
wasn't seen as matching. Fixing that part of the problem wasn't too
difficult but matching the generic ELF target as well as the ARM ELF
targets resulted in ARM testsuite failures.
These proved to be the annoying reordering of stubs that occurs from
time to time due to the stub names containing the section id.
Matching another target causes more sections to be created in
elf_object_p. If section ids change, stub names change, which results
in different hashing and can therefore result in different hash table
traversal and stub creation order. That particular problem is fixed
by resetting section_id to the initial state before attempting each
target match, and taking a snapshot of its value after a successful
match.
PR 22458
* format.c (struct bfd_preserve): Add section_id.
(bfd_preserve_save, bfd_preserve_restore): Save and restore
_bfd_section_id.
(bfd_reinit): Set _bfd_section_id.
(bfd_check_format_matches): Put all matches of any priority into
matching_vector. Save initial section id and start each attempted
match at that section id.
* libbfd-in.h (_bfd_section_id): Declare.
* section.c (_bfd_section_id): Rename from section_id and make
global. Adjust uses.
(bfd_get_next_section_id): Delete.
* elf64-ppc.c (ppc64_elf_setup_section_lists): Replace use of
bfd_get_section_id with _bfd_section_id.
* libbfd.h: Regenerate.
* bfd-in2.h: Regenerate.
commit ff329288d503d392de11f34ce64c7fdd3c62e50f
Author: Tamar Christina <tamar.christina@arm.com>
Date: Wed May 16 12:13:42 2018 +0100
Fix disassembly mask for vector sdot on AArch64.
This patch corrects the disassembly masks for by element dot product
instructions. The bit 10 was wrong and supposed to be 1.
This caused incorrect disassembly of instructions in the unallocated space to
disassemble as dot product instructions.
No encoding errors can arrise from this issue.
opcodes/
PR binutils/23109
* aarch64-tbl.h (aarch64_opcode_table): Correct sdot and udot.
* aarch64-dis-2.c: Regenerate.
commit 0255c1a349ebd368c4c1bafd95118e7cc71eb973
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed May 16 00:00:40 2018 +0000
Automatic date update in version.in
commit f9830ec1655e7cc2aa88c9c34a20503978d9dc88
Author: Tamar Christina <tamar.christina@arm.com>
Date: Tue May 15 16:37:20 2018 +0100
Implement Read/Write constraints on system registers on AArch64
This patch adds constraints for read and write only system registers with the
msr and mrs instructions. The code will treat having both flags set and none
set as the same. These flags add constraints that must be matched up. e.g. a
system register with a READ only flag set, can only be used with mrs. If The
constraint fails a warning is emitted.
Examples of the warnings generated:
test.s: Assembler messages:
test.s:5: Warning: specified register cannot be written to at operand 1 -- `msr dbgdtrrx_el0,x3'
test.s:7: Warning: specified register cannot be read from at operand 2 -- `mrs x3,dbgdtrtx_el0'
test.s:8: Warning: specified register cannot be written to at operand 1 -- `msr midr_el1,x3'
and disassembly notes:
0000000000000000 <main>:
0: d5130503 msr dbgdtrtx_el0, x3
4: d5130503 msr dbgdtrtx_el0, x3
8: d5330503 mrs x3, dbgdtrrx_el0
c: d5330503 mrs x3, dbgdtrrx_el0
10: d5180003 msr midr_el1, x3 ; note: writing to a read-only register.
Note that because dbgdtrrx_el0 and dbgdtrtx_el0 have the same encoding, during
disassembly the constraints are use to disambiguate between the two. An exact
constraint match is always prefered over partial ones if available.
As always the warnings can be suppressed with -w and also be made errors using
warnings as errors.
binutils/
PR binutils/21446
* doc/binutils.texi (-M): Document AArch64 options.
gas/
PR binutils/21446
* testsuite/gas/aarch64/illegal-sysreg-2.s: Fix pmbidr_el1 test.
* testsuite/gas/aarch64/illegal-sysreg-2.l: Likewise.
* testsuite/gas/aarch64/illegal-sysreg-2.d: Likewise.
* testsuite/gas/aarch64/sysreg-diagnostic.s: New.
* testsuite/gas/aarch64/sysreg-diagnostic.l: New.
* testsuite/gas/aarch64/sysreg-diagnostic.d: New.
include/
PR binutils/21446
* opcode/aarch64.h (F_SYS_READ, F_SYS_WRITE): New.
opcodes/
PR binutils/21446
* aarch64-asm.c (opintl.h): Include.
(aarch64_ins_sysreg): Enforce read/write constraints.
* aarch64-dis.c (aarch64_ext_sysreg): Likewise.
* aarch64-opc.h (F_DEPRECATED, F_ARCHEXT, F_HASXT): Moved here.
(F_REG_READ, F_REG_WRITE): New.
* aarch64-opc.c (aarch64_print_operand): Generate notes for
AARCH64_OPND_SYSREG.
(F_DEPRECATED, F_ARCHEXT, F_HASXT): Move to aarch64-opc.h.
(aarch64_sys_regs): Add constraints to currentel, midr_el1, ctr_el0,
mpidr_el1, revidr_el1, aidr_el1, dczid_el0, id_dfr0_el1, id_pfr0_el1,
id_pfr1_el1, id_afr0_el1, id_mmfr0_el1, id_mmfr1_el1, id_mmfr2_el1,
id_mmfr3_el1, id_mmfr4_el1, id_isar0_el1, id_isar1_el1, id_isar2_el1,
id_isar3_el1, id_isar4_el1, id_isar5_el1, mvfr0_el1, mvfr1_el1,
mvfr2_el1, ccsidr_el1, id_aa64pfr0_el1, id_aa64pfr1_el1,
id_aa64dfr0_el1, id_aa64dfr1_el1, id_aa64isar0_el1, id_aa64isar1_el1,
id_aa64mmfr0_el1, id_aa64mmfr1_el1, id_aa64mmfr2_el1, id_aa64afr0_el1,
id_aa64afr0_el1, id_aa64afr1_el1, id_aa64zfr0_el1, clidr_el1,
csselr_el1, vsesr_el2, erridr_el1, erxfr_el1, rvbar_el1, rvbar_el2,
rvbar_el3, isr_el1, tpidrro_el0, cntfrq_el0, cntpct_el0, cntvct_el0,
mdccsr_el0, dbgdtrrx_el0, dbgdtrtx_el0, osdtrrx_el1, osdtrtx_el1,
mdrar_el1, oslar_el1, oslsr_el1, dbgauthstatus_el1, pmbidr_el1,
pmsidr_el1, pmswinc_el0, pmceid0_el0, pmceid1_el0.
* aarch64-tbl.h (aarch64_opcode_table): Add constraints to
msr (F_SYS_WRITE), mrs (F_SYS_READ).
commit 7d02540ab73206249779ced77a6abe0be156442e
Author: Tamar Christina <tamar.christina@arm.com>
Date: Tue May 15 16:34:54 2018 +0100
Allow non-fatal errors to be emitted and for disassembly notes be placed on AArch64
This patch adds a new platform option "notes" that can be used to indicate if
disassembly notes should be placed in the disassembly as comments.
These notes can contain information about a failing constraint such as reading
from a write-only register. The disassembly will not be blocked because of this
but -M notes will emit a comment saying that the operation is not allowed.
For assembly this patch adds a new non-fatal status for errors. This is
essentially a warning. The reason for not creating an actual warning type is
that this causes the interaction between the ordering of warnings and errors to
be problematic. Currently the error buffer is almost always filled because of
the way operands are matched during assembly. An earlier template may have put
an error there that would only be displayed if no other template matches or
generates a higher priority error. But by definition a warning is lower
priority than a warning, so the error (which is incorrect if another template
matched) will supersede the warning. By treating warnings as errors and only
later relaxing the severity this relationship keeps working and the existing
reporting infrastructure can be re-used.
binutils/
PR binutils/21446
* doc/binutils.texi (-M): Document AArch64 options.
* NEWS: Document notes and warnings.
gas/
PR binutils/21446
* config/tc-aarch64.c (print_operands): Indicate no notes.
(output_operand_error_record): Support non-fatal errors.
(output_operand_error_report, warn_unpredictable_ldst, md_assemble):
Likewise.
include/
PR binutils/21446
* opcode/aarch64.h (aarch64_operand_error): Add non_fatal.
(aarch64_print_operand): Support notes.
opcodes/
PR binutils/21446
* aarch64-dis.c (no_notes: New.
(parse_aarch64_dis_option): Support notes.
(aarch64_decode_insn, print_operands): Likewise.
(print_aarch64_disassembler_options): Document notes.
* aarch64-opc.c (aarch64_print_operand): Support notes.
commit 561a72d4ddf825ffaf8e88551e9bd6707cd6c59f
Author: Tamar Christina <tamar.christina@arm.com>
Date: Tue May 15 16:11:42 2018 +0100
Modify AArch64 Assembly and disassembly functions to be able to fail and report why.
This patch if the first patch in a series to add the ability to add constraints
to system registers that an instruction must adhere to in order for the register
to be usable with that instruction.
These constraints can also be used to disambiguate between registers with the
same encoding during disassembly.
This patch adds a new flags entry in the sysreg structures and ensures it is
filled in and read out during assembly/disassembly. It also adds the ability for
the assemble and disassemble functions to be able to gracefully fail and re-use
the existing error reporting infrastructure.
The return type of these functions are changed to a boolean to denote success or
failure and the error structure is passed around to them. This requires
aarch64-gen changes so a lot of the changes here are just mechanical.
gas/
PR binutils/21446
* config/tc-aarch64.c (parse_sys_reg): Return register flags.
(parse_operands): Fill in register flags.
gdb/
PR binutils/21446
* aarch64-tdep.c (aarch64_analyze_prologue,
aarch64_software_single_step, aarch64_displaced_step_copy_insn):
Indicate not interested in errors.
include/
PR binutils/21446
* opcode/aarch64.h (aarch64_opnd_info): Change sysreg to struct.
(aarch64_decode_insn): Accept error struct.
opcodes/
PR binutils/21446
* aarch64-asm.h (aarch64_insert_operand, aarch64_##x): Return boolean
and take error struct.
* aarch64-asm.c (aarch64_ext_regno, aarch64_ins_reglane,
aarch64_ins_reglist, aarch64_ins_ldst_reglist,
aarch64_ins_ldst_reglist_r, aarch64_ins_ldst_elemlist,
aarch64_ins_advsimd_imm_shift, aarch64_ins_imm, aarch64_ins_imm_half,
aarch64_ins_advsimd_imm_modified, aarch64_ins_fpimm,
aarch64_ins_imm_rotate1, aarch64_ins_imm_rotate2, aarch64_ins_fbits,
aarch64_ins_aimm, aarch64_ins_limm_1, aarch64_ins_limm,
aarch64_ins_inv_limm, aarch64_ins_ft, aarch64_ins_addr_simple,
aarch64_ins_addr_regoff, aarch64_ins_addr_offset, aarch64_ins_addr_simm,
aarch64_ins_addr_simm10, aarch64_ins_addr_uimm12,
aarch64_ins_simd_addr_post, aarch64_ins_cond, aarch64_ins_sysreg,
aarch64_ins_pstatefield, aarch64_ins_sysins_op, aarch64_ins_barrier,
aarch64_ins_prfop, aarch64_ins_hint, aarch64_ins_reg_extended,
aarch64_ins_reg_shifted, aarch64_ins_sve_addr_ri_s4xvl,
aarch64_ins_sve_addr_ri_s6xvl, aarch64_ins_sve_addr_ri_s9xvl,
aarch64_ins_sve_addr_ri_s4, aarch64_ins_sve_addr_ri_u6,
aarch64_ins_sve_addr_rr_lsl, aarch64_ins_sve_addr_rz_xtw,
aarch64_ins_sve_addr_zi_u5, aarch64_ext_sve_addr_zz,
aarch64_ins_sve_addr_zz_lsl, aarch64_ins_sve_addr_zz_sxtw,
aarch64_ins_sve_addr_zz_uxtw, aarch64_ins_sve_aimm,
aarch64_ins_sve_asimm, aarch64_ins_sve_index, aarch64_ins_sve_limm_mov,
aarch64_ins_sve_quad_index, aarch64_ins_sve_reglist,
aarch64_ins_sve_scale, aarch64_ins_sve_shlimm, aarch64_ins_sve_shrimm,
aarch64_ins_sve_float_half_one, aarch64_ins_sve_float_half_two,
aarch64_ins_sve_float_zero_one, aarch64_opcode_encode): Likewise.
* aarch64-dis.h (aarch64_extract_operand, aarch64_##x): Likewise.
* aarch64-dis.c (aarch64_ext_regno, aarch64_ext_reglane,
aarch64_ext_reglist, aarch64_ext_ldst_reglist,
aarch64_ext_ldst_reglist_r, aarch64_ext_ldst_elemlist,
aarch64_ext_advsimd_imm_shift, aarch64_ext_imm, aarch64_ext_imm_half,
aarch64_ext_advsimd_imm_modified, aarch64_ext_fpimm,
aarch64_ext_imm_rotate1, aarch64_ext_imm_rotate2, aarch64_ext_fbits,
aarch64_ext_aimm, aarch64_ext_limm_1, aarch64_ext_limm, decode_limm,
aarch64_ext_inv_limm, aarch64_ext_ft, aarch64_ext_addr_simple,
aarch64_ext_addr_regoff, aarch64_ext_addr_offset, aarch64_ext_addr_simm,
aarch64_ext_addr_simm10, aarch64_ext_addr_uimm12,
aarch64_ext_simd_addr_post, aarch64_ext_cond, aarch64_ext_sysreg,
aarch64_ext_pstatefield, aarch64_ext_sysins_op, aarch64_ext_barrier,
aarch64_ext_prfop, aarch64_ext_hint, aarch64_ext_reg_extended,
aarch64_ext_reg_shifted, aarch64_ext_sve_addr_ri_s4xvl,
aarch64_ext_sve_addr_ri_s6xvl, aarch64_ext_sve_addr_ri_s9xvl,
aarch64_ext_sve_addr_ri_s4, aarch64_ext_sve_addr_ri_u6,
aarch64_ext_sve_addr_rr_lsl, aarch64_ext_sve_addr_rz_xtw,
aarch64_ext_sve_addr_zi_u5, aarch64_ext_sve_addr_zz,
aarch64_ext_sve_addr_zz_lsl, aarch64_ext_sve_addr_zz_sxtw,
aarch64_ext_sve_addr_zz_uxtw, aarch64_ext_sve_aimm,
aarch64_ext_sve_asimm, aarch64_ext_sve_index, aarch64_ext_sve_limm_mov,
aarch64_ext_sve_quad_index, aarch64_ext_sve_reglist,
aarch64_ext_sve_scale, aarch64_ext_sve_shlimm, aarch64_ext_sve_shrimm,
aarch64_ext_sve_float_half_one, aarch64_ext_sve_float_half_two,
aarch64_ext_sve_float_zero_one, aarch64_opcode_decode): Likewise.
(determine_disassembling_preference, aarch64_decode_insn,
print_insn_aarch64_word, print_insn_data): Take errors struct.
(print_insn_aarch64): Use errors.
* aarch64-asm-2.c: Regenerate.
* aarch64-dis-2.c: Regenerate.
* aarch64-gen.c (print_operand_inserter): Use errors and change type to
boolean in aarch64_insert_operan.
(print_operand_extractor): Likewise.
* aarch64-opc.c (aarch64_print_operand): Use sysreg struct.
commit 4e6ff0e1b86f736ba20a5034509ffe9f8f05b971
Author: Maciej W. Rozycki <macro@mips.com>
Date: Tue May 15 16:26:07 2018 +0100
MIPS/Linux/native: Supply $zero for the !PTRACE_GETREGS case
With native MIPS/Linux targets the $zero register is inaccessible, with
its supposed context slot provided by the OS occupied by the $restart
register. The PTRACE_GETREGS path takes care of it by artificially
supplying the hardwired contents of $zero in `mips_supply_gregset' or
`mips64_supply_gregset', as applicable, however the PTRACE_PEEKUSER
fallback does not, making the register unavailable, e.g.:
(gdb) info registers
zero at v0 v1 a0 a1 a2 a3
R0 <unavl> 00000001 00000001 d2f1a9fc 00000000 00000000 00417158 00417150
t0 t1 t2 t3 t4 t5 t6 t7
R8 00000004 00000000 fffffff8 00000000 00000000 00000000 00000001 00000007
s0 s1 s2 s3 s4 s5 s6 s7
R16 00000000 00405e30 00000000 00500000 00000000 0052ec08 00000000 00000000
t8 t9 k0 k1 gp sp s8 ra
R24 00000000 00417008 00000000 00000000 0041e220 7fff4ce0 7fff4ce0 00405d0c
status lo hi badvaddr cause pc
<unavl> 00441cf1 00000017 00417004 00800024 00405d10
fcsr fir restart
00800000 00f30000 00000000
(gdb)
or (under certain circumstances):
(gdb) stepi
Register 0 is not available
(gdb)
This is specifically because `mips_linux_register_addr' and
`mips64_linux_register_addr', both correctly return -1 for
MIPS_ZERO_REGNUM, and therefore `linux_nat_trad_target::fetch_registers'
faithfully marks this register as unavailable.
Supply this register artificially then in the PTRACE_PEEKUSER case as
well, correcting this issue.
gdb/
* mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
Supply the MIPS_ZERO_REGNUM register.
commit ea33cd9290063d977fb2c31ea6a8567da585ab88
Author: Maciej W. Rozycki <macro@mips.com>
Date: Tue May 15 16:02:59 2018 +0100
MIPS: Make `mask_address_var' static
Make the `mask_address_var' variable static, it is not used outside
mips-tdep.c and having no target name embedded within it causes a risk
of a namespace clash.
gdb/
* mips-tdep.c (mask_address_var): Make variable static.
commit 0726fcc61a8b7c943de513ec598b2189c5f67715
Author: Maciej W. Rozycki <macro@mips.com>
Date: Tue May 15 15:54:36 2018 +0100
testsuite: Fix a `server_pid' access crash in gdb.server/server-kill.exp
Fix a commit f90183d7e31b ("Get GDBserver pid on remote target") bug and
correctly handle the case where the PID of `gdbserver' could not have
been retrieved. If that happens, $server_pid is unset causing:
FAIL: gdb.server/server-kill.exp: p server_pid
ERROR: tcl error sourcing .../gdb/testsuite/gdb.server/server-kill.exp.
ERROR: can't read "server_pid": no such variable
while executing
"if {$server_pid == "" } {
return -1
}"
(file ".../gdb/testsuite/gdb.server/server-kill.exp" line 49)
invoked from within
"source .../gdb/testsuite/gdb.server/server-kill.exp"
("uplevel" body line 1)
invoked from within
"uplevel #0 source .../gdb/testsuite/gdb.server/server-kill.exp"
invoked from within
"catch "uplevel #0 source $test_file_name""
Verify that the variable exists then rather than trying to access it.
gdb/testsuite/
* gdb.server/server-kill.exp: Verify whether `server_pid' exists
rather then trying to access it in determining whether the PID
of `gdbserver' could have been retrieved.
commit 810ed4db984d378ca9c8e3d152966fb81c23ef95
Author: Christophe Guillon <christophe.guillon@st.com>
Date: Tue May 15 12:27:45 2018 +0000
Fix uninitialised memory acccess in COFF bfd backend
2018-05-15 Christophe Guillon <christophe.guillon@st.com>
* coffcode.h (coff_bigobj_swap_aux_in): Make sure that all fields
of the aux structure are initialised.
Change-Id: I81be255ac6611afbe00995fac550e98e6a07e5df
commit 1678bd35a35a3bace2d4aee39b64d96c638651f0
Author: Francois H. Theron <francois.theron@netronome.com>
Date: Tue May 15 13:28:06 2018 +0100
Fix error messages in the NFP sources when building for 32-bit targets.
bfd * targets.c: Wrap nfp_elf64_vec in BFD64 ifdef.
include * opcode/nfp.h: Use uint64_t instead of bfd_vma.
opcodes * nfp-dis.c: Use uint64_t for instruction variables, not bfd_vma.
commit 293b4d4fe9f8a9624531fdd37f365d1b683d4623
Author: Nick Clifton <nickc@redhat.com>
Date: Tue May 15 13:16:16 2018 +0100
Add a new Portuguese translation for the bfd sub-directory.
* po/pt.po: New Portuguese translation.
* configure.ac (ALL_LINGUAS): Add pt.
* configure: Regenerate.
commit aa82c0d347b6380c0d80263be0613bca88ca4536
Author: Alan Modra <amodra@gmail.com>
Date: Tue May 15 19:38:53 2018 +0930
Restore LDFLAGS in notes.exp
Fixes an spu-elf test regression due to using the wrong flags.
* testsuite/ld-elf/notes.exp: Restore LDFLAGS.
commit 679ca9753b0176852bb28bac335eb9f0d3e70d95
Author: Alan Modra <amodra@gmail.com>
Date: Tue May 15 16:00:57 2018 +0930
Recognize more targets as ELF for testing
Also use the correct rel strip-13 variant for more ARM targets.
* testsuite/lib/binutils-common.exp (is_elf_format): Add chorus,
cloudabi, fuchsia, kaos and nto. Merge netbsdelf* into *elf*,
and *uclinux* into *linux*.
* testsuite/binutils-all/objcopy.exp: Accept armeb for rel
strip-13 test, exclude arm-vxworks and arm-windiss.
commit ee7545fe36b20119c41124ae664804ec7f4f825c
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue May 15 00:00:27 2018 +0000
Automatic date update in version.in
commit 2d79090eabe8aa972b07cb71a3dd73ef9498acfa
Author: Tom Tromey <tom@tromey.com>
Date: Mon May 14 09:34:00 2018 -0600
Clear rust_unions in rust_union_quirks
It turns out that a dwarf2_cu can remain allocated after psymtab
expansion is done, and so it makes sense to clear rust_unions when
done processing it.
Tested on x86-64 Fedora 27.
2018-05-14 Tom Tromey <tom@tromey.com>
* dwarf2read.c (rust_union_quirks): Clear rust_unions.
commit 864bb26cb34ce6f0a85f83ed38757d5512d07b2a
Author: Nick Clifton <nickc@redhat.com>
Date: Mon May 14 15:32:43 2018 +0100
Stop generating GNU build notes for linkonce sections.
gas * write.c (maybe_generate_build_notes): Generate notes on a
per-code-section basis. Skip linkonce sections.
ld * testsuite/ld-elf/notes.exp: New file: Run new test.
* testsuite/ld-elf/note1_1.s: New file: Source file for test.
* testsuite/ld-elf/note1_2.s: New file: Source file for test.
* testsuite/ld-elf/note1.r: New file: Expected readelf output.
commit c3533c4c7c5db84b27e4dc8994a3c3a893077c03
Author: Nick Clifton <nickc@redhat.com>
Date: Mon May 14 13:05:02 2018 +0100
Fix a problem in the assembler when checking for overlapping input and output files on non-POSIX compliant systems.
PR 23153
* as.c (main): When checking for an output file that is also an
input file, also check that the inode is not zero.
commit 4ec0995016801cc5d5cf13baf6e10163861e6852
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon May 14 03:55:37 2018 -0700
x86; Allow IFUNC pointer defined in PDE
If IFUNC symbol is defined in position-dependent executable, we should
change it to the normal function and set its address to its PLT entry
which should be resolved by R_*_IRELATIVE at run-time. All external
references should be resolved to its PLT in executable.
bfd/
PR ld/23169
* elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Don't issue
an error on IFUNC pointer defined in PDE.
* elf32-i386.c (elf_i386_finish_dynamic_symbol): Call
_bfd_x86_elf_link_fixup_ifunc_symbol.
* elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise.
* elfxx-x86.c (_bfd_x86_elf_link_fixup_ifunc_symbol): New
function.
* elfxx-x86.h (_bfd_x86_elf_link_fixup_ifunc_symbol): New.
ld/
PR ld/23169
* testsuite/ld-ifunc/ifunc-9-i386.d: New file.
* testsuite/ld-ifunc/ifunc-9-x86-64.d: Likewise.
* testsuite/ld-ifunc/pr23169a.c: Likewise.
* testsuite/ld-ifunc/pr23169a.rd: Likewise.
* testsuite/ld-ifunc/pr23169b.c: Likewise.
* testsuite/ld-ifunc/pr23169b.c: Likewise.
* testsuite/ld-ifunc/pr23169c.rd: Likewise.
* testsuite/ld-ifunc/pr23169c.rd: Likewise.
* testsuite/ld-ifunc/ifunc-9-x86.d: Removed.
* testsuite/ld-ifunc/ifunc.exp: Run PR ld/23169 tests.
commit 9bc935ef3380a2d471b9447e2bf8e61297654e2f
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon May 14 03:47:47 2018 -0700
x86: Mark __bss_start, _end and _edata locally defined
__bss_start, _end and _edata are defined by linker to mark regions
within executables and shared libraries. All references within
executables should be locally resolved.
This patch doesn't change how their references within shared libraries
are resolved.
bfd/
PR ld/23162
* elfxx-x86.c (elf_x86_linker_defined): New function.
(_bfd_x86_elf_link_check_relocs): Use it to mark __bss_start,
_end and _edata locally defined within executables.
ld/
PR ld/23162
* testsuite/ld-elf/pr23162.map: New file.
* testsuite/ld-elf/pr23162.rd: Likewise.
* testsuite/ld-elf/pr23162a.c: Likewise.
* testsuite/ld-elf/pr23162b.c: Likewise.
* testsuite/ld-elf/shared.exp: Run PR ld/23162 tests.
commit 85bd2d83f8a3d813718418df11c2bee2a50c1274
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon May 14 00:00:25 2018 +0000
Automatic date update in version.in
commit de7bbc27f9f3f1bdd2fb5c0cd1912937370b6362
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun May 13 00:01:08 2018 +0000
Automatic date update in version.in
commit 861d86514a78b9215a67275e15c30242ccc2d7c8
Author: Alan Modra <amodra@gmail.com>
Date: Sat May 12 16:21:22 2018 +0930
score gcc-8 warning fixes
Rather than just silencing the gcc-8 warnings, I decided to rewrite
the buffer handling in the two functions where gcc was warning.
The rest of the file could do with the same treatment.
* config/tc-score.c (s3_do_macro_bcmp): Don't use fixed size
buffers.
(s3_do_macro_bcmpz): Likewise.
commit 9933dc52736dd349503e00a68cd0b9be4388f5a9
Author: Alan Modra <amodra@gmail.com>
Date: Fri May 11 14:34:48 2018 +0930
PR20659, Objcopy and change section lma failing
Sections may well belong in multiple segments. The testcase in the PR
saw an allocated section being assigned to an ABIFLAGS segment, then
not being assigned to a LOAD segment because it had already been
handled. To fix that particular problem this patch sets and tests
segment_mark only for LOAD segments. I kept the segment_mark test for
LOAD segments because I think there may otherwise be a problem with
zero size sections.
A few other problems showed up with the testcase. Some targets align
.dynamic, resulting in the test failing with "section .dynamic lma
0x800000c0 adjusted to 0x800000cc" and similar messages. I've tried
to handle that with some more hacks to the segment lma, which do the
right thing for the testcase, but may well fail in other situations.
I've also removed the tests of segment lma (p_paddr) and code involved
in deciding that an adjusted segment no longer covers the file or
program headers. Those test can't be correct in the face of objcopy
--change-section-lma. It may be necessary to reinstate the tests but
do them modulo page size, but we'll see how this goes.
PR 20659
bfd/
* elf.c (rewrite_elf_program_header): Use segment_mark only for
PT_LOAD headers. Delete first_matching_lma and first_suggested_lma.
Instead make matching_lma and suggested_lma pointers to the
sections. Align section vma and lma calculated from segment.
Don't clear includes_phdrs or includes_filehdr based on p_paddr
test. Try to handle alignment padding before first section by
adjusting new segment lma down. Adjust PT_PHDR map p_paddr.
ld/
* testsuite/ld-elf/changelma.d,
* testsuite/ld-elf/changelma.lnk,
* testsuite/ld-elf/changelma.s: New test.
commit c64c5aae285146dce98f651d175f2ad1a437074f
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat May 12 00:00:35 2018 +0000
Automatic date update in version.in
commit cf4912ae570ceae019b344785e4eeaf8cf273df3
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Fri May 11 00:45:55 2018 +0100
gdb/x86: Fix write out of mxcsr register for xsave targets
In commit:
commit 8ee22052f690c007556b97eed59f49350ece5ca9
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Thu May 3 17:46:14 2018 +0100
gdb/x86: Handle kernels using compact xsave format
in two places FXSAVE_ADDR was used instead of FXSAVE_MXCSR_ADDR to get
the address of the mxcsr register within the xsave buffer. This will
mean we are potentially accessing the wrong location within the xsave
buffer.
There are no tests included with this patch. The first mistake would
only trigger an issue if/when the user tries to manually set the mxcsr
register to a value that matches the random (value off stack) value
that is in the xsave buffer, in this case the change by the user will
go unnoticed by GDB, and the default value of mxcsr will be preserved.
The second mistake only happens on the code path where all x87
registers are being written out of the register cache. I'm not sure
how to trigger that code path.
gdb/ChangeLog:
* i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
FXSAVE_ADDR for the mxcsr register.
commit 67e6f569eb32332b8a70a919b0b14012247d320a
Author: Max Filippov <jcmvbkbc@gmail.com>
Date: Wed Apr 25 11:23:38 2018 -0700
gdb: xtensa: drop gdb_target definition
gdb_target definitions were removed from configure.tgt in 2007, before
xtensa port was merged. Remove it from the xtensa target as well.
gdb/
2018-05-11 Max Filippov <jcmvbkbc@gmail.com>
* configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
commit 3afc23a6817c7f9da663ec87e9387bdd8ac33ae7
Author: Pedro Alves <palves@redhat.com>
Date: Fri May 11 19:18:02 2018 +0100
Fix email address in ChangeLog entry
tromey@redhat.com -> palves@redhat.com
commit 1524450719d3867e10fc6a8dbc051b8dc7924898
Author: Pedro Alves <palves@redhat.com>
Date: Fri May 11 19:10:14 2018 +0100
Heap-allocate core_target instances
This gets rid of the core_ops global, and replaces it with
heap-allocated core_target instances. In practice, there will only be
one such instance, though that will change further ahead as more
pieces of multi-target support are merged.
Notice that this replaces one heap-allocated object for another, the
number of allocations is the same. Specifically, currently we
heap-allocate the 'core_data' object, which holds the core's section
table. With this patch, that object is made a field of the
core_target class, and no longer allocated separately.
Note that this bit:
- /* Looks semi-reasonable. Toss the old core file and work on the
- new. */
-
- unpush_target (&core_ops);
does not need a replacement, because by the time we get here, the
target_preopen call at the top of core_target_open has already
unpushed any previous target.
gdb/ChangeLog:
2018-05-11 Pedro Alves <palves@redhat.com>
* corelow.c (core_target) <core_target>: No longer inline.
Initialize m_core_gdbarch, m_core_vec and build the section table
here.
<~core_target>: New.
<core_gdbarch, get_core_register_section>: New methods.
<m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
factored out from ...
<core_data, core_vec, core_gdbarch>: ... these deleted globals.
(core_ops): Delete.
(sniff_core_bfd): Add gdbarch parameter.
(core_close): Delete, merged into ...
(core_target::close): ... here. Delete self.
(core_close_cleanup): Delete.
(core_target_open): Allocate a core_target on the heap. Use a
unique_ptr instead of a cleanup. Bits moved into the core_target
ctor. Adjust to use core_target methods instead of globals.
(get_core_register_section): Rename to ...
(core_target::get_core_register_section): ... this and adjust.
(struct get_core_registers_cb_data): New.
(get_core_registers_cb): Use it. Use bool.
(core_target::fetch_registers, core_target::files_info)
(core_target::xfer_partial, core_target::read_description)
(core_target::pid_to, core_target::thread_name): Adjust to
reference class fields instead of globals.
* target.h (struct target_ops_deleter, target_ops_up): New.
commit 451953fa440aa0ade02b652159155fae689483a3
Author: Pedro Alves <palves@redhat.com>
Date: Fri May 11 19:10:14 2018 +0100
Eliminate the 'the_core_target' global
(previously called 'core_target', but since renamed because
'core_target' is the name of the target_ops class now.)
This eliminates the "the_core_target" global, as preparation for being
able to have more than one core loaded. When we get there, we will
instantiate one core_target object per core instead.
Essentially, this replaces the reference to the_core_target in
core_file_command by a reference to core_bfd, which is per
program_space.
Currently, core_file_command calls 'the_core_target->detach()' even if
the core target is not open and pushed on the target stack. If it is
indeed not open, then the practical effect is that
core_target::detach() prints "No core file now.". That is preserved
by printing that directly from within core_file_command if not
debugging a core.
gdb/ChangeLog:
2018-05-11 Pedro Alves <palves@redhat.com>
* corefile.c (core_file_command): Move to corelow.c.
* corelow.c (the_core_target): Delete.
(core_file_command): Moved from corefile.c. Check exec_bfd
instead of the_core_target. Use target_detach instead of calling
into the_core_target directly.
(maybe_say_no_core_file_now): New.
(core_target::detach): Use it.
(_initialize_corelow): Remove references to the_core_target.
* gdbcore.h (the_core_target): Delete.
commit e540a5a22319f2ab5661db882639839d1d867542
Author: Tom Tromey <tromey@redhat.com>
Date: Fri May 11 19:10:13 2018 +0100
Move core_bfd to program space
This moves the core_bfd global to be a field of the program space. It
then replaces core_bfd with a macro to avoid a massive patch -- the
same approach taken for various other program space fields.
This is a basic transformation for multi-target work.
2018-05-11 Tom Tromey <tromey@redhat.com>
Pedro Alves <tromey@redhat.com>
* corefile.c (core_bfd): Remove.
* gdbcore.h (core_bfd): Now a macro.
* progspace.h (struct program_space) <cbfd>: New field.
commit 633cf2548bcd3dafe297e21a1dd3574240280d48
Author: Tom Tromey <tom@tromey.com>
Date: Wed May 9 15:42:28 2018 -0600
Remove cleanups from mdebugread.c
This removes the remaining cleanups from mdebugread.c, replacing them
with gdb::def_vector.
Tested by the buildbot, though I doubt this exercises mdebugread.
gdb/ChangeLog
2018-05-11 Tom Tromey <tom@tromey.com>
* mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
gdb::def_vector.
commit 702dff05e5fb05b05246dd04cb22b5802bb94f50
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri May 11 00:00:38 2018 +0000
Automatic date update in version.in
commit 55271bf969c2c09b98aecd97b36170fbf76c3fc4
Author: Joel Brobecker <brobecker@adacore.com>
Date: Thu May 10 12:01:39 2018 -0500
x86 LynxOS-178: Adjust floating-point context structure
The floating point context structure on x86 LynxOS-178 is not
the same as on LynxOS 5.x. As a consequence, trying to print
the return value of a function returning a float, for instance,
yields incorrect results.
This patch fixes the issue by providing an updated definition
for LynxOS-178 (the reason why we cannot access the actual definition
provided by the system still remains true).
gdb/gdbserver/ChangeLog:
* lynx-i386-low.c (LYNXOS_178): New macro.
[LYNXOS_178] (usr_fcontext_t): Provide a definition that matches
the layout on LynxOS-178.
(lynx_i386_fill_fpregset, lynx_i386_store_fpregset): Do not
handle floating point registers that are not supported by
LynxOS-178.
commit 1a34f210bb9389e58d93caf4384800934fc7113a
Author: Tom Tromey <tom@tromey.com>
Date: Thu May 10 08:38:51 2018 -0600
Fix the clang build
Simon pointed out that gdb would not build with clang, due to the
addition of -Wimplicit-fallthrough. This patch fixes the problem by
using -Wimplicit-fallthrough=3 -- this does not work with clang,
bypassing the issue.
Tested by rebuilding with both gcc and clang; and also by verifying
that -Wimplicit-fallthrough=3 is used in the gcc build.
I will file a follow-up bug to convert the fall-through comments to a
form that can be used by both clang and gcc.
gdb/ChangeLog
2018-05-10 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
* warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
gdb/gdbserver/ChangeLog
2018-05-10 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
commit 6688183925d82d4049931e95bc4e963ab66e770d
Author: Tamar Christina <tamar.christina@arm.com>
Date: Thu May 10 16:24:58 2018 +0100
Allow integer immediates for AArch64 fmov instructions.
This patch makes it possible to use an integer immediate with the fmov instructions
allowing you to simply write fmov d0, #2 instead of needing fmov d0, #2.0.
The parse double function already know to deal with this so we just need to list the
restriction put in place in parser.
The is considered a QoL improvement for hand assembly writers and allows more
code portability between assembler.
gas/
* config/tc-aarch64.c (parse_aarch64_imm_float): Remove restrictions.
* testsuite/gas/aarch64/diagnostic.s: Move fmov int test to..
* testsuite/gas/aarch64/fpmov.s: Here.
* testsuite/gas/aarch64/fpmov.d: Update results with fmov.
* testsuite/gas/aarch64/diagnostic.l: Remove fmov values.
* testsuite/gas/aarch64/sve-invalid.s: Update test files.
* testsuite/gas/aarch64/sve-invalid.l: Likewise
commit 58ed5c38f52511e73c9748b86c319320177fb0ca
Author: Tamar Christina <tamar.christina@arm.com>
Date: Thu May 10 16:22:32 2018 +0100
Allow integer immediate for VFP vmov instructions.
This patch fixes the case where you want to use an integer value the
floating point immediate to a VFP vmov instruction such as
vmovmi.f32 s27, #11.
If the immediate is not a float we convert it and copy it's representation
into the imm field and then carry on validating as if we originally entered
a floating point immediate.
The is considered a QoL improvement for hand assembly writers and allows more
code portability between assembler.
gas/
* gas/config/tc-arm.c (do_neon_mov): Allow integer literal for float
immediate.
* testsuite/gas/arm/vfp-mov-enc.s: New.
* testsuite/gas/arm/vfp-mov-enc.d: New.
commit 190852c8ac75cb62a737c58edfadfb0e1fcef78a
Author: Joel Brobecker <brobecker@adacore.com>
Date: Thu May 10 10:27:13 2018 -0500
gdbserver/Windows: crash during connection establishment phase
On Windows, starting a new process with GDBserver seems to work,
in the sense that the program does get started, and GDBserver
confirms that it is listening for GDB to connect. However, as soon as
GDB establishes the connection with GDBserver, and starts discussing
with it, GDBserver crashes, with a SEGV.
This SEGV occurs in remote-utils.c::prepare_resume_reply...
| regp = current_target_desc ()->expedite_regs;
| [...]
| while (*regp)
... because, in our case, REGP is NULL.
This patches fixes the issues by adding a parameter to init_target_desc,
in order to make sure that we always provide the list of registers when
we initialize a target description.
gdb/ChangeLog:
PR server/23158:
* regformats/regdat.sh: Adjust script, following the addition
of the new expedite_regs parameter to init_target_desc.
gdb/gdbserver/ChangeLog:
PR server/23158:
* tdesc.h (init_target_desc) <expedite_regs>: New parameter.
* tdesc.c (init_target_desc) <expedite_regs>: New parameter.
Use it to set the expedite_regs field in the given tdesc.
* x86-tdesc.h: New file.
* linux-aarch64-tdesc.c (aarch64_linux_read_description):
Adjust following the addition of the new expedite_regs parameter
to init_target_desc.
* linux-tic6x-low.c (tic6x_read_description): Likewise.
* linux-x86-tdesc.c: #include "x86-tdesc.h".
(i386_linux_read_description, amd64_linux_read_description):
Adjust following the addition of the new expedite_regs parameter
to init_target_desc.
* lynx-i386-low.c: #include "x86-tdesc.h".
(lynx_i386_arch_setup): Adjust following the addition of the new
expedite_regs parameter to init_target_desc.
* nto-x86-low.c: #include "x86-tdesc.h".
(nto_x86_arch_setup): Adjust following the addition of the new
expedite_regs parameter to init_target_desc.
* win32-i386-low.c: #include "x86-tdesc.h".
(i386_arch_setup): Adjust following the addition of the new
expedite_regs parameter to init_target_desc.
commit 7dbac825b09f0847e608b50c80db816ef20d9315
Author: Joel Brobecker <brobecker@adacore.com>
Date: Thu May 10 10:24:33 2018 -0500
gdbserver/Windows: Fix "no program to debug" error
Trying to start a program with GDBserver on Windows yields
the following error:
$ gdbserver.exe --once :4444 simple_main.exe
Killing process(es): 5008
No program to debug
Exiting
The error itself comes from the following code shortly after
create_inferior gets called (in server.c::main):
/* Wait till we are at first instruction in program. */
create_inferior (program_path.get (), program_args);
[...]
if (last_status.kind == TARGET_WAITKIND_EXITED
|| last_status.kind == TARGET_WAITKIND_SIGNALLED)
was_running = 0;
else
was_running = 1;
if (!was_running && !multi_mode)
error ("No program to debug");
What happens is that the "last_status" global starts initialized
as zeroes, which means last_status.kind == TARGET_WAITKIND_EXITED,
and we expect create_inferior to be waiting for the inferior to
start until reaching the SIGTRAP, and to set the "last_status"
global to match that last event we received.
I suspect this is an unintended side-effect of the following change...
commit 2090129c36c7e582943b7d300968d19b46160d84
Date: Thu Dec 22 21:11:11 2016 -0500
Subject: Share fork_inferior et al with gdbserver
... which removes some code in server.c that was responsible for
starting the inferior in a functin that was named start_inferior,
and looked like this:
signal_pid = create_inferior (new_argv[0], &new_argv[0]);
[...]
/* Wait till we are at 1st instruction in program, return new pid
(assuming success). */
last_ptid = mywait (pid_to_ptid (signal_pid), &last_status, 0, 0);
The code has been transitioned to using fork_inferior, but sadly,
only for the targets that support it. On Windows, the calls to wait
setting "last_status" simply disappeared.
This patch adds it back in the Windows-specific implementation of
create_inferior.
gdb/gdbserver/ChangeLog:
PR server/23158:
* win32-low.c (win32_create_inferior): Add call to my_wait
setting last_status global.
commit 906994d9d50eb40dc89a5bf0830e15ed10938641
Author: Joel Brobecker <brobecker@adacore.com>
Date: Thu May 10 10:23:10 2018 -0500
[gdbserver/win32] fatal "glob could not process pattern '(null)'" error
Trying to start GDBserver on Windows currently yields the following
error...
$ gdbserver.exe --once :4444 simple_main.exe
glob could not process pattern '(null)'.
Exiting
... after which GDB terminates with a nonzero status.
This is because create_process in win32-low.c calls gdb_tilde_expand
with the result of a call to get_inferior_cwd without verifying that
the returned directory is not NULL:
| static BOOL
| create_process (const char *program, char *args,
| DWORD flags, PROCESS_INFORMATION *pi)
| {
| const char *inferior_cwd = get_inferior_cwd ();
| std::string expanded_infcwd = gdb_tilde_expand (inferior_cwd);
This patch avoids this by only calling gdb_tilde_expand when
INFERIOR_CWD is not NULL, which is similar to what is done on
GNU/Linux for instance.
gdb/gdbserver/ChangeLog:
PR server/23158:
* win32-low.c (create_process): Only call gdb_tilde_expand if
inferior_cwd is not NULL.
commit 637b19704cf8325875de8df4f8b000197d261e3b
Author: John Darrington <john@darrington.wattle.id.au>
Date: Thu May 10 12:51:42 2018 +0100
Add support for detecting Freescale S12Z binaries in readelf.
* include/elf/common.h (EM_S12Z): New macro
* binutils/readelf.c (get_machine_name): EM_S12Z - handle new case.
commit 8727de56b0dbe25b7b4a3bd04f72ac41992463ed
Author: Omair Javaid <omair.javaid@linaro.org>
Date: Tue May 1 06:31:32 2018 +0500
Fix tagged pointer support
This patch fixes tagged pointer support for AArch64 GDB. Linux kernel
debugging failure was reported after tagged pointer support was committed.
After a discussion around best path forward to manage tagged pointers
on GDB side we are going to disable tagged pointers support for
aarch64-none-elf-gdb because for non-linux applications we cant be
sure if tagged pointers will be used by MMU or not.
Also for aarch64-linux-gdb we are going to sign extend user-space
address after clearing tag bits. This will help debug both kernel
and user-space addresses based on information from linux kernel
documentation given below:
According to AArch64 memory map:
https://www.kernel.org/doc/Documentation/arm64/memory.txt
"User addresses have bits 63:48 set to 0 while the kernel addresses have
the same bits set to 1."
According to AArch64 tagged pointers document:
https://www.kernel.org/doc/Documentation/arm64/tagged-pointers.txt
The kernel configures the translation tables so that translations made
via TTBR0 (i.e. userspace mappings) have the top byte (bits 63:56) of
the virtual address ignored by the translation hardware. This frees up
this byte for application use.
Running gdb testsuite after applying this patch introduces no regressions
and tagged pointer test cases still pass.
gdb/ChangeLog:
2018-05-10 Omair Javaid <omair.javaid@linaro.org>
PR gdb/23127
* aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
set_gdbarch_significant_addr_bit.
* aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
set_gdbarch_significant_addr_bit.
* utils.c (address_significant): Update to sign extend addr.
commit a45a8f9178448171b51d9fc80d45ede73e99e399
Author: Stephen Crane <sjc@immunant.com>
Date: Thu May 10 00:09:32 2018 -0700
Fix _GLOBAL_OFFSET_TABLE_ value for large GOTs (aarch64).
Gold resolves GOT-relative relocs relative to the GOT base +
0x8000 when the GOT is larger than 0x8000. However, previously
the _GLOBAL_OFFSET_TABLE_ symbol was set to GOT base + 0x8000
when the .got.plt was larger than 0x8000. This patch makes both
checks use the size of the .got section so that they agree when
to add 0x8000.
commit 6fe88226c25fa3fdea506538688897272d42822b
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu May 10 00:00:38 2018 +0000
Automatic date update in version.in
commit d0ad159d6848fbd42f5c213f8b051735793101e4
Author: Max Filippov <jcmvbkbc@gmail.com>
Date: Tue May 8 13:49:00 2018 -0700
gas: xtensa: fix literal movement
Not all literals need to be moved in the presence of
--text-section-literals or --auto-litpools, but only those created by
.literal pseudo op or generated as a result of relaxation. Attempts to
move other literals may result in abnormal termination of the assembler
due to the following assertion failure:
Internal error in xg_find_litpool at gas/config/tc-xtensa.c:11209.
The same assertion may also be triggered by attempting to assign literal
pools to literals in .init and .fini sections; don't try to do that.
gas/
2018-05-09 Max Filippov <jcmvbkbc@gmail.com>
* config/tc-xtensa.c (xtensa_is_init_fini): New function.
(xtensa_move_literals): Only attempt to assign literal pool to
literals with tc_frag_data.is_literal mark and not in .init or
.fini sections.
Join nested 'if' conditions to simplify function structure.
(xtensa_switch_to_non_abs_literal_fragment): Use
xtensa_is_init_fini to test for .init/.fini sections.
* testsuite/gas/xtensa/all.exp (auto-litpools-3)
(auto-litpools-4, text-section-literals-1): New tests.
* testsuite/gas/xtensa/auto-litpools-3.d: New test results.
* testsuite/gas/xtensa/auto-litpools-3.s: New test source.
* testsuite/gas/xtensa/auto-litpools-4.d: New test results.
* testsuite/gas/xtensa/auto-litpools-4.s: New test source.
* testsuite/gas/xtensa/text-section-literals-1.d: New test results.
* testsuite/gas/xtensa/text-section-literals-1.s: New test source.
commit 06cfb1c89510d08217da8b3ccea05ecd4cdb5bc6
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed May 9 11:17:26 2018 -0700
x86: Remove Disp<N> from movidir{i,64b}
* i386-opc.tbl: Remove Disp<N> from movidir{i,64b}.
commit 37d9e0623102352e0ae27c311760a9e6569ae5e0
Author: Max Filippov <jcmvbkbc@gmail.com>
Date: Wed Apr 25 11:55:56 2018 -0700
gdb: xtensa: handle privileged registers
xtensa GDB may be used with both bare-metal and linux-based
applications. In case of bare-metal application gdbserver is able to
provide information about all CPU registers: both unprivileged and
privileged. In case of linux-based application only a small subset of
privileged state is available. Currently xtensa GDB only expects
unprivileged registers in 'g' packets and it fails to communicate with
server that sends both privileged and unprivileged registers.
Allow bare-metal xtensa GDB to deal with both privileged and
unprivileged registers by initializing tdep->num_regs with the total
number of target CPU registers. Keep linux-based xtensa GDB
functionality as is by copying tdep->num_nopriv_regs to tdep->num_regs.
gdb/
2018-05-09 Max Filippov <jcmvbkbc@gmail.com>
* xtensa-linux-tdep.c (xtensa-tdep.h): New include.
(xtensa_linux_init_abi): Limit tdep->num_regs by
tdep->num_nopriv_regs.
* xtensa-tdep.c (xtensa_derive_tdep): Calculate
tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
not initialized.
commit 60cb2c8a331ed8e4ad20afc51f9cdb3d8d18a869
Author: Alan Modra <amodra@gmail.com>
Date: Wed May 9 20:35:43 2018 +0930
Fix typo in od-macho.c
PR 22069
* od-macho.c (dump_unwind_encoding_x86): Fix typo in last patch.
commit 493ffac5aad8c39215702435c2506fd4d3077191
Author: Dimitar Dimitrov <dimitar@dinux.eu>
Date: Wed May 9 11:39:32 2018 +0100
Fix binary compatibility between GCC and the TI compiler for the PRU target.
My original implementation for LDI32 pseudo does not conform to
the TI ABI. I wrongly documented my TI PRU ELF object files inspection,
which got propagated into my binutils implementation.
Issue was exposed when running the GCC ABI testsuite against TI toolchain.
According to TI ABI, LDI32 must use first LDI instruction to load
the MSB 16bits, and second LDI instruction for the LSB 16bits.
This patch will break binary compatibility with previously released
binutils versions for PRU. Still, I think it is better to fix
binutils to conform to the chip vendor ABI.
bfd * elf32-pru.c (pru_elf32_do_ldi32_relocate): Make LDI32 relocation
conformant to TI ABI.
(pru_elf32_relax_section): Likewise.
(pru_elf_relax_delete_bytes): Fix offsets for new LDI32 code.
* elf32-pru.c (pru_elf32_do_ldi32_relocate): Ignore addend.
(pru_elf32_pmem_relocate): Trap - should not get here.
(pru_elf32_relocate_section): Add support for REL relocations.
(elf_info_to_howto_rel): Enable REL.
(elf_backend_may_use_rel_p): Likewise.
(elf_backend_may_use_rela_p): Likewise.
(elf_backend_default_use_rela_p): Likewise.
gas * config/tc-pru.c (md_apply_fix): Make LDI32 relocation conformant
to TI ABI.
(pru_assemble_arg_i): Likewise.
(output_insn_ldi32): Likewise.
* testsuite/gas/pru/ldi.d: Update test for the now fixed LDI32.
* gas/config/tc-pru.c (pru_assemble_arg_b): Check imm8 operand range.
* gas/testsuite/gas/pru/illegal2.l: New test.
* gas/testsuite/gas/pru/illegal2.s: New test.
* gas/testsuite/gas/pru/pru.exp: Register new illegal2 test.
ld * scripttempl/pru.sc: Add LD sections to allow linking TI
toolchain object files.
* scripttempl/pru.sc: Switch to init_array.
* testsuite/ld-pru/ldi32.d: Update LDI32 test to conform to TI ABI.
* testsuite/ld-pru/norelax_ldi32-data.d: Likewise.
* testsuite/ld-pru/norelax_ldi32-dis.d: Likewise.
* testsuite/ld-pru/relax_ldi32-data.d: Likewise.
* testsuite/ld-pru/relax_ldi32-dis.d: Likewise.
commit 84f9f8c33021593afd79fc89cc419db44f7bc112
Author: Alan Modra <amodra@gmail.com>
Date: Wed May 9 15:50:29 2018 +0930
PR22069, Several instances of register accidentally spelled as regsiter
PR 22069
binutils/
* od-macho.c (dump_unwind_encoding_x86): Adjust for macro renaming.
cpu/ChangeLog
* or1kcommon.cpu (spr-reg-info): Typo fix.
include/ChangeLog
* mach-o/unwind.h (MACH_O_UNWIND_X86_64_RBP_FRAME_REGISTERS):
Rename from MACH_O_UNWIND_X86_64_RBP_FRAME_REGSITERS.
(MACH_O_UNWIND_X86_EBP_FRAME_REGISTERS): Rename from
MACH_O_UNWIND_X86_EBP_FRAME_REGSITERS.
opcodes/ChangeLog
* cr16-opc.c (cr16_instruction): Comment typo fix.
* hppa-dis.c (print_insn_hppa): Likewise.
sim/ppc/ChangeLog
* e500_registers.h: Comment typo fix.
* ppc-instructions (ppc_insn_mfcr): Likewise.
commit a7287b941e83afd99d8d1054730a9b28e4b57460
Author: Alan Modra <amodra@gmail.com>
Date: Wed May 9 15:18:29 2018 +0930
Regen ld potfile
* po/BLD-POTFILES.in: Regenerate.
commit b4560c7d159f598c82a64b214e30fd00d88aa1fb
Author: Alan Modra <amodra@gmail.com>
Date: Wed May 9 14:08:09 2018 +0930
PR23148, Heap buffer overflow in pe_print_edata
PR 23148
* peXXigen.c (pe_print_edata): Correct minimum size.
commit 53db9cf9fc363fd8ab3a9d97cdcb2ea1f639a243
Author: Alan Modra <amodra@gmail.com>
Date: Wed May 9 13:56:34 2018 +0930
PR23147, Heap buffer overflow in pe_print_idata
PR 23147
* peXXigen.c (pe_print_idata): Bound check hint_addr.
commit 937d92afc38858e21bf2a8dca1262959ee26d7f0
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed May 9 00:00:31 2018 +0000
Automatic date update in version.in
commit e6f372ba661bb0d8eec1e22a6dc1ad9937336e4d
Author: Jim Wilson <jimw@sifive.com>
Date: Tue May 8 15:46:19 2018 -0700
RISC-V: Add missing hint instructions from RV128I.
gas/
* testsuite/gas/riscv/c-zero-imm.d: Add more tests.
* testsuite/gas/riscv/c-zero-imm.s: Likewise.
* testsuite/gas/riscv/c-zero-reg.d: Fix typo in test. Add disabled
future test for RV128 support.
* testsuite/gas/riscv/c-zero-reg.s: Likewise.
include/
* opcode/riscv-opc.h (MATCH_C_SRLI64, MASK_C_SRLI64): New.
(MATCH_C_SRAI64, MASK_C_SRAI64): New.
(MATCH_C_SLLI64, MASK_C_SLLI64): New.
opcodes/
* riscv-opc.c (match_c_slli, match_slli_as_c_slli): New.
(match_c_slli64, match_srxi_as_c_srxi): New.
(riscv_opcodes) <slli, sll>: Use match_slli_as_c_slli.
<srli, srl, srai, sra>: Use match_srxi_as_c_srxi.
<c.slli, c.srli, c.srai>: Use match_s_slli.
<c.slli64, c.srli64, c.srai64>: New.
commit 7402fbcae1c282e27aafd5c5c90aca7eabbdf45c
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Tue May 8 16:45:02 2018 -0400
Define GNULIB_NAMESPACE in unittests/string_view-selftests.c
When building with x86_64-w64-mingw32-g++ (to test cross-compiling for
Windows), I get this error:
unittests/string_view-selftests.o: In function `selftests::string_view::inserters_2::test05(unsigned long long)':
/home/emaisin/src/binutils-gdb/gdb/unittests/basic_string_view/inserters/char/2.cc:60: undefined reference to `std::basic_ofstream<char, std::char_traits<char> >::rpl_close()'
This is caused by gnulib redefining "close" as "rpl_close", and
therefore messing up the declaration of basic_ofstream in the libstdc++
header. The solution would be to use gnulib namespaces [1]. Until we
use them across GDB, we can use them locally in files that are
problematic, like this one.
gdb/ChangeLog:
* unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
commit 10d980882987d8cd9b2e34651faceff29176148b
Author: Jim Wilson <jimw@sifive.com>
Date: Tue May 8 13:34:03 2018 -0700
RISC-V: New emulations to make path searches follow glibc ABI.
ld/
PR ld/22962
* Makefile.am (ALL_EMULATION_SOURCES): Add eelf32lriscv_ilp32f.c,
eelf32lriscv_ilp32.c, eelf64lriscv_lp64f.c, eelf64lriscv_lp64.c.
(eelf32lriscv_ilp32f.c, eelf32lriscv_ilp32.c): New build rules.
(eelf64lriscv_lp64f.c, eelf64lriscv_lp64.c): New build rules.
* Makefile.in: Regenerated.
* configure.tgt (riscv32*-*-linux*, riscv64*-*-linux*): New.
* ld/emulparams/elf32lriscv.sh: Set LIBPATH_SUFFIX.
* ld/emulparams/elf32lriscv_ilp32.sh: New.
* ld/emulparams/elf32lriscv_ilp32f.sh: New.
* ld/emulparams/elf64lriscv-defs.sh: Don't set LIBPATH_SUFFIX here.
* ld/emulparams/elf64lriscv.sh: Set LIBPATH_SUFFIX.
* ld/emulparams/elf64lriscv_lp64.sh: New.
* ld/emulparams/elf64lriscv_lp64f.sh: New.
* ld/genscripts.sh (append_to_lib_path): Change LIBPATH_SUFFIX test to
a for. Inside loop, change LIBPATH_SUFFIX uses to libpath_suffix.
(LIB_PATH): In LIB_PATH if, add loop for LIBPATH_SUFFIX, changes uses
inside loop to libpath_suffix.
commit 8ee22052f690c007556b97eed59f49350ece5ca9
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Thu May 3 17:46:14 2018 +0100
gdb/x86: Handle kernels using compact xsave format
For GNU/Linux on x86-64, if the target is using the xsave format for
passing the floating-point information from the inferior then there
currently exists a bug relating to the x87 control registers, and the
mxcsr register.
The xsave format allows different floating-point features to be lazily
enabled, a bit in the xsave format tells GDB which floating-point
features have been enabled, and which have not.
Currently in GDB, when reading the floating point state, we check the
xsave bit flags, if the feature is enabled then we read the feature
from the xsave buffer, and if the feature is not enabled, then we
supply the default value from within GDB.
Within GDB, when writing the floating point state, we first fetch the
xsave state from the target and then, for any feature that is not yet
enabled, we write the default values into the xsave buffer. Next we
compare the regcache value with the value in the xsave buffer, and, if
the value has changed we update the value in the xsave buffer, and
mark the feature enabled in the xsave bit flags.
The problem then, is that the x87 control registers were not following
this pattern. We assumed that these registers were always written out
by the kernel, and we always wrote them out to the xsave buffer (but
didn't enabled the feature). The result of this is that if the kernel
had not yet enabled the x87 feature then within GDB we would see
random values for the x87 floating point control registers, and if the
user tried to modify one of these register, that modification would be
lost.
Finally, the mxcsr register was also broken in the same way as the x87
control registers. The added complexity with this case is that the
mxcsr register is part of both the avx and sse floating point feature
set. When reading or writing this register we need to check that at
least one of these features is enabled.
This bug was present in native GDB, and within gdbserver. Both are
fixed with this commit.
gdb/ChangeLog:
* common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
(I387_MXCSR_INIT_VAL): New constant.
* amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
buffer if it was supplied by the inferior.
* i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
(i387_xsave_get_clear_bv): New function.
(i387_supply_xsave): Only read x87 control registers from the
xsave buffer if the feature is enabled, and the state will have
been written, otherwise, provide a suitable default.
(i387_collect_xsave): Pre-clear all registers in xsave buffer,
including x87 control registers. Update control registers if they
have changed from the default value, and mark features as enabled
as required.
* i387-tdep.h (i387_xsave_get_clear_bv): Declare.
gdb/gdbserver/ChangeLog:
* i387-fp.c (i387_cache_to_xsave): Only write x87 control
registers to the cache if their values have changed.
(i387_xsave_to_cache): Provide default values for x87 control
registers when these features are available, but disabled.
* regcache.c (supply_register_by_name_zeroed): New function.
* regcache.h (supply_register_by_name_zeroed): Declare new
function.
gdb/testsuite/ChangeLog:
* gdb.arch/amd64-init-x87-values.S: New file.
* gdb.arch/amd64-init-x87-values.exp: New file.
commit 886d542809fd73fba55ba72da1bd64ba50164222
Author: Alan Modra <amodra@gmail.com>
Date: Tue May 8 14:32:04 2018 +0930
PR23141, SIGSEGV in bfd_elf_set_group_contents
Another fuzzing fix. I think it's reasonable to simply strip out any
group section that is too weird for objcopy to handle.
PR 23141
* objcopy.c (is_strip_section): Strip groups without a valid
signature symbol.
commit f413a91378902aadbe4e338a6dc8f33f5f7148a0
Author: Alan Modra <amodra@gmail.com>
Date: Mon May 7 11:35:22 2018 +0930
Correct powerpc spe opcode lookup
Defining SPE2_OPCD_SEGS as 13 discounts the possibility that we'd
ever look up spe2_opcd_indices[14..16], which I think is possible.
Extend that array to size 16+1, using the macros we use to index the
array. Similarly use the index macros for PPC_OPCD_SEGS and
VLE_OPCD_SEGS.
* ppc-dis.c (PPC_OPCD_SEGS): Define using PPC_OP.
(VLE_OPCD_SEGS, SPE2_OPCD_SEGS): Similarly, using macros used to
partition opcode space for index lookup.
commit 7785df4880f3828db8cf1715038127e6b858a670
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Tue May 8 14:26:19 2018 +0200
watchpoint-unaligned.exp: Use skip_hw_watchpoint_tests
gdb/testsuite/ChangeLog
2018-05-08 Jan Kratochvil <jan.kratochvil@redhat.com>
* gdb.base/watchpoint-unaligned.exp: Use skip_hw_watchpoint_tests.
commit 968ae51bac6201d2c63e0c2b4405832dca0795f0
Author: Ulrich Weigand <ulrich.weigand@de.ibm.com>
Date: Tue May 8 14:13:12 2018 +0200
[spu] Fix "info spu event" output formatting
The formatting of the output of the "info spu event" command changed, causing
spurious test suite failures. Use phex instead of phex_nz to get back the
expected format, and fix emission of new line characters.
gdb/ChangeLog:
2018-05-08 Ulrich Weigand <uweigand@de.ibm.com>
* spu-tdep.c (info_spu_event_command): Fix output formatting.
commit 95a6d23566165208853a68d9cd3c6eedca840ec6
Author: Nick Clifton <nickc@redhat.com>
Date: Tue May 8 12:51:06 2018 +0100
Prevent a memory exhaustion failure when running objdump on a fuzzed input file with corrupt string and attribute sections.
PR 22809
* elf.c (bfd_elf_get_str_section): Check for an excessively large
string section.
* elf-attrs.c (_bfd_elf_parse_attributes): Issue an error if the
attribute section is larger than the size of the file.
commit a87a64780fde9dc8d1c3af8eda93fc1b878cd3cf
Author: Peter Bergner <bergner@vnet.ibm.com>
Date: Mon May 7 20:47:54 2018 -0500
Simplify VLE handling in print_insn_powerpc().
opcodes/
* ppc-dis.c (print_insn_powerpc) <insn_is_short>: Replace this...
<insn_length>: ...with this. Update usage.
Remove duplicate call to *info->memory_error_func.
commit c0a30a9f0ab48fd7cb0fed0cd6710fe478650a7f
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon May 7 09:30:02 2018 -0700
Enable Intel MOVDIRI, MOVDIR64B instructions
gas/
* config/tc-i386.c (cpu_arch): Add .movdir, .movdir64b.
(cpu_noarch): Likewise.
(process_suffix): Add check for register size.
* doc/c-i386.texi: Document movdiri, movdir64b.
* testsuite/gas/i386/i386.exp: Run MOVDIR{I,64B} tests.
* testsuite/gas/i386/movdir-intel.d: New file.
* testsuite/gas/i386/movdir.d: Likewise.
* testsuite/gas/i386/movdir.s: Likewise.
* testsuite/gas/i386/movdir64b-reg.s: Likewise.
* testsuite/gas/i386/movdir64b-reg.l: Likewise.
* testsuite/gas/i386/x86-64-movdir-intel.d: Likewise.
* testsuite/gas/i386/x86-64-movdir.d: Likewise.
* testsuite/gas/i386/x86-64-movdir.s: Likewise.
* testsuite/gas/i386/x86-64-movdir64b-reg.s: Likewise.
* testsuite/gas/i386/x86-64-movdir64b-reg.l: Likewise.
opcodes/
* i386-dis.c (Gva): New.
(enum): Add PREFIX_0F38F8, PREFIX_0F38F9,
MOD_0F38F8_PREFIX_2, MOD_0F38F9_PREFIX_0.
(prefix_table): New instructions (see prefix above).
(mod_table): New instructions (see prefix above).
(OP_G): Handle va_mode.
* i386-gen.c (cpu_flag_init): Add CPU_MOVDIRI_FLAGS,
CPU_MOVDIR64B_FLAGS.
(cpu_flags): Add CpuMOVDIRI and CpuMOVDIR64B.
* i386-opc.h (enum): Add CpuMOVDIRI, CpuMOVDIR64B.
(i386_cpu_flags): Add cpumovdiri and cpumovdir64b.
* i386-opc.tbl: Add movidir{i,64b}.
* i386-init.h: Regenerated.
* i386-tbl.h: Likewise.
commit 75c0a438994f00240ecd1baca3e3c11cc3b219e5
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon May 7 09:57:06 2018 -0700
x86: Replace AddrPrefixOp0 with AddrPrefixOpReg
This patch replaces AddrPrefixOp0 with AddrPrefixOpReg to indicate that
the size of register operand is controlled by the address size prefix.
This will be used by Intel MOVDIRI and MOVDIR64B instructions later.
gas/
* config/tc-i386.c (process_suffix): Check addrprefixopreg
instead of addrprefixop0.
opcodes/
* i386-gen.c (opcode_modifiers): Replace AddrPrefixOp0 with
AddrPrefixOpReg.
* i386-opc.h (AddrPrefixOp0): Renamed to ...
(AddrPrefixOpReg): This.
(i386_opcode_modifier): Rename addrprefixop0 to addrprefixopreg.
* i386-opc.tbl: Replace AddrPrefixOp0 with AddrPrefixOpReg.
commit aff689d36d66dd45a59008f3778d3d22e3cfcb9b
Author: Tom Tromey <tom@tromey.com>
Date: Sat Apr 21 12:00:29 2018 -0600
Add -Wduplicated-cond
This adds -Wduplicated-cond to warnings.m4. This caught one bug.
I tried adding -Wduplicated-branches as well, but it results in some
spurious failures from code like this in cgen.h:
#define CGEN_ATTR_TYPE(n) \
struct { unsigned int bool_; \
CGEN_ATTR_VALUE_TYPE nonbool[(n) ? (n) : 1]; }
This will trigger a warning if passed n==1, which seems like a
perfectly valid thing to do; and there were other issues like this as
well.
ChangeLog
2018-05-07 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
* warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
gdbserver/ChangeLog
2018-05-07 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
commit ce887586b48acd02080c36d5495891116f886e8e
Author: Tom Tromey <tom@tromey.com>
Date: Sat Apr 21 11:51:34 2018 -0600
Fix decoding of ARM VFP instructions
-Wduplicated-cond pointed out that arm_record_vfp_data_proc_insn
checks "opc1 == 0x0b" twice. I filed this a while ago as
PR tdep/20362.
Based on the ARM instruction manual at
https://www.scss.tcd.ie/~waldroj/3d1/arm_arm.pdf, I think the
instruction decoding in this function has two bugs.
First, opc1 is computed as:
opc1 = bits (arm_insn_r->arm_insn, 20, 23);
[...]
opc1 = opc1 & 0x04;
This means that tests like:
else if (opc1 == 0x01)
can never be true.
In the ARM manual, "opc1" corresponds to these bits:
name bit
r 20
q 21
D 22
p 23
... where the D bit is not used for VFP instruction decoding.
So, I believe this code should use ~0x04 instead.
Second, VDIV is recognized by the bits "pqrs" being equal to "1000".
This tranlates to opc1 == 0x08 -- not 0x0b. Note that pqrs==1001 is
an undefined encoding, which is probably why opc2 is not checked here;
this code doesn't seem to really deal with undefined encodings in
general, so I've left that as is.
I don't have an ARM machine or any reasonable way to test this.
ChangeLog
2018-05-07 Tom Tromey <tom@tromey.com>
PR tdep/20362:
* arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
bit. Use correct value for VDIV.
commit 2ceb7719f763b9e541a379d8ac7d53a72794fdd4
Author: Peter Bergner <bergner@vnet.ibm.com>
Date: Mon May 7 09:40:59 2018 -0500
Cleanup ppc code dealing with opcode dumps.
include/
* opcode/ppc.h (powerpc_num_opcodes): Change type to unsigned.
(vle_num_opcodes): Likewise.
(spe2_num_opcodes): Likewise.
opcodes/
* ppc-opc.c (powerpc_num_opcodes): Likewise.
(vle_num_opcodes): Likewise.
(spe2_num_opcodes): Likewise.
* ppc-dis.c (disassemble_init_powerpc) <powerpc_opcd_indices>: Rewrite
initialization loop.
(disassemble_init_powerpc) <vle_opcd_indices>: Likewise.
(disassemble_init_powerpc) <spe2_opcd_indices>: Likewise. Initialize
only once.
gas/
* config/tc-ppc.c (ppc_setup_opcodes) <powerpc_opcodes>: Rewrite code
to dump the entire opcode table.
(ppc_setup_opcodes) <spe2_opcodes>: Likewise.
(ppc_setup_opcodes) <vle_opcodes>: Likewise. Fix calculation of
opcode index.
commit ce4ec1a9b6c442a9feefa18dd8734372a718665c
Author: Alan Modra <amodra@gmail.com>
Date: Mon May 7 22:41:47 2018 +0930
Bug 23142, SIGSEGV in is_strip_section
PR 23142
* objcopy.c (group_signature): Don't accept groups that use a
symbol table other than the one we've read.
commit 7bd8862c3ad0ee291d27837ae3cd30288a00b922
Author: Alan Modra <amodra@gmail.com>
Date: Mon May 7 11:36:07 2018 +0930
Replace uses of strncmp with memcmp
Avoids gcc pr85623 for these calls.
* cofflink.c (_bfd_coff_link_input_bfd): Use memcmp rather than
strncmp when checking for ".bf" special symbol.
* prXXigen.c (_bfd_XXi_swap_scnhdr_out): Make pe_required_section_flags
section name a char array, remove sentinal known_sections entry,
and adjust loop over known_sections to suit. Use memcmp rather
than strncmp.
commit fe5bc53b24ea5b61b1ff280b737db5ed14c00142
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sun May 6 19:16:47 2018 -0700
gas/i386/xmmhi32.d: Also allow dir32 relocation
Also allow dir32 relocation to support mingw targets.
* testsuite/gas/i386/xmmhi32.d: Also allow dir32 relocation.
commit 57930ca905fa38203fb62d8786bab4fc6cf42a44
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sun May 6 19:09:12 2018 -0700
i386: Append ".p2align 4,0" to gas tests
Append ".p2align 4,0" to i386 assembler tests to support mingw targets.
* testsuite/gas/i386/avx512f-plain.s: Append ".p2align 4,0".
* testsuite/gas/i386/avx512vl-plain.s: Likewise.
* testsuite/gas/i386/bnd.s: Likewise.
* testsuite/gas/i386/stN.s: Likewise.
* testsuite/gas/i386/avx512f-plain.l: Updated.
* testsuite/gas/i386/avx512vl-plain.l: Likewise.
* testsuite/gas/i386/bnd.l: Likewise.
* testsuite/gas/i386/stN.l: Likewise.
commit 6ec91bb19f9b4dc97f11c695f193990732f70192
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon May 7 00:00:38 2018 +0000
Automatic date update in version.in
commit 82cd47d5d1d9b90fb4c74a3119cb39472d36b11c
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun May 6 00:01:01 2018 +0000
Automatic date update in version.in
commit 85e26832a019ffc00dad9f1eb7e670b85c8eca7f
Author: Tom Tromey <tom@tromey.com>
Date: Thu Aug 18 10:56:11 2016 -0600
Add -Wimplicit-fallthrough
This adds -Wimplicit-fallthrough to the set of default warnings.
2018-05-04 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
* warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
gdbserver/ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
commit 449b1ac7ad5f3da9ef689c91144aa057cb253df6
Author: Tom Tromey <tom@tromey.com>
Date: Thu Apr 5 15:37:56 2018 -0600
Add a missing break in record_linux_system_call
This adds a "break" at the end of the RECORD_SYS_RECVFROM case in
record_linux_system_call. This seemed correct to me.
2018-05-04 Tom Tromey <tom@tromey.com>
* linux-record.c (record_linux_system_call) <case
RECORD_SYS_RECVFROM>: Add "break".
commit 15c9ffd6977a93869243dce04988cbaa8340bb00
Author: Tom Tromey <tom@tromey.com>
Date: Thu Apr 19 14:48:51 2018 -0600
Add missing "breaks"
This adds a "break" to a couple of spots where it was erroneously
omitted. I think these are the two (potential) real bugs caught by
this series.
2018-05-04 Tom Tromey <tom@tromey.com>
* mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
Add missing "break".
* mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
Add missing "break".
commit e3829d13f6d0615f663d2a85ef4281a4365a947c
Author: Tom Tromey <tom@tromey.com>
Date: Thu Apr 5 16:09:29 2018 -0600
Add two fall-through comments in rs6000-tdep.c
This adds two fall-through comments in rs6000-tdep.c. I looked at the
PPC instruction manual and convinced myself that this was correct.
And, this isn't a semantic change. However, close review would still
be good.
2018-05-04 Tom Tromey <tom@tromey.com>
* rs6000-tdep.c (ppc_process_record_op4)
(ppc_process_record_op63): Add fall-through comment.
commit da0e15638de59238ad811cdc3cc1d1a7803829c7
Author: Tom Tromey <tom@tromey.com>
Date: Thu Apr 5 16:01:36 2018 -0600
Add fall-through comment to i386-tdep.c
This adds a fall-through comment in i386-tdep.c. I was not sure what
to do here, so I elected to preserve the status quo. In review, John
Baldwin pointed out that: "I believe this is correct based on the diff
that added the special cases for xgetbv and xsetbv as previously ldgt
and lidt were treated the same".
gdb/ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
* i386-tdep.c (i386_process_record): Add fall-through comment.
commit 0019cd49ca954c03737cef3a8ee60c233d081d35
Author: Tom Tromey <tom@tromey.com>
Date: Thu Apr 5 15:39:57 2018 -0600
Add a fall-through comment to stabsread.c
This adds a fall-through comment to stabsread.c. I skimmed the stabs
manual a bit and it seems that 'p' and 'P' are similar enough that
this makes sense. Also, stabs is mostly deprecated, and the code has
been this way for a long time, so it seemed safest to keep the status
quo.
ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
* stabsread.c (define_symbol) <case 'p'>: Add fall-through
comment.
commit 565e0edacc48c86adfb12515ed6911c08c1f64d9
Author: Tom Tromey <tom@tromey.com>
Date: Tue Sep 27 11:28:18 2016 -0600
Fix "obvious" fall-through warnings
This patch fixes the subset of -Wimplicit-fallthrough warnings that I
considered obvious. In most cases it was obvious from context that
falling through was desired; here I added the appropriate comment. In
a couple of cases it seemed clear that a "break" was missing.
ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
* riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
* utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
* eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
comment.
* d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
comment.
* coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
comment.
commit 621846f4e258167be2147894e013c85e42de1447
Author: Tom Tromey <tom@tromey.com>
Date: Tue Sep 27 11:23:49 2016 -0600
Add missing ATTRIBUTE_NORETURNs
This patch adds a missing ATTRIBUTE_NORETURN. This lets
-Wimplicit-fallthrough recognize that a given case does not fall
through.
ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
* dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
commit 86a73007627a3c52d1c624ed430ac0e74fb8cc3e
Author: Tom Tromey <tom@tromey.com>
Date: Tue Sep 27 11:18:04 2016 -0600
Fix "fall through" comments
This patch updates existing "fall through" comments so that they can
be recognized by gcc's -Wimplicit-fallthrough comment-parsing
heuristic.
ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
* s390-tdep.c (s390_process_record): Fix fall-through comments.
* xcoffread.c (scan_xcoff_symtab): Move comment later.
* symfile.c (section_is_mapped): Fix fall-through comment.
* stabsread.c (define_symbol, read_member_functions): Fix
fall-through comment.
* s390-linux-tdep.c (s390_process_record): Fix fall-through
comment.
* remote.c (remote_wait_as): Fix fall-through comment.
* p-exp.y (yylex): Fix fall-through comment.
* nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
comment.
* msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
* mdebugread.c (parse_partial_symbols): Fix fall-through comment.
* jv-exp.y (yylex): Fix fall-through comment.
* go-exp.y (lex_one_token): Fix fall-through comment.
* gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
fall-through comment.
* f-exp.y (yylex): Fix fall-through comment.
* dwarf2read.c (process_die): Fix fall-through comments.
* dbxread.c (process_one_symbol): Fix fall-through comment.
* d-exp.y (lex_one_token): Fix fall-through comment.
* cp-name-parser.y (yylex): Fix fall-through comment.
* coffread.c (coff_symtab_read): Fix fall-through comment.
* c-exp.y (lex_one_token): Fix fall-through comment.
* arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
comment.
* arch/arm.c (arm_instruction_changes_pc): Fix fall-through
comment.
commit 4e6fe7477a4e9260777cbaa01f70df7ae5f063bb
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat May 5 00:00:43 2018 +0000
Automatic date update in version.in
commit 56bcdbea2bed27ea83bf0e4fe472ab744b4beaa1
Author: Tom Tromey <tom@tromey.com>
Date: Wed Apr 18 20:10:43 2018 -0600
Let gdb.execute handle multi-line commands
This changes the Python API so that gdb.execute can now handle
multi-line commands, like "commands" or "define".
ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
PR python/22730:
* NEWS: Mention gdb.execute change.
* gdbcmd.h (execute_control_command): Don't declare.
* python/python.c (execute_gdb_command): Use read_command_lines_1,
execute_control_commands, execute_control_commands_to_string.
* cli/cli-script.h (execute_control_commands)
(execute_control_commands_to_string): Declare.
(execute_control_command): Add from_tty parameter.
* cli/cli-script.c (execute_control_commands)
(execute_control_commands_to_string): New functions.
(execute_user_command): Use execute_control_commands.
(execute_control_command_1): Add "from_tty" parameter. Update.
(execute_control_command): Likewise.
testsuite/ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
PR python/22730:
* gdb.python/python.exp: Test multi-line execute.
commit a913fffbdee21fdd50e8de0596358be425775678
Author: Tom Tromey <tom@tromey.com>
Date: Wed Apr 18 17:37:56 2018 -0600
Allow breakpoint commands to be set from Python
This changes the Python API so that breakpoint commands can be set by
writing to the "commands" attribute.
ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
PR python/22731:
* NEWS: Mention that breakpoint commands are writable.
* python/py-breakpoint.c (bppy_set_commands): New function.
(breakpoint_object_getset) <"commands">: Use it.
doc/ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
PR python/22731:
* python.texi (Breakpoints In Python): Mention that "commands" is
writable.
testsuite/ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
PR python/22731:
* gdb.python/py-breakpoint.exp: Test setting breakpoint commands.
commit 60b3cef2e49ba72dea55181a8ad0cb8dbf3f8a5b
Author: Tom Tromey <tom@tromey.com>
Date: Wed Apr 18 16:53:07 2018 -0600
Use function_view in cli-script.c
This changes some functions in cli-script.c to use function_view
rather than a function pointer and closure argument. This simplifies
the code a bit and is useful in a subsequent patch.
ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
* tracepoint.c (actions_command): Update.
* mi/mi-cmd-break.c (mi_command_line_array)
(mi_command_line_array_cnt, mi_command_line_array_ptr)
(mi_read_next_line): Remove.
(mi_cmd_break_commands): Update.
* cli/cli-script.h (read_command_lines, read_command_lines_1): Use
function_view.
* cli/cli-script.c (get_command_line): Update.
(process_next_line): Use function_view. Constify.
(recurse_read_control_structure, read_command_lines)
(read_command_lines_1): Change argument types to function_view.
(do_define_command, document_command): Update.
* breakpoint.h (check_tracepoint_command): Don't declare.
* breakpoint.c (check_tracepoint_command): Remove.
(commands_command_1, create_tracepoint_from_upload): Update.
commit 7a2c85f25977ff9b11728ba85b1417538e22c246
Author: Tom Tromey <tom@tromey.com>
Date: Wed Apr 18 16:10:59 2018 -0600
Allow defining a user command inside a user command
PR gdb/11750 concerns defining a command inside a user commnad, like:
define outer
define inner
echo hi\n
end
end
This patch adds this capability to gdb.
ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
PR gdb/11750:
* cli/cli-script.h (enum command_control_type) <define_control>:
New constant.
* cli/cli-script.c (multi_line_command_p): Handle define_control.
(build_command_line, execute_control_command_1)
(process_next_line): Likewise.
(do_define_command): New function, extracted from define_command.
(define_command): Use it.
testsuite/ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
PR gdb/11750:
* gdb.base/define.exp: Test defining a user command inside a user
command.
* gdb.base/commands.exp (define_if_without_arg_test): Test "define".
commit 295dc222a712b700d9afa7e2462a68b866b120e1
Author: Tom Tromey <tom@tromey.com>
Date: Wed Apr 18 15:59:04 2018 -0600
Constify prompt argument to read_command_lines
The prompt argument to read_command_lines can be const. This patch
makes this change, and also removes some fixed-sized buffers in favor
of using string_printf.
ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
* tracepoint.c (actions_command): Update.
* cli/cli-script.h (read_command_lines): Update.
* cli/cli-script.c (read_command_lines): Constify prompt_arg.
(MAX_TMPBUF): Remove define.
(define_command): Use string_printf.
(document_command): Likewise.
* breakpoint.c (commands_command_1): Update.
commit 1263a9d5f1c6198cdb4e73bafe86ca451d35684d
Author: Tom Tromey <tom@tromey.com>
Date: Wed Apr 18 15:40:57 2018 -0600
Make print_command_trace varargs
I noticed some code in execute_control_command_1 that could be
simplified by making print_command_trace a printf-like function. This
patch makes this change.
ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
* top.c (execute_command): Update.
* cli/cli-script.h (print_command_lines): Now varargs.
* cli/cli-script.c (print_command_lines): Now varargs.
(execute_control_command_1) <case while_control, case if_control>:
Update.
commit 12973681f5d46a2407a8dc97c3352fa6c9971716
Author: Tom Tromey <tom@tromey.com>
Date: Mon Apr 16 23:13:18 2018 -0600
Use counted_command_line everywhere
Currently command lines are reference counted using shared_ptr only
when attached to breakpoints. This patch changes gdb to use
shared_ptr in commands as well. This allows for the removal of
copy_command_lines.
Note that the change to execute_user_command explicitly makes a new
reference to the command line. This will be used in a later patch.
This simplifies struct command_line based on the observation that a
given command can have at most two child bodies: an "if" can have both
"then" and "else" parts. Perhaps the names I've chosen for the
replacements here are not very good -- your input requested.
ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
* tracepoint.c (all_tracepoint_actions): Rename from
all_tracepoint_actions_and_cleanup. Change return type.
(actions_command, encode_actions_1, encode_actions)
(trace_dump_actions, tdump_command): Update.
* remote.c (remote_download_command_source): Update.
* python/python.c (gdbpy_eval_from_control_command)
(python_command, python_interactive_command): Update.
* mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
* guile/guile.c (guile_command)
(gdbscm_eval_from_control_command, guile_command): Update.
* compile/compile.c (compile_code_command)
(compile_print_command, compile_to_object): Update.
* cli/cli-script.h (struct command_lines_deleter): New.
(counted_command_line): New typedef.
(struct command_line): Add constructor, destructor.
<body_list>: Remove.
<body_list_0, body_list_1>: New members.
(command_line_up): Remove typedef.
(read_command_lines, read_command_lines_1, get_command_line):
Update.
(copy_command_lines): Don't declare.
* cli/cli-script.c (build_command_line): Use "new".
(get_command_line): Return counted_command_line.
(print_command_lines, execute_user_command)
(execute_control_command_1, while_command, if_command): Update.
(realloc_body_list): Remove.
(process_next_line, recurse_read_control_structure): Update.
(read_command_lines, read_command_lines_1): Return counted_command_line.
(free_command_lines): Use "delete".
(copy_command_lines): Remove.
(define_command, document_command, show_user_1): Update.
* cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
a counted_command_line.
* breakpoint.h (counted_command_line): Remove typedef.
(breakpoint_set_commands): Update.
* breakpoint.c (check_no_tracepoint_commands)
(validate_commands_for_breakpoint): Update.
(breakpoint_set_commands): Change commands to be a
counted_command_line.
(commands_command_1, update_dprintf_command_list)
(create_tracepoint_from_upload): Update.
commit e2fc72e2c594968084b936bc5dc4702a2c0694f8
Author: Tom Tromey <tom@tromey.com>
Date: Mon Apr 16 21:09:48 2018 -0600
Allocate cmd_list_element with new
This adds a constructor and destructor to cmd_list_element and changes
it to be allocated with new. This will be useful in a subsequent
patch.
ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
* cli/cli-decode.h (cmd_list_element): New constructor.
(~cmd_list_element): New destructor.
(struct cmd_list_element): Add initializers.
* cli/cli-decode.c (do_add_cmd): Use "new".
(delete_cmd): Use "delete".
commit a3b60e4588606354b93508a0008a5ca04b68fad8
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Fri May 4 22:22:04 2018 +0200
aarch64: PR 19806: watchpoints: false negatives + PR 20207 contiguous ones
Some unaligned watchpoints were currently missed.
On old kernels as specified in
kernel RFE: aarch64: ptrace: BAS: Support any contiguous range (edit)
https://sourceware.org/bugzilla/show_bug.cgi?id=20207
after this patch some other unaligned watchpoints will get reported as false
positives.
With new kernels all the watchpoints should work exactly.
There may be a regresion that it now less merges watchpoints so that with
multiple overlapping watchpoints it may run out of the 4 hardware watchpoint
registers. But as discussed in the original thread GDB needs some generic
watchpoints merging framework to be used by all the target specific code.
Even current FSF GDB code does not merge it perfectly. Also with the more
precise watchpoints one can technically merge them less. And I do not think
it matters too much to improve mergeability only for old kernels.
Still even on new kernels some better merging logic would make sense.
There remains one issue:
kernel-4.15.14-300.fc27.armv7hl
FAIL: gdb.base/watchpoint-unaligned.exp: continue
FAIL: gdb.base/watchpoint-unaligned.exp: continue
(gdb) continue
Continuing.
Unexpected error setting watchpoint: Invalid argument.
(gdb) FAIL: gdb.base/watchpoint-unaligned.exp: continue
But that looks as a kernel bug to me.
(1) It is not a regression by this patch.
(2) It is unrelated to this patch.
gdb/ChangeLog
2018-05-04 Jan Kratochvil <jan.kratochvil@redhat.com>
Pedro Alves <palves@redhat.com>
PR breakpoints/19806 and support for PR external/20207.
* NEWS: Mention Aarch64 watchpoint improvements.
* aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
watchpoints and PR external/20207 watchpoints.
* nat/aarch64-linux-hw-point.c
(kernel_supports_any_contiguous_range): New.
(aarch64_watchpoint_offset): New.
(aarch64_watchpoint_length): Support PR external/20207 watchpoints.
(aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
(aarch64_point_is_aligned): Support PR external/20207 watchpoints.
(aarch64_align_watchpoint): New parameters aligned_offset_p and
next_addr_orig_p. Support PR external/20207 watchpoints.
(aarch64_downgrade_regs): New.
(aarch64_dr_state_insert_one_point): New parameters offset and
addr_orig.
(aarch64_dr_state_remove_one_point): Likewise.
(aarch64_handle_breakpoint): Update caller.
(aarch64_handle_aligned_watchpoint): Likewise.
(aarch64_handle_unaligned_watchpoint): Support addr_orig and
aligned_offset.
(aarch64_linux_set_debug_regs): Remove const from state. Call
aarch64_downgrade_regs.
(aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
* nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
(DR_CONTROL_MASK): ... this.
(struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
(unsigned int aarch64_watchpoint_offset): New prototype.
(aarch64_linux_set_debug_regs): Remove const from state.
* utils.c (align_up, align_down): Move to ...
* common/common-utils.c (align_up, align_down): ... here.
* utils.h (align_up, align_down): Move to ...
* common/common-utils.h (align_up, align_down): ... here.
gdb/gdbserver/ChangeLog
2018-05-04 Jan Kratochvil <jan.kratochvil@redhat.com>
Pedro Alves <palves@redhat.com>
* linux-aarch64-low.c (aarch64_stopped_data_address):
Likewise.
gdb/testsuite/ChangeLog
2018-05-04 Jan Kratochvil <jan.kratochvil@redhat.com>
Pedro Alves <palves@redhat.com>
PR breakpoints/19806 and support for PR external/20207.
* gdb.base/watchpoint-unaligned.c: New file.
* gdb.base/watchpoint-unaligned.exp: New file.
commit 45fe4a03b495f778013f0a0deb06512913e1955b
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Fri May 4 12:54:10 2018 +0100
gdb: Make test names unique in gdb.base/maint.exp
Add prefixes or suffixes to some test names to make them unique.
Replace a send_gdb/gdb_expect with a gdb_test, and make the test name
unique.
Remove test of 'help maint' as this is already covered by a later call
to test_prefix_command_help.
Removed test of 'help maint info' and add a new call to
test_prefix_command_help instead.
gdb/testsuite/ChangeLog:
* gdb.base/maint.exp: Make test names unique, use
test_prefix_command_help to test 'help maint info', and remove
repeated test of 'help maint'.
commit 05bc7456b872b81044d3b0e7c4d74c1de57217fd
Author: Joel Brobecker <brobecker@adacore.com>
Date: Fri May 4 13:33:19 2018 -0500
(SPARC/LEON) fix incorrect array return value printed by "finish"
Consider the code in the gdb.ada/array_return.exp testcase, which
defines a function returning an array of 2 integers:
type Data_Small is array (1 .. 2) of Integer;
function Create_Small return Data_Small;
When doing a "finish" from inside function Create_Small, we expect
GDB to tell us that the return value was "(1, 1)". However, it currently
prints the wrong value:
(gdb) finish
Run till exit from #0 pck.create_small () at /[...]/pck.adb:5
p () at /[...]/p.adb:10
10 Large := Create_Large;
Value returned is $1 = (0, 0)
This is a regression which I traced back to the following commit...
| commit 1933fd8ee01ad2e74a9c6341bc40f54962a8f889
| Date: Fri May 19 03:06:19 2017 -0700
| Subject: gdb: fix TYPE_CODE_ARRAY handling in sparc targets
... which, despite what the subject says, is not really about
TYPE_CODE_ARRAY handling, which is a bit of an implementation detail,
but about the GNU vectors extension.
The author of the patch equated TYPE_CODE_ARRAY with vectors, which
is not correct. Vectors are TYPE_CODE_ARRAY types with the TYPE_VECTOR
flag set. So at the very minimum, the patch should have been checking
for both TYPE_CODE_ARRAY and TYPE_VECTOR.
But, that's not the only thing that did not seem right to me. When
looking at the ABI, and at the summary of the implementation in GCC
of the calling conventions for that architecture:
size argument return value
small integer <4 int. reg. int. reg.
word 4 int. reg. int. reg.
double word 8 int. reg. int. reg.
_Complex small integer <8 int. reg. int. reg.
_Complex word 8 int. reg. int. reg.
_Complex double word 16 memory int. reg.
vector integer <=8 int. reg. FP reg.
vector integer >8 memory memory
float 4 int. reg. FP reg.
double 8 int. reg. FP reg.
long double 16 memory memory
_Complex float 8 memory FP reg.
_Complex double 16 memory FP reg.
_Complex long double 32 memory FP reg.
vector float any memory memory
aggregate any memory memory
The nice thing about the patch above is that it nicely factorized
the code that determines how arguments are passed/returns. The bad
news is that the implementation, particularly for the handling of
arrays and vectors, doesn't seem to match the summary above. Hence,
the regression we observed.
So what I did was review and re-implement some of the predicate functions
according to the summary above. Because dejagnu crashes all our Solaris
machines real bad, I can't run the dejagnu testsuite there. So what I did
was test the patch with AdaCore's testsuite against leon3-elf, no
regression. I verified that this fixes the regression above while
at the same time still passing gdb.base/gnu_vector.exp (I transposed
that testcase to our testsuite), which is the testcase that was cited
in the commit above as seeing some FAIL->PASS improvements.
This patch also removes one assertion...
gdb_assert (sparc_integral_or_pointer_p (type)
|| (TYPE_CODE (type) == TYPE_CODE_ARRAY && len <= 8));
... because that assertion is really the "negative" of the other conditions
written in the same "if, else if, else [assert]" block in this function.
To me, this assertion forces us to maintain two versions of the same code,
and is an unnecessary burden. In particular, the above is not the
correct condition, and the ABI summary table above shows that we need
a more complex condition to describe the situations where we expect
arguments to be passed by register.
gdb/ChangeLog:
* sparc-tdep.c (sparc_structure_return_p): Re-implement to
match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
(sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
Re-implement to match the ABI as summarized in GCC's
gcc/config/sparc/sparc.c. All callers updated.
(sparc32_store_arguments): Remove assertion.
commit 2f433492bd9dd3af10aab8d92dc0bfbf8ff6c5e8
Author: Tom Tromey <tom@tromey.com>
Date: Fri Apr 27 16:04:13 2018 -0600
Minor cleanups in printcmd.c
This changes decode_format to use skip_spaces, and changes printcmd.c
not to include tui.h, which apparently is not needed.
2018-05-04 Tom Tromey <tom@tromey.com>
* printcmd.c: Don't include tui.h.
(decode_format): Use skip_spaces.
commit 9be2ae8fc6b908746d9d7ebaf77aec8abba5dd2c
Author: Tom Tromey <tom@tromey.com>
Date: Fri Apr 27 15:52:44 2018 -0600
Use previous count when 'x' command is repeated
About the 'x' command, the manual says:
If you use <RET> to repeat the 'x' command, the repeat count N is
used again; the other arguments default as for successive uses of
'x'.
However, PR gdb/22619 points out that this does not work.
This patch fixes the problem.
ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
PR gdb/22619:
* printcmd.c (last_count): New global.
(x_command): Use saved count when repeating.
testsuite/ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
PR gdb/22619:
* gdb.base/long_long.exp (gdb_test_long_long): Add test for repeat
behavior.
commit f0b3976bdcd29e308bed185630a24806037a717c
Author: Tom Tromey <tom@tromey.com>
Date: Thu May 3 00:18:20 2018 -0600
Remove do_closedir_cleanup
This removes both copies of do_closedir_cleanup in favor of a new
unique_ptr specialization.
Tested by the buildbot, though I'm not sure that these code paths are
exercised there.
ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
* nto-procfs.c (do_closedir_cleanup): Remove.
(procfs_pidlist): Use gdb_dir_up.
* procfs.c (do_closedir_cleanup): Remove.
(proc_update_threads): Use gdb_dir_up.
* common/filestuff.h (struct gdb_dir_deleter): New.
(gdb_dir_up): New typedef.
commit 862d101ada6b6e8496e545c0bcd801cf8b9a46c1
Author: Tom Tromey <tom@tromey.com>
Date: Fri Nov 10 14:42:35 2017 -0700
Remove cleanup from print_mention_exception
This removes a cleanup from print_mention_exception by using
string_printf.
ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
* ada-lang.c (print_mention_exception): Use std::string.
commit cb7de75eb33b2ceda391c903cac5e5ed63933b99
Author: Tom Tromey <tom@tromey.com>
Date: Thu May 3 10:23:55 2018 -0600
Return std::string from ada_exception_catchpoint_cond_string
This changes ada_exception_catchpoint_cond_string to return a
std::string, allowing for the removal of a cleanup in
create_excep_cond_exprs.
ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
* ada-lang.c (create_excep_cond_exprs): Update.
(ada_exception_catchpoint_cond_string): Use std::string.
commit 49d83361cda4614f571f46c6bc0464092daf3dc9
Author: Tom Tromey <tom@tromey.com>
Date: Fri Nov 10 14:39:31 2017 -0700
Remove cleanup from old_renaming_is_invisible
This removes a cleanup from ada-lang.c by changing xget_renaming_scope
to return a std::string.
ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
* ada-lang.c (xget_renaming_scope): Return std::string.
(old_renaming_is_invisible): Update.
commit ade72a3453670d518ba14fe47bc7a64df81ce766
Author: Tom Tromey <tom@tromey.com>
Date: Fri May 4 10:17:52 2018 -0600
Use gdb_bfd_ref_ptr in target_bfd
I noticed that target_bfd was using manual reference counting for the
BFD it held. This patch changes it to use gdb_bfd_ref_ptr instead.
Tested by the buildbot.
ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
* bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
(target_bfd::target_bfd, target_bfd::~target_bfd): Update.
commit 2be4d7f0e0f733ba0acc2120fdff62bd83fb8b3a
Author: Ulrich Weigand <ulrich.weigand@de.ibm.com>
Date: Fri May 4 19:20:18 2018 +0200
[spu] Fix build break
gdb/ChangeLog:
2018-05-04 Ulrich Weigand <uweigand@de.ibm.com>
* spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
commit 69b6ecb049143078f43a9372b68ac90a4601dc8c
Author: Tom Tromey <tom@tromey.com>
Date: Thu May 3 00:04:11 2018 -0600
Remove a cleanup from remote.c
This removes a cleanup from remote.c by using std::string to construct
the qSupported packet.
Tested by the buildbot.
ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
* remote.c (remote_query_supported_append): Change type.
(remote_check_symbols): Update.
commit 11859c310cd6b6fd892337a5ee1d36921e6d08d8
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Mon Apr 9 00:18:34 2018 +0100
gdb/testsuite: Handle targets with lots of registers
In gdb.base/maint.exp a test calls 'maint print registers'. If the
target has lots of registers this may overflow expect's buffers,
causing the test to fail.
After this commit we process the output line at a time until we get back
to the GDB prompt, this should prevent buffer overrun while still
testing that the command works as required.
gdb/testsuite/ChangeLog:
* gdb.base/maint.exp: Process output from 'maint print registers'
line at a time.
commit bf27f0e2c76839af8524e053cca271934150a90c
Author: Paul Pluzhnikov <ppluzhnikov@google.com>
Date: Fri May 4 10:07:58 2018 -0400
configure uses incorrect link order when testing libpython
References:
https://stackoverflow.com/a/49868387
https://sourceware.org/bugzilla/show_bug.cgi?id=11420
Configure uses "gcc -o conftest -g ... conftest.c -ldl -lncurses -lm -ldl
... -lpthread ... -lpython2.7" when deciding whether give libpython is
usable.
That of course is the wrong link order, and only works for shared libraries
(mostly by accident), and only on some systems.
gdb/ChangeLog:
PR gdb/11420
* configure.ac: Prepend libpython.
* python/python-config.py: Likewise.
* configure: Regenerate.
commit 089a949083dcd5c679376033e975d54093007408
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Thu Mar 15 19:41:50 2018 +0000
gdb/testsuite: Fix broken regexp in gdbstub case
When $use_gdb_stub is true then, when we start an MI target there's a
regexp to match GDB's startup pattern. Unfortunately the pattern is
broken, and we're also missing a timeout case in the match list (which
would have helped point out that the regexp was broken).
The changes to the regexp are:
1. Remove '${run_match}' prefix, the issued command doesn't include
'${run_prefix}' so expecting '${run_match}' is wrong.
2. Replaced '\\n' with '\\\\n' in order to match literal '\n' in
GDBs output (that is, match a backslash followed by 'n', not a
newline character).
3. Replaced a '.' (matching any character) with '\.' to match a '.'
and moved the '\.' into the correct place in the regexp.
4. Replaced '\r\n' with '[\r\n]+' to match the end of a line. This
change isn't esential, but matches the other end of line patterns
within this regexp.
Here's an example of the output that the regexp should match taken
from a testfile log, the first line is the command sent to GDB, and
the remaining lines are the response from GDB:
jump *_start
&"jump *_start\n"
~"Continuing at 0x10074.\n"
^running
*running,thread-id="all"
(gdb)
gdb/testsuite/ChangeLog:
* lib/mi-support.exp (mi_run_cmd_full): Fix regexp and add a
timeout.
commit 602f16570454a1597c2af28af66852133432d1f2
Author: Alan Modra <amodra@gmail.com>
Date: Fri Apr 27 09:42:11 2018 +0930
-Wstringop-truncation warnings
This patch is aimed at silencing gcc8 -Wstringop-truncation warnings.
Unfortunately adding __attribute__ ((__nonstring)) doesn't work in a
number of the places patched here, (see
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85643) so if you have
recent glibc headers installed you'll need to configure binutils with
--disable-werror to compile using gcc8 or gcc9.
include/
* ansidecl.h: Import from gcc.
* coff/internal.h (struct internal_scnhdr): Add ATTRIBUTE_NONSTRING
to s_name.
(struct internal_syment): Add ATTRIBUTE_NONSTRING to _n_name.
bfd/
* elf-linux-core.h (struct elf_external_linux_prpsinfo32_ugid32),
(struct elf_external_linux_prpsinfo32_ugid16),
(struct elf_external_linux_prpsinfo64_ugid32),
(struct elf_external_linux_prpsinfo64_ugid16): Add ATTRIBUTE_NONSTRING
to pr_fname and pr_psargs fields. Remove GCC diagnostic pragmas.
Move comment to..
* elf.c (elfcore_write_prpsinfo): ..here. Indent nested preprocessor
directives.
* elf32-arm.c (elf32_arm_nabi_write_core_note): Add ATTRIBUTE_NONSTRING
to data.
* elf32-ppc.c (ppc_elf_write_core_note): Likewise.
* elf32-s390.c (elf_s390_write_core_note): Likewise.
* elf64-s390.c (elf_s390_write_core_note): Likewise.
* elfxx-aarch64.c (_bfd_aarch64_elf_write_core_note): Likewise.
* elf64-x86-64.c (elf_x86_64_write_core_note): Add GCC diagnostic
pragmas.
* peXXigen.c (_bfd_XXi_swap_scnhdr_out): Use strnlen to avoid
false positive gcc-8 warning.
gas/
* config/obj-evax.c (shorten_identifier): Use memcpy in place
of strncpy.
* config/obj-macho.c (obj_mach_o_make_or_get_sect): Ensure
segname and sectname fields are NUL terminated.
commit a27ca19c95ad3ebc5bd73f072facdd71b5a976ad
Author: Tulio Magno Quites Machado Filho <tuliom@linux.ibm.com>
Date: Wed May 2 19:18:44 2018 -0300
ppc: Fix warning messages when IBM and IEEE long double are mixed
When IBM long double is used, the .gnu_attribute 4 is set to 1 | (1 *
4). IEEE long double sets the same .gnu_attribute to 1 | (3 * 4).
* elf32-ppc.c (_bfd_elf_ppc_merge_fp_attributes): Fix the order
of arguments when warning about different long double types.
commit d1e9de16dfb8237307e12945be5a1010e91a4dd2
Author: Jim Wilson <jimw@sifive.com>
Date: Thu May 3 17:25:31 2018 -0700
Fix typo in Makefile.am to make it agree with Makefile.in.
ld/
* Makefile.am (earmelfb_linux_fdpiceabi.c): Fix typo in dependencies.
commit b5e2df0d1ab9d62dc6708fcad94c6f0649f7892d
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri May 4 00:00:30 2018 +0000
Automatic date update in version.in
commit 4ea17de8f1985273215b515d48fbd59b2ced3cd1
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Thu May 3 17:29:14 2018 -0400
Use flex's -t option instead of --stdout
As reported in
https://sourceware.org/ml/gdb-patches/2018-05/msg00042.html
some old versions of flex (2.5.4) don't support the --stdout switch.
Use -t, which is an alias.
gdb/ChangeLog:
* Makefile.in (%.c: %.l): Use -t instead of --stdout.
commit 9b0797e268d96e8b46c328792aec3d6289585aa2
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Sun Apr 1 22:02:33 2018 +0100
gdb/testsuite: Filter out some registers for riscv
On riscv the cycle counter, and instructions retired counter CSRs are
read only, this causes problems in the gdb.base/callfuncs.exp test, as
the values in these CSRs change after an inferior call, the check that
no target registers have been modified then fails.
Luckily the test already has a mechanism in place for filtering out
registers that are modified (and can't be restored) by an inferior call,
so this commit adds the problem registers into this list for riscv.
In the future we may end up needing to filter out more CSRs, but right
now, for the targets I have access too, these are the only ones causing
problems.
gdb/testsuite/ChangeLog:
* gdb.base/callfuncs.exp (fetch_all_registers): Add riscv register
filter pattern.
commit 3be08ea4728b56d35e136af4e6fd3086ade17764
Author: Simon Atanasyan <simon@atanasyan.com>
Date: Thu May 3 17:17:46 2018 +0100
BFD: Prevent writing the MIPS _gp_disp symbol into symbol tables
The _gp_disp is a magic symbol, always implicitly defined by the linker.
It does not make a sense to write it into symbol tables for output files.
Moreover, now if the linker gets a version script, the _gp_disp symbol
gets zero version definition index. The zero index means[1]:
"The symbol is local, not available outside the object."
But the _gp_disp symbol has GLOBAL binding. That confuses some tools
like for example the LLD linker when they get such files as inputs.
This patch fixes the problem - it prevents writing the _gp_disp symbol
in regular and dynamic symbol tables.
This was tested by running LD test suite on a mipsel-linux board.
References:
[1] "Linux Standard Base Specification", Section "10.7.2 Symbol
Version Table", p. 32
2018-05-03 Simon Atanasyan <simon@atanasyan.com>
bfd/
* elf32-mips.c: (elf32_mips_fixup_symbol): New function.
(elf_backend_fixup_symbol): New macro.
* elfxx-mips.c: (mips_elf_output_extsym): Discard _gp_disp
handling.
(_bfd_mips_elf_finish_dynamic_symbol): Likewise.
ld/
* testsuite/ld-mips-elf/gp-disp-sym.d: New test.
* testsuite/ld-mips-elf/gp-disp-sym.s: New test source.
* testsuite/ld-mips-elf/mips-elf.exp: Run the new test.
* testsuite/ld-mips-elf/mips16-pic-2.ad: Update for _gp_disp
symbol removal.
* testsuite/ld-mips-elf/mips16-pic-2.nd: Likewise.
* testsuite/ld-mips-elf/pic-and-nonpic-3a.dd: Likewise.
* testsuite/ld-mips-elf/tlslib-o32-hidden.got: Likewise.
* testsuite/ld-mips-elf/tlslib-o32-ver.got: Likewise.
* testsuite/ld-mips-elf/tlslib-o32.got: Likewise.
commit bd732259bd3bec9494a2f1f39f74255dd4a9be85
Author: Pedro Alves <palves@redhat.com>
Date: Thu May 3 11:31:38 2018 +0100
Fix s390 GNU/Linux build
- Fixes this compile error:
../../src/gdb/s390-linux-nat.c:125:8: error: âvirtual bool s390_linux_nat_target::have_continuable_watchpoint()â can be marked override [-Werror=suggest-override]
bool have_continuable_watchpoint () { return 1; }
^~~~~~~~~~~~~~~~~~~~~~~~~~~
s390 never implemented that hook. The declaration of the method got
there simply via copy/paste from some other target.
Return 'true' instead of '1' while at it.
- Fixes this link error:
s390-linux-nat.o:(.rodata._ZTV21s390_linux_nat_target[_ZTV21s390_linux_nat_target]+0x120): undefined reference to `s390_linux_nat_target::watchpoint_addr_within_range(unsigned long, unsigned long, int)'
gdb/ChangeLog:
2018-05-03 Pedro Alves <palves@redhat.com>
* s390-linux-nat.c
(s390_linux_nat_target::have_continuable_watchpoint): Mark with
override. Write 'true' instead of '1'.
(s390_linux_nat_target::watchpoint_addr_within_range): Remove
declaration.
commit 7c8be091a26540a834797715434820112cec838e
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu May 3 00:00:13 2018 +0000
Automatic date update in version.in
commit d9f719f1adb653ab40a55e4c1b8c300215b400ff
Author: Pedro Alves <palves@redhat.com>
Date: Thu May 3 00:37:32 2018 +0100
target factories, target open and multiple instances of targets
Currently, to open a target, with "target TARGET_NAME", GDB finds the
target_ops instance with "TARGET_NAME" as short name, and then calls
its target_ops::open virtual method. In reality, there's no actual
target/name lookup, a pointer to the target_ops object was associated
with the "target TARGET_NAME" command at add_target time (when GDB is
initialized), as the command's context.
This creates a chicken and egg situation. Consider the case of
wanting to open multiple remote connections. We want to be able to
have one remote target_ops instance per connection, but, if we're not
connected yet, so we don't yet have an instance to call target->open()
on...
This patch fixes this by separating out common info about a target_ops
to a separate structure (shortname, longname, doc), and changing the
add_target routine to take a reference to such an object instead of a
pointer to a target_ops, and a pointer to a factory function that is
responsible to open an instance of the corresponding target when the
user types "target TARGET_NAME".
-extern void add_target (struct target_ops *);
+extern void add_target (const target_info &info, target_open_ftype *func);
I.e. this factory function replaces the target_ops::open virtual
method.
For static/singleton targets, nothing changes, the target_open_ftype
function pushes the global target_ops instance on the target stack.
At target_close time, the connection is tor down, but the global
target_ops object remains live.
However, targets that support being open multiple times will make
their target_open_ftype routine allocate a new target_ops instance on
the heap [e.g., new remote_target()], and push that on the stack. At
target_close time, the new object is destroyed (by the
target_ops::close virtual method).
Both the core target and the remote targets will support being open
multiple times (others could/should too, but those were my stopping
point), but not in this patch yet. We need to get rid of more globals
first before that'd be useful.
Native targets are somewhat special, given find_default_run_target &
friends. Those routines also expect to return a target_ops pointer,
even before we've open the target. However, we'll never need more
than one instance of the native target, so we can assume/require that
native targets are global/simpletons, and have the backends register a
pointer to the native target_ops. Since all native targets inherit
inf_child_target, we can centralize that registration. See
add_inf_child_target, get_native_target/set_native_target and
find_default_run_target.
gdb/ChangeLog:
2018-05-02 Pedro Alves <palves@redhat.com>
* aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
add_inf_child_target.
* aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
add_inf_child_target.
* aix-thread.c (aix_thread_target_info): New.
(aix_thread_target) <shortname, longname, doc>: Delete.
<info>: New.
* alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
add_inf_child_target.
* alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
add_inf_child_target.
* amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
add_inf_child_target.
* amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
add_inf_child_target.
* amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
add_inf_child_target.
* amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
add_inf_child_target.
* arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
add_inf_child_target.
* arm-linux-nat.c (_initialize_arm_linux_nat): Use
add_inf_child_target.
* arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
add_inf_child_target.
* bfd-target.c (target_bfd_target_info): New.
(target_bfd) <shortname, longname, doc>: Delete.
<info>: New.
* bsd-kvm.c (bsd_kvm_target_info): New.
(bsd_kvm_target) <shortname, longname, doc>: Delete.
<info>: New.
(bsd_kvm_target::open): Rename to ...
(bsd_kvm_target_open): ... this. Adjust.
* bsd-uthread.c (bsd_uthread_target_info): New.
(bsd_uthread_target) <shortname, longname, doc>: Delete.
<info>: New.
* corefile.c (core_file_command): Adjust.
* corelow.c (core_target_info): New.
(core_target) <shortname, longname, doc>: Delete.
<info>: New.
(core_target::open): Rename to ...
(core_target_open): ... this. Adjust.
* ctf.c (ctf_target_info): New.
(ctf_target) <shortname, longname, doc>: Delete.
<info>: New.
(ctf_target::open): Rename to ...
(ctf_target_open): ... this.
(_initialize_ctf): Adjust.
* exec.c (exec_target_info): New.
(exec_target) <shortname, longname, doc>: Delete.
<info>: New.
(exec_target::open): Rename to ...
(exec_target_open): ... this.
* gdbcore.h (core_target_open): Declare.
* go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
* hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
add_inf_child_target.
* hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
add_inf_child_target.
* hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
add_inf_child_target.
* i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
add_inf_child_target.
* i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
add_inf_child_target.
* i386-gnu-nat.c (_initialize_i386gnu_nat): Use
add_inf_child_target.
* i386-linux-nat.c (_initialize_i386_linux_nat): Use
add_inf_child_target.
* i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
add_inf_child_target.
* i386-obsd-nat.c (_initialize_i386obsd_nat): Use
add_inf_child_target.
* ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
add_inf_child_target.
* inf-child.c (inf_child_target_info): New.
(inf_child_target::info): New.
(inf_child_open_target): Remove 'target' parameter. Use
get_native_target instead.
(inf_child_target::open): Delete.
(add_inf_child_target): New.
* inf-child.h (inf_child_target) <shortname, longname, doc, open>:
Delete.
<info>: New.
(add_inf_child_target): Declare.
(inf_child_open_target): Declare.
* linux-thread-db.c (thread_db_target_info): New.
(thread_db_target) <shortname, longname, doc>: Delete.
<info>: New.
* m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
add_inf_child_target.
* m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
add_inf_child_target.
* m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
add_inf_child_target.
* m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
add_inf_child_target.
* make-target-delegates (print_class): Adjust.
* mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
add_inf_child_target.
* mips-linux-nat.c (_initialize_mips_linux_nat): Use
add_inf_child_target.
* mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
add_inf_child_target.
* mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
add_inf_child_target.
* nto-procfs.c (nto_native_target_info): New.
(nto_procfs_target_native) <shortname, longname, doc>:
Delete.
<info>: New.
(nto_procfs_target_info): New.
(nto_procfs_target_procfs) <shortname, longname, doc>:
Delete.
<info>: New.
(init_procfs_targets): Adjust.
* ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
add_inf_child_target.
* ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
add_inf_child_target.
* ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
add_inf_child_target.
* ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
add_inf_child_target.
* ravenscar-thread.c (ravenscar_target_info): New.
(ravenscar_thread_target) <shortname, longname, doc>:
Delete.
<info>: New.
* record-btrace.c (record_btrace_target_info):
(record_btrace_target) <shortname, longname, doc>: Delete.
<info>: New.
(record_btrace_target::open): Rename to ...
(record_btrace_target_open): ... this. Adjust.
* record-full.c (record_longname, record_doc): New.
(record_full_base_target) <shortname, longname, doc>: Delete.
<info>: New.
(record_full_target_info): New.
(record_full_target): <shortname>: Delete.
<info>: New.
(record_full_core_open_1, record_full_open_1): Update comments.
(record_full_base_target::open): Rename to ...
(record_full_open): ... this.
(cmd_record_full_restore): Update.
(_initialize_record_full): Update.
* remote-sim.c (remote_sim_target_info): New.
(gdbsim_target) <shortname, longname, doc>: Delete.
<info>: New.
(gdbsim_target::open): Rename to ...
(gdbsim_target_open): ... this.
(_initialize_remote_sim): Adjust.
* remote.c (remote_doc): New.
(remote_target_info): New.
(remote_target) <shortname, longname, doc>: Delete.
<info>: New.
(extended_remote_target_info): New.
(extended_remote_target) <shortname, longname, doc>: Delete.
<info>: New.
(remote_target::open_1): Make static. Adjust.
* rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
* s390-linux-nat.c (_initialize_s390_nat): Use
add_inf_child_target.
* sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
add_inf_child_target.
* sol-thread.c (thread_db_target_info): New.
(sol_thread_target) <shortname, longname, doc>: Delete.
<info>: New.
* sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
add_inf_child_target.
* sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
add_inf_child_target.
* sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
add_inf_child_target.
* sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
add_inf_child_target.
* sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
add_inf_child_target.
* sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
add_inf_child_target.
* spu-linux-nat.c (_initialize_spu_nat): Use
add_inf_child_target.
* spu-multiarch.c (spu_multiarch_target_info): New.
(spu_multiarch_target) <shortname, longname, doc>: Delete.
<info>: New.
* target-delegates.c: Regenerate.
* target.c: Include <unordered_map>.
(target_ops_p): Delete.
(DEF_VEC_P(target_ops_p)): Delete.
(target_factories): New.
(test_target_info): New.
(test_target_ops::info): New.
(open_target): Adjust to use target_factories.
(add_target_with_completer): Rename to ...
(add_target): ... this. Change prototype. Register target_info
and open callback in target_factories. Register target_info in
command context instead of target_ops.
(add_target): Delete old implementation.
(add_deprecated_target_alias): Change prototype. Adjust.
(the_native_target): New.
(set_native_target, get_native_target): New.
(find_default_run_target): Use the_native_target.
(find_attach_target, find_run_target): Simplify.
(target_ops::open): Delete.
(dummy_target_info): New.
(dummy_target::shortname, dummy_target::longname)
(dummy_target::doc): Delete.
(dummy_target::info): New.
(debug_target::shortname, debug_target::longname)
(debug_target::doc): Delete.
(debug_target::info): New.
* target.h (struct target_info): New.
(target_ops::~target_ops): Add comment.
(target_ops::info): New.
(target_ops::shortname, target_ops::longname, target_ops::doc): No
longer virtual. Implement in terms of target_info.
(set_native_target, get_native_target): Declare.
(target_open_ftype): New.
(add_target, add_target_with_completer)
(add_deprecated_target_alias): Change prototype.
(test_target) <shortname, longname, doc>: Delete.
<info>: New.
* tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
add_inf_child_target.
* tracefile-tfile.c (tfile_target_info): New.
(tfile_target) <shortname, longname, doc>: Delete.
<info>: New.
(tfile_target::open): Rename to ...
(tfile_target_open): ... this.
(_initialize_tracefile_tfile): Adjust.
* vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
add_inf_child_target.
* windows-nat.c (_initialize_windows_nat): Use
add_inf_child_target.
* xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
add_inf_child_target.
commit 135340afdf3b333cde11e4429fb16271d5170335
Author: Pedro Alves <palves@redhat.com>
Date: Thu May 3 00:37:27 2018 +0100
linux_nat_target: More low methods
This converts the remaining linux-nat.c hooks low_ methods like had
been started in a previous patch. The linux_nat_set_foo routines are
all gone with this.
gdb/ChangeLog:
2018-05-02 Pedro Alves <palves@redhat.com>
* linux-nat.h (linux_nat_target) <low_new_thread,
low_delete_thread, low_new_fork, low_forget_process,
low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
New virtual methods.
(linux_nat_set_new_thread, linux_nat_set_delete_thread)
(linux_nat_new_fork_ftype, linux_nat_set_new_fork)
(linux_nat_forget_process_ftype, linux_nat_set_forget_process)
(linux_nat_forget_process, linux_nat_set_siginfo_fixup)
(linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
Delete.
* linux-fork.c (delete_fork): Adjust to call low method.
* linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
(linux_nat_new_fork, linux_nat_forget_process_hook)
(linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
(linux_nat_status_is_event):
(linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
(linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
to call low method.
(sigtrap_is_event): Rename to ...
(linux_nat_target::low_status_is_event): ... this.
(linux_nat_set_status_is_event): Delete.
(save_stop_reason, linux_nat_wait_1)
(linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
low methods.
(linux_nat_set_new_thread, linux_nat_set_delete_thread)
(linux_nat_set_new_fork, linux_nat_set_forget_process)
(linux_nat_forget_process, linux_nat_set_siginfo_fixup)
(linux_nat_set_prepare_to_resume): Delete.
* aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
low virtual methods.
* amd64-linux-nat.c: Likewise.
* arm-linux-nat.c: Likewise.
* i386-linux-nat.c: Likewise.
* ia64-linux-nat.c: Likewise.
* mips-linux-nat.c: Likewise.
* ppc-linux-nat.c: Likewise.
* s390-linux-nat.c: Likewise.
* sparc64-linux-nat.c: Likewise.
* x86-linux-nat.c: Likewise.
* x86-linux-nat.h: Include "nat/x86-linux.h".
(x86_linux_nat_target) <low_new_fork, low_forget_process,
low_prepare_to_resume, low_new_thread, low_delete_thread>:
Override methods.
commit 57810aa7e8032c598897454daea14ed17df0f89d
Author: Pedro Alves <palves@redhat.com>
Date: Thu May 3 00:37:26 2018 +0100
target_ops: Use bool throughout
After the previous target_ops/C++ patches are all squashed and merged,
this one can go in separately.
This patch adjusts all the target methods to return bool instead of int
when they're returning a boolean.
gdb/ChangeLog:
2018-05-02 Pedro Alves <palves@redhat.com>
* target.h (target_ops)
<stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
stopped_by_watchpoint, have_continuable_watchpoint,
stopped_data_address, watchpoint_addr_within_range,
can_accel_watchpoint_condition, can_run, thread_alive,
has_all_memory, has_memory, has_stack, has_registers,
has_execution, can_async_p, is_async_p, supports_non_stop,
always_non_stop_p, can_execute_reverse, supports_multi_process,
supports_enable_disable_tracepoint,
supports_disable_randomization, supports_string_tracing,
supports_evaluation_of_breakpoint_conditions,
can_run_breakpoint_commands, filesystem_is_local,
can_download_tracepoint, get_trace_state_variable_value,
set_trace_notes, get_tib_address, use_agent, can_use_agent,
record_is_replaying, record_will_replay,
augmented_libraries_svr4_read>: Adjust to return bool.
* aarch64-linux-nat.c: All implementations adjusted.
* aix-thread.c: All implementations adjusted.
* arm-linux-nat.c: All implementations adjusted.
* breakpoint.c: All implementations adjusted.
* bsd-kvm.c: All implementations adjusted.
* bsd-uthread.c: All implementations adjusted.
* corelow.c: All implementations adjusted.
* ctf.c: All implementations adjusted.
* darwin-nat.c: All implementations adjusted.
* darwin-nat.h: All implementations adjusted.
* exec.c: All implementations adjusted.
* fbsd-nat.c: All implementations adjusted.
* fbsd-nat.h: All implementations adjusted.
* gnu-nat.c: All implementations adjusted.
* gnu-nat.h: All implementations adjusted.
* go32-nat.c: All implementations adjusted.
* ia64-linux-nat.c: All implementations adjusted.
* inf-child.c: All implementations adjusted.
* inf-child.h: All implementations adjusted.
* inf-ptrace.c: All implementations adjusted.
* inf-ptrace.h: All implementations adjusted.
* linux-nat.c: All implementations adjusted.
* linux-nat.h: All implementations adjusted.
* mips-linux-nat.c: All implementations adjusted.
* nto-procfs.c: All implementations adjusted.
* ppc-linux-nat.c: All implementations adjusted.
* procfs.c: All implementations adjusted.
* ravenscar-thread.c: All implementations adjusted.
* record-btrace.c: All implementations adjusted.
* record-full.c: All implementations adjusted.
* remote-sim.c: All implementations adjusted.
* remote.c: All implementations adjusted.
* s390-linux-nat.c: All implementations adjusted.
* sol-thread.c: All implementations adjusted.
* spu-multiarch.c: All implementations adjusted.
* target-delegates.c: All implementations adjusted.
* target.c: All implementations adjusted.
* target.h: All implementations adjusted.
* tracefile-tfile.c: All implementations adjusted.
* tracefile.c: All implementations adjusted.
* tracefile.h: All implementations adjusted.
* windows-nat.c: All implementations adjusted.
* x86-linux-nat.h: All implementations adjusted.
* x86-nat.h: All implementations adjusted.
commit ad6a4e2dd69f9d343864181b638e166ff1458861
Author: Pedro Alves <palves@redhat.com>
Date: Thu May 3 00:37:23 2018 +0100
make-target-delegates: line break between return type and function name
Before the target_ops C++ification, this wasn't necessary simply
because the methods were wrapped in ()'s, like
'(*to_my_long_method_name) (target_ops *)',
so
std::vector<long_type_name>(*to_my_long_method_name) ()TARGET_DEFAULT_IGNORE ()
still parsed correctly. With the (*) gone, we need this.
gdb/ChangeLog:
2018-05-02 Pedro Alves <palves@redhat.com>
* make-target-delegates (scan_target_h): Don't trim lines here.
Replace sequences of tabs and/or whitespace with a single
whitespace.
(top level, parsing methods): Trim each line before processing it
here.
commit f6ac5f3d63e03a81c4ff3749aba234961cc9090e
Author: Pedro Alves <palves@redhat.com>
Date: Thu May 3 00:37:22 2018 +0100
Convert struct target_ops to C++
I.e., use C++ virtual methods and inheritance instead of tables of
function pointers.
Unfortunately, there's no way to do a smooth transition. ALL native
targets in the tree must be converted at the same time. I've tested
all I could with cross compilers and with help from GCC compile farm,
but naturally I haven't been able to test many of the ports. Still, I
made a best effort to port everything over, and while I expect some
build problems due to typos and such, which should be trivial to fix,
I don't expect any design problems.
* Implementation notes:
- The flattened current_target is gone. References to current_target
or current_target.beneath are replaced with references to
target_stack (the top of the stack) directly.
- To keep "set debug target" working, this adds a new debug_stratum
layer that sits on top of the stack, prints the debug, and delegates
to the target beneath.
In addition, this makes the shortname and longname properties of
target_ops be virtual methods instead of data fields, and makes the
debug target defer those to the target beneath. This is so that
debug code sprinkled around that does "if (debugtarget) ..." can
transparently print the name of the target beneath.
A patch later in the series actually splits out the
shortname/longname methods to a separate structure, but I preferred
to keep that chance separate as it is associated with changing a bit
the design of how targets are registered and open.
- Since you can't check whether a C++ virtual method is overridden,
the old method of checking whether a target_ops implements a method
by comparing the function pointer must be replaced with something
else.
Some cases are fixed by adding a parallel "can_do_foo" target_ops
methods. E.g.,:
+ for (t = target_stack; t != NULL; t = t->beneath)
{
- if (t->to_create_inferior != NULL)
+ if (t->can_create_inferior ())
break;
}
Others are fixed by changing void return type to bool or int return
type, and have the default implementation return false or -1, to
indicate lack of support.
- make-target-delegates was adjusted to generate C++ classes and
methods.
It needed tweaks to grok "virtual" in front of the target method
name, and for the fact that methods are no longer function pointers.
(In particular, the current code parsing the return type was simple
because it could simply parse up until the '(' in '(*to_foo)'.
It now generates a couple C++ classes that inherit target_ops:
dummy_target and debug_target.
Since we need to generate the class declarations as well, i.e., we
need to emit methods twice, we now generate the code in two passes.
- The core_target global is renamed to avoid conflict with the
"core_target" class.
- ctf/tfile targets
init_tracefile_ops is replaced by a base class that is inherited by
both ctf and tfile.
- bsd-uthread
The bsd_uthread_ops_hack hack is gone. It's not needed because
nothing was extending a target created by bsd_uthread_target.
- remote/extended-remote targets
This is a first pass, just enough to C++ify target_ops.
A later pass will convert more free functions to methods, and make
remote_state be truly per remote instance, allowing multiple
simultaneous instances of remote targets.
- inf-child/"native" is converted to an actual base class
(inf_child_target), that is inherited by all native targets.
- GNU/Linux
The old weird double-target linux_ops mechanism in linux-nat.c, is
gone, replaced by adding a few virtual methods to linux-nat.h's
target_ops, called low_XXX, that the concrete linux-nat
implementations override. Sort of like gdbserver's
linux_target_ops, but simpler, for requiring only one
target_ops-like hierarchy, which spares implementing the same method
twice when we need to forward the method to a low implementation.
The low target simply reimplements the target_ops method directly in
that case.
There are a few remaining linux-nat.c hooks that would be better
converted to low_ methods like above too. E.g.:
linux_nat_set_new_thread (t, x86_linux_new_thread);
linux_nat_set_new_fork (t, x86_linux_new_fork);
linux_nat_set_forget_process
That'll be done in a follow up patch.
- We can no longer use functions like x86_use_watchpoints to install
custom methods on an arbitrary base target.
The patch replaces instances of such a pattern with template mixins.
For example memory_breakpoint_target defined in target.h, or
x86_nat_target in x86-nat.h.
- linux_trad_target, MIPS and Alpha GNU/Linux
The code in the new linux-nat-trad.h/c files which was split off of
inf-ptrace.h/c recently, is converted to a C++ base class, and used
by the MIPS and Alpha GNU/Linux ports.
- BSD targets
The
$architecture x NetBSD/OpenBSD/FreeBSD
support matrix complicates things a bit. There's common BSD target
code, and there's common architecture-specific code shared between
the different BSDs. Currently, all that is stiched together to form
a final target, via the i386bsd_target, x86bsd_target,
fbsd_nat_add_target functions etc.
This introduces new fbsd_nat_target, obsd_nat_target and
nbsd_nat_target classes that serve as base/prototype target for the
corresponding BSD variant.
And introduces generic i386/AMD64 BSD targets, to be used as
template mixin to build a final target. Similarly, a generic SPARC
target is added, used by both BSD and Linux ports.
- bsd_kvm_add_target, BSD libkvm target
I considered making bsd_kvm_supply_pcb a virtual method, and then
have each port inherit bsd_kvm_target and override that method, but
that was resulting in lots of unjustified churn, so I left the
function pointer mechanism alone.
gdb/ChangeLog:
2018-05-02 Pedro Alves <palves@redhat.com>
John Baldwin <jhb@freebsd.org>
* target.h (enum strata) <debug_stratum>: New.
(struct target_ops) <all delegation methods>: Replace by C++
virtual methods, and drop "to_" prefix. All references updated
throughout.
<to_shortname, to_longname, to_doc, to_data,
to_have_steppable_watchpoint, to_have_continuable_watchpoint,
to_has_thread_control, to_attach_no_wait>: Delete, replaced by
virtual methods. All references updated throughout.
<can_attach, supports_terminal_ours, can_create_inferior,
get_thread_control_capabilities, attach_no_wait>: New
virtual methods.
<insert_breakpoint, remove_breakpoint>: Now
TARGET_DEFAULT_NORETURN methods.
<info_proc>: Now returns bool.
<to_magic>: Delete.
(OPS_MAGIC): Delete.
(current_target): Delete. All references replaced by references
to ...
(target_stack): ... this. New.
(target_shortname, target_longname): Adjust.
(target_can_run): Now a function declaration.
(default_child_has_all_memory, default_child_has_memory)
(default_child_has_stack, default_child_has_registers)
(default_child_has_execution): Remove target_ops parameter.
(complete_target_initialization): Delete.
(memory_breakpoint_target): New template class.
(test_target_ops): Refactor as a C++ class with virtual methods.
* make-target-delegates (NAME_PART): Tighten.
(POINTER_PART, CP_SYMBOL): New.
(SIMPLE_RETURN_PART): Reimplement.
(VEC_RETURN_PART): Expect less.
(RETURN_PART, VIRTUAL_PART): New.
(METHOD): Adjust to C++ virtual methods.
(scan_target_h): Remove reference to C99.
(dname): Output "target_ops::" prefix.
(write_function_header): Adjust to output a C++ class method.
(write_declaration): New.
(write_delegator): Adjust to output a C++ class method.
(tdname): Output "dummy_target::" prefix.
(write_tdefault, write_debugmethod): Adjust to output a C++ class
method.
(tdefault_names, debug_names): Delete.
(return_types, tdefaults, styles, argtypes_array): New.
(top level): All methods are delegators.
(print_class): New.
(top level): Print dummy_target and debug_target classes.
* target-delegates.c: Regenerate.
* target-debug.h (target_debug_print_enum_info_proc_what)
(target_debug_print_thread_control_capabilities)
(target_debug_print_thread_info_p): New.
* target.c (dummy_target): Delete.
(the_dummy_target, the_debug_target): New.
(target_stack): Now extern.
(set_targetdebug): Push/unpush debug target.
(default_child_has_all_memory, default_child_has_memory)
(default_child_has_stack, default_child_has_registers)
(default_child_has_execution): Remove target_ops parameter.
(complete_target_initialization): Delete.
(add_target_with_completer): No longer call
complete_target_initialization.
(target_supports_terminal_ours): Use regular delegation.
(update_current_target): Delete.
(push_target): No longer check magic number. Don't call
update_current_target.
(unpush_target): Don't call update_current_target.
(target_is_pushed): No longer check magic number.
(target_require_runnable): Skip for all stratums over
process_stratum.
(target_ops::info_proc): New.
(target_info_proc): Use find_target_at and
find_default_run_target.
(target_supports_disable_randomization): Use regular delegation.
(target_get_osdata): Use find_target_at.
(target_ops::open, target_ops::close, target_ops::can_attach)
(target_ops::attach, target_ops::can_create_inferior)
(target_ops::create_inferior, target_ops::can_run)
(target_can_run): New.
(default_fileio_target): Use regular delegation.
(target_ops::fileio_open, target_ops::fileio_pwrite)
(target_ops::fileio_pread, target_ops::fileio_fstat)
(target_ops::fileio_close, target_ops::fileio_unlink)
(target_ops::fileio_readlink): New.
(target_fileio_open_1, target_fileio_unlink)
(target_fileio_readlink): Always call the target method. Handle
FILEIO_ENOSYS.
(return_zero, return_zero_has_execution): Delete.
(init_dummy_target): Delete.
(dummy_target::dummy_target, dummy_target::shortname)
(dummy_target::longname, dummy_target::doc)
(debug_target::debug_target, debug_target::shortname)
(debug_target::longname, debug_target::doc): New.
(target_supports_delete_record): Use regular delegation.
(setup_target_debug): Delete.
(maintenance_print_target_stack): Skip debug_stratum.
(initialize_targets): Instantiate the_dummy_target and
the_debug_target.
* auxv.c (target_auxv_parse): Remove 'ops' parameter. Adjust to
use target_stack.
(target_auxv_search, fprint_target_auxv): Adjust.
(info_auxv_command): Adjust to use target_stack.
* auxv.h (target_auxv_parse): Remove 'ops' parameter.
* exceptions.c (print_flush): Handle a NULL target_stack.
* regcache.c (target_ops_no_register): Refactor as class with
virtual methods.
* exec.c (exec_target): New class.
(exec_ops): Now an exec_target.
(exec_open, exec_close_1, exec_get_section_table)
(exec_xfer_partial, exec_files_info, exec_has_memory)
(exec_make_note_section): Refactor as exec_target methods.
(exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
Delete.
(exec_target::find_memory_regions): New.
(_initialize_exec): Don't call init_exec_ops.
* gdbcore.h (exec_file_clear): Delete.
* corefile.c (core_target): Delete.
(core_file_command): Adjust.
* corelow.c (core_target): New class.
(the_core_target): New.
(core_close): Remove target_ops parameter.
(core_close_cleanup): Adjust.
(core_target::close): New.
(core_open, core_detach, get_core_registers, core_files_info)
(core_xfer_partial, core_thread_alive, core_read_description)
(core_pid_to_str, core_thread_name, core_has_memory)
(core_has_stack, core_has_registers, core_info_proc): Rework as
core_target methods.
(ignore, core_remove_breakpoint, init_core_ops): Delete.
(_initialize_corelow): Initialize the_core_target.
* gdbcore.h (core_target): Delete.
(the_core_target): New.
* ctf.c: (ctf_target): New class.
(ctf_ops): Now a ctf_target.
(ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
(ctf_xfer_partial, ctf_get_trace_state_variable_value)
(ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
methods.
(init_ctf_ops): Delete.
(_initialize_ctf): Don't call it.
* tracefile-tfile.c (tfile_target): New class.
(tfile_ops): Now a tfile_target.
(tfile_open, tfile_close, tfile_files_info)
(tfile_get_tracepoint_status, tfile_trace_find)
(tfile_fetch_registers, tfile_xfer_partial)
(tfile_get_trace_state_variable_value, tfile_traceframe_info):
Refactor as tfile_target methods.
(tfile_xfer_partial_features): Remove target_ops parameter.
(init_tfile_ops): Delete.
(_initialize_tracefile_tfile): Don't call it.
* tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
(tracefile_has_stack, tracefile_has_registers)
(tracefile_thread_alive, tracefile_get_trace_status): Refactor as
tracefile_target methods.
(init_tracefile_ops): Delete.
(tracefile_target::tracefile_target): New.
* tracefile.h: Include "target.h".
(tracefile_target): New class.
(init_tracefile_ops): Delete.
* spu-multiarch.c (spu_multiarch_target): New class.
(spu_ops): Now a spu_multiarch_target.
(spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
(spu_fetch_registers, spu_store_registers, spu_xfer_partial)
(spu_search_memory, spu_mourn_inferior): Refactor as
spu_multiarch_target methods.
(init_spu_ops): Delete.
(_initialize_spu_multiarch): Remove references to init_spu_ops,
complete_target_initialization.
* ravenscar-thread.c (ravenscar_thread_target): New class.
(ravenscar_ops): Now a ravenscar_thread_target.
(ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
(ravenscar_thread_alive, ravenscar_pid_to_str)
(ravenscar_fetch_registers, ravenscar_store_registers)
(ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
(ravenscar_stopped_by_hw_breakpoint)
(ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
(ravenscar_mourn_inferior, ravenscar_core_of_thread)
(ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
methods.
(init_ravenscar_thread_ops): Delete.
(_initialize_ravenscar): Remove references to
init_ravenscar_thread_ops and complete_target_initialization.
* bsd-uthread.c (bsd_uthread_ops_hack): Delete.
(bsd_uthread_target): New class.
(bsd_uthread_ops): Now a bsd_uthread_target.
(bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
(bsd_uthread_close, bsd_uthread_mourn_inferior)
(bsd_uthread_fetch_registers, bsd_uthread_store_registers)
(bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
(bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
(bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
(bsd_uthread_target): Delete function.
(_initialize_bsd_uthread): Remove reference to
complete_target_initialization.
* bfd-target.c (target_bfd_data): Delete. Fields folded into ...
(target_bfd): ... this new class.
(target_bfd_xfer_partial, target_bfd_get_section_table)
(target_bfd_close): Refactor as target_bfd methods.
(target_bfd::~target_bfd): New.
(target_bfd_reopen): Adjust.
(target_bfd::close): New.
* record-btrace.c (record_btrace_target): New class.
(record_btrace_ops): Now a record_btrace_target.
(record_btrace_open, record_btrace_stop_recording)
(record_btrace_disconnect, record_btrace_close)
(record_btrace_async, record_btrace_info)
(record_btrace_insn_history, record_btrace_insn_history_range)
(record_btrace_insn_history_from, record_btrace_call_history)
(record_btrace_call_history_range)
(record_btrace_call_history_from, record_btrace_record_method)
(record_btrace_is_replaying, record_btrace_will_replay)
(record_btrace_xfer_partial, record_btrace_insert_breakpoint)
(record_btrace_remove_breakpoint, record_btrace_fetch_registers)
(record_btrace_store_registers, record_btrace_prepare_to_store)
(record_btrace_to_get_unwinder)
(record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
(record_btrace_commit_resume, record_btrace_wait)
(record_btrace_stop, record_btrace_can_execute_reverse)
(record_btrace_stopped_by_sw_breakpoint)
(record_btrace_supports_stopped_by_sw_breakpoint)
(record_btrace_stopped_by_hw_breakpoint)
(record_btrace_supports_stopped_by_hw_breakpoint)
(record_btrace_update_thread_list, record_btrace_thread_alive)
(record_btrace_goto_begin, record_btrace_goto_end)
(record_btrace_goto, record_btrace_stop_replaying_all)
(record_btrace_execution_direction)
(record_btrace_prepare_to_generate_core)
(record_btrace_done_generating_core): Refactor as
record_btrace_target methods.
(init_record_btrace_ops): Delete.
(_initialize_record_btrace): Remove reference to
init_record_btrace_ops.
* record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
the execution_direction global.
(record_full_base_target, record_full_target)
(record_full_core_target): New classes.
(record_full_ops): Now a record_full_target.
(record_full_core_ops): Now a record_full_core_target.
(record_full_target::detach, record_full_target::disconnect)
(record_full_core_target::disconnect)
(record_full_target::mourn_inferior, record_full_target::kill):
New.
(record_full_open, record_full_close, record_full_async): Refactor
as methods of the record_full_base_target class.
(record_full_resume, record_full_commit_resume): Refactor
as methods of the record_full_target class.
(record_full_wait, record_full_stopped_by_watchpoint)
(record_full_stopped_data_address)
(record_full_stopped_by_sw_breakpoint)
(record_full_supports_stopped_by_sw_breakpoint)
(record_full_stopped_by_hw_breakpoint)
(record_full_supports_stopped_by_hw_breakpoint): Refactor as
methods of the record_full_base_target class.
(record_full_store_registers, record_full_xfer_partial)
(record_full_insert_breakpoint, record_full_remove_breakpoint):
Refactor as methods of the record_full_target class.
(record_full_can_execute_reverse, record_full_get_bookmark)
(record_full_goto_bookmark, record_full_execution_direction)
(record_full_record_method, record_full_info, record_full_delete)
(record_full_is_replaying, record_full_will_replay)
(record_full_goto_begin, record_full_goto_end, record_full_goto)
(record_full_stop_replaying): Refactor as methods of the
record_full_base_target class.
(record_full_core_resume, record_full_core_kill)
(record_full_core_fetch_registers)
(record_full_core_prepare_to_store)
(record_full_core_store_registers, record_full_core_xfer_partial)
(record_full_core_insert_breakpoint)
(record_full_core_remove_breakpoint)
(record_full_core_has_execution): Refactor
as methods of the record_full_core_target class.
(record_full_base_target::supports_delete_record): New.
(init_record_full_ops): Delete.
(init_record_full_core_ops): Delete.
(record_full_save): Refactor as method of the
record_full_base_target class.
(_initialize_record_full): Remove references to
init_record_full_ops and init_record_full_core_ops.
* remote.c (remote_target, extended_remote_target): New classes.
(remote_ops): Now a remote_target.
(extended_remote_ops): Now an extended_remote_target.
(remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
(remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
(remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
(remote_pass_signals, remote_set_syscall_catchpoint)
(remote_program_signals, )
(remote_thread_always_alive): Remove target_ops parameter.
(remote_thread_alive, remote_thread_name)
(remote_update_thread_list, remote_threads_extra_info)
(remote_static_tracepoint_marker_at)
(remote_static_tracepoint_markers_by_strid)
(remote_get_ada_task_ptid, remote_close, remote_start_remote)
(remote_open): Refactor as methods of remote_target.
(extended_remote_open, extended_remote_detach)
(extended_remote_attach, extended_remote_post_attach):
(extended_remote_supports_disable_randomization)
(extended_remote_create_inferior): : Refactor as method of
extended_remote_target.
(remote_set_permissions, remote_open_1, remote_detach)
(remote_follow_fork, remote_follow_exec, remote_disconnect)
(remote_resume, remote_commit_resume, remote_stop)
(remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
(remote_terminal_ours, remote_wait, remote_fetch_registers)
(remote_prepare_to_store, remote_store_registers)
(remote_flash_erase, remote_flash_done, remote_files_info)
(remote_kill, remote_mourn, remote_insert_breakpoint)
(remote_remove_breakpoint, remote_insert_watchpoint)
(remote_watchpoint_addr_within_range)
(remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
(remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
(remote_supports_stopped_by_sw_breakpoint)
(remote_stopped_by_hw_breakpoint)
(remote_supports_stopped_by_hw_breakpoint)
(remote_stopped_by_watchpoint, remote_stopped_data_address)
(remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
(remote_verify_memory): Refactor as methods of remote_target.
(remote_write_qxfer, remote_read_qxfer): Remove target_ops
parameter.
(remote_xfer_partial, remote_get_memory_xfer_limit)
(remote_search_memory, remote_rcmd, remote_memory_map)
(remote_pid_to_str, remote_get_thread_local_address)
(remote_get_tib_address, remote_read_description): Refactor as
methods of remote_target.
(remote_target::fileio_open, remote_target::fileio_pwrite)
(remote_target::fileio_pread, remote_target::fileio_close): New.
(remote_hostio_readlink, remote_hostio_fstat)
(remote_filesystem_is_local, remote_can_execute_reverse)
(remote_supports_non_stop, remote_supports_disable_randomization)
(remote_supports_multi_process, remote_supports_cond_breakpoints)
(remote_supports_enable_disable_tracepoint)
(remote_supports_string_tracing)
(remote_can_run_breakpoint_commands, remote_trace_init)
(remote_download_tracepoint, remote_can_download_tracepoint)
(remote_download_trace_state_variable, remote_enable_tracepoint)
(remote_disable_tracepoint, remote_trace_set_readonly_regions)
(remote_trace_start, remote_get_trace_status)
(remote_get_tracepoint_status, remote_trace_stop)
(remote_trace_find, remote_get_trace_state_variable_value)
(remote_save_trace_data, remote_get_raw_trace_data)
(remote_set_disconnected_tracing, remote_core_of_thread)
(remote_set_circular_trace_buffer, remote_traceframe_info)
(remote_get_min_fast_tracepoint_insn_len)
(remote_set_trace_buffer_size, remote_set_trace_notes)
(remote_use_agent, remote_can_use_agent, remote_enable_btrace)
(remote_disable_btrace, remote_teardown_btrace)
(remote_read_btrace, remote_btrace_conf)
(remote_augmented_libraries_svr4_read, remote_load)
(remote_pid_to_exec_file, remote_can_do_single_step)
(remote_execution_direction, remote_thread_handle_to_thread_info):
Refactor as methods of remote_target.
(init_remote_ops, init_extended_remote_ops): Delete.
(remote_can_async_p, remote_is_async_p, remote_async)
(remote_thread_events, remote_upload_tracepoints)
(remote_upload_trace_state_variables): Refactor as methods of
remote_target.
(_initialize_remote): Remove references to init_remote_ops and
init_extended_remote_ops.
* remote-sim.c (gdbsim_target): New class.
(gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
(gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
(gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
(gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
(gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
(gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
Refactor as methods of gdbsim_target.
(gdbsim_ops): Now a gdbsim_target.
(init_gdbsim_ops): Delete.
(gdbsim_cntrl_c): Adjust.
(_initialize_remote_sim): Remove reference to init_gdbsim_ops.
* amd64-linux-nat.c (amd64_linux_nat_target): New class.
(the_amd64_linux_nat_target): New.
(amd64_linux_fetch_inferior_registers)
(amd64_linux_store_inferior_registers): Refactor as methods of
amd64_linux_nat_target.
(_initialize_amd64_linux_nat): Adjust. Set linux_target.
* i386-linux-nat.c: Don't include "linux-nat.h".
(i386_linux_nat_target): New class.
(the_i386_linux_nat_target): New.
(i386_linux_fetch_inferior_registers)
(i386_linux_store_inferior_registers, i386_linux_resume): Refactor
as methods of i386_linux_nat_target.
(_initialize_i386_linux_nat): Adjust. Set linux_target.
* inf-child.c (inf_child_ops): Delete.
(inf_child_fetch_inferior_registers)
(inf_child_store_inferior_registers): Delete.
(inf_child_post_attach, inf_child_prepare_to_store): Refactor as
methods of inf_child_target.
(inf_child_target::supports_terminal_ours)
(inf_child_target::terminal_init)
(inf_child_target::terminal_inferior)
(inf_child_target::terminal_ours_for_output)
(inf_child_target::terminal_ours, inf_child_target::interrupt)
(inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
New.
(inf_child_open, inf_child_disconnect, inf_child_close)
(inf_child_mourn_inferior, inf_child_maybe_unpush_target)
(inf_child_post_startup_inferior, inf_child_can_run)
(inf_child_pid_to_exec_file): Refactor as methods of
inf_child_target.
(inf_child_follow_fork): Delete.
(inf_child_target::can_create_inferior)
(inf_child_target::can_attach): New.
(inf_child_target::has_all_memory, inf_child_target::has_memory)
(inf_child_target::has_stack, inf_child_target::has_registers)
(inf_child_target::has_execution): New.
(inf_child_fileio_open, inf_child_fileio_pwrite)
(inf_child_fileio_pread, inf_child_fileio_fstat)
(inf_child_fileio_close, inf_child_fileio_unlink)
(inf_child_fileio_readlink, inf_child_use_agent)
(inf_child_can_use_agent): Refactor as methods of
inf_child_target.
(return_zero, inf_child_target): Delete.
(inf_child_target::inf_child_target): New.
* inf-child.h: Include "target.h".
(inf_child_target): Delete function prototype.
(inf_child_target): New class.
(inf_child_open_target, inf_child_mourn_inferior)
(inf_child_maybe_unpush_target): Delete.
* inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
(inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
(inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
(inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
(inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
(inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
(inf_ptrace_wait, inf_ptrace_xfer_partial)
(inf_ptrace_thread_alive, inf_ptrace_files_info)
(inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
methods of inf_ptrace_target.
(inf_ptrace_target): Delete function.
* inf-ptrace.h: Include "inf-child.h".
(inf_ptrace_target): Delete function declaration.
(inf_ptrace_target): New class.
(inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
* linux-nat.c (linux_target): New.
(linux_ops, linux_ops_saved, super_xfer_partial): Delete.
(linux_nat_target::~linux_nat_target): New.
(linux_child_post_attach, linux_child_post_startup_inferior)
(linux_child_follow_fork, linux_child_insert_fork_catchpoint)
(linux_child_remove_fork_catchpoint)
(linux_child_insert_vfork_catchpoint)
(linux_child_remove_vfork_catchpoint)
(linux_child_insert_exec_catchpoint)
(linux_child_remove_exec_catchpoint)
(linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
(linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
(linux_nat_resume, linux_nat_stopped_by_watchpoint)
(linux_nat_stopped_data_address)
(linux_nat_stopped_by_sw_breakpoint)
(linux_nat_supports_stopped_by_sw_breakpoint)
(linux_nat_stopped_by_hw_breakpoint)
(linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
(linux_nat_kill, linux_nat_mourn_inferior)
(linux_nat_xfer_partial, linux_nat_thread_alive)
(linux_nat_update_thread_list, linux_nat_pid_to_str)
(linux_nat_thread_name, linux_child_pid_to_exec_file)
(linux_child_static_tracepoint_markers_by_strid)
(linux_nat_is_async_p, linux_nat_can_async_p)
(linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
(linux_nat_supports_multi_process)
(linux_nat_supports_disable_randomization, linux_nat_async)
(linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
(linux_nat_core_of_thread, linux_nat_filesystem_is_local)
(linux_nat_fileio_open, linux_nat_fileio_readlink)
(linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
methods of linux_nat_target.
(linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
(linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
parameter.
(check_stopped_by_watchpoint): Adjust.
(linux_xfer_partial): Delete.
(linux_target_install_ops, linux_target, linux_nat_add_target):
Delete.
(linux_nat_target::linux_nat_target): New.
* linux-nat.h: Include "inf-ptrace.h".
(linux_nat_target): New.
(linux_target, linux_target_install_ops, linux_nat_add_target):
Delete function declarations.
(linux_target): Declare global.
* linux-thread-db.c (thread_db_target): New.
(thread_db_target::thread_db_target): New.
(thread_db_ops): Delete.
(the_thread_db_target): New.
(thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
(thread_db_update_thread_list, thread_db_pid_to_str)
(thread_db_extra_thread_info)
(thread_db_thread_handle_to_thread_info)
(thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
(thread_db_resume): Refactor as methods of thread_db_target.
(init_thread_db_ops): Delete.
(_initialize_thread_db): Remove reference to init_thread_db_ops.
* x86-linux-nat.c: Don't include "linux-nat.h".
(super_post_startup_inferior): Delete.
(x86_linux_nat_target::~x86_linux_nat_target): New.
(x86_linux_child_post_startup_inferior)
(x86_linux_read_description, x86_linux_enable_btrace)
(x86_linux_disable_btrace, x86_linux_teardown_btrace)
(x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
methods of x86_linux_nat_target.
(x86_linux_create_target): Delete. Bits folded ...
(x86_linux_add_target): ... here. Now takes a linux_nat_target
pointer.
* x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
(x86_linux_nat_target): New class.
(x86_linux_create_target): Delete.
(x86_linux_add_target): Now takes a linux_nat_target pointer.
* x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
(x86_region_ok_for_watchpoint, x86_stopped_data_address)
(x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
(x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
(x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
make extern.
(x86_use_watchpoints): Delete.
* x86-nat.h: Include "breakpoint.h" and "target.h".
(x86_use_watchpoints): Delete.
(x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
(x86_stopped_by_watchpoint, x86_stopped_data_address)
(x86_insert_watchpoint, x86_remove_watchpoint)
(x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
(x86_stopped_by_hw_breakpoint): New declarations.
(x86_nat_target): New template class.
* ppc-linux-nat.c (ppc_linux_nat_target): New class.
(the_ppc_linux_nat_target): New.
(ppc_linux_fetch_inferior_registers)
(ppc_linux_can_use_hw_breakpoint)
(ppc_linux_region_ok_for_hw_watchpoint)
(ppc_linux_ranged_break_num_registers)
(ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
(ppc_linux_insert_mask_watchpoint)
(ppc_linux_remove_mask_watchpoint)
(ppc_linux_can_accel_watchpoint_condition)
(ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
(ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
(ppc_linux_watchpoint_addr_within_range)
(ppc_linux_masked_watch_num_registers)
(ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
(ppc_linux_read_description): Refactor as methods of
ppc_linux_nat_target.
(_initialize_ppc_linux_nat): Adjust. Set linux_target.
* procfs.c (procfs_xfer_partial): Delete forward declaration.
(procfs_target): New class.
(the_procfs_target): New.
(procfs_target): Delete function.
(procfs_auxv_parse, procfs_attach, procfs_detach)
(procfs_fetch_registers, procfs_store_registers, procfs_wait)
(procfs_xfer_partial, procfs_resume, procfs_pass_signals)
(procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
(procfs_create_inferior, procfs_update_thread_list)
(procfs_thread_alive, procfs_pid_to_str)
(procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
(procfs_stopped_data_address, procfs_insert_watchpoint)
(procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
(proc_find_memory_regions, procfs_info_proc)
(procfs_make_note_section): Refactor as methods of procfs_target.
(_initialize_procfs): Adjust.
* sol-thread.c (sol_thread_target): New class.
(sol_thread_ops): Now a sol_thread_target.
(sol_thread_detach, sol_thread_resume, sol_thread_wait)
(sol_thread_fetch_registers, sol_thread_store_registers)
(sol_thread_xfer_partial, sol_thread_mourn_inferior)
(sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
(sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
(init_sol_thread_ops): Delete.
(_initialize_sol_thread): Adjust. Remove references to
init_sol_thread_ops and complete_target_initialization.
* windows-nat.c (windows_nat_target): New class.
(windows_fetch_inferior_registers)
(windows_store_inferior_registers, windows_resume, windows_wait)
(windows_attach, windows_detach, windows_pid_to_exec_file)
(windows_files_info, windows_create_inferior)
(windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
(windows_close, windows_pid_to_str, windows_xfer_partial)
(windows_get_tib_address, windows_get_ada_task_ptid)
(windows_thread_name, windows_thread_alive): Refactor as
windows_nat_target methods.
(do_initial_windows_stuff): Adjust.
(windows_target): Delete function.
(_initialize_windows_nat): Adjust.
* darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
(darwin_mourn_inferior, darwin_kill_inferior)
(darwin_create_inferior, darwin_attach, darwin_detach)
(darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
(darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
(darwin_supports_multi_process): Refactor as darwin_nat_target
methods.
(darwin_resume_to, darwin_files_info): Delete.
(_initialize_darwin_inferior): Rename to ...
(_initialize_darwin_nat): ... this. Adjust to C++ification.
* darwin-nat.h: Include "inf-child.h".
(darwin_nat_target): New class.
(darwin_complete_target): Delete.
* i386-darwin-nat.c (i386_darwin_nat_target): New class.
(darwin_target): New.
(i386_darwin_fetch_inferior_registers)
(i386_darwin_store_inferior_registers): Refactor as methods of
darwin_nat_target.
(darwin_complete_target): Delete, with ...
(_initialize_i386_darwin_nat): ... bits factored out here.
* alpha-linux-nat.c (alpha_linux_nat_target): New class.
(the_alpha_linux_nat_target): New.
(alpha_linux_register_u_offset): Refactor as
alpha_linux_nat_target method.
(_initialize_alpha_linux_nat): Adjust.
* linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
(inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
(inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
methods of linux_nat_trad_target.
(linux_trad_target): Delete.
* linux-nat-trad.h (linux_trad_target): Delete function.
(linux_nat_trad_target): New class.
* mips-linux-nat.c (mips_linux_nat_target): New class.
(super_fetch_registers, super_store_registers, super_close):
Delete.
(the_mips_linux_nat_target): New.
(mips64_linux_regsets_fetch_registers)
(mips64_linux_regsets_store_registers)
(mips64_linux_fetch_registers, mips64_linux_store_registers)
(mips_linux_register_u_offset, mips_linux_read_description)
(mips_linux_can_use_hw_breakpoint)
(mips_linux_stopped_by_watchpoint)
(mips_linux_stopped_data_address)
(mips_linux_region_ok_for_hw_watchpoint)
(mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
(mips_linux_close): Refactor as methods of mips_linux_nat.
(_initialize_mips_linux_nat): Adjust to C++ification.
* aix-thread.c (aix_thread_target): New class.
(aix_thread_ops): Now an aix_thread_target.
(aix_thread_detach, aix_thread_resume, aix_thread_wait)
(aix_thread_fetch_registers, aix_thread_store_registers)
(aix_thread_xfer_partial, aix_thread_mourn_inferior)
(aix_thread_thread_alive, aix_thread_pid_to_str)
(aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
Refactor as methods of aix_thread_target.
(init_aix_thread_ops): Delete.
(_initialize_aix_thread): Remove references to init_aix_thread_ops
and complete_target_initialization.
* rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
(rs6000_nat_target): New class.
(the_rs6000_nat_target): New.
(rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
(rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
(rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
(super_create_inferior): Delete.
(_initialize_rs6000_nat): Adjust to C++ification.
* arm-linux-nat.c (arm_linux_nat_target): New class.
(the_arm_linux_nat_target): New.
(arm_linux_fetch_inferior_registers)
(arm_linux_store_inferior_registers, arm_linux_read_description)
(arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
(arm_linux_remove_hw_breakpoint)
(arm_linux_region_ok_for_hw_watchpoint)
(arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
(arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
(arm_linux_watchpoint_addr_within_range): Refactor as methods of
arm_linux_nat_target.
(_initialize_arm_linux_nat): Adjust to C++ification.
* aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
(the_aarch64_linux_nat_target): New.
(aarch64_linux_fetch_inferior_registers)
(aarch64_linux_store_inferior_registers)
(aarch64_linux_child_post_startup_inferior)
(aarch64_linux_read_description)
(aarch64_linux_can_use_hw_breakpoint)
(aarch64_linux_insert_hw_breakpoint)
(aarch64_linux_remove_hw_breakpoint)
(aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
(aarch64_linux_region_ok_for_hw_watchpoint)
(aarch64_linux_stopped_data_address)
(aarch64_linux_stopped_by_watchpoint)
(aarch64_linux_watchpoint_addr_within_range)
(aarch64_linux_can_do_single_step): Refactor as methods of
aarch64_linux_nat_target.
(super_post_startup_inferior): Delete.
(_initialize_aarch64_linux_nat): Adjust to C++ification.
* hppa-linux-nat.c (hppa_linux_nat_target): New class.
(the_hppa_linux_nat_target): New.
(hppa_linux_fetch_inferior_registers)
(hppa_linux_store_inferior_registers): Refactor as methods of
hppa_linux_nat_target.
(_initialize_hppa_linux_nat): Adjust to C++ification.
* ia64-linux-nat.c (ia64_linux_nat_target): New class.
(the_ia64_linux_nat_target): New.
(ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
(ia64_linux_stopped_data_address)
(ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
(ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
ia64_linux_nat_target methods.
(super_xfer_partial): Delete.
(_initialize_ia64_linux_nat): Adjust to C++ification.
* m32r-linux-nat.c (m32r_linux_nat_target): New class.
(the_m32r_linux_nat_target): New.
(m32r_linux_fetch_inferior_registers)
(m32r_linux_store_inferior_registers): Refactor as
m32r_linux_nat_target methods.
(_initialize_m32r_linux_nat): Adjust to C++ification.
* m68k-linux-nat.c (m68k_linux_nat_target): New class.
(the_m68k_linux_nat_target): New.
(m68k_linux_fetch_inferior_registers)
(m68k_linux_store_inferior_registers): Refactor as
m68k_linux_nat_target methods.
(_initialize_m68k_linux_nat): Adjust to C++ification.
* s390-linux-nat.c (s390_linux_nat_target): New class.
(the_s390_linux_nat_target): New.
(s390_linux_fetch_inferior_registers)
(s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
(s390_insert_watchpoint, s390_remove_watchpoint)
(s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
(s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
(s390_auxv_parse, s390_read_description): Refactor as methods of
s390_linux_nat_target.
(_initialize_s390_nat): Adjust to C++ification.
* sparc-linux-nat.c (sparc_linux_nat_target): New class.
(the_sparc_linux_nat_target): New.
(_initialize_sparc_linux_nat): Adjust to C++ification.
* sparc-nat.c (sparc_fetch_inferior_registers)
(sparc_store_inferior_registers): Remove target_ops parameter.
* sparc-nat.h (sparc_fetch_inferior_registers)
(sparc_store_inferior_registers): Remove target_ops parameter.
* sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
(the_sparc64_linux_nat_target): New.
(_initialize_sparc64_linux_nat): Adjust to C++ification.
* spu-linux-nat.c (spu_linux_nat_target): New class.
(the_spu_linux_nat_target): New.
(spu_child_post_startup_inferior, spu_child_post_attach)
(spu_child_wait, spu_fetch_inferior_registers)
(spu_store_inferior_registers, spu_xfer_partial)
(spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
methods.
(_initialize_spu_nat): Adjust to C++ification.
* tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
(the_tilegx_linux_nat_target): New.
(fetch_inferior_registers, store_inferior_registers):
Refactor as methods.
(_initialize_tile_linux_nat): Adjust to C++ification.
* xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
(the_xtensa_linux_nat_target): New.
(xtensa_linux_fetch_inferior_registers)
(xtensa_linux_store_inferior_registers): Refactor as
xtensa_linux_nat_target methods.
(_initialize_xtensa_linux_nat): Adjust to C++ification.
* fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
(fbsd_pid_to_exec_file, fbsd_find_memory_regions)
(fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
(fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
(fbsd_update_thread_list, fbsd_resume, fbsd_wait)
(fbsd_stopped_by_sw_breakpoint)
(fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
(fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
(fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
(fbsd_post_startup_inferior, fbsd_post_attach)
(fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
(fbsd_set_syscall_catchpoint)
(super_xfer_partial, super_resume, super_wait)
(fbsd_supports_stopped_by_hw_breakpoint): Delete.
(fbsd_handle_debug_trap): Remove target_ops parameter.
(fbsd_nat_add_target): Delete.
* fbsd-nat.h: Include "inf-ptrace.h".
(fbsd_nat_add_target): Delete.
(USE_SIGTRAP_SIGINFO): Define.
(fbsd_nat_target): New class.
* amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
(amd64bsd_store_inferior_registers): Remove target_ops parameter.
(amd64bsd_target): Delete.
* amd64-bsd-nat.h: New file.
* amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
"x86-bsd-nat.h".
(amd64_fbsd_nat_target): New class.
(the_amd64_fbsd_nat_target): New.
(amd64fbsd_read_description): Refactor as method of
amd64_fbsd_nat_target.
(amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
(_initialize_amd64fbsd_nat): Adjust to C++ification.
* amd64-nat.h (amd64bsd_target): Delete function declaration.
* i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
(i386bsd_store_inferior_registers): Remove target_ops parameter.
(i386bsd_target): Delete.
* i386-bsd-nat.h (i386bsd_target): Delete function declaration.
(i386bsd_fetch_inferior_registers)
(i386bsd_store_inferior_registers): Declare.
(i386_bsd_nat_target): New class.
* i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
(the_i386_fbsd_nat_target): New.
(i386fbsd_resume, i386fbsd_read_description): Refactor as
i386_fbsd_nat_target methods.
(i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
(_initialize_i386fbsd_nat): Adjust to C++ification.
* x86-bsd-nat.c (super_mourn_inferior): Delete.
(x86bsd_mourn_inferior, x86bsd_target): Delete.
(_initialize_x86_bsd_nat): Adjust to C++ification.
* x86-bsd-nat.h: Include "x86-nat.h".
(x86bsd_target): Delete declaration.
(x86bsd_nat_target): New class.
* aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
(the_aarch64_fbsd_nat_target): New.
(aarch64_fbsd_fetch_inferior_registers)
(aarch64_fbsd_store_inferior_registers): Refactor as methods of
aarch64_fbsd_nat_target.
(_initialize_aarch64_fbsd_nat): Adjust to C++ification.
* alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
(the_alpha_bsd_nat_target): New.
(alphabsd_fetch_inferior_registers)
(alphabsd_store_inferior_registers): Refactor as
alpha_bsd_nat_target methods.
(_initialize_alphabsd_nat): Refactor as methods of
alpha_bsd_nat_target.
* amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
(the_amd64_nbsd_nat_target): New.
(_initialize_amd64nbsd_nat): Adjust to C++ification.
* amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
(the_amd64_obsd_nat_target): New.
(_initialize_amd64obsd_nat): Adjust to C++ification.
* arm-fbsd-nat.c (arm_fbsd_nat_target): New.
(the_arm_fbsd_nat_target): New.
(arm_fbsd_fetch_inferior_registers)
(arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
(_initialize_arm_fbsd_nat): Refactor as methods of
arm_fbsd_nat_target.
(_initialize_arm_fbsd_nat): Adjust to C++ification.
* arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
(the_arm_netbsd_nat_target): New.
(armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
arm_netbsd_nat_target.
(_initialize_arm_netbsd_nat): Adjust to C++ification.
* hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
(the_hppa_nbsd_nat_target): New.
(hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
hppa_nbsd_nat_target methods.
(_initialize_hppanbsd_nat): Adjust to C++ification.
* hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
(the_hppa_obsd_nat_target): New.
(hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
methods of hppa_obsd_nat_target.
(_initialize_hppaobsd_nat): Adjust to C++ification. Use
add_target.
* i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
(_initialize_i386nbsd_nat): Adjust to C++ification. Use
add_target.
* i386-obsd-nat.c (the_i386_obsd_nat_target): New.
(_initialize_i386obsd_nat): Use add_target.
* m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
(the_m68k_bsd_nat_target): New.
(m68kbsd_fetch_inferior_registers)
(m68kbsd_store_inferior_registers): Refactor as methods of
m68k_bsd_nat_target.
(_initialize_m68kbsd_nat): Adjust to C++ification.
* mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
(the_mips_fbsd_nat_target): New.
(mips_fbsd_fetch_inferior_registers)
(mips_fbsd_store_inferior_registers): Refactor as methods of
mips_fbsd_nat_target.
(_initialize_mips_fbsd_nat): Adjust to C++ification. Use
add_target.
* mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
(the_mips_nbsd_nat_target): New.
(mipsnbsd_fetch_inferior_registers)
(mipsnbsd_store_inferior_registers): Refactor as methods of
mips_nbsd_nat_target.
(_initialize_mipsnbsd_nat): Adjust to C++ification.
* mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
(the_mips64_obsd_nat_target): New.
(mips64obsd_fetch_inferior_registers)
(mips64obsd_store_inferior_registers): Refactor as methods of
mips64_obsd_nat_target.
(_initialize_mips64obsd_nat): Adjust to C++ification. Use
add_target.
* nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
nbsd_nat_target.
* nbsd-nat.h: Include "inf-ptrace.h".
(nbsd_nat_target): New class.
* obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
(obsd_wait): Refactor as methods of obsd_nat_target.
(obsd_add_target): Delete.
* obsd-nat.h: Include "inf-ptrace.h".
(obsd_nat_target): New class.
* ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
(the_ppc_fbsd_nat_target): New.
(ppcfbsd_fetch_inferior_registers)
(ppcfbsd_store_inferior_registers): Refactor as methods of
ppc_fbsd_nat_target.
(_initialize_ppcfbsd_nat): Adjust to C++ification. Use
add_target.
* ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
(the_ppc_nbsd_nat_target): New.
(ppcnbsd_fetch_inferior_registers)
(ppcnbsd_store_inferior_registers): Refactor as methods of
ppc_nbsd_nat_target.
(_initialize_ppcnbsd_nat): Adjust to C++ification.
* ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
(the_ppc_obsd_nat_target): New.
(ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
methods of ppc_obsd_nat_target.
(_initialize_ppcobsd_nat): Adjust to C++ification. Use
add_target.
* sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
(the_sh_nbsd_nat_target): New.
(shnbsd_fetch_inferior_registers)
(shnbsd_store_inferior_registers): Refactor as methods of
sh_nbsd_nat_target.
(_initialize_shnbsd_nat): Adjust to C++ification.
* sparc-nat.c (sparc_xfer_wcookie): Make extern.
(inf_ptrace_xfer_partial): Delete.
(sparc_xfer_partial, sparc_target): Delete.
* sparc-nat.h (sparc_fetch_inferior_registers)
(sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
(sparc_target): Delete function declaration.
(sparc_target): New template class.
* sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
(_initialize_sparcnbsd_nat): Adjust to C++ification.
* sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
(_initialize_sparc64fbsd_nat): Adjust to C++ification. Use
add_target.
* sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
(_initialize_sparc64nbsd_nat): Adjust to C++ification.
* sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
(_initialize_sparc64obsd_nat): Adjust to C++ification. Use
add_target.
* vax-bsd-nat.c (vax_bsd_nat_target): New class.
(the_vax_bsd_nat_target): New.
(vaxbsd_fetch_inferior_registers)
(vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
methods.
(_initialize_vaxbsd_nat): Adjust to C++ification.
* bsd-kvm.c (bsd_kvm_target): New class.
(bsd_kvm_ops): Now a bsd_kvm_target.
(bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
(bsd_kvm_files_info, bsd_kvm_fetch_registers)
(bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
bsd_kvm_target.
(bsd_kvm_return_one): Delete.
(bsd_kvm_add_target): Adjust to C++ification.
* nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
(nto_procfs_target_procfs): New classes.
(procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
(procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
(procfs_post_attach, procfs_wait, procfs_fetch_registers)
(procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
(procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
(procfs_remove_hw_breakpoint, procfs_resume)
(procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
(procfs_kill_inferior, procfs_store_registers)
(procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
as methods of nto_procfs_target.
(nto_procfs_ops): Now an nto_procfs_target_procfs.
(nto_native_ops): Delete.
(procfs_open, procfs_native_open): Delete.
(nto_native_ops): Now an nto_procfs_target_native.
(init_procfs_targets): Adjust to C++ification.
(procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
(procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
Refactor as methods of nto_procfs_target.
* go32-nat.c (go32_nat_target): New class.
(the_go32_nat_target): New.
(go32_attach, go32_resume, go32_wait, go32_fetch_registers)
(go32_store_registers, go32_xfer_partial, go32_files_info)
(go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
(go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
(go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
(go32_pid_to_str): Refactor as methods of go32_nat_target.
(go32_target): Delete.
(_initialize_go32_nat): Adjust to C++ification.
* gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
(gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
(gnu_stop, gnu_thread_alive, gnu_xfer_partial)
(gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
gnu_nat_target.
(gnu_target): Delete.
* gnu-nat.h (gnu_target): Delete.
(gnu_nat_target): New class.
* i386-gnu-nat.c (gnu_base_target): New.
(i386_gnu_nat_target): New class.
(the_i386_gnu_nat_target): New.
(_initialize_i386gnu_nat): Adjust to C++ification.
gdb/testsuite/ChangeLog:
2018-05-02 Pedro Alves <palves@redhat.com>
* gdb.base/breakpoint-in-ro-region.exp: Adjust to to_resume and
to_log_command renames.
* gdb.base/sss-bp-on-user-bp-2.exp: Likewise.
commit 3fffc0701a26bc0baa563fdc793cafb3d3f02a93
Author: Pedro Alves <palves@redhat.com>
Date: Thu May 3 00:37:09 2018 +0100
Eliminate target_ops::to_xclose
In the multi-target branch, I found no need for the target_close vs
target_xclose distinction. Heap-allocated targets simply delete
themselves in their target_close implementation, while
singleton/static targets don't.
The target_ops C++ification patches will add more commentary around
target_ops's destructor, but there's no destructor yet...
gdb/ChangeLog:
2018-05-02 Pedro Alves <palves@redhat.com>
* bfd-target.c (target_bfd_xclose): Rename to ...
(target_bfd_close): ... this.
(target_bfd_reopen): Adjust.
* target.c (target_close): Remove references to to_xclose.
* target.h (target_ops::to_xclose): Delete.
(target_ops::to_close): Update comments.
commit 6798487f5bc66ab9c34ad81fa28ba25d32a00bd9
Author: Pedro Alves <palves@redhat.com>
Date: Thu May 3 00:37:08 2018 +0100
Make inf_ptrace_trad Linux-only, move to separate file
There are only two inf_ptrace_trad_target users, MIPS GNU/Linux and
Alpha GNU/Linux. They both call it via linux_trad_target.
Move this code out of inf-ptrace.c to a GNU/Linux-specific new file.
Making this code be GNU/Linux-specific simplifies C++ification of
target_ops, because we can make the trad target inherit linux_nat
instead of inheriting inf_ptrace. That'll be visible in a later patch.
Note this makes linux_target_install_ops an extern function, but that
is temporary -- the function will disappear once target_ops is made a
C++ class with virtual methods, later in the series. Also, I did not
rename the functions in the new file for a similar reason. They'll be
renamed again anyway in a couple of patches.
gdb/ChangeLog:
2018-05-02 Pedro Alves <palves@redhat.com>
* alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
"linux-nat.h".
* configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
* inf-ptrace.c (inf_ptrace_register_u_offset)
(inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
(inf_ptrace_store_register, inf_ptrace_store_registers)
(inf_ptrace_trad_target): Move to ...
* linux-nat-trad.c: ... this new file.
* linux-nat-trad.h: New file.
* linux-nat.c (linux_target_install_ops): Make extern.
(linux_trad_target): Delete.
* linux-nat.h (linux_trad_target): Delete declaration.
(linux_target_install_ops): Declare.
* mips-linux-nat.c: Include "linux-nat-trad.h" instead of
"linux-nat.h".
commit c1955e179201e76330a10c400bfa92cab2afbee0
Author: Pedro Alves <palves@redhat.com>
Date: Thu May 3 00:37:07 2018 +0100
More procfs.c simplification
There are only two architectures using procfs.c (i386/SPARC), and none
of their corresponding nat files overrides any target method. Move
the add_target calls to procfs.c directly.
gdb/ChangeLog:
2018-05-02 Pedro Alves <palves@redhat.com>
* i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
procfs_target/add_target here.
* procfs.c (procfs_target): Make static.
(_initialize_procfs): Call add_target here.
* procfs.h (struct target_ops): Remove forward declaration.
(procfs_target): Remove declaration.
* sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
commit b5c8fcb1b40a61be5015b02e8cf456a56c258b5d
Author: Pedro Alves <palves@redhat.com>
Date: Thu May 3 00:37:07 2018 +0100
Eliminate procfs.c:procfs_use_watchpoints
Now that procfs.c is only ever used by Solaris, and, both x86 and
SPARC Solaris support watchpoints (*), we don't need the separate
procfs_use_watchpoints function. Getting rid of it simplifies
C++ification of target_ops.
(*) and I assume that any other Solaris port would use the same kernel
debug API interfaces for watchpoints. Otherwise, we can worry about
it if it ever happens.
gdb/ChangeLog:
2018-05-02 Pedro Alves <palves@redhat.com>
* procfs.c (procfs_stopped_by_watchpoint)
(procfs_insert_watchpoint, procfs_remove_watchpoint)
(procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
Forward declare.
(procfs_use_watchpoints): Delete, move contents...
(procfs_target): ... here.
* procfs.h (procfs_use_watchpoints): Delete declaration.
* i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
procfs_use_watchpoints.
* sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
procfs_use_watchpoints.
commit 77d3c63b0dc9d275a87d4ea2191ebd3830f6ca4a
Author: Tom Tromey <tom@tromey.com>
Date: Wed May 2 16:37:57 2018 -0600
Set test message in py-parameter.exp
Pedro pointed out that a test in py-parameter.exp had an empty
message. This fixes it.
testsuite/ChangeLog
2018-05-02 Tom Tromey <tom@tromey.com>
* gdb.python/py-parameter.exp: Set test message.
commit 0489430a0e1a3ea302c22c540f3629e471591f23
Author: Tom Tromey <tom@tromey.com>
Date: Thu Apr 26 16:18:07 2018 -0600
Handle var_zuinteger and var_zuinteger_unlimited from Python
PR python/20084 points out that the Python API doesn't handle the
var_zuinteger and var_zuinteger_unlimited parameter types.
This patch adds support for these types.
Regression tested on x86-64 Fedora 26.
ChangeLog
2018-05-02 Tom Tromey <tom@tromey.com>
PR python/20084:
* python/python.c (gdbpy_parameter_value): Handle var_zuinteger
and var_zuinteger_unlimited.
* python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
and PARAM_ZUINTEGER_UNLIMITED.
(set_parameter_value): Handle var_zuinteger and
var_zuinteger_unlimited.
(add_setshow_generic): Likewise.
(parmpy_init): Likewise.
doc/ChangeLog
2018-05-02 Tom Tromey <tom@tromey.com>
PR python/20084:
* python.texi (Parameters In Python): Document PARAM_ZUINTEGER and
PARAM_ZUINTEGER_UNLIMITED.
testsuite/ChangeLog
2018-05-02 Tom Tromey <tom@tromey.com>
PR python/20084:
* gdb.python/py-parameter.exp: Add PARAM_ZUINTEGER and
PARAM_ZUINTEGER_UNLIMITED tests.
commit d966ab2dc5c10626a1389c87e9bcf924a99e9dfb
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed May 2 00:00:37 2018 +0000
Automatic date update in version.in
commit b3ac5c6c286c5b5c1909628e85754edfb403cf1a
Author: Tamar Christina <tamar.christina@arm.com>
Date: Tue May 1 17:11:11 2018 +0100
Fix unintialized memory in aarch64 opcodes.
This patch fixes an issue where the memory for the opcode structure is not zero'd before
the first exit branch. So there is one failure mode for which uninitialized memory
is returned.
This causes weird failures when the return code is not checked before inst is used.
opcodes/
* aarch64-dis.c (aarch64_opcode_decode): Moved memory clear code.
commit 8e4bd9922ae37809021ca660782295fc2de3ee73
Author: Nick Clifton <nickc@redhat.com>
Date: Tue May 1 16:42:41 2018 +0100
Updated Spanish translation for the gas sub-directory.
commit b5778783adc7c3e69b02b95d77a08285c6259982
Author: Nick Clifton <nickc@redhat.com>
Date: Tue May 1 16:35:04 2018 +0100
Bring in support for the NFP target in the config.sub file.
* config.guess: Synchronize with config project master sources.
* config.sub: Likewise.
commit 1063beb58c9a2f69913682b6923b08e6a7d192aa
Author: Francois H. Theron <francois.theron@netronome.com>
Date: Tue May 1 16:23:21 2018 +0100
Add the Netronome Flow Processor as a build target to the top-level configure.ac file.
* configure.ac: Added "nfp" target.
* configure: Regenerate.
commit 1632f8baf04e7351f387e58957fc04498d90987d
Author: Dan Robertson <danlrobertson89@gmail.com>
Date: Sat Apr 28 03:18:00 2018 +0000
rust: Fix null deref when casting (PR 23124)
Fix a null dereference when casting a value to a unit type.
ChangeLog
2018-04-28 Dan Robertson <danlrobertson89@gmail.com>
PR rust/23124
* gdb/rust-exp.y (convert_params_to_types): Ensure that the params
pointer is not null before dereferencing it.
testsuite/ChangeLog
2018-04-28 Dan Robertson <danlrobertson89@gmail.com>
PR rust/23124
* gdb.rust/expr.exp: Test that the unit type is correctly parsed
when casting.
commit e31efe56455e4a0e84d2157e942e51f8ac94e9fc
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue May 1 00:00:37 2018 +0000
Automatic date update in version.in
commit 0ca1fc291305ee1701b8236c0e26e8d8c5eaf0a2
Author: Joel Brobecker <brobecker@adacore.com>
Date: Mon Apr 30 17:05:42 2018 -0500
[Ada/ravenscar] error during "continue" after task/thread switch
When debugging a program using the Ada ravenscar profile, resuming
a program's execution after having switched to a different task
sometimes yields the following error:
(gdb) cont
Continuing.
Cannot execute this command while the target is running.
Use the "interrupt" command to stop the target
and then try again.
In short, the Ravenscar profile is a standardized subset of Ada which
allows tasking (often mapped to threads). We often use it on baremetal
targets where there is no OS support. Thread support is implemented
as a thread target_ops layer. It sits on top of the "remote" layer,
so we can do thread debugging against baremetal targets to which GDB
is connected via "target remote".
What happens, when the user request the program to resume execution,
is the following:
- the ravenscar-thread target_ops layer gets the order to resume
the program's execution. The current thread is not the active
thread in the inferior, and the "remote" layer doesn't know
about that thread anyway. So what we do is (see ravenscar_resume):
+ switch inferior_ptid to the ptid of the actually active thread;
+ ask the layer beneath us to actually do the resume.
- Once that's done, the resuming itself is done. But execute_command
(in top.c) actually does a bit more. More precisely, it unconditionally
checks to see if the language may no longer be matching the current
frame:
check_frame_language_change ();
The problem, here, is that we haven't received the "stop" event
from the inferior, yet. This part will be handled by the event loop,
which is done later. So, checking for the language-change here
doesn't make sense, since we don't really have a frame. In our
case, the error comes from the fact that we end up trying to read
the registers, which causes the error while the remote protocol
is waiting for the event showing the inferior stopped.
This apparently used to work, but it is believed that this was only
accidental. In other words, we had enough information already cached
within GDB that we were able to perform the entire call to
check_frame_language_change without actually querying the target.
On PowerPC targets, this started to fail as a side-effect of a minor
change in the way we get to the regcache during the handling of
software-single-step (which seems fine).
This patch fixes the issue by only calling check_frame_language_change
in cases the inferior isn't running. Otherwise, it skips it, knowing
that the event loop should eventually get to it.
gdb/ChangeLog:
* top.c (execute_command): Do not call check_frame_language_change
if the inferior is running.
Tested on x86_64-linux, no regression. Also tested on aarch64-elf,
arm-elf, leon3-elf, and ppc-elf, but using AdaCore's testsuite.
commit 767619365467fd825c6f3906a49d97a7a6afafd6
Author: Tom Tromey <tom@tromey.com>
Date: Sun Apr 29 20:53:38 2018 -0600
Remove a use of is_mi_like_p from darwin-nat-info.c
This removes a use of is_mi_like_p from darwin-nat-info.c.
This is not needed because MI already ignores ui_out::text.
ChangeLog
2018-04-30 Tom Tromey <tom@tromey.com>
* darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
is_mi_like_p.
commit 2d33446d4d58edcf993f42957cfe9627c88f112f
Author: Tom Tromey <tom@tromey.com>
Date: Sun Apr 29 20:52:26 2018 -0600
Remove some is_mi_like_p from breakpoint code
This removes some uses of is_mi_like_p from the breakpoint code. The
break-catch-throw.c change brings it into line with what other
breakpoint classes do. The other changes simply replace printf calls
with ui_out::text or ui_out::message calls.
ChangeLog
2018-04-30 Tom Tromey <tom@tromey.com>
* breakpoint.c (mention): Remove use of is_mi_like_p.
(print_mention_ranged_breakpoint): Likewise.
* break-catch-throw.c (print_it_exception_catchpoint): Remove use
of is_mi_like_p.
commit f3c6ababac34f3a291997f8d5ea6a63949b58b87
Author: Tom Tromey <tom@tromey.com>
Date: Sun Apr 29 20:50:43 2018 -0600
Remove a use of is_mi_like_p from tracepoint.c
This removes a use of is_mi_like_p and changes a printf_filtered into
a call to ui_out::text.
ChangeLog
2018-04-30 Tom Tromey <tom@tromey.com>
* tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
commit 40c03530b197d8d6ef550283ecd6684e8d49301b
Author: Tom Tromey <tom@tromey.com>
Date: Sat Apr 28 22:39:08 2018 -0600
Remove some uses of is_mi_like_p from spu-tdep.c
There were a few spots in spu-tdep.c where a use of is_mi_like_p was
not needed.
ChangeLog
2018-04-30 Tom Tromey <tom@tromey.com>
* spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
(info_spu_event_command): Remove some uses of is_mi_like_p.
commit 2038b7fdf30c39bc4d528cc2e5fbf5403e0ba79e
Author: Tom Tromey <tom@tromey.com>
Date: Sat Apr 28 22:30:08 2018 -0600
Remove some uses of is_mi_like_p from py-framefilter.c
Some uses of is_mi_like_p in py-framefilter.c were not needed. In
general a call to ui_out::text, ui_out::message, or ui_out::spaces
does not need to be guarded -- these are already ignored by MI.
ChangeLog
2018-04-30 Tom Tromey <tom@tromey.com>
* python/py-framefilter.c (py_print_single_arg)
(enumerate_locals, py_print_args, py_print_frame): Remove some
uses of is_mi_like_p.
commit 4904c3c6b69d5c7b5e4682220c1d9503e00a457e
Author: Tom Tromey <tom@tromey.com>
Date: Mon Apr 23 20:52:36 2018 -0600
Make do_is_mi_like_p const.
This changes ui_out to make is_mi_like_p and do_is_mi_like_p "const".
ChangeLog
2018-04-30 Tom Tromey <tom@tromey.com>
* ui-out.c: Update.
* cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
* ui-out.h (ui_out::is_mi_like_p): Now const.
(ui_out::do_is_mi_like_p): Now const.
* mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
commit 7c66fffc1f3dae0b921ae3cf8139824804cf0705
Author: Tom Tromey <tom@tromey.com>
Date: Sun Apr 29 21:09:02 2018 -0600
Change Python code to use new_reference
This changes a few spots in the Python code to use new_reference
rather than the manual incref+constructor that was previously being
done.
ChangeLog
2018-04-30 Tom Tromey <tom@tromey.com>
* varobj.c (varobj_set_visualizer): Use new_reference.
* python/python.c (gdbpy_decode_line): Use new_reference.
* python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
new_reference.
commit bbfa6f00867946985b954bbec233c0f25f14ac5c
Author: Tom Tromey <tom@tromey.com>
Date: Sun Apr 29 21:07:03 2018 -0600
Use new_reference for struct value
value_incref returned its argument just as a convenience, which in the
end turned out to only be used in precisely the cases where
new_reference helps. So, this patch changes value_incref to return
void and changes some value-using code to use new_reference.
I also noticed that the comments for value_incref and value_decref
were swapped, so this patch fixes those.
ChangeLog
2018-04-30 Tom Tromey <tom@tromey.com>
* varobj.c (install_new_value): Use new_reference.
* value.h (value_incref): Return void. Swap intro comment with
value_decref.
* value.c (set_value_parent): Use new_reference.
(value_incref): Return void. Update intro comment.
(release_value): Use new_reference.
* dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
commit 1831a9f9d3346dbf61202d2aba6935f0093487dd
Author: Tom Tromey <tom@tromey.com>
Date: Sun Apr 29 21:02:19 2018 -0600
Remove new_bfd_ref
For gdb_bfd_ref_ptr, gdb already had a convenience function like the
new gdb_ref_ptr::new_reference -- called new_bfd_ref. This patch
removes it in favor of the new common function.
While doing this I also noticed that the comment for gdb_bfd_open was
incorrect (in a way related to reference counting), so this patch
updates the comment as well.
ChangeLog
2018-04-30 Tom Tromey <tom@tromey.com>
* symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
* gdb_bfd.h (new_bfd_ref): Remove.
(gdb_bfd_open): Update comment.
* gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
(gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
(gdb_bfd_fdopenr): Use new_reference.
* exec.c (exec_file_attach): Use new_reference.
commit 7c1b5f3db73d7ecab03dc4e866e291582935fb04
Author: Tom Tromey <tom@tromey.com>
Date: Sun Apr 29 20:59:21 2018 -0600
Introduce ref_ptr::new_reference
I noticed a common pattern with gdb::ref_ptr, where callers would
"incref" and then create a new wrapper object, like:
Py_INCREF (obj);
gdbpy_ref<> ref (obj);
The ref_ptr constructor intentionally does not acquire a new
reference, but it seemed to me that it would be reasonable to add a
static member function that does so.
In this patch I chose to call the function "new_reference". I
considered "acquire_reference" as well, but "new" seemed less
ambiguous than "acquire" to me.
ChangeLog
2018-04-30 Tom Tromey <tom@tromey.com>
* common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
method.
commit e11fb955fbab035748fa53ffc30c103157a284b6
Author: Tom Tromey <tom@tromey.com>
Date: Mon Apr 23 13:41:27 2018 -0600
Remove long_long_align_bit gdbarch attribute
This removes the long_long_align_bit gdbarch attribute in favor of
type_align. This uncovered two possible issues.
First, arc-tdep.c claimed that long long alignment was 32 bits, but as
discussed on the list, ARC has a maximum alignment of 32 bits, so I've
added an arc_type_align function to account for this.
Second, jit.c, the sole user of long_long_align_bit, was confusing
"long long" with uint64_t. The relevant structure is defined in the
JIT API part of the manual as:
struct jit_code_entry
{
struct jit_code_entry *next_entry;
struct jit_code_entry *prev_entry;
const char *symfile_addr;
uint64_t symfile_size;
};
I've changed this code to use uint64_t.
2018-04-30 Tom Tromey <tom@tromey.com>
* jit.c (jit_read_code_entry): Use type_align.
* i386-tdep.c (i386_gdbarch_init): Don't call
set_gdbarch_long_long_align_bit.
* gdbarch.sh: Remove long_long_align_bit.
* gdbarch.c, gdbarch.h: Rebuild.
* arc-tdep.c (arc_type_align): New function.
(arc_gdbarch_init): Use arc_type_align. Don't call
set_gdbarch_long_long_align_bit.
commit 2fff16dd8c25831fb5fbf198ca86d5befff629be
Author: Tom Tromey <tom@tromey.com>
Date: Mon Apr 23 13:23:02 2018 -0600
Remove rust_type_alignment
rust_type_alignment is not needed now that gdb has type alignment
code. So, this removes it.
2018-04-30 Tom Tromey <tom@tromey.com>
* rust-lang.c (rust_type_alignment): Remove.
(rust_composite_type): Use type_align.
commit 6d7bb8246b3beaf60ea9c2abe183705e876519cd
Author: Tom Tromey <tom@tromey.com>
Date: Fri Apr 20 15:43:56 2018 -0600
Expose type alignment on gdb.Type
This adds an "alignof" attribute to gdb.Type in the Python API.
2018-04-30 Tom Tromey <tom@tromey.com>
* NEWS: Mention Type.align.
* python/py-type.c (typy_get_alignof): New function.
(type_object_getset): Add "alignof".
2018-04-30 Tom Tromey <tom@tromey.com>
* python.texi (Types In Python): Document Type.align.
2018-04-30 Tom Tromey <tom@tromey.com>
* gdb.python/py-type.exp: Check align attribute.
* gdb.python/py-type.c: New "aligncheck" global.
commit 007e1530347330d4dbba387c4e35aae05bc06498
Author: Tom Tromey <tom@tromey.com>
Date: Fri Apr 20 13:40:29 2018 -0600
Handle alignof and _Alignof
This adds alignof and _Alignof to the C/C++ expression parser, and
adds new tests to test the features. The tests are written to try to
ensure that gdb's knowledge of alignment rules stays in sync with the
compiler's.
2018-04-30 Tom Tromey <tom@tromey.com>
PR exp/17095:
* NEWS: Update.
* std-operator.def (UNOP_ALIGNOF): New operator.
* expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
New.
* eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
* c-lang.c (c_op_print_tab): Add alignof.
* c-exp.y (ALIGNOF): New token.
(exp): Add "ALIGNOF" production.
(ident_tokens): Add _Alignof and alignof.
2018-04-30 Tom Tromey <tom@tromey.com>
PR exp/17095:
* gdb.dwarf2/dw2-align.exp: New file.
* gdb.cp/align.exp: New file.
* gdb.base/align.exp: New file.
* lib/gdb.exp (gdb_int128_helper): New proc.
(has_int128_c, has_int128_cxx): New caching procs.
commit 2b4424c35b9ebabaab8588b2ba6c38935a48efec
Author: Tom Tromey <tom@tromey.com>
Date: Fri Apr 20 11:50:09 2018 -0600
Add initial type alignment support
This adds some basic type alignment support to gdb. It changes struct
type to store the alignment, and updates dwarf2read.c to handle
DW_AT_alignment. It also adds a new gdbarch method and updates
i386-tdep.c.
None of this new functionality is used anywhere yet, so tests will
wait until the next patch.
2018-04-30 Tom Tromey <tom@tromey.com>
* i386-tdep.c (i386_type_align): New function.
(i386_gdbarch_init): Update.
* gdbarch.sh (type_align): New method.
* gdbarch.c, gdbarch.h: Rebuild.
* arch-utils.h (default_type_align): Declare.
* arch-utils.c (default_type_align): New function.
* gdbtypes.h (TYPE_ALIGN_BITS): New define.
(struct type) <align_log2>: New field.
<instance_flags>: Now a bitfield.
(TYPE_RAW_ALIGN): New macro.
(type_align, type_raw_align, set_type_align): Declare.
* gdbtypes.c (type_align, type_raw_align, set_type_align): New
functions.
* dwarf2read.c (quirk_rust_enum): Set type alignment.
(get_alignment, maybe_set_alignment): New functions.
(read_structure_type, read_enumeration_type, read_array_type)
(read_set_type, read_tag_pointer_type, read_tag_reference_type)
(read_subrange_type, read_base_type): Set type alignment.
commit fe944acf8f858cfe6bcfd00670a88847a464717c
Author: Francois H. Theron <francois.theron@netronome.com>
Date: Mon Apr 30 17:02:59 2018 +0100
This patch adds support to objdump for disassembly of NFP (Netronome Flow Processor) ELF files (.nffw) as well as some basic readelf support.
bfd * Makefile.am: Added NFP files to build.
* archures.c: Added bfd_arch_nfp
* config.bfd: Added NFP support.
* configure.ac: Added NFP support.
* cpu-nfp.c: New, for NFP support.
* elf-bfd.h: Added elf_section_info()
* elf64-nfp.c: New, for NFP support.
* po/SRC-POTFILES.in: Added NFP source files.
* targets.c: Added nfp_elf64_vec
* bfd-in2.h: Regenerate.
* Makefile.in: Regenerate.
* configure: Regenerate.
binutils* readelf.c: Very basic support for EM_NFP and its section types.
* testsuite/binutils-all/nfp: New directory.
* testsuite/binutils-all/nfp/objdump.exp: New file. Run new
tests.
* testsuite/binutils-all/nfp/test2_ctx8.d: New file.
* testsuite/binutils-all/nfp/test2_no-pc_ctx4.d: New file.
* testsuite/binutils-all/nfp/test1.d: New file.
* testsuite/binutils-all/nfp/nfp6000.nffw: New file.
* testsuite/binutils-all/nfp/test2_nfp6000.nffw: New file.
* NEWS: Mention the new support.
include * dis-asm.h: Added print_nfp_disassembler_options prototype.
* elf/common.h: Added EM_NFP, officially assigned. See Google Group
Generic System V Application Binary Interface.
* elf/nfp.h: New, for NFP support.
* opcode/nfp.h: New, for NFP support.
opcodes Makefile.am: Added nfp-dis.c.
configure.ac: Added bfd_nfp_arch.
disassemble.h: Added print_insn_nfp prototype.
disassemble.c: Added ARCH_nfp and call to print_insn_nfp
nfp-dis.c: New, for NFP support.
po/POTFILES.in: Added nfp-dis.c to the list.
Makefile.in: Regenerate.
configure: Regenerate.
commit d33bc52e51fdb6c464c1c8e8fdf9b2007b522b57
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Apr 30 11:06:57 2018 -0400
Use bool in read_index_from_section
gdb/ChangeLog:
* dwarf2read.c (read_index_from_section): Use bool.
commit 425050ff8dd355e315fa612f25c9588f9cd55a1a
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Apr 30 00:00:32 2018 +0000
Automatic date update in version.in
commit e28b63a989caffa4a6fba1aaf0d8992b37d13da8
Author: Fabian Groffen <grobian@gentoo.org>
Date: Sun Apr 29 12:04:54 2018 -0400
proc-events.c: fix compilation on Solaris
This patch adds a guard around the usage of SYS_uuidsys, which is
not available on (at least) Solaris 10 and OpenIndiana.
gdb/ChangeLog:
PR gdb/22950
* proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
with #ifdef.
commit cd8c76e410a5f16a170cc680be1ae2ecb5528821
Author: John Reiser <jreiser@BitWagon.com>
Date: Sun Apr 29 11:57:38 2018 -0400
Fix race when building ada-lex.c
Prevent a race when building ada-lex.c, and any target of rules .c:.l or
.c:.y. The target should be written only at the last step, else SIGINT
(^C) can leave an inconsistent state. Being .PRECIOUS makes it even
worse.
gdb/ChangeLog:
PR build/22873
* gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
last step, and do it atomically.
commit 1c831f565445d824811ae43c81b094459458eede
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Apr 29 00:01:17 2018 +0000
Automatic date update in version.in
commit 0d40a647f206dbea61efe81eb652c0c4892e3c50
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Apr 28 00:00:28 2018 +0000
Automatic date update in version.in
commit 476d250ee86c37386b02b0634a59aae13d07a038
Author: Alexandre Oliva <aoliva@redhat.com>
Date: Fri Apr 27 11:17:02 2018 -0700
Add libcc1 v1 compatibility to C compile feature
This patch adds v1 compatibiltiy to the C compile feature. The only change
in v1 concerns the handling of integer types, which permits GDB to specify
the built-in name for the type.
As far as I know, the C frontend is still on v0, so this patch is purely
precautionary. [By default C++ compile uses the equivalent of the C
frontend's int_type and float_type (aka the "v1" versions).]
gdb/ChangeLog:
* compile/compile-c-types.c (convert_int, convert_float):
Update for C FE v1.
commit 6873858b7e464e114f9a877e216949ad8350b4cf
Author: Tom Tromey <tom@tromey.com>
Date: Thu Mar 29 14:14:07 2018 -0600
Add inclusive range support for Rust
This is version 2 of the patch to add inclusive range support for
Rust. I believe it addresses all review comments.
Rust recently stabilized the inclusive range feature:
https://github.com/rust-lang/rust/issues/28237
An inclusive range is an expression like "..= EXPR" or "EXPR ..=
EXPR". It is like an ordinary range, except the upper bound is
inclusive, not exclusive.
This patch adds support for this feature to gdb.
Regression tested on x86-64 Fedora 27.
2018-04-27 Tom Tromey <tom@tromey.com>
PR rust/22545:
* rust-lang.c (rust_inclusive_range_type_p): New function.
(rust_range): Handle inclusive ranges.
(rust_compute_range): Likewise.
* rust-exp.y (struct rust_op) <inclusive>: New field.
(DOTDOTEQ): New constant.
(range_expr): Add "..=" productions.
(operator_tokens): Add "..=" token.
(ast_range): Add "inclusive" parameter.
(convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
ranges.
* parse.c (operator_length_standard) <case OP_RANGE>: Handle new
bounds values.
* expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
Update comments.
* expprint.c (print_subexp_standard): Handle new bounds values.
(dump_subexp_body_standard): Likewise.
2018-04-27 Tom Tromey <tom@tromey.com>
PR rust/22545:
* gdb.rust/simple.exp: Add inclusive range tests.
commit 632e107b32c0fe8aede62e070b00756e9fdd2c01
Author: Tom Tromey <tom@tromey.com>
Date: Thu Apr 26 22:46:54 2018 -0600
Enable -Wsuggest-override
I noticed the existence of -Wsuggest-override and so this patch
enables it for gdb. It found a few spots that could use "override".
Also I went ahead and removed all uses of the "OVERRIDE" macro.
Using override is beneficial because it makes it harder to change a
base class and then forget to change a derived class.
Tested by the buildbot.
ChangeLog
2018-04-27 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
* warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
* dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
"OVERRIDE".
(class symbol_needs_eval_context): Likewise.
* dwarf2read.c (mock_mapped_index::symbol_name_count)
(mock_mapped_index::symbol_name_at): Use "override". Remove
"virtual".
* dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
"override".
(class dwarf_expr_executor): Use "override", not "OVERRIDE".
* aarch64-tdep.c (instruction_reader::read): Use "override".
(instruction_reader_test::read): Likewise.
* arm-tdep.c (instruction_reader::read): Use "override".
(instruction_reader_thumb::read): Likewise.
gdbserver/ChangeLog
2018-04-27 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
commit 197b262f98ff01516921b3d3056d86a9577535be
Author: Maciej W. Rozycki <macro@mips.com>
Date: Fri Apr 27 15:25:20 2018 +0100
MIPS/LD/testsuite: Update `run_dump_test' cases for non-DSO targets
Mark these `run_dump_test' cases across `ld-mips-elf/mips-elf.exp' that
are run unconditionally and require shared library support for exclusion
for targets that do not have such support, removing these failures:
FAIL: MIPS BAL/JALX in PIC mode
FAIL: microMIPS BAL/JALX in PIC mode
FAIL: MIPS BAL/JALX in PIC mode (ignore branch ISA)
FAIL: microMIPS BAL/JALX in PIC mode (ignore branch ISA)
FAIL: ld-mips-elf/hash1a
FAIL: ld-mips-elf/hash1b
FAIL: ld-mips-elf/hash1c
with `mipsel-ps2-elf' and `mips64el-ps2-elf' targets. Tests that are
guarded with `linux_gnu' will have to be reviewed separately.
ld/
* testsuite/ld-mips-elf/bal-jalx-pic.d: Only run for
`check_shared_lib_support' targets.
* testsuite/ld-mips-elf/bal-jalx-pic-n32.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-n64.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-micromips.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-micromips-n32.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-micromips-n64.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-ignore.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-ignore-n32.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-ignore-n64.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-ignore-micromips.d:
Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-ignore-micromips-n32.d:
Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-ignore-micromips-n64.d:
Likewise.
* testsuite/ld-mips-elf/hash1a.d: Likewise.
* testsuite/ld-mips-elf/hash1b.d: Likewise.
* testsuite/ld-mips-elf/hash1c.d: Likewise.
* testsuite/ld-mips-elf/relax-jalr-n32-shared.d: Likewise.
* testsuite/ld-mips-elf/relax-jalr-n64-shared.d: Likewise.
commit 6d9dabbbc6e5205a969cf9643cb8040842f5e313
Author: Maciej W. Rozycki <macro@mips.com>
Date: Fri Apr 27 15:25:20 2018 +0100
testsuite: Support filtering targets by TCL procedure in `run_dump_test'
Implement a more complex way of selecting targets to include or exclude
with `run_dump_test' cases, by extending the syntax for the `target',
`not-target', `skip' and `not-skip' options (with the binutils and GAS
test suites) and the `target', `alltargets' and `notarget' options (with
the LD test suite) to also accept a name of a TCL procedure instead of a
target triplet glob matching expression. The result, 1 or 0, of the
procedure determines whether the test is to be run or not. This mimics
and expands `dg-require-effective-target' from the GCC test suite.
Names of TCL procedures are supplied in square brackets `[]' as with TCL
procedure calls, observing that target triplet glob matching expressions
do not normally start and end with matching square brackets both at a
time. Arguments for procedures are allowed if required.
Having a way to specify a complex condition for a `run_dump_test' case
to run has the advantage of keeping it local within the test case itself
where tool options related to the check might be also present, removing
the need to wrap `run_dump_test' calls into an `if' block whose only
reason is to do a feature check, and ultimately lets one have the test
reported as UNSUPPORTED automagically if required (not currently
supported by the `run_dump_test' options used for LD).
binutils/
* testsuite/lib/binutils-common.exp (match_target): New procedure.
* testsuite/lib/utils-lib.exp (run_dump_test): Use it in place
of `istarget' for matching with `target', `not-target', `skip'
and `not-skip' options.
gas/
* testsuite/lib/gas-defs.exp (run_dump_test): Use `match_target'
in place of `istarget' for matching with `target', `not-target',
`skip' and `not-skip' options.
ld/
* testsuite/lib/ld-lib.exp (run_dump_test): Use `match_target'
in place of `istarget' for matching with `target', `alltargets'
and `notarget' options.
commit aa178437393fd97f706c3f8bdf60ab2cc53a8cb4
Author: Igor Tsimbalist <igor.v.tsimbalist@intel.com>
Date: Fri Apr 27 14:34:13 2018 +0200
Revert "Enable Intel MOVDIRI, MOVDIR64B instructions."
This reverts commit a914a7c95895161c99533d5919b8504b37ea54a0.
commit ffa389a39655f4b35d583783e49fa5b31c288e8f
Author: Alan Modra <amodra@gmail.com>
Date: Fri Apr 27 19:24:13 2018 +0930
Regenerate some files for recent ARM patches
bfd/
* bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.
ld/
* po/BLD-POTFILES.in: Regenerate.
commit 04383fd15b3b82d824df9c72e3ade88c43bfb5ac
Author: Alan Modra <amodra@gmail.com>
Date: Fri Apr 27 15:46:40 2018 +0930
PR23123, PowerPC32 ifunc regression
Two of the gcc ifunc tests fail for ppc32, due to my pr22374 fix being
a little too enthusiastic in trimming PLT entries. ppc64 doesn't have
the same failures because ppc64_elf_check_relocs happens to set
needs_plt for any ifunc reloc.
PR 23123
PR 22374
* elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Don't drop plt
relocs for ifuncs.
* elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Comment fixes.
commit ced8ce28a4f72cfd8eaee0d17cf090997cc2fab7
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Apr 27 00:00:36 2018 +0000
Automatic date update in version.in
commit b75abf5bb636869fd893ecf98414b8b2fe0d4a12
Author: Andrzej Kaczmarek <andrzej.kaczmarek@codecoup.pl>
Date: Thu Apr 26 23:47:25 2018 +0100
Fix remote 'g' command error handling (PR remote/9665)
'g' command returns hex-string as response so simply checking for 'E'
to determine if it failed is not enough and can trigger spurious error
messages. For example, invalid behaviour can be easily triggered on
Cortex-M as follows:
(gdb) set $r0 = 0xe0
Sending packet: $P0=e0000000#72...Packet received: OK
Packet P (set-register) is supported
Sending packet: $g#67...Packet received: E0000000849A0020...
Remote failure reply: E0000000849A0020...
This patch fixes the problem by calling putpkt()/getpkt() directly and
checking result with packet_check_result(). This works fine since Enn
response has odd number of bytes while proper response has even number
of bytes.
Also, remote_send() is now not used anywhere so it can be removed.
gdb/Changelog:
2018-04-26 Andrzej Kaczmarek <andrzej.kaczmarek@codecoup.pl>
PR remote/9665
* remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
instead of remote_send.
(remote_send): Remove.
commit a914a7c95895161c99533d5919b8504b37ea54a0
Author: Igor Tsimbalist <igor.v.tsimbalist@intel.com>
Date: Wed Apr 25 17:02:06 2018 +0200
Enable Intel MOVDIRI, MOVDIR64B instructions.
gas/
* config/tc-i386.c (cpu_arch): Add .movdir, .movdir64b.
(cpu_noarch): Likewise.
(process_suffix): Add check for register size.
* doc/c-i386.texi: Document movdiri, movdir64b.
* testsuite/gas/i386/i386.exp: Run MOVDIR{I,64B} tests.
* testsuite/gas/i386/movdir-intel.d: New test.
* testsuite/gas/i386/movdir.d: Likewise.
* testsuite/gas/i386/movdir.s: Likewise.
* testsuite/gas/i386/movdir64b-reg.s: Likewise.
* testsuite/gas/i386/movdir64b-reg.l: Likewise.
* testsuite/gas/i386/x86-64-movdir-intel.d: Likewise.
* testsuite/gas/i386/x86-64-movdir.d: Likewise.
* testsuite/gas/i386/x86-64-movdir.s: Likewise.
* testsuite/gas/i386/x86-64-movdir64b-reg.s: Likewise.
* testsuite/gas/i386/x86-64-movdir64b-reg.l: Likewise.
opcodes/
* i386-dis.c (enum): Add PREFIX_0F38F8, PREFIX_0F38F9.
(prefix_table): New instructions (see prefix above).
Add Gva macro and handling in OP_G.
* i386-gen.c (cpu_flag_init): Add CPU_MOVDIRI_FLAGS,
CPU_MOVDIR64B_FLAGS.
(cpu_flags): Likewise.
(opcode_modifiers): Add AddrPrefixOpReg.
(i386_opcode_modifier): Likewise.
* i386-opc.h (enum): Add CpuMOVDIRI, CpuMOVDIR64B.
(i386_cpu_flags): Likewise.
* i386-opc.tbl: Add movidir{i,64b}.
* i386-init.h: Regenerate.
* i386-tbl.h: Likewise.
commit 0df8ad28f0f727fab3a696d6c98b9a8a77ee1024
Author: Nick Clifton <nickc@redhat.com>
Date: Thu Apr 26 15:12:42 2018 +0100
Extend the assembler so that it can automatically generate GNU Build attribute notes if none are present in the input files.
gas * as.c (flag_generate_build_notes): New variable.
(show_usage): Add entry for --generate-missing-build-notes.
(parse_args): Parse --generate-missing-build-notes.
* as.h: Export flag_generate_build_notes.
* symbols.c (save_symbol_name): Ensure that the name parameter is
not NULL.
* write.c (create_obj_attrs_section): Reformat.
(create_note_reloc): New function - creates a relocation for a
field in a GNU Build attribute note.
(maybe_generate_build_notes): New function - created GNU Build
attribute notes if none are present in the output file.
(write_object_file): Call maybe_generate_build_notes.
* configure.ac (--enable-generate-build-notes): New option.
* NEWS: Announce the new feature.
* doc/as.textinfo: Document the new option.
* config.in: Regenerate.
* configure: Regenerate.
binutils* readelf.c (is_32bit_abs_reloc): Support R_PARISC_DIR32 as a
32-bit absolute reloc for the HPPA target.
* testsuite/binutils-all/note-5.d: New test.
* testsuite/binutils-all/note-5.s: Source file for new test.
* testsuite/binutils-all/objcopy.exp: Run new test.
commit aa684341294a9125c528041f81d17c488bed5552
Author: Christophe Lyon <christophe.lyon@linaro.org>
Date: Thu Apr 26 13:44:33 2018 +0000
[ld/testsuite] Fix pr2404 output.
2018-04-26 Christophe Lyon <christophe.lyon@linaro.org>
* testsuite/ld-elf/pr2404b.c (main): Adjust printf to account for
new variable name.
* testsuite/ld-elf/pr2404.out: Adjust expected output accordingly.
commit 79188d8d27a8885aee2ca4ff55238219a6aa7228
Author: Pedro Alves <palves@redhat.com>
Date: Thu Apr 26 13:01:27 2018 +0100
Fix resolving GNU ifunc bp locations when inferior runs resolver
I noticed that if you set a breakpoint on an ifunc before the ifunc is
resolved, and then let the program call the ifunc, thus resolving it,
GDB end up with a location for that original breakpoint that is
pointing to the ifunc target, but it is left pointing to the first
address of the function, instead of after its prologue. After
prologue is what you get if you create a new breakpoint at that point.
1) With no debug info for the target function:
1.a) Set before resolving, and then program continued passed resolving:
Num Type Disp Enb Address What
1 breakpoint keep y 0x0000000000400753 <final>
1.b) Breakpoint set after inferior resolved ifunc:
Num Type Disp Enb Address What
2 breakpoint keep y 0x0000000000400757 <final+4>
2) With debug info for the target function:
1.a) Set before resolving, and then program continued passed resolving:
Num Type Disp Enb Address What
1 breakpoint keep y 0x0000000000400753 in final at gdb/testsuite/gdb.base/gnu-ifunc-final.c:20
1.b) Breakpoint set after inferior resolved ifunc:
Num Type Disp Enb Address What
2 breakpoint keep y 0x000000000040075a in final at gdb/testsuite/gdb.base/gnu-ifunc-final.c:21
The problem is that elf_gnu_ifunc_resolver_return_stop (called by the
internal breakpoint that traps the resolver returning) does not agree
with linespec.c:minsym_found. It does not skip to the function's
start line (i.e., past the prologue). We can now use the
find_function_start_sal overload added by the previous commmit to fix
this.
New tests included, which fail before the patch, and pass afterwards.
gdb/ChangeLog:
2018-04-26 Pedro Alves <palves@redhat.com>
* elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
find_function_start_sal instead of find_pc_line.
gdb/testsuite/ChangeLog:
2018-04-26 Pedro Alves <palves@redhat.com>
* gdb.base/gnu-ifunc.exp (set-break): Test that GDB resolves
ifunc breakpoint locations correctly of ifunc breakpoints set
while the program resolves the ifunc.
commit c7075ad5030c4c2e79a04f3517689b751ff41860
Author: Pedro Alves <palves@redhat.com>
Date: Thu Apr 26 13:01:27 2018 +0100
Extend GNU ifunc testcases
This patch extends/rewrites the gdb.base/gnu-ifunc.exp testcase to
cover the many different fixes in earlier patches. (This was actually
what encovered most of the problems.)
The current testcase uses an ifunc symbol with the same name as the
ifunc resolver symbol and makes sure to compile the ifunc resolver
without debug info. That does not model how ifuncs are implemented in
gcc/ifunc nowadays. Instead, what we have is that the glibc ifunc
resolvers nowadays are written in C and end up with debug info.
Also, in some cases the ifunc target is written in assembly, but in
other cases it's written in C. In the case of target function written
in C, if the target function has debug info, when we set a break on
the ifunc, we want to set it past the prologue of the target function.
Currently GDB gets that wrong.
To make sure we cover all the different scenarios, the testcase is
tweaked to cover all the different combinations of
- An ifunc resolver with the same name as the user-visible symbol vs
an ifunc resolver with a different name as the user-visible symbol.
- ifunc resolver compiled with and without debug info.
- ifunc target function compiled with and without debug info.
The testcase currently sets breakpoints on ifuncs, calls ifunc
functions, steps into ifunc functions, etc. After this series, this
all works and the testcase passes cleanly.
While working on this, I noticed that "b gnu_ifunc" before and after
the inferior resolved the ifunc would end up with a breakpoint with
different locations. That's now covered by new tests inside the new
"set-break" procedure.
It also tests other things like making sure we can't call an ifunc
without a return-type case if we don't know the type of the target.
And making sure that we pass enough arguments when we do know the
type.
gdb/testsuite/ChangeLog:
2018-04-26 Pedro Alves <palves@redhat.com>
* gdb.base/gnu-ifunc-final.c: New file.
* gdb.base/gnu-ifunc.c (final): Delete, moved to gnu-ifunc-final.c.
* gdb.base/gnu-ifunc.exp (executable): Delete.
(staticexecutable): Adjust.
(lib_opts, exec_opts): Delete.
(make_binsuffix, build, set-break): New procedures.
(misc_tests): New, with tests factored out from the top level.
(top level): Test different combinations of ifunc resolver name,
resolver with and with debug info, and ifunc target with and
without debug info. Wrap static tests with with_target_prefix.
commit bfa5bd2ab31a8abb23cb442d51fe6c3836028880
Author: Pedro Alves <palves@redhat.com>
Date: Thu Apr 26 13:01:27 2018 +0100
PPC64: always make synthetic .text symbols for GNU ifunc symbols
If you create an ifunc using GCC's __attribute__ ifunc, like:
extern int gnu_ifunc (int arg);
static int gnu_ifunc_target (int arg) { return 0; }
__typeof (gnu_ifunc) *gnu_ifunc_resolver (unsigned long hwcap) { return gnu_ifunc_target; }
__typeof (gnu_ifunc) gnu_ifunc __attribute__ ((ifunc ("gnu_ifunc_resolver")));
then you end up with two (function descriptor) symbols, one for the
ifunc itself, and another for the resolver:
(...)
12: 0000000000020060 104 FUNC GLOBAL DEFAULT 18 gnu_ifunc_resolver
(...)
16: 0000000000020060 104 GNU_IFUNC GLOBAL DEFAULT 18 gnu_ifunc
(...)
Both ifunc and resolver symbols have the same address/value, so
ppc64_elf_get_synthetic_symtab only creates a synthetic text symbol
for one of them. In the case above, it ends up being created for the
resolver, only:
(gdb) maint print msymbols
(...)
[ 7] t 0x980 .frame_dummy section .text
[ 8] T 0x9e4 .gnu_ifunc_resolver section .text
[ 9] T 0xa58 __glink_PLTresolve section .text
(...)
GDB needs to know when a program stepped into an ifunc resolver, so
that it can know whether to step past the resolver into the target
function without the user noticing. The way GDB does it is my
checking whether the current PC points to an ifunc symbol (since
resolver and ifunc have the same address by design).
The problem is then that ppc64_elf_get_synthetic_symtab never creates
the synchetic symbol for the ifunc, so GDB stops stepping at the
resolver (in a test added by the following patch):
(gdb) step
gnu_ifunc_resolver (hwcap=21) at gdb/testsuite/gdb.base/gnu-ifunc-lib.c:33
33 {
(gdb) FAIL: gdb.base/gnu-ifunc.exp: resolver_attr=1: resolver_debug=1: final_debug=0: step
After this commit, we get:
[ 8] i 0x9e4 .gnu_ifunc section .text
[ 9] T 0x9e4 .gnu_ifunc_resolver section .text
And stepping an ifunc call takes to the final function:
(gdb) step
0x00000000100009e8 in .final ()
(gdb) PASS: gdb.base/gnu-ifunc.exp: resolver_attr=1: resolver_debug=1: final_debug=0: step
An alternative to touching bfd I considered was for GDB to check
whether there's an ifunc data symbol / function descriptor that points
to the current PC, whenever the program stops, but discarded it
because we'd have to do a linear scan over .opd over an over to find a
matching function descriptor for the current PC. At that point I
considered caching that info, but quickly dismissed it as then that
has no advantage (memory or performance) over just creating the
synthetic ifunc text symbol in the first place.
I ran the binutils and ld testsuites on PPC64 ELFv1 (machine gcc110 on
the GCC compile farm), and saw no regressions. This commit is part of
a GDB patch series that includes GDB tests that fail without this fix.
bfd/ChangeLog:
2018-04-26 Pedro Alves <palves@redhat.com>
* elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't consider
ifunc and non-ifunc symbols duplicates.
commit f50776aad58a1df6b8f7f2a7d25a3b10aa074f7b
Author: Pedro Alves <palves@redhat.com>
Date: Thu Apr 26 13:01:27 2018 +0100
For PPC64/ELFv1: Introduce mst_data_gnu_ifunc
Running the new tests added later in the series on PPC64 (ELFv1)
revealed that the current ifunc support needs a bit of a design rework
to work properly on PPC64/ELFv1, as most of the new tests fail. The
ifunc support only kind of works today if the ifunc symbol and the
resolver have the same name, as is currently tested by the
gdb.base/gnu-ifunc.exp testcase, which is unlike how ifuncs are
written nowadays.
The crux of the problem is that ifunc symbols are really function
descriptors, not text symbols:
44: 0000000000020060 104 FUNC GLOBAL DEFAULT 18 gnu_ifunc_resolver
54: 0000000000020060 104 GNU_IFUNC GLOBAL DEFAULT 18 gnu_ifunc
But, currently GDB only knows about ifunc symbols that are text
symbols. GDB's support happens to work in practice for PPC64 when the
ifunc and resolver are one and only, like in the current
gdb.base/gnu-ifunc.exp testcase:
15: 0000000000020060 104 GNU_IFUNC GLOBAL DEFAULT 18 gnu_ifunc
because in that case, the synthetic ".gnu_ifunc" entry point text
symbol that bfd creates from the actual GNU ifunc "gnu_ifunc" function
(descriptor) symbol ends up with the the "is a gnu ifunc" flag set /
copied over:
(gdb) maint print msymbols
...
[ 8] i 0x9c4 .gnu_ifunc section .text <<< mst_text_gnu_ifunc
...
[29] D 0x20060 gnu_ifunc section .opd crtstuff.c <<< mst_data
But, if the resolver gets a distinct symbol/name from the ifunc
symbol, then we end up with this:
(gdb) maint print msymbols
[ 8] T 0x9e4 .gnu_ifunc_resolver section .text <<< mst_text
...
[29] D 0x20060 gnu_ifunc section .opd crtstuff.c <<< mst_data
[30] D 0x20060 gnu_ifunc_resolver section .opd crtstuff.c <<< mst_data
I have a follow up bfd patch that turns that into:
(gdb) maint print msymbols
+ [ 8] i 0x9e4 .gnu_ifunc section .text <<< mst_text_gnu_ifunc
[ 8] T 0x9e4 .gnu_ifunc_resolver section .text <<< mst_text
...
[29] D 0x20060 gnu_ifunc section .opd crtstuff.c
[30] D 0x20060 gnu_ifunc_resolver section .opd crtstuff.c
but that won't help everything. We still need this patch.
Specifically, when we do a symbol lookup by name, like e.g., to call a
function (see c-exp.y hunk), e.g., "p gnu_ifunc()", then we need to
know that the found "gnu_ifunc" minimal symbol is an ifunc in order to
do some special processing. But, on PPC, that lookup by name finds
the function descriptor symbol, which presently is just a mst_data
symbol, while at present, we look for mst_text_gnu_ifunc symbols to
decide whether to do special GNU ifunc processing. In most of those
places, we could try to resolve the function descriptor with
gdbarch_convert_from_func_ptr_addr, and then lookup the minimal symbol
at the resolved PC, see if that finds a minimal symbol of type
mst_text_gnu_ifunc. If so, then we could assume that the original
mst_dadta / function descriptor "gnu_ifunc" symbol was an ifunc. I
tried it, and it mostly works, even if it's not the most efficient.
However, there's one case that can't work with such a design -- it's
that of the user calling the ifunc resolver directly to debug it, like
"p gnu_ifunc_resolver(0)", expecting that to return the function
pointer of the final function (which is exercised by the new tests
added later). In this case, with the not-fully-working solution, we'd
resolve the function descriptor, find that there's an
mst_text_gnu_ifunc symbol for the resolved address, and proceed
calling the function as if we tried to call "gnu_ifunc", the
user-visible GNU ifunc symbol, instead of the resolver. I.e., it'd be
impossible to call the resolver directly as a normal function.
Introducing mst_data_gnu_ifunc eliminates the need for several
gdbarch_convert_from_func_ptr_addr calls, and, fixes the "call
resolver directly" use case mentioned above too. It's the cleanest
approach I could think of.
In sum, we make GNU ifunc function descriptor symbols get a new
"mst_data_gnu_ifunc" minimal symbol type instead of the bare mst_data
type. So when symbol lookup by name finds such a minimal symbol, we
know we found an ifunc symbol, without resolving the entry/text
symbol. If the user calls the the resolver symbol instead, like "p
gnu_ifunc_resolver(0)", then we'll find the regular mst_data symbol
for "gnu_ifunc_resolver", and we'll call the resolver function as just
another regular function.
With this, most of the GNU ifunc tests added by a later patch pass on
PPC64 too. The following bfd patch fixes the remaining issues.
gdb/ChangeLog:
2018-04-26 Pedro Alves <palves@redhat.com>
* breakpoint.c (set_breakpoint_location_function): Handle
mst_data_gnu_ifunc.
* c-exp.y (variable production): Handle mst_data_gnu_ifunc.
* elfread.c (elf_symtab_read): Give data symbols with
BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
(elf_rel_plt_read): Update comment.
* linespec.c (convert_linespec_to_sals): Handle
mst_data_gnu_ifunc.
(minsym_found): Handle mst_data_gnu_ifunc.
* minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
(find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
* parse.c (find_minsym_type_and_address): Handle
mst_data_gnu_ifunc.
* symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
* symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
* symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
comment.
<mst_data_gnu_ifunc>: New enumerator.
commit 20944a6e20324cd897bf6c4c5fd20ef7224dacaa
Author: Pedro Alves <palves@redhat.com>
Date: Thu Apr 26 13:01:27 2018 +0100
Fix stepping past GNU ifunc resolvers (introduce lookup_msym_prefer)
When we're stepping (with "step"), we want to skip trampoline-like
functions automatically, including GNU ifunc resolvers. That is done
by infrun.c calling into:
in_solib_dynsym_resolve_code
-> svr4_in_dynsym_resolve_code
-> in_gnu_ifunc_stub
A problem here is that if there's a regular text symbol at the same
address as the ifunc symbol, the minimal symbol lookup in
in_gnu_ifunc_stub may miss the GNU ifunc symbol:
(...)
41: 000000000000071a 53 FUNC GLOBAL DEFAULT 11 gnu_ifunc_resolver
(...)
50: 000000000000071a 53 IFUNC GLOBAL DEFAULT 11 gnu_ifunc
(...)
This causes this FAIL in the tests added later in the series:
(gdb) PASS: gdb.base/gnu-ifunc.exp: resolver_attr=1: resolver_debug=0: final_debug=0: resolver received HWCAP
set step-mode on
(gdb) PASS: gdb.base/gnu-ifunc.exp: resolver_attr=1: resolver_debug=0: final_debug=0: set step-mode on
step
0x00007ffff7bd371a in gnu_ifunc_resolver () from build/gdb/testsuite/outputs/gdb.base/gnu-ifunc/gnu-ifunc-lib-1-0-0.so
(gdb) FAIL: gdb.base/gnu-ifunc.exp: resolver_attr=1: resolver_debug=0: final_debug=0: step
Above, GDB simply thought that it stepped into a regular function, so
it stopped stepping, while it should have continued stepping past the
resolver.
The fix is to teach minimal symbol lookup to prefer GNU ifunc symbols
if desired.
gdb/ChangeLog:
2018-04-26 Pedro Alves <palves@redhat.com>
* minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
(lookup_minimal_symbol_by_pc_section): ... this. Replace
'want_trampoline' parameter by a lookup_msym_prefer parameter.
Handle it.
(lookup_minimal_symbol_by_pc_section): Delete old implementation.
(lookup_minimal_symbol_by_pc): Adjust.
(in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
(lookup_solib_trampoline_symbol_by_pc): Adjust.
* minsyms.h (lookup_msym_prefer): New enum.
(lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
parameter by a lookup_msym_prefer parameter.
commit 1adeb822668d3bd7182ca9b8cf42a7261deb3c7f
Author: Pedro Alves <palves@redhat.com>
Date: Thu Apr 26 13:01:27 2018 +0100
For PPC64: elf_gnu_ifunc_record_cache: handle plt symbols in .text section
elf_gnu_ifunc_record_cache doesn't ever record anything on PPC64
(tested on gcc110 on the compile farm, CentOS 7.4, ELFv1), because
that expects to find PLT symbols in the .plt section, while there we
get:
(gdb) info symbol 'gnu_ifunc@plt'
gnu_ifunc@plt in section .text
^^^^^
I guess that may be related to the comment in ppc-linux-tdep.c that
says "For secure PLT, stub is in .text".
In any case, this commit fixes the issue by making the function look
at the symbol name instead of at the section.
gdb/ChangeLog:
2018-04-26 Pedro Alves <palves@redhat.com>
* elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
ends in "@plt" instead of looking at the symbol's section.
commit 42ddae103c9eb20fb87378548ee95b4bd23648a5
Author: Pedro Alves <palves@redhat.com>
Date: Thu Apr 26 13:01:26 2018 +0100
Factor out minsym_found/find_function_start_sal overload
I need to make the ifunc resolving code in elfread.c skip the target
function's prologue like minsym_found does. I thought of factoring
that out to a separate function, but turns out there's already a
comment in find_function_start_sal that says that should agree with
minsym_found...
Instead of making sure the code agrees with a comment, factor out the
common code to a separate function and use it from both places.
Note that the current find_function_start_sal does a bit more than
minsym_found's equivalent (the "We always should ..." bit), though
that's probably a latent bug.
gdb/ChangeLog:
2018-04-26 Pedro Alves <palves@redhat.com>
* linespec.c (minsym_found): Use find_function_start_sal CORE_ADDR
overload.
* symtab.c (find_function_start_sal(CORE_ADDR, obj_section *,bool)):
New, factored out from ...
(find_function_start_sal(symbol *, int)): ... this. Reimplement
and use bool.
* symtab.h (find_function_start_sal(CORE_ADDR, obj_section *,bool)):
New.
(find_function_start_sal(symbol *, int)): Change boolean parameter
type to bool.
commit a0aca7b0e13d884f43ba77c4c6d752d9140cb54b
Author: Pedro Alves <palves@redhat.com>
Date: Thu Apr 26 13:01:26 2018 +0100
Eliminate find_pc_partial_function_gnu_ifunc
Not used anywhere any longer.
If this is ever reinstated, note that this case:
cache_pc_function_is_gnu_ifunc = TYPE_GNU_IFUNC (SYMBOL_TYPE (f));
was incorrect in that regular symbols never have type marked as GNU
ifunc type, only minimal symbols. At some point I had some fix that
checking the matching minsym here. But in the end I ended up just
eliminating need for this function, so that fix was not necessary.
gdb/ChangeLog:
2018-04-26 Pedro Alves <palves@redhat.com>
* blockframe.c (cache_pc_function_is_gnu_ifunc): Delete. Remove
all references.
(find_pc_partial_function_gnu_ifunc): Rename to ...
(find_pc_partial_function): ... this, and remove references to
'is_gnu_ifunc_p'.
(find_pc_partial_function): Delete old implementation.
* symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
commit 76af0f26356580771a18c37de4ebccdfbc449356
Author: Pedro Alves <palves@redhat.com>
Date: Thu Apr 26 13:01:26 2018 +0100
Breakpoints, don't skip prologue of ifunc resolvers with debug info
Without this patch, some of the tests added to gdb.base/gnu-ifunc.exp
by a following patch fail like so:
FAIL: gdb.base/gnu-ifunc.exp: resolver_attr=0: resolver_debug=1: resolved_debug=0: set-break: before resolving: break gnu_ifunc
FAIL: gdb.base/gnu-ifunc.exp: resolver_attr=0: resolver_debug=1: resolved_debug=0: set-break: before resolving: info breakpoints
FAIL: gdb.base/gnu-ifunc.exp: resolver_attr=0: resolver_debug=1: resolved_debug=0: set-break: after resolving: break gnu_ifunc
FAIL: gdb.base/gnu-ifunc.exp: resolver_attr=0: resolver_debug=1: resolved_debug=0: set-break: after resolving: info breakpoints
FAIL: gdb.base/gnu-ifunc.exp: resolver_attr=0: resolver_debug=1: resolved_debug=1: set-break: before resolving: break gnu_ifunc
FAIL: gdb.base/gnu-ifunc.exp: resolver_attr=0: resolver_debug=1: resolved_debug=1: set-break: before resolving: info breakpoints
FAIL: gdb.base/gnu-ifunc.exp: resolver_attr=0: resolver_debug=1: resolved_debug=1: set-break: after resolving: break gnu_ifunc
FAIL: gdb.base/gnu-ifunc.exp: resolver_attr=0: resolver_debug=1: resolved_debug=1: set-break: after resolving: info breakpoints
All of them trigger iff:
- you have debug info for the ifunc resolver.
- the resolver and the user-visible symbol have the same name.
If you have an ifunc that has a resolver with the same name as the
user visible symbol, debug info for the resolver masks out the ifunc
minsym. When you set a breakpoint by name on the user visible symbol,
GDB finds the DWARF symbol for the resolver, and thinking that it's a
regular function, sets a breakpoint location past its prologue.
Like so, location 1.2, before the ifunc is resolved by the inferior:
(gdb) break gnu_ifunc
Breakpoint 2 at 0x7ffff7bd36ea (2 locations)
(gdb) info breakpoints
Num Type Disp Enb Address What
1 breakpoint keep y <MULTIPLE>
1.1 y 0x00007ffff7bd36ea <gnu_ifunc>
1.2 y 0x00007ffff7bd36f2 in gnu_ifunc at src/gdb/testsuite/gdb.base/gnu-ifunc-lib.c:34
(gdb)
And like so, location 2.2, if you set the breakpoint after the ifunc
is resolved by the inferior (to "final"):
(gdb) break gnu_ifunc
Breakpoint 5 at 0x400757 (2 locations)
(gdb) info breakpoints
Num Type Disp Enb Address What
2 breakpoint keep y <MULTIPLE>
2.1 y 0x000000000040075a in final at src/gdb/testsuite/gdb.base/gnu-ifunc-resd.c:21
2.2 y 0x00007ffff7bd36f2 in gnu_ifunc at src/gdb/testsuite/gdb.base/gnu-ifunc-lib.c:34
(gdb)
I don't think this is right because when users set a breakpoint at an
ifunc, they don't care about debugging the resolver. Instead what you
should is a single location for the ifunc in the first case, and a
single location of the ifunc target in the second case.
gdb/ChangeLog:
2018-04-26 Pedro Alves <palves@redhat.com>
* linespec.c (struct bound_minimal_symbol_search_key): New.
(convert_linespec_to_sals): Sort minimal symbols earlier. Don't
skip first line if we found a GNU ifunc minimal symbol by name.
(compare_msymbols): Change parameters to work with a destructured
lhs minsym.
(compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
functions.
commit 3467ec66bc1f30cf3ed7f9fe75234c96fc9c92d5
Author: Pedro Alves <palves@redhat.com>
Date: Thu Apr 26 13:01:26 2018 +0100
Fix setting breakpoints on ifunc functions after they're already resolved
This fixes setting breakpoints on ifunc functions by name after the
ifunc has already been resolved.
In that case, if you have debug info for the ifunc resolver, without
the fix, then gdb puts a breakpoint past the prologue of the resolver,
instead of setting a breakpoint at the ifunc target:
break gnu_ifunc
Breakpoint 4 at 0x7ffff7bd36f2: file src/gdb/testsuite/gdb.base/gnu-ifunc-lib.c, line 34.
(gdb) continue
Continuing.
[Inferior 1 (process 13300) exited normally]
(gdb)
above we should have stopped at "final", but didn't because we never
resolved the ifunc to the final location.
If you don't have debug info for the resolver, GDB manages to resolve
the ifunc target, but, it should be setting a breakpoint after the
prologue of the final function, and instead what you get is that GDB
sets a breakpoint on the first address of the target function. With
the gnu-ifunc.exp tests added by a later patch, we get, without the
fix:
(gdb) break gnu_ifunc
Breakpoint 4 at 0x400753
(gdb) continue
Continuing.
Breakpoint 4, final (arg=1) at src/gdb/testsuite/gdb.base/gnu-ifunc-final.c:20
20 {
vs, fixed:
(gdb) break gnu_ifunc
Breakpoint 4 at 0x40075a: file src/gdb/testsuite/gdb.base/gnu-ifunc-final.c, line 21.
(gdb) continue
Continuing.
Breakpoint 4, final (arg=2) at src/gdb/testsuite/gdb.base/gnu-ifunc-final.c:21
21 return arg + 1;
(gdb)
Fix the problems above by moving the ifunc target resolving to
linespec.c, before we skip a function's prologue. We need to save
something in the sal, so that set_breakpoint_location_function knows
that it needs to create a bp_gnu_ifunc_resolver bp_location. Might as
well just save a pointer to the minsym.
gdb/ChangeLog:
2018-04-26 Pedro Alves <palves@redhat.com>
* breakpoint.c (set_breakpoint_location_function): Don't resolve
ifunc targets here. Instead, if we have an ifunc minsym, use its
address/name.
(add_location_to_breakpoint): Store the minsym and the objfile in
the breakpoint location.
* breakpoint.h (bp_location) <msymbol, objfile>: New fields.
* linespec.c (minsym_found): Resolve GNU ifunc targets here.
Record the minsym in the sal.
* symtab.h (symtab_and_line) <msymbol>: New field.
commit 28f4fa4d0540ac6a23930202f39782167667e373
Author: Pedro Alves <palves@redhat.com>
Date: Thu Apr 26 13:01:26 2018 +0100
Fix elf_gnu_ifunc_resolve_by_got buglet
The next patch will add a call to elf_gnu_ifunc_resolve_by_got that
trips on a latent buglet -- the function is writing to its output
parameter even if the address wasn't found, confusing the caller. The
function's intro comment says:
/* Try to find the target resolved function entry address of a STT_GNU_IFUNC
function NAME. If the address is found it is stored to *ADDR_P (if ADDR_P
is not NULL) and the function returns 1. It returns 0 otherwise.
So fix the function accordingly.
gdb/ChangeLog:
2018-04-26 Pedro Alves <palves@redhat.com>
* elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
unless we actually resolved the ifunc.
commit ca31ab1d675c1e20cee5f8cb213c52e3d7352496
Author: Pedro Alves <palves@redhat.com>
Date: Thu Apr 26 13:01:26 2018 +0100
Calling ifunc functions when resolver has debug info, user symbol same name
If the GNU ifunc resolver has the same name as the user visible
symbol, and the resolver has debug info, then the DWARF info for the
resolver masks the ifunc minsym. In that scenario, if you try calling
the ifunc from GDB, you call the resolver instead. With the
gnu-ifunc.exp testcase added in a following patch, you'd see:
(gdb) p gnu_ifunc (3)
$1 = (int (*)(int)) 0x400753 <final>
(gdb) FAIL: gdb.base/gnu-ifunc.exp: resolver_attr=0: resolver_debug=1: resolved_debug=0: p gnu_ifunc (3)
^^^^^^^^^^^^^^^^
That is, we called the ifunc resolver manually, which returned a
pointer to the ifunc target function ("final"). The "final" symbol is
the function that GDB should have called automatically,
~~~~~~~~~~~~
int
final (int arg)
{
return arg + 1;
}
~~~~~~~~~
which is what happens if you don't have debug info for the resolver:
(gdb) p gnu_ifunc (3)
$1 = 4
(gdb) PASS: gdb.base/gnu-ifunc.exp: resolver_attr=0: resolver_debug=0: resolved_debug=1: p gnu_ifunc (3)
^^^^^^^^^^^^^^^^
or if the resolver's symbol has a different name from the ifunc (as is
the case with modern uses of ifunc via __attribute__ ifunc, such as
glibc uses):
(gdb) p gnu_ifunc (3)
$1 = 4
(gdb) PASS: gdb.base/gnu-ifunc.exp: resolver_attr=1: resolver_debug=1: resolved_debug=0: p gnu_ifunc (3)
^^^^^^^^^^^^^^^
in which case after this patch, you can still call the resolver
directly if you want:
(gdb) p gnu_ifunc_resolver (3)
$1 = (int (*)(int)) 0x400753 <final>
gdb/ChangeLog:
2018-04-26 Pedro Alves <palves@redhat.com>
* c-exp.y (variable production): Prefer ifunc minsyms over
regular function symbols.
* symtab.c (find_gnu_ifunc): New function.
* minsyms.h (lookup_msym_prefer): New enum.
(lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
parameter by a lookup_msym_prefer parameter.
* symtab.h (find_gnu_ifunc): New declaration.
commit 8388016d7ff8b88d29f2427963f26a6b8bbb03b1
Author: Pedro Alves <palves@redhat.com>
Date: Thu Apr 26 13:01:26 2018 +0100
Calling ifunc functions when target has no debug info but resolver has
After the previous patch, on Fedora 27 (glibc 2.26), if you try
calling strlen in the inferior, you now get:
(top-gdb) p strlen ("hello")
'__strlen_avx2' has unknown return type; cast the call to its declared return type
This is correct, because __strlen_avx2 is written in assembly.
We can improve on this though -- if the final ifunc resolved/target
function has no debug info, but the ifunc _resolver_ does have debug
info, we can try extracting the final function's type from the type
that the resolver returns. E.g.,:
typedef size_t (*strlen_t) (const char*);
size_t my_strlen (const char *) { /* some implementation */ }
strlen_t strlen_resolver (unsigned long hwcap) { return my_strlen; }
extern size_t strlen (const char *s);
__typeof (strlen) strlen __attribute__ ((ifunc ("strlen_resolver")));
In the strlen example above, the resolver returns strlen_t, which is a
typedef for pointer to a function that returns size_t. "strlen_t" is
the type of both the user-visible "strlen", and of the the target
function that implements it.
This patch teaches GDB to extract that type.
This is done for actual inferior function calls (in infcall.c), and
for ptype (in eval_call). By the time we get to either of these
places, we've already lost the original symbol/minsym, and only have
values and types to work with. Hence the changes to c-exp.y and
evaluate_var_msym_value, to ensure that we propagate the ifunc
minsymbol's info.
The change to make ifunc symbols have no/unknown return type exposes a
latent problem -- gdb.compile/compile-ifunc.exp calls a no-debug-info
function, but we did not warn about it. The test is fixed by this
commit too.
gdb/ChangeLog:
2018-04-26 Pedro Alves <palves@redhat.com>
* blockframe.c (find_gnu_ifunc_target_type): New function.
(find_function_type): New.
* eval.c (evaluate_var_msym_value): For GNU ifunc types, always
return a value with a memory address.
(eval_call): For calls to GNU ifunc functions, try to find the
type of the target function from the type that the resolver
returns.
* gdbtypes.c (objfile_type): Don't install a return type for ifunc
symbols.
* infcall.c (find_function_return_type): Delete.
(find_function_addr): Add 'function_type' parameter. For calls to
GNU ifunc functions, try to find the type of the target function
from the type that the resolver returns, and return it via
FUNCTION_TYPE.
(call_function_by_hand_dummy): Adjust to use the function type
returned by find_function_addr.
(find_function_addr): Add 'function_type' parameter and move
description here.
* symtab.h (find_function_type, find_gnu_ifunc_target_type): New
declarations.
gdb/testsuite/ChangeLog:
2018-04-26 Pedro Alves <palves@redhat.com>
* gdb.compile/compile-ifunc.exp: Also expect "function has unknown
return type" warnings.
commit a376e11d84ba7ea8cc7333c77043e20c7b0cfc91
Author: Pedro Alves <palves@redhat.com>
Date: Thu Apr 26 13:01:26 2018 +0100
Fix calling ifunc functions when resolver has debug info and different name
Currently, on Fedora 27 (glibc 2.26), if you try to call strlen in the
inferior you get:
(gdb) p strlen ("hello")
$1 = (size_t (*)(const char *)) 0x7ffff554aac0 <__strlen_avx2>
strlen is an ifunc function, and what we see above is the result of
calling the ifunc resolver in the inferior. That returns a pointer to
the actual target function that implements strlen on my machine. GDB
should have turned around and called the resolver automatically
without the user noticing.
This is was caused by commit:
commit bf223d3e808e6fec9ee165d3d48beb74837796de
Date: Mon Aug 21 11:34:32 2017 +0100
Handle function aliases better (PR gdb/19487, errno printing)
which added the find_function_alias_target call to c-exp.y, to try to
find an alias with debug info for a minsym. For ifunc symbols, that
finds the ifunc's resolver if it has debug info (in the example it's
called "strlen_ifunc"), with the result that GDB calls that as a
regular function.
After this commit, we get now get:
(top-gdb) p strlen ("hello")
'__strlen_avx2' has unknown return type; cast the call to its declared return type
Which is correct, because __strlen_avx2 is written in assembly.
That'll be improved in a following patch, though.
gdb/ChangeLog:
2018-04-26 Pedro Alves <palves@redhat.com>
* c-exp.y (variable production): Skip finding an alias for ifunc
symbols.
commit 02e169e2dac9b0354162eb0e7ee3fc95134b232d
Author: Pedro Alves <palves@redhat.com>
Date: Thu Apr 26 13:02:26 2018 +0100
Fix breakpoints in ifunc after inferior resolved it (@got.plt symbol creation)
Setting a breakpoint on an ifunc symbol after the ifunc has already
been resolved by the inferior should result in creating a breakpoint
location at the ifunc target. However, that's not what happens on
current Fedora:
(gdb) n
53 i = gnu_ifunc (1); /* break-at-call */
(gdb)
54 assert (i == 2);
(gdb) b gnu_ifunc
Breakpoint 2 at gnu-indirect-function resolver at 0x7ffff7bd36ee
(gdb) info breakpoints
Num Type Disp Enb Address What
2 STT_GNU_IFUNC resolver keep y 0x00007ffff7bd36ee <gnu_ifunc+4>
The problem is that elf_gnu_ifunc_resolve_by_got never manages to
resolve an ifunc target. The reason is that GDB never actually
creates the internal got.plt symbols:
(gdb) p 'gnu_ifunc@got.plt'
No symbol "gnu_ifunc@got.plt" in current context.
and this is because GDB expects that rela.plt has relocations for
.plt, while it actually has relocations for .got.plt:
Relocation section [10] '.rela.plt' for section [22] '.got.plt' at offset 0x570 contains 2 entries:
Offset Type Value Addend Name
0x0000000000601018 X86_64_JUMP_SLOT 000000000000000000 +0 __assert_fail
0x0000000000601020 X86_64_JUMP_SLOT 000000000000000000 +0 gnu_ifunc
Using an older system on the GCC compile farm (machine gcc15, an
x86-64 running Debian 6.0.8, with GNU ld 2.20.1), we see that it used
to be that we'd get a .rela.plt section for .plt:
Relocation section [ 9] '.rela.plt' for section [11] '.plt' at offset 0x578 contains 3 entries:
Offset Type Value Addend Name
0x0000000000600cc0 X86_64_JUMP_SLOT 000000000000000000 +0 __assert_fail
0x0000000000600cc8 X86_64_JUMP_SLOT 000000000000000000 +0 __libc_start_main
0x0000000000600cd0 X86_64_JUMP_SLOT 000000000000000000 +0 gnu_ifunc
Those offsets did point into .got.plt, as seen with objdump -h:
20 .got.plt 00000030 0000000000600ca8 0000000000600ca8 00000ca8 2**3
CONTENTS, ALLOC, LOAD, DATA
I also tested on gcc110 on the compile farm (PPC64 running CentOS
7.4.1708, with GNU ld 2.25.1), and there we see instead:
Relocation section [ 9] '.rela.plt' for section [23] '.plt' at offset 0x5d0 contains 4 entries:
Offset Type Value Addend Name
0x0000000010020148 PPC64_JMP_SLOT 000000000000000000 +0 __libc_start_main
0x0000000010020160 PPC64_JMP_SLOT 000000000000000000 +0 __gmon_start__
0x0000000010020178 PPC64_JMP_SLOT 000000000000000000 +0 __assert_fail
0x0000000010020190 PPC64_JMP_SLOT 000000000000000000 +0 gnu_ifunc
But note that those offsets point into .plt, not .got.plt, as seen
with objdump -h:
22 .plt 00000078 0000000010020130 0000000010020130 00010130 2**3
ALLOC
This commit makes us support all the different combinations above.
With that addressed, we now get:
(gdb) p 'gnu_ifunc@got.plt'
$1 = (<text from jump slot in .got.plt, no debug info>) 0x400753 <final>
And setting a breakpoint on the ifunc finds the ifunc target:
(gdb) b gnu_ifunc
Breakpoint 2 at 0x400753
(gdb) info breakpoints
Num Type Disp Enb Address What
2 breakpoint keep y 0x0000000000400753 <final>
gdb/ChangeLog:
2018-04-26 Pedro Alves <palves@redhat.com>
* elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
commit e2195274d4a0752459ea89ffbf50b2704fb0c0b4
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Apr 26 08:55:02 2018 +0200
x86: fold various non-memory operand AVX512VL templates
There's little point carrying up to three templates per insn flavor
when the sole difference is operand size and the dependency on AVX512VL
being enabled. Instead the need for AVX512VL can be derived from an
operand allowing for ZMMword as well as one or both or XMMword and
YMMword (irrespective of whether this is a register or memory operand).
Without further abstraction to deal with the different Disp8MemShift
values between the templates, only a limited set (mostly ones only
allowing for non-memory operands) can be folded, which is being done
here.
Also drop IgnoreSize wherever possible from anything that's being
touched anyway.
commit 7a69eac330adff3913a8698eac450cc7968ba8b0
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Apr 26 08:53:20 2018 +0200
x86: also optimize zeroing-masking variants of insns
When zeroing an element of a register it doesn't matter whether the zero
results from the actual operation (xor, sub, or nand) or from the
zeroing-masking taking effect due to a clear mask register bit.
commit 1d3f82868db8881cd9ce79ad151fb0a7ebeb2c5a
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Apr 26 08:49:41 2018 +0200
x86: properly force / avoid forcing EVEX encoding
Pseudo prefixes are supposed to be a hint only - when the specific
encoding can't be used to encode an insn, silently override it. But
this overriding must only happen after the respective check, to
avoid forcing EVEX encoding because of something that isn't a valid
register name in the given context.
commit 59ef5df41e8a2addac4c74bb838fe8295cc79ebf
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Apr 26 08:48:56 2018 +0200
x86: CpuXSAVE is a prereq for various other features
All of AVX, LWP, MPX, and PKU require XSAVE, and hence it as well as
XRSTOR should be enabled when enabling these ISA extensions. Leverage
these implications to shorten some of the cpu_flag_init[] entries.
commit 6e041cf4b0b00e85bee85bee98c411f16bd15747
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Apr 26 08:48:01 2018 +0200
x86: drop CpuRegMMX, CpuReg[XYZ]MM, and CpuRegMask
It's not clear to me why they had been introduced - the respective
comments in opcodes/i386-gen.c are certainly wrong: ymm<N> registers
are very well supported (and necessary) with just AVX512F.
commit 1adf7f5604558489bca6e3f8e6ee5e12089f06ef
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Apr 26 08:46:39 2018 +0200
x86: don't recognize bnd<N> as registers without CpuMPX
This is just like for all other extended/optional register sets.
commit 0e0eea782025d92f894f6d132aae2507c6a90a7b
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Apr 26 08:45:35 2018 +0200
x86: x87-related adjustments
Neither 287 wrt 8087 nor 387 wrt 287 are proper supersets - in each case
some insns get removed from the ISA (they become NOPs, but code intended
for newer co-processors should not use them).
Furthermore with .no87, ST should not be recognized as a register name.
commit bed3d976b7a4fd111f3e291f1bd896cf441b3479
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Apr 26 08:31:14 2018 +0200
x86: fix indentation in build_modrm_byte()
The VEX3SOURCES code was (originally) written with just space
indentation, which is not in line with general coding style as well as
the style later in the function.
commit 48db9223e95625a2156f60e8f7f339e4bbde3533
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Apr 26 08:30:45 2018 +0200
x86: move and fold common code in build_modrm_byte()
The source and reg_slot calculations in the VEX3SOURCES only depend on
the number of immediate operands.
commit 2f1bada2dc2e7215cd633b6c39a6c31dbd875bc0
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Apr 26 08:30:06 2018 +0200
x86: drop VexImmExt
It's only used in assertions, and hence not really needed for correct
code generation.
commit dcd7e323760ab296262a2e18e9869d37ff59f340
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Apr 26 08:29:09 2018 +0200
x86: tighten assertion in build_modrm_byte()
All VEX3SOURCES cases should have VexW set, and all should have a SIMD
register destination.
commit 6b8d358865b10f3f8269d0d89ece1b19b114be0d
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Apr 26 08:28:38 2018 +0200
x86: drop dead code from build_modrm_byte()
There are no templates with VexImmExt and ImmExt set at the same time.
There are also no VEX3SOURCES templates with CpuFMA. I assume both are
left-overs from the implementation of an early specification which was
later revised.
commit c47b0ff06d0d17be67ec76cb5e661083901cfb40
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Apr 26 00:00:46 2018 +0000
Automatic date update in version.in
commit f1ac0afe481e83c9a33f247b81fa7de789edc4d9
Author: Christophe Lyon <christophe.lyon@linaro.org>
Date: Wed Apr 18 20:55:29 2018 +0000
[ARM] FDPIC: Update testsuite so that many tests pass with arm*-uclinuxfdpiceabi.
2018-04-25 Christophe Lyon <christophe.lyon@st.com>
binutils/
* testsuite/binutils-all/elfedit-2.d: Accept arm*-*-uclinuxfdpiceabi.
* testsuite/binutils-all/elfedit-3.d: Likewise.
* testsuite/binutils-all/objcopy.exp: Likewise.
* testsuite/binutils-all/strip-3.d: Likewise.
* testsuite/lib/binutils-common.exp: Likewise.
ld/
* testsuite/ld-arm/export-class.exp: Accept arm*-*-uclinuxfdpiceabi.
* testsuite/ld-discard/discard.exp: Likewise.
* testsuite/ld-elf/binutils.exp: Likewise.
* testsuite/ld-elf/commonpage1.d: Likewise.
* testsuite/ld-elf/compress1c.d: Likewise.
* testsuite/ld-elf/compressed1b.d: Likewise.
* testsuite/ld-elf/compressed1c.d: Likewise.
* testsuite/ld-elf/compressed1e.d: Likewise.
* testsuite/ld-elf/dynamic1.d: Likewise.
* testsuite/ld-elf/dynsym1.d: Likewise.
* testsuite/ld-elf/ehdr_start-missing.d: Likewise.
* testsuite/ld-elf/ehdr_start-shared.d: Likewise.
* testsuite/ld-elf/ehdr_start-userdef.d: Likewise.
* testsuite/ld-elf/ehdr_start-weak.d: Likewise.
* testsuite/ld-elf/ehdr_start.d: Likewise.
* testsuite/ld-elf/exclude3b.d: Likewise.
* testsuite/ld-elf/export-class.exp: Likewise.
* testsuite/ld-elf/global1.d: Likewise.
* testsuite/ld-elf/hash.d: Likewise.
* testsuite/ld-elf/header.d: Likewise.
* testsuite/ld-elf/loadaddr1.d: Likewise.
* testsuite/ld-elf/loadaddr2.d: Likewise.
* testsuite/ld-elf/loadaddr3a.d: Likewise.
* testsuite/ld-elf/loadaddr3b.d: Likewise.
* testsuite/ld-elf/local1.d: Likewise.
* testsuite/ld-elf/maxpage1.d: Likewise.
* testsuite/ld-elf/maxpage2.d: Likewise.
* testsuite/ld-elf/maxpage3a.d: Likewise.
* testsuite/ld-elf/mbind1a.d: Likewise.
* testsuite/ld-elf/mbind1b.d: Likewise.
* testsuite/ld-elf/mbind1c.d: Likewise.
* testsuite/ld-elf/multibss1.d: Likewise.
* testsuite/ld-elf/noload-2.d: Likewise.
* testsuite/ld-elf/now-1.d: Likewise.
* testsuite/ld-elf/now-2.d: Likewise.
* testsuite/ld-elf/now-3.d: Likewise.
* testsuite/ld-elf/now-4.d: Likewise.
* testsuite/ld-elf/pie.d: Likewise.
* testsuite/ld-elf/pr12975.d: Likewise.
* testsuite/ld-elf/pr13177.d: Likewise.
* testsuite/ld-elf/pr13195.d: Likewise.
* testsuite/ld-elf/pr16322.d: Likewise.
* testsuite/ld-elf/pr16498a.d: Likewise.
* testsuite/ld-elf/pr16498b.d: Likewise.
* testsuite/ld-elf/pr17615.d: Likewise.
* testsuite/ld-elf/pr19162.d: Likewise.
* testsuite/ld-elf/pr19539.d: Likewise.
* testsuite/ld-elf/pr19617a.d: Likewise.
* testsuite/ld-elf/pr19617b.d: Likewise.
* testsuite/ld-elf/pr19617c.d: Likewise.
* testsuite/ld-elf/pr19698.d: Likewise.
* testsuite/ld-elf/pr19789.d: Likewise.
* testsuite/ld-elf/pr20513c.d: Likewise.
* testsuite/ld-elf/pr20513d.d: Likewise.
* testsuite/ld-elf/pr21384.d: Likewise.
* testsuite/ld-elf/pr21389a.d: Likewise.
* testsuite/ld-elf/pr21389b.d: Likewise.
* testsuite/ld-elf/pr21389c.d: Likewise.
* testsuite/ld-elf/pr21562a.d: Likewise.
* testsuite/ld-elf/pr21562b.d: Likewise.
* testsuite/ld-elf/pr21562c.d: Likewise.
* testsuite/ld-elf/pr21562d.d: Likewise.
* testsuite/ld-elf/pr21562e.d: Likewise.
* testsuite/ld-elf/pr21562f.d: Likewise.
* testsuite/ld-elf/pr21562g.d: Likewise.
* testsuite/ld-elf/pr21562h.d: Likewise.
* testsuite/ld-elf/pr21562i.d: Likewise.
* testsuite/ld-elf/pr21562j.d: Likewise.
* testsuite/ld-elf/pr21562k.d: Likewise.
* testsuite/ld-elf/pr21562l.d: Likewise.
* testsuite/ld-elf/pr21562m.d: Likewise.
* testsuite/ld-elf/pr21562n.d: Likewise.
* testsuite/ld-elf/pr21903a.d: Likewise.
* testsuite/ld-elf/pr21903b.d: Likewise.
* testsuite/ld-elf/pr21903d.d: Likewise.
* testsuite/ld-elf/pr22269a.d: Likewise.
* testsuite/ld-elf/pr22269b.d: Likewise.
* testsuite/ld-elf/pr22393-1a.d: Likewise.
* testsuite/ld-elf/pr22393-1b.d: Likewise.
* testsuite/ld-elf/pr22393-1c.d: Likewise.
* testsuite/ld-elf/pr22393-1d.d: Likewise.
* testsuite/ld-elf/pr22393-1e.d: Likewise.
* testsuite/ld-elf/pr22393-1f.d: Likewise.
* testsuite/ld-elf/pr22423.d: Likewise.
* testsuite/ld-elf/rpath-1.d: Likewise.
* testsuite/ld-elf/rpath-2.d: Likewise.
* testsuite/ld-elf/runpath-1.d: Likewise.
* testsuite/ld-elf/runpath-2.d: Likewise.
* testsuite/ld-elf/seg.d: Likewise.
* testsuite/ld-elf/sizeofb.d: Likewise.
* testsuite/ld-elf/startofb.d: Likewise.
* testsuite/ld-elf/strtab.d: Likewise.
* testsuite/ld-elf/textaddr1.d: Likewise.
* testsuite/ld-elf/textaddr2.d: Likewise.
* testsuite/ld-elf/textaddr3.d: Likewise.
* testsuite/ld-elf/textaddr4.d: Likewise.
* testsuite/ld-elf/textaddr5.d: Likewise.
* testsuite/ld-elf/textaddr6.d: Likewise.
* testsuite/ld-elf/textaddr7.d: Likewise.
* testsuite/ld-elf/tls.exp: Likewise.
* testsuite/ld-elf/tls_common.exp: Likewise.
* testsuite/ld-elf/unknown2.d: Likewise.
* testsuite/ld-gc/abi-note.d: Likewise.
* testsuite/ld-gc/pr11218.d: Likewise.
* testsuite/ld-gc/pr19167.d: Likewise.
* testsuite/ld-gc/pr20022.d: Likewise.
* testsuite/ld-gc/start.d: Likewise.
* testsuite/ld-gc/stop.d: Likewise.
* testsuite/ld-scripts/phdrs2.exp: Likewise.
* testsuite/ld-scripts/rgn-at5.d: Likewise.
* testsuite/ld-undefined/entry-3.d: Likewise.
* testsuite/ld-undefined/entry-4.d: Likewise.
commit 59029f57eba1763bad67167c2805d8df3dfa2285
Author: Christophe Lyon <christophe.lyon@st.com>
Date: Tue Mar 20 10:56:17 2018 +0100
[ARM] FDPIC: Implement Thumb-only PLT for FDPIC.
2018-04-25 Christophe Lyon <christophe.lyon@st.com>
Mickaël Guêné <mickael.guene@st.com>
bfd/
* elf32-arm.c (elf32_arm_fdpic_thumb_plt_entry): New.
(elf32_arm_plt_needs_thumb_stub_p): Handle thumb-only case.
(elf32_arm_populate_plt_entry): Likewise.
(elf32_arm_output_plt_map_1): Likewise.
(elf32_arm_output_arch_local_syms): Likewise.
ld/testsuite/
* arm-elf.exp: Execute the new FDPIC Thumb-only tests.
* fdpic-main-m.d: New test.
* fdpic-main-m.s: New.
* fdpic-main-m.sym: New.
* fdpic-shared-m.d: New test.
* fdpic-shared-m.s: New.
* fdpic-shared-m.sym: New.
commit 4b86cbe91c130077f967fa84b0abdbb68e9ec742
Author: Christophe Lyon <christophe.lyon@st.com>
Date: Tue Mar 20 10:56:10 2018 +0100
[ARM] FDPIC: New tests.
2018-04-25 Christophe Lyon <christophe.lyon@st.com>
Mickaël Guêné <mickael.guene@st.com>
ld/
* testsuite/ld-arm/arm-elf.exp: Execute the new FDPIC tests.
* testsuite/ld-arm/fdpic-main.d: New test.
* testsuite/ld-arm/fdpic-main.ld: New.
* testsuite/ld-arm/fdpic-main.r: New.
* testsuite/ld-arm/fdpic-main.s: New.
* testsuite/ld-arm/fdpic-main.sym: New.
* testsuite/ld-arm/fdpic-shared.d: New test.
* testsuite/ld-arm/fdpic-shared.ld: New.
* testsuite/ld-arm/fdpic-shared.r: New.
* testsuite/ld-arm/fdpic-shared.s: New.
* testsuite/ld-arm/fdpic-shared.sym: New.
commit f350fc2e37d79119afa73361f331b8be1174cf40
Author: Christophe Lyon <christophe.lyon@st.com>
Date: Tue Mar 20 10:56:02 2018 +0100
[ARM] FDPIC: Fix ld testcase not to conflict with uclibc's includes.
2018-04-25 Christophe Lyon <christophe.lyon@st.com>
Mickaël Guêné <mickael.guene@st.com>
ld/
* testsuite/ld-elf/pr2404b.c (main): Rename time variable into
time1.
commit fac7bd6475c4058e7c1e0df29dac50579e427b34
Author: Christophe Lyon <christophe.lyon@st.com>
Date: Tue Mar 20 10:55:53 2018 +0100
[ARM] FDPIC: Make _GLOBAL_OFFSET_TABLE_ a relative symbol
2018-04-25 Christophe Lyon <christophe.lyon@st.com>
Mickaël Guêné <mickael.guene@st.com>
bfd/
* elf32-arm.c (elf32_arm_finish_dynamic_symbol): Handle
_GLOBAL_OFFSET_TABLE_ in FDPIC mode.
commit 29e9b073e3b356aae4c249bf3e265b2a608aea6c
Author: Christophe Lyon <christophe.lyon@st.com>
Date: Tue Mar 20 10:55:45 2018 +0100
[ARM] FDPIC: Translate R_ARM_TARGET2 relocation into R_ARM_GOT32 relocation for FDPIC platform
2018-04-25 Christophe Lyon <christophe.lyon@st.com>
Mickaël Guêné <mickael.guene@st.com>
bfd/
* elf32-arm.c (bfd_elf32_arm_set_target_params): Handle FDPIC case
for R_ARM_TARGET2.
commit cb10292c2a6c26349c02ec275e4087147fd1cdf0
Author: Christophe Lyon <christophe.lyon@st.com>
Date: Tue Mar 20 10:55:37 2018 +0100
[ARM] FDPIC: Add stack segment
The size of the stack segment defaults to 32KB, and can be overridden
by defining the __stacksize symbol.
2018-04-25 Christophe Lyon <christophe.lyon@st.com>
Mickaël Guêné <mickael.guene@st.com>
bfd/
* elf32-arm.c (DEFAULT_STACK_SIZE): New.
(elf32_arm_always_size_sections): Create stack segment.
commit 5c5a4843ec385a60954fbbc4bcf5b64763639bd3
Author: Christophe Lyon <christophe.lyon@st.com>
Date: Tue Mar 20 10:55:29 2018 +0100
[ARM] Add TLS relocations for FDPIC.
Define and handle TLS relocations for FDPIC in BFD and gas.
In gas, the new relocations are rejected if the --fdpic option was not
specified.
We also define the __tdata_start symbol to mark the start of the
.tdata section. This allows FDPIC static binaries to find the start of
.tdata section, since phdr->p_vaddr of TLS segment is not a valid
value for FDPIC.
2018-04-25 Christophe Lyon <christophe.lyon@st.com>
Mickaël Guêné <mickael.guene@st.com>
bfd/:
* bfd-in2.h (BFD_RELOC_ARM_TLS_GD32_FDPIC)
(BFD_RELOC_ARM_TLS_LDM32_FDPIC, BFD_RELOC_ARM_TLS_IE32_FDPIC): New
relocations.
* elf32-arm.c (elf32_arm_howto_table_2): Add R_ARM_TLS_GD32_FDPIC,
R_ARM_TLS_LDM32_FDPIC, R_ARM_TLS_IE32_FDPIC relocations.
(elf32_arm_reloc_map): Add R_ARM_TLS_GD32_FDPIC,
R_ARM_TLS_LDM32_FDPIC, R_ARM_TLS_IE32_FDPIC.
(struct elf32_arm_link_hash_table): Update comment.
(elf32_arm_final_link_relocate): Handle TLS FDPIC relocations.
(IS_ARM_TLS_RELOC): Likewise.
(elf32_arm_check_relocs): Likewise.
(allocate_dynrelocs_for_symbol): Likewise.
(elf32_arm_size_dynamic_sections): Update comment.
* reloc.c: Add BFD_RELOC_ARM_TLS_GD32_FDPIC,
BFD_RELOC_ARM_TLS_LDM32_FDPIC, BFD_RELOC_ARM_TLS_IE32_FDPIC.
gas/
* config/tc-arm.c (reloc_names): Add TLSGD_FDPIC, TLSLDM_FDPIC,
GOTTPOFF_FDIC relocations.
(md_apply_fix): Handle the new TLS FDPIC relocations.
(tc_gen_reloc): Likewise.
(arm_fix_adjustable): Likewise.
include/
* elf/arm.h: Add R_ARM_TLS_GD32_FDPIC, R_ARM_TLS_LDM32_FDPIC,
R_ARM_TLS_IE32_FDPIC.
ld/
* scripttempl/elf.sc: Define __tdata_start for .tdata section.
commit 7801f98f84fefa495941c86e2a859ea8c6c37770
Author: Christophe Lyon <christophe.lyon@st.com>
Date: Tue Mar 20 10:55:20 2018 +0100
[ARM] Implement PLT for FDPIC.
FDPIC requires special PLT entries, defined in this patch.
Note that lazy binding is not supported because of a race condition
for lack of an atomic 64-bits load instruction.
2018-04-25 Christophe Lyon <christophe.lyon@st.com>
Mickaël Guêné <mickael.guene@st.com>
bfd/
* elf32-arm.c (elf32_arm_fdpic_plt_entry): New.
(elf32_arm_create_dynamic_sections): Handle FDPIC.
(elf32_arm_allocate_plt_entry): Likewise.
(elf32_arm_populate_plt_entry): Likewise.
(elf32_arm_output_plt_map_1): Likewise.
commit e8b09b87102504a110f839e67a712094d63dcbab
Author: Christophe Lyon <christophe.lyon@st.com>
Date: Tue Mar 20 10:55:09 2018 +0100
[ARM] Implement FDPIC relocations.
This is the main BFD patch, that enables the linker to actually handle
the FDPIC relocations.
2018-04-25 Christophe Lyon <christophe.lyon@st.com>
Mickaël Guêné <mickael.guene@st.com>
bfd/
* elf32-arm.c (struct fdpic_local): New.
(elf_arm_obj_tdata): Add local_fdpic_cnts field.
(elf32_arm_local_fdpic_cnts): New.
(struct fdpic_global): New.
(elf32_arm_link_hash_entry): Add fdpic_cnts field.
(elf32_arm_link_hash_table): Add srofixup field.
(arm_elf_add_rofixup): New.
(arm_elf_fill_funcdesc): New.
(elf32_arm_link_hash_newfunc): Handle fdpic_cnts.
(elf32_arm_allocate_local_sym_info): Likewise.
(create_got_section): Create .rofixup section.
(elf32_arm_copy_indirect_symbol): Handle fdpic_cnts.
(bfd_elf32_arm_set_target_params): Handle FDPIC.
(elf32_arm_final_link_relocate): Likewise.
(elf32_arm_check_relocs): Likewise.
(allocate_dynrelocs_for_symbol): Likewise.
(elf32_arm_size_dynamic_sections): Likewise.
(elf32_arm_finish_dynamic_sections): Likewise.
(elf32_arm_output_arch_local_syms): Likewise.
(elf32_arm_fdpic_omit_section_dynsym): New.
ld/
* emulparams/armelf_linux_fdpiceabi.sh: Add .rofixup section.
commit 188fd7aea619d9f66a822bad881d8f56892b60aa
Author: Christophe Lyon <christophe.lyon@st.com>
Date: Tue Mar 20 10:54:59 2018 +0100
[ARM] Add FDPIC relocations definitions
Add FDPIC relocation definitions in BFD and gas.
Gas rejects them if the --fdpic option was not specified.
2018-04-25 Christophe Lyon <christophe.lyon@st.com>
Mickaël Guêné <mickael.guene@st.com>
bfd/
* bfd-in2.c (BFD_RELOC_ARM_GOTFUNCDESC)
(BFD_RELOC_ARM_GOTOFFFUNCDESC, BFD_RELOC_ARM_FUNCDESC)
(BFD_RELOC_ARM_FUNCDESC_VALUE): New.
* elf32-arm.c (elf32_arm_howto_table_2): Add R_ARM_GOTFUNCDESC,
R_ARM_GOTOFFFUNCDESC, R_ARM_FUNCDESC, R_ARM_FUNCDESC_VALUE.
(elf32_arm_howto_from_type): Take new members of
elf32_arm_howto_table_2 into account.
(elf32_arm_reloc_map): Add BFD_RELOC_ARM_GOTFUNCDESC,
BFD_RELOC_ARM_GOTOFFFUNCDESC, BFD_RELOC_ARM_FUNCDESC,
BFD_RELOC_ARM_FUNCDESC_VALUE.
* reloc.c: Add BFD_RELOC_ARM_GOTFUNCDESC,
BFD_RELOC_ARM_GOTOFFFUNCDESC, BFD_RELOC_ARM_FUNCDESC,
BFD_RELOC_ARM_FUNCDESC_VALUE.
gas/
* config/tc-arm.c (reloc_names): Add gotfuncdesc, gotofffuncdesc,
funcdesc.
(md_apply_fix): Support the new relocations.
(tc_gen_reloc): Likewise.
* testsuite/gas/arm/reloc-fdpic.d: New.
* testsuite/gas/arm/reloc-fdpic.s: New.
include/
* elf/arm.h (R_ARM_GOTFUNCDESC, R_ARM_GOTOFFFUNCDESC)
(R_ARM_FUNCDESC)
(R_ARM_FUNCDESC_VALUE): Define new relocations.
commit 18a203380502fb3ee75633fd464faa3c83cec710
Author: Christophe Lyon <christophe.lyon@st.com>
Date: Tue Mar 20 10:54:50 2018 +0100
[ARM] Add FDPIC OSABI flag support.
ELF files targetting ARM FDPIC use the ELFOSABI_ARM_FDPIC flag.
Set it appropriately in file generators (eg. gas), and handle it in
readers (eg. readelf).
2018-04-25 Christophe Lyon <christophe.lyon@st.com>
Mickaël Guêné <mickael.guene@st.com>
bfd/
* elf32-arm.c (elf32_arm_print_private_bfd_data): Support
EF_ARM_PIC and ELFOSABI_ARM_FDPIC.
(elf32_arm_post_process_headers): Support ELFOSABI_ARM_FDPIC.
(ELF_OSABI): Define to ELFOSABI_ARM_FDPIC.
binutils/
* readelf.c (decode_ARM_machine_flags): Support EF_ARM_PIC.
(get_osabi_name): Support ELFOSABI_ARM_FDPIC.
gas/
* config/tc-arm.c (arm_fdpic): New.
(elf32_arm_target_format): Support FDPIC.
(OPTION_FDPIC): New.
(md_longopts): Support FDPIC.
(md_parse_option): Likewise.
(md_show_usage): Likewise.
include/
* elf/arm.h (EF_ARM_FDPIC): New.
commit 617a5ada88c7d4b6aae201ad5b295f3d2ef07c10
Author: Christophe Lyon <christophe.lyon@st.com>
Date: Tue Mar 20 10:54:26 2018 +0100
[ARM] Add armelf_linux_fdpiceabi and armelfb_linux_fdpiceabi BFD backends
Initial definition of these new backends.
2018-04-25 Christophe Lyon <christophe.lyon@st.com>
Mickaël Guêné <mickael.guene@st.com>
bfd/
* config.bfd (arm*-*-linux-*): Add arm_elf32_fdpic_be_vec and
arm_elf32_fdpic_le_vec to targ_selvecs. Accept
arm*-*-uclinuxfdpiceabi.
* configure.ac: Add support for arm_elf32_fdpic_be_vec and
arm_elf32_fdpic_le_vec.
* configure: Regenerate.
* elf32-arm.c (struct elf32_arm_link_hash_table): Add fdpic_p.
(elf32_arm_link_hash_table_create): Initialize fdpic_p.
(TARGET_LITTLE_SYM, TARGET_LITTLE_NAME, TARGET_BIG_SYM)
(TARGET_BIG_NAME, elf_match_priority): Define for FDPIC targets.
(elf32_arm_fdpic_link_hash_table_create): New.
* targets.c (_bfd_target_vector): Add arm_elf32_fdpic_be_vec and
arm_elf32_fdpic_le_vec.
ld/
* Makefile.am (ALL_EMULATION_SOURCES): Add
earmelf_linux_fdpiceabi.c and earmelfb_linux_fdpiceabi.c.
(earmelf_linux_fdpiceabi.c, earmelfb_linux_fdpiceabi.c): New rules.
* Makefile.in: Regenerate.
* configure.tgt (arm*-*-uclinuxfdpiceabi): Handle new target.
* emulparams/armelf_linux_fdpiceabi.sh: New.
* emulparams/armelfb_linux_fdpiceabi.sh: New.
commit 249b57335279b1051456884f1a908cdec907f43a
Author: Pedro Alves <palves@redhat.com>
Date: Wed Apr 25 17:28:25 2018 +0100
Fix new inferior events output
Since f67c0c917150 ("Enable 'set print inferior-events' and improve
detach/fork/kill/exit messages"), when detaching a remote process, we
get, for detach against a remote target:
(gdb) detach
Detaching from program: ...., process 5388
Ending remote debugging.
[Inferior 1 (Thread 5388.5388) detached]
^^^^^^^^^^^^^^^^
That is incorrect, for it is printing a thread id as string while we
should be printing the process id instead. I.e., either one of:
[Inferior 1 (process 5388) detached]
[Inferior 1 (Remote target) detached]
depending on remote stub support for the multi-process extensions.
Similarly, after killing a process, we're printing thread ids while we
should be printing process ids. E.g., on native GNU/Linux:
(gdb) k
Kill the program being debugged? (y or n) y
[Inferior 1 (Thread 0x7ffff7faa8c0 (LWP 30721)) has been killed]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
while it should have been:
Kill the program being debugged? (y or n) y
[Inferior 1 (process 30721) has been killed]
^^^^^^^^^^^^^
There's a wording inconsistency between detach and kill:
[Inferior 1 (process 30721) has been killed]
[Inferior 1 (process 30721) detached]
Given we were already saying "detached" instead of "has been
detached", and we used to say just "exited", and given that the "has
been" doesn't really add any information, this commit changes the
message to just "killed":
[Inferior 1 (process 30721) killed]
gdb/ChangeLog:
2018-04-25 Pedro Alves <palves@redhat.com>
* infcmd.c (kill_command): Print the pid as string, not the whole
thread's ptid. Add comment. s/has been killed/killed/ in output
message.
* remote.c (remote_detach_1): Print the pid as string, not the
whole thread's ptid.
gdb/testsuite/ChangeLog:
2018-04-25 Pedro Alves <palves@redhat.com>
* gdb.base/hook-stop.exp: Expect "killed" instead of "has been
killed".
* gdb.base/kill-after-signal.exp: Likewise.
* gdb.threads/kill.exp: Likewise.
commit bacd145775e3ca1a9d1a6d0b65c4ba10b307e167
Author: Jan Beulich <jbeulich@novell.com>
Date: Wed Apr 25 16:26:10 2018 +0200
x86: drop redundant AVX512VL shift templates
These were wrongly left in place by commit ed438a93f1 ("x86: fold
certain AVX512 rotate and shift templates").
commit 10bba94bd44045559cfd048cd34376090dd8107a
Author: Tamar Christina <tamar.christina@arm.com>
Date: Wed Apr 25 13:37:30 2018 +0100
Fix the mask for the sqrdml(a|s)h instructions.
Rn is supposed to have a 5 bit range but instead was given 4 bits
causing these instructions to disassemble as unknown instructions.
opcodes/
* aarch64-tbl.h (sqrdmlah, sqrdmlsh): Fix masks.
gas/
* testsuite/gas/aarch64/rdma.s: Test for larger register numbers.
* testsuite/gas/aarch64/rdma.d: Update results.
* testsuite/gas/aarch64/rdma-directive.d: Likewise.
commit 1e84581ff0b66168d15270079e8a4d2d12948925
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Apr 25 10:05:12 2018 +0100
Updated Spanish translation for the gas directory.
commit d99b4b92c8ed0f7ef98f370bbf65a360ed66ad7b
Author: Alan Modra <amodra@gmail.com>
Date: Wed Apr 25 13:27:22 2018 +0930
Silence gcc-8 warnings
This seems to work with gcc-8 and a bunch of prior gcc versions I tested.
* elf-linux-core.h: Disable gcc-8 string truncation warning.
* elf.c (elfcore_write_prpsinfo): Likewise.
commit 651d16203867f8013a0f78a2f2e24df8c02d1377
Author: Cary Coutant <ccoutant@gmail.com>
Date: Tue Apr 24 21:57:37 2018 -0700
Fix bug with relocation addends and merge sections with --icf.
During --icf processing, gold was incorrectly processing the relocation
addend for references to items in a merge section. PC-relative references
and other forms of reference with a biased base address require a
non-section local symbol, where the addend is purely the bias.
gold/
PR gold/20642
PR gold/22820
* gc.h (gc_process_relocs): Flag STT_SECTION symbols in symvec.
* icf.cc (get_section_contents): For merge sections, ignore the
addend for relocations against non-section symbols.
commit 2ac93be706418f3b2aebeb22159a328023faed52
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 16 20:33:36 2018 +0930
Remove arm-aout and arm-coff support
This also removes arm-netbsd (not arm-netbsdelf!), arm-openbsd, and
arm-riscix. Those targets weren't on the obsolete list but they are
all aout, and it doesn't make all that much sense to remove arm-aout
without removing them too.
bfd/
* Makefile.am: Remove arm-aout and arm-coff support.
* config.bfd: Likewise.
* configure.ac: Likewise.
* targets.c: Likewise.
* aout-arm.c: Delete.
* armnetbsd.c: Delete.
* riscix.c: Delete.
* Makefile.in: Regenerate.
* configure: Regenerate.
* po/SRC-POTFILES.in: Regenerate.
binutils/
* testsuite/binutils-all/arm/objdump.exp: Remove arm-aout and
arm-coff support.
* testsuite/binutils-all/objcopy.exp: Likewise.
* testsuite/lib/binutils-common.exp: Likewise.
gas/
* Makefile.am: Remove arm-aout and arm-coff support.
* config/tc-arm.c: Likewise.
* config/tc-arm.h: Likewise.
* configure.tgt: Likewise.
* testsuite/gas/aarch64/codealign.d: Likewise.
* testsuite/gas/aarch64/mapping.d: Likewise.
* testsuite/gas/aarch64/mapping2.d: Likewise.
* testsuite/gas/arm/adds-thumb1-reloc-local-armv7-m.d: Likewise.
* testsuite/gas/arm/adds-thumb1-reloc-local.d: Likewise.
* testsuite/gas/arm/addsw-bad.d: Likewise.
* testsuite/gas/arm/align.d: Likewise.
* testsuite/gas/arm/align64.d: Likewise.
* testsuite/gas/arm/arch7.d: Likewise.
* testsuite/gas/arm/arch7a-mp.d: Likewise.
* testsuite/gas/arm/arch7em.d: Likewise.
* testsuite/gas/arm/archv8m-main-dsp-5.d: Likewise.
* testsuite/gas/arm/arm-it-auto-2.d: Likewise.
* testsuite/gas/arm/arm-it-auto-3.d: Likewise.
* testsuite/gas/arm/arm-it-auto.d: Likewise.
* testsuite/gas/arm/arm-it-bad-2.d: Likewise.
* testsuite/gas/arm/arm-it.d: Likewise.
* testsuite/gas/arm/armv7e-m+fpv5-d16.d: Likewise.
* testsuite/gas/arm/armv7e-m+fpv5-sp-d16.d: Likewise.
* testsuite/gas/arm/armv8-2-fp16-scalar-thumb.d: Likewise.
* testsuite/gas/arm/armv8-2-fp16-scalar.d: Likewise.
* testsuite/gas/arm/armv8-2-fp16-simd-thumb.d: Likewise.
* testsuite/gas/arm/armv8-2-fp16-simd.d: Likewise.
* testsuite/gas/arm/armv8-a+crypto.d: Likewise.
* testsuite/gas/arm/armv8-a+fp.d: Likewise.
* testsuite/gas/arm/armv8-a+ras.d: Likewise.
* testsuite/gas/arm/armv8-a+rdma-warning.d: Likewise.
* testsuite/gas/arm/armv8-a+rdma.d: Likewise.
* testsuite/gas/arm/armv8-a+simd.d: Likewise.
* testsuite/gas/arm/armv8-a-barrier-thumb.d: Likewise.
* testsuite/gas/arm/armv8-r+fp.d: Likewise.
* testsuite/gas/arm/armv8-r+simd.d: Likewise.
* testsuite/gas/arm/armv8-r-barrier-thumb.d: Likewise.
* testsuite/gas/arm/armv8_1-a+simd.d: Likewise.
* testsuite/gas/arm/armv8_2+rdma.d: Likewise.
* testsuite/gas/arm/armv8_2-a.d: Likewise.
* testsuite/gas/arm/armv8_3-a-fp.d: Likewise.
* testsuite/gas/arm/armv8_3-a-simd.d: Likewise.
* testsuite/gas/arm/armv8a-automatic-hlt.d: Likewise.
* testsuite/gas/arm/armv8a-automatic-lda.d: Likewise.
* testsuite/gas/arm/attr-syntax.d: Likewise.
* testsuite/gas/arm/automatic-bw.d: Likewise.
* testsuite/gas/arm/automatic-cbz.d: Likewise.
* testsuite/gas/arm/automatic-clrex.d: Likewise.
* testsuite/gas/arm/automatic-lda.d: Likewise.
* testsuite/gas/arm/automatic-ldaex.d: Likewise.
* testsuite/gas/arm/automatic-ldaexb.d: Likewise.
* testsuite/gas/arm/automatic-ldrex.d: Likewise.
* testsuite/gas/arm/automatic-ldrexd.d: Likewise.
* testsuite/gas/arm/automatic-movw.d: Likewise.
* testsuite/gas/arm/automatic-sdiv.d: Likewise.
* testsuite/gas/arm/automatic-strexb.d: Likewise.
* testsuite/gas/arm/barrier-bad-thumb.d: Likewise.
* testsuite/gas/arm/barrier-bad.d: Likewise.
* testsuite/gas/arm/barrier-thumb.d: Likewise.
* testsuite/gas/arm/barrier.d: Likewise.
* testsuite/gas/arm/bignum1.d: Likewise.
* testsuite/gas/arm/blx-bad.d: Likewise.
* testsuite/gas/arm/blx-bl-convert.d: Likewise.
* testsuite/gas/arm/blx-local.s: Likewise.
* testsuite/gas/arm/crc32-armv8-a-bad.d: Likewise.
* testsuite/gas/arm/crc32-armv8-a.d: Likewise.
* testsuite/gas/arm/crc32-armv8-r-bad.d: Likewise.
* testsuite/gas/arm/crc32-armv8-r.d: Likewise.
* testsuite/gas/arm/dis-data.d: Likewise.
* testsuite/gas/arm/dis-data2.d: Likewise.
* testsuite/gas/arm/dis-data3.d: Likewise.
* testsuite/gas/arm/eabi_attr_1.d: Likewise.
* testsuite/gas/arm/fp-save.d: Likewise.
* testsuite/gas/arm/group-reloc-alu-encoding-bad.d: Likewise.
* testsuite/gas/arm/group-reloc-alu-parsing-bad.d: Likewise.
* testsuite/gas/arm/group-reloc-alu.d: Likewise.
* testsuite/gas/arm/group-reloc-ldc-encoding-bad.d: Likewise.
* testsuite/gas/arm/group-reloc-ldc-parsing-bad.d: Likewise.
* testsuite/gas/arm/group-reloc-ldc.d: Likewise.
* testsuite/gas/arm/group-reloc-ldr-encoding-bad.d: Likewise.
* testsuite/gas/arm/group-reloc-ldr-parsing-bad.d: Likewise.
* testsuite/gas/arm/group-reloc-ldr.d: Likewise.
* testsuite/gas/arm/group-reloc-ldrs-encoding-bad.d: Likewise.
* testsuite/gas/arm/group-reloc-ldrs-parsing-bad.d: Likewise.
* testsuite/gas/arm/group-reloc-ldrs.d: Likewise.
* testsuite/gas/arm/insn-error-a.d: Likewise.
* testsuite/gas/arm/insn-error-t.d: Likewise.
* testsuite/gas/arm/inst-po-2.d: Likewise.
* testsuite/gas/arm/inst-po-3.d: Likewise.
* testsuite/gas/arm/inst-po-be.d: Likewise.
* testsuite/gas/arm/inst-po.d: Likewise.
* testsuite/gas/arm/ldconst.d: Likewise.
* testsuite/gas/arm/ldgesb-bad.d: Likewise.
* testsuite/gas/arm/ldgesh-bad.d: Likewise.
* testsuite/gas/arm/ldst-offset0.d: Likewise.
* testsuite/gas/arm/local_function.d: Likewise.
* testsuite/gas/arm/local_label_coff.d: Likewise.
* testsuite/gas/arm/local_label_elf.d: Likewise.
* testsuite/gas/arm/mapping.d: Likewise.
* testsuite/gas/arm/mapping2.d: Likewise.
* testsuite/gas/arm/mapping3.d: Likewise.
* testsuite/gas/arm/mapping4.d: Likewise.
* testsuite/gas/arm/mapshort-elf.d: Likewise.
* testsuite/gas/arm/mask_1-armv8-a.d: Likewise.
* testsuite/gas/arm/mask_1-armv8-r.d: Likewise.
* testsuite/gas/arm/movs-thumb1-reloc-local-armv7-m.d: Likewise.
* testsuite/gas/arm/movs-thumb1-reloc-local.d: Likewise.
* testsuite/gas/arm/movw-local.d: Likewise.
* testsuite/gas/arm/mrs-msr-thumb-v6t2.d: Likewise.
* testsuite/gas/arm/mrs-msr-thumb-v7-m.d: Likewise.
* testsuite/gas/arm/mrs-msr-thumb-v7e-m.d: Likewise.
* testsuite/gas/arm/msr-imm-bad.d: Likewise.
* testsuite/gas/arm/msr-reg-bad.d: Likewise.
* testsuite/gas/arm/msr-reg-thumb.d: Likewise.
* testsuite/gas/arm/nomapping.d: Likewise.
* testsuite/gas/arm/nops.d: Likewise.
* testsuite/gas/arm/pic.d: Likewise.
* testsuite/gas/arm/pinsn.d: Likewise.
* testsuite/gas/arm/plt-1.d: Likewise.
* testsuite/gas/arm/pr21458.d: Likewise.
* testsuite/gas/arm/pr9722.d: Likewise.
* testsuite/gas/arm/strex-t.d: Likewise.
* testsuite/gas/arm/t2-branch-global.d: Likewise.
* testsuite/gas/arm/target-reloc-1.d: Likewise.
* testsuite/gas/arm/thumb-b-bad.d: Likewise.
* testsuite/gas/arm/thumb-w-bad.d: Likewise.
* testsuite/gas/arm/thumb-w-good.d: Likewise.
* testsuite/gas/arm/thumb.d: Likewise.
* testsuite/gas/arm/thumb2_it.d: Likewise.
* testsuite/gas/arm/thumb2_it_auto.d: Likewise.
* testsuite/gas/arm/thumb2_it_search.d: Likewise.
* testsuite/gas/arm/thumb2_ldmstm.d: Likewise.
* testsuite/gas/arm/thumb2_ldr_immediate_armv6.d: Likewise.
* testsuite/gas/arm/thumb2_ldr_immediate_armv6t2.d: Likewise.
* testsuite/gas/arm/thumb2_ldr_immediate_highregs_armv6t2.d: Likewise.
* testsuite/gas/arm/thumb2_pool.d: Likewise.
* testsuite/gas/arm/thumb2_vpool.d: Likewise.
* testsuite/gas/arm/thumb2_vpool_be.d: Likewise.
* testsuite/gas/arm/thumb32.d: Likewise.
* testsuite/gas/arm/thumbver.d: Likewise.
* testsuite/gas/arm/tls.d: Likewise.
* testsuite/gas/arm/tls_vxworks.d: Likewise.
* testsuite/gas/arm/undefined.d: Likewise.
* testsuite/gas/arm/undefined_coff.d: Likewise.
* testsuite/gas/arm/unwind.d: Likewise.
* testsuite/gas/arm/v4bx.d: Likewise.
* testsuite/gas/arm/vcmp-noprefix-imm.d: Likewise.
* testsuite/gas/arm/vcvt-bad.d: Likewise.
* testsuite/gas/arm/vfma1.d: Likewise.
* testsuite/gas/arm/vldconst.d: Likewise.
* testsuite/gas/arm/vldconst_be.d: Likewise.
* testsuite/gas/arm/vldm-arm.d: Likewise.
* testsuite/gas/arm/vldr.d: Likewise.
* testsuite/gas/arm/weakdef-1.d: Likewise.
* testsuite/gas/arm/weakdef-2.d: Likewise.
* config/te-riscix.h: Delete.
* Makefile.in: Regenerate.
* po/POTFILES.in: Regenerate.
ld/
* Makefile.am: Remove arm-aout and arm-coff support.
* configure.tgt: Likewise.
* testsuite/ld-arm/attr-merge-div-00.d: Likewise.
* testsuite/ld-arm/attr-merge-div-01-m3.d: Likewise.
* testsuite/ld-arm/attr-merge-div-01.d: Likewise.
* testsuite/ld-arm/attr-merge-div-02.d: Likewise.
* testsuite/ld-arm/attr-merge-div-10-m3.d: Likewise.
* testsuite/ld-arm/attr-merge-div-10.d: Likewise.
* testsuite/ld-arm/attr-merge-div-11.d: Likewise.
* testsuite/ld-arm/attr-merge-div-12.d: Likewise.
* testsuite/ld-arm/attr-merge-div-120.d: Likewise.
* testsuite/ld-arm/attr-merge-div-20.d: Likewise.
* testsuite/ld-arm/attr-merge-div-21.d: Likewise.
* testsuite/ld-arm/attr-merge-div-22.d: Likewise.
* testsuite/ld-arm/attr-merge-hardfp-use-1.d: Likewise.
* testsuite/ld-arm/attr-merge-hardfp-use-2.d: Likewise.
* testsuite/ld-arm/attr-merge-nosection-1.d: Likewise.
* testsuite/ld-arm/attr-merge-unknown-2.d: Likewise.
* testsuite/ld-arm/attr-merge-unknown-2r.d: Likewise.
* testsuite/ld-arm/attr-merge-unknown-3.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-1.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-10.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-10r.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-11.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-11r.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-12.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-12r.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-13.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-13r.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-14.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-14r.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-1r.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-2.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-2r.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-3.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-3r.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-4.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-4r.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-5.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-5r.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-6.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-6r.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-7.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-7r.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-8.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-8r.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-9.d: Likewise.
* testsuite/ld-arm/attr-merge-vfp-9r.d: Likewise.
* testsuite/ld-arm/attr-merge-wchar-00-nowarn.d: Likewise.
* testsuite/ld-arm/attr-merge-wchar-00.d: Likewise.
* testsuite/ld-arm/attr-merge-wchar-02-nowarn.d: Likewise.
* testsuite/ld-arm/attr-merge-wchar-02.d: Likewise.
* testsuite/ld-arm/attr-merge-wchar-04-nowarn.d: Likewise.
* testsuite/ld-arm/attr-merge-wchar-04.d: Likewise.
* testsuite/ld-arm/attr-merge-wchar-20-nowarn.d: Likewise.
* testsuite/ld-arm/attr-merge-wchar-20.d: Likewise.
* testsuite/ld-arm/attr-merge-wchar-22-nowarn.d: Likewise.
* testsuite/ld-arm/attr-merge-wchar-22.d: Likewise.
* testsuite/ld-arm/attr-merge-wchar-24-nowarn.d: Likewise.
* testsuite/ld-arm/attr-merge-wchar-40-nowarn.d: Likewise.
* testsuite/ld-arm/attr-merge-wchar-40.d: Likewise.
* testsuite/ld-arm/attr-merge-wchar-42-nowarn.d: Likewise.
* testsuite/ld-arm/attr-merge-wchar-44-nowarn.d: Likewise.
* testsuite/ld-arm/attr-merge-wchar-44.d: Likewise.
* testsuite/ld-arm/eabi-hard-float.d: Likewise.
* testsuite/ld-arm/eabi-soft-float-ABI4.d: Likewise.
* testsuite/ld-arm/eabi-soft-float-r.d: Likewise.
* testsuite/ld-arm/eabi-soft-float.d: Likewise.
* testsuite/ld-arm/gc-hidden-1.d: Likewise.
* emulparams/armaoutb.sh: Delete.
* emulparams/armaoutl.sh: Delete.
* emulparams/armcoff.sh: Delete.
* emulparams/armnbsd.sh: Delete.
* emulparams/riscix.sh: Delete.
* scripttempl/armaout.sc: Delete.
* scripttempl/armcoff.sc: Delete.
* scripttempl/riscix.sc: Delete.
* Makefile.in: Regenerate.
* po/BLD-POTFILES.in: Regenerate.
commit 00ae6230f072e5f0d570c29985f5526cd6bfde35
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Apr 25 00:00:32 2018 +0000
Automatic date update in version.in
commit 890d155592e66dc01fc4a9affba806c4e9fc36ba
Author: Cary Coutant <ccoutant@gmail.com>
Date: Mon Apr 23 09:27:35 2018 -0700
Fix internal error caused by conflicting default version definitions.
gold/
PR gold/16504
* dynobj.cc (Versions::symbol_section_contents): Don't set
VERSYM_HIDDEN flag for undefined symbols.
* symtab.cc (Symbol_table::add_from_object): Don't override default
version definition with a different default version.
* symtab.h (Symbol::from_dyn): New method.
* testsuite/plugin_test.c (struct sym_info): Add ver field.
(claim_file_hook): Pass symbol version to plugin API.
(parse_readelf_line): Parse symbol version.
* testsuite/Makefile.am (ver_test_pr16504): New test case.
* testsuite/Makefile.in: Regenerate.
* testsuite/ver_test_pr16504.sh: New test script.
* testsuite/ver_test_pr16504_a.c: New source file.
* testsuite/ver_test_pr16504_a.script: New version script.
* testsuite/ver_test_pr16504_b.c: New source file.
* testsuite/ver_test_pr16504_b.script: New version script.
commit f67c0c9171508672167b6868c67211571421a1c6
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Tue Jan 30 19:09:42 2018 -0500
Enable 'set print inferior-events' and improve detach/fork/kill/exit messages
This patch aims to turn 'set print inferior-events' always on, and do
some cleanup on the messages printed by GDB when various inferior
events happen (attach, detach, fork, kill, exit).
To make sure that the patch is correct, I've tested it with a handful
of combinations of 'set follow-fork-mode', 'set detach-on-fork' and
'set print inferior-events'. In the end, I decided to make my
hand-made test into an official testcase. More on that below.
Using the following program as an example:
#include <unistd.h>
int main ()
{
fork ();
return 0;
}
We see the following outputs from the patched GDB:
- With 'set print inferior-events on':
(gdb) r
Starting program: a.out
[Detaching after fork from child process 27749]
[Inferior 1 (process 27745) exited normally]
(gdb)
- With 'set print inferior-events off':
(gdb) r
Starting program: a.out
[Inferior 1 (process 27823) exited normally]
(gdb)
Comparing this against an unpatched GDB:
- With 'set print inferior-events off' and 'set follow-fork-mode
child':
(gdb) r
Starting program: a.out
[Inferior 2 (process 5993) exited normally]
(gdb)
Compare this against an unpatched GDB:
(unpatched-gdb) r
Starting program: a.out
[New process 5702]
[Inferior 2 (process 5702) exited normally]
(unpatched-gdb)
It is possible to notice that, in this scenario, the patched GDB
will lose the '[New process %d]' message.
- With 'set print inferior-events on', 'set follow-fork-mode child'
and 'set detach-on-fork on':
(gdb) r
Starting program: a.out
[Attaching after process 27905 fork to child process 27909]
[New inferior 2 (process 27909)]
[Detaching after fork from parent process 27905]
[Inferior 1 (process 27905) detached]
[Inferior 2 (process 27909) exited normally]
(gdb)
Compare this output with an unpatched GDB, using the same settings:
(unpatched-gdb) r
Starting program: a.out
[New inferior 28033]
[Inferior 28029 detached]
[New process 28033]
[Inferior 2 (process 28033) exited normally]
[Inferior 28033 exited]
(unpatched-gdb)
As can be seen above, I've also made a few modifications to messages
that are printed when 'set print inferior-events' is on. For example,
a few of the messages did not contain the '[' and ']' as
prefix/suffix, which led to a few inconsistencies like:
Attaching after process 22995 fork to child process 22999.
[New inferior 22999]
Detaching after fork from child process 22999.
[Inferior 22995 detached]
[Inferior 2 (process 22999) exited normally]
So I took the opportunity and included the square brackets where
applicable. I have also made the existing messages more uniform, by
always printing "Inferior %d (process %d)..." where applicable. This
makes it easier to identify the inferior number and the PID number
from the messages.
As suggested by Pedro, the "[Inferior %d exited]" message from
'exit_inferior' has been removed, because it got duplicated when
'inferior-events' is on. I'm also using the
'add_{thread,inferior}_silent' versions (instead of their verbose
counterparts) on some locations, also to avoid duplicated messages.
For example, a patched GDB with 'set print inferior-events on', 'set
detach-on-fork on' and 'set follow-fork-mode child', but using
'add_thread', would print:
(gdb) run
Starting program: a.out
[Attaching after process 25088 fork to child process 25092.]
[New inferior 25092] <--- duplicated
[Detaching after fork from child process 25092.]
[Inferior 25088 detached]
[New process 25092] <--- duplicated
[Inferior 2 (process 25092) exited normally]
But if we use 'add_thread_silent' (with the same configuration as
before):
(gdb) run
Starting program: a.out
[Attaching after process 31606 fork to child process 31610]
[New inferior 2 (process 31610)]
[Detaching after fork from parent process 31606]
[Inferior 1 (process 31606) detached]
[Inferior 2 (process 31610) exited normally]
As for the tests, the configuration options being exercised are:
- follow-fork-mode: child/parent
- detach-on-fork: on/off
- print inferior-events: on/off
It was also necessary to perform adjustments on several testcases,
because the expected messages changed considerably.
Built and regtested on BuildBot, without regressions.
gdb/ChangeLog:
2018-04-24 Jan Kratochvil <jan.kratochvil@redhat.com>
Sergio Durigan Junior <sergiodj@redhat.com>
Pedro Alves <palves@redhat.com>
* infcmd.c (kill_command): Print message when inferior has
been killed.
* inferior.c (print_inferior_events): Remove 'static'. Set as
'1'.
(add_inferior): Improve message printed when
'print_inferior_events' is on.
(exit_inferior): Remove message printed when
'print_inferior_events' is on.
(detach_inferior): Improve message printed when
'print_inferior_events' is on.
(initialize_inferiors): Use 'add_inferior_silent' to set
'current_inferior_'.
* inferior.h (print_inferior_events): Declare here as
'extern'.
* infrun.c (follow_fork_inferior): Print '[Attaching...]' or
'[Detaching...]' messages when 'print_inferior_events' is on.
Use 'add_thread_silent' instead of 'add_thread'. Add '[' and ']'
as prefix/suffix for messages. Remove periods. Fix erroneous
'Detaching after fork from child...', replace it by '... from
parent...'.
(handle_vfork_child_exec_or_exit): Add '[' and ']' as
prefix/suffix when printing 'Detaching...' messages. Print
them when 'print_inferior_events' is on.
* remote.c (remote_detach_1): Print message when detaching
from inferior and '!is_fork_parent'.
gdb/testsuite/ChangeLog:
2018-04-24 Jan Kratochvil <jan.kratochvil@redhat.com>
Sergio Durigan Junior <sergiodj@redhat.com>
Pedro Alves <palves@redhat.com>
* gdb.base/attach-non-pgrp-leader.exp: Adjust 'Detaching...'
regexps to expect for '[Inferior ... detached]' as well.
* gdb.base/attach.exp: Likewise.
* gdb.base/catch-syscall.exp (check_for_program_end): Adjust
"gdb_continue_to_end".
(test_catch_syscall_with_wrong_args): Likewise.
* gdb.base/foll-fork.exp: Adjust regexps to match '[' and
']'. Don't set 'verbose' on.
* gdb.base/foll-vfork.exp: Likewise.
* gdb.base/fork-print-inferior-events.c: New file.
* gdb.base/fork-print-inferior-events.exp: New file.
* gdb.base/hook-stop.exp: Adjust regexps to expect for new
'[Inferior ... has been killed]' message.
* gdb.base/kill-after-signal.exp: Likewise.
* gdb.base/solib-overlap.exp: Adjust regexps to expect for new
detach message.
* gdb.threads/kill.exp: Adjust regexps to expect for new kill
message.
* gdb.threads/clone-attach-detach.exp: Adjust 'Detaching...'
regexps to expect for '[Inferior ... detached]' as well.
* gdb.threads/process-dies-while-detaching.exp: Likewise.
commit db0c309f4011ca94a4abc8458e27f3734dab92ac
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Apr 24 16:57:04 2018 +0100
Fix an illegal memory access when trying to copy an ELF binary with corrupt section symbols.
PR 23113
* elf.c (ignore_section_sym): Check for the output_section pointer
being NULL before dereferencing it.
commit aa4a8c2a2a67545e90c877162c53cc9de42dc8b4
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Apr 24 16:31:27 2018 +0100
Fix an illegal memory access when copying a PE format file with corrupt debug information.
PR 23110
* peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Check for
a negative PE_DEBUG_DATA size before iterating over the debug data.
commit 0a8ddac418d3e8e12a1bb51c3b0da90155f83403
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Tue Apr 24 10:14:14 2018 -0400
info-shared.exp: Replace libs=-ldl with shlib_load
As reported in PR 23104, -ldl doesn't work on FreeBSD. Replace it with
shlib_load, which adds the right flags for dynamic library loading based
on the current target platform.
The test still passes on Linux, and should now pass on FreeBSD, though I
did not test personally.
gdb/testsuite/ChangeLog:
PR gdb/23104
* gdb.base/info-shared.exp: Replace libs=-ldl with shlib_load.
commit e427af1889e6d169c3390f6960f1efdd08dca883
Author: Tom Tromey <tom@tromey.com>
Date: Sun Apr 22 17:57:32 2018 -0600
Reindent cli-out.h
I noticed that cli-out.h had incorrect indentation in some spots.
This fixes it.
ChangeLog
2018-04-24 Tom Tromey <tom@tromey.com>
* cli-out.h: Reindent.
commit 05b1d8d6fcde4805d25c9121f5b051f59580887a
Author: Tom Tromey <tom@tromey.com>
Date: Sun Apr 22 17:54:20 2018 -0600
Remove cli_ui_out::out_field_fmt
I noticed that cli_ui_out::out_field_fmt is only used by a single
caller, and it can easily be replaced by fputs_filtered. So, this
patch removes it.
ChangeLog
2018-04-24 Tom Tromey <tom@tromey.com>
* cli-out.c (cli_ui_out::out_field_fmt): Remove.
(cli_ui_out::do_field_string): Use fputs_filtered.
* cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
commit 0f703942d7c4f373e2aea5000081dbdc9ef8e2b1
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Apr 24 00:00:42 2018 +0000
Automatic date update in version.in
commit a95c7daba4c74e61ac37ffaaaa0ba49bf16e474e
Author: Tom Tromey <tom@tromey.com>
Date: Sat Apr 21 16:38:33 2018 -0600
Remove a cleanup from scm-frame.c
This removes a cleanup from scm-frame.c, replacing it with
unique_xmalloc_ptr and a new scope. I believe this also fixes a
latent bug involving calling do_cleanups twice for a single cleanup.
Regression tested using the gdb.guile test suite on x86-64 Fedora 26.
ChangeLog
2018-04-23 Tom Tromey <tom@tromey.com>
* guile/scm-frame.c (gdbscm_frame_read_var): Use
gdb::unique_xmalloc_ptr.
commit 458412c36845f20bcfef47eef3005fb2054a7695
Author: Tom Tromey <tom@tromey.com>
Date: Mon Apr 23 09:21:18 2018 -0600
Regenerate gdb/configure and gdbserver/configure
Pedro pointed out that gdb/configure and gdbserver/configure weren't
updated after some recent *.m4 changes.
This patch rebuilds those files. Tested by rebuilding. Pedro
approved this in the thread where he raised this issue, so I'm pushing
it in.
ChangeLog
2018-04-23 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
gdbserver/ChangeLog
2018-04-23 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
commit b9f26d2e29bb56a0404216c5612d6d7fee54a769
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 23 23:47:22 2018 +0930
Revert bfd part of "Silence gcc-8 warnings"
The gcc warning has been fixed, and the patch regressed builds with
some older versions of gcc.
* elf-linux-core.h: Revert last change.
* elf.c: Likewise.
commit bf82069dce1b1a88560e5d7320342c78372b627e
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Apr 23 12:52:42 2018 +0100
Prevent an illegal memory access in gprof by ensuring that string tables for aout format files are always zero-terminated.
PR 23056
* aoutx.h (aout_get_external_symbols): Allocate an extra byte at
the end of the string table, and zero it.
commit 5a6312e8c015d4a98020038f3b6e144db230f3ca
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 23 09:42:44 2018 +0930
Silence gcc-8 warnings
All of these warnings were false positives. -Wstringop-truncation is
particularly annoying when it warns about strncpy used quite correctly.
bfd/
* elf-linux-core.h (swap_linux_prpsinfo32_ugid32_out): Disable
gcc-8 string truncation warning.
(swap_linux_prpsinfo32_ugid16_out): Likewise.
(swap_linux_prpsinfo64_ugid32_out): Likewise.
(swap_linux_prpsinfo64_ugid16_out): Likewise.
* elf.c (elfcore_write_prpsinfo): Likewise.
gas/
* stabs.c (generate_asm_file): Use memcpy rather than strncpy.
Remove call to strlen inside loop.
* config/tc-cr16.c (getreg_image): Warning fix.
* config/tc-crx.c (getreg_image): Warning fix.
commit 5373441d20b652d5b0332b6cada74524af3ae707
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Apr 23 00:00:25 2018 +0000
Automatic date update in version.in
commit db86b02b3ac8426f3fc0754f48f3645235cc2ae6
Author: Rajendra SY <rajendra.sy@gmail.com>
Date: Sun Apr 22 18:19:26 2018 -0400
Fixed test case to compile & run on FreeBSD
Problems:
1. linking -dl lib on FreeBSD platform
2. backtrace from ld-elf shows r_debug_state() instead of _dl_debug_state()
Cause:
1. There is no dl library on FreeBSD platform test has to ignore linking "-ldl"
2. The stop due to a shared library event shows backtrace frame #0
function as r_debug_state()
gdb/ChangeLog:
PR gdb/23095
* gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
prepare_for_testing. Set normal_bp to r_debug_state if target
is bsd.
commit b2c5b54ee3b2906d72d390f90722d517e2f96e85
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Apr 22 00:01:03 2018 +0000
Automatic date update in version.in
commit 00aecdcf6224e44fedf31a07340e9da11500fcfb
Author: Pedro Alves <palves@redhat.com>
Date: Sat Apr 21 18:19:30 2018 +0100
FreeBSD: Fix 'Couldn't get registers: Device busy' error (PR gdb/23077)
As Rajendra SY reported at
<https://sourceware.org/ml/gdb-patches/2018-04/msg00399.html>, several
attach-related tests are failing on FreeBSD. The "attach" command
errors with "Couldn't get registers: Device busy".
When the "attach" command is executed, it calls target_attach ->
inf_ptrace_attach, which just does the ptrace(PT_ATTACH), it does not
wait for the child to stop with SIGSTOP. Afterwards, the command is
complete and we go back to the event loop. The event loop wakes up
and we end up in target_wait -> fbsd_wait, and handle the SIGSTOP
stop.
At the end of execute_command, though, before going back to the event
loop, we check if the frame language changed via
check_frame_language_change(). That reads the current PC, which is
what leads to the registers read that fails.
The problem is that we fail to mark the attached-to thread as
executing between the initial attach, and the subsequent target_wait.
Until we see the thread stop with SIGSTOP, we shouldn't try to read
registers off of it. I guess there may a timing issue here - if
you're "lucky", the thread may stop before gdb reads its registers,
masking the problem.
With that fixed, check_frame_language_change() becomes a nop until the
thread is marked not-executing again, after target_wait is called and
we go through handle_inferior_event -> normal_stop.
We haven't seen the problem on Linux because there, the target_attach
implementation waits for the thread to stop before returning. Still,
that's supposedly hidden from the core, since the Linux target, like
most targets, is a '!to_attach_no_wait' target.
This fixes:
FAIL: gdb.base/attach.exp: attach1, after setting file
FAIL: gdb.base/attach.exp: attach2, with no file
FAIL: gdb.base/attach.exp: load file manually, after attach2 (re-read) (got interactive prompt)
FAIL: gdb.base/attach.exp: attach when process' a.out not in cwd
FAIL: gdb.base/dprintf-detach.exp: bai=on ds=gdb dd=on: re-attach to inferior
FAIL: gdb.base/dprintf-detach.exp: bai=on ds=gdb dd=off: re-attach to inferior
FAIL: gdb.base/dprintf-detach.exp: bai=on ds=call dd=on: re-attach to inferior
FAIL: gdb.base/dprintf-detach.exp: bai=on ds=call dd=off: re-attach to inferior
FAIL: gdb.base/dprintf-detach.exp: bai=on ds=agent dd=on: re-attach to inferior
FAIL: gdb.base/dprintf-detach.exp: bai=on ds=agent dd=off: re-attach to inferior
FAIL: gdb.base/dprintf-detach.exp: bai=off ds=gdb dd=on: re-attach to inferior
FAIL: gdb.base/dprintf-detach.exp: bai=off ds=gdb dd=off: re-attach to inferior
FAIL: gdb.base/dprintf-detach.exp: bai=off ds=call dd=on: re-attach to inferior
FAIL: gdb.base/dprintf-detach.exp: bai=off ds=call dd=off: re-attach to inferior
FAIL: gdb.base/dprintf-detach.exp: bai=off ds=agent dd=on: re-attach to inferior
FAIL: gdb.base/dprintf-detach.exp: bai=off ds=agent dd=off: re-attach to inferior
gdb/ChangeLog:
2018-04-21 Pedro Alves <palves@redhat.com>
Rajendra SY <rajendra.sy@gmail.com>
* inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
* remote.c (extended_remote_attach): In all-stop mode, mark the
thread as executing.
commit 5a8edf8ece80a436a0ed786488e8e772bc515fa2
Author: Alan Modra <amodra@gmail.com>
Date: Sat Apr 21 12:06:57 2018 +0930
Test that gcc -B picks up new ld
gcc configured using --with-ld always uses that particular version of
ld if it exists. This patch adds a check that the ld version reported
directly from ld-new matches that reported via gcc. I chose to
compare the ld --version output rather than a more strict test (for
example by gcc --print-prog-name=ld), because the version test allows
a user to run the ld testsuite after installing a new ld (in the place
expected by gcc).
Sample output:
Running target unix
Using /usr/share/dejagnu/baseboards/unix.exp as board description file for target.
Using /usr/share/dejagnu/config/unix.exp as generic interface file for target.
Using /home/alan/src/binutils-gdb/ld/testsuite/config/default.exp as tool-and-target-specific interface file.
ERROR: ************************************************************************
ERROR: Your compiler driver ignores -B when choosing ld.
ERROR: You will not be testing the new ld in many of the following tests.
ERROR: It seems you will be testing /usr/bin/x86_64-w64-mingw32-ld instead.
ERROR: ************************************************************************
WARNING: Assuming target board is the local machine (which is probably wrong).
You may need to set your DEJAGNU environment variable.
Running /home/alan/src/binutils-gdb/ld/testsuite/ld-aarch64/aarch64-elf.exp ...
* testsuite/lib/ld-lib.exp (run_host_cmd): Check that gcc -B
works.
commit 3d75146d2baea3ad8e8b3a099f0255b71389d86b
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Apr 21 00:00:36 2018 +0000
Automatic date update in version.in
commit 7106056554c9f25e9a857b69b4595c9b3c7c4639
Author: Jim Wilson <jimw@sifive.com>
Date: Fri Apr 20 15:30:18 2018 -0700
RISC-V: Add new option -mrelax/-mno-relax.
gas/
* config/tc-riscv.c (options): Add OPTION_RELAX and
OPTION_NO_RELAX.
(md_longopts): New option -mrelax and -mno-relax.
(md_parse_option): Handle -mrelax and -mno-relax.
* doc/c-riscv.texi: Document for -mrelax and -mno-relax.
* testsuite/gas/riscv/no-relax-reloc.d: New.
* testsuite/gas/riscv/no-relax-reloc.s: New.
* testsuite/gas/riscv/relax-reloc.d: New.
* testsuite/gas/riscv/relax-reloc.s: New.
commit 5c8f23cdab2a7cde2dae6fcd5f9b18d089efecaf
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Fri Apr 20 06:23:37 2018 +0200
Improve on-line help for thread_apply_command and thread_apply_all_command.
Add a Usage: line for thread_apply_command, in particular to mention
the thread ID list.
In thread_apply_command and thread_apply_all_command help, use
uppercase for arg names, as this style seems to be more standard.
2018-04-20 Philippe Waroquiers <philippe.waroquiers@skynet.be>
* thread.c (_initialize_thread): improve on-line help for
thread_apply_command and thread_apply_all_command.
commit 4352556b36ab4f1c6f81a0ac3daf4619a419558d
Author: Alan Modra <amodra@gmail.com>
Date: Thu Apr 19 11:19:35 2018 +0930
PR22978, TLS local-dynamic incorrectly linked on hppa-linux
We were emitting dynamic relocs on the second word of a TLS GD GOT
entry pair (the dtprel offset), without the addend necessary when no
symbol is present on the dynamic reloc. Unfortunately the simple
solution of providing the proper addend doesn't work due to an hppa
glibc ld.so bug that ignores such addends. So instead optimize the
relocs. The dtprel offset is known at link time for locally defined
symbols (the only case where we'll end up with no symbol on a dynamic
reloc) so we can omit the dynamic reloc in that case.
Furthermore, we can omit a dynamic reloc on the first word of a TLS GD
GOT entry pair (the module id) if the symbol is local and we are
producing an executable. Similarly, a tprel reloc on a TLS IE GOT
entry is not needed for local symbols in an executable. So the
condition for TLS GOT relocs can become bfd_link_dll(info) rather than
bfd_link_pic(info) as needed for normal GOT relocs.
This all presumes hppa ld.so doesn't need to differentiate TLS GD GOT
pairs from TLS LD GOT pairs, which is currently true.
PR 22978
* elf32-hppa.c (got_relocs_needed): Add extra param to special
case both dtprel and tprel relocs.
(allocate_dynrelocs): Adjust conditions for got relocs.
(elf32_hppa_relocate_section): Likewise for local sym got relocs.
Emit dynamic relocs on TLS GOT entries for shared libraries,
not when pic. Omit dynamic reloc on dtprel entry when local,
and on tprel entry when local and executable.
commit 1a1de166f4e18227760b42301e3b615d71a62dc8
Author: Nick Clifton <nickc@redhat.com>
Date: Fri Apr 20 11:18:53 2018 +0100
Updated Spanish translation for gas sub-directory
commit d27d16bfdc3f275b379793214db9bd9467b6f0f8
Author: Richard Bunt <richard.bunt@arm.com>
Date: Thu Apr 19 23:02:35 2018 -0400
Add test case for a known hang in infrun
The hang occurs when GDB tries to call inferior functions on two
different threads with scheduler-locking turned on. The first call works
fine, with the call to infrun_async(1) causing the signal_handler to be
marked and the event to be handled, but then the event loop resets the
"ready" member to zero, while leaving infrun_is_async set to 1. As a
result, GDB hangs if the user switches to another thread and calls a
second function because calling infrun_async(1) a second time has no
effect, meaning the inferior call events are never handled.
The added test case provokes the above issue.
gdb/testsuite/ChangeLog:
* gdb.threads/multiple-successive-infcall.c: New test.
* gdb.threads/multiple-successive-infcall.exp: New file.
commit ebf7373d2f63c7d50f3620bbf0165370cef60813
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Apr 20 00:00:25 2018 +0000
Automatic date update in version.in
commit 224608c3ca1575bcbea82562f05d3fdd0390abcf
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date: Thu Apr 19 22:48:41 2018 +0200
[OB PATCH] Fix some comments in thread.c
Fix some typos.
Remove obsolete comment about dispatch to thread_apply_command,
rather tell that thread_command either switches to a thread,
or prints the current thread.
2018-04-19 Philippe Waroquiers <philippe.waroquiers@skynet.be>
* thread.c (thread_apply_all_command): Fix comment.
(thread_command): Fix comment.
commit f31c089e788f7b45c9030ac399cd34eb3ccdb9c1
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Thu Apr 19 13:19:41 2018 -0400
Fix dependency tracking in gdbserver subdirectories
The dependency tracking (the thing that knows which source file included
which other source file during last build to know what to rebuild when
an included file changes) is broken for gdbserver subdirectories (arch
and common).
The dependency tracking files are created in the form
arch/.deps/i386.Po
but we try to include
.deps/arch/i386.Po
An easy smoke test is too "touch" the gdb/features/i386/32bit-core.c
file in the source directory and try to rebuild gdbserver. This file is
included by gdb/arch/i386.c, so it should cause
gdb/gdbserver/arch/i386.o in the build directory to be rebuilt. It
currently isn't rebuilt, but is with this patch applied.
This patch copies the technique used in GDB to transform the dep file
paths to the proper form.
Also, while testing using the depcomp method of dependency tracking (by
just hacking the condition), I noticed that depcomp was not found. The
path to depcomp seems to be missing a "..".
gdb/gdbserver/ChangeLog:
* Makefile.in (depcomp): Add "..".
(all_deps_files): New and use it.
commit d83d54033545c0e7b668950b127753c88a33f950
Author: Cary Coutant <ccoutant@gmail.com>
Date: Thu Apr 19 10:20:08 2018 -0700
Fix second bug where --icf=safe triggers segfault when linking ARM.
When checking a R_ARM_TARGET[12] relocation, we need a valid target
pointer, but the garbage collection code was passing a NULL instead.
The previous fix for this bug fixed the call to
scan.global_reloc_may_be_function_pointer, but missed the similar
call to scan.local_reloc_may_be_function_pointer.
gold/
PR gold/23046
* gc.h (gc_process_relocs): Pass target to
scan.local_reloc_may_be_function_pointer.
commit f6a8b8c7ac2d5369070a6b76a94ee0f3052433ff
Author: Alan Modra <amodra@gmail.com>
Date: Thu Apr 19 14:13:41 2018 +0930
PR22537, Segmentation fault with static PIE
The only stub type that makes sense for undefined symbols, or those
defined in shared libraries, is a plt call stub. This patch arranges
to have "destination" set to -1 on such symbols, making for an easy
test in hppa_type_of_stub.
PR 22537
* elf32-hppa.c (elf32_hppa_size_stubs): Init "destination" to -1.
(hppa_type_of_stub): Don't return a long branch stub for
symbols other than those defined statically.
commit 8e415ce8fee234cd86f29d8f4ebbbdf0f9c0b031
Author: Alan Modra <amodra@gmail.com>
Date: Thu Apr 19 07:59:56 2018 +0930
Reinstate mips ecoff support
* Makefile.am: Revert 2018-04-18 coff-mips changes.
* config.bfd: Add back mips_ecoff_le_vec and mips_ecoff_be_vec
to selvecs for mips targets change 2018-04-18.
* configure.ac: Reinstate mips_ecoff_le_vec, mips_ecoff_be_vec
and mips_ecoff_bele_vec.
* targets.c: Likewise.
* coff-mips.c: Resurrect.
* Makefile.in: Regenerate.
* configure: Regenerate.
* po/SRC-POTFILES.in: Regenerate.
commit 8dc99ac8fc592b03907fbce5591543678ca4b907
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Apr 19 00:00:27 2018 +0000
Automatic date update in version.in
commit b319b0984b505e9a5e653c3da8ae7d5af76c8f28
Author: Alan Hayward <alan.hayward@arm.com>
Date: Wed Apr 18 21:01:22 2018 +0100
Remove xml files from gdbserver
For ports which use new target descriptions, remove
the xml files from being built into gdbserver.
gdbserver/
* configure.srv (aarch64*-*-linux*): Don't include xml.
(i[34567]86-*-cygwin*): Likewise.
(i[34567]86-*-linux*): Likewise.
(i[34567]86-*-lynxos*): Likewise.
(i[34567]86-*-mingw32ce*): Likewise.
(i[34567]86-*-mingw*): Likewise.
(i[34567]86-*-nto*): Likewise.
(tic6x-*-uclinux): Likewise.
(x86_64-*-linux*): Likewise.
(x86_64-*-mingw*): Likewise.
(x86_64-*-cygwin*): Likewise.
commit 3b74854b8db5836707af828b256c1322a71241b3
Author: Alan Hayward <alan.hayward@arm.com>
Date: Wed Apr 18 20:49:37 2018 +0100
Remove xml file references from target descriptions
gdb/
* common/tdesc.h (tdesc_create_feature): Remove xml filename
parameter.
* features/aarch64-core.c (create_feature_aarch64_core):
Regenerate.
* features/aarch64-fpu.c (create_feature_aarch64_fpu):
Likewise.
* features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
Likewise.
* features/i386/32bit-avx512.c
(create_feature_i386_32bit_avx512): Likewise.
* features/i386/32bit-core.c (create_feature_i386_32bit_core):
Likewise.
* features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
Likewise.
* features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
Likewise.
* features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
Likewise.
* features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
Likewise.
* features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
Likewise.
* features/i386/64bit-avx512.c
(create_feature_i386_64bit_avx512): Likewise.
* features/i386/64bit-core.c (create_feature_i386_64bit_core):
Likewise.
* features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
Likewise.
* features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
Likewise.
* features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
Likewise.
* features/i386/64bit-segments.c
(create_feature_i386_64bit_segments): Likewise.
* features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
Likewise.
* features/i386/x32-core.c
(create_feature_i386_x32_core): Likewise.
* features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
* features/tic6x-core.c (create_feature_tic6x_core): Likewise.
* features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
* target-descriptions.c: In generated code, don't pass xml
filename.
gdbserver/
* tdesc.c: Remove xml parameter.
commit e98577a9dc4da048ded601920dc6471dcab375aa
Author: Alan Hayward <alan.hayward@arm.com>
Date: Wed Apr 18 20:09:12 2018 +0100
Create xml from target descriptions
Add a print_xml_feature visitor class which turns a
target description into xml. Both gdb and gdbserver can do this.
gdb/
* common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
(print_xml_feature::visit_post): Likewise.
(print_xml_feature::visit): Likewise.
* common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
(print_xml_feature): Add new class.
* regformats/regdat.sh: Null xmltarget on feature targets.
* target-descriptions.c (struct target_desc): Add xmltarget.
(maintenance_check_tdesc_xml_convert): Add unittest function.
(tdesc_get_features_xml): Add function to get xml.
(maintenance_check_xml_descriptions): Test xml generation.
* xml-tdesc.c (string_read_description_xml): Add function.
* xml-tdesc.h (string_read_description_xml): Add declaration.
gdbserver/
* gdb/gdbserver/server.c (get_features_xml): Remove cast.
* tdesc.c (void target_desc::accept): Fill in function.
(tdesc_get_features_xml): Remove old xml creation.
(print_xml_feature::visit_pre): Add xml vistor.
* tdesc.h (struct target_desc): Make xmltarget mutable.
(tdesc_get_features_xml): Remove declaration.
commit ad7fc756d12a841d4b8dd707568426d875e26755
Author: Alan Hayward <alan.hayward@arm.com>
Date: Wed Apr 18 20:06:14 2018 +0100
Add feature reference in .dat files
For all targets which use the newer style target descriptions, add a
"feature" marker in the dat files.
Update regdat.sh to parse feature, but do not use it (yet).
gdb/
* features/Makefile: Add feature marker to targets with new style
target descriptions.
* regformats/aarch64.dat: Regenerate.
* regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
* regformats/i386/amd64-avx-linux.dat: Likewise.
* regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
* regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
* regformats/i386/amd64-linux.dat: Likewise.
* regformats/i386/amd64-mpx-linux.dat: Likewise.
* regformats/i386/amd64.dat: Likewise.
* regformats/i386/i386-avx-avx512-linux.dat: Likewise.
* regformats/i386/i386-avx-linux.dat: Likewise.
* regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
* regformats/i386/i386-avx-mpx-linux.dat: Likewise.
* regformats/i386/i386-linux.dat: Likewise.
* regformats/i386/i386-mmx-linux.dat: Likewise.
* regformats/i386/i386-mpx-linux.dat: Likewise.
* regformats/i386/i386.dat: Likewise.
* regformats/i386/x32-avx-avx512-linux.dat: Likewise.
* regformats/i386/x32-avx-linux.dat: Likewise.
* regformats/i386/x32-linux.dat: Likewise.
* regformats/tic6x-c62x-linux.dat: Likewise.
* regformats/tic6x-c64x-linux.dat: Likewise.
* regformats/tic6x-c64xp-linux.dat: Likewise.
* regformats/regdat.sh: Parse feature marker.
commit d278f585afe8e096e9232b8fd80404ab5fae5719
Author: Alan Hayward <alan.hayward@arm.com>
Date: Wed Apr 18 11:51:21 2018 +0100
Add tdesc osabi and architecture functions
gdb/
* common/tdesc.h (tdesc_architecture_name): Add new declaration.
(tdesc_osabi_name): Likewise.
* target-descriptions.c (tdesc_architecture_name): Add new function.
(tdesc_osabi_name): Likewise.
gdbserver/
* tdesc.c (tdesc_architecture_name): Add new function.
(tdesc_osabi_name): Likewise.
(tdesc_get_features_xml): Use new functions.
commit eee8a18dd2d4b62ed5e03324b099508717886193
Author: Alan Hayward <alan.hayward@arm.com>
Date: Wed Apr 18 11:47:55 2018 +0100
Commonise tdesc types and makes use of them in gdbserver tdesc
gdb/
* common/tdesc.c (tdesc_predefined_type): Move to here.
(tdesc_named_type): Likewise.
(tdesc_create_vector): Likewise.
(tdesc_create_struct): Likewise.
(tdesc_set_struct_size): Likewise.
(tdesc_create_union): Likewise.
(tdesc_create_flags): Likewise.
(tdesc_create_enum): Likewise.
(tdesc_add_field): Likewise.
(tdesc_add_typed_bitfield): Likewise.
(tdesc_add_bitfield): Likewise.
(tdesc_add_flag): Likewise.
(tdesc_add_enum_value): Likewise.
* common/tdesc.h (struct tdesc_type_builtin): Likewise.
(struct tdesc_type_vector): Likewise.
(struct tdesc_type_field): Likewise.
(struct tdesc_type_with_fields): Likewise.
(tdesc_create_enum): Add declaration.
(tdesc_add_typed_bitfield): Likewise.
(tdesc_add_enum_value): Likewise.
* target-descriptions.c (tdesc_type_field): Move from here.
(tdesc_type_builtin): Likewise.
(tdesc_type_vector): Likewise.
(tdesc_type_with_fields): Likewise.
(tdesc_predefined_types): Likewise.
(tdesc_named_type): Likewise.
(tdesc_create_vector): Likewise.
(tdesc_create_struct): Likewise.
(tdesc_set_struct_size): Likewise.
(tdesc_create_union): Likewise.
(tdesc_create_flags): Likewise.
(tdesc_create_enum): Likewise.
(tdesc_add_field): Likewise.
(tdesc_add_typed_bitfield): Likewise.
(tdesc_add_bitfield): Likewise.
(tdesc_add_flag): Likewise.
(tdesc_add_enum_value): Likewise.
* gdb/target-descriptions.h (tdesc_create_enum): Likewise.
(tdesc_add_typed_bitfield): Likewise.
(tdesc_add_enum_value): Likewise.
gdbserver/
* tdesc.c (tdesc_create_flags): Remove.
(tdesc_add_flag): Likewise.
(tdesc_named_type): Likewise.
(tdesc_create_union): Likewise.
(tdesc_create_struct): Likewise.
(tdesc_create_vector): Likewise.
(tdesc_add_bitfield): Likewise.
(tdesc_add_field): Likewise.
(tdesc_set_struct_size): Likewise.
commit 82ec9bc7055ca76f1f7dd344f3f58bf6aecec7c8
Author: Alan Hayward <alan.hayward@arm.com>
Date: Wed Apr 18 11:39:53 2018 +0100
Commonise tdesc_feature and makes use of it in gdbserver tdesc
gdb/
* common/tdesc.c (tdesc_feature::accept): Move to here.
(tdesc_feature::operator==): Likewise.
(tdesc_create_reg): Likewise.
* common/tdesc.h (tdesc_type_kind): Likewise.
(struct tdesc_type): Likewise.
(struct tdesc_feature): Likewise.
* regformats/regdat.sh: Create a feature.
* target-descriptions.c (tdesc_type_kind): Move from here.
(tdesc_type): Likewise.
(tdesc_type_up): Likewise.
(tdesc_feature): Likewise.
(tdesc_create_reg): Likewise.
gdbserver/
* tdesc.c (~target_desc): Remove implictly deleted items.
(init_target_desc): Iterate all features.
(tdesc_get_features_xml): Use vector.
(tdesc_create_feature): Create feature.
* tdesc.h (tdesc_feature) Remove
(target_desc): Add features.
commit ea3e7d717982e3c467edc7886b1d6cc2807195af
Author: Alan Hayward <alan.hayward@arm.com>
Date: Wed Apr 18 11:28:51 2018 +0100
Commonise tdesc_reg and makes use of it in gdbserver tdesc
gdb/
* Makefile.in: Add arch/tdesc.c
* common/tdesc.c: New file.
* common/tdesc.h (tdesc_element_visitor): Move to here.
(tdesc_element): Likewise.
(tdesc_reg): Likewise.
(tdesc_reg_up): Likewise.
* regformats/regdef.h (reg): Add offset to constructors.
* target-descriptions.c (tdesc_element_visitor): Move from here.
(tdesc_element): Likewise.
(tdesc_reg): Likewise.
(tdesc_reg_up): Likewise.
gdbserver/
* Makefile.in: Add common/tdesc.c
* tdesc.c (init_target_desc): init all reg_defs from register vector.
(tdesc_create_reg): Create tdesc_reg.
* tdesc.h (tdesc_feature): Add register vector.
commit a7504f87d41694d441fabb3308631df4d2750c24
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Apr 18 12:03:03 2018 +0100
Prevent an assertion failure in readelf & objdump when parsing corrupt DWARF information.
PR 23062
* dwarf.c (read_and_display_attr_value): Replace assertions with
test and warning message.
commit 82deb12e5f96af0b767abf6ec83d5e95f408c8d0
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Apr 18 12:02:17 2018 +0100
Updated Spanish translation for gprof directory
commit f792cedd00443d453fa76c2e1e239cc08546b7d3
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Apr 18 10:48:56 2018 +0100
Updated Spanish translations for the gold and gprof sub-directories
commit 3596d8ceb2cdc35b4fd702ee9daace5a2d880174
Author: Alan Modra <amodra@gmail.com>
Date: Wed Apr 18 15:39:34 2018 +0930
Remove mips aout, coff, and pe support
include/coff/mips.h needs to stay for ecoff debug support.
include/
* coff/mipspe.h: Delete.
bfd/
* Makefile.am: Remove mips aout, coff, and pe support.
* config.bfd: Likewise.
* configure.ac: Likewise.
* targets.c: Likewise.
* coff-mips.c: Delete
* mipsbsd.c: Delete
* pe-mips.c: Delete
* pei-mips.c: Delete
* Makefile.in: Regenerate.
* configure: Regenerate.
* po/SRC-POTFILES.in: Regenerate.
commit d9dd20453a5e1ace27b71c66ca2b92f49c7271c2
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Tue Apr 17 18:15:13 2018 -0700
x86: Don't define elf32_bed/elf64_bed variables
Define elf32_bed and elf64_bed before including "elf32-target.h" and
"elf64-target.h" to avoid local elf32_bed and elf64_bed variables.
* elf32-i386.c (elf32_bed): Define before including
"elf32-target.h".
* elf64-x86-64.c (elf64_bed): Define before including
"elf64-target.h".
(elf32_bed): Define before including "elf32-target.h".
commit 8f56f7a23911b6a48b372c8f0893343bfe7ed2e9
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Tue Apr 17 17:42:19 2018 -0700
elf32_bed/elf64_bed
commit e4e6a73d26ef82622d3bd190749aad508534abe6
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Tue Apr 17 18:11:21 2018 -0700
x86: Use a normal input file with compatible relocation
Use a normal input file with compatible relocation to hold linker
created sections,
PR ld/23055
* elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Use a
normal input file with compatible relocation.
commit c65c21e1ffd1e02d9970a4bca0b7e384788a50f0
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 16 22:14:01 2018 +0930
various i386-aout and i386-coff target removal
Also tidies some other aout leftovers in binutils-common.exp.
bfd/
* Makefile.am: Remove support for assorted i386 aout and coff targets.
* config.bfd: Likewise.
* configure.ac: Likewise.
* doc/bfdint.texi: Likewise.
* targets.c: Likewise.
* freebsd.h: Delete.
* i386dynix.c: Delete.
* i386freebsd.c: Delete.
* i386linux.c: Delete.
* i386mach3.c: Delete.
* i386netbsd.c: Delete.
* i386os9k.c: Delete.
* Makefile.in: Regenerate.
* configure: Regenerate.
* po/SRC-POTFILES.in: Regenerate.
binutils/
* testsuite/lib/binutils-common.exp: Remove support for assorted
aout targets.
gas/
* Makefile.am: Remove support for assorted i386 aout and coff targets.
* config/obj-elf.c: Likewise.
* config/tc-i386.h: Likewise.
* configure.ac: Likewise.
* configure.tgt: Likewise.
* config/te-dynix.h: Delete.
* config/te-i386aix.h: Delete.
* config/te-mach.h: Delete.
* Makefile.in: Regenerate.
* config.in: Regenerate.
* configure: Regenerate.
* po/POTFILES.in: Regenerate.
include/
* aout/dynix3.h: Delete.
ld/
* Makefile.am: Remove support for assorted i386 aout and coff targets.
* configure.tgt: Likewise.
* testsuite/ld-discard/discard.exp: Likewise.
* testsuite/ld-elf/binutils.exp: Likewise.
* testsuite/ld-elf/tls.exp: Likewise.
* testsuite/ld-elf/tls_common.exp: Likewise.
* testsuite/ld-elfvers/vers.exp: Likewise.
* testsuite/ld-elfvsb/elfvsb.exp: Likewise.
* testsuite/ld-elfweak/elfweak.exp: Likewise.
* testsuite/ld-gc/abi-note.d: Likewise.
* testsuite/ld-gc/pr19167.d: Likewise.
* testsuite/ld-gc/pr20022.d: Likewise.
* testsuite/ld-gc/start.d: Likewise.
* testsuite/ld-gc/stop.d: Likewise.
* testsuite/ld-i386/i386.exp: Likewise.
* testsuite/ld-ifunc/binutils.exp: Likewise.
* testsuite/ld-ifunc/ifunc.exp: Likewise.
* testsuite/ld-linkonce/linkonce.exp: Likewise.
* testsuite/ld-plugin/lto.exp: Likewise.
* testsuite/ld-scripts/empty-address-2a.d: Likewise.
* testsuite/ld-scripts/empty-address-2b.d: Likewise.
* testsuite/ld-scripts/phdrs2.exp: Likewise.
* testsuite/ld-scripts/section-match-1.d: Likewise.
* testsuite/ld-shared/shared.exp: Likewise.
* testsuite/ld-size/size.exp: Likewise.
* testsuite/ld-sparc/sparc.exp: Likewise.
* emulparams/i386coff.sh: Delete.
* emulparams/i386linux.sh: Delete.
* emulparams/i386mach.sh: Delete.
* emulparams/i386nbsd.sh: Delete.
* emulparams/vsta.sh: Delete.
* scripttempl/i386coff.sc: Delete.
* Makefile.in: Regenerate.
* po/BLD-POTFILES.in: Regenerate.
commit e2e4f0fdfd81c7871866d4c99dacc37b6cbe64a6
Author: Alan Modra <amodra@gmail.com>
Date: Tue Apr 17 17:14:45 2018 +0930
Tidy gas/configure.tgt
Should have been removed with m68k bsd support.
* configure.tgt: Remove *-*-bsd* entry.
commit 884d4d8aa754da5748ac4c48bfc30f43db1945f9
Author: Alan Modra <amodra@gmail.com>
Date: Wed Apr 18 09:30:17 2018 +0930
Correct ChangeLog dates for git commit 3f0a5f17d7f
commit 9e558a506b5d8ef9c807e9915b33e66c28b833a5
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Apr 18 00:00:29 2018 +0000
Automatic date update in version.in
commit 3f0a5f17d7fe1f3d0911ad67a5993be59983fb00
Author: Michael Eager <eager@eagercon.com>
Date: Tue Apr 17 14:47:13 2018 -0700
[MicroBlaze] PIC data text relative
Andrew Sadek <andrew.sadek.se@gmail.com>
A new implemented feature in GCC Microblaze that allows Position
Independent Code to run using Data Text Relative addressing instead
of using Global Offset Table.
Its aim was to make 'PIC' more efficient and flexible as elf size
excess performance overhead were noticed when using GOT due to the
indirect addressing.
include/ChangeLog:
* bfdlink.h (Add flag): Add new flag @ 'bfd_link_info' struct.
* elf/microblaze.h (Add 3 new relocations):
R_MICROBLAZE_TEXTPCREL_64, R_MICROBLAZE_TEXTREL_64
and R_MICROBLAZE_TEXTREL_32_LO for relax function.
bfd/ChangeLog:
* bfd/reloc.c (2 new BFD relocations):
BFD_RELOC_MICROBLAZE_64_TEXTPCREL &
BFD_RELOC_MICROBLAZE_64_TEXTPCREL
* bfd/bfd-in2.h: Regenerate
* bfd/libbfd.h: Regenerate
* bfd/elf32-microblaze.c (Handle new relocs): define 'HOWTO' of 3
new relocs and handle them in both relocate and relax functions.
(microblaze_elf_reloc_type_lookup): add mapping between for new
bfd relocs.
(microblaze_elf_relocate_section): Handle new relocs in case of
elf relocation.
(microblaze_elf_relax_section): Handle new relocs for elf relaxation.
gas/ChangeLog:
* gas/config/tc-microblaze.c (Handle new relocs directives in
assembler): Handle new relocs from compiler output.
(imm_types): add new imm types for data text relative addressing
TEXT_OFFSET, TEXT_PC_OFFSET
(md_convert_frag): conversion for BFD_RELOC_MICROBLAZE_64_TEXTPCREL,
BFD_RELOC_MICROBLAZE_64_TEXTPCREL
(md_apply_fix): apply fix for BFD_RELOC_MICROBLAZE_64_TEXTPCREL,
BFD_RELOC_MICROBLAZE_64_TEXTPCREL
(md_estimate_size_before_relax): estimate size for
BFD_RELOC_MICROBLAZE_64_TEXTPCREL,
BFD_RELOC_MICROBLAZE_64_TEXTPCREL
(tc_gen_reloc): generate relocations for
BFD_RELOC_MICROBLAZE_64_TEXTPCREL,
BFD_RELOC_MICROBLAZE_64_TEXTPCREL
ld/ChangeLog:
* ld/lexsup.c (Add 2 ld options):
(ld_options): add disable-multiple-abs-defs @ 'ld_options' array
(parse_args): parse new option and pass flag to 'link_info' struct.
* ld/ldlex.h (Add enum): add new enum @ 'option_values' enum.
* ld/ld.texinfo (Add new option): Add description for
'disable-multiple-abs-defs'
* ld/main.c: Initialize flags with false @ 'main'. Handle
disable-multiple-abs-defs @ 'mutiple_definition'.
commit bedda9aced2b3a8ab05e0fbf1372e394e32afbde
Author: Tom Tromey <tom@tromey.com>
Date: Thu Apr 12 08:05:16 2018 -0600
Conditionally drop the discriminant field in quirk_rust_enum
While debugging the crash that Jan reported, I noticed that in some
situations we could end up with a situation where one branch of a Rust
enum type ended up with a field count of -1.
The fix is simple: only conditionally drop the discriminant field when
rewriting the enum variants.
I couldn't find a way to test this; I only noticed it while debugging
the DWARF reader.
2018-04-17 Tom Tromey <tom@tromey.com>
* dwarf2read.c (quirk_rust_enum): Conditionally drop the
discriminant field.
commit a037790ec570ae9f9bf535cbce25f238f90e8b4a
Author: Tom Tromey <tom@tromey.com>
Date: Thu Mar 29 11:49:59 2018 -0600
Fix crash in quirk_rust_enum
I noticed that quirk_rust_enum can crash when presented with a union
whose fields are all scalar types.
This patch adds a new test case and fixes the bug.
Regression tested on Fedora 26 x86-64.
2018-04-17 Tom Tromey <tom@tromey.com>
* dwarf2read.c (quirk_rust_enum): Handle unions correctly.
2018-04-17 Tom Tromey <tom@tromey.com>
* gdb.rust/simple.rs (Union): New type.
(main): New local "u".
* gdb.rust/simple.exp (test_one_slice): Add new test case.
commit c7dcbf88c6557f35d9e75ae6223a3e61e1f70578
Author: Andreas Arnez <arnez@linux.vnet.ibm.com>
Date: Tue Apr 17 19:31:58 2018 +0200
Don't print symbol declaration's line number in rbreak output
This commit:
b744723f57 -- Show line numbers in output for "info var/func/type"
adds the symbol declaration's line number to the output of certain GDB
commands. It also (inadvertently) changes the `rbreak' command's output,
like this:
(gdb) rbreak foo
Breakpoint 1 at 0x40049b: file rbreak.c, line 6.
4: static int foo1(void);
Breakpoint 2 at 0x4004b1: file rbreak.c, line 12.
10: static int foo2(void);
(gdb)
where the function declaration is now prefixed by its source line number,
followed by a colon. But without showing the declaration's file name, the
line number is useless and can possibly cause severe confusion.
No declaration line number was shown before. Instead, the function
declaration started at the first column:
(gdb) rbreak foo
Breakpoint 1 at 0x40049b: file rbreak.c, line 6.
static int foo1(void);
Breakpoint 2 at 0x4004b1: file rbreak.c, line 12.
static int foo2(void);
(gdb)
This old behavior is restored, fixing some FAILs in fullpath-expand.exp,
realname-expand.exp, and pr10179.exp.
In order to distinguish when to print location information, the meaning of
print_symbol_info()'s parameter `last' is changed. Now NULL means to skip
any filename or line number information. Previously NULL meant to always
print the filename.
gdb/ChangeLog:
* symtab.c (print_symbol_info): Skip printing filename and line
number when `last' is NULL.
(symtab_symbol_info): Use empty string instead of NULL for first
invocation of print_symbol_info.
(rbreak_command): Pass NULL to `last' parameter of
print_symbol_info.
commit 808346fcfcff1c3f2471c98e48613afd7bce3679
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Apr 17 17:47:51 2018 +0100
Fix illegal memory accesses trigeered when linking corrupt input files.
PR 23055
* aoutx.h (find_nearest_line): Check that the symbol name exists
and is long enough, before attempting to see if it is for a .o
file.
* hash.c (bfd_hash_hash): Add an assertion that the string is not
NULL.
* linker.c (bfd_link_hash_lookup): Fail if the table or string are
NULL.
(_bfd_generic_link_add_archive_symbols): Fail if an archive entry
has no name.
commit c4a91159afa222c1025f1535f42e382b91dc6b73
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Apr 17 16:19:19 2018 +0100
Fix typo in ChangeLog entry in previous delta.
PR 23063
* readelf.c (print_symbol): If the width is zero, return straight
away.
commit 56d8f8a952f7565e8c2232ba57abb9f8d114ad70
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Apr 17 16:15:03 2018 +0100
Remove an abort() from the readelf sources.
PR 26063
* readelf.c (print_symbol): If the width is zero, return straight
away.
commit 6327533b1fd29fa86f6bf34e61c332c010e3c689
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Apr 17 14:30:07 2018 +0100
Add a check for a NULL table pointer before attempting to compute a DWARF filename.
PR 23065
* dwarf2.c (concat_filename): Check for a NULL table pointer.
commit e9301e762ab6d533f7110d6c9c1dbe8e68e875d7
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Apr 17 13:53:38 2018 +0100
Resync libiberty sources with master version in GCC repository.
2018-04-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
PR lto/81968
* simple-object.c (handle_lto_debug_sections): Keep .comment
section.
2018-03-02 David Malcolm <dmalcolm@redhat.com>
* cp-demangle.c: Update URL for g++ V3 ABI.
2018-01-20 Eli Zaretskii <eliz@gnu.org>
* simple-object-xcoff.c (simple_object_xcoff_find_sections): Use
ulong_type to avoid warning about 32-bit shift.
2018-01-11 Richard Biener <rguenther@suse.de>
Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
PR lto/81968
* simple-object-common.h (struct simple_object_functions):
Change copy_lto_debug_sections callback signature.
* simple-object-elf.c (SHN_HIRESERVE, SHT_SYMTAB_SHNDX,
SHF_INFO_LINK): Add defines.
(simple_object_elf_copy_lto_debug_sections): Instead of
leaving not to be copied sections empty unnamed SHT_NULL
remove them from the target section headers and adjust section
reference everywhere. Handle SHN_XINDEX in the symbol table
processing properly.
* simple-object.c (handle_lto_debug_sections): Change
interface to return a modified string and handle renaming
of relocation sections.
2018-01-10 Daniel van Gerpen <daniel@vangerpen.de>
* argv.c (expandargv): Correct check for dynamically
allocated argv.
commit bdd7c8fc34dc65806ec14df84c76e17690a16f50
Author: Igor Tsimbalist <igor.v.tsimbalist@intel.com>
Date: Tue Apr 17 13:57:34 2018 +0200
Fix tests to avoid cldemote encoding.
gas/
* testsuite/gas/i386/nops.s: Revert back deleted lines and
change encoding to 0x0f1c /1 to map to NOP.
* testsuite/gas/i386/x86-64-nops.s: Likewise.
* testsuite/gas/i386/nops.d: Likewise.
* testsuite/gas/i386/x86-64-nops.d: Likewise.
* testsuite/gas/i386/ilp32/x86-64-nops.d: Likewis.
commit 6aea08d9f3e3d6475a65454da488a0c51f5dc97d
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Apr 17 12:35:55 2018 +0100
Fix illegal memory access when parsing corrupt DWARF information.
PR 23064
* dwarf.c (process_cu_tu_index): Test for a potential buffer
overrun before copying signature pointer.
commit c48935d75f720ecb006c81b37f4058e751f1dc31
Author: Igor Tsimbalist <igor.v.tsimbalist@intel.com>
Date: Mon Apr 16 23:09:01 2018 +0200
Enable Intel CLDEMOTE instruction.
gas/
* config/tc-i386.c (cpu_arch): Add .cldemote.
* doc/c-i386.texi: Document cldemote/.cldemote.
* testsuite/gas/i386/cldemote-intel.d: New.
* testsuite/gas/i386/cldemote.d: Likewise.
* testsuite/gas/i386/cldemote.s: Likewise.
* testsuite/gas/i386/i386.exp: Run new tests.
* testsuite/gas/i386/x86-64-cldemote-intel.d: New.
* testsuite/gas/i386/x86-64-cldemote.d: Likewise.
* testsuite/gas/i386/x86-64-cldemote.s: Likewise.
* testsuite/gas/i386/ilp32/x86-64-nops.d: Remove 0x0f1c
NOP encoding that maps to cldemote.
* testsuite/gas/i386/nops.d: Likewise.
* testsuite/gas/i386/nops.s: Likewise.
* testsuite/gas/i386/x86-64-nops.d: Likewise.
* testsuite/gas/i386/x86-64-nops.s: Likewise.
opcode/
* i386-dis.c: Add REG_0F1C_MOD_0, MOD_0F1C_PREFIX_0,
PREFIX_0F1C.
* i386-gen.c (cpu_flag_init): Add CPU_CLDEMOTE_FLAGS,
(cpu_flags): Add CpuCLDEMOTE.
* i386-init.h: Regenerate.
* i386-opc.h (enum): Add CpuCLDEMOTE,
(i386_cpu_flags): Add cpucldemote.
* i386-opc.tbl: Add cldemote.
* i386-tbl.h: Regenerate.
commit f954747f10467071b0acde07ee5f5e268ab606a6
Author: Alan Modra <amodra@gmail.com>
Date: Tue Apr 17 09:00:57 2018 +0930
Reinstate readelf decoding of i860, i960 and i370 relocs
include/
* elf/i370.h: Revert removal.
* elf/i860.h: Likewise.
* elf/i960.h: Likewise.
binutils
* readelf.c: Revert 2018-04-16 and 2018-04-11 changes.
commit 0d6deb358dcc45315bb35cd7d0e1b50ea7cbbf9b
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Apr 17 00:00:23 2018 +0000
Automatic date update in version.in
commit 07d28c777757148d13e429c4463da52cbb50d297
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Apr 16 16:47:06 2018 -0400
linux_spu_make_corefile_notes: return note_data instead of nullptr
Since commit
9018be2 ("Make target_read_alloc & al return vectors")
the test gdb.threads/gcore-stale-thread.exp test results in UNSUPPORTED:
UNSUPPORTED: gdb.threads/gcore-stale-thread.exp: save a corefile
The problem is that the linux_spu_make_corefile_notes started returning
nullptr when reading TARGET_OBJECT_SPU fails. The previous (and proper)
behaviour is to return the note_data received as a parameter, so that
other functions may continue to append to this buffer.
With this patch, the test goes back to PASS.
gdb/ChangeLog:
* linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
instead of nullptr.
commit e3a91079b5e5669567424d3b2f31b48b7b89ef72
Author: Andreas Arnez <arnez@linux.vnet.ibm.com>
Date: Mon Apr 16 20:58:14 2018 +0200
Adjust more test cases to changed output of info var/func/type
After this commit:
b744723f57 -- Show line numbers in output for "info var/func/type"
the test cases dbx.exp and info-fun.exp yield new FAILs because two
regular expressions have not been adjusted to the changed output yet.
This is fixed.
gdb/testsuite/ChangeLog:
* gdb.base/dbx.exp (test_whereis): Adjust regexp to added line
number information in output of "whereis" command.
* gdb.base/info-fun.exp: Likewise, for "info fun" command.
commit c77852c8916415b089e56271b6ab9f793fdb413c
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Apr 16 16:39:15 2018 +0100
Fix illegal memory accesses in the assembler when attempting to parse corrup tinput files.
PR 23054
* cond.c (s_ifsef): Replace use of obstack_copy with obstack_alloc
followed by memcpy.
(s_if, s_ifb, s_ifc, s_ifeqs): Likewise.
* obj-elf.c (elf_adjust_symtab): Check for local symbols before
attempting to dereference the sy_next field of a symbol.
* stabs.c (get_stab_string_offset): Fail if there is no string
following the stab directive.
commit fc7aa874aad7eea29014c5591174d57f81500d69
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 16 22:15:14 2018 +0930
Remove sunos.em
Should have been removed with the m68k and sparc aout targets.
* emultempl/sunos.em: Delete.
commit d7867d174c060f65dfff61e7db7725b30b1e1a32
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 16 23:21:58 2018 +0930
Fix i960 machine name
* readelf.c (get_machine_name): Correct typo.
commit 8a3de5e1a3fb7bdf89195388f127ecf429294f6f
Author: Pedro Alves <palves@redhat.com>
Date: Mon Apr 16 12:50:03 2018 +0100
gdb: Remove support for SH-5/SH64
Since bfd dropped support for SH-5, there's no point in keeping it in
GDB either.
This restores --enable-targets=all builds.
gdb/ChangeLog:
2018-04-16 Pedro Alves <palves@redhat.com>
* MAINTAINERS (sh): Remove.
* Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
(HFILES_NO_SRCDIR): Remove sh64-tdep.h.
(ALLDEPFILES): Remove sh64-tdep.c.
* NEWS: Mentions that support for SH-5/SH64 is removed.
* configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
(sh*-*-openbsd*): Ditto.
(sh64-*-elf*): Remove.
(sh*): Remove.
* regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
* sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
* sh-tdep.c: No longer include "sh64-tdep.h".
(sh_gdbarch_init): Remove reference to bfd_mach_sh5.
* sh64-tdep.c, sh64-tdep.h: Remove files.
commit a2a79012fe7ad4bcc354c14410679ccb705d5326
Author: Pedro Alves <palves@redhat.com>
Date: Mon Apr 16 13:16:22 2018 +0100
gdb: Remove OpenBSD/m88k support
Support for m88k was fully removed from bfd, which broke gdb
--enable-targets=all builds:
> gdb/m88k-tdep.c: In function void _initialize_m88k_tdep():
> gdb/m88k-tdep.c:867:21: error: bfd_arch_m88k was not declared in this scope
> gdbarch_register (bfd_arch_m88k, m88k_gdbarch_init, NULL);
There's no point in keeping GDB support for OpenBSD/m88k with no bfd
support, so this commit simply removes the port.
gdb/ChangeLog:
2018-04-16 Pedro Alves <palves@redhat.com>
* MAINTAINERS: Remove m88k.
* Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
(HFILES_NO_SRCDIR): Remove m88k-tdep.h.
(ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
* NEWS: Mention that support for OpenBSD/m88k was removed.
* configure.host (m88*-*-*): Remove support.
* configure.nat (m88k-*-*): Remove support.
* configure.tgt (m88*-*-openbsd*): Remove.
* m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
commit e9af4700bc7435e593dd74d4d2e099b3d7c01eb6
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Apr 16 12:59:37 2018 +0100
Prevent an illegal memory access via an out of range fixup pointer.
PR 23061
* coffgen.c (coff_pointerize_aux): Check for an out of range
fixup.
commit ddb000396c9246649e02669e0bd6ad3949973e5a
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 16 20:29:05 2018 +0930
Remove arm-epoc-pe support
bfd/
* Makefile.am: Remove arm-epoc-pe support.
* coff-arm.c: Likewise.
* config.bfd: Likewise.
* configure.ac: Likewise.
* targets.c: Likewise.
* epoc-pe-arm.c: Delete.
* epoc-pei-arm.c: Delete.
* Makefile.in: Regenerate.
* configure: Regenerate.
* po/SRC-POTFILES.in: Regenerate.
binutils/
* configure.ac: Remove arm-epoc-pe support.
* dlltool.c: Likewise.
* configure: Regenerate.
gas/
* Makefile.am: Remove arm-epoc-pe support.
* config/tc-arm.h: Likewise.
* configure.tgt: Likewise.
* testsuite/gas/all/gas.exp: Likewise.
* testsuite/gas/arm/local_label_coff.d: Likewise.
* testsuite/gas/arm/undefined.d: Likewise.
* testsuite/gas/arm/undefined_coff.d: Likewise.
* config/te-epoc-pe.h: Delete.
* Makefile.in: Regenerate.
* po/POTFILES.in: Regenerate.
ld/
* Makefile.am: Remove arm-epoc-pe support.
* configure.tgt: Likewise.
* emultempl/pe.em: Likewise.
* pe-dll.c: Likewise.
* testsuite/ld-scripts/fill.d: Likewise.
* testsuite/ld-scripts/fill16.d: Likewise.
* emulparams/arm_epoc_pe.sh: Delete.
* scripttempl/epocpe.sc: Delete.
* Makefile.in: Regenerate.
* po/BLD-POTFILES.in: Regenerate.
commit 5452f388a51463394553b29469e32e7765d874e1
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 16 20:25:42 2018 +0930
sparc-coff removal leftover
* coff/sparc.h: Delete.
commit c9098af41e3246586a30f4f0bdb0ee4367e9a5e7
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 16 15:33:26 2018 +0930
Remove sparc-aout and sparc-coff support
bfd/
* Makefile.am: Remove sparc-aout and sparc-coff support.
* config.bfd: Likewise.
* configure.ac: Likewise.
* targets.c: Likewise.
* aout-sparcle.c: Delete.
* aoutf1.h: Delete.
* cf-sparclynx.c: Delete.
* coff-sparc.c: Delete.
* demo64.c: Delete.
* sparclinux.c: Delete.
* sparclynx.c: Delete.
* sparcnetbsd.c: Delete.
* sunos.c: Delete.
* Makefile.in: Regenerate.
* configure: Regenerate.
* po/SRC-POTFILES.in: Regenerate.
binutils/
* testsuite/lib/binutils-common.exp: Remove sparc-aout and
sparc-coff support.
gas/
* Makefile.am: Remove sparc-aout and sparc-coff support.
* config/obj-coff.h: Likewise.
* config/tc-sparc.c: Likewise.
* config/tc-sparc.h: Likewise.
* configure.tgt: Likewise.
* config/te-sparcaout.h: Delete.
* testsuite/gas/sun4/addend.d: Delete.
* testsuite/gas/sun4/addend.exp: Delete.
* testsuite/gas/sun4/addend.s: Delete.
* Makefile.in: Regenerate.
* po/POTFILES.in: Regenerate.
ld/
* Makefile.am: Remove sparc-aout and sparc-coff support.
* configure.tgt: Likewise.
* testsuite/ld-elfvers/vers.exp: Likewise.
* testsuite/ld-elfvsb/elfvsb.exp: Likewise.
* testsuite/ld-elfweak/elfweak.exp: Likewise.
* testsuite/ld-shared/shared.exp: Likewise.
* emulparams/coff_sparc.sh: Delete.
* emulparams/sparcaout.sh: Delete.
* emulparams/sparclinux.sh: Delete.
* emulparams/sparcnbsd.sh: Delete.
* emulparams/sun4.sh: Delete.
* scripttempl/sparccoff.sc: Delete.
* Makefile.in: Regenerate.
* po/BLD-POTFILES.in: Regenerate.
commit dc12032bca08554cf0a72d224e44f755f7789ff3
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 16 15:31:36 2018 +0930
Remove m68k-aout and m68k-coff support
include/
* aout/host.h: Remove m68k-aout and m68k-coff support.
* aout/hp300hpux.h: Delete.
* coff/apollo.h: Delete.
* coff/aux-coff.h: Delete.
* coff/m68k.h: Delete.
bfd/
* Makefile.am: Remove m68k-aout and m68k-coff support.
* aoutf1.h: Likewise.
* aoutx.h: Likewise.
* archive.c: Likewise.
* bfd-in.h: Likewise.
* bfd.c: Likewise.
* coffcode.h: Likewise.
* coffswap.h: Likewise.
* config.bfd: Likewise.
* configure.ac: Likewise.
* configure.host: Likewise.
* doc/bfd.texinfo: Likewise.
* doc/bfdint.texi: Likewise.
* freebsd.h: Likewise.
* gen-aout.c: Likewise.
* hpux-core.c: Likewise.
* libaout.h: Likewise.
* libbfd-in.h: Likewise.
* pdp11.c: Likewise.
* peicode.h: Likewise.
* riscix.c: Likewise.
* targets.c: Likewise.
* aout0.c: Delete.
* coff-apollo.c: Delete.
* coff-aux.c: Delete.
* coff-m68k.c: Delete.
* coff-svm68k.c: Delete.
* coff-u68k.c: Delete.
* hosts/delta68.h: Delete.
* hosts/hp300bsd.h: Delete.
* hosts/m68kaux.h: Delete.
* hosts/news.h: Delete.
* hp300bsd.c: Delete.
* hp300hpux.c: Delete.
* liboasys.h: Delete.
* m68k4knetbsd.c: Delete.
* m68klinux.c: Delete.
* m68knetbsd.c: Delete.
* oasys.c: Delete.
* versados.c: Delete.
* Makefile.in: Regenerate.
* bfd-in2.h: Regenerate.
* configure: Regenerate.
* libbfd.h: Regenerate.
* po/SRC-POTFILES.in: Regenerate.
binutils/
* testsuite/binutils-all/copy-2.d: Remove m68k-aout and m68k-coff
support.
* testsuite/binutils-all/copy-3.d: Likewise.
* testsuite/binutils-all/objcopy.exp: Likewise.
* testsuite/lib/binutils-common.exp: Likewise.
gas/
* Makefile.am: Remove m68k-aout and m68k-coff support.
* config/tc-m68k.c: Likewise.
* config/tc-m68k.h: Likewise.
* configure.ac: Likewise.
* configure.tgt: Likewise.
* testsuite/gas/all/weakref1u.d: Likewise.
* testsuite/gas/m68k/all.exp: Likewise.
* testsuite/gas/m68k/br-isaa.d: Likewise.
* testsuite/gas/m68k/br-isab.d: Likewise.
* testsuite/gas/m68k/br-isac.d: Likewise.
* config/te-psos.h: Delete.
* config/te-sun3.h: Delete.
* testsuite/gas/m68k-coff/gas.exp: Delete.
* testsuite/gas/m68k-coff/p2389.s: Delete.
* testsuite/gas/m68k-coff/p2389a.s: Delete.
* testsuite/gas/m68k-coff/p2430.s: Delete.
* testsuite/gas/m68k-coff/p2430a.s: Delete.
* testsuite/gas/m68k-coff/t1.s: Delete.
* testsuite/gas/m68k/p3041.d: Delete.
* testsuite/gas/m68k/p3041.s: Delete.
* testsuite/gas/m68k/p3041data.d: Delete.
* testsuite/gas/m68k/p3041data.s: Delete.
* testsuite/gas/m68k/p3041pcrel.d: Delete.
* testsuite/gas/m68k/p3041pcrel.s: Delete.
* testsuite/gas/m68k/t2.d: Delete.
* Makefile.in: Regenerate.
* config.in: Regenerate.
* configure: Regenerate.
* po/POTFILES.in: Regenerate.
ld/
* Makefile.am: Remove m68k-aout and m68k-coff support.
* configure.tgt: Likewise.
* emultempl/m68kelf.em: Likewise.
* ld.texinfo: Likewise.
* mri.c: Likewise.
* emulparams/delta68.sh: Delete.
* emulparams/hp300bsd.sh: Delete.
* emulparams/hp3hpux.sh: Delete.
* emulparams/m68k4knbsd.sh: Delete.
* emulparams/m68kaout.sh: Delete.
* emulparams/m68kaux.sh: Delete.
* emulparams/m68kcoff.sh: Delete.
* emulparams/m68klinux.sh: Delete.
* emulparams/m68knbsd.sh: Delete.
* emulparams/m68kpsos.sh: Delete.
* emulparams/sun3.sh: Delete.
* emultempl/m68kcoff.em: Delete.
* scripttempl/delta68.sc: Delete.
* scripttempl/m68kaux.sc: Delete.
* scripttempl/m68kcoff.sc: Delete.
* scripttempl/psos.sc: Delete.
* testsuite/ld-versados/t1-1.ro: Delete.
* testsuite/ld-versados/t1-2.ro: Delete.
* testsuite/ld-versados/t1.ld: Delete.
* testsuite/ld-versados/t1.ook: Delete.
* testsuite/ld-versados/t2-1.ro: Delete.
* testsuite/ld-versados/t2-2.ro: Delete.
* testsuite/ld-versados/t2-3.ro: Delete.
* testsuite/ld-versados/t2.ld: Delete.
* testsuite/ld-versados/t2.ook: Delete.
* testsuite/ld-versados/versados.exp: Delete.
* Makefile.in: Regenerate.
* po/BLD-POTFILES.in: Regenerate.
commit 211dc24b8744ed14ee5c293e7ac164d02e1fa1fe
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 16 15:29:39 2018 +0930
Remove sh5 and sh64 support
include/
* dis-asm.h: Remove sh5 and sh64 support.
bfd/
* Makefile.am: Remove sh5 and sh64 support.
* archures.c: Likewise.
* config.bfd: Likewise.
* configure.ac: Likewise.
* cpu-sh.c: Likewise.
* elf32-sh-relocs.h: Likewise.
* elf32-sh.c: Likewise.
* targets.c: Likewise.
* elf32-sh64-com.c: Delete.
* elf32-sh64.c: Delete.
* elf32-sh64.h: Delete.
* elf64-sh64.c: Delete.
* Makefile.in: Regenerate.
* bfd-in2.h: Regenerate.
* configure: Regenerate.
* po/SRC-POTFILES.in: Regenerate.
opcodes/
* Makefile.am: Remove sh5 and sh64 support.
* configure.ac: Likewise.
* disassemble.c: Likewise.
* disassemble.h: Likewise.
* sh-dis.c: Likewise.
* sh64-dis.c: Delete.
* sh64-opc.c: Delete.
* sh64-opc.h: Delete.
* Makefile.in: Regenerate.
* configure: Regenerate.
* po/POTFILES.in: Regenerate.
bintuils/
* testsuite/binutils-all/objcopy.exp: Remove sh5 and sh64 support.
gas/
* Makefile.am: Remove sh5 and sh64 support.
* config/tc-sh.c: Likewise.
* configure.tgt: Likewise.
* doc/Makefile.am: Likewise.
* doc/as.texinfo: Likewise.
* testsuite/gas/cfi/cfi.exp: Likewise.
* testsuite/gas/sh/basic.exp: Likewise.
* config/tc-sh64.c: Delete.
* config/tc-sh64.h: Delete.
* doc/c-sh64.texi: Delete.
* testsuite/gas/sh/sh64/abi-32.d: Delete.
* testsuite/gas/sh/sh64/abi-32.s: Delete.
* testsuite/gas/sh/sh64/abi-64.d: Delete.
* testsuite/gas/sh/sh64/abi-64.s: Delete.
* testsuite/gas/sh/sh64/basic-1.d: Delete.
* testsuite/gas/sh/sh64/basic-1.s: Delete.
* testsuite/gas/sh/sh64/case-1.d: Delete.
* testsuite/gas/sh/sh64/case-1.s: Delete.
* testsuite/gas/sh/sh64/case-noexp-1.d: Delete.
* testsuite/gas/sh/sh64/crange1-1.d: Delete.
* testsuite/gas/sh/sh64/crange1-2.d: Delete.
* testsuite/gas/sh/sh64/crange1.s: Delete.
* testsuite/gas/sh/sh64/crange2-1.d: Delete.
* testsuite/gas/sh/sh64/crange2-2.d: Delete.
* testsuite/gas/sh/sh64/crange2-noexp-1.d: Delete.
* testsuite/gas/sh/sh64/crange2.s: Delete.
* testsuite/gas/sh/sh64/crange3-1.d: Delete.
* testsuite/gas/sh/sh64/crange3.s: Delete.
* testsuite/gas/sh/sh64/crange4-1.d: Delete.
* testsuite/gas/sh/sh64/crange4.s: Delete.
* testsuite/gas/sh/sh64/crange5-1.d: Delete.
* testsuite/gas/sh/sh64/crange5.s: Delete.
* testsuite/gas/sh/sh64/creg-1.d: Delete.
* testsuite/gas/sh/sh64/creg-1.s: Delete.
* testsuite/gas/sh/sh64/creg-2.d: Delete.
* testsuite/gas/sh/sh64/creg-2.s: Delete.
* testsuite/gas/sh/sh64/datal-1.s: Delete.
* testsuite/gas/sh/sh64/datal-2.d: Delete.
* testsuite/gas/sh/sh64/datal-2.s: Delete.
* testsuite/gas/sh/sh64/datal-3.s: Delete.
* testsuite/gas/sh/sh64/datal32-1.d: Delete.
* testsuite/gas/sh/sh64/datal32-3.d: Delete.
* testsuite/gas/sh/sh64/datal64-1.d: Delete.
* testsuite/gas/sh/sh64/datal64-3.d: Delete.
* testsuite/gas/sh/sh64/eh-1.d: Delete.
* testsuite/gas/sh/sh64/eh-1.s: Delete.
* testsuite/gas/sh/sh64/endian-1.d: Delete.
* testsuite/gas/sh/sh64/endian-1.s: Delete.
* testsuite/gas/sh/sh64/endian-2.d: Delete.
* testsuite/gas/sh/sh64/endian-2.s: Delete.
* testsuite/gas/sh/sh64/err-1.s: Delete.
* testsuite/gas/sh/sh64/err-2.s: Delete.
* testsuite/gas/sh/sh64/err-3.s: Delete.
* testsuite/gas/sh/sh64/err-4.s: Delete.
* testsuite/gas/sh/sh64/err-abi-32.s: Delete.
* testsuite/gas/sh/sh64/err-abi-64.s: Delete.
* testsuite/gas/sh/sh64/err-dsp.s: Delete.
* testsuite/gas/sh/sh64/err-movi-noexp-1.s: Delete.
* testsuite/gas/sh/sh64/err-noexp-cmd1.s: Delete.
* testsuite/gas/sh/sh64/err-pt-1.s: Delete.
* testsuite/gas/sh/sh64/err-pt32-cmd1.s: Delete.
* testsuite/gas/sh/sh64/err-pt32-cmd2.s: Delete.
* testsuite/gas/sh/sh64/err-pt32-cmd3.s: Delete.
* testsuite/gas/sh/sh64/err-ptb-1.s: Delete.
* testsuite/gas/sh/sh64/err-ptb-2.s: Delete.
* testsuite/gas/sh/sh64/err.exp: Delete.
* testsuite/gas/sh/sh64/immexpr1.s: Delete.
* testsuite/gas/sh/sh64/immexpr2.s: Delete.
* testsuite/gas/sh/sh64/immexpr32-1.d: Delete.
* testsuite/gas/sh/sh64/immexpr32-2.d: Delete.
* testsuite/gas/sh/sh64/immexpr64-1.d: Delete.
* testsuite/gas/sh/sh64/immexpr64-2.d: Delete.
* testsuite/gas/sh/sh64/lineno.d: Delete.
* testsuite/gas/sh/sh64/lineno.s: Delete.
* testsuite/gas/sh/sh64/localcom-1.d: Delete.
* testsuite/gas/sh/sh64/localcom-1.s: Delete.
* testsuite/gas/sh/sh64/mix-1.d: Delete.
* testsuite/gas/sh/sh64/mix-1.s: Delete.
* testsuite/gas/sh/sh64/mix-noexp-1.d: Delete.
* testsuite/gas/sh/sh64/movi-1.s: Delete.
* testsuite/gas/sh/sh64/movi-2.s: Delete.
* testsuite/gas/sh/sh64/movi-3.d: Delete.
* testsuite/gas/sh/sh64/movi-3.s: Delete.
* testsuite/gas/sh/sh64/movi32-1.d: Delete.
* testsuite/gas/sh/sh64/movi32-2.d: Delete.
* testsuite/gas/sh/sh64/movi32-noexp-2.d: Delete.
* testsuite/gas/sh/sh64/movi64-1.d: Delete.
* testsuite/gas/sh/sh64/movi64-2.d: Delete.
* testsuite/gas/sh/sh64/movi64-2.s: Delete.
* testsuite/gas/sh/sh64/movi64-3.d: Delete.
* testsuite/gas/sh/sh64/movi64-noexp-2.d: Delete.
* testsuite/gas/sh/sh64/pt-1.d: Delete.
* testsuite/gas/sh/sh64/pt-1.s: Delete.
* testsuite/gas/sh/sh64/pt-2.s: Delete.
* testsuite/gas/sh/sh64/pt-noexp-1.d: Delete.
* testsuite/gas/sh/sh64/pt32-1.d: Delete.
* testsuite/gas/sh/sh64/pt32-noexp-2.d: Delete.
* testsuite/gas/sh/sh64/pt64-1.d: Delete.
* testsuite/gas/sh/sh64/pt64-32-1.d: Delete.
* testsuite/gas/sh/sh64/pt64-32-2.d: Delete.
* testsuite/gas/sh/sh64/pt64-noexp-2.d: Delete.
* testsuite/gas/sh/sh64/ptc-1.s: Delete.
* testsuite/gas/sh/sh64/ptc32-1.d: Delete.
* testsuite/gas/sh/sh64/ptc32-noexp-1.d: Delete.
* testsuite/gas/sh/sh64/ptc64-1.d: Delete.
* testsuite/gas/sh/sh64/ptc64-32-1.d: Delete.
* testsuite/gas/sh/sh64/ptc64-noexp-1.d: Delete.
* testsuite/gas/sh/sh64/ptext-1.s: Delete.
* testsuite/gas/sh/sh64/ptext32-1.d: Delete.
* testsuite/gas/sh/sh64/ptext32-noexp-1.d: Delete.
* testsuite/gas/sh/sh64/ptext64-1.d: Delete.
* testsuite/gas/sh/sh64/ptext64-32-1.d: Delete.
* testsuite/gas/sh/sh64/ptext64-noexp-1.d: Delete.
* testsuite/gas/sh/sh64/rel-1.s: Delete.
* testsuite/gas/sh/sh64/rel-2.s: Delete.
* testsuite/gas/sh/sh64/rel-3.s: Delete.
* testsuite/gas/sh/sh64/rel-4.s: Delete.
* testsuite/gas/sh/sh64/rel-5.s: Delete.
* testsuite/gas/sh/sh64/rel32-1.d: Delete.
* testsuite/gas/sh/sh64/rel32-2.d: Delete.
* testsuite/gas/sh/sh64/rel32-3.d: Delete.
* testsuite/gas/sh/sh64/rel32-4.d: Delete.
* testsuite/gas/sh/sh64/rel32-5.d: Delete.
* testsuite/gas/sh/sh64/rel64-1.d: Delete.
* testsuite/gas/sh/sh64/rel64-2.d: Delete.
* testsuite/gas/sh/sh64/rel64-3.d: Delete.
* testsuite/gas/sh/sh64/rel64-4.d: Delete.
* testsuite/gas/sh/sh64/rel64-5.d: Delete.
* testsuite/gas/sh/sh64/relax-1.d: Delete.
* testsuite/gas/sh/sh64/relax-1.s: Delete.
* testsuite/gas/sh/sh64/relax-2.d: Delete.
* testsuite/gas/sh/sh64/relax-2.s: Delete.
* testsuite/gas/sh/sh64/relax-3.d: Delete.
* testsuite/gas/sh/sh64/relax-3.s: Delete.
* testsuite/gas/sh/sh64/sh64.exp: Delete.
* testsuite/gas/sh/sh64/shift-1.s: Delete.
* testsuite/gas/sh/sh64/shift-2.s: Delete.
* testsuite/gas/sh/sh64/shift-3.s: Delete.
* testsuite/gas/sh/sh64/shift32-1.d: Delete.
* testsuite/gas/sh/sh64/shift32-3.d: Delete.
* testsuite/gas/sh/sh64/shift32-noexp-3.d: Delete.
* testsuite/gas/sh/sh64/shift64-1.d: Delete.
* testsuite/gas/sh/sh64/shift64-2.d: Delete.
* testsuite/gas/sh/sh64/shift64-3.d: Delete.
* testsuite/gas/sh/sh64/shift64-noexp-3.d: Delete.
* testsuite/gas/sh/sh64/syntax-1.d: Delete.
* testsuite/gas/sh/sh64/syntax-1.s: Delete.
* testsuite/gas/sh/sh64/syntax-2.d: Delete.
* testsuite/gas/sh/sh64/syntax-2.s: Delete.
* testsuite/gas/sh/sh64/ua-1.s: Delete.
* testsuite/gas/sh/sh64/ua32-1.d: Delete.
* testsuite/gas/sh/sh64/ua64-1.d: Delete.
* Makefile.in: Regenerate.
* doc/Makefile.in: Regenerate.
* po/POTFILES.in: Regenerate.
ld/
* Makefile.am: Remove sh5 and sh64 support.
* configure.tgt: Likewise.
* ldlang.c: Likewise.
* testsuite/ld-elfcomm/elfcomm.exp: Likewise.
* testsuite/ld-gc/gc.exp: Likewise.
* testsuite/ld-gc/pr13683.d: Likewise.
* testsuite/ld-scripts/crossref.exp: Likewise.
* testsuite/ld-selective/selective.exp: Likewise.
* testsuite/ld-sh/ld-r-1.d: Likewise.
* testsuite/ld-sh/rd-sh.exp: Likewise.
* testsuite/ld-sh/sh.exp: Likewise.
* testsuite/ld-srec/srec.exp: Likewise.
* testsuite/ld-undefined/undefined.exp: Likewise.
* emulparams/shelf32.sh: Delete.
* emulparams/shelf32_linux.sh: Delete.
* emulparams/shelf32_nbsd.sh: Delete.
* emulparams/shelf64.sh: Delete.
* emulparams/shelf64_nbsd.sh: Delete.
* emulparams/shlelf32.sh: Delete.
* emulparams/shlelf32_linux.sh: Delete.
* emulparams/shlelf32_nbsd.sh: Delete.
* emulparams/shlelf64.sh: Delete.
* emulparams/shlelf64_nbsd.sh: Delete.
* emultempl/sh64elf.em: Delete.
* testsuite/ld-sh/sh64/abi32.sd: Delete.
* testsuite/ld-sh/sh64/abi32.xd: Delete.
* testsuite/ld-sh/sh64/abi64.sd: Delete.
* testsuite/ld-sh/sh64/abi64.xd: Delete.
* testsuite/ld-sh/sh64/abixx-noexp.sd: Delete.
* testsuite/ld-sh/sh64/cmpct1.sd: Delete.
* testsuite/ld-sh/sh64/cmpct1.xd: Delete.
* testsuite/ld-sh/sh64/crange-1.s: Delete.
* testsuite/ld-sh/sh64/crange-2a.s: Delete.
* testsuite/ld-sh/sh64/crange-2b.s: Delete.
* testsuite/ld-sh/sh64/crange-2c.s: Delete.
* testsuite/ld-sh/sh64/crange-2d.s: Delete.
* testsuite/ld-sh/sh64/crange-2e.s: Delete.
* testsuite/ld-sh/sh64/crange-2f.s: Delete.
* testsuite/ld-sh/sh64/crange-2g.s: Delete.
* testsuite/ld-sh/sh64/crange-2h.s: Delete.
* testsuite/ld-sh/sh64/crange-2i.s: Delete.
* testsuite/ld-sh/sh64/crange1.rd: Delete.
* testsuite/ld-sh/sh64/crange2.rd: Delete.
* testsuite/ld-sh/sh64/crange3-cmpct.rd: Delete.
* testsuite/ld-sh/sh64/crange3-media.rd: Delete.
* testsuite/ld-sh/sh64/crange3.dd: Delete.
* testsuite/ld-sh/sh64/crange3.rd: Delete.
* testsuite/ld-sh/sh64/crangerel1.rd: Delete.
* testsuite/ld-sh/sh64/crangerel2.rd: Delete.
* testsuite/ld-sh/sh64/dlsection-1.s: Delete.
* testsuite/ld-sh/sh64/dlsection.sd: Delete.
* testsuite/ld-sh/sh64/endian.dbd: Delete.
* testsuite/ld-sh/sh64/endian.dld: Delete.
* testsuite/ld-sh/sh64/endian.ld: Delete.
* testsuite/ld-sh/sh64/endian.s: Delete.
* testsuite/ld-sh/sh64/endian.sbd: Delete.
* testsuite/ld-sh/sh64/endian.sld: Delete.
* testsuite/ld-sh/sh64/gotplt.d: Delete.
* testsuite/ld-sh/sh64/gotplt.map: Delete.
* testsuite/ld-sh/sh64/gotplt.s: Delete.
* testsuite/ld-sh/sh64/init-cmpct.d: Delete.
* testsuite/ld-sh/sh64/init-media.d: Delete.
* testsuite/ld-sh/sh64/init.s: Delete.
* testsuite/ld-sh/sh64/init64.d: Delete.
* testsuite/ld-sh/sh64/mix1-noexp.sd: Delete.
* testsuite/ld-sh/sh64/mix1.sd: Delete.
* testsuite/ld-sh/sh64/mix1.xd: Delete.
* testsuite/ld-sh/sh64/mix2-noexp.sd: Delete.
* testsuite/ld-sh/sh64/mix2.sd: Delete.
* testsuite/ld-sh/sh64/mix2.xd: Delete.
* testsuite/ld-sh/sh64/rd-sh64.exp: Delete.
* testsuite/ld-sh/sh64/rel-1.s: Delete.
* testsuite/ld-sh/sh64/rel-2.s: Delete.
* testsuite/ld-sh/sh64/rel32.xd: Delete.
* testsuite/ld-sh/sh64/rel64.xd: Delete.
* testsuite/ld-sh/sh64/relax.exp: Delete.
* testsuite/ld-sh/sh64/relax1.s: Delete.
* testsuite/ld-sh/sh64/relax2.s: Delete.
* testsuite/ld-sh/sh64/relax3.s: Delete.
* testsuite/ld-sh/sh64/relax4.s: Delete.
* testsuite/ld-sh/sh64/reldl-1.s: Delete.
* testsuite/ld-sh/sh64/reldl-2.s: Delete.
* testsuite/ld-sh/sh64/reldl32.rd: Delete.
* testsuite/ld-sh/sh64/reldl64.rd: Delete.
* testsuite/ld-sh/sh64/relfail.exp: Delete.
* testsuite/ld-sh/sh64/relfail.s: Delete.
* testsuite/ld-sh/sh64/sh64-1.s: Delete.
* testsuite/ld-sh/sh64/sh64-2.s: Delete.
* testsuite/ld-sh/sh64/sh64.exp: Delete.
* testsuite/ld-sh/sh64/shcmp-1.s: Delete.
* testsuite/ld-sh/sh64/shdl-1.s: Delete.
* testsuite/ld-sh/sh64/shdl-2.s: Delete.
* testsuite/ld-sh/sh64/shdl32.xd: Delete.
* testsuite/ld-sh/sh64/shdl64.sd: Delete.
* testsuite/ld-sh/sh64/shdl64.xd: Delete.
* testsuite/ld-sh/sh64/shmix-1.s: Delete.
* testsuite/ld-sh/sh64/shmix-2.s: Delete.
* testsuite/ld-sh/sh64/shmix-3.s: Delete.
* testsuite/ld-sh/sh64/stobin-0-dso.d: Delete.
* testsuite/ld-sh/sh64/stobin-1.d: Delete.
* testsuite/ld-sh/sh64/stobin.s: Delete.
* testsuite/ld-sh/sh64/stolib.s: Delete.
* Makefile.in: Regenerate.
* po/BLD-POTFILES.in: Regenerate.
commit 4db9937a27496d2f62ac1dde76565809acd4ecde
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 16 15:27:45 2018 +0930
Remove sh-symbianelf support
bfd/
* Makefile.am: Remove sh-symbianelf support.
* config.bfd: Likewise.
* configure.ac: Likewise.
* targets.c: Likewise.
* elf32-sh-symbian.c: Delete.
* Makefile.in: Regenerate.
* configure: Regenerate.
* po/SRC-POTFILES.in: Regenerate.
gas/
* config/tc-sh.c: Remove sh-symbianelf support.
* config/tc-sh.h: Likewise.
* configure.ac: Likewise.
* configure.tgt: Likewise.
* testsuite/gas/sh/reg-prefix.d: Likewise.
* testsuite/gas/sh/sh2a-pic.d: Likewise.
* config.in: Regenerate.
* configure: Regenerate.
ld/
* Makefile.am: Remove sh-symbianelf support.
* configure.tgt: Likewise.
* emulparams/shlsymbian.sh: Delete.
* scripttempl/elf32sh-symbian.sc: Delete.
* Makefile.in: Regenerate.
* po/BLD-POTFILES.in: Regenerate.
commit 9f5d15933be033c9d54e41d605d7824f57fbed4e
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 16 15:26:56 2018 +0930
Remove vax-bsd and vax-ultrix support
bfd/
* Makefile.am: Remove vax-bsd and vax-ultrix support.
* config.bfd: Likewise.
* configure.ac: Likewise.
* targets.c: Likewise.
* vaxbsd.c: Delete.
* Makefile.in: Regenerate.
* configure: Regenerate.
* po/SRC-POTFILES.in: Regenerate.
ld/
* Makefile.am: Remove vax-bsd and vax-ultrix support.
* configure.tgt: Likewise.
* emulparams/vax.sh: Delete.
* Makefile.in: Regenerate.
* po/BLD-POTFILES.in: Regenerate.
commit a9a4b30244006a0087c5a7bf73cbb13927f1d9f1
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 16 15:26:05 2018 +0930
Remove w65 support
include/
* coff/internal.h: Remove w65 support.
* coff/w65.h: Delete.
bfd/
* Makefile.am: Remove w65 support.
* archures.c: Likewise.
* coffcode.h: Likewise.
* config.bfd: Likewise.
* configure.ac: Likewise.
* targets.c: Likewise.
* coff-w65.c: Delete.
* cpu-w65.c: Delete.
* Makefile.in: Regenerate.
* bfd-in2.h: Regenerate.
* configure: Regenerate.
* po/SRC-POTFILES.in: Regenerate.
opcodes/
* Makefile.am: Remove w65 support.
* configure.ac: Likewise.
* disassemble.c: Likewise.
* disassemble.h: Likewise.
* w65-dis.c: Delete.
* w65-opc.h: Delete.
* Makefile.in: Regenerate.
* configure: Regenerate.
* po/POTFILES.in: Regenerate.
binutils/
* testsuite/binutils-all/objcopy.exp: Remove w65 support.
ld/
* Makefile.am: Remove w65 support.
* configure.tgt: Likewise.
* emulparams/w65.sh: Delete.
* scripttempl/w65.sc: Delete.
* Makefile.in: Regenerate.
* po/BLD-POTFILES.in: Regenerate.
commit 04cb01fd5a3bc167ae26486bbc2bf941e96ad805
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 16 15:24:43 2018 +0930
Remove we32k support
include/
* coff/we32k.h: Delete.
bfd/
* Makefile.am: Remove we32k support.
* archures.c: Likewise.
* coffcode.h: Likewise.
* config.bfd: Likewise.
* configure.ac: Likewise.
* targets.c: Likewise.
* coff-we32k.c: Delete.
* cpu-we32k.c: Delete.
* Makefile.in: Regenerate.
* bfd-in2.h: Regenerate.
* configure: Regenerate.
* po/SRC-POTFILES.in: Regenerate.
opcodes/
* configure.ac: Remove we32k support.
* configure: Regenerate.
bintuils/
* testsuite/binutils-all/objdump.exp: Remove we32k support.
commit c2bf1eecf99abc4d546bb52a008a25e64a29d85e
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 16 15:23:38 2018 +0930
Remove m88k support
include/
* coff/internal.h: Remove m88k support.
* coff/m88k.h: Delete.
* opcode/m88k.h: Delete.
bfd/
* Makefile.am: Remove m88k support.
* aoutx.h: Likewise.
* archures.c: Likewise.
* coffcode.h: Likewise.
* coffswap.h: Likewise.
* config.bfd: Likewise.
* configure.ac: Likewise.
* cpu-ns32k.c: Likewise.
* elf32-nds32.c: Likewise.
* mach-o.c: Likewise.
* netbsd-core.c: Likewise.
* reloc.c: Likewise.
* targets.c: Likewise.
* coff-m88k.c: Delete.
* cpu-m88k.c: Delete.
* elf32-m88k.c: Delete.
* hosts/m88kmach3.h: Delete.
* m88kmach3.c: Delete.
* m88kopenbsd.c: Delete.
* Makefile.in: Regenerate.
* bfd-in2.h: Regenerate.
* configure: Regenerate.
* po/SRC-POTFILES.in: Regenerate.
opcodes/
* Makefile.am: Remove m88k support.
* configure.ac: Likewise.
* disassemble.c: Likewise.
* disassemble.h: Likewise.
* m88k-dis.c: Delete.
* Makefile.in: Regenerate.
* configure: Regenerate.
* po/POTFILES.in: Regenerate.
binutils/
* MAINTAINERS (Mark Kettenis): Move to past maintainers.
* testsuite/binutils-all/objdump.exp: Remove m88k support.
gas/
* configure.ac: Remove m88k support.
* config.in: Regenerate.
* configure: Regenerate.
ld/
* Makefile.am: Remove m88k support.
* configure.host: Likewise.
* configure.tgt: Likewise.
* testsuite/ld-elf/sec-to-seg.exp: Likewise.
* emulparams/m88kbcs.sh: Delete.
* scripttempl/m88kbcs.sc: Delete.
* Makefile.in: Regenerate.
* po/BLD-POTFILES.in: Regenerate.
commit 6793974daae8ff3f8ad4e856a9f0e3bbe4fdf9a3
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 16 15:21:56 2018 +0930
Remove i370 support
include/
* elf/i370.h: Delete.
* opcode/i370.h: Delete.
bfd/
* Makefile.am: Remove i370 support.
* archures.c: Likewise.
* config.bfd: Likewise.
* configure.ac: Likewise.
* targets.c: Likewise.
* cpu-i370.c: Delete.
* elf32-i370.c: Delete.
* Makefile.in: Regenerate.
* bfd-in2.h: Regenerate.
* configure: Regenerate.
* po/SRC-POTFILES.in: Regenerate.
opcodes/
* Makefile.am: Remove i370 support.
* configure.ac: Likewise.
* disassemble.c: Likewise.
* disassemble.h: Likewise.
* i370-dis.c: Delete.
* i370-opc.c: Delete.
* Makefile.in: Regenerate.
* configure: Regenerate.
* po/POTFILES.in: Regenerate.
binutils/
* readelf.c: Remove i370 support.
* testsuite/binutils-all/objdump.exp: Likewise.
gas/
* Makefile.am: Remove i370 support.
* app.c: Likewise.
* config/obj-elf.c: Likewise.
* configure.tgt: Likewise.
* doc/Makefile.am: Likewise.
* doc/as.texinfo: Likewise.
* testsuite/gas/all/gas.exp: Likewise.
* testsuite/gas/elf/warn-2.s: Likewise.
* testsuite/gas/lns/lns.exp: Likewise.
* config/tc-i370.c: Delete.
* config/tc-i370.h: Delete.
* doc/c-i370.texi: Delete.
* Makefile.in: Regenerate.
* doc/Makefile.in: Regenerate.
* po/POTFILES.in: Regenerate.
ld/
* Makefile.am: Remove i370 support.
* configure.tgt: Likewise.
* testsuite/ld-elf/compressed1d.d: Likewise.
* testsuite/ld-elf/group8a.d: Likewise.
* testsuite/ld-elf/group8b.d: Likewise.
* testsuite/ld-elf/group9a.d: Likewise.
* testsuite/ld-elf/group9b.d: Likewise.
* testsuite/ld-elf/merge.d: Likewise.
* testsuite/ld-elf/pr12851.d: Likewise.
* testsuite/ld-elf/pr12975.d: Likewise.
* testsuite/ld-elf/pr13177.d: Likewise.
* testsuite/ld-elf/pr13195.d: Likewise.
* testsuite/ld-elf/pr17615.d: Likewise.
* testsuite/ld-elf/pr21562a.d: Likewise.
* testsuite/ld-elf/pr21562b.d: Likewise.
* testsuite/ld-elf/pr21562c.d: Likewise.
* testsuite/ld-elf/pr21562d.d: Likewise.
* testsuite/ld-elf/pr21562i.d: Likewise.
* testsuite/ld-elf/pr21562j.d: Likewise.
* testsuite/ld-elf/pr21562k.d: Likewise.
* testsuite/ld-elf/pr21562l.d: Likewise.
* testsuite/ld-elf/pr21562m.d: Likewise.
* testsuite/ld-elf/pr21562n.d: Likewise.
* testsuite/ld-elf/pr22677.d: Likewise.
* testsuite/lib/ld-lib.exp: Likewise.
* emulparams/elf32i370.sh: Delete.
* scripttempl/elfi370.sc: Delete.
* Makefile.in: Regenerate.
* po/BLD-POTFILES.in: Regenerate.
commit e82aa7944d2b00c54e9d3c1a47c5ed4a0e39393a
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 16 15:19:41 2018 +0930
Remove h8500 support
include/
* coff/h8500.h: Delete.
* coff/internal.h: Remove h8500 support.
bfd/
* Makefile.am: Remove h8500 support.
* archures.c: Likewise.
* coffcode.h: Likewise.
* config.bfd: Likewise.
* configure.ac: Likewise.
* targets.c: Likewise.
* coff-h8500.c: Delete.
* cpu-h8500.c: Delete.
* Makefile.in: Regenerate.
* bfd-in2.h: Regenerate.
* configure: Regenerate.
* po/SRC-POTFILES.in: Regenerate.
opcodes/
* Makefile.am: Remove h8500 support.
* configure.ac: Likewise.
* disassemble.c: Likewise.
* disassemble.h: Likewise.
* h8500-dis.c: Delete.
* h8500-opc.h: Delete.
* Makefile.in: Regenerate.
* configure: Regenerate.
* po/POTFILES.in: Regenerate.
binutils/
* testsuite/binutils-all/objcopy.exp: Remove h8500 support.
* testsuite/lib/binutils-common.exp: Likewise.
gas/
* config/obj-coff.h: Remove h8500 support.
ld/
* Makefile.am: Remove h8500 support.
* configure.tgt: Likewise.
* emulparams/h8500.sh: Delete.
* emulparams/h8500b.sh: Delete.
* emulparams/h8500c.sh: Delete.
* emulparams/h8500m.sh: Delete.
* emulparams/h8500s.sh: Delete.
* scripttempl/h8500.sc: Delete.
* scripttempl/h8500b.sc: Delete.
* scripttempl/h8500c.sc: Delete.
* scripttempl/h8500m.sc: Delete.
* scripttempl/h8500s.sc: Delete.
* Makefile.in: Regenerate.
* po/BLD-POTFILES.in: Regenerate.
commit fe0bf0fd57ea3ef8458d2e8661b428110fc026e2
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 16 15:17:57 2018 +0930
Remove h8300-coff support
include/
* coff/h8300.h: Delete.
bfd/
* Makefile.am: Remove h8300-coff support.
* coffcode.h: Likewise.
* config.bfd: Likewise.
* configure.ac: Likewise.
* reloc16.c: Likewise.
* targets.c: Likewise.
* coff-h8300.c: Delete.
* Makefile.in: Regenerate.
* configure: Regenerate.
* po/SRC-POTFILES.in: Regenerate.
binutils/
* testsuite/binutils-all/objcopy.exp: Remove h8300-coff support.
gas/
* config/obj-coff.h: Remove h8300-coff support.
* config/tc-h8300.c: Likewise.
* config/tc-h8300.h: Likewise.
* testsuite/gas/h8300/h8300.exp: Likewise.
* testsuite/gas/h8300/branch-coff.s: Delete.
* testsuite/gas/h8300/branchh-coff.s: Delete.
* testsuite/gas/h8300/branchs-coff.s: Delete.
* testsuite/gas/h8300/ffxx1-coff.d: Delete.
* testsuite/gas/h8300/ffxx1-coff.s: Delete.
* testsuite/gas/h8300/h8300-coff.exp: Delete.
ld/
* Makefile.am: Remove h8300-coff support.
* configure.tgt: Likewise.
* testsuite/ld-h8300/h8300.exp: Likewise.
* emulparams/h8300.sh: Delete.
* emulparams/h8300h.sh: Delete.
* emulparams/h8300hn.sh: Delete.
* emulparams/h8300s.sh: Delete.
* emulparams/h8300sn.sh: Delete.
* emulparams/h8300sx.sh: Delete.
* emulparams/h8300sxn.sh: Delete.
* scripttempl/h8300.sc: Delete.
* scripttempl/h8300h.sc: Delete.
* scripttempl/h8300hn.sc: Delete.
* scripttempl/h8300s.sc: Delete.
* scripttempl/h8300sn.sc: Delete.
* scripttempl/h8300sx.sc: Delete.
* scripttempl/h8300sxn.sc: Delete.
* testsuite/ld-h8300/relax-3-coff.d: Delete.
* testsuite/ld-h8300/relax-4-coff.d: Delete.
* testsuite/ld-h8300/relax-5-coff.d: Delete.
* testsuite/ld-h8300/relax-6-coff.d: Delete.
* Makefile.in: Regenerate.
* po/BLD-POTFILES.in: Regenerate.
commit fdef3943443987525aea4f3ebe1f569f7070fcc8
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 16 15:16:00 2018 +0930
Remove IEEE 695 object support
include/
* ieee.h: Delete.
bfd/
* Makefile.am: Remove IEEE 695 support.
* archures.c: Likewise.
* bfd.c: Likewise.
* config.bfd: Likewise.
* configure.ac: Likewise.
* doc/bfd.texinfo: Likewise.
* doc/bfdint.texi: Likewise.
* doc/bfdsumm.texi: Likewise.
* section.c: Likewise.
* targets.c: Likewise.
* ieee.c: Delete.
* libieee.h: Delete.
* Makefile.in: Regenerate.
* bfd-in2.h: Regenerate.
* configure: Regenerate.
* po/SRC-POTFILES.in: Regenerate.
binutils/
* Makefile.am: Remove IEEE 695 support.
* budbg.h: Likewise.
* doc/binutils.texi: Likewise.
* makefile.vms: Likewise.
* objcopy.c: Likewise.
* objdump.c: Likewise.
* rddbg.c: Likewise.
* ieee.c: Delete.
* Makefile.in: Regenerate.
* po/POTFILES.in: Regenerate.
gas/
* app.c: Remove IEEE 695 support.
* symbols.c: Likewise.
ld/
* ld.texinfo: Remove IEEE 695 support.
* mri.c: Likewise.
commit de96689e03235bfd65a33704a9d398cb666140f4
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 16 15:14:19 2018 +0930
Remove tandem support
bfd/
* config.bfd: Remove tandem support.
ld/
* Makefile.am: Remove tandem support.
* configure.tgt: Likewise.
* emulparams/st2000.sh: Delete.
* scripttempl/st2000.sc: Delete.
* Makefile.in: Regenerate.
* po/BLD-POTFILES.in: Regenerate.
commit 5972ac7375e9b6a6f0c4bdef31d3da574fb1b65e
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 16 15:13:07 2018 +0930
Remove sony newsos3 support
include/
* aout/host.h: Remove newsos3 support.
bfd/
* Makefile.am: Remove newsos3 support.
* aoutx.h: Likewise.
* config.bfd: Likewise.
* configure.ac: Likewise.
* targets.c: Likewise.
* newsos3.c: Delete.
* Makefile.in: Regenerate.
* configure: Regenerate.
* po/SRC-POTFILES.in: Regenerate.
binutils/
* testsuite/binutils-all/copy-2.d: Remove newsos3 support.
* testsuite/binutils-all/nm.exp: Likewise.
ld/
* Makefile.am: Remove newsos3 support.
* configure.tgt: Likewise.
* emulparams/news.sh: Delete.
* Makefile.in: Regenerate.
* po/BLD-POTFILES.in: Regenerate.
commit b4b594e304d44458e25e106ddb4824a37aaf556c
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 16 15:11:22 2018 +0930
Remove netware support
include/
* nlm/ChangeLog-9315: Delete.
* nlm/alpha-ext.h: Delete.
* nlm/common.h: Delete.
* nlm/external.h: Delete.
* nlm/i386-ext.h: Delete.
* nlm/internal.h: Delete.
* nlm/ppc-ext.h: Delete.
* nlm/sparc32-ext.h: Delete.
bfd/
* Makefile.am: Remove netware support.
* bfd-in.h: Likewise.
* bfd.c: Likewise.
* config.bfd: Likewise.
* configure.ac: Likewise.
* doc/bfdint.texi: Likewise.
* ecoff.c: Likewise.
* targets.c: Likewise.
* libnlm.h: Delete.
* nlm-target.h: Delete.
* nlm.c: Delete.
* nlm32-alpha.c: Delete.
* nlm32-i386.c: Delete.
* nlm32-ppc.c: Delete.
* nlm32-sparc.c: Delete.
* nlm32.c: Delete.
* nlm64.c: Delete.
* nlmcode.h: Delete.
* nlmswap.h: Delete.
* Makefile.in: Regenerate.
* bfd-in2.h: Regenerate.
* configure: Regenerate.
* po/SRC-POTFILES.in: Regenerate.
binutils/
* .gitignore: Remove netware support.
* Makefile.am: Likewise.
* configure.ac: Likewise.
* doc/Makefile.am: Likewise.
* doc/binutils.texi: Likewise.
* testsuite/binutils-all/nm.exp: Likewise.
* nlmconv.c: Delete.
* nlmconv.h: Delete.
* nlmheader.y: Delete.
* Makefile.in: Regenerate.
* configure: Regenerate.
* doc/Makefile.in: Regenerate.
* po/POTFILES.in: Regenerate.
gas/
* Makefile.am: Remove netware support.
* config/tc-i386.c: Likewise.
* configure.tgt: Likewise.
* config/te-netware.h: Delete.
* Makefile.in: Regenerate.
* po/POTFILES.in: Regenerate.
gprof/
* corefile.c: Remove netware support.
ld/
* Makefile.am: Remove netware support.
* configure.tgt: Likewise.
* testsuite/ld-powerpc/powerpc.exp: Likewise.
* emulparams/i386nw.sh: Delete.
* emulparams/ppcnw.sh: Delete.
* scripttempl/nw.sc: Delete.
* Makefile.in: Regenerate.
* po/BLD-POTFILES.in: Regenerate.
commit fceadf09517d8b37a0fa77852e26a789fc160d94
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 16 15:08:40 2018 +0930
Remove tahoe support
include/
* opcode/tahoe.h: Delete.
bfd/
* archures.c: Remove tahoe support.
* config.bfd: Likewise.
* configure.ac: Likewise.
* hosts/tahoe.h: Delete.
* bfd-in2.h: Regenerate.
* configure: Regenerate.
opcodes/
* configure.ac: Remove tahoe support.
* configure: Regenerate.
binutils/
* testsuite/binutils-all/objdump.exp: Remove tahoe support.
gprof/
* Makefile.am: Remove tahoe support.
* corefile.c: Likewise.
* tahoe.c: Delete.
* Makefile.in: Regenerate.
* po/POTFILES.in: Regenerate.
commit 5a48b83f3f41236f56046fd1a1354ebca789278c
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Apr 16 00:00:29 2018 +0000
Automatic date update in version.in
commit eda4efb12763893b8a49c10c6f2823a465c1c6ba
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sun Apr 15 12:52:27 2018 -0400
Add x86-tdep.o to i386/amd64 target build
We get this error when doing a build with a single amd64 target (the
default when doing just ./configure on x86-64 GNU/Linux):
/home/simark/src/binutils-gdb/gdb/i386-tdep.c:4431: error: undefined reference to 'x86_in_indirect_branch_thunk(unsigned long, char const**, int, int)'
/home/simark/src/binutils-gdb/gdb/amd64-tdep.c:3045: error: undefined reference to 'x86_in_indirect_branch_thunk(unsigned long, char const**, int, int)'
The problem is that commit
1d509aa625f8 ("infrun: step through indirect branch thunks")
missed adding x86-tdep.o to the list of object file included in an amd64
or i386 build. The problem is not seen with --enable-targets=all
because that file is included in ALL_TARGET_OBS.
Built-tested using:
* --host=x86_64-pc-linux-gnu --target=x86_64-pc-linux-gnu
* --host=armv7-rpi2-linux-gnueabihf --target=x86_64-pc-linux-gnu
gdb/ChangeLog:
* configure.tgt (x86_tobjs): New variable.
(amd64_tobjs, i386_tobjs): Use it.
commit ae1d38437284b31d5a1c604bcf391d4543be00a5
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sun Apr 15 08:38:23 2018 -0700
x86: Allow 32-bit registers for tpause and umwait
Since only the first 32 bits of input operand are used for tpause and
umwait, the REX.W bit is skipped. Both 32-bit registers and 64-bit
registers are allowed.
gas/
* testsuite/gas/i386/x86-64-waitpkg.s: Add 32-bit registers
tests for tpause and umwait.
* testsuite/gas/i386/x86-64-waitpkg-intel.d: Updated.
* testsuite/gas/i386/x86-64-waitpkg.d: Likewise.
opcodes/
* i386-dis.c (prefix_table): Replace Em with Edq on tpause and
umwait.
* i386-opc.tbl: Allow 32-bit registers for tpause and umwait in
64-bit mode.
* i386-tbl.h: Regenerated.
commit 7c31c22f1a18d91e104f1ffd5df8895d2459fe48
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Apr 15 00:00:48 2018 +0000
Automatic date update in version.in
commit aae8280935aab812c3666d1c5c0ea099e96927cc
Author: Cary Coutant <ccoutant@gmail.com>
Date: Sat Apr 14 15:58:07 2018 -0700
Fix bug where --icf=safe triggers segfault when linking ARM.
When checking a R_ARM_TARGET[12] relocation, we need a valid target
pointer, but the garbage collection code was passing a NULL instead.
gold/
PR gold/23046
* gc.h (gc_process_relocs): Pass target to
scan.global_reloc_may_be_function_pointer.
commit 702d167134149f420ea3bcbc194d63a2653a0c27
Author: Alan Modra <amodra@gmail.com>
Date: Sat Apr 14 16:23:56 2018 +0930
powerpc common-page-size
max-page-size only matters for demand paged executables or shared
libraries, and the ideal size is the largest value used by your
operating system. Values larger than necessary just waste file space
and memory. common-page-size also affects file and memory size,
trading a possible small increase in file size for a decrease in
memory size when the operating system is using a common-page-size
page. With a powerpc max-page-size of 64k and common-page-size of 4k
many executables will use no more memory pages when the system page
size is 4k than an executable linked with -z max-page-size=0x1000,
yet will still run on a system using 64k pages. However, when running
on a system using 64k pages relro protection will not be completely
effective.
Due to the relro problem, powerpc binutils has been using a default
common-page-size of 64k since 2014-12-18 (git commit 04c6a44c7),
leading to complaints about increased file and memory sizes. People
not using relro do have a valid reason to complain..
So this patch introduces an extra back-end value to use as the default
for common-page-size when generating relro executables, and enables
the support for powerpc. Non relro executables will now be generated
with a default common-page-size of 4k.
bfd/
* elf-bfd.h (struct elf_backend_data): Add relropagesize.
* elfxx-target.h (ELF_RELROPAGESIZE): Provide default and
sanity test.
(elfNN_bed): Init relropagesize.
* bfd.c (bfd_emul_get_commonpagesize): Add boolean param to
select relropagesize.
* elf32-ppc.c (ELF_COMMONPAGESIZE): Define as 0x1000.
(ELF_RELROPAGESIZE): Define as ELF_MAXPAGESIZE.
(ELF_MINPAGESIZE): Don't define.
* elf64-ppc.c (ELF_COMMONPAGESIZE): Define as 0x1000.
(ELF_RELROPAGESIZE): Define as ELF_MAXPAGESIZE.
* bfd-in2.h: Regenerate.
ld/
* ldmain.c (main): Move config.maxpagesize and
config.commonpagesize initialization to..
* ldemul.c (after_parse_default): ..here.
* testsuite/ld-powerpc/ppc476-shared.d: Pass -z common-page-size.
* testsuite/ld-powerpc/ppc476-shared2.d: Likewise.
commit 03aa968462e0345b2d846ca240b8c723d713761a
Author: Alan Modra <amodra@gmail.com>
Date: Thu Apr 12 20:10:36 2018 +0930
powerpc max-page-size vs __QNXTARGET__
The default max-page-size on ppc32 has been 64k since 1995-02-15 (git
commit bcbe2c71). There was a change committed 2003-07-12 to chose a
4k page if __QNXTARGET__ is defined, but that particular commit was
from an earlier posted patch
https://sourceware.org/ml/binutils/2003-07/msg00211.html that only
made the change effective for arm, rather than the later one
https://sourceware.org/ml/binutils/2003-07/msg00220.html that also
changed powerpc and sh..
Since the __QNXTARGET__ #ifdef in elf32-ppc.c is ineffective unless
the user defines it in his or her CFLAGS, I'm removing that code.
* elf32-ppc.c (ELF_MAXPAGESIZE, ELF_COMMONPAGESIZE): Don't depend
on __QNXTARGET__ define.
commit 24acfe5e2b7d4e6c0ccb72ffffc349d7fa88838d
Author: Alan Modra <amodra@gmail.com>
Date: Sat Apr 14 10:51:23 2018 +0930
powerpc-lynxos and powerpc-windiss fixes
Enabling shared lib tests showed the powerpc-lynxos target is broken,
and has been for a long time. The breakage happened in a 2005-05-07
patch of mine, git commit 3b36f7e62, I think. There have been no bug
reports I recall so it seems the target is dead. powerpc-windiss is
similarly broken.
This patch fixes the breakage, and puts the targets on the obsolete
list.
bfd/
* config.bfd: Add powerpc-*-lynxos* and powerpc-*-windiss*
to obsolete list.
ld/
* emulparams/elf32ppcwindiss.sh: Rewrite to use elf32ppc.sh.
* emulparams/ppclynx.sh: Likewise.
commit fb70ec1714f6be66464f5a9dfab1681cf8f4ac3d
Author: Alan Modra <amodra@gmail.com>
Date: Sat Apr 14 10:50:16 2018 +0930
Reinstate readelf decoding of i860 and i960 machine names
Decoding of EM_* ought to continue.
* readelf.c (get_machine_name): Revert 2018-04-11 change.
commit 68e91e42492551e165b103d819c021c4953da10b
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Apr 14 00:00:33 2018 +0000
Automatic date update in version.in
commit b744723f571815e6cee43df371c8e733e34e1edf
Author: Andreas Arnez <arnez@linux.vnet.ibm.com>
Date: Fri Apr 13 19:26:05 2018 +0200
Show line numbers in output for "info var/func/type"
The GDB commands "info variables", "info functions", and "info types" show
the appropriate list of definitions matching the given pattern. They also
group them by source files. But no line numbers within these source files
are shown.
The line number information is particularly useful to the user when a
simple "grep" doesn't readily point to a definition. This is often the
case when the definition involves a macro, occurs within a namespace, or
when the identifier appears very frequently in the source file.
This patch enriches the printout of these commands by the line numbers and
adjusts affected test cases to the changed output where necessary. The
new output looks like this:
(gdb) i variables
All defined variables:
File foo.c:
3: const char * const foo;
1: int x;
The line number is followed by a colon and a tab character, which is then
followed by the symbol definition. If no line number is available, the
tab is printed out anyhow, so definitions line up.
gdb/ChangeLog:
* symtab.c (print_symbol_info): Precede the symbol definition by
the line number when available.
* NEWS: Advertise this enhancement.
gdb/doc/ChangeLog:
* gdb.texinfo (Symbols): Mention the fact that "info
variables/functions/types" show source files and line numbers.
gdb/testsuite/ChangeLog:
* gdb.ada/info_types.exp: Adjust expected output to the line
numbers now printed by "info var/func/type".
* gdb.base/completion.exp: Likewise.
* gdb.base/included.exp: Likewise.
* gdb.cp/cp-relocate.exp: Likewise.
* gdb.cp/cplusfuncs.exp: Likewise.
* gdb.cp/namespace.exp: Likewise.
* gdb.dwarf2/dw2-case-insensitive.exp: Likewise.
commit 4a4495d62d185bdae17ed6aae6ea8249ad07c799
Author: Markus Metzger <markus.t.metzger@intel.com>
Date: Fri Feb 2 12:29:48 2018 +0100
btrace: set/show record btrace cpu
Add new set/show commands to set the processor that is used for enabling
errata workarounds when decoding branch trace.
The general format is "<vendor>:<identifier>" but we also allow two
special values "auto" and "none".
The default is "auto", which is the current behaviour of having GDB
determine the processor on which the trace was recorded.
If that cpu is not known to the trace decoder, e.g. when using an old
decoder on a new system, decode may fail with "unknown cpu". In most
cases it should suffice to 'downgrade' decode to assume an older cpu.
Unfortunately, we can't do this automatically.
The other special value, "none", disables errata workarounds.
gdb/
* NEWS (New options): announce set/show record btrace cpu.
* btrace.c: Include record-btrace.h.
(btrace_compute_ftrace_pt): Skip enabling errata workarounds if
the vendor is unknown.
(btrace_compute_ftrace_1): Add cpu parameter. Update callers.
Maybe overwrite the btrace configuration's cpu.
(btrace_compute_ftrace): Add cpu parameter. Update callers.
(btrace_fetch): Add cpu parameter. Update callers.
(btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
Maybe overwrite the btrace configuration's cpu. Skip enabling
errata workarounds if the vendor is unknown.
* python/py-record-btrace.c: Include record-btrace.h.
(recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
(recpy_bt_function_call_history): Call record_btrace_get_cpu.
* record-btrace.c (record_btrace_cpu_state_kind): New.
(record_btrace_cpu): New.
(set_record_btrace_cpu_cmdlist): New.
(record_btrace_get_cpu): New.
(require_btrace_thread, record_btrace_info)
(record_btrace_resume_thread): Call record_btrace_get_cpu.
(cmd_set_record_btrace_cpu_none): New.
(cmd_set_record_btrace_cpu_auto): New.
(cmd_set_record_btrace_cpu): New.
(cmd_show_record_btrace_cpu): New.
(_initialize_record_btrace): Initialize set/show record btrace cpu
commands.
* record-btrace.h (record_btrace_get_cpu): New.
testsuite/
* gdb.btrace/cpu.exp: New.
doc/
* gdb.texinfo: Document set/show record btrace cpu.
commit 69f90c75b369cd2d66988a67bbc2a000dd6b9816
Author: Markus Metzger <markus.t.metzger@intel.com>
Date: Mon Mar 5 17:44:57 2018 +0100
record: fix typo in "set record" output
Alan Hayward pointed out a typo in the output of "set record btrace" that
I took from "set record". Fix the original.
gdb/
* record.c (set_record_command): Fix typo in message.
commit b85310e1ec0419c4e1ca091cdd48f7597ebbefd3
Author: Markus Metzger <markus.t.metzger@intel.com>
Date: Thu Feb 1 14:31:18 2018 +0100
btrace: fix output of "set record btrace"
Instead of giving a message that "set record btrace" needs a sub-command,
GDB crashed. Fix it. A regression test comes with the next patch.
gdb/
* record-btrace.c (cmd_set_record_btrace): Print sub-commands.
commit 1d509aa625f891e20b37b8cee4659771e87b1ba4
Author: Markus Metzger <markus.t.metzger@intel.com>
Date: Wed Feb 14 14:30:57 2018 +0100
infrun: step through indirect branch thunks
With version 7.3 GCC supports new options
-mindirect-branch=<choice>
-mfunction-return=<choice>
The choices are:
keep behaves as before
thunk jumps through a thunk
thunk-external jumps through an external thunk
thunk-inline jumps through an inlined thunk
For thunk and thunk-external, GDB would, on a call to the thunk, step into
the thunk and then resume to its caller assuming that this is an
undebuggable function. On a return thunk, GDB would stop inside the
thunk.
Make GDB step through such thunks instead.
Before:
Temporary breakpoint 1, main ()
at gdb.base/step-indirect-call-thunk.c:37
37 x = apply (inc, 41);
(gdb) s
apply (op=0x80483e6 <inc>, x=41)
at gdb.base/step-indirect-call-thunk.c:29
29 return op (x);
(gdb)
30 }
After:
Temporary breakpoint 1, main ()
at gdb.base/step-indirect-call-thunk.c:37
37 x = apply (inc, 41);
(gdb) s
apply (op=0x80483e6 <inc>, x=41)
at gdb.base/step-indirect-call-thunk.c:29
29 return op (x);
(gdb)
inc (x=41) at gdb.base/step-indirect-call-thunk.c:23
23 return x + 1;
This is independent of the step-mode. In order to step into the thunk,
you would need to use stepi.
When stepping over an indirect call thunk, GDB would first step through
the thunk, then recognize that it stepped into a sub-routine and resume to
the caller (of the thunk). Not sure whether this is worth optimizing.
Thunk detection is implemented via gdbarch. I implemented the methods for
IA. Other architectures may run into unexpected fails.
The tests assume a fixed number of instruction steps to reach a thunk.
This depends on the compiler as well as the architecture. They may need
adjustments when we add support for more architectures. Or we can simply
drop those tests that cover being able to step into thunks using
instruction stepping.
When using an older GCC, the tests will fail to build and will be reported
as untested:
Running .../gdb.base/step-indirect-call-thunk.exp ...
gdb compile failed, \
gcc: error: unrecognized command line option '-mindirect-branch=thunk'
gcc: error: unrecognized command line option '-mfunction-return=thunk'
=== gdb Summary ===
# of untested testcases 1
gdb/
* infrun.c (process_event_stop_test): Call
gdbarch_in_indirect_branch_thunk.
* gdbarch.sh (in_indirect_branch_thunk): New.
* gdbarch.c: Regenerated.
* gdbarch.h: Regenerated.
* x86-tdep.h: New.
* x86-tdep.c: New.
* Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
(HFILES_NO_SRCDIR): Add x86-tdep.h.
(ALLDEPFILES): Add x86-tdep.c.
* arch-utils.h (default_in_indirect_branch_thunk): New.
* arch-utils.c (default_in_indirect_branch_thunk): New.
* i386-tdep: Include x86-tdep.h.
(i386_in_indirect_branch_thunk): New.
(i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
function.
* amd64-tdep: Include x86-tdep.h.
(amd64_in_indirect_branch_thunk): New.
(amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
testsuite/
* gdb.base/step-indirect-call-thunk.exp: New.
* gdb.base/step-indirect-call-thunk.c: New.
* gdb.reverse/step-indirect-call-thunk.exp: New.
* gdb.reverse/step-indirect-call-thunk.c: New.
commit 7a2711e437c50041c0a83761a90ea5e6c9ad8b98
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Apr 13 00:00:33 2018 +0000
Automatic date update in version.in
commit b4be9bfdabb57f40656e72a50a8466af4f7bd37d
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Thu Apr 12 22:31:39 2018 +0200
Fix -D_GLIBCXX_DEBUG gdb-add-index regression
Fedora Rawhide started to use -D_GLIBCXX_DEBUG which made gdb-add-index
failing:
gdb: Out-of-bounds vector access while running gdb-add-index
https://bugzilla.redhat.com/show_bug.cgi?id=1540559
/usr/include/c++/7/debug/safe_iterator.h:270:
Error: attempt to dereference a past-the-end iterator.
Objects involved in the operation:
iterator "this" @ 0x0x7fffffffcb90 {
type = __gnu_debug::_Safe_iterator<__gnu_cxx::__normal_iterator<unsigned char*, std::__cxx1998::vector<unsigned char, gdb::default_init_allocator<unsigned char, std::allocator<unsigned char> > > >, std::__debug::vector<unsigned char, gdb::default_init_allocator<unsigned char, std::allocator<unsigned char> > > > (mutable iterator);
state = past-the-end;
references sequence with type 'std::__debug::vector<unsigned char, gdb::default_init_allocator<unsigned char, std::allocator<unsigned char> > >' @ 0x0x7fffffffcc50
}
/usr/include/c++/7/debug/vector:417:
Error: attempt to subscript container with out-of-bounds index 556, but
container only holds 556 elements.
Objects involved in the operation:
sequence "this" @ 0x0x2e87af8 {
type = std::__debug::vector<partial_symbol*, std::allocator<partial_symbol*> >;
}
The two -D_GLIBCXX_DEBUG regressions were made by:
commit bc8f2430e08cc2a520db49a42686e0529be4a3bc
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Mon Jun 12 16:29:53 2017 +0100
Code cleanup: C++ify .gdb_index producer
commit af5bf4ada48ff65b6658be1fab8f9c8f8ab5f319
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Sat Oct 14 08:06:29 2017 -0400
Replace psymbol_allocation_list with std::vector
gdb/ChangeLog
2018-04-12 Jan Kratochvil <jan.kratochvil@redhat.com>
PR gdb/23053
* dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
(recursively_write_psymbols) (debug_names::recursively_write_psymbols)
(debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
regression.
commit 53d7df28bcbaecaf2dca7f8a4bf829e3dd786693
Author: Tom Tromey <tom@tromey.com>
Date: Thu Mar 29 12:08:32 2018 -0600
Remove old univariant code from rust-lang.c
Since moving Rust enum handling into dwarf2read.c, some old code for
handling univariant enums in rust-lang.c has been obsolete. This
patch removes this code.
Tested on x86-64 Fedora 26, using rustc 1.23 (1.24 emits incorrect
DWARF for enums and so can't be used for this test).
2018-04-12 Tom Tromey <tom@tromey.com>
* rust-lang.c (rust_print_struct_def): Remove univariant code.
(rust_evaluate_subexp): Likewise.
commit 70b33f195b0d76e140921db40c0bea5a7c9abc42
Author: Pedro Alves <palves@redhat.com>
Date: Thu Apr 12 17:47:59 2018 +0100
Fix Solaris build
This commit fixes a bit of rot in procfs.c caused by recent changes.
Specifically, the target_ops::to_detach change to pass down 'inferior
*' missed updating a forward declation, and the change to use
scoped_fd in more places missed removing one do_cleanups call.
src/gdb/procfs.c: In function âtarget_ops* procfs_target()â:
src/gdb/procfs.c:167:16: error: invalid conversion from âvoid (*)(target_ops*, const char*, int)â to âvoid (*)(target_ops*, inferior*, int)â [-fpermissive]
t->to_detach = procfs_detach;
^
src/gdb/procfs.c: In function âssd* proc_get_LDT_entry(procinfo*, int)â:
src/gdb/procfs.c:1624:17: error: âold_chainâ was not declared in this scope
do_cleanups (old_chain);
^
src/gdb/procfs.c: At global scope:
src/gdb/procfs.c:90:13: error: âvoid procfs_detach(target_ops*, const char*, int)â declared âstaticâ but never defined [-Werror=unused-function]
static void procfs_detach (struct target_ops *, const char *, int);
^
src/gdb/procfs.c:1923:1: error: âvoid procfs_detach(target_ops*, inferior*, int)â defined but not used [-Werror=unused-function]
procfs_detach (struct target_ops *ops, inferior *inf, int from_tty)
^
gdb/ChangeLog:
2018-04-12 Pedro Alves <palves@redhat.com>
* procfs.c (procfs_detach): Make forward declaration's prototype
match definition's protototype.
(proc_get_LDT_entry): Remove stale do_cleanups call.
commit 436411b1c6cb93541fd502321cf5470fe0392b91
Author: Pedro Alves <palves@redhat.com>
Date: Thu Apr 12 17:36:01 2018 +0100
Eliminate target_has_exited
Nothing uses this.
gdb/ChangeLog:
2018-04-12 Pedro Alves <palves@redhat.com>
* target.h (target_ops::to_has_exited): Delete.
(target_has_exited): Delete.
* target-delegates.c: Regenerate.
commit 86c6c6df007cee29f4a723df1a6af1889183fb2e
Author: Nick Clifton <nickc@redhat.com>
Date: Thu Apr 12 15:41:07 2018 +0100
Fix the loading of the dynamic string table in a file without sections.
PR 23050
* readelf.c (process_dynamic_section): Correct dynamic string
table size calculation.
commit 67f846b59b32f3d704c601669409c2584383fea9
Author: John Darrington <john@darrington.wattle.id.au>
Date: Thu Apr 12 15:07:02 2018 +0100
Stop the assembler from overwriting its output file.
* as.c (main): Fail if the output is the same as one of the input
files.
* testsuite/gas/all/gas.exp: Test the new feature.
commit 73a05be215ce8ccd7a6623f9a24d86223dd7d2f3
Author: Nick Clifton <nickc@redhat.com>
Date: Thu Apr 12 12:01:50 2018 +0100
Updated Spanish and Russian translations for the gas sub-directory
commit f7ebc2b18a48f1757b20de5408221df18b3f2262
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Apr 12 00:00:29 2018 +0000
Automatic date update in version.in
commit de89d0a34d52a2d2d28a4ce569e926dd9c7a7d13
Author: Igor Tsimbalist <igor.v.tsimbalist@intel.com>
Date: Mon Apr 9 12:58:50 2018 +0200
Enable Intel WAITPKG instructions.
Intel has disclosed a set of new instructions for Tremont processor.
The spec is
https://software.intel.com/en-us/intel-architecture-instruction-set-extensions-programming-reference
This patch enables Intel WAITPKG instructions.
gas/
* config/tc-i386.c (cpu_arch): Add WAITPKG.
(cpu_noarch): Likewise.
* doc/c-i386.texi: Document WAITPKG.
* i386/i386.exp: Run WAITPKG tests.
* testsuite/gas/i386/waitpkg-intel.d: New test.
* testsuite/gas/i386/waitpkg.d: Likewise.
* testsuite/gas/i386/waitpkg.s: Likewise.
* testsuite/gas/i386/x86-64-waitpkg-intel.d: Likewise.
* testsuite/gas/i386/x86-64-waitpkg.d: Likewise.
* testsuite/gas/i386/x86-64-waitpkg.s: Likewise.
opcodes/
* i386-dis.c (enum): Add PREFIX_MOD_0_0FAE_REG_6,
PREFIX_MOD_1_0FAE_REG_6.
(va_mode): New.
(OP_E_register): Use va_mode.
* i386-dis-evex.h (prefix_table):
New instructions (see prefixes above).
* i386-gen.c (cpu_flag_init): Add WAITPKG.
(cpu_flags): Likewise.
* i386-opc.h (enum): Likewise.
(i386_cpu_flags): Likewise.
* i386-opc.tbl: Add umonitor, umwait, tpause.
* i386-init.h: Regenerate.
* i386-tbl.h: Likewise.
commit 6295b6da16f73d5113d24424d1897edbce42bc6a
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed Apr 11 14:55:39 2018 -0400
Add test for following fork on position-independent executables
Commit
b2e586e ("Defer breakpoint reset when cloning progspace for fork
child")
fixed following fork childs when the executable is position-independent.
This patch adds a little test for it.
gdb/testsuite/ChangeLog:
* gdb.base/pie-fork.c: New file.
* gdb.base/pie-fork.exp: New file.
commit 50146e7022cedafe615bfc9884358d291a00689f
Author: Tom Tromey <tom@tromey.com>
Date: Thu Mar 29 12:08:32 2018 -0600
Add Rust test case for ".." struct initializer
Building with --coverage pointed out that there was no Rust test for
initializing a structure using the ".." initializer. This patch adds
such a test.
Regression tested on x86-64 Fedora 26.
2018-04-11 Tom Tromey <tom@tromey.com>
* gdb.rust/simple.exp: Add test for ".." struct initializer.
commit a8eb42a8b7d48ff6bd12ac83b0e31967b4f5abf1
Author: Alan Modra <amodra@gmail.com>
Date: Wed Apr 11 18:46:05 2018 +0930
Remove i860, i960, bout and aout-adobe targets
Plus remove a few leftovers from the 29k support.
include/
* aout/adobe.h: Delete.
* aout/reloc.h: Delete.
* coff/i860.h: Delete.
* coff/i960.h: Delete.
* elf/i860.h: Delete.
* elf/i960.h: Delete.
* opcode/i860.h: Delete.
* opcode/i960.h: Delete.
* aout/aout64.h (enum reloc_type): Trim off 29k and other unused values.
* aout/ar.h (ARMAGB): Remove.
* coff/internal.h (struct internal_aouthdr, struct internal_scnhdr,
union internal_auxent): Remove i960 support.
bfd/
* aout-adobe.c: Delete.
* bout.c: Delete.
* coff-i860.c: Delete.
* coff-i960.c: Delete.
* cpu-i860.c: Delete.
* cpu-i960.c: Delete.
* elf32-i860.c: Delete.
* elf32-i960.c: Delete.
* hosts/i860mach3.h: Delete.
* Makefile.am: Remove i860, i960, bout, and adobe support.
* archures.c: Remove i860 and i960 support.
* coffcode.h: Likewise.
* reloc.c: Likewise.
* aoutx.h: Comment updates.
* archive.c: Remove BOUT and i960 support.
* bfd.c: Remove BOUT support.
* coffswap.h: Remove i960 support.
* config.bfd: Remove i860, i960 and adobe targets.
* configure.ac: Remove adode, bout, i860, i960, icoff targets.
* targets.c: Likewise.
* ieee.c: Remove i960 support.
* mach-o.c: Remove i860 support.
* Makefile.in: Regenerate.
* bfd-in2.h: Regenerate.
* configure: Regenerate.
* libbfd.h: Regenerate.
* po/SRC-POTFILES.in: Regenerate.
opcodes/
* opcodes/i860-dis.c: Delete.
* opcodes/i960-dis.c: Delete.
* Makefile.am: Remove i860 and i960 support.
* configure.ac: Likewise.
* disassemble.c: Likewise.
* disassemble.h: Likewise.
* Makefile.in: Regenerate.
* configure: Regenerate.
* po/POTFILES.in: Regenerate.
binutils/
* ieee.c: Remove i960 support.
* od-macho.c: Remove i860 support.
* readelf.c: Remove i860 and i960 support.
* testsuite/binutils-all/objcopy.exp: Likewise.
* testsuite/binutils-all/objdump.exp: Likewise.
* testsuite/lib/binutils-common.exp: Likewise.
gas/
* config/aout_gnu.h: Delete.
* config/tc-i860.c: Delete.
* config/tc-i860.h: Delete.
* config/tc-i960.c: Delete.
* config/tc-i960.h: Delete.
* doc/c-i860.texi: Delete.
* doc/c-i960.texi: Delete.
* testsuite/gas/i860/README.i860: Delete.
* testsuite/gas/i860/bitwise.d: Delete.
* testsuite/gas/i860/bitwise.s: Delete.
* testsuite/gas/i860/branch.d: Delete.
* testsuite/gas/i860/branch.s: Delete.
* testsuite/gas/i860/bte.d: Delete.
* testsuite/gas/i860/bte.s: Delete.
* testsuite/gas/i860/dir-align01.d: Delete.
* testsuite/gas/i860/dir-align01.s: Delete.
* testsuite/gas/i860/dir-intel01.d: Delete.
* testsuite/gas/i860/dir-intel01.s: Delete.
* testsuite/gas/i860/dir-intel02.d: Delete.
* testsuite/gas/i860/dir-intel02.s: Delete.
* testsuite/gas/i860/dir-intel03-err.l: Delete.
* testsuite/gas/i860/dir-intel03-err.s: Delete.
* testsuite/gas/i860/dual01.d: Delete.
* testsuite/gas/i860/dual01.s: Delete.
* testsuite/gas/i860/dual02-err.l: Delete.
* testsuite/gas/i860/dual02-err.s: Delete.
* testsuite/gas/i860/dual03.d: Delete.
* testsuite/gas/i860/dual03.s: Delete.
* testsuite/gas/i860/fldst01.d: Delete.
* testsuite/gas/i860/fldst01.s: Delete.
* testsuite/gas/i860/fldst02.d: Delete.
* testsuite/gas/i860/fldst02.s: Delete.
* testsuite/gas/i860/fldst03.d: Delete.
* testsuite/gas/i860/fldst03.s: Delete.
* testsuite/gas/i860/fldst04.d: Delete.
* testsuite/gas/i860/fldst04.s: Delete.
* testsuite/gas/i860/fldst05.d: Delete.
* testsuite/gas/i860/fldst05.s: Delete.
* testsuite/gas/i860/fldst06.d: Delete.
* testsuite/gas/i860/fldst06.s: Delete.
* testsuite/gas/i860/fldst07.d: Delete.
* testsuite/gas/i860/fldst07.s: Delete.
* testsuite/gas/i860/fldst08.d: Delete.
* testsuite/gas/i860/fldst08.s: Delete.
* testsuite/gas/i860/float01.d: Delete.
* testsuite/gas/i860/float01.s: Delete.
* testsuite/gas/i860/float02.d: Delete.
* testsuite/gas/i860/float02.s: Delete.
* testsuite/gas/i860/float03.d: Delete.
* testsuite/gas/i860/float03.s: Delete.
* testsuite/gas/i860/float04.d: Delete.
* testsuite/gas/i860/float04.s: Delete.
* testsuite/gas/i860/form.d: Delete.
* testsuite/gas/i860/form.s: Delete.
* testsuite/gas/i860/i860.exp: Delete.
* testsuite/gas/i860/iarith.d: Delete.
* testsuite/gas/i860/iarith.s: Delete.
* testsuite/gas/i860/ldst01.d: Delete.
* testsuite/gas/i860/ldst01.s: Delete.
* testsuite/gas/i860/ldst02.d: Delete.
* testsuite/gas/i860/ldst02.s: Delete.
* testsuite/gas/i860/ldst03.d: Delete.
* testsuite/gas/i860/ldst03.s: Delete.
* testsuite/gas/i860/ldst04.d: Delete.
* testsuite/gas/i860/ldst04.s: Delete.
* testsuite/gas/i860/ldst05.d: Delete.
* testsuite/gas/i860/ldst05.s: Delete.
* testsuite/gas/i860/ldst06.d: Delete.
* testsuite/gas/i860/ldst06.s: Delete.
* testsuite/gas/i860/pfam.d: Delete.
* testsuite/gas/i860/pfam.s: Delete.
* testsuite/gas/i860/pfmam.d: Delete.
* testsuite/gas/i860/pfmam.s: Delete.
* testsuite/gas/i860/pfmsm.d: Delete.
* testsuite/gas/i860/pfmsm.s: Delete.
* testsuite/gas/i860/pfsm.d: Delete.
* testsuite/gas/i860/pfsm.s: Delete.
* testsuite/gas/i860/pseudo-ops01.d: Delete.
* testsuite/gas/i860/pseudo-ops01.s: Delete.
* testsuite/gas/i860/regress01.d: Delete.
* testsuite/gas/i860/regress01.s: Delete.
* testsuite/gas/i860/shift.d: Delete.
* testsuite/gas/i860/shift.s: Delete.
* testsuite/gas/i860/simd.d: Delete.
* testsuite/gas/i860/simd.s: Delete.
* testsuite/gas/i860/system.d: Delete.
* testsuite/gas/i860/system.s: Delete.
* testsuite/gas/i860/xp.d: Delete.
* testsuite/gas/i860/xp.s: Delete.
* Makefile.am: Remove i860 and i960 support.
* configure.tgt: Likewise.
* doc/Makefile.am: Likewise.
* doc/all.texi: Likewise.
* testsuite/gas/all/gas.exp
* config/obj-coff.h: Remove i960 support.
* doc/internals.texi: Likewise.
* expr.c: Likewise.
* read.c: Likewise.
* write.c: Likewise.
* write.h: Likewise.
* testsuite/gas/lns/lns.exp: Likewise.
* testsuite/gas/symver/symver.exp: Likewise.
* config/tc-m68k.c: Remove BOUT support.
* config/tc-score.c: Likewise.
* config/tc-score7.c: Likewise.
* config/tc-sparc.c: Likewise.
* symbols.c: Likewise.
* doc/h8.texi: Likewise.
* configure.ac: Remove BOUT and i860 support.
* doc/as.texinfo: Remove BOUT, i860 and i960 support
* Makefile.in: Regenerate.
* config.in: Regenerate.
* configure: Regenerate.
* doc/Makefile.in: Regenerate.
* po/POTFILES.in: Regenerate.
ld/
* emulparams/coff_i860.sh: Delete.
* emulparams/elf32_i860.sh: Delete.
* emulparams/elf32_i960.sh: Delete.
* emulparams/gld960.sh: Delete.
* emulparams/gld960coff.sh: Delete.
* emulparams/lnk960.sh: Delete.
* emultempl/gld960.em: Delete.
* emultempl/gld960c.em: Delete.
* emultempl/lnk960.em: Delete.
* scripttempl/i860coff.sc: Delete.
* scripttempl/i960.sc: Delete.
* ld.texinfo: Remove i960 support.
* Makefile.am: Remove i860 and i960 support.
* configure.tgt: Likewise.
* testsuite/ld-discard/extern.d: Likewise.
* testsuite/ld-discard/start.d: Likewise.
* testsuite/ld-discard/static.d: Likewise.
* testsuite/ld-elf/compressed1d.d: Likewise.
* testsuite/ld-elf/group1.d: Likewise.
* testsuite/ld-elf/group3b.d: Likewise.
* testsuite/ld-elf/group8a.d: Likewise.
* testsuite/ld-elf/group8b.d: Likewise.
* testsuite/ld-elf/group9a.d: Likewise.
* testsuite/ld-elf/group9b.d: Likewise.
* testsuite/ld-elf/linkonce2.d: Likewise.
* testsuite/ld-elf/merge.d: Likewise.
* testsuite/ld-elf/merge2.d: Likewise.
* testsuite/ld-elf/merge3.d: Likewise.
* testsuite/ld-elf/orphan-10.d: Likewise.
* testsuite/ld-elf/orphan-11.d: Likewise.
* testsuite/ld-elf/orphan-12.d: Likewise.
* testsuite/ld-elf/orphan-9.d: Likewise.
* testsuite/ld-elf/orphan-region.d: Likewise.
* testsuite/ld-elf/orphan.d: Likewise.
* testsuite/ld-elf/orphan3.d: Likewise.
* testsuite/ld-elf/pr12851.d: Likewise.
* testsuite/ld-elf/pr12975.d: Likewise.
* testsuite/ld-elf/pr13177.d: Likewise.
* testsuite/ld-elf/pr13195.d: Likewise.
* testsuite/ld-elf/pr17550a.d: Likewise.
* testsuite/ld-elf/pr17550b.d: Likewise.
* testsuite/ld-elf/pr17550c.d: Likewise.
* testsuite/ld-elf/pr17550d.d: Likewise.
* testsuite/ld-elf/pr17615.d: Likewise.
* testsuite/ld-elf/pr20528a.d: Likewise.
* testsuite/ld-elf/pr20528b.d: Likewise.
* testsuite/ld-elf/pr21562a.d: Likewise.
* testsuite/ld-elf/pr21562b.d: Likewise.
* testsuite/ld-elf/pr21562c.d: Likewise.
* testsuite/ld-elf/pr21562d.d: Likewise.
* testsuite/ld-elf/pr21562i.d: Likewise.
* testsuite/ld-elf/pr21562j.d: Likewise.
* testsuite/ld-elf/pr21562k.d: Likewise.
* testsuite/ld-elf/pr21562l.d: Likewise.
* testsuite/ld-elf/pr21562m.d: Likewise.
* testsuite/ld-elf/pr21562n.d: Likewise.
* testsuite/ld-elf/pr22677.d: Likewise.
* testsuite/ld-elf/pr22836-1a.d: Likewise.
* testsuite/ld-elf/pr22836-1b.d: Likewise.
* testsuite/ld-elf/pr349.d: Likewise.
* testsuite/ld-elf/sec-to-seg.exp: Likewise.
* testsuite/ld-elf/sec64k.exp: Likewise.
* testsuite/ld-elf/warn1.d: Likewise.
* testsuite/ld-elf/warn2.d: Likewise.
* testsuite/ld-elf/warn3.d: Likewise.
* testsuite/lib/ld-lib.exp: Likewise.
* Makefile.in: Regenerate.
* po/BLD-POTFILES.in: Regenerate.
commit c43b2c546be1fead208b816b59c8bdcdf9562571
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed Mar 28 13:59:01 2018 -0700
binutils/testsuite: Also consider `*-*-lynxos*' and `*-*-symbianelf*' ELF
These targets use the ELF format according to `bfd/config.bfd'.
binutils/
* testsuite/lib/binutils-common.exp (is_elf_format): Also return
1 for `*-*-lynxos*' and `*-*-symbianelf*' targets.
commit 20db9c52a2073246a5c46a0274569e10b317866f
Author: Pedro Alves <palves@redhat.com>
Date: Wed Apr 11 11:35:58 2018 +0100
File I/O file handles after target closes
A future patch will propose making the remote target's target_ops be
heap-allocated (to make it possible to have multiple instances of
remote targets, for multiple simultaneous connections), and will
delete/destroy the remote target at target_close time.
That change trips on a latent problem, though. File I/O handles
remain open even after the target is gone, with a dangling pointer to
a target that no longer exists. This results in GDB crashing when it
calls the target_ops backend associated with the file handle:
(gdb) Disconnect
Ending remote debugging.
* GDB crashes deferencing a dangling pointer
Backtrace:
#0 0x00007f79338570a0 in main_arena () at /lib64/libc.so.6
#1 0x0000000000858bfe in target_fileio_close(int, int*) (fd=1, target_errno=0x7ffe0499a4c8)
at src/gdb/target.c:2980
#2 0x00000000007088bd in gdb_bfd_iovec_fileio_close(bfd*, void*) (abfd=0x1a631b0, stream=0x223c9d0)
at src/gdb/gdb_bfd.c:353
#3 0x0000000000930906 in opncls_bclose (abfd=0x1a631b0) at src/bfd/opncls.c:528
#4 0x0000000000930cf9 in bfd_close_all_done (abfd=0x1a631b0) at src/bfd/opncls.c:768
#5 0x0000000000930cb3 in bfd_close (abfd=0x1a631b0) at src/bfd/opncls.c:735
#6 0x0000000000708dc5 in gdb_bfd_close_or_warn(bfd*) (abfd=0x1a631b0) at src/gdb/gdb_bfd.c:511
#7 0x00000000007091a2 in gdb_bfd_unref(bfd*) (abfd=0x1a631b0) at src/gdb/gdb_bfd.c:615
#8 0x000000000079ed8e in objfile::~objfile() (this=0x2154730, __in_chrg=<optimized out>)
at src/gdb/objfiles.c:682
#9 0x000000000079fd1a in objfile_purge_solibs() () at src/gdb/objfiles.c:1065
#10 0x00000000008162ca in no_shared_libraries(char const*, int) (ignored=0x0, from_tty=1)
at src/gdb/solib.c:1251
#11 0x000000000073b89b in disconnect_command(char const*, int) (args=0x0, from_tty=1)
at src/gdb/infcmd.c:3035
This goes unnoticed in current master, because the current remote
target's target_ops is never destroyed nowadays, so we end up calling:
remote_hostio_close -> remote_hostio_send_command
which gracefully fails with FILEIO_ENOSYS if remote_desc is NULL
(because the target is closed).
Fix this by invalidating a target's file I/O handles when the target
is closed.
With this change, remote_hostio_send_command no longer needs to handle the
case of being called with a closed remote target, originally added here:
<https://sourceware.org/ml/gdb-patches/2008-08/msg00359.html>.
gdb/ChangeLog:
2018-04-11 Pedro Alves <palves@redhat.com>
* target.c (fileio_fh_t::t): Add comment.
(target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
(target_fileio_close): Handle a NULL target.
(invalidate_fileio_fh): New.
(target_close): Call it.
* remote.c (remote_hostio_send_command): No longer check whether
remote_desc is open.
commit 5ff79300aef4f4c991194541ec3ad9a2618ff24c
Author: Pedro Alves <palves@redhat.com>
Date: Wed Apr 11 11:29:39 2018 +0100
C++ify fileio_fh_t, replace VEC with std::vector
Preparation for the next patch.
- Replace VEC with std::vector.
- Rewrite a couple macros as methods/functions.
- While at it, rename fileio_fh_t::fd as fileio_fh_t::target_fd to
avoid confusion between target and host file descriptors.
gdb/ChangeLog:
2018-04-11 Pedro Alves <palves@redhat.com>
* target.c (fileio_fh_t): Make it a named struct instead of a
typedef.
(fileio_fh_t::is_closed): New method.
(DEF_VEC_O (fileio_fh_t)): Remove.
(fileio_fhandles): Now a std::vector.
(is_closed_fileio_fh): Delete.
(acquire_fileio_fd): Adjust. Rename parameters.
(release_fileio_fd): Adjust.
(fileio_fd_to_fh): Reimplement as a function instead of a macro.
(target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
(target_fileio_close): Adjust.
commit 18e404c4e2eb15443cc6dda93cbd38bdfeb17667
Author: Alan Modra <amodra@gmail.com>
Date: Wed Apr 11 11:10:18 2018 +0930
Silence nds32 pic warnings
Fixes:
FAIL: Build pr22471a.so
FAIL: Build pr22471b.so
FAIL: Build pr22649-1.so
FAIL: Build pr22649-2c.so
FAIL: Build pr22649-2d.so
FAIL: PR ld/20828 dynamic symbols with section GC (auxiliary shared library)
FAIL: PR ld/20828 dynamic symbols with section GC (plain)
FAIL: PR ld/20828 dynamic symbols with section GC (version script)
FAIL: PR ld/20828 dynamic symbols with section GC (versioned shared library)
FAIL: PR ld/20828 dynamic symbols with section GC (versioned)
FAIL: PR ld/21233 dynamic symbols with section GC (auxiliary shared library)
FAIL: Build pr22150.so
FAIL: Build shared library for pr14170
FAIL: PR ld/21703 shared
FAIL: Build shared library for broken linker script test
FAIL: Build pr17068.so
FAIL: -Bsymbolic-functions
FAIL: Build pr20995.so
FAIL: Build pr20995-2.so
FAIL: Build pr22374 shared library
* testsuite/ld-elf/shared.exp (AFLAGS_PIC): Add -mpic for nds32.
commit b6572eb07009b41f192b494e761f43dfa7a9e324
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Apr 11 00:00:15 2018 +0000
Automatic date update in version.in
commit 6e22e10d63addd60f39114cef81ade290b15b2c8
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Tue Apr 10 16:50:59 2018 -0400
Iterate by index in auto_load_safe_path_vec_update
As reported by Jan, we get this error when building with -D_GLIBCXX_DEBUG:
/usr/include/c++/7/debug/safe_iterator.h:297:
Error: attempt to increment a singular iterator.
Objects involved in the operation:
iterator "this" @ 0x0x7fffffffd140 {
type = __gnu_debug::_Safe_iterator<__gnu_cxx::__normal_iterator<std::unique_ptr<char, gdb::xfree_deleter<char> >*, std::__cxx1998::vector<std::unique_ptr<char, gdb::xfree_deleter<char> >, std::allocator<std::unique_ptr<char, gdb::xfree_deleter<char> > > > >, std::__debug::vector<std::unique_ptr<char, gdb::xfree_deleter<char> >, std::allocator<std::unique_ptr<char, gdb::xfree_deleter<char> > > > > (mutable iterator);
state = singular;
references sequence with type 'std::__debug::vector<std::unique_ptr<char, gdb::xfree_deleter<char> >, std::allocator<std::unique_ptr<char, gdb::xfree_deleter<char> > > >' @ 0x0x265db40
}
The bug was introduced by commit
commit e80aaf6183c6692ecc167bf26cbdc53f8f1a55f0
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Fri Mar 2 23:22:06 2018 -0500
Make delim_string_to_char_ptr_vec return an std::vector
The problem is that we iterate using a range-based for on a vector to
which we push in the loop. Pushing to the vector invalidates the
iterator used in the loop. Instead, change the code to iterate by index
as was done in the previous code.
gdb/ChangeLog:
* auto-load.c (auto_load_safe_path_vec_update): Iterate by
index.
commit f50d8a2eaea045cd6e9b8d6d5cf8da55e2047ffb
Author: Pedro Alves <palves@redhat.com>
Date: Tue Apr 10 15:00:39 2018 +0100
Fix gdb.base/fork-running-state.exp race
On my multi-target branch I was occasionaly seeing a FAIL like this:
(gdb) PASS: gdb.base/fork-running-state.exp: detach-on-fork=off: follow-fork=parent: non-stop: kill parent
[Inferior 2 (process 32672) exited normally]
kill inferior 2
warning: Inferior ID 2 is not running.
(gdb) FAIL: gdb.base/fork-running-state.exp: detach-on-fork=off: follow-fork=parent: non-stop: kill child (the program exited)
... other similar fails ...
Turns out to be a testcase bug/race. A tweak like this increases the
changes of hitting the race substancially:
--- a/gdb/testsuite/gdb.base/fork-running-state.c
+++ b/gdb/testsuite/gdb.base/fork-running-state.c
@@ -29,7 +29,7 @@ fork_child (void)
{
while (1)
{
- sleep (1);
+ usleep (100);
The testcase has two processes, parent and child fork. The problem is
that the child exits itself if it notices the parent is gone, but the
testcase .exp does not expect that.
I first wrote a patch that handled the different combinations of
non-stop/detach-on-fork/follow-fork/schedule-multiple, making the .exp
file know when to expect the child to exit itself vs when to kill it
explicitly, but the result was that the code to kill the parent and
child was getting about as large as the test code that is the actual
point of the testcase, above the kills.
So I scratched that approach and came up with a simpler patch --
simply make the child not exit itself when the parent exits.
The .exp file is going to kill both parent and child explicitly, and,
main() already calls alarm() as a safeguard. I don't think we lose
anything.
gdb/testsuite/ChangeLog:
2018-04-10 Pedro Alves <palves@redhat.com>
* gdb.base/fork-running-state.c (fork_child): Don't exit if parent
exits. Instead loop running forever.
(fork_parent): Run forever too.
commit 731f534f918cfaa35c20b5eb6220a8eba4819f04
Author: Pedro Alves <palves@redhat.com>
Date: Tue Apr 10 14:49:30 2018 +0100
Replace finish_thread_state_cleanup with a RAII class
gdb/ChangeLog:
2018-04-10 Pedro Alves <palves@redhat.com>
* gdbthread.h (finish_thread_state_cleanup): Delete declaration.
(scoped_finish_thread_state): New class.
* infcmd.c (run_command_1): Use it instead of finish_thread_state
cleanup.
* infrun.c (proceed, prepare_for_detach, wait_for_inferior)
(fetch_inferior_event, normal_stop): Likewise.
* thread.c (finish_thread_state_cleanup): Delete.
commit d4ae1932770d9ec76f3d0a429aab45f1cb15e964
Author: Alan Modra <amodra@gmail.com>
Date: Tue Apr 10 09:14:29 2018 +0930
Fix some strip test fails on nds32 and pru
Fixes these fails:
nds32le-linux +FAIL: binutils-all/strip-14
nds32le-linux +FAIL: binutils-all/strip-15
pru-elf +FAIL: binutils-all/strip-14
pru-elf +FAIL: binutils-all/strip-15
strip-13 fails on nds32 due to an assertion failure and out of bounds
access to nds32_elf_howto_table.
* testsuite/binutils-all/objcopy.exp (strip-14, strip-15): Choose
reloc=11 for pru and reloc=50 for nds32.
* testsuite/binutils-all/strip-15.d: Accept 0xb reloc number.
commit 6c7c5081f01c8fc04474ff858240f1c3cd900d6e
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Apr 10 00:00:28 2018 +0000
Automatic date update in version.in
commit d5f4488f09b811b0ca44e687da2acbc286d84d4a
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Mon Apr 9 15:45:39 2018 -0400
Add selftests for range_contains and insert_into_bit_range_vector
Add some selftests for these two functions. To to make it easier to
compare sequences of ranges, add operator== and operator!= to compare
two gdb::array_view, and add operator== in struct range.
gdb/ChangeLog:
* value.c: Include "selftest.h" and "common/array-view.h".
(struct range) <operator ==>: New.
(test_ranges_contain): New.
(check_ranges_vector): New.
(test_insert_into_bit_range_vector): New.
(_initialize_values): Register selftests.
* common/array-view.h (operator==, operator!=): New.
commit b24531ed171b5751a3a64c461728c9ad62092c8a
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Mon Apr 9 15:40:45 2018 -0400
Use an std::vector for inline_states
This patch replaces VEC(inline_state) with std::vector<inline_state> and
adjusts the code that uses it.
gdb/ChangeLog:
* common/gdb_vecs.h (unordered_remove): Add overload that takes
an iterator.
* inline-frame.c: Include <algorithm>.
(struct inline_state): Add constructor.
(inline_state_s): Remove.
(DEF_VEC_O(inline_state_s)): Remove.
(inline_states): Change type to std::vector.
(find_inline_frame_state): Adjust to std::vector.
(allocate_inline_frame_state): Remove.
(clear_inline_frame_state): Adjust to std::vector.
(skip_inline_frames): Adjust to std::vector.
commit c252925ccc8c3c2ce2a65d12a50acfee53914ce3
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Mon Apr 9 15:16:19 2018 -0400
Remove VEC(tsv_s), use std::vector instead
This patch removes VEC(tsv_s), using an std::vector instead. I C++ified
trace_state_variable a bit in the process, using std::string for the
name. I also thought it would be nicer to pass a const reference to
target_download_trace_state_variable, since we know it will never be
NULL. This highlighted that the make-target-delegates script didn't
handle references well, so I adjusted this as well. It will surely be
useful in the future.
gdb/ChangeLog:
* tracepoint.h (struct trace_state_variable): Add constructor.
<name>: Change type to std::string.
* tracepoint.c (tsv_s): Remove.
(DEF_VEC_O(tsv_s)): Remove.
(tvariables): Change to std::vector.
(create_trace_state_variable): Adjust to std::vector.
(find_trace_state_variable): Likewise.
(find_trace_state_variable_by_number): Likewise.
(delete_trace_state_variable): Likewise.
(trace_variable_command): Adjust to std::string.
(delete_trace_variable_command): Likewise.
(tvariables_info_1): Adjust to std::vector.
(save_trace_state_variables): Likewise.
(start_tracing): Likewise.
(merge_uploaded_trace_state_variables): Adjust to std::vector
and std::string.
* target.h (struct target_ops)
<to_download_trace_state_variable>: Pass reference to
trace_state_variable.
* target-debug.h (target_debug_print_const_trace_state_variable_r): New.
* target-delegates.c: Re-generate.
* mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
(mi_tsv_deleted): Likewise.
* mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
* remote.c (remote_download_trace_state_variable): Change
pointer to reference and adjust.
* make-target-delegates (parse_argtypes): Handle references.
(write_function_header): Likewise.
(munge_type): Likewise.
commit c9638d2669ced9348eac869dadc7be24df85a9a8
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Mon Apr 9 13:31:06 2018 -0400
Adapt and integrate string_view tests
The previous patch copied the string_view tests from libstdc++. This
patch adjusts them in a similar way that the libstdc++ optional tests
are integrated in our unit test suite.
Not all tests are used, some of them require language features not
present in c++11. For example, we can't use a string_view constructor
where the length is not explicit in a constexpr, because
std::char_traits::length is not a constexpr itself (it is in c++17
though). Nevertheless, a good number of tests are integrated, which
covers pretty well the string_view features.
gdb/ChangeLog:
* Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
string_view-selftests.c.
* unittests/basic_string_view/capacity/1.cc: Adapt to GDB
testsuite.
* unittests/basic_string_view/cons/char/1.cc: Likewise.
* unittests/basic_string_view/cons/char/2.cc: Likewise.
* unittests/basic_string_view/cons/char/3.cc: Likewise.
* unittests/basic_string_view/element_access/char/1.cc:
Likewise.
* unittests/basic_string_view/element_access/char/empty.cc:
Likewise.
* unittests/basic_string_view/element_access/char/front_back.cc:
Likewise.
* unittests/basic_string_view/inserters/char/2.cc: Likewise.
* unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
Likewise.
* unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
Likewise.
* unittests/basic_string_view/modifiers/swap/char/1.cc:
Likewise.
* unittests/basic_string_view/operations/compare/char/1.cc:
Likewise.
* unittests/basic_string_view/operations/compare/char/13650.cc:
Likewise.
* unittests/basic_string_view/operations/copy/char/1.cc:
Likewise.
* unittests/basic_string_view/operations/data/char/1.cc:
Likewise.
* unittests/basic_string_view/operations/find/char/1.cc:
Likewise.
* unittests/basic_string_view/operations/find/char/2.cc:
Likewise.
* unittests/basic_string_view/operations/find/char/3.cc:
Likewise.
* unittests/basic_string_view/operations/find/char/4.cc:
Likewise.
* unittests/basic_string_view/operations/rfind/char/1.cc:
Likewise.
* unittests/basic_string_view/operations/rfind/char/2.cc:
Likewise.
* unittests/basic_string_view/operations/rfind/char/3.cc:
Likewise.
* unittests/basic_string_view/operations/substr/char/1.cc:
Likewise.
* unittests/basic_string_view/operators/char/2.cc: Likewise.
* unittests/string_view-selftests.c: New file.
commit fdc116781b03f5d30e93f5013159f39c4c0f3471
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Mon Apr 9 13:31:05 2018 -0400
Copy string_view tests from libstdc++
This patch copies the string_view tests from the gcc repository (commit
02a4441f002c).
${gcc}/libstdc++-v3/testsuite/21_strings/basic_string_view ->
${binutils-gdb}/gdb/unittests/basic_string_view
The local modifications are done in the following patch, so that it's
easier to review them.
gdb/ChangeLog:
* unittests/basic_string_view/capacity/1.cc: New file.
* unittests/basic_string_view/capacity/empty_neg.cc: New file.
* unittests/basic_string_view/cons/char/1.cc: New file.
* unittests/basic_string_view/cons/char/2.cc: New file.
* unittests/basic_string_view/cons/char/3.cc: New file.
* unittests/basic_string_view/cons/wchar_t/1.cc: New file.
* unittests/basic_string_view/cons/wchar_t/2.cc: New file.
* unittests/basic_string_view/cons/wchar_t/3.cc: New file.
* unittests/basic_string_view/element_access/char/1.cc: New file.
* unittests/basic_string_view/element_access/char/2.cc: New file.
* unittests/basic_string_view/element_access/char/empty.cc: New file.
* unittests/basic_string_view/element_access/char/front_back.cc: New file.
* unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
* unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
* unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
* unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
* unittests/basic_string_view/include.cc: New file.
* unittests/basic_string_view/inserters/char/1.cc: New file.
* unittests/basic_string_view/inserters/char/2.cc: New file.
* unittests/basic_string_view/inserters/char/3.cc: New file.
* unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
* unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
* unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
* unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
* unittests/basic_string_view/literals/types.cc: New file.
* unittests/basic_string_view/literals/values.cc: New file.
* unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
* unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
* unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
* unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
* unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
* unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
* unittests/basic_string_view/operations/compare/char/1.cc: New file.
* unittests/basic_string_view/operations/compare/char/13650.cc: New file.
* unittests/basic_string_view/operations/compare/char/2.cc: New file.
* unittests/basic_string_view/operations/compare/char/70483.cc: New file.
* unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
* unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
* unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
* unittests/basic_string_view/operations/copy/char/1.cc: New file.
* unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
* unittests/basic_string_view/operations/data/char/1.cc: New file.
* unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
* unittests/basic_string_view/operations/find/char/1.cc: New file.
* unittests/basic_string_view/operations/find/char/2.cc: New file.
* unittests/basic_string_view/operations/find/char/3.cc: New file.
* unittests/basic_string_view/operations/find/char/4.cc: New file.
* unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
* unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
* unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
* unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
* unittests/basic_string_view/operations/rfind/char/1.cc: New file.
* unittests/basic_string_view/operations/rfind/char/2.cc: New file.
* unittests/basic_string_view/operations/rfind/char/3.cc: New file.
* unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
* unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
* unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
* unittests/basic_string_view/operations/string_conversion/1.cc: New file.
* unittests/basic_string_view/operations/substr/char/1.cc: New file.
* unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
* unittests/basic_string_view/operators/char/2.cc: New file.
* unittests/basic_string_view/operators/wchar_t/2.cc: New file.
* unittests/basic_string_view/range_access/char/1.cc: New file.
* unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
* unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
* unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
* unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
* unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
* unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
* unittests/basic_string_view/requirements/typedefs.cc: New file.
* unittests/basic_string_view/typedefs.cc: New file.
* unittests/basic_string_view/types/1.cc: New file.
commit 8345c4a2670711eafd41c8b6a8726cf8b0771d6e
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Mon Apr 9 13:31:04 2018 -0400
Add gdb::string_view
We had a few times the need for a data structure that does essentially
what C++17's std::string_view does, which is to give an std::string-like
interface (only the read-only operations) to an arbitrary character
buffer.
This patch adapts the files copied from libstdc++ by the previous patch
to integrate them with GDB. Here's a summary of the changes:
* Remove things related to wstring_view, u16string_view and
u32string_view (I don't think we need them, but we can always add them
later).
* Remove usages of _GLIBCXX_BEGIN_NAMESPACE_VERSION and
_GLIBCXX_END_NAMESPACE_VERSION.
* Put the code in the gdb namespace. I had to add a few "std::" in
front of std type usages.
* Change __throw_out_of_range_fmt() for error().
* Make gdb::string_view an alias of std::string_view when building
with >= c++17.
* Remove a bunch of constexpr, because they are not valid in c++11
(e.g. they are not a single return line).
* Use std::common_type<_Tp>::type instead of std::common_type_t<_Tp>,
because c++11 doesn't have the later.
* Remove the #pragma GCC system_header, since that silences some
warnings that we might want to have if we're doing something not
correctly.
* Remove operator ""sv. It would need a lot of work to make all
supported compilers happy, and we can easily live without it.
* Remove operator<<. It is implemented using __ostream_insert (a
libstdc++ internal). Bringing it in might be possible, but I don't
think that would be worth the effort, since we don't really use
streams at the moment.
* Replace internal libstdc++ asserts ( __glibcxx_assert and
__glibcxx_requires_string_len) with gdb_assert.
* Remove hash helpers, because they use libstdc++ internal functions.
If we need them we always import them later.
The string_view class in cli/cli-script.c is removed and its usage
replaced with the new gdb::string_view.
gdb/ChangeLog:
* common/gdb_string_view.h: Remove libstdc++ implementation
details, adjust to gdb reality.
* common/gdb_string_view.tcc: Likewise.
* cli/cli-script.c (struct string_view): Remove.
(user_args) <m_args>: Change element type to gdb::string_view.
(user_args::insert_args): Adjust.
commit 7adcdf08e792dc30e09af4eecbf1e479a2f56612
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Mon Apr 9 13:31:04 2018 -0400
Copy string_view files from libstdc++
This patch copies the following files from libstdc++ (commit
02a4441f002c):
${gcc}/libstdc++-v3/include/experimental/string_view
-> ${binutils-gdb}/gdb/common/gdb_string_view.h
${gcc}/libstdc++-v3/include/experimental/bits/string_view.tcc
-> ${binutils-gdb}/gdb/common/gdb_string_view.tcc
The local modifications are done in the following patch in order to make
it easier to review them.
gdb/ChangeLog:
* common/gdb_string_view.h: New file.
* common/gdb_string_view.tcc: New file.
commit 41260ac25d541d9bdd039a0ce82c9ad31fceed35
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Mon Apr 9 13:31:03 2018 -0400
Update ax_cv_cxx_compile_cxx.m4
This file provides the AX_CXX_COMPILE_STDCXX macro. In the context of
the following patch, I wanted to build and test GDB in c++17 mode. The
version of the macro we have in the repo does not support detecting
c++17 compilers, but the upstream version has been updated to do so.
Since we have local modifications to the file, I had to reconcile our
modifications and the updated upstream version (which was relatively
straightforward).
gdb/ChangeLog:
* ax_cxx_compile_stdcxx.m4: Sync with upstream.
* configure: Re-generate.
commit c4a614e2395a7673395208cfd55d590e3c6c114f
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 9 18:52:11 2018 +0930
Regenerate some files
The gold change is to pick up HJ's PR22318 AC_PLUGINS update. The
ld change is to correct a file I generated from a modified tree.
gold/
* configure: Regenerate.
ld/
* po/BLD-POTFILES.in: Regenerate.
commit 0bee6dd4aa42b928c2a7a496596490b694e5722b
Author: Pedro Alves <palves@redhat.com>
Date: Mon Apr 9 15:34:48 2018 +0100
Apply "Convert observers to C++" edit to gdbarch.sh
Regenerating gdbarch.c results in:
--- gdbarch.c 2018-03-26 23:18:52.905548891 +0100
+++ new-gdbarch.c 2018-04-09 15:32:30.006712207 +0100
@@ -44,7 +44,7 @@
#include "reggroups.h"
#include "osabi.h"
#include "gdb_obstack.h"
-#include "observable.h"
+#include "observer.h"
#include "regcache.h"
#include "objfiles.h"
#include "auxv.h"
@@ -5457,7 +5457,7 @@
gdb_assert (new_gdbarch != NULL);
gdb_assert (new_gdbarch->initialized_p);
current_inferior ()->gdbarch = new_gdbarch;
- gdb::observers::architecture_changed.notify (new_gdbarch);
+ observer_notify_architecture_changed (new_gdbarch);
registers_changed ();
}
Clearly commit 76727919ceb5 ("Convert observers to C++") edited
gdbarch.c directly instead of gdbarch.sh. This fixes it.
gdb/ChangeLog:
2018-04-09 Pedro Alves <palves@redhat.com>
* gdbarch.sh: Include "observable.h" instead of "observer.h".
(set_target_gdbarch): Call
gdb::observers::architecture_changed.notify instead of
observer_notify_architecture_changed.
commit d52e3d06e5db7041913278caace3389504c0478c
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Apr 9 13:42:01 2018 +0100
binutils/testsuite: Fix a crash with STN_UNDEF in relocation
Verify that `strip' completes successfully and a correct relocation
entry is copied for a relocation encountered with the STN_UNDEF symbol
index.
binutils/
* testsuite/binutils-all/strip-15.d: New test.
* testsuite/binutils-all/strip-15rel.s: New test source.
* testsuite/binutils-all/strip-15rela.s: New test source.
* testsuite/binutils-all/strip-15mips64.s: New test source.
* testsuite/binutils-all/objcopy.exp: Run the new test.
commit aec2e0d252342aa7575aff608e999a36f27a9147
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Apr 9 13:42:00 2018 +0100
MIPS64/BFD: Fix a crash with STN_UNDEF in relocation
Prevent a null BFD pointer dereference and a resulting segmentation
fault in `mips_elf64_write_rel' or `mips_elf64_write_rela':
Program received signal SIGSEGV, Segmentation fault.
0x0000000000437690 in mips_elf64_write_rela (abfd=0x71e130, sec=0x720700,
rela_hdr=0x721ff8, count=0x7fffffffb82c, data=0x7fffffffb88c)
at .../bfd/elf64-mips.c:4123
4123 if ((*ptr->sym_ptr_ptr)->the_bfd->xvec != abfd->xvec
4124 && ! _bfd_elf_validate_reloc (abfd, ptr))
in the MIPS64 (n64 MIPS) ELF backend whenever the STN_UNDEF symbol index
is retrieved from the `r_sym' field of a relocation seen in input while
running `objcopy' or `strip'. The reason for the null BFD pointer is
that internally in BFD an STN_UNDEF symbol reference resolves to an
absolute zero symbol that does not have a BFD associated. Check the
pointer then before using it, like the generic ELF backend does in
`elf_write_relocs'.
This complements the same change made for generic ELF bundled with:
commit e35765a9a2eaff0df62757f3e6480c8ba5ab8ee8
Author: Ian Lance Taylor <ian@airs.com>
Date: Sun Dec 15 19:59:18 1996 +0000
which (obviously due to a CVS -> GIT repository conversion inaccuracy)
seems to be one corresponding to this ChangeLog entry:
* elfcode.h (write_relocs): Handle absolute symbol.
from:
commit c86158e591edd8450f49f8cd75f82e4313d4b6d8
Author: Ian Lance Taylor <ian@airs.com>
Date: Fri Aug 30 22:09:51 1996 +0000
("Add SH ELF support."), which also updated RELA only and not REL (which
has been since fixed with: commit 947216bf8f34 ("ELF reloc code tidy"),
<https://sourceware.org/ml/binutils/2002-11/msg00727.html>).
bfd/
* elf64-mips.c (mips_elf64_write_rel): Handle a NULL BFD pointer
in the BFD symbol referred by the relocation.
(mips_elf64_write_rela): Likewise.
commit 3f97ba9fc82dbb1bca72fd8a137b2de132348367
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Apr 9 13:42:00 2018 +0100
binutils/testsuite: Verify the handling of invalid `r_sym' in relocation
Verify that `strip' terminates gracefully and a correct error message is
produced for a relocation encountered with an invalid symbol index. No
single relocation number is valid across all targets we support, so pick
a few numbers to choose from depending on the target.
binutils/
* testsuite/binutils-all/strip-14.d: New test.
* testsuite/binutils-all/strip-14rel.s: New test source.
* testsuite/binutils-all/strip-14rela.s: New test source.
* testsuite/binutils-all/strip-14mips64.s: New test source.
* testsuite/binutils-all/objcopy.exp: Run the new test.
commit 9ccfa98b4cbc86ac34734ecf9d35466461c7e34c
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Apr 9 13:42:00 2018 +0100
MIPS64/BFD: Fix a crash with invalid `r_sym' in relocation
Prevent an out-of-range access and a possible segmentation fault in
`mips_elf64_slurp_one_reloc_table':
Program received signal SIGSEGV, Segmentation fault.
mips_elf64_slurp_one_reloc_table (abfd=0x71bd90, asect=0x71cf70,
rel_hdr=<value optimized out>, reloc_count=1,
relents=<value optimized out>, symbols=0x7218c0, dynamic=0)
at .../bfd/elf64-mips.c:3758
3757 ps = symbols + rela.r_sym - 1;
3758 s = *ps;
in the MIPS64 (n64 MIPS) ELF backend whenever an invalid symbol index is
retrieved from the `r_sym' field of a relocation seen in input while
running `objcopy' or `strip'. Issue an error instead, like the generic
ELF backend does, taking code from `elf_slurp_reloc_table_from_section',
except for relocation types that do not refer to a symbol.
This complements commit 1f70368c21a8 ("Stop objdump crash on corrupt
reloc table"), <https://sourceware.org/ml/binutils/2002-09/msg00332.html>,
and commit 05a487dc8c39 ("make check fails on i686-linux-gnu"),
<https://sourceware.org/ml/binutils/2002-09/msg00340.html>, where the
generic ELF backend code comes from.
bfd/
* elf64-mips.c (mips_elf64_slurp_one_reloc_table): Issue an
error for out-of-range `r_sym' values.
commit 3e04d7655bf63f4e5a0d0354c21aa3fa2ece3681
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 9 09:32:39 2018 +0930
Inline PLT call optimization
This patch adds the analysis part of PLT call optimization, enabling
the code added with the previous patch that actually performs the
optimization.
Gold support is not available yet.
bfd/
* elf64-ppc.c (struct _ppc64_elf_section_data): Add has_pltcall field.
(struct ppc_link_hash_table): Add can_convert_all_inline_plt.
(ppc64_elf_check_relocs): Set has_pltcall.
(ppc64_elf_adjust_dynamic_symbol): Discard some PLT entries.
(ppc64_elf_inline_plt): New function.
(ppc64_elf_size_dynamic_sections): Discard some PLT entries for locals.
* elf64-ppc.h (ppc64_elf_inline_plt): Declare.
* elf32-ppc.c (has_pltcall): Define.
(struct ppc_elf_link_hash_table): Add can_convert_all_inline_plt.
(ppc_elf_check_relocs): Set has_pltcall.
(ppc_elf_inline_plt): New function.
(ppc_elf_adjust_dynamic_symbol): Discard some PLT entries.
(ppc_elf_size_dynamic_sections): Likewise.
* elf32-ppc.h (ppc_elf_inline_plt): Declare.
ld/
* emultempl/ppc64elf.em (no_inline_plt): New var.
(ppc_before_allocation): Call ppc64_elf_inline_plt.
(enum ppc64_opt): Add OPTION_NO_INLINE_OPT.
(PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS,
PARSE_AND_LIST_ARGS_CASES): Handle --no-inline-optimize.
* emultemps/ppc32elf.em (no_inline_opt): New var.
(prelim_size_sections): New function, extracted from..
(ppc_before_allocation): ..here. Call ppc_elf_inline_plt.
(enum ppc32_opt): Add OPTION_NO_INLINE_OPT.
(PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS,
PARSE_AND_LIST_ARGS_CASES): Handle --no-inline-optimize.
commit 23cedd1dc90d05c4b80d4a4b000ed5f37b9c3268
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 9 09:25:10 2018 +0930
PowerPC inline PLT call support
In addition to the existing relocs we need two more to mark all
instructions in the call sequence, PLTCALL on the call itself (plus
the toc restore insn for ppc64), and PLTSEQ on others. All
relocations in a particular sequence have the same symbol.
Example ppc64 ELFv2 assembly:
.reloc .,R_PPC64_PLTSEQ,puts
std 2,24(1)
addis 12,2,puts@plt@ha # .reloc .,R_PPC64_PLT16_HA,puts
ld 12,puts@plt@l(12) # .reloc .,R_PPC64_PLT16_LO_DS,puts
.reloc .,R_PPC64_PLTSEQ,puts
mtctr 12
.reloc .,R_PPC64_PLTCALL,puts
bctrl
ld 2,24(1)
Example ppc32 -fPIC assembly:
addis 12,30,puts+32768@plt@ha # .reloc .,R_PPC_PLT16_HA,puts+0x8000
lwz 12,12,puts+32768@plt@l # .reloc .,R_PPC_PLT16_LO,puts+0x8000
.reloc .,R_PPC_PLTSEQ,puts+32768
mtctr 12
.reloc .,R_PPC_PLTCALL,puts+32768
bctrl
Marking sequences like this allows the linker to convert them to nops
and a direct call if the target symbol turns out to be local.
When the call is __tls_get_addr, each relocation shown above is paired
with an R_PPC*_TLSLD or R_PPC*_TLSGD reloc to additionally mark the
sequence for possible TLS optimization. The TLSLD or TLSGD relocs are
emitted first.
include/
* elf/ppc.h (R_PPC_PLTSEQ, R_PPC_PLTCALL): Define.
* elf/ppc64.h (R_PPC64_PLTSEQ, R_PPC64_PLTCALL): Define.
bfd/
* elf32-ppc.c (ppc_elf_howto_raw): Add PLTSEQ and PLTCALL howtos.
(is_plt_seq_reloc): New function.
(ppc_elf_check_relocs): Handle PLTSEQ and PLTCALL relocs.
(ppc_elf_tls_optimize): Handle inline plt call sequence.
(ppc_elf_relax_section): Handle PLTCALL reloc.
(ppc_elf_relocate_section): Nop out inline plt call sequence when
resolving locally.
* elf64-ppc.c (ppc64_elf_howto_raw): Add R_PPC64_PLTSEQ and
R_PPC64_PLTCALL entries. Comment R_PPC64_TOCSAVE.
(has_tls_get_addr_call): Correct comment.
(is_branch_reloc): Add PLTCALL.
(is_plt_seq_reloc): New function.
(ppc64_elf_check_relocs): Handle PLT16_LO_DS reloc. Set
has_tls_reloc for R_PPC64_TLSGD and R_PPC64_TLSLD. Create plt
entry for R_PPC64_PLTCALL.
(ppc64_elf_tls_optimize): Handle inline plt call sequence.
(ppc_type_of_stub): Handle PLTCALL reloc.
(toc_adjusting_stub_needed): Likewise.
(ppc64_elf_relocate_section): Set "can_plt_call" for PLTCALL
reloc insn. Nop out inline plt call sequence when resolving
locally. Handle __tls_get_addr inline plt call optimization.
elfcpp/
* powerpc.h (R_POWERPC_PLTSEQ, R_POWERPC_PLTCALL): Define.
gold/
* powerpc.cc (Target_powerpc::Track_tls::maybe_skip_tls_get_addr_call):
Handle inline plt sequence relocs.
(Stub_table::Plt_stub_key::Plt_stub_key): Likewise.
(Target_powerpc::Scan::reloc_needs_plt_for_ifunc): Likewise.
(Target_powerpc::Relocate::relocate): Likewise.
commit 2d7ad24e8726ba4c45c9e67be08223a146a837ce
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 9 09:22:53 2018 +0930
Support PLT16 relocs against local symbols
Necessary if gcc is to use PLT16 relocs to implement -mlongcall, and
there isn't a good technical reason why local symbols should be
excluded from PLT16 support. Non-ifunc local symbol PLT entries go in
a separate section to other PLT entries. In a fixed position
executable they won't need to be relocated, and in a PIE or shared
library I chose to not implement lazy relocation.
bfd/
* elf64-ppc.c (LOCAL_PLT_ENTRY_SIZE): Define.
(struct ppc_stub_hash_entry): Add symtype field.
(PLT_KEEP): Define.
(struct ppc_link_hash_table): Add pltlocal and relpltlocal.
(create_linkage_sections): Create pltlocal and relpltlocal.
(ppc64_elf_check_relocs): Allow PLT relocs on local symbols.
Set PLT_KEEP.
(ppc64_elf_adjust_dynamic_symbol): Keep PLT entries for inline calls.
(allocate_dynrelocs): Allocate pltlocal and relpltlocal.
(ppc64_elf_size_dynamic_sections): Size pltlocal and relpltlocal.
Keep PLT entries for inline calls against locals.
(ppc_build_one_stub): Use pltlocal as appropriate.
(ppc_size_one_stub): Likewise.
(ppc64_elf_size_stubs): Set symtype.
(build_global_entry_stubs_and_plt): Init pltlocal and write
relpltlocal for globals.
(write_plt_relocs_for_local_syms): Likewise for local syms.
(ppc64_elf_relocate_section): Support PLT for local syms.
* elf32-ppc.c (PLT_KEEP): Define.
(struct ppc_elf_link_hash_table): Add pltlocal and relpltlocal.
(ppc_elf_create_glink): Create pltlocal and relpltlocal.
(ppc_elf_check_relocs): Allow PLT relocs on local symbols.
Set PLT_KEEP. Adjust update_local_sym_info call.
(ppc_elf_adjust_dynamic_symbol): Keep PLT entries for inline calls.
(allocate_dynrelocs): Allocate pltlocal and relpltlocal.
(ppc_elf_size_dynamic_sections): Size pltlocal and relpltlocal.
(ppc_elf_relocate_section): Support PLT16 relocs for local syms.
(write_global_sym_plt): Init pltlocal and write relpltlocal.
(ppc_finish_symbols): Likewise for locals.
ld/
* emulparams/elf32ppc.sh (OTHER_RELRO_SECTIONS_2): Add .branch_lt.
(OTHER_GOT_RELOC_SECTIONS): Add .rela.branch_lt.
* testsuite/ld-powerpc/elfv2so.d: Update for symbol/stub reordering.
* testsuite/ld-powerpc/relbrlt.d: Likewise.
* testsuite/ld-powerpc/relbrlt.s: Likewise.
* testsuite/ld-powerpc/tlsso.r: Likewise.
* testsuite/ld-powerpc/tlstocso.r: Likewise.
gold/
* powerpc.cc (Target_powerpc::lplt_): New variable.
(Target_powerpc::lplt_section): Associated accessor.
(Target_powerpc::plt_off): Handle local non-ifunc symbols.
(Target_powerpc::make_lplt_section): New function.
(Target_powerpc::make_local_plt_entry): New function.
(Powerpc_relobj::do_relocate_sections): Write out lplt.
(Output_data_plt_powerpc::first_plt_entry_offset): Zero for lplt.
(Output_data_plt_powerpc::add_local_entry): New function.
(Output_data_plt_powerpc::do_write): Ignore lplt.
(Target_powerpc::make_iplt_section): Make lplt first.
(Target_powerpc::make_brlt_section): Make .branch_lt relro.
(Target_powerpc::Scan::local): Handle PLT16 relocs.
commit 49c09209d06885dc8350042ce77e442bfbb5bf27
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 9 09:21:59 2018 +0930
Rearrange PLT reloc output on powerpc
The current scheme where we output PLT relocs for global symbols in
finish_dynamic_symbol, and PLT relocs for local symbols when
outputting stubs does not work if PLT entries are to be used for
inline PLT sequences against non-dynamic globals or local symbols.
bfd/
* elf64-ppc.c (ppc_build_one_stub): Move output of PLT relocs
for local symbols to..
(write_plt_relocs_for_local_syms): ..here. New function.
(ppc64_elf_finish_dynamic_symbol): Move output of PLT relocs for
global symbols to..
(build_global_entry_stubs_and_plt): ..here. Rename from
build_global_entry_stubs.
(ppc64_elf_build_stubs): Always call build_global_entry_stubs_and_plt.
Call write_plt_relocs_for_local_syms.
* elf32-ppc.c (get_sym_h): New function.
(ppc_elf_relax_section): Use get_sym_h.
(ppc_elf_relocate_section): Move output of PLT relocs and glink
stubs for local symbols to..
(ppc_finish_symbols): ..here. New function.
(ppc_elf_finish_dynamic_symbol): Move output of PLT relocs for
global syms to..
(write_global_sym_plt): ..here. New function.
* elf32-ppc.h (ppc_elf_modify_segment_map): Delete attribute.
(ppc_finish_symbols): Declare.
ld/
* ppc32elf.em (ppc_finish): Call ppc_finish_symbols.
commit 08be322439408ac02cff2ac9b5eca4f7243a0277
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 9 09:21:10 2018 +0930
PowerPC PLT16 relocations
The PowerPC64 ELFv2 ABI and the PowerPC SysV ABI support a number of
relocations that can be used to create and access a PLT entry.
However, the relocs are not well defined. The PLT16 family of relocs
talk about "the section offset or address of the procedure linkage
table entry". It's plain that we do need a relative address when PIC
as otherwise we'd have dynamic text relocations, but "section offset"
doesn't specify which section. The most obvious one, ".plt", isn't
that useful because there is no readily available way of addressing
the start of the ".plt" section. Much more useful would be "the
GOT/TOC-pointer relative offset of the procedure linkage table entry",
and I suppose you could argue that is a "section offset" of sorts.
For PowerPC64 it is better to use the same TOC-pointer relative
addressing even when non-PIC, since ".plt" may be located outside the
range of a 32-bit address. However, for ppc32 we do want an absolute
address when non-PIC as a GOT pointer may not be set up. Also, for
ppc32 PIC we have a similar situation to R_PPC_PLTREL24 in that the
GOT pointer is set to a location in the .got2 section and we need to
specify the .got2 offset in the PLT16 reloc addend.
This patch supports PLT16 relocations using these semantics. This is
not an ABI change for ppc32 since the relocations were not previously
supported by GNU ld, but is for ppc64 where some of the PLT16 relocs
were supported. I'm not particularly concerned since the old ppc64
PLT16 reloc semantics made them almost completely useless.
bfd/
* elf32-ppc.c (ppc_elf_check_relocs): Handle PLT16 relocs.
(ppc_elf_relocate_section): Likewise.
* elf64-ppc.c (ppc64_elf_check_relocs): Handle PLT16_LO_DS.
(ppc64_elf_relocate_section): Likewise. Correct PLT16
resolution to plt entry relative to toc pointer.
gold/
* powerpc.cc (Target_powerpc::plt_off): New functions.
(is_plt16_reloc): New function.
(Stub_table::plt_off): Use Target_powerpc::plt_off.
(Stub_table::plt_call_size): Use plt_off.
(Stub_table::do_write): Likewise.
(Target_powerpc::Scan::get_reference_flags): Return RELATIVE_REF
for PLT16 relocations.
(Target_powerpc::Scan::reloc_needs_plt_for_ifunc): Return true
for PLT16 relocations.
(Target_powerpc::Scan::global): Make a PLT entry for PLT16 relocations.
(Target_powerpc::Relocate::relocate): Support PLT16 relocations.
(Powerpc_scan_relocatable_reloc::global_strategy): Return RELOC_SPECIAL
for ppc32 plt16 relocs.
commit 37da22e5c85375b30e1211ecff1b261f425375f0
Author: Alan Modra <amodra@gmail.com>
Date: Mon Apr 9 09:11:44 2018 +0930
PowerPC indirect calls to __tls_get_addr
It is possible to construct indirect calls to __tls_get_addr in
assembly that confuse TLS optimization. (PowerPC gcc doesn't support
such calls, ignoring -mlongcall for __tls_get_addr.) This patch fixes
the problem by requiring a TLSLD or TLSGD marker reloc before any insn
in an indirect call to __tls_get_addr will be optimized. They also
need additional marker relocs defined in a later patch, so don't
expect the optimization to work just yet. The point here is to
prevent mis-optimization of indirect calls without any marker relocs.
The presense of a marker reloc is tracked by a new bit in the tls_mask
field of ppc_link_hash_entry and the corresponding lgot_masks unsigned
char array for local symbols. Since the field is only 8 bits, we've
run out of space. However, tracking TLS use for variables, and
tracking IFUNC for functions are independent, and bits can be reused.
TLS_TLS is always set for TLS usage, so can be used to select the
meaning of the other bits. This patch does that even for elf32-ppc.c
which hasn't yet run out of space in the field.
* elf64-ppc.c (TLS_TLS, TLS_GD, TLS_LD, TLS_TPREL, TLS_DTPREL,
TLS_TPRELGD, TLS_EXPLICIT): Renumber. Test TLS_TLS throughout
file when other TLS flags are tested in a mask.
(TLS_MARK, NON_GOT): Define.
(PLT_IFUNC): Redefine, and test TLS_TLS throughout file as well.
(update_local_sym_info): Don't create got entry when NON_GOT.
(ppc64_elf_check_relocs): Pass NON_GOT with PLT_IFUNC.
Set TLS_MARK.
(get_tls_mask): Do toc lookup if tls_mask is just TLS_MARK.
(ppc64_elf_relocate_section): Likewise.
(ppc64_elf_tls_optimize): Don't attempt to optimize indirect
__tls_get_addr calls lacking a marker reloc.
* elf32-ppc.c (TLS_TLS, TLS_GD, TLS_LD, TLS_TPREL, TLS_DTPREL,
TLS_TPRELGD): Renumber. Update comment.
(TLS_MARK, NON_GOT): Define.
(PLT_IFUNC): Redefine, and test TLS_TLS throughout file as well.
(update_local_sym_info): Don't create got entry when NON_GOT.
(ppc_elf_check_relocs): Pass NON_GOT with PLT_IFUNC.
Set TLS_MARK.
(ppc_elf_tls_optimize): Don't attempt to optimize indirect
__tls_get_addr calls lacking a marker reloc.
commit 51066b93507b79e46bcd6c998b760a2fd4b3d0a9
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Apr 9 00:00:24 2018 +0000
Automatic date update in version.in
commit ec5fd53433d354608013e86bd8cacce044a030b6
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Apr 8 00:01:11 2018 +0000
Automatic date update in version.in
commit a0be7a3671e6252c0f3353d128f84c641005fa06
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sat Apr 7 14:08:56 2018 -0400
Fix gdb.mi/mi-stack.exp when gcc generates a stack protector
I see some failures in the gdb.mi/mi-stack.exp test. The test runs to
the callee4 function:
int callee4 (void)
{
int A=1;
int B=2;
int C;
int D[3] = {0, 1, 2};
C = A + B;
return 0;
}
and expects to be stopped at the A=1 line. However, when gcc generates
some stack protection code, it will stop at the { instead, as shown by
this disassembly (after I did "break callee4" and "run"):
(gdb) disassemble /s
Dump of assembler code for function callee4:
/home/simark/src/binutils-gdb/gdb/testsuite/gdb.mi/mi-stack.c:
26 {
0x00005555555546ca <+0>: push %rbp
0x00005555555546cb <+1>: mov %rsp,%rbp
0x00005555555546ce <+4>: sub $0x20,%rsp
=> 0x00005555555546d2 <+8>: mov %fs:0x28,%rax
0x00005555555546db <+17>: mov %rax,-0x8(%rbp)
0x00005555555546df <+21>: xor %eax,%eax
27 int A=1; /* callee4 begin */
0x00005555555546e1 <+23>: movl $0x1,-0x20(%rbp)
28 int B=2;
0x00005555555546e8 <+30>: movl $0x2,-0x1c(%rbp)
The rest of the test relies on execution stopping on the A=1, so many things
fail after that. This patch uses mi_continue_to_line instead, to stop at the
A=1 line precisely.
gdb/testsuite/ChangeLog:
* gdb.mi/mi-stack.exp (test_stack_frame_listing): Use
mi_continue_to_line.
* gdb.mi/mi-stack.c (callee4): Add comment.
commit 9b73db36739a72d216eb14d35edac2acfca7faa3
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sat Dec 16 09:56:50 2017 -0500
Fix indentation in gdb.mi/mi-stack.exp
This patch fixes the indentation in gdb.mi/mi-stack.exp, which is a bit
inconsistent.
gdb/testsuite/ChangeLog:
* gdb.mi/mi-stack.exp: Fix indentation.
commit 6f14adc55864818ec3754460f5df4150c2addf42
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sat Apr 7 14:03:12 2018 -0400
Replace make_cleanup_restore_current_traceframe with RAII class
I put the constructor in tracepoint.c because it needs to read
traceframe_number, and I prefer to do that than to expose
traceframe_number.
gdb/ChangeLog:
* tracepoint.c (struct current_traceframe_cleanup): Remove.
(do_restore_current_traceframe_cleanup): Remove.
(restore_current_traceframe_cleanup_dtor): Remove.
(make_cleanup_restore_current_traceframe): Remove.
(scoped_restore_current_traceframe::scoped_restore_current_traceframe):
New.
* tracepoint.h (struct scoped_restore_current_traceframe): New.
* infrun.c (fetch_inferior_event): Use
scoped_restore_current_traceframe.
commit b2bdb8cf395f491319264cda42e41538f55a86d9
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sat Apr 7 13:53:44 2018 -0400
Make dwarf2_per_objfile::all_type_units an std::vector
Make all_type_units an std::vector, remove
n_type_units/n_allocated_type_units and some manual memory management.
gdb/ChangeLog:
* dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
Remove.
<n_allocated_type_units>: Remove.
<all_type_units>: Change to std::vector.
* dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
to std::vector change.
(dwarf2_per_objfile::get_cutu): Likewise.
(dwarf2_per_objfile::get_tu): Likewise.
(create_signatured_type_table_from_index): Likewise.
(create_signatured_type_table_from_debug_names): Likewise.
(dw2_symtab_iter_next): Likewise.
(dw2_print_stats): Likewise.
(dw2_expand_all_symtabs): Likewise.
(dw2_expand_marked_cus): Likewise.
(dw2_debug_names_iterator::next): Likewise.
(dwarf2_initialize_objfile): Likewise.
(add_signatured_type_cu_to_table): Likewise.
(create_all_type_units): Likewise.
(add_type_unit): Likewise.
(struct tu_abbrev_offset): Add constructor.
(build_type_psymtabs_1): Adjust to std::vector change.
(print_tu_stats): Likewise.
* dwarf-index-write.c (check_dwarf64_offsets): Likewise.
(write_debug_names): Likewise.
commit b76e467de35d6b107edff1d4b9de15fb7ebacbbd
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sat Apr 7 13:53:43 2018 -0400
Make dwarf2_per_objfile::all_comp_units an std::vector
Make all_comp_units an std::vector, remove n_comp_units and some manual
memory management.
gdb/ChangeLog:
* dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
Make an std::vector.
<n_comp_units>: Remove.
* dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
to std::vector change.
(dwarf2_per_objfile::get_cutu): Likewise.
(dwarf2_per_objfile::get_cu): Likewise.
(create_cus_from_index): Likewise.
(create_addrmap_from_index): Likewise.
(create_addrmap_from_aranges): Likewise.
(dwarf2_read_index): Likewise.
(dw2_find_last_source_symtab): Likewise.
(dw2_map_symtabs_matching_filename): Likewise.
(dw2_symtab_iter_next): Likewise.
(dw2_print_stats): Likewise.
(dw2_expand_all_symtabs): Likewise.
(dw2_expand_symtabs_with_fullname): Likewise.
(dw2_expand_marked_cus): Likewise.
(dw2_map_symbol_filenames): Likewise.
(create_cus_from_debug_names): Likewise.
(dwarf2_read_debug_names): Likewise.
(dw2_debug_names_iterator::next): Likewise.
(dwarf2_initialize_objfile): Likewise.
(set_partial_user): Likewise.
(dwarf2_build_psymtabs_hard): Likewise.
(read_comp_units_from_section): Remove arguments, adjust to
std::vector change.
(create_all_comp_units): Adjust to std::vector and
read_comp_units_from_section changes.
(dwarf2_find_containing_comp_unit): Adjust to std::vector
change.
* dwarf-index-write.c (check_dwarf64_offsets): Likewise.
(psyms_seen_size): Likewise.
(write_gdbindex): Likewise.
(write_debug_names): Likewise.
commit 12359b5e8f2a4034e1e4cd7f0b454fb03151df4c
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sat Apr 7 13:53:42 2018 -0400
Remove some usages of get_dwarf2_per_objfile
This patch removes some usages of get_dwarf2_per_objfile, where we can
get hold of the dwarf2_per_objfile object in a simpler way. For
example, it's simpler (and slightly less work) to pass
dwarf2_per_objfile and get the objfile from it than to pass the objfile
and call get_dwarf2_per_objfile.
Ideally, get_dwarf2_per_objfile should only be used in the entry points
of the dwarf2 code, where we receive an objfile.
gdb/ChangeLog:
* dwarf2read.c (create_cus_from_index_list): Replace objfile arg
with dwarf2_per_objfile.
(create_cus_from_index): Likewise.
(create_signatured_type_table_from_index): Likewise.
(dwarf2_read_index): Likewise.
(dwarf2_initialize_objfile): Likewise.
(dwarf2_fetch_die_loc_sect_off): Get dwarf2_per_objfile from
per_cu rather than get_dwarf2_per_objfile.
commit ff4c9fec8413fa4e0b11ef092a86669305894a7a
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sat Apr 7 13:53:40 2018 -0400
Replace dw2_get_cu/dw2_get_cutu with methods of dwarf2_per_objfile
Those two functions look like good candidates to become methods of
dwarf2_per_objfile. I did that, and added get_tu as well. When
replacing usages of dw2_get_cutu, I changed some instances to get_cutu
and others to get_cu, when appropriate (when we know we want a CU and
not a TU).
gdb/ChangeLog:
* dwarf2read.h (struct signatured_type): Forward declare.
(struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
New methods.
* dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
(dw2_get_cutu): ...this.
(dwarf2_per_objfile::get_cu): Rename from...
(dw2_get_cu): ...this.
(dwarf2_per_objfile::get_tu): New.
(create_addrmap_from_index): Adjust.
(create_addrmap_from_aranges): Adjust.
(dw2_find_last_source_symtab): Adjust.
(dw2_map_symtabs_matching_filename): Adjust.
(dw2_symtab_iter_next): Adjust.
(dw2_print_stats): Adjust.
(dw2_expand_all_symtabs): Adjust.
(dw2_expand_symtabs_with_fullname): Adjust.
(dw2_expand_marked_cus): Adjust.
(dw_expand_symtabs_matching_file_matcher): Adjust.
(dw2_map_symbol_filenames): Adjust.
(dw2_debug_names_iterator::next): Adjust.
(dwarf2_initialize_objfile): Adjust.
(set_partial_user): Adjust.
(dwarf2_build_psymtabs_hard): Adjust.
commit 5ca3fcb669bc655e2e79866be086e8ac564e472b
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sat Apr 7 13:53:39 2018 -0400
Remove some unused variables in dwarf2read.c
Most of them are obvious. The ones in dwarf2_record_block_ranges are
less obvious, because it is a bit suspicious to have that many
variables unused. But after inspection, it seems like it dates from
commit 5f46c5a54825 ("Code cleanup: Split dwarf2_ranges_read to a
callback"), where dwarf2_record_block_ranges was made to use
dwarf2_ranges_process, which contains the same functionality.
gdb/ChangeLog:
* dwarf2read.c (create_signatured_type_table_from_debug_names):
Remove unused variables.
(dw2_map_symtabs_matching_filename): Likewise.
(dwarf2_record_block_ranges): Likewise.
(dwarf2_read_addr_index): Likewise.
(follow_die_offset): Likewise.
commit b2e586e850dbf1dafc10beea3250d22e70add4b5
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sat Apr 7 13:51:59 2018 -0400
Defer breakpoint reset when cloning progspace for fork child
Using this simple test:
static void
break_here ()
{
}
int
main (int argc, char *argv[])
{
fork ();
break_here();
return 0;
}
compiled as a PIE:
$ gcc test.c -g3 -O0 -o test -pie
and running this:
$ ./gdb -nx -q --data-directory=data-directory ./test -ex "b break_here" -ex "set detach-on-fork off" -ex r
gives:
Warning:
Cannot insert breakpoint 1.
Cannot access memory at address 0x64a
Note that GDB might get stopped by SIGTTOU because of this issue:
https://sourceware.org/bugzilla/show_bug.cgi?id=23020
In that case, just use "fg" to continue.
This issue happens only with position-independent executables. Adding
the main objfile for the new inferior (the fork child) causes GDB to try
to reset the breakpoints. However, that new objfile has not been
relocated yet. So the breakpoint on "break_here" resolves to an
unrelocated address, from which we are trying to read/write to set a
breakpoint. Passing SYMFILE_DEFER_BP_RESET avoids that problem. The
executable is relocated just after, in the follow_fork_inferior
function.
The buildbot seems happy with this patch. I don't think it's necessary
to add a new test. Just changing this made many tests go from FAIL to
PASS on my machine, where gcc produces PIE executables by default. If
anything, I think we would need to add a board file that produces
position-independent executables, so that we can run all the tests with
PIE, even on machines where that is not the default.
gdb/ChangeLog:
* progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
to symbol_file_add_main.
commit 7c4e78cf63f6436ae43e8289badba78d81e2eb2c
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sat Apr 7 13:48:05 2018 -0400
Implement write_async_safe for mi_console_file (PR 22299)
Enabling "set debug lin-lwp 1" with the MI interpreter doesn't work.
When the sigchld_handler function wants to print a debug output
("sigchld\n"), it uses ui_file_write_async_safe. This ends up in the
default implementation of ui_file::write_async_safe, which aborts GDB.
This patch implements the write_async_safe method for mi_console_file.
The "normal" MI output is line buffered, which means the output
accumulates in m_buffer until a \n is written, at which point it's
flushed in m_raw. The implementation of write_async_safe provided by
this patch bypasses this buffer and writes directly to m_raw. There are
two reasons for this:
(1) Appending to m_buffer (therefore to an std::string) is probably not
async-safe, as it may allocate memory.
(2) We may have a partial output already in m_buffer, so that would lead
to some nested MI output, not so great.
There is probably still a chance to have bad MI output, if
sigchld_handler is invoked in the middle of mi_console_file's flush, and
the line being flushed is only partially sent to m_raw. The solution
would probably be to block signals during flushing. Since this is only
used for debug output, I don't know if it's worth the effort to do that.
To implement write_async_safe, I needed to use the fputstrn_unfiltered,
which does the necessary escaping (e.g. replace \n with \\n). I started
by adding printchar's callback parameters to fputstrn_unfiltered, to be
able to pass async-safe versions of them. It's not easy to provide an
async-safe version of do_fprintf, but it turns out that we can easily
replace printchar's callbacks with a single do_fputc quite easily. The
async-safe version of do_fputc simply calls the underlying ui_file's
write_async_safe method.
gdb/ChangeLog:
PR mi/22299
* mi/mi-console.c (do_fputc_async_safe): New.
(mi_console_file::write_async_safe): New.
(mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
* mi/mi-console.h (class mi_console_file) <write_async_safe>:
New.
* ui-file.c (ui_file::putstrn): Adjust call to
fputstrn_unfiltered.
* utils.c (printchar): Replace do_fputs and do_fprintf
parameters by do_fputc.
(fputstr_filtered): Adjust call to printchar.
(fputstr_unfiltered): Likewise.
(fputstrn_filtered): Likewise.
(fputstrn_unfiltered): Add do_fputc parameter, pass to
printchar.
* utils.h (do_fputc_ftype): New typedef.
(fputstrn_unfiltered): Add do_fputc parameter.
commit 5dc026d3f04ac657378308202ff7d43a1613f14c
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sat Apr 7 13:37:17 2018 -0400
Remove stale file i386-avx.dat
I noticed that regformats/i386/i386-avx.dat did not get re-generated
when doing "make" in the features directory. I think it's a leftover
from commit
f5a29eb0a663 ("Clean up x86 non-linux GDBserver target descriptions")
I build-tested gdbserver with amd64 and i386.
gdb/ChangeLog:
* regformats/i386/i386-avx.dat: Remove.
commit c912f608be7bc2598b919da2b11721b3c262d154
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Sat Apr 7 13:24:58 2018 -0400
Fix generation of x86-64 gdbarch with osabi none (PR 22979)
When a 64-bits (x86-64) gdbarch is created, it is first born as a
32-bits gdbarch in i386_gdbarch_init. The call gdbarch_init_osabi will
call the handler register for the selected (arch, osabi) pair, such as
amd64_linux_init_abi. The various amd64 handlers call amd64_init_abi,
which turns the gdbarch into a 64-bits one.
When selecting the i386:x86-64 architecture with no osabi, no such
handler is ever called, so the gdbarch stays (wrongfully) a 32-bits one.
My first idea was to manually call amd64_init_abi & al in
i386_gdbarch_init when the osabi is GDB_OSABI_NONE. However, this
doesn't work in a build of GDB where i386 is included as a target but
not amd64. My next option (implemented in this patch), is to allow
registering handlers for GDB_OSABI_NONE. I added two such handlers in
amd64-tdep.c, so now it works the same as for the "normal" osabis. It
required re-ordering things in gdbarch_init_osabi to allow running
handlers for GDB_OSABI_NONE.
Without this patch applied (but with the previous one*) :
(gdb) set osabi none
(gdb) set architecture i386:x86-64
The target architecture is assumed to be i386:x86-64
(gdb) p sizeof(void*)
$1 = 4
and now:
(gdb) set osabi none
(gdb) set architecture i386:x86-64
The target architecture is assumed to be i386:x86-64
(gdb) p sizeof(void*)
$1 = 8
* Before the previous patch, which fixed "set osabi none", this bug was
hidden because we didn't actually try to generate a gdbarch for no
osabi, it would always fall back on Linux. Generating the gdbarch for
amd64/linux did work.
gdb/ChangeLog:
PR gdb/22979
* amd64-tdep.c (amd64_none_init_abi): New function.
(amd64_x32_none_init_abi): New function.
(_initialize_amd64_tdep): Register handlers for x86-64 and
x64_32 with GDB_OSABI_NONE.
* osabi.c (gdbarch_init_osabi): Allow running handlers for the
GDB_OSABI_NONE osabi.
gdb/testsuite/ChangeLog:
PR gdb/22979
* gdb.arch/amd64-osabi.exp: New file.
commit 26540402495f35d5f19762ceba66605bca8fa63b
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Sat Apr 7 13:23:28 2018 -0400
Make "set osabi none" really work (PR 22980)
I was looking for a way to reproduce easily PR 22979 by doing this:
(gdb) set architecture i386:x86-64
(gdb) set osabi none
However, I noticed that even though I did "set osabi none", the gdbarch
gdb created was for Linux:
(gdb) set debug arch 1
(gdb) set architecture i386:x86-64
...
(gdb) set osabi none
gdbarch_find_by_info: info.bfd_arch_info i386:x86-64
gdbarch_find_by_info: info.byte_order 1 (little)
gdbarch_find_by_info: info.osabi 4 (GNU/Linux) <--- Wrong?
gdbarch_find_by_info: info.abfd 0x0
gdbarch_find_by_info: info.tdep_info 0x0
gdbarch_find_by_info: Previous architecture 0x1e6fd30 (i386:x86-64)
selected
gdbarch_update_p: Architecture 0x1e6fd30 (i386:x86-64) unchanged
This is because the value GDB_OSABI_UNKNOWN has an unclear role,
sometimes meaning "no osabi" and sometimes "please selected
automatically". Doing "set osabi none" sets the requested osabi to
GDB_OSABI_UNKNOWN, in which case gdbarch_info_fill overrides it with a
value from the target description, or the built-in default osabi. This
means that it's impossible to force GDB not to use an osabi with "set
osabi". Since my GDB's built-in default osabi is Linux, it always falls
back to GDB_OSABI_LINUX.
To fix it, I introduced GDB_OSABI_NONE, which really means "I don't want
any osabi". GDB_OSABI_UNKNOWN can then be used only for "not set yet,
please auto-detect". GDB_OSABI_UNINITIALIZED now seems unnecessary
since it overlaps with GDB_OSABI_UNKNOWN, so I think it can be removed
and gdbarch_info::osabi can be initialized to GDB_OSABI_UNKNOWN.
gdb/ChangeLog:
PR gdb/22980
* defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
GDB_OSABI_NONE.
* arch-utils.c (gdbarch_info_init): Don't set info->osabi.
* osabi.c (gdb_osabi_names): Add "unknown" entry.
gdb/testsuite/ChangeLog:
PR gdb/22980
* gdb.base/osabi.exp: New file.
commit 9018be22e022e6db2ba07c4e407c7244022bc69a
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Sat Apr 7 13:19:12 2018 -0400
Make target_read_alloc & al return vectors
This patch started by changing target_read_alloc_1 to return a
byte_vector, to avoid manual memory management (in target_read_alloc_1
and in the callers). To communicate failures to the callers, it
actually returns a gdb::optional<gdb::byte_vector>.
Adjusting target_read_stralloc was a bit more tricky, since it wants to
return a buffer of char, and not gdb_byte. Since you can't just cast a
gdb::byte_vector into a gdb::def_vector<char>, I made
target_read_alloc_1 templated, so both versions (that return vectors of
gdb_byte and char) are generated. Since target_read_stralloc now
returns a gdb::char_vector instead of a gdb::unique_xmalloc_ptr<char>, a
few callers need to be adjusted.
gdb/ChangeLog:
* common/byte-vector.h (char_vector): New type.
* target.h (target_read_alloc): Return
gdb::optional<byte_vector>.
(target_read_stralloc): Return gdb::optional<char_vector>.
(target_get_osdata): Return gdb::optional<char_vector>.
* target.c (target_read_alloc_1): Templatize. Replacement
manual memory management with vector.
(target_read_alloc): Change return type, adjust.
(target_read_stralloc): Change return type, adjust.
(target_get_osdata): Change return type, adjust.
* auxv.c (struct auxv_info) <length>: Remove.
<data>: Change type to gdb::optional<byte_vector>.
(auxv_inferior_data_cleanup): Free auxv_info with delete.
(get_auxv_inferior_data): Allocate auxv_info with new, adjust.
(target_auxv_search): Adjust.
(fprint_target_auxv): Adjust.
* avr-tdep.c (avr_io_reg_read_command): Adjust.
* linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
(linux_make_corefile_notes): Adjust.
* osdata.c (get_osdata): Adjust.
* remote.c (remote_get_threads_with_qxfer): Adjust.
(remote_memory_map): Adjust.
(remote_traceframe_info): Adjust.
(btrace_read_config): Adjust.
(remote_read_btrace): Adjust.
(remote_pid_to_exec_file): Adjust.
* solib-aix.c (solib_aix_get_library_list): Adjust.
* solib-dsbt.c (decode_loadmap): Don't free buf.
(dsbt_get_initial_loadmaps): Adjust.
* solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
* solib-target.c (solib_target_current_sos): Adjust.
* tracepoint.c (sdata_make_value): Adjust.
* xml-support.c (xinclude_start_include): Adjust.
(xml_fetch_content_from_file): Adjust.
* xml-support.h (xml_fetch_another): Change return type.
(xml_fetch_content_from_file): Change return type.
* xml-syscall.c (xml_init_syscalls_info): Adjust.
* xml-tdesc.c (file_read_description_xml): Adjust.
(fetch_available_features_from_target): Change return type.
(target_fetch_description_xml): Adjust.
(target_read_description_xml): Adjust.
commit 43193fe9fc39138c912095ba6f21c4302abafe5e
Author: Cary Coutant <ccoutant@gmail.com>
Date: Fri Apr 6 16:06:16 2018 -0700
Further improve warnings for relocations referring to discarded sections.
Relocations referring to discarded sections are now treated as errors
instead of warnings.
Also with this patch, we will now print the section group signature and the
object file with the prevailing definition of that group along with the
name of the symbol that the relocation is referring to. This additional
information should be much more useful to anyone trying to track down
the source of such errors.
To do so, we now map each discarded section to the Kept_section info in
the Layout class, and defer the logic that maps a discarded section to
its counterpart in the kept group. This gives us the information we need
to identify the signature symbol given the discarded section, and the
name of the object file that provided the prevailing (i.e., first)
definition of that group.
gold/
* object.cc (Sized_relobj_file::include_section_group): Store
reference to Kept_section info for discarded comdat sections
regardless of size. Move size checking to map_to_kept_section.
(Sized_relobj_file::include_linkonce_section): Likewise.
(Sized_relobj_file::map_to_kept_section): Add section name parameter.
Insert size checking logic from above functions.
(Sized_relobj_file::find_kept_section_object): New method.
(Sized_relobj_file::get_symbol_name): New method.
* object.h (Sized_relobj_file::map_to_kept_section): Add section_name
parameter. Adjust all callers.
(Sized_relobj_file::find_kept_section_object): New method.
(Sized_relobj_file::get_symbol_name): New method.
(Sized_relobj_file::Kept_comdat_section): Replace object and shndx
fields with sh_size, kept_section, symndx, and is_comdat fields.
(Sized_relobj_file::set_kept_comdat_section): Replace kept_object
and kept_shndx parameters with is_comdat, symndx, sh_size, and
kept_section.
(Sized_relobj_file::get_kept_comdat_section): Likewise.
* target-reloc.h (enum Comdat_behavior): Change CB_WARNING to CB_ERROR.
Adjust all references.
(issue_undefined_symbol_error): New function template.
(relocate_section): Pass section name to map_to_kept_section.
Move discarded section code to new function above.
* aarch64.cc (Target_aarch64::scan_reloc_section_for_stubs): Move
declaration for gsym out one level. Call issue_discarded_error.
* arm.cc (Target_arm::scan_reloc_section_for_stubs): Likewise.
* powerpc.cc (Relocate_comdat_behavior): Change CB_WARNING to CB_ERROR.
commit ef4bf13b1f47b59b69335178367734dfc9ad166e
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Apr 7 00:00:25 2018 +0000
Automatic date update in version.in
commit 14c88955a138c24577e703d11f4d25c44a64d0be
Author: Tom Tromey <tom@tromey.com>
Date: Wed Apr 4 16:34:33 2018 -0600
Change value::contents to be a unique_xmalloc_ptr
This changes value::contents to be a unique_xmalloc_ptr, removing a
small bit of manual memory management.
gdb/ChangeLog
2018-04-06 Tom Tromey <tom@tromey.com>
* value.c (~value): Update.
(struct value) <contents>: Now unique_xmalloc_ptr.
(value_contents_bits_eq, allocate_value_contents)
(value_contents_raw, value_contents_all_raw)
(value_contents_for_printing, value_contents_for_printing_const)
(set_value_enclosing_type): Update.
commit 0c7e6dd852f01b3ea38b98c39a2bb36280b02b55
Author: Tom Tromey <tom@tromey.com>
Date: Wed Apr 4 16:32:14 2018 -0600
Remove range_s VEC
This changes the "optimized_out" and "unavailable" VECs in struct
value to be std::vectors, and then fixes up all the uses.
gdb/ChangeLog
2018-04-06 Tom Tromey <tom@tromey.com>
* value.c (range_s): Remove typedef, VEC.
(struct range): Add operator<.
(range_lessthan): Remove.
(ranges_contain): Change type.
(~value): Update.
(struct value) <unavailable, optimized_out>: Now std::vector.
(value_entirely_available)
(value_entirely_covered_by_range_vector)
(value_entirely_unavailable, value_entirely_optimized_out):
Update.
(insert_into_bit_range_vector): Change argument type.
(find_first_range_overlap): Likewise.
(struct ranges_and_idx, value_contents_bits_eq)
(require_not_optimized_out, require_available): Update.
(ranges_copy_adjusted): Change argument types.
(value_optimized_out, value_copy, value_fetch_lazy): Update.
commit 2c8331b987f41fa53ed371d0bbeaa3cea50bd514
Author: Tom Tromey <tom@tromey.com>
Date: Wed Apr 4 16:08:42 2018 -0600
Change value::parent to a value_ref_ptr
This changes value::parent to a value_ref_ptr. This removes a bit of
manual reference count management.
gdb/ChangeLog
2018-04-06 Tom Tromey <tom@tromey.com>
* value.c (~value): Update.
(struct value) <parent>: Now a value_ref_ptr.
(value_parent, set_value_parent, value_address, value_copy):
Update.
commit 466ce3aea9cec006b8b0e348c9021ac2c8106022
Author: Tom Tromey <tom@tromey.com>
Date: Wed Apr 4 15:57:51 2018 -0600
Use new and delete for values
This adds a constructor and destructor to struct value, and then
changes value.c to use "new" and "delete".
While doing this I noticed a memory leak -- value_decref was not
freeing value::optimized_out. This patch fixes this leak.
gdb/ChangeLog
2018-04-06 Tom Tromey <tom@tromey.com>
* value.c (struct value): Add constructor, destructor, and member
initializers.
(allocate_value_lazy, value_decref): Update.
commit 062d818d2535d4bc9ccd5dbf3c6702b9f3e763cc
Author: Tom Tromey <tom@tromey.com>
Date: Tue Apr 3 21:52:31 2018 -0600
Remove value::next and value::released
This patch converts all_values to simply hold a list of references to
values. Now, there's no need to have a value record whether or not it
is released -- there is only a single reference-counting mechanism for
values. So, this also removes value::next, value::released, and
value_next.
gdb/ChangeLog
2018-04-06 Tom Tromey <tom@tromey.com>
* value.c (struct value) <released, next>: Remove.
(all_values): Now a std::vector.
(allocate_value_lazy): Update.
(value_next): Remove.
(value_mark, value_free_to_mark, release_value)
(value_release_to_mark): Update.
commit a6535de1903d9caad8c10c1d81c51a29612456a6
Author: Tom Tromey <tom@tromey.com>
Date: Tue Apr 3 20:20:01 2018 -0600
Remove free_value_chain
This patch changes value_release_to_mark and fetch_subexp_value to
return a std::vector of value references, rather than relying on the
"next" field that is contained in a struct value. This makes it
simpler to reason about the returned values, and also allows for the
removal of free_value_chain.
gdb/ChangeLog
2018-04-06 Tom Tromey <tom@tromey.com>
* value.h (fetch_subexp_value, value_release_to_mark): Update.
(free_value_chain): Remove.
* value.c (free_value_chain): Remove.
(value_release_to_mark): Return a std::vector.
* ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
std::vector.
(check_condition): Update.
* eval.c (fetch_subexp_value): Change "val_chain" to a
std::vector.
* breakpoint.c (update_watchpoint): Update.
(can_use_hardware_watchpoint): Change "vals" to a std::vector.
commit b562120198d9fa2c191823508813daa3b62a3a37
Author: Tom Tromey <tom@tromey.com>
Date: Tue Apr 3 18:31:01 2018 -0600
Remove free_all_values
free_all_values is unused, so this removes it.
gdb/ChangeLog
2018-04-06 Tom Tromey <tom@tromey.com>
* value.h (free_all_values): Remove.
* value.c (free_all_values): Remove.
commit 4d0266a0e0d9e9b615b04ff209a73d3725495835
Author: Tom Tromey <tom@tromey.com>
Date: Tue Apr 3 18:23:30 2018 -0600
Change value history to use value_ref_ptr
This simplifies the value history implementation by replacing the
current data structure with a std::vector, and by making the value
history simply hold a reference to each value.
gdb/ChangeLog
2018-04-06 Tom Tromey <tom@tromey.com>
* value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
(value_history_chain, value_history_count): Remove.
(value_history): New global.
(record_latest_value, access_value_history, show_values)
(preserve_values): Update.
commit b4d61099ba840824fd0aac9800403f6278476347
Author: Tom Tromey <tom@tromey.com>
Date: Tue Apr 3 18:15:13 2018 -0600
Change varobj to use value_ref_ptr
This changes varobj to use value_ref_ptr, allowing the removal of some
manual reference count management.
gdb/ChangeLog
2018-04-06 Tom Tromey <tom@tromey.com>
* varobj.h (struct varobj) <value>: Now a value_ref_ptr.
* varobj.c (varobj_set_display_format, varobj_set_value)
(install_default_visualizer, construct_visualizer)
(install_new_value, ~varobj, varobj_get_value_type)
(my_value_of_variable, varobj_editable_p): Update.
* c-varobj.c (c_describe_child, c_value_of_variable)
(cplus_number_of_children, cplus_describe_child): Update.
* ada-varobj.c (ada_number_of_children, ada_name_of_child)
(ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
(ada_value_of_variable, ada_value_is_changeable_p): Update.
commit 9b5587295bbc57e5e0453b659e24d7c2b504b894
Author: Tom Tromey <tom@tromey.com>
Date: Tue Apr 3 18:03:32 2018 -0600
Change last_examine_value to value_ref_ptr
This patch removes some manual reference count manipulation by
changing last_examine_value to be a value_ref_ptr and then updating
the users.
gdb/ChangeLog
2018-04-06 Tom Tromey <tom@tromey.com>
* printcmd.c (last_examine_address): Change type to
value_ref_ptr.
(do_examine, x_command): Update.
commit 850645cfe82f5854af90ce73f2056712e20fcea2
Author: Tom Tromey <tom@tromey.com>
Date: Tue Apr 3 17:58:58 2018 -0600
Change breakpoints to use value_ref_ptr
Now that value_ref_ptr exists, it is possible to simplify breakpoint
and bpstat memory management by using a value_ref_ptr rather than
manually handling the reference counts.
gdb/ChangeLog
2018-04-06 Tom Tromey <tom@tromey.com>
* value.c (release_value): Update.
* breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
(struct bpstats) <val>: Now a value_ref_ptr.
* breakpoint.c (update_watchpoint, breakpoint_init_inferior)
(~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
(~watchpoint, print_it_watchpoint, watch_command_1)
(invalidate_bp_value_on_memory_change): Update.
commit 22bc8444e6d377fd016253926c2a2597ff944842
Author: Tom Tromey <tom@tromey.com>
Date: Tue Apr 3 17:45:21 2018 -0600
Introduce a gdb_ref_ptr specialization for struct value
struct value is internally reference counted and so, while it also has
some ownership rules unique to it, it makes sense to use a gdb_ref_ptr
when managing it automatically.
This patch removes the existing unique_ptr specialization in favor of
a reference-counted pointer. It also introduces two other
clarifications:
1. Rename value_free to value_decref, which I think is more in line
with what the function actually does; and
2. Change release_value to return a gdb_ref_ptr. This change allows
us to remove the confusing release_value_or_incref function,
primarily by making it much simpler to reason about the result of
release_value.
gdb/ChangeLog
2018-04-06 Tom Tromey <tom@tromey.com>
* varobj.c (varobj_clear_saved_item)
(update_dynamic_varobj_children, install_new_value, ~varobj):
Update.
* value.h (value_incref): Move declaration earlier.
(value_decref): Rename from value_free.
(struct value_ref_policy): New.
(value_ref_ptr): New typedef.
(struct value_deleter): Remove.
(gdb_value_up): Remove typedef.
(release_value): Change return type.
(release_value_or_incref): Remove.
* value.c (set_value_parent): Update.
(value_incref): Change return type.
(value_decref): Rename from value_free.
(value_free_to_mark, free_all_values, free_value_chain): Update.
(release_value): Return value_ref_ptr.
(release_value_or_incref): Remove.
(record_latest_value, set_internalvar, clear_internalvar):
Update.
* stack.c (info_frame_command): Don't call value_free.
* python/py-value.c (valpy_dealloc, valpy_new)
(value_to_value_object): Update.
* printcmd.c (do_examine): Update.
* opencl-lang.c (lval_func_free_closure): Update.
* mi/mi-main.c (register_changed_p): Don't call value_free.
* mep-tdep.c (mep_frame_prev_register): Don't call value_free.
* m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
* m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
value_free.
* guile/scm-value.c (vlscm_free_value_smob)
(vlscm_scm_from_value): Update.
* frame.c (frame_register_unwind, frame_unwind_register_signed)
(frame_unwind_register_unsigned, get_frame_register_bytes)
(put_frame_register_bytes): Don't call value_free.
* findvar.c (address_from_register): Don't call value_free.
* dwarf2read.c (dwarf2_compute_name): Don't call value_free.
* dwarf2loc.c (entry_data_value_free_closure)
(value_of_dwarf_reg_entry, free_pieced_value_closure)
(dwarf2_evaluate_loc_desc_full): Update.
* breakpoint.c (update_watchpoint, breakpoint_init_inferior)
(~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
(~watchpoint, watch_command_1)
(invalidate_bp_value_on_memory_change): Update.
* alpha-tdep.c (alpha_register_to_value): Don't call value_free.
commit 7f8a5d38ed00ad4ecc920322c4b852f3cf905a94
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Fri Apr 6 16:11:51 2018 -0400
Add -Wno-error=deprecated-register to gdb build flags
As shown in PR 23022, building with clang-6 and Python 2 trips on the
fact that the Python 2 headers use the "register" keyword:
/usr/include/python2.7/unicodeobject.h:534:5: error: 'register' storage class specifier is deprecated and incompatible with C++17 [-Werror,-Wdeprecated-register]
register PyObject *obj, /* Object */
^~~~~~~~~
This patch adds -Wno-error=deprecated-register to our flags, so that we can
still see this class of warnings, but they don't cause a build failure.
gdb/ChangeLog:
PR gdb/23022
* warning.m4: Add -Wno-error=deprecated-register.
* configure: Re-generate.
commit 2008a0dbe3de7206a14b53a5778af73cbabfb57e
Author: Tom Tromey <tom@tromey.com>
Date: Thu Apr 5 10:52:29 2018 -0600
Display all DWARF 5 language names
I happened to notice that objdump was not printing "Rust" when showing
the DW_AT_language for a CU:
<10> DW_AT_language : 28 (Unknown: 1c)
This patch adds all the new language constants from DWARF 5 to
binutils/dwarf.c.
2018-04-06 Tom Tromey <tom@tromey.com>
* dwarf.c (read_and_display_attr_value): Add missing DW_LANG
constants from DWARF 5.
commit a6fd92b0578c5d2172799d7f38ddbda1bd87ea03
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Apr 6 05:06:08 2018 -0700
x86-64: Don't mask out R_X86_64_converted_reloc_bit
R_X86_64_converted_reloc_bit is set in elf_x86_64_convert_load_reloc
which is called from elf_x86_64_check_relocs. Since it is used only
internally by linker, there is no need to mask it out in
elf_x86_64_info_to_howto.
* elf64-x86-64.c (elf_x86_64_info_to_howto): Don't mask out
R_X86_64_converted_reloc_bit.
commit 85d8342bee77c2e1654e1d5e6956dbf357f30e68
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Apr 6 00:00:46 2018 +0000
Automatic date update in version.in
commit 3cba8b6c93ab8c573ba4678255df11486de61c54
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Apr 5 15:31:41 2018 -0700
Use dlsym to check if libdl is needed for plugin
config/plugins.m4 has
if test "$plugins" = "yes"; then
AC_SEARCH_LIBS([dlopen], [dl])
fi
Plugin uses dlsym, but libasan.so only intercepts dlopen, not dlsym:
[hjl@gnu-tools-1 binutils-text]$ nm -D /lib64/libasan.so.4| grep " dl"
0000000000038580 W dlclose
U dl_iterate_phdr
000000000004dc50 W dlopen
U dlsym
U dlvsym
[hjl@gnu-tools-1 binutils-text]$
Testing dlopen for libdl leads to false negative when -fsanitize=address
is used. It results in link failure:
../bfd/.libs/libbfd.a(plugin.o): undefined reference to symbol 'dlsym@@GLIBC_2.16'
dlsym should be used to check if libdl is needed for plugin.
bfd/
PR gas/22318
* configure: Regenerated.
binutils/
PR gas/22318
* configure: Regenerated.
gas/
PR gas/22318
* configure: Regenerated.
gprof/
PR gas/22318
* configure: Regenerated.
ld/
PR gas/22318
* configure: Regenerated.
commit 552d4da4178cc5e8d567ee150462a28d51f08fc0
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Apr 5 15:22:13 2018 -0700
config: Sync with GCC
Sync with GCC
2018-04-05 H.J. Lu <hongjiu.lu@intel.com>
PR gas/22318
* plugins.m4 (AC_PLUGINS): Use dlsym to check if libdl is needed.
2018-02-14 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
PR target/84148
* cet.m4: Check if target support multi-byte NOPS (SSE).
commit c54b27d1c04f53043688d5d3141e74ae5c23aba8
Author: Cary Coutant <ccoutant@gmail.com>
Date: Thu Apr 5 14:51:37 2018 -0700
Improve warnings for relocations referring to discarded sections.
gold/
* target-reloc.h (relocate_section): Add local symbol index or global
symbol name to warning about relocation that refers to discarded
section.
commit 2d8c1a2318a75f43491bdc7acbeb24590145d7a6
Author: Maciej W. Rozycki <macro@mips.com>
Date: Thu Apr 5 14:35:25 2018 -0700
MIPS/binutils/testsuite: Fix `.dc.l' typo in `strip-13mips64.s'
Fix a typo: `.dc.w' -> `.dc.l' in `strip-13mips64.s', correcting a bug
from commit 2f8ceb38991e ("binutils/testsuite: Support REL and MIPS64
reloc formats with `strip-13'"). For relocation format correctness only
as there is no observable change in test results due to the lack of
connection between the second relocation entry affected and the examined
error message produced.
binutils/
* testsuite/binutils-all/strip-13mips64.s: Use `.dc.l' rather
than `.dc.w' in second relocation.
commit 494e49c9855c75e5cf95a2c031401d2d4f5e21fe
Author: Cary Coutant <ccoutant@gmail.com>
Date: Thu Apr 5 09:41:42 2018 -0700
Revert previous patch and apply revised patch.
Revert:
2018-04-05 James Cowgill <james.cowgill@mips.com>
PR gold/22770
* mips.cc (Mips_got_info::record_got_page_entry): Fetch existing
page entries for the object's GOT.
Apply:
PR gold/22770
* mips.cc (Mips_got_info::record_got_page_entry): Don't insert
Got_page_entry for object's GOT.
(Mips_got_info::add_got_page_entries): Add all pages from from's GOT.
Rename to add_got_page_count.
(Got_page_entry): Remove num_pages.
commit 67faf1f4c206516837fa44f6b7d131966be6bf0f
Author: James Cowgill <james.cowgill@mips.com>
Date: Thu Apr 5 08:47:53 2018 -0700
MIPS: Fix GOT page counter in multi-got links
The record_got_page_entry function records and updates the maximum
number of GOT page entries which may be required by an object. In the
case where an existing GOT page entry was expanded, only the entry
belonging to output GOT would have its page count updated. This leaves
the entry belonging to the object GOT with the num_pages count of 1 it
was originally initialized with. Later on when GOTs are being merged in a
multi-got link, this causes the value of entry->num_pages in
add_got_page_entries to always be 1 and underestimates the number of pages
required for the new entry. This in turn leads to an assertion failure in
get_got_page_offset where we run out of pages.
Fix by obtaining the object's GOT entry unconditionally and not just
the first time it gets created. Now that entry2 is always valid, remove
the useless NULL checks.
gold/
PR gold/22770
* mips.cc (Mips_got_info::record_got_page_entry): Fetch existing
page entries for the object's GOT.
commit 043e9508be0a4ea7ab56fd5716e4c06d609d13be
Author: Nick Clifton <nickc@redhat.com>
Date: Thu Apr 5 14:44:05 2018 +0100
Stop the IA64 linker from removing unwind tables when garbage collecting.
PR 23030
* emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Make sure
that the .IA_64.unwind_info and .IA_64.unwind sections are not
subject to garbage collection.
commit 8a76bd3ba43205b76226f41fe73e2840c2444742
Author: Tom Tromey <tom@tromey.com>
Date: Sat Mar 31 12:55:32 2018 -0600
Remove unnecessary include from linespec.h
linespec.h was inculding vec.h, but doesn't expose any VECs.
So, this include can be removed.
ChangeLog
2018-04-05 Tom Tromey <tom@tromey.com>
* linespec.h: Remove include of "vec.h".
commit 8e8d776ead8187343652bda8aa373babe505bd4e
Author: Tom Tromey <tom@tromey.com>
Date: Sat Mar 31 12:52:57 2018 -0600
Remove typep and VEC(typep) from linespec.c
This removes VEC(typep) from linespec.c in favor of std::vector. It
also removes the "typep" typedef. This change allowed the removal of
some cleanups.
I believe the previous cleanup code in find_superclass_methods could
result in a memory leak, so this patch is an improvement in that way
as well.
ChangeLog
2018-04-05 Tom Tromey <tom@tromey.com>
* linespec.c (typep): Remove typedef.
(find_methods, find_superclass_methods): Take a std::vector.
(find_method): Use std::vector.
commit 9b2f85815c57d2eb4322a3d87464b5686cdbb391
Author: Tom Tromey <tom@tromey.com>
Date: Sat Mar 31 12:43:56 2018 -0600
More use of std::vector in linespec.c
This changes some spots in linespec.c to take a std::vector. This
patch spilled out to objc-lang.c a bit as well. This change allows
for the removal of some cleanups.
ChangeLog
2018-04-05 Tom Tromey <tom@tromey.com>
* utils.c (compare_strings): Remove.
* utils.h (compare_strings): Remove.
* objc-lang.h (find_imps): Update.
* objc-lang.c (find_methods): Take a std::vector.
(uniquify_strings, find_imps): Likewise.
* linespec.c (find_methods): Take a std::vector.
(decode_objc): Use std::vector.
(add_all_symbol_names_from_pspace, find_superclass_methods): Take
a std::vector.
(find_method, find_function_symbols): Use std::vector.
commit 459a2e4ccf9aadfba9819facba1c9be5297c1625
Author: Tom Tromey <tom@tromey.com>
Date: Sun Apr 1 09:33:13 2018 -0600
Change streq to return bool
I wanted to use streq with std::unique in another (upcoming) patch in
this seres, so I changed it to return bool. To my surprise, this lead
to regressions. The cause turned out to be that streq was used as an
htab callback -- by casting it to the correct function type. This
sort of cast is invalid, so this patch adds a variant which is
directly suitable for use by htab. (Note that I did not add an
overload, as I could not get that to work with template deduction in
the other patch.)
ChangeLog
2018-04-05 Tom Tromey <tom@tromey.com>
* completer.c (completion_tracker::completion_tracker): Remove
cast.
(completion_tracker::discard_completions): Likewise.
* breakpoint.c (ambiguous_names_p): Remove cast.
* ada-lang.c (_initialize_ada_language): Remove cast.
* utils.h (streq): Update.
(streq_hash): Add new declaration.
* utils.c (streq): Return bool.
(streq_hash): New function.
commit 9be2c17a900178df75a2208fd112ceb4325a70c1
Author: Tom Tromey <tom@tromey.com>
Date: Sat Mar 31 12:21:10 2018 -0600
Remove a string copy from event_location_to_sals
The use of "const" showed that a string copy in event_location_to_sals
was unnecessary. This patch removes it.
ChangeLog
2018-04-05 Tom Tromey <tom@tromey.com>
* linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
Remove a string copy.
commit f73c6ece7888af880d3b03b2d57ee7782f2a539b
Author: Tom Tromey <tom@tromey.com>
Date: Sat Mar 31 12:16:54 2018 -0600
Have filter_results take a std::vector
This chagnes filter_results to take a std::vector, allowing the
removal of some cleanups in its callers.
ChangeLog
2018-04-05 Tom Tromey <tom@tromey.com>
* linespec.c (filter_results): Use std::vector.
(decode_line_2, decode_line_full): Update.
commit 53a0f8a250199af97ff8708e3899835086c7a24d
Author: Tom Tromey <tom@tromey.com>
Date: Sat Mar 31 11:01:55 2018 -0600
Return std::string from canonical_to_fullform
This changes canonical_to_fullform to return a std::string, and
changes decode_line_2 to use std::vector. This allows for the removal
of some cleanups.
ChangeLog
2018-04-05 Tom Tromey <tom@tromey.com>
* linespec.c (canonical_to_fullform): Return std::string.
(filter_results): Update.
(struct decode_line_2_item): Add constructor.
<fullform, displayform>: Now std::string.
(decode_line_2_compare_items): Now a std::sort comparator.
(decode_line_2): Update.
commit a5b5adf529fa64391bc1ef733b3e78f15d94c4b9
Author: Tom Tromey <tom@tromey.com>
Date: Sat Nov 11 11:09:52 2017 -0700
Make copy_token_string return unique_xmalloc_ptr
This changes copy_token_string to return a unique_xmalloc_ptr, which
allows the removal of some cleanups.
ChangeLog
2018-04-05 Tom Tromey <tom@tromey.com>
* linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
(unexpected_linespec_error): Update.
(linespec_parse_basic, parse_linespec): Update.
commit 6a307fc5f59179005e070bd5a5a4cf78a9ecefd4
Author: Tom Tromey <tom@tromey.com>
Date: Sat Mar 31 10:54:25 2018 -0600
Fix some indentation in linespec.c
This removes some leftover comments and fixes the indentation in a
couple of spots in linespec.c.
ChangeLog
2018-04-05 Tom Tromey <tom@tromey.com>
* linespec.c (linespec_parse_basic): Reindent.
commit 41c1efc614472cdc74397e734f5a66018362a80a
Author: Tom Tromey <tom@tromey.com>
Date: Sat Mar 31 10:32:00 2018 -0600
Remove some cleanups from search_minsyms_for_name
This changes struct collect_minsyms to use a std::vector, which
enables the removal of a cleanup from search_minsyms_for_name. This
also changes iterate_over_minimal_symbols to take a
gdb::function_view, which makes a function in linespec.c more
type-safe.
ChangeLog
2018-04-05 Tom Tromey <tom@tromey.com>
* minsyms.h (iterate_over_minimal_symbols): Update.
* minsyms.c (iterate_over_minimal_symbols): Take a
gdb::function_view.
* linespec.c (struct collect_minsyms): Remove.
(compare_msyms): Now a std::sort comparator.
(add_minsym): Add parameters.
(search_minsyms_for_name): Update. Use std::vector.
commit 65bd20451fc7e5aea1f0283433f95fb2fe60771d
Author: Maciej W. Rozycki <macro@mips.com>
Date: Thu Apr 5 13:08:35 2018 +0100
binutils/testsuite: Tighten the error message check with `strip-13'
Avoid false positives and actually verify both that an `unsupported
relocation type 0x8f' message is produced and that no other message is,
except for the final `bad value', in the `strip-13' test. This ensures
that it is a relocation processing error and not a different issue that
has caused `strip' to terminate unsuccessfully, and that the number
representing the unsupported relocation has not been clobbered.
binutils/
* testsuite/binutils-all/strip-13.d: Also expect `unsupported
relocation type 0x8f' error message.
commit 2f8ceb38991ea2ee595afbdd5da51ba1a53cbec7
Author: Maciej W. Rozycki <macro@mips.com>
Date: Thu Apr 5 13:08:35 2018 +0100
binutils/testsuite: Support REL and MIPS64 reloc formats with `strip-13'
Add source variants for the `strip-13' test that produce relocations in
the REL and MIPS64 formats, fixing a failure for the `mips64el-openbsd'
target. This also corrects output for `i*86-*', `i960-*', `m6812-*' and
`m68hc12-*', o32 `mips*-*', and `score*-*' targets, which however does
not show up as a test result change due to lax error message matching
causing `bad value' previously produced by `strip' as a result of input
file rejection to be accepted as a test pass.
For `m6811-*' aka `m68hc11-*' targets this causes a phantom regression,
because they use 16-bit addressing and therefore `.dc.a' emits 16-bit
quantities causing relocation data constructed in assembly not to be as
expected. Previously input was rejected by `strip' with a `bad value'
message and now it is accepted, however due to the relocation data error
the relocation number is not one of the unsupported ones and the tool
completes successfully, which scores as a test failure.
Disable the test case for `m6811-*' and `m68hc11-*' targets then, as it
is a test case bug rather than a problem with the relevant backend. A
separate change to the test case is required to correct this problem, at
which point the test case can be enabled for the affected targets.
binutils/
* testsuite/binutils-all/strip-13.s: Rename to...
* testsuite/binutils-all/strip-13rela.s: ... this.
* testsuite/binutils-all/strip-13rel.s: New test source.
* testsuite/binutils-all/strip-13mips64.s: New test source.
* testsuite/binutils-all/strip-13.d: Remove `arm-*', `d10v-*',
`dlx-*' and `xgate-*' from `not-target' list. Add `m6811-*' and
`m68hc11-*' to `not-target' list.
* testsuite/binutils-all/objcopy.exp: Switch between sources for
`strip-13'.
commit aad7be454bb3c8e2dd44c10cc16c80bacf8f04c0
Author: Maciej W. Rozycki <macro@mips.com>
Date: Thu Apr 5 13:08:35 2018 +0100
binutils/testsuite: Enable `strip-13' test for `hppa*-*'
Based on relocations defined in include/elf/*.h files we have relocation
numbers: 143, 159, 214 and 215 currently not used by any of our ELF
targets. Use 143 then instead of 241 to enable the `strip-13' test for
`hppa*-*' targets. It has a side effect with some targets of verifying
that unused relocations whose numbers are below the respective R_*_max
value are handled correctly.
binutils/
* testsuite/binutils-all/strip-13.s: Use 143 (0x8f) rather than
241 (0xf1) for the relocation number and RELA addend.
* testsuite/binutils-all/strip-13.d: Remove `hppa*-*' from the
`not-target' list.
commit e778be0dd1a16cfd29cbfeec519c24d299334b91
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Apr 5 00:00:24 2018 +0000
Automatic date update in version.in
commit 544838989ab6143242108ddc39e8ea47e4fa8c4b
Author: Alan Modra <amodra@gmail.com>
Date: Wed Apr 4 17:10:36 2018 +0930
[GOLD] Make powerpc64 .branch_lt relro
Better security beats better placement for code optimization.
* powerpc.cc (Target_powerpc::make_brlt_section): Make .branch_lt relro.
commit 0e8452bb2297b5eb98a447f357ac82bece4e7024
Author: Alan Modra <amodra@gmail.com>
Date: Wed Apr 4 12:00:22 2018 +0930
elf-hppa.h warning fix
* elf-hppa.h (elf_hppa_info_to_howto): Init howto to NULL.
(elf_hppa_info_to_howto_rel): Likewise.
commit 89f60df20bc0cb3ac3047d67fcdd4a365cfac931
Author: John David Anglin <danglin@gcc.gnu.org>
Date: Wed Apr 4 18:29:17 2018 -0400
* binutils/MAINTAINERS: Update e-mail address.
commit caf0678c84b5b55fbc4bcc853954745a4ad8b658
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Apr 4 04:36:44 2018 -0700
i386: Clear vex instead of vex.evex
"vex" has many fields to control how to decode an instruction. Clear
all fields in "vex" before decoding an instruction to avoid using values
left from the previous instruction.
gas/
PR binutils/23025
* testsuite/gas/i386/prefix.s: Add tests for vcvtpd2dq with
VEX and EVEX prefixes.
* testsuite/gas/i386/prefix.d: Updated.
opcodes/
PR binutils/23025
* i386-dis.c (get_valid_dis386): Don't set vex.prefix nor vex.w
to 0.
(print_insn): Clear vex instead of vex.evex.
commit 142b7a144b46af91cd59a41a8f87f5f3b0338cdf
Author: Eric Botcazou <ebotcazou@gcc.gnu.org>
Date: Wed Apr 4 12:18:09 2018 +0200
Add blurb about linker changes for Cygwin and Mingw targets.
commit 9d8e8f445c1a021a1e381f4bd0bbc756b4258038
Author: Eric Botcazou <ebotcazou@gcc.gnu.org>
Date: Wed Apr 4 12:13:05 2018 +0200
Speed up direct linking with DLLs on Windows (2/2).
This patch deals with the generation of the import library on the fly.
The implementation is inefficient because the linker makes a lot of
calls to realloc and memmove when importing the symbols in order to
maintain a sorted list of symbols.
This is fixable by relying on the fact that, for every linked DLL,
the list of symbols it exports is already sorted so you can import
them en masse once you have found the insertion point.
ld/
* deffile.h (def_file_add_import_from): Declare.
(def_file_add_import_at): Likewise.
* deffilep.y (fill_in_import): New function extracted from...
(def_file_add_import): ...here. Call it.
(def_file_add_import_from): New function.
(def_file_add_import_at): Likewise.
* pe-dll.c (pe_implied_import_dll): Use an optimized version of the
insertion loop for imported symbols if possible.
commit 317ff0084bc68bfae2eabd82015e9239a68b5195
Author: Eric Botcazou <ebotcazou@gcc.gnu.org>
Date: Wed Apr 4 12:07:50 2018 +0200
Speed up direct linking with DLLs on Windows (1/2).
This patch deals with the auto-import feature. There are 2 versions
of this feature: the original one, which was piggybacked on the OS
loader with an optional help from the runtime (--enable-auto-import
--enable-runtime-pseudo-reloc-v1) and is still the one mostly
documented in the sources and manual; the enhanced one by Kai Tietz,
which is entirely piggybacked on the runtime (--enable-auto-import
--enable-runtime-pseudo-reloc-v2) and is the default for Mingw and
Cygwin nowadays.
The implementation is inefficient because of pe[p]_find_data_imports:
for every undefined symbol, the function walks the entire set of
relocations for all the input files and does a direct name comparison
for each of them.
This is easily fixable by using a hash-based map for v1 and a simple
hash table for v2. This patch leaves v1 alone and only changes v2.
It also factors out pe[p]_find_data_imports into a common function,
removes old cruft left and right, and attempts to better separate
the implementations of v1 and v2 in the code.
ld/
* emultempl/pe.em (U_SIZE): Delete.
(pe_data_import_dll): Likewise.
(make_import_fixup): Return void, take 4th parameter and pass it down
in call to pe_create_import_fixup.
(pe_find_data_imports): Move to...
(gld_${EMULATION_NAME}_after_open): Run the stdcall fixup pass after
the auto-import pass and add a guard before running the latter.
* emultempl/pep.em (U_SIZE): Delete.
(pep_data_import_dll): Likewise.
(make_import_fixup): Return void, take 4th parameter and pass it down
in call to pe_create_import_fixup.
(pep_find_data_imports): Move to...
(gld_${EMULATION_NAME}_after_open): Run the stdcall fixup pass after
the auto-import pass and add a guard before running the latter.
* pe-dll.c (runtime_pseudp_reloc_v2_init): Change type to bfd_boolean.
(pe_walk_relocs_of_symbol): Rename into...
(pe_walk_relocs): ...this. Add 2 more parameters,4th parameter to the
callback prototype and pass 4th parameter in calls to the callback.
If the import hash table is present, invoke the callback on the reloc
if the symbol name is in the table.
(pe_find_data_imports): ...here. Take 2 parameters. Build an import
hash table for the pseudo-relocation support version 2. When it is
built, walk the relocations only once at the end; when it is not, do
not build a fixup when the symbol isn't part of an import table.
Issue the associated warning only after a first fixup is built.
(tmp_seq2): Delete.
(make_singleton_name_imp): Likewise.
(make_import_fixup_mark): Return const char * and a stable string.
(make_import_fixup_entry): Do not deal with the pseudo-relocation
support version 2.
(make_runtime_pseudo_reloc): Factor out code and fix formatting.
(pe_create_import_fixup): Add 5th parameter. Clearly separate the
pseudo-relocation support version 2 from the rest. Fix formatting.
* pe-dll.h (pe_walk_relocs_of_symbol): Delete.
(pe_find_data_imports): Declare.
(pe_create_import_fixup): Add 5th parameter.
* pep-dll.c (pe_data_import_dll): Delete.
(pe_find_data_imports): Define.
(pe_walk_relocs_of_symbol): Delete.
* pep-dll.h (pep_walk_relocs_of_symbol): Delete.
(pep_find_data_imports): Declare.
(pep_create_import_fixup): Add 5th parameter.
* ld.texinfo (--enable-auto-import): Adjust to new implementation.
commit 4fb0d2b912ad079263ed98a3c4d78e5a7ccc93b0
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Apr 4 09:00:18 2018 +0100
Update Spanish translations for ld/ opcodes/ and gold/ sub-directories
commit f1ca0d6d8b3fccc92bf63d5c3c10a206f36debde
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Apr 4 08:35:19 2018 +0100
Retire Jason Eckhardt as i860 maintainer.
* MAINTAINERS: Move Jason Eckhardt to past maintainers section.
commit 8ee55178c22326c3624ad5872dc5382341ddcd2c
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed Apr 4 02:00:49 2018 +0100
PR binutils/22875: HPPA/ELF: Also fail with relocation placeholders
Do not consider R_PARISC_UNIMPLEMENTED placeholder relocation entries of
the `elf_hppa_howto_table' table valid in `info_to_howto' HPPA handlers.
Instead issue an unsupported relocation type error and return a NULL
howto as with relocations whose number is R_PARISC_UNIMPLEMENTED or
beyond.
bfd/
* elf-hppa.h (elf_hppa_info_to_howto): Also return
unsuccessfully for unimplemented relocations.
(elf_hppa_info_to_howto_rel): Likewise.
commit 5d7c8b80485d75242e7c78e79b3ecb4c71abaee3
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed Apr 4 02:00:49 2018 +0100
PR binutils/22875: i860/ELF: Report unsupported relocation types
Complement commit f3185997ac09 ("PR 22875: Stop strip corrupting unknown
relocs"), <https://sourceware.org/ml/binutils/2018-02/msg00445.html>,
and also set the `bfd_error_bad_value' error and report an unsupported
relocation type if a howto lookup fails with the i860 backend, fixing a
confusing `no error' error message and removing a binutils test failure:
failed with: <.../binutils/strip-new: tmpdir/bintest.o: no error>, expected: <.* bad value>
.../binutils/strip-new: tmpdir/bintest.o: no error
FAIL: binutils-all/strip-13
with the `i860-stardent-elf' target.
bfd/
* elf32-i860.c (lookup_howto): Add `abfd' parameter. Set the
`bfd_error_bad_value' error and call `_bfd_error_handler' on a
howto lookup failure.
(elf32_i860_reloc_type_lookup): Adjust `lookup_howto' call
accordingly.
(elf32_i860_info_to_howto_rela): Likewise.
(elf32_i860_relocate_splitn): Likewise.
(elf32_i860_relocate_pc16): Likewise.
(elf32_i860_relocate_pc26): Likewise.
(elf32_i860_relocate_section): Likewise.
commit 707bad1b21c18cf8e570fb8df8f7c5961fb0f3a5
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed Apr 4 02:00:49 2018 +0100
PR binutils/22875: Visium/ELF: Prevent an out-of-bounds howto table access
Prevent an out-of-bounds `visium_elf_howto_table' table access in
`visium_info_to_howto_rela' by using the size of the table rather than
R_VISIUM_max to determine the number of entries in the contiguous
regular Visium relocation range defined and described in the table.
bfd/
* elf32-visium.c (visium_info_to_howto_rela): Correct the range
check for `visium_elf_howto_table' table access.
commit 0cc919dc6abede5e61b9d8234028fba879166088
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed Apr 4 02:00:49 2018 +0100
PR binutils/22875: IQ2000/ELF: Prevent an out-of-bounds howto table access
Prevent an out-of-bounds `iq2000_elf_howto_table' table access in
`iq2000_info_to_howto_rela' by using the size of the table rather than
R_IQ2000_max to determine the number of entries in the contiguous
regular IQ2000 relocation range defined and described in the table.
bfd/
* elf32-iq2000.c (iq2000_info_to_howto_rela): Correct the range
check for `iq2000_elf_howto_table' table access.
commit f428698edfd845a21639f5145cba3772eb92abc2
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed Apr 4 02:00:48 2018 +0100
PR binutils/22875: FRV/ELF: Prevent an out-of-bounds howto table access
Prevent an out-of-bounds `elf32_frv_howto_table' table access in
`frv_info_to_howto_rela' by using the size of the table rather than
R_FRV_max to determine the number of entries in the contiguous regular
FRV relocation range defined and described in the table.
bfd/
* elf32-frv.c (frv_info_to_howto_rela): Correct the range check
for `elf32_frv_howto_table' table access.
commit 7ed6f92aaffdcc0995b0247379fb8ea621854dce
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed Apr 4 02:00:48 2018 +0100
PR binutils/22875: MIPS/ELF: Also fail with relocation placeholders
Do not consider placeholder EMPTY_HOWTO relocation entries valid in
`rtype_to_howto' MIPS handlers. Instead issue an unsupported relocation
type error and return a NULL howto as with relocations outside the three
ISA-specific min-max ranges.
bfd/
* elf32-mips.c (mips_elf32_rtype_to_howto): Also return
unsuccessfully for placeholder howtos.
* elf64-mips.c (mips_elf64_rtype_to_howto): Likewise.
* elfn32-mips.c (mips_elf_n32_rtype_to_howto): Likewise.
commit 270baac0079c128ca6780098c086444d115f4afa
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Apr 4 00:00:24 2018 +0000
Automatic date update in version.in
commit c5edbf3d1c58d59135788f084a3bf681a49e0f9a
Author: Tom Tromey <tom@tromey.com>
Date: Fri Nov 10 19:52:33 2017 -0700
Change read_alphacoff_dynamic_symtab to use gdb::byte_vector
This changes read_alphacoff_dynamic_symtab to use gdb::byte_vector.
This allows for the removal of some cleanups.
Tested by the buildbot; though I don't know whether this code path is
ever actually run.
gdb/ChangeLog
2018-04-03 Tom Tromey <tom@tromey.com>
* mipsread.c (read_alphacoff_dynamic_symtab): Use
gdb::byte_vector.
commit dfdad367e475ae5ba88d9517cf95092df8e71ce0
Author: Maciej W. Rozycki <macro@mips.com>
Date: Tue Apr 3 01:16:44 2018 -0700
MIPS/LD/testsuite: Correct LD emulations for `mips*-*-kfreebsd*-gnu'
Complement commit 86b24e15c45b ("MIPS/LD/testsuite: Correct
comm-data.exp test ABI/emul/endian arrangement") and set LD emulations
correctly for `mips*-*-kfreebsd*-gnu' targets in comm-data.exp, removing
test suite failures:
FAIL: MIPS o32/copyreloc common symbol override test (auxiliary shared object build)
FAIL: MIPS o32/copyreloc common symbol override test
FAIL: MIPS o32/nocopyreloc common symbol override test (auxiliary shared object build)
FAIL: MIPS o32/nocopyreloc common symbol override test
ld/
* testsuite/ld-mips-elf/comm-data.exp: Correct support for
`mips*-*-kfreebsd*-gnu' targets.
commit bce5a025d2ed7eda2c5bbb85bd9b33333ca5d556
Author: Cary Coutant <ccoutant@gmail.com>
Date: Mon Apr 2 16:12:10 2018 -0700
Fix problem where mixed section types can cause internal error during a -r link.
During a -r (or --emit-relocs) link, if two sections had the same name but
different section types, gold would put relocations for both sections into
the same relocation section even though the data sections remained separate.
For .eh_frame sections, when one section is PROGBITS and another is
X86_64_UNWIND, we really should be using the UNWIND section type and
combining the sections anyway. For other sections, we should be
creating one relocation section for each output data section.
gold/
PR gold/23016
* incremental.cc (can_incremental_update): Check for unwind section
type.
* layout.h (Layout::layout): Add sh_type parameter.
* layout.cc (Layout::layout): Likewise.
(Layout::layout_reloc): Create new output reloc section if data
section does not already have one.
(Layout::layout_eh_frame): Check for unwind section type.
(Layout::make_eh_frame_section): Use unwind section type for .eh_frame
and .eh_frame_hdr.
* object.h (Sized_relobj_file::Shdr_write): New typedef.
(Sized_relobj_file::layout_section): Add sh_type parameter.
(Sized_relobj_file::Deferred_layout::Deferred_layout): Add sh_type
parameter.
* object.cc (Sized_relobj_file::check_eh_frame_flags): Check for
unwind section type.
(Sized_relobj_file::layout_section): Add sh_type parameter; pass it
to Layout::layout.
(Sized_relobj_file::do_layout): Make local copy of sh_type.
Force .eh_frame sections to unwind section type.
Pass sh_type to layout_section.
(Sized_relobj_file<size, big_endian>::do_layout_deferred_sections):
Pass sh_type to layout_section.
* output.cc (Output_section::Output_section): Initialize reloc_section_.
* output.h (Output_section::reloc_section): New method.
(Output_section::set_reloc_section): New method.
(Output_section::reloc_section_): New data member.
* target.h (Target::unwind_section_type): New method.
(Target::Target_info::unwind_section_type): New data member.
* aarch64.cc (aarch64_info): Add unwind_section_type.
* arm.cc (arm_info, arm_nacl_info): Likewise.
* i386.cc (i386_info, i386_nacl_info, iamcu_info): Likewise.
* mips.cc (mips_info, mips_nacl_info): Likewise.
* powerpc.cc (powerpc_info): Likewise.
* s390.cc (s390_info): Likewise.
* sparc.cc (sparc_info): Likewise.
* tilegx.cc (tilegx_info): Likewise.
* x86_64.cc (x86_64_info, x86_64_nacl_info): Likewise.
* testsuite/Makefile.am (pr23016_1, pr23016_2): New test cases.
* testsuite/Makefile.in: Regenerate.
* testsuite/testfile.cc: Add unwind_section_type.
* testsuite/pr23016_1.sh: New test script.
* testsuite/pr23016_1a.s: New source file.
* testsuite/pr23016_1b.s: New source file.
* testsuite/pr23016_2.sh: New test script.
* testsuite/pr23016_2a.s: New source file.
* testsuite/pr23016_2b.s: New source file.
commit 8849a5e9edda5f00d727490c7bb8be3c616742ae
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Apr 3 00:00:24 2018 +0000
Automatic date update in version.in
commit b39efc483ac8caefa8b6480b7a01231230bc2298
Author: Weimin Pan <weimin.pan@oracle.com>
Date: Mon Apr 2 16:23:59 2018 -0500
Add myself as a write-after-approval GDB maintainer.
commit 121ad66c941718bb0b1f7caffe0c555829d2fd2b
Author: Joel Brobecker <brobecker@adacore.com>
Date: Mon Apr 2 11:34:11 2018 -0700
Fix merge issues in gdb/ChangeLog and gdb/testsuite/ChangeLog...
... introduced by the previous commit to these files.
Also adjust the date in the new ChangeLog entries (out of date).
commit 79f18731714e7f07af6e78b8da8a1ffacf4247b7
Author: Weimin Pan <weimin.pan@oracle.com>
Date: Wed Mar 28 13:23:48 2018 -0600
Fix infinite recursion when printing static member with typedef
The original problem was fixed (see related PR 22242). But using a typedef
as the declared type for a static member variable, as commented in this PR,
is still causing gdb to get into infinite loop when printing the static
member's value. This problem can be reproduced as follows:
% cat t.cc
class A {
typedef A type;
public:
bool operator==(const type& other) { return true; }
static const type INSTANCE;
};
const A A::INSTANCE;
int main() {
A a;
if (a == A::INSTANCE) {
return -1;
}
return 0;
}
% g++ -g t.cc
% gdb -ex "start" -ex "p a" a.out
The fix is rather trivial - in cp_print_static_field(), should call
check_typedef() to get the static member's real type and use it to
check whether it's a struct or an array.
As Simon suggested, I've added a new test case to the testsuite
and am passing the original type, not the real type, as argument
to both cp_print_value_fields() and val_print().
Re-tested on both aarch64-linux-gnu and amd64-linux-gnu. No regressions.
commit 3d6b3b8221c97c58a2496dfc7dfff30ed07d911a
Author: Joel Brobecker <brobecker@adacore.com>
Date: Mon Mar 26 09:09:56 2018 -0700
gdb/ChangeLog: Fix filenames in a couple of entries
commit 09473be85c13eab0d794e363d898b74d66431d72
Author: Tom Tromey <tom@tromey.com>
Date: Fri Nov 10 13:52:37 2017 -0700
Change rs6000_ptrace_ldinfo to return a byte_vector
This changes rs6000_ptrace_ldinfo to return a byte_vector. I think
this points out an existing double-free in
rs6000_xfer_shared_libraries.
Tested by the buildbot.
gdb/ChangeLog
2018-04-01 Tom Tromey <tom@tromey.com>
* rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
(rs6000_xfer_shared_libraries): Update.
commit a9f4c2f56f87c838c76b590b0ff5a66294e7e20b
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Apr 2 00:00:44 2018 +0000
Automatic date update in version.in
commit ec1f2d91e07522a77cbef7a438e132ff4a2a7839
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sun Apr 1 14:23:17 2018 -0400
Remove char_ptr typedef
Now that all instances of VEC(char_ptr) are gone, we can remove the
typedef. There is just one usage left, that is trivial to replace.
Tested by rebuilding on an enable-targets=all build.
gdb/ChangeLog:
* common/gdb_vecs.h (char_ptr): Remove.
* tracepoint.c (encode_actions_1): Remove usage of char_ptr.
commit a16ffec0da37082ed80116a7afb1971eec9b8842
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Apr 1 00:00:56 2018 +0000
Automatic date update in version.in
commit dc20d41409e645106730e59342a62c317d4ff82d
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Mar 31 00:00:27 2018 +0000
Automatic date update in version.in
commit d8611974cf819e5f8cb9eb36907251f3e2d721c6
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Fri Mar 30 17:18:56 2018 -0400
Remove usage of VEC(char_ptr) in gdbscm_parse_function_args
This is a straightforward replacement, no change in behavior are
intended/expected.
This is the last usage of VEC(char_ptr), so it can now be removed.
gdb/ChangeLog:
* guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
with std::vector.
* common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
commit 17d08cd4137063dbc43d9989b9a5cb315171174f
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Fri Mar 30 17:18:55 2018 -0400
Use std::vector and std::string instead of VEC(char_ptr) in gdbserver tdesc
This is a straightforward replacement, no change in behavior are
intended/expected.
gdb/gdbserver/ChangeLog:
* tdesc.h (struct target_desc) <features>: Change type to
std::vector<std::string>.
* tdesc.c (target_desc::~target_desc): Adjust to std::vector
changes.
(tdesc_get_features_xml): Likewise.
(tdesc_create_feature): Likewise.
commit a18ba4e4c9d64eeb2ea65e5315fbd8b4261a1756
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Fri Mar 30 17:18:54 2018 -0400
Use std::vector in uploaded_tp
This patch changes the VEC(char_ptr) fields in uploaded_tp to use
std::vector<char *>. At first, I wanted to creep in more changes, like
using std::string, but it was making the patch too big and less focused,
so I decided to keep it to just that.
It also looks like the strings in those vectors are never free'd. If
so, we can fix that in another patch.
gdb/ChangeLog:
* tracepoint.h (struct uploaded_tp): Initialize fields.
<actions, step_actions, cmd_strings>: Change type to
std::vector<char *>.
* tracepoint.c (get_uploaded_tp): Allocate with new.
(free_uploaded_tps): Free with delete.
(parse_tracepoint_definition): Adjust to std::vector change.
* breakpoint.c (read_uploaded_action): Likewise.
(create_tracepoint_from_upload): Likewise.
* ctf.c (ctf_write_uploaded_tp): Likewise.
(SET_ARRAY_FIELD): Likewise.
* tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
commit a7961323e2fce4f831e117cc43e20e5144192240
Author: Tom Tromey <tom@tromey.com>
Date: Tue Mar 27 14:42:55 2018 -0600
Remove some cleanups from solib-svr4.c
This removes a few cleanups from solib-svr4.c in a straightforward
way.
gdb/ChangeLog
2018-03-30 Tom Tromey <tom@tromey.com>
* solib-svr4.c (lm_info_read): Use gdb::byte_vector. Return
std::unique_ptr.
(svr4_keep_data_in_core): Update.
(svr4_read_so_list): Update.
commit e83e4e24021acb4b095b1e8a45a51c2ea088a1ed
Author: Tom Tromey <tom@tromey.com>
Date: Tue Mar 27 14:31:10 2018 -0600
Change target_read_string to use unique_xmalloc_ptr
This changes the out parameter of target_read_string to be a
unique_xmalloc_ptr. This avoids a cleanup and sets the stage for more
cleanup removals.
This patch also removes a seemingly needless alloca from
print_subexp_standard.
gdb/ChangeLog
2018-03-30 Tom Tromey <tom@tromey.com>
* windows-nat.c (handle_output_debug_string, handle_exception):
Update.
* target.h (target_read_string): Update.
* target.c (target_read_string): Change "string" to
unique_xmalloc_ptr.
* solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
Update.
* solib-frv.c (frv_current_sos): Update.
* solib-dsbt.c (dsbt_current_sos): Update.
* solib-darwin.c (darwin_current_sos): Update.
* linux-thread-db.c (inferior_has_bug): Update.
* expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
Update. Remove alloca.
* ada-lang.c (ada_main_name): Update.
commit 263db9a1f4105b76ddf00829d50430ea0a3bcba6
Author: Tom Tromey <tom@tromey.com>
Date: Wed Mar 28 15:35:46 2018 -0600
Remove free_dwo_file_cleanup
This removes free_dwo_file_cleanup, the last cleanup in dwarf2read.c.
This is replaced with a unique_ptr; which, despite the fact that a
dwo_file is obstack-allocated, seemed like the best fit.
gdb/ChangeLog
2018-03-30 Tom Tromey <tom@tromey.com>
* dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
(struct dwo_file_deleter): New.
(dwo_file_up): New typedef.
(open_and_init_dwo_file): Use dwo_file_up.
(free_dwo_file_cleanup): Remove.
commit 5dafb3d176ab8d9b9f0a46111d7040bb51ad8f8e
Author: Tom Tromey <tom@tromey.com>
Date: Wed Mar 28 15:21:08 2018 -0600
Remove parameter from free_dwo_file
The objfile parameter to free_dwo_file is unused, so remove it.
gdb/ChangeLog
2018-03-30 Tom Tromey <tom@tromey.com>
* dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
(free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
commit 11ed8cada64e717900117364c2fee0132c1eb099
Author: Tom Tromey <tom@tromey.com>
Date: Wed Mar 28 15:04:30 2018 -0600
Remove free_cached_comp_units cleanups
This changes free_cached_comp_units from a cleanup function to an RAII
class.
gdb/ChangeLog
2018-03-30 Tom Tromey <tom@tromey.com>
* dwarf2read.c (class free_cached_comp_units): New class.
(dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
(free_cached_comp_units): Remove function.
commit 9ae79dac31c2bcbd2f5418da2e12af94060e139a
Author: Tom Tromey <tom@tromey.com>
Date: Wed Mar 28 15:49:24 2018 -0600
Remove make_cleanup_unpush_target
This removes make_cleanup_unpush_target, replacing it with a
unique_ptr. This may seem odd, because the object in question is not
actually freed, but unique_ptr provided the necessary functionality.
Tested by the buildbot.
gdb/ChangeLog
2018-03-30 Tom Tromey <tom@tromey.com>
* utils.h (make_cleanup_unpush_target): Remove.
* inf-ptrace.c (struct target_unpusher): New.
(target_unpush_up) New typedef.
(inf_ptrace_create_inferior, inf_ptrace_attach): Use
target_unpush_up.
* utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
commit f2ab4b4206781d75c76962b3ef7dd08b3489c40e
Author: Peter Bergner <bergner@vnet.ibm.com>
Date: Fri Mar 30 08:33:27 2018 -0500
Make power8 the default cpu when assembling for 64-bit little endian targets.
gas/
PR binutils/23013
* config/tc-ppc.c (ppc_set_cpu): Select appropriate cpu when ppc_obj64
and little endian.
commit f7c486b165059e9d429c89e4152197061af30c31
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Mar 30 00:00:36 2018 +0000
Automatic date update in version.in
commit 75def2abc3dafb52418405905cd49e9c107c2640
Author: Maciej W. Rozycki <macro@mips.com>
Date: Thu Mar 29 14:09:48 2018 +0100
PR binutils/22875: MIPS: Remove duplicate unsupported relocation processing
Remove a duplicate `unsupported relocation type' message and the setting
of the `bfd_error_bad_value' error from `mips_elf32_rtype_to_howto',
added with commit f3185997ac09 ("PR 22875: Stop strip corrupting unknown
relocs"), <https://sourceware.org/ml/binutils/2018-02/msg00445.html>.
This message is already produced and the `bfd_error_bad_value' error set
by `mips_elf32_rtype_to_howto' before a NULL howto is returned, so there
is no need to repeat these actions here.
bfd/
* elf32-mips.c (mips_info_to_howto_rel): Remove the calls to
`_bfd_error_handler' and to set the `bfd_error_bad_value' error.
commit 515d75a48606ba4537b69747774c5a93da4d6ebc
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Mar 29 00:00:32 2018 +0000
Automatic date update in version.in
commit 8b6a949ae55d3adbade84af4e11415d764647fc9
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed Mar 28 22:42:17 2018 +0100
BFD/PA: Remove ATTRIBUTE_UNUSED from `elf_hppa_info_to_howto_rel'
Remove ATTRIBUTE_UNUSED annotation from the `abfd' parameter in
`elf_hppa_info_to_howto' now that commit f3185997ac09 ("PR 22875: Stop
strip corrupting unknown relocs"),
<https://sourceware.org/ml/binutils/2018-02/msg00445.html>, made it
used.
bfd/
* elf-hppa.h (elf_hppa_info_to_howto_rel): Remove
ATTRIBUTE_UNUSED from `abfd'.
commit d81270c36986a4e470b0017bad5f415a2f916616
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed Mar 28 22:42:17 2018 +0100
BFD/PA: Correct formatting in `elf_hppa_info_to_howto_rel'
Wrap the `_bfd_error_handler' call to fit in 80 columns, fixing commit
e8f5af786c76 ("Use standardized error message for unrecognized relocs.").
bfd/
* elf-hppa.h (elf_hppa_info_to_howto_rel): Correct
`_bfd_error_handler' call formatting.
commit 60dceb8d3b04ad8d19b6b6a5ca99b4077d2bb818
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed Mar 28 22:42:17 2018 +0100
MIPS/BFD: Call `mips_elf32_rtype_to_howto' directly with o32 (ChangeLog)
Correct ChangeLog date for commit 8205a328f8b8 ("MIPS/BFD: Call
`mips_elf32_rtype_to_howto' directly with o32").
commit 24538276c675851520d45714661e7cf9bedd55bb
Author: Cary Coutant <ccoutant@gmail.com>
Date: Tue Mar 27 17:49:49 2018 -0700
Use top-level config support for enabling plugins.
Also recognizes --plugin options when plugins are disabled.
2018-03-28 Cary Coutant <ccoutant@gmail.com>
gold/
PR gold/21423
PR gold/22500
* configure.ac: Call AC_USE_SYSTEM_EXTENSIONS.
Replace check for --enable-plugins with AC_PLUGINS.
* options.cc (parse_plugin, parse_plugin_opt): Remove #ifdef.
(General_options::finalize): Check if plugins enabled.
* options.h (--plugin, --plugin-opt): Define even if plugins not
enabled.
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* testsuite/Makefile.in: Regenerate.
commit 8205a328f8b852086652841dfc2aff4ca0b16d45
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed Mar 28 21:37:37 2018 +0100
MIPS/BFD: Call `mips_elf32_rtype_to_howto' directly with o32
Call `mips_elf32_rtype_to_howto' directly rather than via the
`->elf_backend_mips_rtype_to_howto' method in the o32 backend,
complementing commit 861fb55ab50a ("Defer allocation of R_MIPS_REL32 GOT
slots"), <https://sourceware.org/ml/binutils/2008-08/msg00096.html>, and
reverting the change to `mips_info_to_howto_rel' originally made with
commit 0a44bf6950b3 ("mips-vxworks support"),
<https://sourceware.org/ml/binutils/2006-03/msg00179.html>.
With `mips_vxworks_rtype_to_howto' gone there is a single backend method
used across all o32 targets, so there in no need for the indirection and
the associated extra cost. This also makes the o32 backend consistent
with the n32 and n64 backends.
bfd/
* elf32-mips.c (mips_info_to_howto_rel): Call
`mips_elf32_rtype_to_howto' directly rather than via
`->elf_backend_mips_rtype_to_howto'.
commit e04ef02299ad4aae08da857e8535d98e8643a274
Author: Renlin Li <renlin.li@arm.com>
Date: Wed Mar 28 18:06:05 2018 +0100
[2/2][LD][AARCH64]Add BFD_RELOC_AARCH64_TLSLE_LDST8/16/32/64_TPREL_LO12 support in LD.
This patch adds the following relocation support into binutils bfd linker.
BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12,
BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12_NC,
BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12,
BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12_NC,
BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12,
BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12_NC,
BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12,
BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12_NC.
Those relocations includes both ip64 and ilp32 variant.
commit 84f1b9fb081372a726fd70dfd8258a707833caef
Author: Renlin Li <renlin.li@arm.com>
Date: Wed Mar 28 18:03:55 2018 +0100
[1/2][GAS][AARCH64]Add BFD_RELOC_AARCH64_TLSLE_LDST8/16/32/64_TPREL_LO12 support in GAS.
This patch adds the following relocation support into binutils gas.
BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12,
BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12_NC,
BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12,
BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12_NC,
BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12,
BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12_NC,
BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12,
BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12_NC.
Those relocations includes both ip64 and ilp32 variant.
commit e82e6b2b19eb796fed161b1658de6d5f763c18de
Author: Cary Coutant <ccoutant@gmail.com>
Date: Tue Mar 27 18:24:48 2018 -0700
Add support for R_AARCH64_TLSLE_LDST8_TPREL_LO12, etc.
elfcpp/
PR gold/22969
* aarch64.h: Fix spelling of R_AARCH64_TLSLE_LDST16_TPREL_LO12_NC.
gold/
PR gold/22969
* aarch64-reloc.def: Add TLSLE_LDST* relocations.
* aarch64.cc (Target_aarch64::optimize_tls_reloc): Likewise.
(Target_aarch64::Scan::local): Likewise.
(Target_aarch64::Scan::global): Likewise.
(Target_aarch64::Relocate::relocate): Likewise.
(Target_aarch64::Relocate::relocate_tls): Likewise.
commit c39e5b267180a5d61a6434b24bcc7888bf3c0ca7
Author: Jan Beulich <jbeulich@novell.com>
Date: Wed Mar 28 14:25:07 2018 +0200
x86: drop VecESize
It again can be inferred from other information.
The vpopcntd templates all need to have Dword added to their memory
operands; the lack thereof was actually a bug preventing certain Intel
syntax code to assemble, so test cases get extended.
commit 8e6e0792d17be5d4321def520d12c1764dc0ba2a
Author: Jan Beulich <jbeulich@novell.com>
Date: Wed Mar 28 14:24:05 2018 +0200
x86: convert broadcast insn attribute to boolean
The (only) valid broadcast type for an insn can be inferred from other
information.
commit 9f123b911ec8c460304c3e1a3f18f1c2a311d97a
Author: Jan Beulich <jbeulich@novell.com>
Date: Wed Mar 28 14:22:56 2018 +0200
x86: fold to-scalar-int conversion insns
commit 9646c87b5a6c0462e8a9b6305d9e449bd099f19d
Author: Jan Beulich <jbeulich@novell.com>
Date: Wed Mar 28 14:22:00 2018 +0200
x86: don't show suffixes for to-scalar-int conversion insns
In the course of folding their patterns (possible now that the pointless
and partly even bogus VecESize are no longer in the way) I've noticed
that vcvt*2usi, other than their vcvt*2si counterparts, don't allow for
any suffixes. As that is supposedly intentional, make the disassembler
consistently omit suffixes for all to-scalar-int conversion insns.
commit f8745e1cd139b5c6a5bd8a30ea84ccbd45dec81c
Author: Eric Botcazou <ebotcazou@gcc.gnu.org>
Date: Wed Mar 28 12:17:15 2018 +0200
PR ld/22972 on SPARC.
This is a regression for the corner case of a hidden symbol in a PIC/PIE
binary which is subject to both a new-style GOTDATA relocation and an
old-style GOT relocation. In this case, depending on the link order,
the R_SPARC_RELATIVE dynamic relocation for the GOT slot needed because
of the old-style relocation can be replaced with R_SPARC_NONE coming
from the GOTDATA relocation.
The fix simply records whether an old-style GOT relocation is seen for a
symbol and prevents the R_SPARC_NONE from being generated in this case.
bfd/
* elfxx-sparc.c (struct _bfd_sparc_elf_link_hash_entry): Add new flag
has_old_style_got_reloc.
(_bfd_sparc_elf_check_relocs) <GOT relocations>: Set it for old-style
relocations. Fix a couple of long lines.
(_bfd_sparc_elf_relocate_section) <R_SPARC_GOTDATA_OP>: Do not generate
a R_SPARC_NONE for the GOT slot if the symbol is also subject to
old-style GOT relocations.
ld/
* testsuite/ld-sparc/sparc.exp: Add test for mixed GOTDATA/GOT relocs.
* testsuite/ld-sparc/gotop-hidden.c: New file.
* testsuite/ld-sparc/got-hidden32.s: Likewise.
* testsuite/ld-sparc/got-hidden64.s: Likewise.
* testsuite/ld-sparc/pass.out: Likewise.
commit c8d59609b1cf66eaff3c486e483f5e3d647c66ff
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Mar 28 09:44:45 2018 +0100
Enhance the AARCH64 assembler to support LDFF1xx instructions which use REG+REG addressing with an assumed offset register.
PR 22988
opcode * opcode/aarch64.h (enum aarch64_opnd): Add
AARCH64_OPND_SVE_ADDR_R.
opcodes * aarch64-tbl.h (aarch64_opcode_table): Add entries for LDFF1xx
instructions with only a base address register.
* aarch64-opc.c (operand_general_constraint_met_p): Add code to
handle AARHC64_OPND_SVE_ADDR_R.
(aarch64_print_operand): Likewise.
* aarch64-asm-2.c: Regenerate.
* aarch64_dis-2.c: Regenerate.
* aarch64-opc-2.c: Regenerate.
gas * config/tc-aarch64.c (parse_operands): Add code to handle
AARCH64_OPN_SVE_ADDR_R.
* testsuite/gas/aarch64/sve.s: Add tests for LDFF1xx instructions
with an assumed XZR offset address register.
* testsuite/gas/aarch64/sve.d: Update expected disassembly.
commit 9c75b45645acb30c42f09b80cbaadbde391aa7b2
Author: Roland McGrath <mcgrathr@google.com>
Date: Tue Mar 27 16:27:03 2018 -0700
gold/testsuite: Fix bad regexp in split_x86_64.sh
gold/
* testsuite/split_x86_64.sh: Fix bad regexp.
commit bbcd71b48044bdcee3641b93272c7bc968093907
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Mar 28 00:00:30 2018 +0000
Automatic date update in version.in
commit 5aa892761c6a9f76c5b5ec2a9509e994b4f4de07
Author: Tom Tromey <tom@tromey.com>
Date: Thu Mar 22 10:41:58 2018 -0600
Remove cleanups from prompt_for_continue
This removes the cleanups from prompt_for_continue by the use of
unique_xmalloc_ptr.
gdb/ChangeLog
2018-03-27 Tom Tromey <tom@tromey.com>
* utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
commit 1dbeed45b6a81ddcb725b68ff12236e7c8386a47
Author: Tom Tromey <tom@tromey.com>
Date: Thu Mar 22 10:31:41 2018 -0600
Remove cleanups from gdb_readline_wrapper
This removes some cleanups from gdb_readline_wrapper by changing the
existing gdb_readline_wrapper_cleanup struct to have a constructor and
destructor, and then changing gdb_readline_wrapper to simply
instantiate it on the stack.
gdb/ChangeLog
2018-03-27 Pedro Alves <palves@redhat.com>
Tom Tromey <tom@tromey.com>
* top.c (class gdb_readline_wrapper_cleanup): Add constructor,
destructor. Now a class.
(gdb_readline_wrapper_cleanup): Remove function.
(gdb_readline_wrapper): Remove cleanups.
commit c819b2c0b216c69a4ae5bfba0eac71ffdf1b3596
Author: Tom Tromey <tom@tromey.com>
Date: Wed Mar 14 16:38:02 2018 -0600
C++-ify typedef hash
This changes the typedef_hash_table structure to be a C++ class. It
adds constructors and destructors and changes some functions to be
methods of the class. Then it changes the various users of this class
to adapt. This allows for the removal of some cleanups.
Regression tested by the buildbot.
gdb/ChangeLog
2018-03-27 Tom Tromey <tom@tromey.com>
* typeprint.h (struct type_print_options) <local_typedefs,
global_typedefs>: Remove "struct" keyword.
(class typedef_hash_table): New class.
(recursively_update_typedef_hash, add_template_parameters)
(create_typedef_hash, free_typedef_hash, copy_typedef_hash)
(find_typedef_in_hash): Don't declare.
* typeprint.c (struct typedef_hash_table): Move to typeprint.h.
(typedef_hash_table::recursively_update): Rename from
recursively_update_typedef_hash. Now a member.
(typedef_hash_table::add_template_parameters): Rename from
add_template_parameters. Now a member.
(typedef_hash_table::typedef_hash_table): Now a constructor;
rename from create_typedef_hash.
(typedef_hash_table::~typedef_hash_table): Now a destructor;
rename from free_typedef_hash.
(do_free_typedef_hash, make_cleanup_free_typedef_hash)
(do_free_global_table): Remove.
(typedef_hash_table::typedef_hash_table): New constructor; renamed
from copy_type_recursive.
(create_global_typedef_table): Remove.
(typedef_hash_table::find_global_typedef): Now a member of
typedef_hash_table.
(typedef_hash_table::find_typedef): Rename from
find_typedef_in_hash; now a member.
(whatis_exp): Update.
* extension.h (struct ext_lang_type_printers): Add constructor and
destructor.
(start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
declare.
* extension.c (ext_lang_type_printers::ext_lang_type_printers):
Now a constructor; rename from start_ext_lang_type_printers.
(ext_lang_type_printers): Now a destructor; rename from
free_ext_lang_type_printers.
* c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
Update.
(c_type_print_base_struct_union): Update. Remove cleanups.
commit 608219fb2917d407058952adf164eb616880662b
Author: Tom Tromey <tom@tromey.com>
Date: Tue Mar 27 08:55:13 2018 -0600
Include <cmath> in dwarf-index-write.c
On x86-64 Fedora 26, when building with the system gcc, I get:
../../binutils-gdb/gdb/dwarf-index-write.c: In member function âvoid debug_names::build()â:
../../binutils-gdb/gdb/dwarf-index-write.c:705:13: error: âpowâ is not a member of âstdâ
There are actually more messages, but this is sufficient to show the
problem.
The fix is to include <cmath>.
I'm checking this in as obvious. Tested by building.
gdb/ChangeLog
2018-03-27 Tom Tromey <tom@tromey.com>
* dwarf-index-write.c: Include <cmath>.
commit 3fcded8f30b6b0c1930d4f82914476315027aa2e
Author: Joel Brobecker <brobecker@adacore.com>
Date: Tue Mar 27 09:17:45 2018 -0500
set varsize-limit: New GDB setting for maximum dynamic object size
This is a command we somehow forgot to contribute at the time the Ada
language was first contributed to the FSF. This command allows
the user to change the maximum size we allow when reading memory
from dynamic objects (the default is 65536 bytes).
At the moment, this limit is only used by Ada, and so the implementation
is kept inside ada-lang.c. However, it is conceivable that other language
might want to use it also to handle the same kind of issues; for instance,
this might be useful when handling dynamic types in C. So the name
of the setting was made language-neutral, to allow for this.
Note that an alias for "set var" needs to be introduced as well.
We are not adding a test for that, since this is a feature that is
already exercized by numerous existing tests.
gdb/ChangeLog
* NEWS: Add entry describing new "set|show varsize-limit" command.
* ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
command.
* printcmd.c (_initialize_printcmd): Add "set var" alias of
"set variable".
gdb/doc/ChangeLog:
* gdb.texinfo (Ada Settings): New subsubsection.
gdb/testsuite/ChangeLog:
* gdb.ada/varsize_limit: New testcase.
Tested on x86_64-linux.
commit cd4fb1b2ffc88911e4109444ff729e31920d01ec
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Tue Mar 27 10:07:44 2018 -0400
Move DWARF index-related things to a separate file
I want to add a DWARF index-related feature (automatically produce index
files when loading objfiles in GDB), but I don't want to add many
hundred lines to the already too big dwarf2read.c. I thought it would
be a logical split to move everything related to the DWARF index to its
own file.
I first tried to move everything that reads and writes DWARF indices to
a separate file, but found that the "read" part is a little bit
entangled with the rest of dwarf2read.c, so the line is hard to draw
about where to split. The write part is quite isolated though, so I
moved this part to a new file, dwarf-index-write.c. Some things are
necessary to both reading and writing indices, so I placed them in
dwarf-index-common.{c,h}. The idea would be to have a
dwarf-index-read.c eventually that would use it too (for now that code
is still in dwarf2read.c).
This required moving some things to a new dwarf2read.h header, so they
can be read by the code that writes the index.
The patch is big in number of lines, but it's all existing code being
moved around. The only changes are that some functions are not static
anymore, a declaration is added in a .h file, and therefore the comment
is moved there.
I built-tested it with a little and big endian target.
This patch is also available on the users/simark/split-dwarf2read
branch.
gdb/ChangeLog:
* Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
dwarf-index-write.c
(HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
* dwarf-index-common.c: New file.
* dwarf-index-common.h: New file.
* dwarf-index-write.c: New file.
* dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
(struct dwarf2_section_info): Move from here.
(dwarf2_section_info_def): Likewise.
(DEF_VEC_O (dwarf2_section_info_def)): Likewise.
(offset_type): Likewise.
(DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
(DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
(DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
(byte_swap): Likewise.
(MAYBE_SWAP): Likewise.
(dwarf2_per_cu_ptr): Likewise.
(DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
(struct tu_stats): Likewise.
(struct dwarf2_per_objfile): Likewise.
(struct dwarf2_per_cu_data): Likewise.
(struct signatured_type): Likewise.
(sig_type_ptr): Likewise.
(DEF_VEC_P (sig_type_ptr)): Likewise.
(INDEX4_SUFFIX): Likewise.
(INDEX5_SUFFIX): Likewise.
(DEBUG_STR_SUFFIX): Likewise.
(dwarf2_read_section): Make non-static.
(mapped_index_string_hash): Move from here.
(dwarf5_djb_hash): Likewise.
(file_write): Likewise.
(class data_buf): Likewise.
(struct symtab_index_entry): Likewise.
(struct mapped_symtab): Likewise.
(find_slot): Likewise.
(hash_expand): Likewise.
(add_index_entry): Likewise.
(uniquify_cu_indices): Likewise.
(class c_str_view): Likewise.
(class c_str_view_hasher): Likewise.
(class vector_hasher): Likewise.
(write_hash_table): Likewise.
(psym_index_map): Likewise.
(struct addrmap_index_data): Likewise.
(add_address_entry): Likewise.
(add_address_entry_worker): Likewise.
(write_address_map): Likewise.
(symbol_kind): Likewise.
(write_psymbols): Likewise.
(struct signatured_type_index_data): Likewise.
(write_one_signatured_type): Likewise.
(recursively_count_psymbols): Likewise.
(recursively_write_psymbols): Likewise.
(class debug_names): Likewise.
(check_dwarf64_offsets): Likewise.
(psyms_seen_size): Likewise.
(write_gdbindex): Likewise.
(write_debug_names): Likewise.
(assert_file_size): Likewise.
(write_psymtabs_to_index): Likewise.
(save_gdb_index_command): Likewise.
(_initialize_dwarf2_read): Don't register the "save gdb-index"
command.
* dwarf2read.h: New file.
commit 59cc4834e53565da1de4a7b615ed8890ed55c7da
Author: Joel Brobecker <brobecker@adacore.com>
Date: Tue Mar 27 08:57:16 2018 -0500
problem looking up some symbols when they have a linkage name
This patch fixes a known failure in gdb.ada/maint_with_ada.exp
(maintenance check-psymtabs). Another way to witness the same
issue is by considering the following Ada declarations...
type Wrapper is record
A : Integer;
end record;
u00045 : constant Wrapper := (A => 16#060287af#);
pragma Export (C, u00045, "symada__cS");
... which declares a variable name "u00045" but with a linkage
name which is "symada__cS". This variable is a record with one
component, the Ada equivalent of a struct with one field in C.
Trying to print that variable's value currently yields:
(gdb) p /x <symada__cS>
'symada(char, signed)' has unknown type; cast it to its declared type
This indicates that GDB was only able to find the minimal symbol,
but not the full symbol. The expected output is:
(gdb) print /x <symada__cS>
$1 = (a => 0x60287af)
The error message gives a hint about what's happening: We processed
the symbol through gdb_demangle, which in the case of this particular
symbol name, ends up matching the C++ naming scheme. As a result,
the demangler transforms our symbol name into 'symada(char, signed)',
thus breaking Ada lookups.
This patch fixes the issue by first introducing a new language_defn
attribute called la_store_sym_names_in_linkage_form_p, which is a boolean
to be set to true for the few languages that do not want their symbols
to have their names stored in demangled form, and false otherwise.
We then use this language attribute to skip the call to gdb_demangle
for all languages whose la_store_sym_names_in_linkage_form_p is true.
In terms of the selection of languages for which the new attribute
is set to true, the selection errs on the side of preserving the
existing behavior, and only changes the behavior for the languages
where we are certain storing symbol names in demangling form is not
needed. It is conceivable that other languages might be in the same
situation, but I not knowing in detail the symbol name enconding
strategy, I decided to play it safe and let other language maintainers
potentially adjust their language if it makes sense to do so.
gdb/ChangeLog:
PR gdb/22670
* dwarf2read.c (dwarf2_physname): Do not return the demangled
symbol name if the CU's language stores symbol names in linkage
format.
* language.h (struct language_defn)
<la_store_sym_names_in_linkage_form_p>: New field. Adjust
all instances of this struct.
gdb/testsuite/ChangeLog:
* gdb.ada/maint_with_ada.exp: Remove PR gdb/22670 setup_kfail.
* gdb.ada/notcplusplus: New testcase.
* gdb.base/c-linkage-name.c: New file.
* gdb.base/c-linkage-name.exp: New testcase.
Tested on x86_64-linux.
This also passes AdaCore's internal GDB testsuite.
commit 675015399bf80896706865e3d77d3af7fc925932
Author: Tom Tromey <tom@tromey.com>
Date: Fri Mar 23 10:40:00 2018 -0600
Remove verbose code from backtrace command
In https://sourceware.org/ml/gdb-patches/2017-06/msg00741.html,
Pedro asks:
> Doesn't the "info verbose on" bit affect frame filters too?
The answer is that yes, it could. However, it's not completely
effective, because the C code can't guess how many frames might need
to be unwound to satisfy the request -- a frame filter will request as
many frames as it needs.
Also, I tried removing this code from backtrace, and I think the
result is better without it. In particular, now the expansion line
occurs just before the frame that caused the expansion, like:
(gdb) bt no-filters
#0 0x00007ffff576cecd in poll () from /lib64/libc.so.6
Reading in symbols for ../../binutils-gdb/gdb/event-loop.c...done.
#1 0x00000000007ecc33 in gdb_wait_for_event (block=1)
at ../../binutils-gdb/gdb/event-loop.c:772
#2 0x00000000007ec006 in gdb_do_one_event ()
at ../../binutils-gdb/gdb/event-loop.c:347
#3 0x00000000007ec03e in start_event_loop ()
at ../../binutils-gdb/gdb/event-loop.c:371
Reading in symbols for ../../binutils-gdb/gdb/main.c...done.
#4 0x000000000086693d in captured_command_loop (
Reading in symbols for ../../binutils-gdb/gdb/exceptions.c...done.
data=0x0) at ../../binutils-gdb/gdb/main.c:325
So, I am proposing this patch to simply remove this code.
gdb/ChangeLog
2018-03-26 Tom Tromey <tom@tromey.com>
* stack.c (backtrace_command_1): Remove verbose code.
commit 76c939acfd21928957b45816bf78935363438b0a
Author: Tom Tromey <tom@tromey.com>
Date: Fri Mar 23 10:32:26 2018 -0600
Simplify exception handling in py-framefilter.c
This patch changes py-framefilter.c as suggested by Pedro in:
https://sourceware.org/ml/gdb-patches/2017-06/msg00748.html
In particular, gdb exceptions are now caught at the outermost layer,
rather than in each particular function. This simplifies much of the
code.
gdb/ChangeLog
2018-03-26 Tom Tromey <tom@tromey.com>
* python/py-framefilter.c (py_print_type): Don't catch
exceptions. Return void.
(py_print_value): Likewise.
(py_print_single_arg): Likewise.
(enumerate_args): Don't catch exceptions.
(py_print_args): Likewise.
(py_print_frame): Likewise.
(gdbpy_apply_frame_filter): Catch exceptions here.
commit 9507b29c0a00fb62f015fe69f82aaf8f5377ab35
Author: Tom Tromey <tom@tromey.com>
Date: Fri Mar 23 10:29:28 2018 -0600
Improve "backtrace" help text
This improves help text in stack.c in two ways. First, it removes
trailing newlines from various help strings. I think these are never
needed. Second, it adds a "Usage" line to the "backtrace" text, as
suggested by Pedro.
gdb/ChangeLog
2018-03-26 Tom Tromey <tom@tromey.com>
* stack.c (_initialize_stack): Remove trailing newlines from help
text. Add "Usage" line to "backtrace" help.
commit eb68e48764d4b038858dd4255ed248dbee6c4c0e
Author: Tom Tromey <tom@tromey.com>
Date: Mon Apr 24 21:59:43 2017 -0600
Call wrap_hint in one more spot in py-framefilter.c
PR python/16486 notes that "bt" output is still wrapped differently
when a frame filter is in use. This patch brings it a bit closer by
adding one more wrap_hint call, in a place where stack.c does this as
well.
gdb/ChangeLog
2018-03-26 Tom Tromey <tom@tromey.com>
PR python/16486:
* python/py-framefilter.c (py_print_args): Call wrap_hint.
commit 1f111921a0f8e3f62a19808349ff9bcbd4e54043
Author: Tom Tromey <tom@tromey.com>
Date: Mon Apr 24 21:41:56 2017 -0600
Return EXT_LANG_BT_ERROR in one more spot in py-framefilter.c
While reading py-framefilter.c, I found one spot where an exception
could be caught but then not be turned into EXT_LANG_BT_ERROR. This
patch fixes this spot.
gdb/ChangeLog
2018-03-26 Tom Tromey <tom@tromey.com>
* python/py-framefilter.c (py_print_single_arg): Return
EXT_LANG_BT_ERROR from catch.
commit fb7eb8b5826f059e2b7a18e42ff9c20972e626bc
Author: Tom Tromey <tom@tromey.com>
Date: Mon Apr 24 21:03:22 2017 -0600
Move some code later in backtrace_command_1
PR backtrace/15584 notes that some code in backtrace_command_1 is not
useful when frame filters are in use. This patch moves this code into
the no-frame-filters "if". This also removes the unused local
"trailing_level", which I noticed while moving the code around.
gdb/ChangeLog
2018-03-26 Tom Tromey <tom@tromey.com>
PR backtrace/15584:
* stack.c (backtrace_command_1): Move some code into no-filters
"if".
commit 4ca59a9f3616ba324952632233acc657fffa8be1
Author: Tom Tromey <tom@tromey.com>
Date: Mon Apr 24 21:47:59 2017 -0600
Throw a "quit" on a KeyboardException in py-framefilter.c
If a C-c comes while the Python code for a frame filter is running, it
will be turned into a Python KeyboardException. It seems good for
this to be treated like a GDB quit, so this patch changes
py-framefilter.c to notice this situation and call throw_quit in this
case.
gdb/ChangeLog
2018-03-26 Tom Tromey <tom@tromey.com>
* python/py-framefilter.c (throw_quit_or_print_exception): New
function.
(gdbpy_apply_frame_filter): Use it.
gdb/testsuite/ChangeLog
2018-03-26 Tom Tromey <tom@tromey.com>
* gdb.python/py-framefilter.exp: Add test for KeyboardInterrupt.
* gdb.python/py-framefilter.py (name_error): New global.
(ErrorInName.function): Use name_error.
commit 92256134f3e5557dcc321c63c48e8175ea90ca27
Author: Tom Tromey <tom@tromey.com>
Date: Mon Apr 24 20:59:37 2017 -0600
Allow C-c to work in backtrace in more cases
PR cli/17716 notes that it is difficult to C-c (or "q" at a pagination
prompt) while backtracing using a frame filter. One reason for this
is that many places in py-framefilter.c use RETURN_MASK_ALL in a
try/catch.
This patch changes these spots to use RETURN_MASK_ERROR instead. This
is safe to do because this entire file is exception safe now.
gdb/ChangeLog
2018-03-26 Tom Tromey <tom@tromey.com>
PR cli/17716:
* python/py-framefilter.c (py_print_type, py_print_value)
(enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
RETURN_MASK_ERROR.
commit 7a630bc2f99fcd55ddd83274574531d526ca1925
Author: Tom Tromey <tom@tromey.com>
Date: Sun Apr 23 11:23:43 2017 -0600
Avoid manual resource management in py-framefilter.c
This patch removes the last bit of manual resource management from
py-framefilter.c. This will be useful in the next patch.
gdb/ChangeLog
2018-03-26 Tom Tromey <tom@tromey.com>
* python/py-framefilter.c (enumerate_args): Use
gdb::unique_xmalloc_ptr.
commit 63283d4a2983eaefd5d0860ddffcf946f0fe92db
Author: Tom Tromey <tom@tromey.com>
Date: Sun Apr 23 11:07:26 2017 -0600
Remove EXT_LANG_BT_COMPLETED
While looking at the frame filter code, I noticed that
EXT_LANG_BT_COMPLETED is not really needed. Semantically there is no
difference between the "completed" and "ok" results. So, this patch
removes this constant.
gdb/ChangeLog
2018-03-26 Tom Tromey <tom@tromey.com>
* python/py-framefilter.c (py_print_frame): Return
EXT_LANG_BT_OK.
(gdbpy_apply_frame_filter): Update comment.
* extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
Remove.
<EXT_LANG_BT_NO_FILTERS>: Change value.
commit 978d6c756fcb0332ddf12e19305dd0e53b98a93d
Author: Tom Tromey <tom@tromey.com>
Date: Sun Apr 23 11:03:57 2017 -0600
Allow hiding of some filtered frames
When a frame filter elides some frames, they are still printed by
"bt", indented a few spaces. PR backtrace/15582 notes that it would
be nice for users if elided frames could simply be dropped. This
patch adds this capability.
gdb/ChangeLog
2018-03-26 Tom Tromey <tom@tromey.com>
PR backtrace/15582:
* stack.c (backtrace_command): Parse "hide" argument.
* python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
* extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
constant.
gdb/doc/ChangeLog
2018-03-26 Tom Tromey <tom@tromey.com>
PR backtrace/15582:
* gdb.texinfo (Backtrace): Mention "hide" argument.
gdb/testsuite/ChangeLog
2018-03-26 Tom Tromey <tom@tromey.com>
PR backtrace/15582:
* gdb.python/py-framefilter.exp: Add "bt hide" test.
commit 1cf7e64086d1490649dc56e1c0505be91c600218
Author: Tom Tromey <tom@tromey.com>
Date: Sun Apr 23 11:02:52 2017 -0600
Change backtrace_command_1 calling to use flags
The next patch will add more flags to backtrace_command_1; and rather
than add another boolean argument, this patch changes it to accept a
flags value.
gdb/ChangeLog
2018-03-26 Tom Tromey <tom@tromey.com>
* stack.c (backtrace_command_1): Remove "show_locals" parameter,
add "flags".
(backtrace_command): Remove "fulltrace", add "flags".
commit ea3b06874c8a1037bad4fd5b9396d196e6963ac6
Author: Tom Tromey <tom@tromey.com>
Date: Sun Apr 23 10:54:33 2017 -0600
Rationalize "backtrace" command line parsing
The backtrace command has peculiar command-line parsing. In
particular, it splits the command line, then loops over the arguments.
If it sees a word it recognizes, like "full", it effectively drops
this word from the argument vector. Then, it pastes together the
remaining arguments, passing them on to backtrace_command_1, which in
turn passes the resulting string to parse_and_eval_long.
The documentation doesn't mention the parse_and_eval_long at all, so
it is a bit of a hidden feature that you can "bt 3*2". The strange
algorithm above also means you can "bt 3 * no-filters 2" and get 6
frames...
This patch changes backtrace's command line parsing to be a bit more
rational. Now, special words like "full" are only recognized at the
start of the command.
This also updates the documentation to describe the various bt options
individually.
gdb/ChangeLog
2018-03-26 Tom Tromey <tom@tromey.com>
* stack.c (backtrace_command): Rewrite command line parsing.
gdb/doc/ChangeLog
2018-03-26 Tom Tromey <tom@tromey.com>
* gdb.texinfo (Backtrace): Describe options individually.
commit 07dca93f3bbc2426d89eba460c925863e4ebd636
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Mar 27 00:00:27 2018 +0000
Automatic date update in version.in
commit 9f034d7573ec4fb4bd3879ce66fef0a20167a2ba
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Mar 26 15:46:21 2018 -0400
Remove DEF_VEC_I(offset_type)
It is unused.
gdb/ChangeLog:
* dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
commit ce1459e528772057d51a507fa0c2bb1c8cbdca97
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Mar 26 15:31:10 2018 -0400
Add include guard to filename-seen-cache.h
While moving things around, I stumbled on filename_seen_cache being
re-defined, because filename-seen-cache.h doesn't have an include guard.
gdb/ChangeLog:
* filename-seen-cache.h: Add include guard.
commit 0b7a4aa6ba5a144b7ce616e80e95d9ff944fec2e
Author: Cary Coutant <ccoutant@gmail.com>
Date: Fri Mar 23 09:03:34 2018 -0700
Fix case where IR file provides symbol visibility but replacement file does not.
In PR 22868, two IR files provide conflicting visibility for a symbol.
When a def with PROTECTED visibility is seen after a def with DEFAULT
visibility, gold does not override the visibility. Later, if the
replacement object define the symbol with DEFAULT visibility, the symbol
remains DEFAULT. This was caused by a recent change to allow multiply-defined
absolute symbols, combined with the fact that the plugin framework was using
SHN_ABS as the section index for placeholder symbols. The solution is to
use a real (but arbitrary) section index.
gold/
PR gold/22868
* plugin.cc (Sized_pluginobj::do_add_symbols): Use a real section
index instead of SHN_ABS for defined symbols.
* testsuite/Makefile.am (plugin_pr22868): New test case.
* testsuite/Makefile.in: Regenerate
* testsuite/plugin_pr22868.sh: New test script.
* testsuite/plugin_pr22868_a.c: New source file.
* testsuite/plugin_pr22868_b.c: New source file.
commit 4f7ae6f5059924a5acc4490880449d6410dc5c93
Author: Keith Seitz <keiths@redhat.com>
Date: Mon Mar 26 10:34:28 2018 -0700
Remove struct keyword from section_addr_info
Buildbot pointed out a failiure in windows-nat.c:
../../binutils-gdb/gdb/windows-nat.c:582:10: error: using typedef-name 'section_addr_info' after 'struct'
struct section_addr_info *addrs;
^~~~~~~~~~~~~~~~~
In file included from ../../binutils-gdb/gdb/windows-nat.c:49:0:
../../binutils-gdb/gdb/symfile.h:75:37: note: 'section_addr_info' has a previous declaration here
typedef std::vector<other_sections> section_addr_info;
^~~~~~~~~~~~~~~~~
A recursive grep of the sources for "struct section_addr_info" reveals one
additional reference in a comment. In both cases, this patch simply removes
the struct keyword.
gdb/ChangeLog:
* symfile.c (place_section): Remove "struct" from section_addr_info
in comment.
* windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
"struct" keyword from section_addr_info.
commit 5cd3e386e0ac84b0ba1e0737853f4504ba24f677
Author: Alan Hayward <alan.hayward@arm.com>
Date: Mon Mar 26 10:39:24 2018 +0100
Make gdbserver reg_defs a vector of objects
gdb/
* regformats/regdef.h (reg): Add constructors.
gdb/gdbserver/
* regcache.c (find_register_by_number): Return a ref.
(find_regno): Use references.
(register_size): Likewise.
(register_data): Likewise.
* tdesc.c (target_desc::~target_desc): Remove free calls.
(target_desc::operator==): Use std::vector compare.
(init_target_desc): Use reference.
(tdesc_create_reg): Use reg constructors.
* tdesc.h (struct target_desc): Replace pointer with object.
commit af9d57d205eb656a01b9688c3efa591ad8f1a2a9
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Mar 26 00:01:03 2018 +0000
Automatic date update in version.in
commit 3e5ef9a4de7919971130f7f2ca3052898a069e76
Author: Pedro Alves <palves@redhat.com>
Date: Sun Mar 25 18:02:43 2018 +0100
eval.c: reverse minsym and sym
I noticed that in evaluate_funcall, where we handle
OP_VAR_MSYM_VALUE/OP_VAR_VALUE to figure out the symbol's name gets
the minimal_symbol/symbol backwards. Happens to be harmless in
practice because the symbol name is recorded in the common initial
sequence (in the general_symbol_info field).
gdb/ChangeLog:
2018-03-25 Pedro Alves <palves@redhat.com>
* eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
if then/else bodies in var_func_name extraction.
commit c88d2fccb148d38ca53d379b7b71eb0467e1a2cc
Author: Pedro Alves <palves@redhat.com>
Date: Sun Mar 25 18:54:44 2018 +0100
Fix date in gdb/ChangeLog
commit bf54968b128a2133174d81c438d402ecfaf83042
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sun Mar 25 05:02:17 2018 -0700
x86-64: Add ENDBR64 to the TLSDESC PLT entry
The TLSDESC entry in a lazy procedure linkage table is called indirectly
with "callq *(%rax)". This patch adds an ENDBR64 to support indirect
branch tracking in Intel CET. The TLSDESC PLT entry now looks like:
0xf3, 0x0f, 0x1e, 0xfa, /* endbr64 */
0xff, 0x35, 8, 0, 0, 0, /* pushq GOT+8(%rip) */
0xff, 0x25, 16, 0, 0, 0 /* jmpq *GOT+TDG(%rip) */
The BND prefix isn't needed since MPX isn't used for TLSDESC.
bfd/
PR ld/23000
* elf64-x86-64.c (elf_x86_64_finish_dynamic_sections): Add
ENDBR64 to the TLSDESC PLT entry.
ld/
PR ld/23000
* testsuite/ld-x86-64/tlsdesc.pd: Updated.
commit b3ee71e749f3c93c51cd6fb3fed51ffd54243117
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Mar 25 00:00:55 2018 +0000
Automatic date update in version.in
commit 8da9a904f41bb78fca5568fb94004120682b1653
Author: Cary Coutant <ccoutant@gmail.com>
Date: Fri Mar 23 23:33:47 2018 -0700
Fix warn-unused-return message.
gold/
* plugin.cc (link_or_copy_file): Remove newlines from warning messages.
Add pedantic check for return value from ::write.
commit 3215deaaa6abbb7663fa3ec13a03ad74fd58b705
Author: Cary Coutant <ccoutant@gmail.com>
Date: Fri Mar 23 23:29:43 2018 -0700
Add missing ChangeLog entry for last commit.
commit bce02d8884d6baa72c537d0d7c59f924cb290799
Author: Weimin Pan <weimin.pan@oracle.com>
Date: Thu Nov 2 18:38:36 2017 -0600
aarch64: Make "info address" resolve TLS variables
TLS variables can't be resolved on aarch64-linux-gnu
Running the test case with upstream gdb shows two failures:
(1) Receiving different error messages when printing TLS variable before
program runs - because the ARM compiler does not emit dwarf attribute
DW_AT_location for TLS, the result is expected and the baseline may
need to be changed for aarch64.
(2) Using "info address" command on C++ static TLS object resulted in
"symbol unresolved" error - below is a snippet from the test case:
class K {
public:
static __thread int another_thread_local;
};
__thread int K::another_thread_local;
(gdb) info address K::another_thread_local
Symbol "K::another_thread_local" is unresolved.
This patch contains fix for (2).
Function info_address_command() handles the "info address" command and
calls lookup_minimal_symbol_and_objfile() to find sym's symbol entry in
mininal symbol table if SYMBOL_COMPUTED_OPS (sym) is false. Problem is
that function lookup_minimal_symbol_and_objfile() only looked up an
objfile's minsym ordinary hash table, not its demangled hash table, which
was the reason why the C++ name was not found.
The fix is to call lookup_minimal_symbol(), which already looks up entries
in both minsym's hash tables, to find names when traversing the object file
list in lookup_minimal_symbol_and_objfile().
Tested in both aarch64-linux-gnu and amd64-linux-gnu. No regressions.
commit 9a96cf38344355c529bfb47251a01ad679d75459
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Mar 24 00:00:50 2018 +0000
Automatic date update in version.in
commit b7fee5a3268c340975a1dddb131733abfd153d5e
Author: Keith Seitz <keiths@redhat.com>
Date: Thu Mar 22 16:49:48 2018 -0700
Add psymbols for nested types
c++/22968 involves the inability of ptype to find a type definition for
a type defined inside another type. I recently added some additional
support for nested type definitions, but I apparently overlooked psymbols.
The user reports that using -readnow fixes the problem:
$ gdb 22968 -ex "ptype Outer::Inner"
There is no field named Inner
$ gdb -readnow 22968 -ex "ptype Outer::Inner"
type = struct Outer::Inner {
<no data field>
}
We clearly did not find a psymbol for Outer::Inner because it was located
in another CU. This patch addresses this problem by scanning structs
for additional psymbols. Rust is already doing this.
With this patch, the identical result to "-readnow" is given (without
using `-readnow', of course).
gdb/ChangeLog:
PR c++/22968
* dwarf2read.c (scan_partial_symbols): Scan structs/classes for
nested type definitions for C++, too.
gdb/testsuite/ChangeLog:
PR c++/22968
* gdb.cp/subtypes.exp: New file.
* gdb.cp/subtypes.h: New file.
* gdb.cp/subtypes.cc: New file.
* gdb.cp/subtypes-2.cc: New file.
commit 291158a341260e97125db5638cd47c1e9aea5e8f
Author: Cary Coutant <ccoutant@gmail.com>
Date: Fri Mar 23 10:05:38 2018 -0700
Add --debug=plugin option to record plugin actions.
With --debug=plugin, gold will log all plugin actions to a log file,
and make copies of plugin-supplied replacement files in a temporary
directory created under the current working directory.
gold/
* debug.h (DEBUG_PLUGIN): New constant.
(DEBUG_ALL): Add DEBUG_PLUGIN.
(debug_string_to_enum): Likewise.
* plugin.cc (make_sized_plugin_object): Add filename parameter.
(Plugin_recorder): New class.
(Plugin_manager::~Plugin_manager): Delete recorder_.
(Plugin_manager::load_plugins): Create and initialize recorder_.
(Plugin_manager::claim_file): Record claimed and unclaimed files.
(Plugin_manager::make_plugin_object): Use object name as name for
plugin object, if available.
(Plugin_manager::add_input_file): Record replacement files.
(Sized_pluginobj::do_add_symbols): Record plugin symbols.
(Plugin_finish::run): Call Plugin_recorder::finish().
(make_sized_plugin_object): Add filename parameter and pass to
Sized_pluginobj constructor.
* plugin.h (Plugin::filename): New method.
(Plugin::recorder): New method.
(Plugin::recorder_): New data member.
commit 2cc9b3048bcbb827e69059fb6beacb9bccbc5d7c
Author: Tom Tromey <tom@tromey.com>
Date: Fri Mar 16 16:44:01 2018 -0600
Change machoread.c to use std::vector
This changes machoread.c to use std::vector rather than VEC. This
allows removing some cleanups.
Regression tested by the buildbot, though I don't think anything
actually tests macho reading.
gdb/ChangeLog
2018-03-23 Tom Tromey <tom@tromey.com>
* machoread.c (struct oso_el): Add a constructor. Don't define as
a typedef.
(macho_register_oso): Remove.
(macho_symtab_read): Take a std::vector.
(oso_el_compare_name): Now a std::sort comparator.
(macho_symfile_read_all_oso): Take a std::vector.
(macho_symfile_read): Use std::vector. Remove cleanups.
commit dff7492c9b221aacd4efa6675bb288dfb5d50f80
Author: Alan Hayward <alan.hayward@arm.com>
Date: Fri Mar 23 11:17:22 2018 +0000
Make gdbserver find_register_by_number static
gdbserver/
* regcache.c (find_register_by_number): Make static.
(find_regno): Use find_register_by_number
* regcache.h (struct reg): Remove declaration.
commit 8fd75781892c7458702f72b3b9cb1927609716de
Author: Nick Clifton <nickc@redhat.com>
Date: Fri Mar 23 12:20:03 2018 +0000
Improve readelf's selection of a file start symbol when displaying a gnu build attribute.
* readelf.c (get_symbol_for_build_attribute): Skip ARM mapping
symbols.
(print_gnu_build_attribute_description): If no file start symbol
could be found, look for one two bytes into the file.
* testsuite/binutils-all/note-4-64.s: Set the address of the file
start symbol to two bytes into the file.
* testsuite/binutils-all/note-4-32.s: Likewise.
commit f6c4d4b152a985f355cd1552ce01c99a589c936f
Author: Nick Clifton <nickc@redhat.com>
Date: Fri Mar 23 12:08:54 2018 +0000
Add an extra library name template to the list used by the WIN32 targets.
PR 22948
* emultempl/pe.em (open_dynamic_archive): Add libXXX.lib template
to library name list.
* emultempl/pep.em (open_dynamic_archive): Likewise.
* ld.texinfo (WIN32): Update documentation.
commit 376be529a7c99a70050bc48c51d891f1bea9777f
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Mon Mar 19 00:33:50 2018 +0000
gdb: Fix testsuite issue in gdb.arch/amd64-disp-step-avx.exp
This test starts up and confirms that $xmm0 has the value 0, it then
modifies $xmm0 (in the inferior) and confirms that the new value can
be read (in GDB).
On some machines I was noticing that this test would occasionally
fail, and on investigation I believe that the reason for this is that
the test is linked as a dynamically linked executable and makes use of
the system libraries during startup. The reason that this causes
problems is that both the runtime linker and the startup code run
before main can, and do (on at least some platforms) make use of the
XMM registers.
In this commit I modify the test program slightly to allow it to be
linked statically, without using the startup libraries. Now by the
time GDB reaches the symbol main we have only executed one 'nop'
instruction, and the XMM registers should all have the value 0. I've
extended the test script to confirm that $xmm0 to $xmm15 are all
initially 0, and I also check that at the point after $xmm0 has been
modified, all the other XMM registers ($xmm1 to $xmm15) are still 0.
The test program is still linked against libc in order that we can
call the exit function, however, we now call _exit rather than exit in
order to avoid all of the usual cleanup that exit does. This clean up
tries to tear down things that are usually setup during the startup
code, but now this isn't called calling exit will just result in a
crash.
gdb/testsuite/ChangeLog:
* gdb.arch/amd64-disp-step-avx.S: Add '_start' label.
(done): Call '_exit' not 'exit' to avoid atexit handlers.
* gdb.arch/amd64-disp-step-avx.exp: Pass -static, and
-nostartfiles when compiling the test. Confirm that all registers
xmm0 to xmm15 are initially 0, and that xmm1 to xmm15 are 0 after.
commit 066cfa988ddf88ad32b7a114f2e984a13a3848c8
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Mon Mar 19 00:37:31 2018 +0000
gdb: Minor cleanup in some gdb.arch/* tests
A small number of tests incorrectly tried to pass -Wa,-g through to
GCC as an extra compile time flag, either to gdb_compile or
prepare_for_testing.
The problem is that the syntax used for passing the flags was
incorrect, and as a result these extra flags were being ignored.
Luckily, the 'debug' flag was being passed in each case anyway, which
means that the '-g' flag would already be added.
Given that all these tests pass 'debug', and the invalid flag has been
ignored for some time, I'm just removing the flags in this commit.
I've also changed the tests from using gdb_compile to
prepare_for_testing, which allows some extra code to be removed from a
couple of tests scripts.
There should be no change in the test results after this commit.
gdb/testsuite/ChangeLog:
* gdb.arch/amd64-disp-step-avx.exp: Remove unneeded assembler flag
option, syntax was wrong anyway.
* gdb.arch/arm-disp-step.exp: Likewise.
* gdb.arch/sparc64-regs.exp: Likewise.
* gdb.arch/amd64-disp-step.exp: Remove unneeded assembler flag
option, syntax was wrong anyway, switch to use
prepare_for_testing.
* gdb.arch/i386-disp-step.exp: Likewise.
commit d80e524238a17878eee0c620d56e2fad072556bc
Author: Alan Hayward <alan.hayward@arm.com>
Date: Fri Mar 23 09:29:42 2018 +0000
Move gdbserver tdesc header funcs to c file
gdbserver/
* tdesc.c (target_desc::~target_desc): Move to here.
(target_desc::operator==): Likewise.
* tdesc.h (target_desc::~target_desc): Move from here.
(target_desc::operator==): Likewise.
commit 079670b94ade4b5792fa74b29a6b5b4626f27185
Author: Andreas Arnez <arnez@linux.vnet.ibm.com>
Date: Fri Mar 23 10:38:23 2018 +0100
Testsuite: fully migrate to use_gdb_stub convenience func
In the GDB test suite, there are still multiple invocations of
"target_info exists use_gdb_stub". However, the recommended way of
checking for use_gdb_stub is to call the convenience function of the same
name.
Replace these occurrences and just call "use_gdb_stub" instead.
gdb/testsuite/ChangeLog:
* gdb.ada/exec_changed.exp: Replace "target_info exists
use_gdb_stub" by "use_gdb_stub".
* gdb.ada/start.exp: Likewise.
* gdb.base/async-shell.exp: Likewise.
* gdb.base/attach-pie-misread.exp: Likewise.
* gdb.base/attach-wait-input.exp: Likewise.
* gdb.base/break-entry.exp: Likewise.
* gdb.base/break-interp.exp: Likewise.
* gdb.base/dprintf-detach.exp: Likewise.
* gdb.base/nostdlib.exp: Likewise.
* gdb.base/solib-nodir.exp: Likewise.
* gdb.base/statistics.exp: Likewise.
* gdb.base/testenv.exp: Likewise.
* gdb.mi/mi-exec-run.exp: Likewise.
* gdb.mi/mi-start.exp: Likewise.
* gdb.multi/dummy-frame-restore.exp: Likewise.
* gdb.multi/multi-arch-exec.exp: Likewise.
* gdb.multi/multi-arch.exp: Likewise.
* gdb.multi/tids.exp: Likewise.
* gdb.multi/watchpoint-multi.exp: Likewise.
* gdb.python/py-events.exp: Likewise.
* gdb.threads/attach-into-signal.exp: Likewise.
* gdb.threads/attach-stopped.exp: Likewise.
* gdb.threads/threadapply.exp: Likewise.
* lib/selftest-support.exp: Likewise.
commit a2b2bc12af45f48617729c1413a1a01c0ee957ca
Author: Tom Tromey <tom@tromey.com>
Date: Wed Mar 21 16:59:28 2018 -0600
Remove some cleanups from record-full.c
This removes some cleanups from record-full.c in a straightforward
way.
Tested by the buildbot.
gdb/ChangeLog
2018-03-22 Tom Tromey <tom@tromey.com>
* record-full.c (record_full_exec_insn): Use gdb::byte_vector.
(record_full_goto_bookmark): Use std::string.
commit 8ff5bf3db34b0a8a3a9fe5a03f8cb95ce2a3d038
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Mar 23 00:00:38 2018 +0000
Automatic date update in version.in
commit 7a8f494c7b171f6cbad20a14ef03a5d7acaa6ccb
Author: Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
Date: Thu Mar 22 10:22:45 2018 -0300
ppc: Fix stwux and stdux masks in skip_prologue
This patch merges the masks for matching the stwux and stdux
instructions in rs6000-tdep.c:skip_prologue into a single mask that
only matches these two instructions.
Commit 72dd273062 fixed the warning described in PR tdep/18295, this
patch addresses the comment in the same PR indicating that the mask
was too permissive.
gdb/Changelog:
PR tdep/18295
* rs6000-tdep.c (skip_prologue): Match both stwux and stdux
a single mask.
commit dd6d677f0b06341dce90d259785c9d513d2e3935
Author: Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
Date: Thu Mar 22 10:22:45 2018 -0300
ppc: Detect when LR is saved through frame pointer
This patch extends rs6000-tdep.c:skip_prologue so that it can detect
when the Link Register is saved using the frame pointer (usually r31)
in adition to the stack pointer (r1).
The frame pointer offset from the frame base is tracked separately
from the stack pointer offset for cases when the frame pointer is not
in synch with the stack pointer at the moment of the LR save.
Previously, "stq" could also be detected as an instruction that saves
LR or CR. Because this was likely unintentional, this patch also
restricts the matches to stw/stwu/std/stdu.
gdb/ChangeLog:
* rs6000-tdep.c (store_insn_p): New function.
(skip_prologue): New variable alloca_reg_offset. Set lr_reg
and cr_reg to their unshifted values. Use store_insn_p to
match LR saves using either R1 or fdata->alloca_reg. Use
store_insn_p to match CR saves. Set alloca_reg_offset
when alloca_reg and framep are set. Remove lr_reg shift
when assigning to fdata->lr_register.
commit 26d6cec4a9291f154e549fb6f4318ace6cfaa2a5
Author: Andreas Arnez <arnez@linux.vnet.ibm.com>
Date: Thu Mar 22 10:02:18 2018 +0100
Make "info proc cmdline" show args on GNU/Linux
Currently "info proc cmdline" on GNU/Linux does not show the full command
line, but only argument 0. And even a warning is shown if there are more.
This was discussed in 2014 already:
https://sourceware.org/ml/gdb-patches/2014-04/msg00212.html
Follow the advice there and avoid target_fileio_read_stralloc. Instead,
use target_fileio_read_alloc to read the whole command line and then
replace NUL characters by spaces. Also add an appropriate test case.
Note that gdbserver already handles this correctly.
gdb/ChangeLog:
* linux-tdep.c (linux_info_proc): For "info proc cmdline", print
command line args instead of emitting a warning.
gdb/testsuite/ChangeLog:
* gdb.base/info-proc.exp: Add test for "info proc cmdline".
commit f69c5afb18871a773af88484a24d7da12c3a104c
Author: Andreas Arnez <arnez@linux.vnet.ibm.com>
Date: Thu Mar 22 10:02:18 2018 +0100
S390: Correct brace style in s390_get_wordsize
This corrects bad formatting in the newly introduced function
s390_get_wordsize.
gdb/gdbserver/ChangeLog:
* linux-s390-low.c (s390_get_wordsize): Correct brace style.
commit 32546502f3f43083adbe35b005a71d2c3bd42e55
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 22 08:47:16 2018 +0100
x86: use local variable in check_VecOperands()
This is just to make a subsequent change a little easier to read.
commit b8c169f359dd99900994baff60c57417f13351b3
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 22 08:46:25 2018 +0100
x86: drop pointless VecESize
The attribute is meaningful only in templates allowing embedded
broadcast. Drop them everywhere else.
commit 96bc132a736fe44cc021d5d4e8ed6780b9520f22
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 22 08:34:24 2018 +0100
x86: drop remaining redundant DispN
A few of them were missed in commit 7ac2002247 ("x86: derive DispN
from BaseIndex") and also couldn't be removed by subsequent commits
touching certain templates anyway.
commit 1212781b35c9e0080db6ee546cf5e7ebd45d6b09
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 22 08:33:38 2018 +0100
ix86: allow HLE store of accumulator to absolute address
Since they're shorter to encode, the 0xa0...0xa3 encodings are preferred
for moves between accumulator and absolute address outside of 64-bit
mode. With HLE release semantics this encoding is unsupported though,
with the assembler raising an error. The operation is valid though, we
merely need to pick the longer encoding in that case.
commit 9f79e88693dae859f838bcf684158e6e6f8f3b6b
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 22 08:32:50 2018 +0100
x86: fix swapped operand handling for BNDMOV
The wrong placement of the Load attribute in the templates prevented
this from working. The disassembler also didn't handle this consistently
with other similar dual-encoding insns.
commit d6793fa1acf384a93c83db6eb916e3b9eedd9ef4
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 22 08:31:43 2018 +0100
x86/Intel: fix fallout from earlier template folding
While many templates allowing multiple suitably matching XMM/YMM/ZMM
operand sizes can be folded, a few need to be split in order to not
wrongly accept "xmmword ptr" operands when only XMM registers are
permitted (and memory operands are more narrow). Add a test case
validating this.
commit f776822506b417ce25170c67c33cc05870b37adf
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 22 08:29:45 2018 +0100
x86: fold a few XOP templates
Also add a new test case verifying that mixed operands of SIMD insns
with a size-less memory operand in the middle are properly rejected.
commit 5d9310c4b88f807c1a3f1a0b4d7b6c10925dcaf7
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Thu Mar 22 00:27:19 2018 -0400
Get rid of VEC(static_tracepoint_marker_p)
This patch replaces VEC(static_tracepoint_marker_p) with std::vector,
and does some c++ification around that. I thought a new overload of
hex2str was useful, so I added it as well as corresponding unit tests.
I also added an overload of ui_out::field_string that takes an
std::string directly.
gdb/ChangeLog:
* tracepoint.h (struct static_tracepoint_marker): Initialize
fields, define default constructor, move constructor and move
assignment, disable the rest.
<str_id, extra>: Make std::string.
(release_static_tracepoint_marker): Remove.
(free_current_marker): Remove.
* tracepoint.c (free_current_marker): Remove.
(parse_static_tracepoint_marker_definition): Adjust to
std::string, use new hex2str overload.
(release_static_tracepoint_marker): Remove.
(print_one_static_tracepoint_marker): Get marker by reference
and adjust to std::string.
(info_static_tracepoint_markers_command): Adjust to std::vector
changes
* target.h (static_tracepoint_marker_p): Remove typedef.
(DEF_VEC_P(static_tracepoint_marker_p)): Remove.
(struct target_ops) <to_static_tracepoint_marker_at>: Return
bool.
<to_static_tracepoint_markers_by_strid>: Return std::vector.
* target-debug.h
(target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
(target_debug_print_std_vector_static_tracepoint_marker): New.
(target_debug_print_struct_static_tracepoint_marker_p): Rename
to...
(target_debug_print_static_tracepoint_marker_p): ... this.
* target-delegates.c: Re-generate.
* breakpoint.h (struct tracepoint) <static_trace_marker_id>:
Make std::string.
* breakpoint.c (init_breakpoint_sal): Adjust to std::string.
(decode_static_tracepoint_spec): Adjust to std::vector.
(tracepoint_print_one_detail): Adjust to std::string.
(strace_marker_decode_location): Adjust to std::string.
(update_static_tracepoint): Adjust to std::string, remove call
to release_static_tracepoint_marker.
* linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
Adjust to std::vector.
* remote.c (remote_static_tracepoint_marker_at): Return bool.
(remote_static_tracepoint_markers_by_strid): Adjust to
std::vector.
* common/rsp-low.h (hex2str): New overload with explicit count
of bytes.
* common/rsp-low.c (hex2str): New overload with explicit count
of bytes.
* unittests/rsp-low-selftests.c (test_hex2str): New function.
(_initialize_rsp_low_selftests): Add test_hex2str test.
* unittests/tracepoint-selftests.c
(test_parse_static_tracepoint_marker_definition): Adjust to
std::string.
commit 62c222b6d9fcce8adf65f48fca2e528f777afeeb
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Thu Mar 22 00:26:37 2018 -0400
Make parse_static_tracepoint_marker_definition work with multiple static tracepoint definitions
Since I modify the parse_static_tracepoint_marker_definition function in
the next patch, I wanted to write a unit test for it. Doing so showed
that it doesn't handle multiple consecutive static tracepoint
definitions separated by commas. However, the RSP documentation [1]
states that servers may return multiple definitions, like:
1234:6d61726b657231:6578747261207374756666,abba:6d61726b657232:
The problem is that the function uses strlen to compute the length of
the last field (the extra field). If there are additional definitions
in addition to the one we are currently parsing, the returned length
will include those definitions, and we'll try to hex-decode past the
extra field.
This patch changes parse_static_tracepoint_marker_definition to consider
the case where the current definition is followed by a comma and more
definitions. It also adds the unit test that found the issue in the
first place.
I don't think this causes any backwards compatibility issues, because
the previous code only handled single static tracepoint definitions, and
the new code handles that correctly.
gdb/ChangeLog:
* tracepoint.c (parse_static_tracepoint_marker_definition):
Consider case where the definition is followed by more
definitions.
* Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
tracepoint-selftests.c.
* unittests/tracepoint-selftests.c: New.
[1] https://sourceware.org/gdb/onlinedocs/gdb/Tracepoint-Packets.html#qTfSTM
commit 92c00f4228afac1bead526bf63aca42581d4c858
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Mar 22 00:00:35 2018 +0000
Automatic date update in version.in
commit 7eb2418fa4641c60f6713986de7d3a50fd7a22c0
Author: Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
Date: Wed Mar 21 17:24:02 2018 -0300
Add myself as a write-after-approval GDB maintainer.
gdb/ChangeLog:
2018-03-21 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
* MAINTAINERS (Write After Approval): Add Pedro Franco de
Carvalho.
commit b1202ffa53484b65d95787fddef1bc6175e05ca9
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Mar 21 12:55:40 2018 -0700
DT_FLAGS_1: Add Solaris bits
The following bits in DT_FLAGS_1 are used by Solaris:
#define DF_1_KMOD 0x10000000 /* kernel module */
#define DF_1_WEAKFILTER 0x20000000 /* apply weak binding to DT_FILTER */
#define DF_1_NOCOMMON 0x40000000 /* no COMMON symbols exist */
binutils/
* readelf.c (process_dynamic_section): Also dump DF_1_KMOD,
DF_1_WEAKFILTER and DF_1_NOCOMMON.
include/
* elf/common.h (DF_1_KMOD): New.
(DF_1_WEAKFILTER): Likewise.
(DF_1_NOCOMMON): Likewise.
commit ce29f8439f94adfa56655940e657afbe07a0c99e
Author: Andreas Arnez <arnez@linux.vnet.ibm.com>
Date: Wed Mar 21 17:41:45 2018 +0100
S390: Make IPA recognize tdescs with guarded storage
The in-process agent does not handle tdescs with guarded storage yet.
This is fixed.
gdb/gdbserver/ChangeLog:
* linux-s390-ipa.c (get_ipa_tdesc): Add handling for
S390_TDESC_GS.
* linux-s390-low.c (s390_get_ipa_tdesc_idx): Likewise.
(initialize_low_tracepoint): Call init_registers_s390x_gs_linux64
and init_registers_s390_gs_linux64.
commit c49bd90bdb03f3013a796ea920830547cacc3c48
Author: Andreas Arnez <arnez@linux.vnet.ibm.com>
Date: Wed Mar 21 17:41:45 2018 +0100
S390: gdbserver: Don't write guarded storage registers
On S390, the guarded storage register set is only valid if guarded storage
is active. Reading/writing the register set yields errors if this is not
the case. Then gdbserver emits warnings like these:
Warning: ptrace(regsets_store_inferior_registers): No data available
Apart from confusing the user, this can also lead to test case failures
due to unexpected output. To suppress this, make the guarded storage
regsets read-only for now.
gdb/gdbserver/ChangeLog:
* linux-s390-low.c (s390_fill_gs): Remove function.
(s390_fill_gsbc): Remove function.
(s390_regsets): Set fill functions for the guarded storage regsets
to NULL.
commit 7edb9bd32ba23247a509cbe9d44ccb02da97b66e
Author: Andreas Arnez <arnez@linux.vnet.ibm.com>
Date: Wed Mar 21 17:41:44 2018 +0100
S390: Enable re-attaching with native-extended-gdbserver
On s390x, when running attach.exp with native-extended-gdbserver,
gdbserver crashes in find_regno like this:
.../regcache.c:252: A problem internal to GDBserver has been detected.
Unknown register tdb0 requested
On the GDB side it looks like this:
(gdb) attach 31568
Attaching to process 31568
Remote connection closed
The test case attempts to attach to a new process via the already running
gdbserver. Thus s390_arch_setup is called a second time, and that's where
the problem occurs. In order to determine the word width (32 or 64 bits),
s390_arch_setup reads the pswm register through the regcache. For that it
uses a temporary tdesc which is supposed to work for all s390 targets,
since the actual tdesc has not been determined yet. But in this second
round this doesn't work, because s390_regsets has been updated already and
now contains regsets not described by the temporary tdesc, such as the one
containing tdb0.
This is fixed by rearranging the logic in s390_arch_setup.
gdb/gdbserver/ChangeLog:
* linux-s390-low.c (s390_get_hwcap): Replace tdesc parameter by
the word size. Add comment.
(s390_get_wordsize): New function.
(s390_arch_setup): No longer select a temporary tdesc to fetch the
pswm with it. Instead, use s390_get_wordsize to determine the
word size first and derive the correct tdesc from that directly.
commit 0ccf57bd817a73e7d7cef714039f1302fa5298ec
Author: Alan Modra <amodra@gmail.com>
Date: Wed Mar 21 13:22:26 2018 +1030
PowerPC64 synthetic symbols
STT_FILE and a bunch of other symbol types aren't proper symbols to
mark the start of a function's code.
* elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Trim uninteresting
symbols. Use size_t counts. Delete redundant opd test.
commit 4bad6366a74c9cdf92e6aef3849c29771c77af36
Author: Alan Modra <amodra@gmail.com>
Date: Mon Mar 19 20:19:50 2018 +1030
Delete unused elf32-ppc.c code
Local symbols were being read but not used.
* elf32-ppc.c (ppc_elf_tls_optimize): Delete locsyms.
commit bac3c8c5e7fb88ddb3615b895ad57847b9842171
Author: Alan Modra <amodra@gmail.com>
Date: Mon Mar 19 20:14:05 2018 +1030
Make tls_mask unsigned in elf32-ppc.c
* elf32-ppc.c (struct ppc_elf_link_hash_entry): Make tls_mask
field unsigned.
(update_local_sym_info): Likewise for local_got_tls_masks.
(ppc_elf_tls_optimize): Likewise for lgot_masks.
commit 6a3858a69e6bdff1d10136c59bfcf7a0cbe47059
Author: Alan Modra <amodra@gmail.com>
Date: Sat Mar 17 17:22:39 2018 +1030
Correct multi-toc tprel relocs
Commit f15d0b545b trimmed some unnecessary TPREL relocs, but missed
changing another place where they are allocated.
* elf64-ppc.c (ppc_size_one_stub): Fix comment typo.
(ppc64_elf_layout_multitoc): Allocate relocs for tprel as we
do in size_dynamic_sections.
commit 675e28092f9d92c56c38d40d13ad5b766bdede05
Author: Alan Modra <amodra@gmail.com>
Date: Sat Mar 17 17:49:12 2018 +1030
Don't exceed reloc array bounds
* elf64-ppc.c (ppc64_elf_relocate_section): Don't access rel[1]
without first checking array bounds.
* elf32-ppc.c (ppc_elf_relocate_section): Likewise.
commit dca9fbc845f297db70dcb2202624b1497df5593c
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Mar 21 00:00:41 2018 +0000
Automatic date update in version.in
commit cbac223123dd1b460fa10c31d779c5f73f637849
Author: Roland McGrath <mcgrathr@google.com>
Date: Tue Mar 20 13:31:05 2018 -0700
ld/testsuite: XFAIL pr20995-2 on aarch64*-*-elf*
ld/
* testsuite/ld-elf/shared.exp (pr20995-2): XFAIL on aarch64*-*-elf*,
another target without RELRO.
commit 7cbe16e99d8a61a168579354487902ee50413e08
Author: Stephen Roberts <stephen.roberts@arm.com>
Date: Tue Mar 20 16:24:37 2018 +0000
Fix misleading indentation error.
This patch fixes a compile error introduced by my previous change, which
caused the indentation of the following code block to become incorrect.
ChangeLog:
2018-03-20 Stephen Roberts <stephen.roberts@arm.com>
* gdb/symtab.c (find_pc_sect_line): fixed indentation.
commit 8c5b71ad6db208355947c639d1959de7d770ad2d
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Tue Mar 20 09:20:57 2018 -0700
Adjust testsuite/ld-plugin/pr22983.d
* testsuite/ld-plugin/pr22983.d: Allow leading underscore as
well as extra lines between symbols.
commit 4ee89e903de920496a69c01df70db13a70a2a0be
Author: Stephen Roberts <stephen.roberts@arm.com>
Date: Tue Mar 20 13:54:54 2018 +0000
Replace the linear search in find_pc_sect_line with a binary search.
This patch addresses slowness when setting breakpoints, especially in
heavily templatized code. Profiling showed that find_pc_sect_line in
symtab.c was the performance bottleneck. The original logic performed a
linear search over ordered data. This patch uses a binary search, as
suggested by comments around the function. There are no behavioural
changes, but gdb is now faster at setting breakpoints in template code.
Tested using on make check on an x86 target. The optimisation speeds up
the included template-breakpoints.py performance test by a factor of 7
on my machine.
ChangeLog:
2018-03-20 Stephen Roberts <stephen.roberts@arm.com>
* gdb/symtab.c (find_pc_sect_line): now uses binary search.
gdb/testsuite/
* gdb.perf/template-breakpoints.cc: New file.
* gdb.perf/template-breakpoints.exp: New file.
* gdb.perf/template-breakpoints.py: New file.
commit ed3818775569116d7f09df3d81e22cb8169a8c06
Author: Maciej W. Rozycki <macro@mips.com>
Date: Tue Mar 20 11:48:59 2018 +0000
gc.exp: Remove extraneous LD flags from the personality test
Complement commit 8988502d7534 ("MIPS/LD/testsuite: Correct dynamic
links with VR4100, VR4300 and VR5000") and commit bf48520113c4 ("gc.exp:
Fix a typo: $LFLAGS -> $LDFLAGS"), and remove extraneous additional LD
flags explicitly passed to the personality test on invocation. This
passing has accidentally leaked from a WIP version of the former change.
With the actual version committed the $LDFLAGS global variable is used
instead for `run_dump_test' to use implicitly, so that `-call_shared'
precedes `-lpersonality' on the linker's command line, as otherwise a
shared `libpersonality.so' library wouldn't be considered for linking,
causing the test to fail.
ld/
* testsuite/ld-gc/gc.exp: Remove extraneous LD flags from the
personality test.
commit 7e1001406d02053fb1b94bc33ccb8a3f14dfc9cf
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Mar 20 11:05:18 2018 +0000
Updated Russian and Spanish translations for the binutils/ sub-directory.
* po/es.po: Updated Spanish translation.
* po/ru.po: Updated Russian translation.
commit 416c34d683f2a17aefe19afb466af4316c7c603b
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Tue Mar 20 03:51:26 2018 -0700
Set non_ir_ref_dynamic if a symbol is made dynamic
If a symbol is made dynamic by --dynamic-list, it has non-IR reference.
bfd/
PR ld/22983
* elflink.c (bfd_elf_link_mark_dynamic_symbol): Set
non_ir_ref_dynamic if a symbol is made dynamic by --dynamic-list.
ld/
PR ld/22983
* testsuite/ld-plugin/lto.exp: Run PR ld/22983 test.
* testsuite/ld-plugin/pr22983.d: New file.
* testsuite/ld-plugin/pr22983.t: Likewise.
* testsuite/ld-plugin/pr22983a.c: Likewise.
* testsuite/ld-plugin/pr22983b.c: Likewise.
commit 9d6aac5354566288d7bc734213e5ed0c3cb3c4ca
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Mar 20 00:00:38 2018 +0000
Automatic date update in version.in
commit 926300415b642367cdc2febac6619f8cb8a80b46
Author: Tom Tromey <tom@tromey.com>
Date: Mon Mar 19 10:25:05 2018 -0600
Support bare-identifier field initializers in Rust
In Rust one can initialize a struct member from an identically-named
local variable by simply mentioning the member name in the
initializer, like:
let x = 0;
let y = Struct { x };
This initializes "Struct::x" from "x".
This patch adds this form of initializer to the Rust expression parser
and adds a test.
Tested on x86-64 Fedora 26 using rustc 1.23.
2018-03-19 Tom Tromey <tom@tromey.com>
* rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
"IDENT" production.
2018-03-19 Tom Tromey <tom@tromey.com>
* gdb.rust/simple.rs (main): Add local variables field1, field2,
y0.
* gdb.rust/simple.exp: Test bare identifier form of struct
initializer.
commit 76727919ceb590f03ff0f6db08b7ceab5b7aeaff
Author: Tom Tromey <tom@tromey.com>
Date: Sun Oct 2 10:50:20 2016 -0600
Convert observers to C++
This converts observers from using a special source-generating script
to be plain C++. This version of the patch takes advantage of C++11
by using std::function and variadic templates; incorporates Pedro's
patches; and renames the header file to "observable.h" (this change
eliminates the need for a clean rebuild).
Note that Pedro's patches used a template lambda in tui-hooks.c, but
this failed to compile on some buildbot instances (presumably due to
differing C++ versions); I replaced this with an ordinary template
function.
Regression tested on the buildbot.
gdb/ChangeLog
2018-03-19 Pedro Alves <palves@redhat.com>
Tom Tromey <tom@tromey.com>
* unittests/observable-selftests.c: New file.
* common/observable.h: New file.
* observable.h: New file.
* ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
python/py-breakpoint.c, python/py-finishbreakpoint.c,
python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
tui/tui-interp.c, valops.c: Update all users.
* tui/tui-hooks.c (tui_bp_created_observer)
(tui_bp_deleted_observer, tui_bp_modified_observer)
(tui_inferior_exit_observer, tui_before_prompt_observer)
(tui_normal_stop_observer, tui_register_changed_observer):
Remove.
(tui_observers_token): New global.
(attach_or_detach, tui_attach_detach_observers): New functions.
(tui_install_hooks, tui_remove_hooks): Use
tui_attach_detach_observers.
* record-btrace.c (record_btrace_thread_observer): Remove.
(record_btrace_thread_observer_token): New global.
* observer.sh: Remove.
* observer.c: Rename to observable.c.
* observable.c (namespace gdb_observers): Define new objects.
(observer_debug): Move into gdb_observers namespace.
(struct observer, struct observer_list, xalloc_observer_list_node)
(xfree_observer_list_node, generic_observer_attach)
(generic_observer_detach, generic_observer_notify): Remove.
(_initialize_observer): Update.
Don't include observer.inc.
* Makefile.in (generated_files): Remove observer.h, observer.inc.
(clean mostlyclean): Likewise.
(observer.h, observer.inc): Remove targets.
(SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
(COMMON_SFILES): Use observable.c, not observer.c.
* .gitignore: Remove observer.h.
gdb/doc/ChangeLog
2018-03-19 Tom Tromey <tom@tromey.com>
* observer.texi: Remove.
gdb/testsuite/ChangeLog
2018-03-19 Tom Tromey <tom@tromey.com>
* gdb.gdb/observer.exp: Remove.
commit 194ed4130dadb7dd1668f6af87405bdcd8041199
Author: Andreas Arnez <arnez@linux.vnet.ibm.com>
Date: Mon Mar 19 13:13:09 2018 +0100
Testsuite: Fix ambiguous "break" due to libinproctrace
Some of GDB's trace test cases define a function end() and place a
breakpoint there with "break end". However, when libinproctrace is linked
to the binary, there are multiple methods named "end", such as
std::string::end() from the C++ library or format_pieces::end() from
common/format.h. GDB then creates multiple breakpoints instead of just a
single one, and some FAILs result, such as these:
FAIL: gdb.trace/trace-mt.exp: ftrace on: break end
FAIL: gdb.trace/trace-mt.exp: ftrace off: break end
Fix this by adding the "-qualified" option to the break commands. For
consistency, change all occurrences of "break end" (and similar) in all
trace test cases, even if the current behavior does not cause problems.
Also, consequently use the gdb_breakpoint convenience proc.
gdb/testsuite/ChangeLog:
* gdb.trace/actions-changed.exp: Call gdb_breakpoint with the
"qualified" option when setting breakpoints.
* gdb.trace/backtrace.exp: Likewise.
* gdb.trace/circ.exp: Likewise.
* gdb.trace/collection.exp: Likewise.
* gdb.trace/disconnected-tracing.exp: Likewise.
* gdb.trace/ftrace-lock.exp: Likewise.
* gdb.trace/ftrace.exp: Likewise.
* gdb.trace/infotrace.exp: Likewise.
* gdb.trace/packetlen.exp: Likewise.
* gdb.trace/passc-dyn.exp: Likewise.
* gdb.trace/qtro.exp: Likewise.
* gdb.trace/read-memory.exp: Likewise.
* gdb.trace/report.exp: Likewise.
* gdb.trace/signal.exp: Likewise.
* gdb.trace/status-stop.exp: Likewise.
* gdb.trace/strace.exp: Likewise.
* gdb.trace/tfind.exp: Likewise.
* gdb.trace/trace-break.exp: Likewise.
* gdb.trace/trace-condition.exp: Likewise.
* gdb.trace/trace-mt.exp: Likewise.
* gdb.trace/tstatus.exp: Likewise.
* gdb.trace/tsv.exp: Likewise.
* gdb.trace/unavailable-dwarf-piece.exp: Likewise.
* gdb.trace/unavailable.exp: Likewise.
* gdb.trace/while-dyn.exp: Likewise.
commit 315aa1cf834a3d78a567263fa3fbda9b2027457e
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Mar 19 10:49:13 2018 +0000
Updated Spanish translation for the bfd/ sub-directory, and updated Ukranian translation for the gas/ sub-directory.
bfd * po/es.po: Updated Spanish translation.
gas * po/uk.po: Updated Ukranian translation.
commit 1cb1f3dae747fef1a576fe38078891e545fa92e5
Author: Tom Tromey <tom@tromey.com>
Date: Fri Nov 10 13:48:48 2017 -0700
Remove some cleanups from solib.c
This removes some cleanups from solib.c, replacing them with
gdb::def_vector.
Regression tested by the buildbot.
gdb/ChangeLog
2018-03-18 Tom Tromey <tom@tromey.com>
* solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
gdb::def_vector.
(bfd_lookup_symbol_from_dyn_symtab): Likewise.
commit c820f6a44d3b937d409c863b36f4a4c2d0333ea7
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Mar 19 00:00:24 2018 +0000
Automatic date update in version.in
commit 2e1d1be5280a407373f82b710033c7f6d9ba12fa
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Mar 18 00:01:24 2018 +0000
Automatic date update in version.in
commit a06ab151cbab6f3da8735d2e5e06ede9454ca4c1
Author: Tom Tromey <tom@tromey.com>
Date: Fri Mar 16 17:02:11 2018 -0600
Change auto_load_objfile_script_1 to use std::string
This replaces some manual string manipulation in
auto_load_objfile_script_1 with std::string, simplifying the code and
allowing the removal of some cleanups.
Tested by the buildbot.
2018-03-17 Tom Tromey <tom@tromey.com>
* auto-load.c (auto_load_objfile_script_1): Use std::string.
commit 770623f79f7fdff38f62c641438759748cf3f138
Author: Tom Tromey <tom@tromey.com>
Date: Fri Feb 23 14:42:26 2018 -0700
Remove target_fileio_close_cleanup
This removes target_fileio_close_cleanup in favor of a new RAII class.
The new class is similar to scoped_fd but calls
target_fileio_close_cleanup rather than close.
Regression tested by the buildbot.
gdb/ChangeLog
2018-03-17 Tom Tromey <tom@tromey.com>
* target.c (class scoped_target_fd): New.
(target_fileio_close_cleanup): Remove.
(target_fileio_read_alloc_1): Use scoped_target_fd.
commit 04153a3e04ffcdf3a253f38676521aed4b3f22c9
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Mar 17 00:00:16 2018 +0000
Automatic date update in version.in
commit 39be3c7e98728df57cfddd37fb7747f1339a319b
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Fri Mar 16 16:06:23 2018 -0400
Add silent Makefile rules
Many projects (e.g. the Linux kernel) and build systems use "silent"
rules, which means that they'll only print a summary of what's being
done instead of printing all the detailed command lines. While chatting
on the #gdb IRC channel, I realized a few people (including me) thought
it would be nice to have it in GDB too.
The idea is that too much text is not useful, the important information
gets lost. If there's only the essential information, it's more likely
to be useful. Most of the time, when I look at the build output, it's
to see how it's progressing. By just printing a brief summary of each
operation, I can easily spot what's currently being compiled and
therefore how the build progresses (with time you know the order in
which files are compiled almost by heart).
As with other projects (Linux, automake-based things, probably others),
it's possible to print the complete command lines by passing V=1 to make
(or any other non-zero value).
I had one hesitation about this: when people report build failures, we
are more likely to miss the full compile command line. We'll probably
sometimes need to ask people to include the build log with "make V=1".
I don't think it's a big downside, if other projects the size of the
Linux kernel can live with it, I'm sure we can too.
gdb/ChangeLog:
* silent-rules.mk: New.
* Makefile.in: Include silent-rules.mk
(srcdir, VPATH, top_srcdir): Move up.
(COMPILE): Add ECHO_CXX.
(test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
(init.c): Add ECHO_INIT_C.
(gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
(version.c): Add ECHO_GEN.
(printcmd.o): Add ECHO_CXX.
(target-float.o): Add ECHO_CXX.
(ada-exp.o): Add ECHO_CXX.
(stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
(insight$(EXEEXT)): Add ECHO_CXXLD.
* gnulib/configure.ac: Add AM_SILENT_RULES.
* gnulib/aclocal.m4: Re-generate.
* gnulib/configure: Re-generate.
* gnulib/import/Makefile.in: Re-generate.
gdb/gdbserver/ChangeLog:
* Makefile.in: Include silent-rules.mk.
(srcdir, abs_top_srcdir, abs_srcdir, VPATH): Move up.
(COMPILE): Add ECHO_CXX.
(gdbserver$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
(gdbreplay$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
($(IPA_LIB)): Add SILENCE and ECHO_CXXLD.
(version-generated.c): Add ECHO_GEN.
(stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN_GENERATED.
(IPAGENT_COMPILE): Add ECHO_CXX.
(%-generated.c): Add ECHO_REGDAT.
commit 37e136b1684929df204ddd09c38978c705fa7228
Author: Tom Tromey <tom@tromey.com>
Date: Mon Mar 12 21:50:33 2018 -0600
Remove make_cleanup_free_section_addr_info
This removes make_cleanup_free_section_addr_info. Instead -- per
Simon's suggestion -- this changes section_addr_info to be a
std::vector.
Regression tested by the buildbot.
gdb/ChangeLog
2018-03-16 Tom Tromey <tom@tromey.com>
* xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
* utils.h (make_cleanup_free_section_addr_info): Don't declare.
* utils.c (do_free_section_addr_info)
(make_cleanup_free_section_addr_info): Remove.
* symfile.h (struct other_sections): Add constructor.
(struct section_addr_info): Remove.
(section_addr_info): New typedef.
(struct sym_fns) <sym_offsets>: Change type of parameter.
(build_section_addr_info_from_objfile)
(relative_addr_info_to_section_offsets, addr_info_make_relative)
(default_symfile_offsets, symbol_file_add)
(symbol_file_add_from_bfd)
(build_section_addr_info_from_section_table): Update.
(alloc_section_addr_info, free_section_addr_info): Don't declare.
* symfile.c (alloc_section_addr_info): Remove.
(build_section_addr_info_from_section_table): Change return type.
Update.
(build_section_addr_info_from_bfd)
(build_section_addr_info_from_objfile): Likewise.
(free_section_addr_info): Remove.
(relative_addr_info_to_section_offsets): Change type of "addrs".
(addrs_section_compar): Now a std::sort comparator.
(addrs_section_sort): Change return type.
(addr_info_make_relative): Change type of "addrs". Update.
(default_symfile_offsets, syms_from_objfile_1)
(syms_from_objfile, symbol_file_add_with_addrs): Likewise.
(symbol_file_add_separate): Update.
(symbol_file_add): Change type of "addrs". Update.
(add_symbol_file_command): Update. Remove cleanups.
* symfile-mem.c (symbol_file_add_from_memory): Update. Remove
cleanups.
* symfile-debug.c (debug_sym_offsets): Change type of "info".
* solib.c (solib_read_symbols): Update.
* objfiles.c (objfile_relocate): Update. Remove cleanups.
* machoread.c (macho_symfile_offsets): Update.
* jit.c (jit_bfd_try_read_symtab): Update.
commit 8b067d2cf5bf801eb143b4b04da5c22607673471
Author: Andreas Arnez <arnez@linux.vnet.ibm.com>
Date: Fri Mar 16 20:40:38 2018 +0100
Fix tspeed test case: copy libinproctrace to target
The tspeed test case does not execute correctly because libinproctrace.so
is not copied to the target. This is fixed.
gdb/testsuite/ChangeLog:
* gdb.trace/tspeed.exp: Add invocation of gdb_load_shlib to ensure
that libinproctrace is copied to the target.
commit ca2fd32c5508ff1b68781ba5b82e6cdbf9ca100a
Author: Jim Wilson <jimw@sifive.com>
Date: Fri Mar 16 10:03:57 2018 -0700
RISC-V: Emit better warning for unknown CSR.
gas/
* config/tc-riscv.c (check_absolute_expr): Expand comment. New
parameter maybe_csr. If maybe_csr and O_symbol, print CSR name.
(riscv_ip): Add new argument to check_absolute_expr calls.
* testsuite/gas/riscv/bad-csr.d: New.
* testsuite/gas/riscv/bad-csr.l: New.
* testsuite/gas/riscv/bad-csr.s: New.
commit 03afa6ef8ac9e5acfa68b1005aec6756eaa1d093
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Thu Mar 15 22:01:56 2018 -0400
Add selftest for substitute_path_component
This patch add some unit tests for the substitute_path_component
function.
gdb/ChangeLog:
* Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
unittests/utils-selftests.c.
* unittests/utils-selftests.c: New file.
commit acc834c7ab79521fe06f9851c24138f25b767092
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Mar 16 00:00:29 2018 +0000
Automatic date update in version.in
commit 0854d50445a11847f80e655482fd180d7c4e4d00
Author: Max Filippov <jcmvbkbc@gmail.com>
Date: Thu Mar 15 10:35:59 2018 -0700
xtensa: bfd: fix assertion in xlate_offset_with_removed_text
Linking objects containing jumps targeting the end of a section triggers
assertion in the xlate_offset_with_removed_text. Such jumps may be
generated by a compiler as a dead code and not removed at -O0. Allow
such jumps.
While at it make bsearch argument match comparison function expectations
and use bfd_vma for address fields in the struct xlate_map_entry.
bfd/
2018-03-15 Max Filippov <jcmvbkbc@gmail.com>
* elf32-xtensa.c (xlate_map_entry): Change types of address
fields from 'unsigned' to 'bfd_vma'.
(xlate_offset_with_removed_text): Use struct xlate_map_entry as
the key argument to bsearch. Allow offsets past the end of a
section, use the last map entry for translation of such offsets.
commit 202d116e5714a0c21d0c38b7dd45b5d4ee494880
Author: Andreas Schwab <schwab@suse.de>
Date: Sun Mar 11 14:25:30 2018 +0100
RISC-V: Don't enable relaxation in relocatable link
PR ld/22949
* emultempl/riscvelf.em (riscv_elf_before_allocation): Don't
enable relaxation in relocatable link.
commit f9671640954362a918c669700bcc9a57be25782d
Author: Kuan-Lin Chen <kuanlinchentw@gmail.com>
Date: Thu Mar 15 14:50:51 2018 +0800
nds32: Remove the unsupported target feature.
commit 8bb251a84a34586bd2c7b9078ee12523ef129205
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Mar 15 00:00:38 2018 +0000
Automatic date update in version.in
commit 399912428d50cddbdd2e6e36085a9887f534459f
Author: Jim Wilson <jimw@sifive.com>
Date: Wed Mar 14 16:05:44 2018 -0700
Missing testcase files for last commit.
commit 0e35537d754f1c687850d1caccb2d78d2e418391
Author: Jim Wilson <jimw@sifive.com>
Date: Wed Mar 14 16:04:03 2018 -0700
RISC-V: Add .insn support.
gas/ChangeLog
2018-03-07 Kito Cheng <kito.cheng@gmail.com>
* config/tc-riscv.c (opcode_name_list): New.
(opcode_names_hash): Likewise.
(init_opcode_names_hash): Likewise.
(opcode_name_lookup): Likewise.
(validate_riscv_insn): New argument length, and add new format
which used in .insn directive.
(md_begin): Refine hash table initialization logic into
init_opcode_hash.
(init_opcode_hash): New.
(my_getOpcodeExpression): Parse opcode name for .insn.
(riscv_ip): New argument hash, able to handle .insn directive.
(s_riscv_insn): Handler for .insn directive.
(riscv_pseudo_table): New entry for .insn.
* doc/c-riscv.texi: Add documentation for .insn directive.
* testsuite/gas/riscv/insn.d: Add testcase for .insn directive.
* testsuite/gas/riscv/insn.s: Likewise.
include/ChangeLog
2018-03-07 Kito Cheng <kito.cheng@gmail.com>
* opcode/riscv.h (OP_MASK_FUNCT3): New.
(OP_SH_FUNCT3): Likewise.
(OP_MASK_FUNCT7): Likewise.
(OP_SH_FUNCT7): Likewise.
(OP_MASK_OP2): Likewise.
(OP_SH_OP2): Likewise.
(OP_MASK_CFUNCT4): Likewise.
(OP_SH_CFUNCT4): Likewise.
(OP_MASK_CFUNCT3): Likewise.
(OP_SH_CFUNCT3): Likewise.
(riscv_insn_types): Likewise.
opcodes/ChangeLog
2018-03-07 Kito Cheng <kito.cheng@gmail.com>
* riscv-opc.c (riscv_insn_types): New.
commit 3ae9ce5dd7d1119ca2c94c63a07b04921048ebe3
Author: Tom Tromey <tom@tromey.com>
Date: Wed Feb 14 20:11:16 2018 -0700
Special case NULL when using printf's %s format
This changes the printf command's %s and %ls formats to special-case
NULL, and print "(null)" for these. This is PR cli/14977. This
behavior seems a bit friendlier; I was undecided on whether other
invalid pointers should be handled specially somehow, so for the time
being I've left those out.
gdb/ChangeLog
2018-03-14 Tom Tromey <tom@tromey.com>
PR cli/14977:
* printcmd.c (printf_c_string, printf_wide_c_string): Special case
for NULL.
gdb/gdbserver/ChangeLog
2018-03-14 Tom Tromey <tom@tromey.com>
PR cli/14977:
* ax.c (ax_printf): Special case for NULL.
gdb/testsuite/ChangeLog
2018-03-14 Tom Tromey <tom@tromey.com>
PR cli/14977:
* gdb.base/printcmds.exp (test_printf): Add printf test of %s with
a null pointer.
* gdb.base/wchar.exp: Likewise.
commit b8c2339b2f46d4885b933b832fc5b37c7ca101a6
Author: Tom Tromey <tom@tromey.com>
Date: Wed Feb 14 11:12:17 2018 -0700
Allow - in %p for printf
PR cli/19918 points out that a printf format like "%-5p" will cause a
gdb crash. The bug is problem is that printf_pointer doesn't take the
"-" flag into account.
gdb/ChangeLog
2018-03-14 Tom Tromey <tom@tromey.com>
PR cli/19918:
* printcmd.c (printf_pointer): Allow "-" in format.
gdb/testsuite/ChangeLog
2018-03-14 Tom Tromey <tom@tromey.com>
PR cli/19918:
* gdb.base/printcmds.exp (test_printf): Add printf test using '-'
flag.
commit 80ae639d3cc4f1e83f1ad48686f87417c06ca6dc
Author: Tom Tromey <tom@tromey.com>
Date: Wed Feb 14 10:18:25 2018 -0700
Add usage to printf command
This patch adds the "Usage:" text to the printf command's help text,
and tries to improve the text a tiny bit.
gdb/ChangeLog
2018-03-14 Tom Tromey <tom@tromey.com>
* printcmd.c (_initialize_printcmd): Add usage to printf.
commit 0d671d99a6125e8406e4d06efb58542d3f0aa955
Author: Yao Qi <qiyao@sourceware.org>
Date: Wed Mar 14 13:36:40 2018 +0000
Update my email address
gdb:
2018-03-14 Yao Qi <qiyao@sourceware.org>
* MAINTAINERS: Update my email address.
commit 7dda8d3cf3b089bb7e03c4cdbec827fc6a188c88
Author: Alan Modra <amodra@gmail.com>
Date: Wed Mar 14 22:09:33 2018 +1030
PowerPC64 debian bug 886264, out-of-line save/restore functions
This calculation in relocate_section
if (stub_entry->stub_type == ppc_stub_save_res)
relocation += (stub_sec->output_offset
+ stub_sec->output_section->vma
+ stub_sec->size - htab->sfpr->size
- htab->sfpr->output_offset
- htab->sfpr->output_section->vma);
to adjust from the original out-of-line save/restore function address
in sfpr to a copy at the end of stub_sec goes wrong when stub_sec is
padded, because the copy is no longer at the end of stub_sec. The
solution is to pad before copying sfpr, so the copy is always at the
end of stub_sec.
* elf64-ppc.c (sfpr_define): Adjust for stub_sec size having
sfpr size added before defining alias symbols.
(ppc64_elf_build_stubs): Add stub section padding before
copying sfpr contents and defining save/restore alias symbols.
commit 9e223787a474c672c5f1cfd4574857241ae4eafa
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Mar 14 04:23:24 2018 -0700
GC: Also check the local debug definition section
Extend
commit b7c871edcd83ccdc5fcd8148a7f433efd6b52255
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed May 17 07:57:15 2017 -0700
Mark debug sections referenced by kept debug sections
to handle the local debug definition section.
bfd/
PR ld/20882
* elflink.c (elf_gc_mark_debug_section): Also check the local
debug definition section.
ld/
PR ld/20882
* testsuite/ld-gc/pr20882.d: Also dump and check .debug_abbrev
section.
* testsuite/ld-gc/pr20882b.s: Add .debug_abbrev section.
commit bf48520113c4265017769d374f6b1a7ce3fc8e41
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Mar 14 04:07:54 2018 -0700
gc.exp: Fix a typo: $LFLAGS -> $LDFLAGS
* testsuite/ld-gc/gc.exp: Fix a typo: $LFLAGS -> $LDFLAGS.
commit f8ed12daa1f383f43504570e401729e699f7ecfc
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Mar 14 00:00:42 2018 +0000
Automatic date update in version.in
commit b577b6af8e7f4cc53e73ee01188d1700fb8d3b82
Author: Tom Tromey <tom@tromey.com>
Date: Thu Feb 22 16:31:15 2018 -0700
Remove two cleanups using std::string
This patches removes cleanups from a couple of spots by using
std::string rather than manual memory management.
Regression tested by the buildbot, though note that I don't believe
the buildbot actually exercises the machoread code.
gdb/ChangeLog
2018-03-13 Tom Tromey <tom@tromey.com>
* machoread.c (macho_check_dsym): Change filenamep to a
std::string*.
(macho_symfile_read): Update.
* symfile.c (load_command): Use std::string.
commit e45ad1239d7d8591d5e80d8cbba7d404c6c3640f
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Mar 13 17:03:04 2018 +0000
Prevent a buffer overrun when parsing corrupt STABS debug information.
PR 22957
* stabs.c (pop_binincl): Fail if the file index is off the end of
the stack.
commit b4a3689a68d88291d5aa73b9179322f58b562db7
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Mar 13 16:57:29 2018 +0000
Updated Russian and Brazilian Portuguese translations.
ld * po/pt_BR.po: Updated Brazilian Portuguese translation.
opcodes * po/pt_BR.po: Updated Brazilian Portuguese translation.
gas * po/ru.po: Updated Russian translation.
commit 81db3241f2c888c4fae1884444953085be224815
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Mar 13 16:10:45 2018 +0000
Add range changing to STABS parsing functions, in order to prevent buffer overruns.
PR 22955
* stabs.c (parse_number): Add p_end parameter and use it to check
the validity of the pp parameter. Add checks to prevent walking
off the end of the string buffer.
(parse_stab_string): Likewise.
(parse_stab_type): Likewise.
(parse_stab_type_number): Likewise.
(parse_stab_range_type): Likewise.
(parse_stab_sun_builtin_type): Likewise.
(parse_stab_sun_floating_type): Likewise.
(parse_stab_enum_type): Likewise.
(parse_stab_struct_type): Likewise.
(parse_stab_baseclasses): Likewise.
(parse_stab_struct_fields): Likewise.
(parse_stab_cpp_abbrev): Likewise.
(parse_stab_one_struct_field): Likewise.
(parse_stab_members): Likewise.
(parse_stab_tilde_field): Likewise.
(parse_stab_array_type): Likewise.
* parse_stab: Compute the end of the string and then pass it on to
individual parser functions.
commit 3e33b239450771394fa6c83b67b9de80169f35e8
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Mar 13 14:02:52 2018 +0000
Prevent memory access violations when attempting to parse an x86_64 PE binary containing corrupt unwind information.
PR 22113
incldue * coff/pe.h (struct pex64_unwind_info): Add a rawUnwindCodesEnd
field.
bfd * pei-x86_64.c (pex64_get_unwind_info): Change to a boolean
function. Add an end address parameter. Check access of the data
pointer to make sure that they do not extend beyond the end
address. Return FALSE if any check fails. Add the end address
pointer to the ui structure.
(pex64_xdata_print_uwd_codes): Check accesses of the raw unwind
codes to make sure that they do not extend beyond the end address
pointer. Print an error message and return immediately if any
check fails.
commit b0d186effc0af8d5f5f012895a194e7e01d4804c
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Mar 13 00:00:24 2018 +0000
Automatic date update in version.in
commit 89a3b63e52be3e9bcf4b3d15e210652a5cb839c5
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Mon Mar 12 21:41:42 2018 +0000
gdb/riscv: Fix some ARI issues
Fix some ARI issues in recently added riscv code, the ARI email is:
https://sourceware.org/ml/gdb-patches/2018-03/msg00156.html
gdb/ChangeLog:
* riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
to error message string.
(riscv_register_name): Use xsnprintf instead of sprintf.
(riscv_insn::fetch_instruction): Use gdb_assert instead of
internal_error.
(riscv_print_arg_location): Use gdb_assert_not_reached instead of
error.
(riscv_push_dummy_call): Likewise.
commit 984c72381ccd9f950a87d4d7edecc6fa30db8b41
Author: Tom Tromey <tom@tromey.com>
Date: Thu Mar 8 22:28:54 2018 -0700
Use gdb::byte_vector when reading section data
This changes a couple of spots that read section data to use
gdb::byte_vector rather than a cleanup.
Regression tested by the buildbot. I am not certain that the buildbot
actually tests the code in question, so I recommend careful review.
gdb/ChangeLog
2018-03-12 Tom Tromey <tom@tromey.com>
* rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
Use gdb::byte_vector.
* arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
commit 933522d1dbc9162fbc69453f0ab5f72998df2955
Author: Yao Qi <yao.qi@linaro.org>
Date: Mon Mar 12 09:15:39 2018 +0000
Fix ia64 GDB build
Commit 849d0ba8 breaks GDB build for ia64 with --with-libunwind-ia64=yes.
This patch fixes it.
gdb:
2018-03-12 Yao Qi <yao.qi@linaro.org>
* ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
parameter type to readable_regcache.
* ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
the declaration.
commit be2daae6b8df45f3f6de5d94a1938cef54336a72
Author: Tom Tromey <tom@tromey.com>
Date: Sat Mar 10 20:47:06 2018 -0700
Use std::vector for field lists in dwarf2read.c
This changes dwarf2read.c to use std::vector rather than a linked list
when managing the fields and base classes to be added to a type. This
removes some bookkeeping types and also allows the removal of some
cleanups.
gdb/ChangeLog
2018-03-11 Tom Tromey <tom@tromey.com>
* dwarf2read.c (struct nextfield): Add initializers.
(struct nextfnfield): Remove.
(struct fnfieldlist): Add initializers. Remove "length" and
"head", use std::vector.
(struct decl_field_list): Remove.
(struct field_info): Add initializers.
<fields, baseclasses>: Now std::vector.
<nbaseclasses, nfnfields, typedef_field_list_count,
nested_types_list_count>: Remove.
(dwarf2_add_field, dwarf2_add_type_defn)
(dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
(dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
(process_structure_scope): Update.
commit 484cf504af0e9403e3437a5d2c5fb361c73daa90
Author: Tom Tromey <tom@tromey.com>
Date: Sun Feb 25 11:11:59 2018 -0700
Remove cleanup from build_type_psymtabs_1
This removes a cleanup from build_type_psymtabs_1, by using
std::vector rather than manual memory management.
gdb/ChangeLog
2018-03-11 Tom Tromey <tom@tromey.com>
* dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
for use by std::sort.
(build_type_psymtabs_1): Use std::vector.
commit c20bca94fa17fa59bacd7702acbbbe87a64c0193
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Mar 12 00:00:40 2018 +0000
Automatic date update in version.in
commit 69a52a7b7a5272ceac5ac7004b553826d3c1f6a7
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Mar 11 00:01:12 2018 +0000
Automatic date update in version.in
commit 7d4f13635fd26bceb34ba5002ee9008463755bbe
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Mar 10 00:00:30 2018 +0000
Automatic date update in version.in
commit 80c34c3812f8bae13fb902dbaaa287ca207857ac
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Mar 9 08:10:27 2018 -0800
x86: Encode EVEX instructions with VEX128 if possible
If EVEX encoding isn't required, we can encode EVEX instructions with
VEX128.
* config/tc-i386.c (optimize_encoding): Encode EVEX instructions
with VEX128 if EVEX encoding isn't required.
* testsuite/gas/i386/optimize-1.d: Updated.
* testsuite/gas/i386/x86-64-optimize-2.d: Likewise.
commit f657f8c4a1dc0ac69b16b1dc6eacbf5286f1f0a0
Author: Nick Clifton <nickc@redhat.com>
Date: Fri Mar 9 14:37:36 2018 +0000
Fix Sparc, s390 and AArch64 targets so that they can handle relocs against ifunc symbols found in note sections.
Following on from PR 22929, I have found the same problem exists with
other ifunc supporting targets too. Plus see this link for the bug
being reported against the s390x binutils for Fedora rawhide:
https://bugzilla.redhat.com/show_bug.cgi?id=1553705
So I am going to check in the patch below which applies the same
change that H.J. made for the x86_64 target to the other affected
targets. (Specifically: S390, AArch64 and Sparc). Plus it adds a new
test to the linker testsuite to make sure that this problem stays
fixed.
bfd * elf64-s390.c (elf_s390_relocate_section): Move check for
relocations against non-allocated sections to before the code that
handles ifunc relocations.
* elf32-s390.c (elf_s390_relocate_section): Likewise.
* elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Treat
relocs against IFUNC symbols in non-allocated sections as relocs
against FUNC symbols.
* elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
ld * testsuite/ld-ifunc/ifuncmod5.s: New test. Checks that targets
that support IFUNC symbols can handle relocations against those
symbols in NOTE sections.
* testsuite/ld-ifunc/ifuncmod5.d: New file: Driver for the new
test.
* testsuite/ld-ifunc/ifunc.exp: Run the new test.
commit 9bd8e0b072ad5fc5b8956fd5d3e51dc5a9b0f236
Author: Eli Zaretskii <eliz@gnu.org>
Date: Fri Mar 9 15:59:11 2018 +0200
Update "gdb --configuration" with recently added features
This adds display of a few recently added optional features.
gdb/ChangeLog:
2018-03-09 Eli Zaretskii <eliz@gnu.org>
* top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
and LIBMPFR in the printed configuration.
commit 0ba3a73180afa69e6920ba8c220f0323cb4fb896
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Mar 9 03:51:19 2018 -0800
x86: Strip whitespace in check_VecOperations
Since the addition of pseudo prefixes changed how the scrubber treats
'{', we need to explicitly strip whitespace in check_VecOperations ().
* config/tc-i386.c (check_VecOperations): Strip whitespace.
* testsuite/gas/i386/optimize-1.s: Add whitespaces before
{%k7} and {z},
* testsuite/gas/i386/x86-64-optimize-2.s: Likewise.
commit 5dc1a7047a77f86de7518a99805af64891d4e22a
Author: Tom Tromey <tom@tromey.com>
Date: Thu Feb 22 15:21:42 2018 -0700
Use scoped_fd in more places
This changes a few more places to use scoped_fd. This allows the
removal of some cleanups.
Regression tested by the buildbot, though note that I'm not sure
whether the buildbot actually builds anything using all of these
files.
gdb/ChangeLog
2018-03-08 Tom Tromey <tom@tromey.com>
* source.c (get_filename_and_charpos): Use scoped_fd.
* nto-procfs.c (procfs_open_1): Use scoped_fd.
(procfs_pidlist): Likewise.
* procfs.c (proc_get_LDT_entry): Use scoped_fd.
(iterate_over_mappings): Likewise.
commit fdf07f3aeba5906fec462fba33801c173862f241
Author: Tom Tromey <tom@tromey.com>
Date: Wed Mar 7 15:55:01 2018 -0700
Change enable_thread_stack_temporaries to an RAII class
This started as a patch to change enable_thread_stack_temporaries to
be an RAII class, but then I noticed that this code used a VEC, so I
went ahead and did a bit more C++-ification, changing
stack_temporaries_enabled to a bool and changing stack_temporaries to
a std::vector.
Regression tested by the buildbot.
gdb/ChangeLog
2018-03-08 Tom Tromey <tom@tromey.com>
* infcall.c (struct call_return_meta_info)
<stack_temporaries_enabled>: Remove.
(get_call_return_value, call_function_by_hand_dummy): Update.
* thread.c (disable_thread_stack_temporaries): Remove.
(enable_thread_stack_temporaries): Remove.
(thread_stack_temporaries_enabled_p): Return bool.
(push_thread_stack_temporary, value_in_thread_stack_temporaries)
(get_last_thread_stack_temporary): Update.
* eval.c (evaluate_subexp): Update.
* gdbthread.h (class enable_thread_stack_temporaries): Now a
class, not a function.
(value_ptr, value_vec): Remove typedefs.
(class thread_info) <stack_temporaries_enabled>: Now bool.
<stack_temporaries>: Now a std::vector.
(thread_stack_temporaries_enabled_p)
(value_in_thread_stack_temporaries): Return bool.
commit 0089daceaba4338046932e65a1b5882065416633
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Mar 8 19:57:35 2018 -0800
x86: Optimize with EVEX128 encoding for AVX512VL
We can optimize AVX512 instructions with EVEX128 only if AVX512VL is
enabled:
1. Instruction is an AVX512VL instruction. Or
2. AVX512VL is enabled explicitly by -march=+avx512vl/".arch .avx512vl".
We should optimize EVEX instructions with EVEX128 encoding when pseudo
{evex} prefix is used.
* config/tc-i386.c (set_cpu_arch): Set cpu_arch_isa_flags.
(md_parse_option): Likewise.
(optimize_encoding): Check i.tm.cpu_flags and cpu_arch_isa_flags
for cpuavx512vl instead of cpu_arch_flags. Optimize EVEX with
EVEX128 when EVEX encoding is required.
* testsuite/gas/i386/i386.exp: Run optimize-4, optimize-5,
x86-64-optimize-5 and x86-64-optimize-6.
* testsuite/gas/i386/optimize-1.d: Updated.
* testsuite/gas/i386/x86-64-optimize-2.d: Likewise.
* testsuite/gas/i386/optimize-4.d: New file.
* testsuite/gas/i386/optimize-4.s: Likewise.
* testsuite/gas/i386/optimize-5.d: Likewise.
* testsuite/gas/i386/optimize-5.s: Likewise.
* testsuite/gas/i386/x86-64-optimize-5.d: Likewise.
* testsuite/gas/i386/x86-64-optimize-5.s: Likewise.
* testsuite/gas/i386/x86-64-optimize-6.d: Likewise.
* testsuite/gas/i386/x86-64-optimize-6.s: Likewise.
commit 567a3e54d211ab8d09119f99fed10b57db895450
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Thu Mar 8 19:00:03 2018 -0500
Fix misreporting of omitted bytes for large remote packets
In remote.c, when the output of "set debug remote" is truncated, the
number of characters reported is incorrect. What is reported is the
number of characters added by the quoting, not the number of characters
that were truncated.
gdb/ChangeLog:
* remote.c (putpkt_binary): Fix omitted bytes reporting.
(getpkt_or_notif_sane_1): Likewise.
commit f6d8ae8f07b63c711d4b62403e1766b5eea90103
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Mar 9 00:00:30 2018 +0000
Automatic date update in version.in
commit 00b400574aa75c1c5fe469233ab16930e2d8a4c8
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Thu Mar 8 18:57:53 2018 -0500
Use std::string to simplify build_id_to_debug_bfd
Using std::string here makes the string building simpler thank playing
with char*. A stack allocation is replaced with heap allocation, but
I don't think this is really performance-critical code.
gdb/ChangeLog:
* build-id.c (build_id_to_debug_bfd): Use std::string.
commit a8dbfd5853e3a5f7f2a3ca817e96d9e0759061a2
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Thu Mar 8 18:56:23 2018 -0500
Make find_separate_debug_file* return std::string
This patch makes the find_separate_debug_file* functions return
std::string, which allows to get rid of some manual memory management
and one cleanup.
gdb/ChangeLog:
* build-id.c (find_separate_debug_file_by_buildid): Return
std::string.
* build-id.h (find_separate_debug_file_by_buildid): Return
std::string.
* coffread.c (coff_symfile_read): Adjust to std::string.
* elfread.c (elf_symfile_read): Adjust to std::string.
* symfile.c (separate_debug_file_exists): Change parameter to
std::string.
(find_separate_debug_file): Return std::string.
(find_separate_debug_file_by_debuglink): Return std::string.
* symfile.h (find_separate_debug_file_by_debuglink): Return
std::string.
commit e6a58aa8a70c7fd17d9930e7df8d158a7e3c8c8e
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Thu Mar 8 18:04:46 2018 -0500
Add xml_escape_text_append and use it
[This patch should go on top of "linux_qxfer_libraries_svr4: Use
std::string", I should have sent them together as a series.]
I noticed that linux_qxfer_libraries_svr4 used xml_escape_text, which
returns an std::string. That string is then copied into a larger
buffer. It would be more efficient if we had a version of
xml_escape_text which appended to an existing string instead of
returning a new one. This is what this patch does.
I manually verified that the output of linux_qxfer_libraries_svr4 didn't
change before/after the patch.
gdb/ChangeLog:
* common/xml-utils.c (xml_escape_text): Move code to...
(xml_escape_text_append): ... this new function.
* common/xml-utils.h (xml_escape_text_append): New declaration.
* unittests/xml-utils-selftests.c (test_xml_escape_text_append):
New function.
(_initialize_xml_utils): register test_xml_escape_text_append as
a selftest.
gdb/gdbserver/ChangeLog:
* linux-low.c (linux_qxfer_libraries_svr4): Use
xml_escape_text_append.
commit f6e8a41e6724e641d3b831983e4d158ff069b8ed
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Thu Mar 8 18:04:07 2018 -0500
linux_qxfer_libraries_svr4: Use std::string
Use std::string, removing some manual memory management.
gdb/gdbserver/ChangeLog:
* linux-low.c (linux_qxfer_libraries_svr4): Use std::string.
commit 4872dc464db25a003c66ef91773b616495cc504f
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Thu Mar 8 17:54:25 2018 -0500
remote-stdio-gdbserver: Pass "target" to remote_exec to delete file
As described here
https://sourceware.org/bugzilla/show_bug.cgi?id=22841
there seems to be situations where the remote-stdio-gdbserver board
fails to delete the uploaded binary file. Passing "target" fixes the
issue for Christian who reported the bug.
I did not experience this problem, but passing "target" to remote_exec
still works for me, so I'm fine with changing it.
Any objection?
gdb/testsuite/ChangeLog:
PR gdb/22841
* boards/remote-stdio-gdbserver.exp (${board}_file): Pass
"target" to remote_exec.
commit e4fe3756763773940b003159649f224a5ac42ee0
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Thu Mar 8 17:53:57 2018 -0500
Don't redefine upload/download/file in gdbserver-base
Before patch
Make native gdbserver boards no longer be "remote" (in DejaGnu terms)
739b3f1d8ff7072dcc66240c25b026c6433bda1a
the local gdbserver boards (except native-extended-gdbserver...) were
considered as remote by DejaGNU. To avoid DejaGNU trying to use ssh/scp
to download the files to the target (which is actually local), the
gdbserver-base.exp file defined some _download, _upload and _file board
operations to override the default behavior, and instead just use local
operations.
The same patch also changed remote-stdio-gdbserver.exp to make it
inherit from gdbserver-base.exp. Since then, this board (which is
actually remote) uses the overrides with local file operations. As a
result, files are never actually copied to the target.
I think we can simply remove the overrides from gdbserver-base.exp.
Because all boards should be properly considered local or remote by
DejaGNU, it should by default use the right method for transferring
files.
gdb/testsuite/ChangeLog:
PR gdb/22841
* boards/gdbserver-base.exp (${board}_file, ${board}_download,
${board}_upload): Remove.
commit d3d50934a9101416c3106497d6ea9ce548760253
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Mar 8 06:41:34 2018 -0800
x86-64: Also optimize "clr reg64"
"clr reg" is an alias of "xor reg, reg". We can encode "clr reg64" as
"xor reg32, reg32".
gas/
* config/tc-i386.c (optimize_encoding): Also encode "clr reg64"
as "xor reg32, reg32".
* testsuite/gas/i386/x86-64-optimize-1.s: Add "clr reg64" tests.
* testsuite/gas/i386/x86-64-optimize-1.d: Updated.
opcodes/
* i386-opc.tbl: Add Optimize to clr.
* i386-tbl.h: Regenerated.
commit 347a87745eab23d8427349787bde4a938a1e8c3e
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Mar 8 06:36:40 2018 -0800
x86: Treat relocation against IFUNC symbol as FUNC
When resolving a relocation against IFUNC symbol in a SHT_NOTE section
without SHF_ALLOC, we treat it as relocation against FUNC symbol since
it needs the address of IFUNC symbol, not the address returned by IFUNC
function.
bfd/
PR ld/22929
* elf32-i386.c (elf_i386_relocate_section): Treat relocation
against IFUNC symbol in SHT_NOTE section without SHF_ALLOC as
relocation against FUNC symbol.
* elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
ld/
PR ld/22929
* testsuite/ld-i386/i386.exp: Run PR ld/22929 test.
* testsuite/ld-x86-64/x86-64.exp: Likewise.
* testsuite/ld-i386/pr22929.d: New file.
* testsuite/ld-i386/pr22929.s: Likewise.
* testsuite/ld-x86-64/pr22929.d: Likewise.
* testsuite/ld-x86-64/pr22929.s: Likewise.
commit bd5dea8822e515faf305690ca5c5281132d95587
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Mar 8 06:31:32 2018 -0800
x86: Remove support for old (<= 2.8.1) versions of gcc
Old (<= 2.8.1) versions of gcc generate broken fsubp, fsubrp, fdivp and
fdivrp instructions. Assembler translates them to correct ones with a
warning:
[hjl@gnu-cfl-1 gas]$ cat x.s
fsubp %st(3),%st
[hjl@gnu-cfl-1 gas]$ gcc -c x.s
x.s: Assembler messages:
x.s:1: Warning: translating to `fsubp %st,%st(3)'
[hjl@gnu-cfl-1 gas]$
This patch removes support for old (<= 2.8.1) versions of gcc:
[hjl@gnu-cfl-1 gas]$ ./as-new -o x.o x.s
x.s: Assembler messages:
x.s:1: Error: operand type mismatch for `fsubp'
[hjl@gnu-cfl-1 gas]$
gas/
* NEWS: Mention -mold-gcc removal.
* config/tc-i386.c (i386_error): Remove old_gcc_only.
(old_gcc): Removed.
(match_template): Remove old gcc support.
(OPTION_MOLD_GCC): Removed.
(OPTION_MRELAX_RELOCATIONS): Updated.
(md_longopts): Remove OPTION_MOLD_GCC.
(md_parse_option): Likewise.
(md_show_usage): Remove -mold-gcc.
* testsuite/gas/i386/general.s: Convert fsub/fdiv tests for old
(<= 2.8.1) versions of gcc.
* testsuite/gas/i386/intel.s: Likewise.
* testsuite/gas/i386/general.l: Updated.
* testsuite/gas/i386/intel-intel.d: Likewise.
* testsuite/gas/i386/intel.d: Likewise.
* testsuite/gas/i386/intel.e: Likewise.
* testsuite/gas/i386/i386.exp: Don't pass -mold-gcc to general.
include/
* opcode/i386 (OLDGCC_COMPAT): Removed.
opcodes/
* i386-gen.c (opcode_modifiers): Remove OldGcc.
* i386-opc.h (OldGcc): Removed.
(i386_opcode_modifier): Remove oldgcc.
* i386-opc.tbl: Remove fsubp, fsubrp, fdivp and fdivrp
instructions for old (<= 2.8.1) versions of gcc.
* i386-tbl.h: Regenerated.
commit 4ef0bef68cfc777e59156fce1563583c0ffb76d9
Author: Alan Hayward <alan.hayward@arm.com>
Date: Thu Mar 8 09:42:21 2018 +0000
Remove MAX_REGISTER_SIZE define
gdb/
* defs.h: Remove MAX_REGISTER_SIZE.
* regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
asserts.
* python/py-unwind.c (pyuw_sniffer): Likewise.
commit e771e7c9fb79487d7b192769bc2d91fbe4118ba6
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 8 08:58:55 2018 +0100
x86: fold several AVX512VL templates
The differences between some of the register and memory forms of the
same insn often don't really require the templates to be separate. For
example, Disp8MemShift is simply irrelevant to register forms. Fold
these as far as possible, and also fold register-only forms. Further
folding is possible, but needs other prereq work done first.
A note regarding EVEXDYN: This is intended to be used only when no other
properties of the template would make is_evex_encoding() return true. In
all "normal" cases I think it is preferable to omit this indicator, to
keep the table half way readable.
commit ed438a93f18024da926eb4f56a0f96f597254a55
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 8 08:58:05 2018 +0100
x86: fold certain AVX512 rotate and shift templates
Their memory forms were bogusly using VexLWP instead of VexNDD. Adjust
VexNDD handling to cope with these, allowing their register and memory
forms to be folded.
commit 454172a99e4aebafa2cd42d389cd63a8733a046a
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 8 08:57:19 2018 +0100
x86: fold VEX-encoded GFNI templates
commit 3682415023547d90050dbb7ac8507e0c77109906
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 8 08:56:47 2018 +0100
x86: fold a few AVX512F templates
The differences between some of the register and memory forms of the
same insn often don't really require the templates to be separate. For
example, Disp8MemShift is simply irrelevant to register forms. Fold them
as far as possible. Further folding is possible, but needs other prereq
work done first.
commit e7f5c0a99ec597c097cf65e0c8503b7075e32d16
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 8 08:56:08 2018 +0100
x86: fold LWP templates
Also drop the no longer necessary explicit Disp<N> from them.
commit 25a4277fec9efb37b107f6bb6c9246f05cd3c348
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 8 08:55:37 2018 +0100
x86: fold FMA and FMA4 templates
commit d2224064f1a70969a77a8a82b117489793d6653e
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 8 08:52:27 2018 +0100
x86: drop {X,Y,Z}MMWORD_MNEM_SUFFIX
They aren't really useful (anymore?): The conflicting operand size check
isn't applicable to any insn validly using respective memory operand
sizes (and if they're used wrongly, another error would result), and the
logic in process_suffix() can be easily changed to work without them.
While re-structuring conditionals in process_suffix() also drop the
CMPXCHG8B special case in favor of a NoRex64 attribute in the opcode
table.
commit 23e42951f2f2cca539c69a843ae31d9c6cdb194b
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 8 08:51:18 2018 +0100
x86: correct operand size match checks for BMI/BMI2 insns
Some BMI/BMI2 insns allow their middle operands to be a memory one. In
such a case, matching register types between operands 0 and 1 as well as
1 and 2 won't help - operands 0 and 2 also need to be checked.
commit 8819ada6c48777c0dd0835d46f4a9dd3ecf2b0ec
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 8 08:50:13 2018 +0100
x86: fold redundant expressions in process_suffix()
There's no point repeatedly evaluating i.types[op].bitfield.reg.
commit 548d0ee6e726c366fda3f37251f329ec51decc6d
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 8 08:48:10 2018 +0100
x86: simplify result processing of cpu_flags_match()
Make more obvious what the success and failure paths are, and in
particular that what used to be at the "skip" label can't be reached
by what used to be straight line code.
commit 929f69fa966f9ed7a1a8cce19a168348295863c2
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 8 08:47:32 2018 +0100
x86: add GFNI, VAES, and VPCLMUL checking to cpu_flags_match()
Just like for the AVX/AES and AVX/PCLMUL combinations, AVX/GFN,
AVX512F/GFNI, AVX512F/VAES, and AVX512F/PCLMUL need special handling to
deal with the pair of required checks specified in the templates.
commit ab592e757ed0a4117f68c6b722803e8ba108bf66
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 8 08:45:56 2018 +0100
x86: change AVX512VL handling in cpu_flags_match()
In order to add an AVX512F counterpart to the present AVX checking, it
is better to move the AVX512VL check out of the conditional it's
currently in.
commit db12e14ea0f35738dbde263a8d37610995227853
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 8 08:45:25 2018 +0100
x86: drop CPU_FLAGS_32BIT_MATCH
It has become a plain alias of CPU_FLAGS_ARCH_MATCH now.
commit b9d498173c0394b385f0ddef636b87e6235564da
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 8 08:44:52 2018 +0100
x86: simplify AVX checks in cpu_flags_match()
No caller cares about the specifics of CPU_FLAGS_{AES,AVX,PCLMUL}_MATCH,
so drop those and fold the nested if()-s.
commit bcb1753ee643a7d5ac136189f9bc06717dfdfb64
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 8 08:44:12 2018 +0100
x86: avoid cpu_flags_match() bogusly setting CPU_FLAGS_ARCH_MATCH
commit 1b193f0b1263a677f630fb419d13fc14a1d99981
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 8 08:36:41 2018 +0100
x86: drop bogus NoAVX
These are meaningful only for insns with CpuSSE* (and a few other Cpu*)
attribute.
commit f2f6a710f46e3e7b357128d907002945751afcfd
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 8 08:35:48 2018 +0100
x86: avoid SSE check for LDMXCSR/STMXCSR
Neither touches any XMM register, so the check is pointless. It is imo
even questionable whether in SSE2AVX mode the two should be converted to
their AVX counterparts.
commit 6e3e5c9e4181562682ffb60c562c4bce263b71a0
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 8 08:35:01 2018 +0100
x86: extend SSE check to PCLMULQDQ, AES, and GFNI insns
When aiming at not mixing SSE and AVX insns, these should be warned
about the same way other non-AVX ones are treated.
commit 38e314eb064ae94318deaa9544c2da3f46f5d319
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 8 08:34:09 2018 +0100
x86: drop FloatD
It can be expressed by D, when making the consumer look at operand size
to tell apart both uses.
commit d53e6b98a2599ba4ce6ad14f711b76e44a32eea5
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 8 08:33:06 2018 +0100
x86/Intel: correct disassembly of fsub*/fdiv*
fsub/fsubr/fsubp/fsubrp as well as fdiv/fdivr/fdivp/fdivrp disassembly
should match (a) the Intel SDM and (b) respective input fed to gas (both
of course with the exception of when we intentionally convert bogus
insns, accompanied by a warning).
commit a477a8c4f4f7e827d32abc1fbb45bdb3c37cff09
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 8 08:27:28 2018 +0100
x86: adjust 4-XMM-register-group related warning
Drop "second": For one there's no other source register (the other
source operand is in memory), and in Intel syntax such numbering would
also be wrong.
Take the opportunity and also
- properly place declarations ahead of statements
- use %u format for unsigned int arguments
- fix indentation
commit 2907c2f55555de6b1df9a0262629003f4856807d
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 8 08:26:35 2018 +0100
x86: bogus VMOVD with 64-bit operands should only allow for registers
These templates exist solely to satisfy gcc's needs, and gcc only
produces these with register operands.
commit 73053c1fc454fe8554db170f1a30a3442546824e
Author: Jan Beulich <jbeulich@novell.com>
Date: Thu Mar 8 08:25:31 2018 +0100
x86: fold AVX vcvtpd2ps memory forms
This requires a change to ModR/M handling: Recording of displacement
types must not discard operand size information. Change the respective
code to alter only .disp<N>.
commit 6a7524c6aa18f5afa4977314eb01f0360e752789
Author: Alan Modra <amodra@gmail.com>
Date: Thu Mar 8 14:34:09 2018 +1030
Really remove unnecessary power9 group terminating nop
Oops, not tested well enough. -mpower9 sets all the PPC_OPCODE_POWERn
for n <= 9.
* config/tc-ppc.c (ppc_handle_align): Correct last patch. Really
don't emit a group terminating nop for power9. Simplify cpu
tests.
commit 3fea0c3b3fe53ea805f1289ec9ff5e785024362f
Author: Alan Modra <amodra@gmail.com>
Date: Thu Mar 8 10:17:41 2018 +1030
Remove unnecessary power9 group terminating nop
Power9 doesn't have a group terminating nop, so we may as well emit a
normal nop for power9. Not that it matters a great deal, I believe
ori 2,2,0 will be treated exactly as ori 0,0,0 by the hardware.
* config/tc-ppc.c (ppc_handle_align): Don't emit a group
terminating nop for power9.
commit 6d4f21f6eee9933a2883f2a214953432c13ee1c2
Author: Paul Pluzhnikov <ppluzhnikov@google.com>
Date: Wed Mar 7 18:16:34 2018 -0800
Fix PR binutils/22923.
A static buffer in get_ver_flags may overflow when e.g. German translation
is longer than English original. Avoid that by expanding the buffer.
commit bdd2279f13c6415e19a9ba0fd91dfff00a9cc80a
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Mar 8 00:00:42 2018 +0000
Automatic date update in version.in
commit e0d3522b888033febd153a4a7d3b7c5c13641f09
Author: Tom Tromey <tom@tromey.com>
Date: Wed Nov 22 23:37:38 2017 -0700
Return gdb::optional<std::string> from target_fileio_readlink
This changes to_fileio_readlink and target_fileio_readlink to return a
gdb::optional<std::sring>, and then fixes up the callers and
implementations. This allows the removal of some cleanups.
Regression tested by the buildbot.
gdb/ChangeLog
2018-03-07 Tom Tromey <tom@tromey.com>
* linux-tdep.c (linux_info_proc): Update.
* target.h (struct target_ops) <to_fileio_readlink>: Return
optional<string>.
(target_fileio_readlink): Return optional<string>.
* remote.c (remote_hostio_readlink): Return optional<string>.
* inf-child.c (inf_child_fileio_readlink): Return
optional<string>.
* target.c (target_fileio_readlink): Return optional<string>.
commit d6ab64818b9d212691c200c292dc0f18d193598c
Author: Max Filippov <jcmvbkbc@gmail.com>
Date: Mon Mar 5 21:49:35 2018 -0800
xtensa: ld: support -z relro
ld/
2018-03-07 Max Filippov <jcmvbkbc@gmail.com>
* emulparams/elf32xtensa.sh (COMMONPAGESIZE): Define.
commit 779bdadbea9a62e5a2203651703e15edd321b9d6
Author: Sriraman Tallam <tmsriram@google.com>
Date: Wed Mar 7 12:15:49 2018 -0800
New option -z,keep-text-section prefix.
This option does not merge certain text sections with prefixes
.text.hot, .text.unlikely, .text.startup and .text.exit.
* layout.cc (Layout::default_section_order): Check for text section
prefixes.
(Layout::text_section_name_mapping): New static member.
(Layout::text_section_name_mapping_count): New static member.
(Layout::match_section_name): New static function.
(Layout::output_section_name): Check for text section prefixes.
* layout.h (Output_section_order::ORDER_TEXT_HOT): New enum value.
(Output_section_order::ORDER_TEXT_STARTUP): New enum value.
(Output_section_order::ORDER_TEXT_EXIT): New enum value.
(Output_section_order::ORDER_TEXT_UNLIKELY): New enum value.
(Layout::text_section_name_mapping): New static member.
(Layout::text_section_name_mapping_count): New static member.
(Layout::match_section_name): New static function.
* options.h (keep_text_section_prefix): New -z option.
* testsuite/Makefile.am (keep_text_section_prefix): New test.
* testsuite/Makefile.in: Regenerate.
* testsuite/keep_text_section_prefix.cc: New test source.
* testsuite/keep_text_section_prefix.sh: New test script.
commit ea005f31ca7a823680c70a75ae073bee52487859
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Tue Mar 6 16:27:13 2018 +0000
gdb: Add riscv to list of architectures with a save_reggroup
The regcache cooked_read test needs to know which architectures have a
save_reggroup, riscv does and needs adding to the list.
gdb/ChangeLog:
* regcache.c (cooked_read_test): Add riscv to the list of
architectures that have a save_reggroup.
commit 0c1ded8dc0be9c61975e04a0b416b064223f7bda
Author: Renlin Li <renlin.li@arm.com>
Date: Wed Mar 7 09:27:45 2018 +0000
[PR20402][LD][AARCH64]Don't emit RELATIVE relocation for absolute symbols which are resolved at static linking time.
For absolute symbols which are forced local or not dynamic, the ABS relocation
should be resolved at static linking time.
Originally, an RELATIVE/ABS relocation will be generated even for absolution
symbols for the dynamic linker to resolve.
bfd/
2018-03-07 Renlin Li <renlin.li@arm.com>
PR ld/20402
* elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Check absolute symbol,
and don't emit relocation in specific case.
ld/
2018-03-07 Renlin Li <renlin.li@arm.com>
PR ld/20402
* testsuite/ld-aarch64/aarch64-elf.exp: Run new test.
* testsuite/ld-aarch64/pr20402.s: New.
* testsuite/ld-aarch64/pr20402.d: New.
commit e95a97d41a186ac65077ba3103dc10e5d41fe7b5
Author: Andreas Arnez <arnez@linux.vnet.ibm.com>
Date: Wed Mar 7 14:29:19 2018 +0100
Fix watching structs in C++
Some of the watchpoint logic depends on the fact that the head of the
value chain represents the user-specified value to watch. Thus no
additional values should be added to the value chain after that. However,
if a watchpoint is defined for a C++ structure/class object, then run-time
type information (RTTI) may be present. Thus, while constructing the
value chain for the watchpoint, the dynamic type is fetched by
gnuv3_rrti_type, which invokes value_addr, which then adds a new value to
the head of the value chain. This new value represents the pointer to the
structure instead of the structure itself.
With such a "polluted" value chain the watchpoint logic does not recognize
when the user intended to watch a struct, and can_use_hardware_watchpoint
returns zero. Instead of a hardware watchpoint, a software watchpoint
will then be set for no apparent reason.
This is fixed by adding an early exit to gnuv3_rtti_type when the input
value is not a dynamic class object.
gdb/testsuite/ChangeLog:
* gdb.cp/watch-cp.cc: New test.
* gdb.cp/watch-cp.exp: New file.
gdb/ChangeLog:
* gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
value is not a dynamic class object.
commit 3ae729d5a4f63740ed9a778960b17c2912b0bbdd
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Mar 7 04:18:45 2018 -0800
x86: Rewrite NOP generation for fill and alignment
Rewrite NOP generation for fill and code alignment by:
1. Add a 11-byte NOP with another 0x66 prefix.
2. Remove the multi-byte NOP entries which consist of 2 instructions.
3. Select proper NOPs based on ISA and processor tuning.
4. Generate multiple NOPs with the longer NOPs first followed by the
shorter NOP.
5. Use jump for larger NOP padding:
a. > 8 bytes (2 NOPs) in 16-bit mode.
b. > 14 bytes (2 NOPs) for older processors.
c. > 77 bytes (7 NOPs) for newer processors.
6. Update MAX_MEM_FOR_RS_ALIGN_CODE to 4095.
PR gas/22874
* config/tc-i386.c (f32_5): Removed.
(f32_8): Likewise.
(f32_9): Likewise.
(f32_10): Likewise.
(f32_11): Likewise.
(f32_12): Likewise.
(f32_13): Likewise.
(f32_14): Likewise.
(f16_5): Likewise.
(f16_6): Likewise.
(f16_7): Likewise.
(f16_8): Likewise.
(jump_31): Likewise.
(alt64_11): Likewise.
(alt64_patt): Likewise.
(jump_disp8): New.
(jump32_disp32): Likewise.
(jump16_disp32): Likewise.
(alt_11): Likewise.
(f32_patt): Updated.
(f16_patt): Likewise.
(alt_patt): Add alt_11.
(i386_align_code): Merged with ...
(i386_generate_nops): This. Rewritten.
(fits_in_imm7): Moved before i386_generate_nops.
(fits_in_imm31): Likewise.
* config/tc-i386.h (MAX_MEM_FOR_RS_ALIGN_CODE): Updated to
4095.
(i386_align_code): Removed.
(HANDLE_ALIGN): Rewritten with i386_generate_nops.
* doc/as.texinfo: Update limits of control byte for x86 .nops
directive.
* testsuite/gas/i386/i386.exp: Run nops-7 and x86-64-nops-7.
* gas/testsuite/gas/i386/noavx-3.l: Updated.
* gas/testsuite/gas/i386/nop-1.d: Likewise.
* gas/testsuite/gas/i386/nop-1.s: Likewise.
* gas/testsuite/gas/i386/nop-2.d: Likewise.
* gas/testsuite/gas/i386/nop-2.s: Likewise.
* gas/testsuite/gas/i386/nop-3.d: Likewise.
* gas/testsuite/gas/i386/nop-4.d: Likewise.
* gas/testsuite/gas/i386/nop-5.d: Likewise.
* gas/testsuite/gas/i386/nop-5.s: Likewise.
* gas/testsuite/gas/i386/nop-6.d: Likewise.
* gas/testsuite/gas/i386/nop-bad-1.l: Likewise.
* gas/testsuite/gas/i386/nops-1-core2.d: Likewise.
* gas/testsuite/gas/i386/nops-1-i386-i686.d: Likewise.
* gas/testsuite/gas/i386/nops-1-i386.d: Likewise.
* gas/testsuite/gas/i386/nops-1-i686.d: Likewise.
* gas/testsuite/gas/i386/nops-1-k8.d: Likewise.
* gas/testsuite/gas/i386/nops-1.d: Likewise.
* gas/testsuite/gas/i386/nops-2-core2.d: Likewise.
* gas/testsuite/gas/i386/nops-2-i386.d: Likewise.
* gas/testsuite/gas/i386/nops-2.d: Likewise.
* gas/testsuite/gas/i386/nops-3-i386.d: Likewise.
* gas/testsuite/gas/i386/nops-3-i686.d: Likewise.
* gas/testsuite/gas/i386/nops-3.d: Likewise.
* gas/testsuite/gas/i386/nops-4-i386.d: Likewise.
* gas/testsuite/gas/i386/nops-4-i686.d: Likewise.
* gas/testsuite/gas/i386/nops-4.d: Likewise.
* gas/testsuite/gas/i386/nops-4a-i686.d: Likewise.
* gas/testsuite/gas/i386/nops-5-i686.d: Likewise.
* gas/testsuite/gas/i386/nops-5.d: Likewise.
* gas/testsuite/gas/i386/nops-6.d: Likewise.
* gas/testsuite/gas/i386/nops16-1.d: Likewise.
* gas/testsuite/gas/i386/x86-64-nop-1.d: Likewise.
* gas/testsuite/gas/i386/x86-64-nop-2.d: Likewise.
* gas/testsuite/gas/i386/x86-64-nop-5.d: Likewise.
* gas/testsuite/gas/i386/x86-64-nops-1-core2.d: Likewise.
* gas/testsuite/gas/i386/x86-64-nops-1-g64.d: Likewise.
* gas/testsuite/gas/i386/x86-64-nops-1-k8.d: Likewise.
* gas/testsuite/gas/i386/x86-64-nops-1-pentium.d: Likewise.
* gas/testsuite/gas/i386/x86-64-nops-1.d: Likewise.
* gas/testsuite/gas/i386/x86-64-nops-2.d: Likewise.
* gas/testsuite/gas/i386/x86-64-nops-3.d: Likewise.
* gas/testsuite/gas/i386/x86-64-nops-4-core2.d: Likewise.
* gas/testsuite/gas/i386/x86-64-nops-4-k8.d: Likewise.
* gas/testsuite/gas/i386/x86-64-nops-4.d: Likewise.
* gas/testsuite/gas/i386/x86-64-nops-5-k8.d: Likewise.
* gas/testsuite/gas/i386/x86-64-nops-5.d: Likewise.
* gas/testsuite/gas/i386/ilp32/x86-64-nops-1-core2.d: Likewise.
* gas/testsuite/gas/i386/ilp32/x86-64-nops-1-k8.d: Likewise.
* gas/testsuite/gas/i386/ilp32/x86-64-nops-1-pentium.d: Likewise.
* gas/testsuite/gas/i386/ilp32/x86-64-nops-1.d: Likewise.
* gas/testsuite/gas/i386/ilp32/x86-64-nops-2.d: Likewise.
* gas/testsuite/gas/i386/ilp32/x86-64-nops-3.d: Likewise.
* gas/testsuite/gas/i386/ilp32/x86-64-nops-4-core2.d: Likewise.
* gas/testsuite/gas/i386/ilp32/x86-64-nops-4-k8.d: Likewise.
* gas/testsuite/gas/i386/ilp32/x86-64-nops-4.d: Likewise.
* gas/testsuite/gas/i386/ilp32/x86-64-nops-5-k8.d: Likewise.
* gas/testsuite/gas/i386/ilp32/x86-64-nops-5.d: Likewise.
* gas/testsuite/gas/i386/nops-7.d: New file.
* gas/testsuite/gas/i386/nops-7.s: Likewise.
* gas/testsuite/gas/i386/x86-64-nops-7.d: Likewise.
commit 52fe4420b771a0f3b4fc7c6535bbd6e9b279f775
Author: Alan Modra <amodra@gmail.com>
Date: Wed Mar 7 11:06:15 2018 +1030
XCOFF disassembler
xcoff (32-bit) objdump accepted but ignored -M options unless
-mpowerpc was also given. This patch fixes that, leaving the default
as -Mpwr for xcoff. I've also enabled more tests for xcoff targets.
binutils/
* configure.ac: Add objdump_private_desc_xcoff for rs6000.
* configure: Regenerate.
gas/
* testsuite/gas/ppc/aix.exp: Run for rs6000 too.
* testsuite/gas/ppc/ppc.exp: Run more tests for non-ELF targets.
* testsuite/gas/ppc/machine.d: Don't run for PE targets.
opcodes/
* disassemble.c (disassembler): Use bfd_arch_powerpc entry for
bfd_arch_rs6000.
* disassemble.h (print_insn_rs6000): Delete.
* ppc-dis.c (powerpc_init_dialect): Handle rs6000.
(disassemble_init_powerpc): Call powerpc_init_dialect for rs6000.
(print_insn_rs6000): Delete.
commit 0118219e1850a05ceb181a4f47a6906c01c17c83
Author: Alan Modra <amodra@gmail.com>
Date: Mon Mar 5 14:31:05 2018 +1030
mips64 rtype_to_howto error status
* elf64-mips.c (mips_elf64_rtype_to_howto): Return NULL on error.
(mips_elf64_slurp_one_reloc_table): Pass on error.
commit 1ab3e66438fdf173d245ca8e53aa412e73260960
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Mar 7 00:00:35 2018 +0000
Automatic date update in version.in
commit d8344f3d05565ae24a39a8f02533c396b544a780
Author: Tom Tromey <tom@tromey.com>
Date: Tue Mar 6 13:27:12 2018 -0700
Formatting fixes in rust-exp.y
I noticed a few formatting buglets in rust-exp.y: A couple of lines
were too long, and a couple of parser rules did not follow the same
formatting as the rest of the code.
I'm checking this in as obvious. Tested by rebuilding.
2018-03-06 Tom Tromey <tom@tromey.com>
* rust-exp.y: Formatting fixes.
commit 770aa8a3d3da978a35520af5f205ab2d8a5371a0
Author: Jim Wilson <jimw@sifive.com>
Date: Tue Mar 6 12:01:04 2018 -0800
RISC-V: Disallow output format changes.
PR 22920
* emultempl/riscvelf.em (riscv_create_output_section_statements): New.
(LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): New.
* testsuite/ld-elf/pr21884.d (#notarget): Add riscv*-*-*.
* testsuite/ld-unique/pr21529.d (#notarget): Likewise.
* testsuite/ld-srec/srec.exp (run_srec_test): For riscv*-*-* target,
call setup_xfail.
commit 9add17f218409f357d5ed8b831c777ac93f41ec4
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Tue Mar 6 16:57:41 2018 +0000
gdb/riscv: Remove partial target description support
Some parts of the target description support were committed with the
initial riscv patch. As target descriptions are not currently supported
on riscv this commit removes the two pieces for code that relate to
target description support.
It is expected that target description support will be added in the
future, at which point this, or similar code will be added back.
gdb/ChangeLog:
* riscv-tdep.c (riscv_register_name): Remove target description
support.
(riscv_gdbarch_init): Remove target description check.
commit c9486dfe2753a3a9683dbb131ecfb4f5808a27c1
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Tue Mar 6 16:31:40 2018 +0000
gdb/riscv: Remove 'Contributed by....' comments
The GDB coding standard states these lines should never have been
added.
gdb/ChangeLog:
* riscv-tdep.c: Remove 'Contributed by ...' lines from header
comment.
* riscv-tdep.h: Likewise.
commit d74aff3d95928db6647a11865c396204c50bc157
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Tue Mar 6 16:19:52 2018 +0000
gdb/riscv: Remove use of pseudo registers
The code making use of pseudo registers was initially intended to
support running 32-bit ABI files on 64-bit riscv targets. However, the
implementation was incomplete, and broken.
For now I've removed all reference to pseudo registers from the riscv
target, we've not lost any functionality, and this cleans up failures in
the selftests.
Once the riscv target has matured a little we'll probably end up
bringing back some of the use of pseudo registers in order to better
support running 32-bit executables on a 64-bit target.
gdb/ChangeLog:
* riscv-tdep.c (riscv_pseudo_register_read): Delete.
(riscv_pseudo_register_write): Delete.
(riscv_gdbarch_init): Remove all use of pseudo registers.
commit 7ea78b5973525193eda8e379cc351c7804653216
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Tue Mar 6 09:51:33 2018 -0500
btrace: Remove ui_out cleanups
This patch replaces the cleanups that close the list and tuple of the
btrace instruction history output with ui_out_emit_tuple and
ui_out_emit_list.
This allows removing make_cleanup_ui_out_tuple_begin_end and
make_cleanup_ui_out_list_begin_end.
This patch (along with the previous ones in the series) was regtested on
the buildbot.
gdb/ChangeLog:
* record-btrace.c (btrace_print_lines): Replace cleanup
parameter with RAII equivalents.
(btrace_insn_history): Replace cleanup with RAII equivalents.
* ui-out.h (make_cleanup_ui_out_list_begin_end,
make_cleanup_ui_out_tuple_begin_end): Remove.
* ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
make_cleanup_ui_out_list_begin_end): Remove.
commit 531270084129e069772e68ead40c97404d1c0dd7
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Tue Mar 6 09:51:33 2018 -0500
btrace: Remove VEC cleanups
This patch replaces two VEC(tp_t) with std::vector<thread_info *>, which
allows to remove two cleanups. To make it easier to map the old code to
the new code, I added the ordered_remove and unordered_remove functions,
which operate on std::vector and do the same as VEC's
ordered_remove/unordered_remove.
gdb/ChangeLog:
* record-btrace.c (record_btrace_maybe_mark_async_event): Change
parameter types to std::vector. Use bool.
(record_btrace_wait): Replace VEC(tp_t) with
std::vector<thread_info *>.
* common/gdb_vecs.h (unordered_remove, ordered_remove): New.
commit 228f15081e22abed7ea336126caba26de5a3b791
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Tue Mar 6 09:51:32 2018 -0500
btrace: Remove btrace disable cleanup
This patch removes a cleanup that disables btrace on threads in case of
failure, so we don't leave it enabled for some the threads and disabled
for the rest.
gdb/ChangeLog:
* record-btrace.c (record_btrace_disable_callback): Remove.
(struct scoped_btrace_disable): New.
(record_btrace_open): Use scoped_btrace_disable.
commit b2970c238e24e6239760b72c924ee7dd2df9ccd1
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Tue Mar 6 13:20:14 2018 +0000
gdb/riscv: Fix type when reading register from regcache
Should use a ULONGEST when reading from the regcache.
gdb/ChangeLog:
* riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
reading values from registers.
commit fb2946557216c813310ed062a06b55d5dc466bb0
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Tue Mar 6 13:05:34 2018 +0000
gdb/riscv: Additional print format string fixes
Another riscv format string fix.
gdb/ChangeLog:
* riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
where appropriate.
commit cab5bb9d1f9fcf674d5b4c82aba7622597b1fd35
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Tue Mar 6 12:31:07 2018 +0000
gdb/riscv: Fixes to printf format strings
Some of the format strings used in the new riscv target were incorrect,
resulting in build failures on some hosts. This commit does the
following:
1. Uses core_addr_to_string for formatting CORE_ADDR types.
2. Fixes legacy use of stderr for logging in one place that got
missed, instead gdb_stdlog is used.
3. Re-indent a few printf related lines that were wrong.
This should resolve some (but not all) of the build failures the new
riscv target introduced.
gdb/ChangeLog:
* riscv-tdep.c (riscv_print_arg_location): Add header comment,
change parameter type. Use GDB's print functions, and use
core_addr_to_string where appropriate.
(riscv_push_dummy_call): Use core_addr_to_string where
appropriate, update call to riscv_print_arg_location, and reindent
a few lines.
(riscv_return_value): Update call to riscv_print_arg_location.
commit dbbb1059e62e9fed10b429c030f76f782cbc1fc4
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Thu Nov 9 20:59:13 2017 +0000
gdb: Initial baremetal riscv support
This commit introduces basic support for baremetal RiscV as a GDB
target. This target is currently only tested against the RiscV software
simulator, which is not included as part of this commit. The target has
been tested against the following RiscV variants: rv32im, rv32imc,
rv32imf, rv32imfc, rv64im, rv64imc, rv64imfd, rv64imfdc.
Across these variants we pass on average 34858 tests, and fail 272
tests, which is ~0.8%.
The RiscV has a feature of its ABI where structures with a single
floating point field, a single complex float field, or one float and
one integer field are treated differently for argument passing. The
new test gdb.base/infcall-nested-structs.exp is added to cover this
feature. As passing these structures should work on all targets then
I've made the test as a generic one, even though, for most targets,
there's probably nothing special about any of these cases.
gdb/ChangeLog:
* Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
(HFILES_NO_SRCDIR): Add riscv-tdep.h.
(ALLDEPFILES): Add riscv-tdep.c
* configure.tgt: Add riscv support.
* riscv-tdep.c: New file.
* riscv-tdep.h: New file.
* NEWS: Mention new target.
* MAINTAINERS: Add entry for riscv.
gdb/testsuite/ChangeLog:
* gdb.base/infcall-nested-structs.exp: New file.
* gdb.base/infcall-nested-structs.c: New file.
* gdb.base/float.exp: Add riscv support.
commit 5dc4391345f6e86906a57af1434025cfb47b4100
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Fri Mar 2 15:48:23 2018 +0000
gdb/amd64: Ignore zero sized fields when calling functions
In some cases passing an argument to a function on amd64, or attempting
to fetch the return value, can trigger an assertion failure within GDB.
An example of a type that would trigger such an error is:
struct foo_t
{
long double a;
struct {
struct {
/* Empty. */
} es1;
} s1;
};
GCC does permit empty structures, so we should probably support this.
The test that exposes this bug is in the next commit along with the
RiscV support.
gdb/ChangeLog:
* amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
fields within aggregates.
commit 52bc7e85d938e7a6582d31eca071e43429d6fb00
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Mar 6 00:00:25 2018 +0000
Automatic date update in version.in
commit 0e70b27ba900581df8e23cbbd4612176f869d796
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Mar 5 03:44:46 2018 -0800
Use binary search on dynamic relocations
Replace linear search with binary search on dynamic relocations. After
finding a match, scan backward to the first matching relocation, then
scan forward for a matching relocation with non-absolute symbol.
On Fedora 27 x86-64, time for "objdump -d" on libxul.so from RHEL 7.4
x86-64 went from
134.46user 0.12system 2:15.03elapsed
to
8.49user 0.14system 0:08.64elapsed
PR binutils/22911
* objdump.c (is_significant_symbol_name): Return TRUE for all
.plt* sections.
(find_symbol_for_address): Replace linear search with binary
search on dynamic relocations.
commit 3dea1ef72c646d808e5b287e98253f3b8670c450
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sun Mar 4 20:02:35 2018 -0500
Propagate gdb_disassembly_flags to btrace_print_lines
This function can take the flags as the gdb_disassembly_flags type
instead of int.
gdb/ChangeLog:
* record-btrace.c (btrace_print_lines): Change type of flags to
gdb_disassembly_flags.
commit 5e3290e9733d522b0eada1e6e65d1d6483d93b1b
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Mar 5 00:00:35 2018 +0000
Automatic date update in version.in
commit 7efba073e2b83803a47fd89e701fe60b98f2debc
Author: John Baldwin <jhb@FreeBSD.org>
Date: Sat Mar 3 21:25:33 2018 -0800
Use signal information to determine SIGTRAP type for FreeBSD.
Use the signal code from siginfo_t to distinguish SIGTRAP events due
to trace traps (TRAP_TRACE) and software breakpoints (TRAP_BRKPT).
For software breakpoints, adjust the PC when the event is reported as
part of the API when supplying "stopped_by_sw_breakpoint". Currently
FreeBSD only supports hardware watchpoints and breakpoints on x86
which are reported as trace traps. Signal information is not used on
MIPS and sparc64 kernels which do not reliably report TRAP_BRKPT for
software breakpoints.
gdb/ChangeLog:
* fbsd-nat.c: Include "inf-ptrace.h".
(USE_SIGTRAP_SIGINFO): Conditionally define.
[USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
(fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
[USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
function.
[USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
Likewise.
[USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
Likewise.
(fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
"stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
"supports_stopped_by_hw_breakpoint" target methods.
commit 386a86761838df16c1459275d465ed21a1c35d9f
Author: John Baldwin <jhb@FreeBSD.org>
Date: Sat Mar 3 21:25:33 2018 -0800
Add a new debug knob for the FreeBSD native target.
For now this just logs information about the state of the current LWP
for each STOPPED event in fbsd_wait().
gdb/ChangeLog:
* NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
* fbsd-nat.c (debug_fbsd_nat): New variable.
(show_fbsd_nat_debug): New function.
(fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
(_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
gdb/doc/ChangeLog:
* gdb.texinfo (Debugging Output): Document "set/show debug
fbsd-nat".
commit 12279366d71627bfbdd74d1a6675dca825d8feca
Author: John Baldwin <jhb@FreeBSD.org>
Date: Sat Mar 3 21:25:33 2018 -0800
Implement "to_stopped_by_hw_breakpoint" for x86 debug registers.
Report that a thread is stopped by a hardware breakpoint if a non-data
watchpoint is set in DR6. This change should be a no-op since a target
still needs to implement the "to_supports_stopped_by_hw_breakpoint"
method before this function is used.
gdb/ChangeLog:
* nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
* nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
prototype.
* x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
(x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
method.
commit 72f53f22dfc1bb79ae0141a91b8f9786e1964f41
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Mar 4 00:00:48 2018 +0000
Automatic date update in version.in
commit dfb93f11587ca08b820c7c785278366f2505cfd1
Author: James Cowgill <james.cowgill@mips.com>
Date: Sat Mar 3 15:49:21 2018 +0000
PR ld/21900: MIPS: Fix relocation processing with undefined symbols
Currently, when `mips_elf_calculate_relocation' is asked to relocate an
undefined symbol, it reports an error or a warning and immediately
returns without performing the relocation. This is fine if the link
fails, but if unresolved_syms_in_objects == RM_GENERATE_WARNING, the
link will continue and output some unrelocated code, which is a
regression from commit e7e2196da3f0 ("MIPS/BFD: Correctly report
undefined relocations").
Fix this by continuing after calling the `undefined_symbol' hook unless
this is an error condition.
bfd/
PR ld/21900
* elfxx-mips.c (mips_elf_calculate_relocation): Only return
after calling `undefined_symbol' hook if this is an error
condition. Assume the value of 0 for the symbol requested
otherwise.
ld/
PR ld/21900
* testsuite/ld-mips-elf/undefined-warn.d: New test.
* testsuite/ld-mips-elf/undefined.s: Add padding at the end.
* testsuite/ld-mips-elf/mips-elf.exp: Run the new test.
commit b9671caf8fe1abd737846edf7dcd627870f986cc
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Fri Mar 2 23:27:46 2018 -0500
handle_general_set: Remove useless xstrdup
Unless I'm missing something very obvious, this xstrdup seems
unnecessary to me. We can pass "mode" directly to sprintf.
gdb/gdbserver/ChangeLog:
* server.c (handle_general_set): Remove unnecessary xstrdup.
commit 54693cf5f11bf292ae308604caf6e866dbb03e6f
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Fri Mar 2 23:22:10 2018 -0500
Remove free_char_ptr_vec
Nothing is using it anymore.
gdb/ChangeLog:
* common/gdb_vecs.c (free_char_ptr_vec): Remove.
* common/gdb_vecs.h (free_char_ptr_vec): Remove.
commit ccb2231cd848c89f04ab2e1e54b013d69ea34893
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Fri Mar 2 23:22:09 2018 -0500
C++ify charsets
This patch makes the charset list an std::vector instead of a VEC.
Because we must have access to the raw pointers as a simple array, we
can't use a vector of unique_ptr/unique_xmalloc_ptr. Therefore, wrap
the vector in a simple class to facilitate the cleanup. This allows
removing one usage of free_char_ptr_vec.
gdb/ChangeLog:
* charset.c (struct charset_vector): New.
(charsets): Change type to charset_vector.
(find_charset_names): Adjust.
(add_one): Adjust.
(_initialize_charset): Adjust.
commit 6fb16ce6eaba92b86a22eac58eb0eb61b3fd8804
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Fri Mar 2 23:22:08 2018 -0500
Make program_space::deleted_solibs a vector of std::string
This allows removing a usage of free_char_ptr_vec.
gdb/ChangeLog:
* progspace.h (struct program_space) <deleted_solibs>: Change
type to std::vector<std::string>.
* progspace.c (clear_program_space_solib_cache): Adjust.
* breakpoint.c (print_solib_event): Adjust.
(check_status_catch_solib): Adjust.
* solib.c (update_solib_list): Adjust.
* ui-out.h (class ui_out) <field_string>: New overload.
* ui-out.c (ui_out::field_string): New overload.
commit 564b1e3f2906bbbf53d003d6fdbcfc83661385e2
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Fri Mar 2 23:22:08 2018 -0500
C++ify program_space
This patch makes program_space a C++ object by adding a
constructor/destructor, giving default values to fields, and using
new/delete.
gdb/ChangeLog:
* progspace.h (struct program_space): Add constructor and
destructor, initialize fields.
(add_program_space): Remove.
* progspace.c (add_program_space): Rename to...
(program_space::program_space): ... this.
(release_program_space): Rename to...
(program_space::~program_space): ... this.
(delete_program_space): Use delete to delete program_space.
(initialize_progspace): Use new to allocate program_space.
* inferior.c (add_inferior_with_spaces): Likewise.
(clone_inferior_command): Likewise.
* infrun.c (follow_fork_inferior): Likewise.
(handle_vfork_child_exec_or_exit): Likewise.
commit e80aaf6183c6692ecc167bf26cbdc53f8f1a55f0
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Fri Mar 2 23:22:06 2018 -0500
Make delim_string_to_char_ptr_vec return an std::vector
This patch makes delim_string_to_char_ptr_vec and all related functions
use std::vector of gdb::unique_xmalloc_ptr. This allows getting rid of
make_cleanup_free_char_ptr_vec. Returning a vector of
unique_xmalloc_ptr instead of std::string allows to minimize the impacts
on the calling code. We can evaluate later whether we could/should
return a vector of std::strings instead.
gdb/ChangeLog:
* common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
(delim_string_to_char_ptr_vec): Return std::vector of
gdb::unique_xmalloc_ptr.
(dirnames_to_char_ptr_vec_append): Take std::vector of
gdb::unique_xmalloc_ptr.
(dirnames_to_char_ptr_vec): Return std::vector of
gdb::unique_xmalloc_ptr.
* common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
(delim_string_to_char_ptr_vec): Return an std::vector of
gdb::unique_xmalloc_ptr, adjust the code.
(dirnames_to_char_ptr_vec_append): Take an std::vector of
gdb::unique_xmalloc_ptr, adjust the code.
(dirnames_to_char_ptr_vec): Return an std::vector of
gdb::unique_xmalloc_ptr, adjust the code.
* auto-load.c (auto_load_safe_path_vec): Change type to
std::vector of gdb::unique_xmalloc_ptr.
(auto_load_expand_dir_vars): Return an std::vector of
gdb::unique_xmalloc_ptr, adjust the code.
(auto_load_safe_path_vec_update): Adjust.
(filename_is_in_auto_load_safe_path_vec): Adjust.
(auto_load_objfile_script_1): Adjust.
* build-id.c (build_id_to_debug_bfd): Adjust.
* linux-thread-db.c (thread_db_load_search): Adjust.
* source.c (add_path): Adjust.
(openp): Adjust.
* symfile.c (find_separate_debug_file): Adjust.
* utils.c (do_free_char_ptr_vec): Remove.
(make_cleanup_free_char_ptr_vec): Remove.
gdb/gdbserver/ChangeLog:
* server.c (parse_debug_format_options): Adjust to
delim_string_to_char_ptr_vec changes.
* thread-db.c (thread_db_load_search): Adjust to
dirnames_to_char_ptr_vec changes.
commit a6743a5420aa02a0550b0f7be004f6c06e90ce21
Author: Alan Modra <amodra@gmail.com>
Date: Fri Mar 2 08:23:50 2018 +1030
opcodes error messages
Another patch aimed at making binutils comply with the GNU coding
standard. The generated files require
https://sourceware.org/ml/cgen/2018-q1/msg00004.html
cpu/
* frv.opc: Include opintl.h.
(add_next_to_vliw): Use opcodes_error_handler to print error.
Standardize error message.
(fr500_check_insn_major_constraints, frv_vliw_add_insn): Likewise.
opcodes/
* sysdep.h (opcodes_error_handler): Define.
(_bfd_error_handler): Declare.
* Makefile.am: Remove stray #.
* opc2c.c (main): Remove bogus -l arg handling. Print "DO NOT
EDIT" comment.
* aarch64-dis.c, * arc-dis.c, * arm-dis.c, * avr-dis.c,
* d30v-dis.c, * h8300-dis.c, * mmix-dis.c, * ppc-dis.c,
* riscv-dis.c, * s390-dis.c, * sparc-dis.c, * v850-dis.c: Use
opcodes_error_handler to print errors. Standardize error messages.
* msp430-decode.opc, * nios2-dis.c, * rl78-decode.opc: Likewise,
and include opintl.h.
* nds32-asm.c: Likewise, and include sysdep.h and opintl.h.
* i386-gen.c: Standardize error messages.
* msp430-decode.c, * rl78-decode.c, rx-decode.c: Regenerate.
* Makefile.in: Regenerate.
* epiphany-asm.c, * epiphany-desc.c, * epiphany-dis.c,
* epiphany-ibld.c, * fr30-asm.c, * fr30-desc.c, * fr30-dis.c,
* fr30-ibld.c, * frv-asm.c, * frv-desc.c, * frv-dis.c, * frv-ibld.c,
* frv-opc.c, * ip2k-asm.c, * ip2k-desc.c, * ip2k-dis.c, * ip2k-ibld.c,
* iq2000-asm.c, * iq2000-desc.c, * iq2000-dis.c, * iq2000-ibld.c,
* lm32-asm.c, * lm32-desc.c, * lm32-dis.c, * lm32-ibld.c,
* m32c-asm.c, * m32c-desc.c, * m32c-dis.c, * m32c-ibld.c,
* m32r-asm.c, * m32r-desc.c, * m32r-dis.c, * m32r-ibld.c,
* mep-asm.c, * mep-desc.c, * mep-dis.c, * mep-ibld.c, * mt-asm.c,
* mt-desc.c, * mt-dis.c, * mt-ibld.c, * or1k-asm.c, * or1k-desc.c,
* or1k-dis.c, * or1k-ibld.c, * xc16x-asm.c, * xc16x-desc.c,
* xc16x-dis.c, * xc16x-ibld.c, * xstormy16-asm.c, * xstormy16-desc.c,
* xstormy16-dis.c, * xstormy16-ibld.c: Regenerate.
commit 5c1f594e585818719d5c19346e73a1cca3bbce2b
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Mar 3 00:00:25 2018 +0000
Automatic date update in version.in
commit ab818ade016bcd794980438775e15c7a74f054f9
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Thu Mar 1 15:11:44 2018 -0500
Conditionally include "<windows.h>" on common/pathstuff.c (and unbreak build on mingw*)
commit b4987c956dfa44ca9fd8552f63e15f5fa094b2a4
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Fri Feb 9 18:44:59 2018 -0500
Create new common/pathstuff.[ch]
Introduced a regression when compiling for mingw*:
/gdb/common/pathstuff.c: In function 'gdb::unique_xmalloc_ptr<char>
gdb_realpath(const char*)':
/gdb/common/pathstuff.c:56:14: error: 'MAX_PATH' was not declared in this scope
char buf[MAX_PATH];
^
/gdb/common/pathstuff.c:57:5: error: 'DWORD' was not declared in this scope
DWORD len = GetFullPathName (filename, MAX_PATH, buf, NULL);
^
/gdb/common/pathstuff.c:57:11: error: expected ';' before 'len'
DWORD len = GetFullPathName (filename, MAX_PATH, buf, NULL);
^
/gdb/common/pathstuff.c:63:9: error: 'len' was not declared in this scope
if (len > 0 && len < MAX_PATH)
^
/gdb/common/pathstuff.c:64:54: error: 'buf' was not declared in this scope
return gdb::unique_xmalloc_ptr<char> (xstrdup (buf));
^
make[2]: *** [pathstuff.o] Error 1
The proper fix is to conditionally include "<windows.h>". This commit
does that, without introducing any regressions as per tests made by
our BuildBot.
gdb/ChangeLog:
2018-03-01 Sergio Durigan Junior <sergiodj@redhat.com>
PR gdb/22907
* common/pathstuff.c: Conditionally include "<windows.h>".
commit ecc054c097e7ced281d02ef9632eb0261a410b96
Author: Thomas Preud'homme <thomas.preudhomme@arm.com>
Date: Fri Mar 2 11:51:34 2018 +0000
[GDB/testsuite] Use %progbits in watch-loc.c
While using @progbits in .pushsection work on some targets, it does not
work on arm target where this introduces a comment. This patch replaces
its use in gdb.dlang/watch-loc.c and gdb.mi/dw2-ref-missing-frame-func.c
by %progbits which should work on all targets since it is used in
target-independent elf/section7.s GAS test.
2018-03-02 Thomas Preud'homme <thomas.preudhomme@arm.com>
gdb/testsuite/
* gdb.dlang/watch-loc.c: Use %progbits instead of @progbits.
* gdb.mi/dw2-ref-missing-frame-func.c: Likewise.
commit 9a2ebffd4dd9cffac395177e997f6f47408b4782
Author: Jim Wilson <jimw@sifive.com>
Date: Fri Mar 2 10:47:25 2018 +0000
Ensure 8-byte alignment for AArch64 stubs.
PR 22903
bfd * elfnn-aarch64.c (_bfd_aarch64_resize_stubs): Add 8 bytes for branch
and nop instead of 4.
(elfNN_arch64_build_stubs): Add nop after branch. Increase size by
8 instead of 4.
ld * emultempl/aarch64elf.em (elf${ELFSIZE}_aarch64_add_stub_section):
Give stub_sec 8 byte alignment.
* emulparams/aarch64cloudabi.sh (NOP): Set to 0x1f2003d5.
* emulparams/aarch64elf.sh (NOP): Likewise.
* emulparams/aarch64elf32.sh (NOP): Likewise.
* emulparams/aarch64fbsd.sh (NOP): Likewise.
* emulparams/aarch64linux.sh (NOP): Likewise.
* emulparams/aarch64linux32.sh (NOP): Likewise.
* testsuite/ld-aarch64/erratum835769.d: Adjust for added nop.
* testsuite/ld-aarch64/erratum843419.d: Likewise.
* testsuite/ld-aarch64/farcall-b-defsym.d: Likewise.
* testsuite/ld-aarch64/farcall-b-none-function.d: Likewise.
* testsuite/ld-aarch64/farcall-b-plt.d: Likewise.
* testsuite/ld-aarch64/farcall-b-section.d: Likewise.
* testsuite/ld-aarch64/farcall-b.d: Likewise.
* testsuite/ld-aarch64/farcall-back.d: Likewise.
* testsuite/ld-aarch64/farcall-bl-defsym.d: Likewise.
* testsuite/ld-aarch64/farcall-bl-none-function.d: Likewise.
* testsuite/ld-aarch64/farcall-bl-plt.d: Likewise.
* testsuite/ld-aarch64/farcall-bl-section.d: Likewise.
* testsuite/ld-aarch64/farcall-bl.d: Likewise.
commit e7da50fa4b4f770240feda51ba60f6255073e54f
Author: Thomas Preud'homme <thomas.preudhomme@arm.com>
Date: Fri Mar 2 10:46:32 2018 +0000
[ARM] Fix NULL dereference of march_ext_opt
Commit 4d354d8b8932d450c77fd52f3501662827523014 introduced a NULL
pointer dereference by replacing a pointer assignment by a pointer
dereference assignment without adding a NULL pointer check. This patch
fixes it.
2018-03-02 Thomas Preud'homme <thomas.preudhomme@arm.com>
gas/
* config/tc-arm.c (md_begin): Add NULL pointer check before
dereferencing march_ext_opt.
commit ed2592386c36bfc0b82049ce88758303b16ca075
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Mar 2 00:00:32 2018 +0000
Automatic date update in version.in
commit e1e6f073a9f5d7c3183cb8096fb24a42c28ba36b
Author: Georg Sauthoff <mail@georg.so>
Date: Thu Mar 1 17:23:31 2018 -0500
Improve gcore shell quoting and portability
The gcore shell script (gdb/gcore.in) doesn't quote its variables
enough.
For example, trying to write a core file with - say - a space
ungraciously fails like this:
$ gcore -o 'foo bar' 6270
/usr/bin/gcore: line 92: [: foo: binary operator expected
gcore: failed to create foo bar.6270
Similarly, one can inject meta characters like * (by accident)
that may yield unexpected results, e.g. as in:
$ gcore -o foobar '*'
This change fixes these issues in several places.
Aso, since the script uses array syntax, the patch changes the
the shell in the first line from `/bin/sh` to /bin/bash`.
POSIX doesn't specify the array syntax for shell, thus, the
script doesn't work on systems where /bin/sh is linked to - say -
dash.
Since the source gcore.in already is processed by a pre-processor
one could even auto-detect the path to bash and thus dynamically
generate the first line. For systems where bash isn't available
via /bin/bash. But I think this would be overkill and /bin/bash
is good enough as most systems probably have it.
gdb/ChangeLog:
PR gdb/22888
* gcore.in: Quote variables and switch interpreter to bash.
commit 788af978df01c3667be99a1607b774f5fa844113
Author: Jim Wilson <jimw@sifive.com>
Date: Thu Mar 1 14:17:57 2018 -0800
RISC-V: Fix symbol size bug when relaxation deletes bytes.
bfd/
PR 22756
* elfnn-riscv.c (riscv_relax_delete_bytes): When adjust st_size, use
else if instead of if.
commit c7b15a66dc9ef2285f0983759d41baf5b9933505
Author: Tom Tromey <tom@tromey.com>
Date: Wed Feb 28 08:49:51 2018 -0700
Fix Rust enum test failures
Pedro pointed out that some Rust tests were failing after the recent
enum change. I was able to reproduce this even with the most current
Rust compiler -- no test was failing, but rather the gdb internal
error was causing an "untested" result, which I didn't notice.
The internal error is caused by a bad assertion in
alloc_discriminant_info. This happened because, in an earlier version
of the patch, the discriminant could only appear at index 0. However,
it can now appear anywhere. This patch fixes the assertion in the
obvious way, and adds a second assertion to ensure that the
discriminant is also correct.
Fixing this revealed a real failure, which was caused by using the
wrong base name when computing the name of a univariant enum's sole
member. This is also fixed here.
Tested by running the gdb.rust tests with rustc 1.23 and
double-checking the summary:
# of expected passes 276
Note that if you try this yourself, it is still possible to get an
"untested" result from traits.exp if your Rust compiler is old enough.
2018-03-01 Tom Tromey <tom@tromey.com>
* dwarf2read.c (alloc_discriminant_info): Fix default_index
assertion. Add assertion for discriminant_index.
(quirk_rust_enum): Use correct base type name in univariant case.
commit 4d354d8b8932d450c77fd52f3501662827523014
Author: Thomas Preud'homme <thomas.preudhomme@arm.com>
Date: Thu Mar 1 16:22:28 2018 +0000
[ARM] Clean up selection of feature bits
I've always found the code in ARM backend of gas to control what
CPU/architecture and FPU are selected by the user and to support
autodetection of features complex and confusing. Chief among the
issues I have with that code is the lack of comments to explain
the meaning of the various variables. This patch addresses that
and much more:
- add comments to explain meaning of all arm_feature_set variables
- keep track of currently selected CPU, extensions and FPU in a separate
set of new variables
- make naming of variable more consistent
- remove dead code
- simplify handling of extensions
The overall approach is as follows:
* restrict m*_opt variable to hold the feature bits of the
corresponding mcpu/march/mfpu command-line options
* record selected CPU, extensions and FPU in new selected_* during
md_begin
* whenever a .cpu/.arch/.arch_extension/.fpu directive is met, update
the corresponding selected_* variables (eg. selected_arch, then
selected_cpu for a .cpu or .arch directive) and then finally
cpu_variant from them
* pass extension feature set pointer by value to arm_parse_extension
since it's only ever called from arm_parse_cpu and arm_parse_arch
which allocate the extension feature set themselves
* likewise, remove allocation from s_arm_arch_extension since the use
of arm_feature_set structure for selected_ext rather than a pointer
alleviate the need for it
* in autodetection mode, only set all CPU fits in cpu_variant but leave
selected_cpu* variables unset
* in md_begin, remove dead "else if" to set a default FPU when no FPU
was selected. Setting a default FPU based on CPU as did the code
before it turn dead should be based on the default FPU field of the
CPU and architecture table as will be done in a separate patch. Logic
is wrong anyway since it sets VFP2 as default FPU for Armv6-M and
Armv7-M
Hopefully that should be enough to understand the change but if not feel
free to ask questions about the patch. While I believe the new code is
easier to understand, it remains complex and the old one was even more
complex so the change is difficult to understand.
2018-03-01 Thomas Preud'homme <thomas.preudhomme@arm.com>
gas/
* config/tc-arm.c (cpu_variant, arm_arch_used, thumb_arch_used,
legacy_cpu, legacy_fpu, mcpu_cpu_opt, dyn_mcpu_ext_opt,
mcpu_fpu_opt, march_cpu_opt, dyn_march_ext_opt, march_fpu_opt,
mfpu_opt, object_arch, selected_cpu): Comment meaning of variables.
(dyn_mcpu_ext_opt): Also rename into ...
(mcpu_ext_opt): This.
(dyn_march_ext_opt): Also rename into ...
(march_ext_opt): This.
(object_arch): Also rename into ...
(selected_object_arch): This and make it a plain arm_feature_set
structure.
(selected_arch, selected_ext, selected_fpu): New static variables.
(mark_feature_used): Fix comments, feature is marked as used iff it is
currently allowed.
(do_bx): Adapt to change in name and type of object_arch.
(md_begin): Set selected_arch rather than mcpu_cpu_opt, selected_ext
rather than dyn_mcpu_ext_opt and selected_fpu rather than mfpu_opt.
Remove dead code to set default FPU if architecture version is greater
than 5. Set all CPU bits of cpu_variant directly in autodection
leaving mcpu_cpu_opt, selected_arch and selected_cpu unset.
(arm_parse_extension): Take extension feature set pointer parameter by
value rather than by pointer. Remove allocation code. Adapt code
accordingly.
(arm_parse_cpu): Adapt to variable renaming and changes in
arm_parse_extension () signature.
(arm_parse_arch): Likewise.
(aeabi_set_public_attributes): Also set selected_arch and selected_ext
in addition to selected_cpu. Set flags_arch and flags_ext from them
instead of selected_cpu. Adapt to variables renaming and type change.
(arm_md_post_relax): Adapt to variable renaming.
(s_arm_cpu): Set selcted_cpu_cpu and selected_ext instead of
mcpu_cpu_opt and dyn_mcpu_ext_opt. Set selected_cpu from them and
cpu_variant from selected_cpu and selected_fpu.
(s_arm_arch): Likewise.
(s_arm_object_arch): Adapt to variable renaming.
(s_arm_arch_extension): Use ARM_CPU_IS_ANY instead of checking feature
set against arm_any. Check selected_arch rather than *mcpu_cpu_opt.
Set selected_ext rather than *dyn_mcpu_ext_opt and remove allocation
code.
(s_arm_fpu): Set selected_fpu instead of mfpu_opt. Set all CPU feature
bits if in autodetection mode.
commit d11ae95ea3403559f052903ab053f43ad7821e37
Author: Nick Clifton <nickc@redhat.com>
Date: Thu Mar 1 16:14:08 2018 +0000
Prevent illegal memory accesses triggerd by intger overflow when parsing corrupt DWARF information on a 32-bit host.
PR 22905
* dwarf.c (display_debug_ranges): Check that the offset loaded
from the range_entry structure is valid.
commit 0cb7c7b0bb79be910e261f3d30c58ace6b0d06d1
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Thu Mar 1 10:51:21 2018 -0500
Propagate record_print_flags
These flags are returned as an int by get_call_history_modifiers, and
get cast back to record_print_flags in the btrace code. Instead, we can
make the arguments of that type from start to end.
gdb/ChangeLog:
* record.c (get_call_history_modifiers): Return a
record_print_flags.
(cmd_record_call_history): Adjust.
* record-btrace.c (record_btrace_call_history): Adjust.
(record_btrace_call_history_range): Adjust.
(record_btrace_call_history_from): Adjust.
* target-debug.h (target_debug_print_record_print_flags): New.
* target-delegates.c: Re-generate.
* target.c (target_call_history): Change flags type.
(target_call_history_from): Likewise.
(target_call_history_range): Likewise.
* target.h (struct target_ops) <target_call_history>: Likewise.
(target_call_history_from): Likewise.
(target_call_history_range): Likewise.
commit 8305403a1ffa8e551fd1c7bd88af1a65c0ba747c
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Mar 1 06:08:04 2018 -0800
x86: Encode AVX256/AVX512 vpsub[bwdq] with VEX128/EVEX128
When 2 source registers are identical, AVX256 and AVX512 vpsub[bwdq]
instructions can be encoded with VEX128 or EVEX128 encodings.
gas/
* config/tc-i386.c (optimize_encoding): Optimize AVX256 and
AVX512 vpsub[bwdq] instructions.
* testsuite/gas/i386/optimize-1.s: Add tests for AVX256 and
AVX512 vpsub[bwdq] instructions.
* testsuite/gas/i386/x86-64-optimize-2.s: Likewise.
* testsuite/gas/i386/optimize-1.d: Updated.
* testsuite/gas/i386/x86-64-optimize-2.d: Likewise.
opcodes/
* * i386-opc.tbl: Add "Optimize" to AVX256 and AVX512
vpsub[bwdq] instructions.
* i386-tbl.h: Regenerated.
commit b1223e789040e9e8cdc6869a8a1fd1fd7acc109d
Author: Markus Metzger <markus.t.metzger@intel.com>
Date: Mon Feb 26 11:59:43 2018 +0100
btrace, gdbserver: check btrace target pointers
By removing the supports_btrace gdbserver target method we relied on GDB
trying to enable branch tracing and failing on the attempt.
For targets that do not provide the btrace methods, however, an initial
request from GDB for the branch trace configuration to detect whether
gdbserver is already recording resulted in a protocol error.
Have the btrace target methods throw a "Target does not suppor branch
tracing" error and be prepared to handle exceptions in all functions that
call btrace target methods. We therefore turn the target_* macros into
static inline functions.
Also remove the additional btrace target method checks that resulted in
the above protocol error.
Thanks to Maciej W. Rozycki <macro@mips.com> for reporting this.
gdbserver/
* target.h (target_enable_btrace, target_disable_btrace)
(target_read_btrace, target_read_btrace_conf): Turn macro into
inline function. Throw error if target method is not defined.
* server.c (handle_qxfer_btrace, handle_qxfer_btrace_conf): Remove
check for btrace target method. Be prepared to handle exceptions
from btrace target methods.
commit ca8e0133c4a99d9828beab2fc95699e9fb73815c
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Mar 1 00:00:38 2018 +0000
Automatic date update in version.in
commit e184813fdb0578fe7c5a3f3fc39b56d0ee4d1505
Author: Alan Modra <amodra@gmail.com>
Date: Thu Mar 1 08:26:51 2018 +1030
Add missing translations to ALL_LINGUAS
binutils/
* configure.ac (ALL_LINGUAS): Add sr. Sort.
* configure: Regenerate.
gas/
* configure.ac (ALL_LINGUAS): Add uk. Sort.
* configure: Regenerate.
gprof/
* configure.ac (ALL_LINGUAS): Add it, ro, ru, uk. Sort.
* configure: Regenerate.
ld/
* configure.ac (ALL_LINGUAS): Add ja. Sort.
* configure: Regenerate.
opcodes/
* configure.ac (ALL_LINGUAS): Sort.
* configure: Regenerate.
commit 5224fa039966557e869338d2591e7945cdcecb74
Author: Alan Modra <amodra@gmail.com>
Date: Thu Mar 1 08:21:11 2018 +1030
correct ft32 reloc range test
* elf32-ft32.c (ft32_info_to_howto_rela): Correct range test.
commit 815615463b1171cbff7c5e54f62fc708cc1bbc99
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Wed Feb 28 11:43:48 2018 -0500
Change order of error message printed when gdbserver can't find CWD
I forgot to address Pedro's comment about my last patch and change the
order of the message printed when getcwd returns NULL on gdbserver.
This obvious commit does it.
gdb/gdbserver/ChangeLog:
2018-02-28 Sergio Durigan Junior <sergiodj@redhat.com>
* server.c (captured_main): Change order of error message printed
when the current working directory cannot be found.
commit 25e3c82c0e927398e759e2d5e35623012b8683f7
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Fri Feb 9 18:54:41 2018 -0500
Make gdbserver work with filename-only binaries
Simon mentioned on IRC that, after the startup-with-shell feature has
been implemented on gdbserver, it is not possible to specify a
filename-only binary, like:
$ gdbserver :1234 a.out
/bin/bash: line 0: exec: a.out: not found
During startup program exited with code 127.
Exiting
This happens on systems where the current directory "." is not listed
in the PATH environment variable. Although including "." in the PATH
variable is a possible workaround, this can be considered a regression
because before startup-with-shell it was possible to use only the
filename (due to reason that gdbserver used "exec*" directly).
The idea of the patch is to verify if the program path provided by the
user (or by the remote protocol) contains a directory separator
character. If it doesn't, it means we're dealing with a filename-only
binary, so we call "gdb_abspath" to properly expand it and transform
it into a full path. Otherwise, we leave the program path untouched.
This mimicks the behaviour seen on GDB (look at "openp" and
"attach_inferior", for example).
I am also submitting a testcase which exercises the scenario described
above. This test requires gdbserver to be executed in a different CWD
than the original, so I also created a helper function, "with_cwd" (on
testsuite/lib/gdb.exp), which takes care of cd'ing into and out of the
specified dir.
Built and regtested on BuildBot, without regressions.
gdb/ChangeLog:
2018-02-28 Sergio Durigan Junior <sergiodj@redhat.com>
Simon Marchi <simon.marchi@polymtl.ca>
* common/common-utils.c: Include "sys/stat.h".
(is_regular_file): Move here from "source.c"; change return
type to "bool".
* common/common-utils.h (is_regular_file): New prototype.
* common/pathstuff.c (contains_dir_separator): New function.
* common/pathstuff.h (contains_dir_separator): New prototype.
* source.c: Don't include "sys/stat.h".
(is_regular_file): Move to "common/common-utils.c".
gdb/gdbserver/ChangeLog:
2018-02-28 Sergio Durigan Junior <sergiodj@redhat.com>
* server.c: Include "filenames.h" and "pathstuff.h".
(program_name): Delete variable.
(program_path): New anonymous class.
(get_exec_wrapper): Use "program_path" instead of
"program_name".
(handle_v_run): Likewise.
(captured_main): Likewise.
(process_serial_event): Likewise.
gdb/testsuite/ChangeLog:
2018-02-28 Sergio Durigan Junior <sergiodj@redhat.com>
* gdb.server/abspath.exp: New file.
* lib/gdb.exp (with_cwd): New procedure.
commit b4987c956dfa44ca9fd8552f63e15f5fa094b2a4
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Fri Feb 9 18:44:59 2018 -0500
Create new common/pathstuff.[ch]
This commit moves the path manipulation routines found on utils.c to a
new common/pathstuff.c, and updates the Makefile.in's accordingly.
The routines moved are "gdb_realpath", "gdb_realpath_keepfile" and
"gdb_abspath".
This will be needed because gdbserver will have to call "gdb_abspath"
on my next patch, which implements a way to expand the path of the
inferior provided by the user in order to allow specifying just the
binary name when starting gdbserver, like:
$ gdbserver :1234 a.out
With the recent addition of the startup-with-shell feature on
gdbserver, this scenario doesn't work anymore if the user doesn't have
the current directory listed in the PATH variable.
I had to do a minor adjustment on "gdb_abspath" because we don't have
access to "tilde_expand" on gdbserver, so now the function is using
"gdb_tilde_expand" instead. Otherwise, the code is the same.
Regression tested on the BuildBot, without regressions.
gdb/ChangeLog:
2018-02-28 Sergio Durigan Junior <sergiodj@redhat.com>
* Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
(HFILES_NO_SRCDIR): Add "common/pathstuff.h".
* auto-load.c: Include "common/pathstuff.h".
* common/common-def.h (current_directory): Move here.
* common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
function.
* common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
prototype.
* common/pathstuff.c: New file.
* common/pathstuff.h: New file.
* compile/compile.c: Include "common/pathstuff.h".
* defs.h (current_directory): Move to "common/common-defs.h".
* dwarf2read.c: Include "common/pathstuff.h".
* exec.c: Likewise.
* guile/scm-safe-call.c: Likewise.
* linux-thread-db.c: Likewise.
* main.c: Likewise.
* nto-tdep.c: Likewise.
* objfiles.c: Likewise.
* source.c: Likewise.
* symtab.c: Likewise.
* utils.c: Include "common/pathstuff.h".
(gdb_realpath): Move to "common/pathstuff.c".
(gdb_realpath_keepfile): Likewise.
(gdb_abspath): Likewise.
* utils.h (gdb_realpath): Move to "common/pathstuff.h".
(gdb_realpath_keepfile): Likewise.
(gdb_abspath): Likewise.
gdb/gdbserver/ChangeLog:
2018-02-28 Sergio Durigan Junior <sergiodj@redhat.com>
* Makefile.in (SFILES): Add "$(srcdir)/common/pathstuff.c".
(OBJS): Add "pathstuff.o".
* server.c (current_directory): New global variable.
(captured_main): Initialize "current_directory".
commit 3083294d65393a31522586e058500f6abda29b83
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed Feb 28 08:58:25 2018 -0500
testsuite: Restore gdb_is_target_remote_prompt
In patch
Add test for load command
3275ef477498e0500d7ea440f1bc51787acf4610
I removed gdb_is_target_remote_prompt, but did not realize it was used
in mi_is_target_remote. This makes the gdb.mi/mi-nonstop.exp crash, for
example:
ERROR: (DejaGnu) proc "gdb_is_target_remote_prompt {[(]gdb[)]
}" does not exist.
The error code is TCL LOOKUP COMMAND gdb_is_target_remote_prompt
The info on the error is:
invalid command name "gdb_is_target_remote_prompt"
while executing
"::tcl_unknown gdb_is_target_remote_prompt {[(]gdb[)]
}"
("uplevel" body line 1)
invoked from within
"uplevel 1 ::tcl_unknown $args"
This patch restores it.
gdb/testsuite/ChangeLog:
* lib/gdb.exp (gdb_is_target_1): Add prompt_regexp parameter and
use it.
(gdb_is_target_remote_prompt): New proc.
(gdb_is_target_remote): Use gdb_is_target_remote_prompt.
(gdb_is_target_native): Pass prompt parameter to
gdb_is_target_1.
commit 12c963421d045a127c413a0722062b9932c50aa9
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Feb 28 11:50:49 2018 +0000
Catch integer overflows/underflows when parsing corrupt DWARF FORM blocks.
PR 22895
PR 22893
* dwarf2.c (read_n_bytes): Replace size parameter with dwarf_block
pointer. Drop unused abfd parameter. Check the size of the block
before initialising the data field. Return the end pointer if the
size is invalid.
(read_attribute_value): Adjust invocations of read_n_bytes.
commit 116acb2c268c89c89186673a7c92620d21825b25
Author: Alan Modra <amodra@gmail.com>
Date: Wed Feb 28 22:09:50 2018 +1030
PR22887, null pointer dereference in aout_32_swap_std_reloc_out
PR 22887
* aoutx.h (swap_std_reloc_in): Correct r_index bound check.
commit 889be5dbd230ee47a90d4a83f682b13ed7e3faae
Author: Douglas B Rupp <rupp@adacore.com>
Date: Wed Feb 28 11:44:26 2018 +0000
Remove any trailing directory separator from ld_canon_sysroot and adjust ld_canon_sysroot_len.
The problem was the ld expect libiberty/lrealpath() to always return a
path, but in some cases it returns a prefix. It seemed like too much of
an earthquake to propose a fix to lrealpath.
* ldmain.c (main): Remove directory separator, if any, from the
end of the canonicalized sysroot.
commit eef104664efb52965d85a28bc3fc7c77e52e48e2
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Feb 28 10:13:54 2018 +0000
Fix potential integer overflow when reading corrupt dwarf1 debug information.
PR 22894
* dwarf1.c (parse_die): Check the length of form blocks before
advancing the data pointer.
commit 0d329c0a83a23cebb86fbe0ebddd780dc0df2424
Author: Alan Modra <amodra@gmail.com>
Date: Wed Feb 28 17:14:24 2018 +1030
Nonsense error messages on invalid aout string offset
translate_symbol_table returns false on detecting an out of range name
string offset, hooray for error checking, but doesn't set bfd_error or
print a useful error. bfd_error therefore contains whatever it had
previously, in my testing, bfd_error_system_call. So the error
printed depended on errno.
PR 22887
* aoutx.h (translate_symbol_table): Print an error message and set
bfd_error on finding an invalid name string offset.
commit f169cfdc08761a3d9fcd587ad8661102672403ec
Author: John Baldwin <jhb@FreeBSD.org>
Date: Tue Oct 24 21:06:00 2017 -0700
Workaround a FreeBSD ptrace() bug with clearing thread events.
When multiple threads within a process wish to report STOPPED events
from wait(), the kernel picks one thread event as the thread event to
report. The chosen thread event is retrieved via PT_LWPINFO by
passing the process ID as the request pid. If multiple events are
pending, then the subsequent wait() after resuming a process will
report another STOPPED event after resuming the process to handle the
next thread event and so on.
A single thread event is cleared as a side effect of resuming the
process with PT_CONTINUE, PT_STEP, etc. In older kernels, however,
the request pid was used to select which thread's event was cleared
rather than always clearing the event that was just reported. To
avoid clearing the event of the wrong LWP, always pass the process ID
instead of an LWP ID to PT_CONTINUE or PT_SYSCALL.
In the case of stepping, the process ID cannot be used with PT_STEP
since it would step the thread that reported an event which may not be
the thread indicated by PTID. For stepping, use PT_SETSTEP to enable
stepping on the desired thread before resuming the process via
PT_CONTINUE instead of using PT_STEP.
This manifested as a failure in the
gdb.threads/continue-pending-status.exp test. Specifically, if thread
2 reported a breakpoint and the test thus switched to thread 3 before
continuing, thread 3's event (if any) was discarded and thread 2's
breakpoint remained pending and was reported a second time as a
duplicate event. As a result, the PC was decremented twice for the
same breakpoint resulting in an illegal instruction fault on x86.
gdb/ChangeLog:
* fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
wildcard process pid for super_resume for kernels with a
specific bug.
commit 0b25598b35eaf4a45be9c769994633e14e13a6a1
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Feb 28 00:00:38 2018 +0000
Automatic date update in version.in
commit 8f065d3b4a814b5a69b3f39700fea7034c79c492
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Tue Feb 27 14:45:48 2018 -0800
gas: Rename .nop directive to .nops
Since directives of NO_PSEUDO_DOT targets don't have the leading '.'
and "nop" can be a valid instruction, rename .nop directive to .nops
to avoid conflict.
* NEWS: Rename .nop to .nops.
* doc/as.texinfo: Likewise.
* read.c (potable): Add "nops". Remove "nop".
(s_nop): Renamed to ...
(s_nops): This.
* read.h (s_nop): Renamed to ...
(s_nops): This.
* write.c (cvt_frag_to_fill): Rename .nop to .nops.
(md_generate_nops): Likewise.
(relax_segment): Likewise.
* testsuite/gas/i386/nop-1.d: Updated.
* testsuite/gas/i386/nop-1.s: Likewise.
* testsuite/gas/i386/nop-2.d: Likewise.
* testsuite/gas/i386/nop-2.s: Likewise.
* testsuite/gas/i386/nop-3.d: Likewise.
* testsuite/gas/i386/nop-3.s: Likewise.
* testsuite/gas/i386/nop-4.d: Likewise.
* testsuite/gas/i386/nop-4.s: Likewise.
* testsuite/gas/i386/nop-5.d: Likewise.
* testsuite/gas/i386/nop-5.s: Likewise.
* testsuite/gas/i386/nop-6.d: Likewise.
* testsuite/gas/i386/nop-6.s: Likewise.
* testsuite/gas/i386/nop-bad-1.l: Likewise.
* testsuite/gas/i386/nop-bad-1.s: Likewise.
* testsuite/gas/i386/x86-64-nop-1.d: Likewise.
* testsuite/gas/i386/x86-64-nop-2.d: Likewise.
* testsuite/gas/i386/x86-64-nop-3.d: Likewise.
* testsuite/gas/i386/x86-64-nop-4.d: Likewise.
* testsuite/gas/i386/x86-64-nop-5.d: Likewise.
* testsuite/gas/i386/x86-64-nop-6.d: Likewise.
commit e05cac70d855cd404eae9aeea5fcfb83ce8aabcf
Author: Phil Muldoon <pmuldoon@redhat.com>
Date: Tue Feb 27 12:21:23 2018 -0800
Update get_args documentation
This patch adds argument compilation documentation, expanding on the
already existing comments, giving a more thorough explanation of
the source of the arguments used in the final argument string.
gdb/ChangeLog:
* compile/compile.c (get_args): Add additional comments
explaining function.
commit f6aec96dce1ddbd8961a3aa8a2925db2021719bb
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Tue Feb 27 11:34:20 2018 -0800
ld: Add --enable-separate-code
This patch adds --enable-separate-code to ld configure to turn on
-z separate-code by default and enables it by default for Linux/x86.
This avoids mixing code pages with data to improve cache performance
as well as security.
To reduce x86-64 executable and shared object sizes, the maximum page
size is reduced from 2MB to 4KB when -z separate-code is turned on by
default. Note: -z max-page-size= can be used to set the maximum page
size.
We compared SPEC CPU 2017 performance before and after this change on
Skylake server. There are no any significant performance changes.
Everything is mostly below +/-1%.
bfd/
* config.in: Regenerated.
* configure: Likewise.
* configure.ac: Add --enable-separate-code.
(DEFAULT_LD_Z_SEPARATE_CODE): New AC_DEFINE_UNQUOTED. Default
to 1 for Linux/x86 targets,
* elf64-x86-64.c (ELF_MAXPAGESIZE): Set to 0x1000 if
DEFAULT_LD_Z_SEPARATE_CODE is 1.
ld/
* NEWS: Mention --enable-separate-code.
* configure.ac: Add --enable-separate-code.
(DEFAULT_LD_Z_SEPARATE_CODE): New AC_DEFINE_UNQUOTED.
* configure.tgt: Default ac_default_ld_z_separate_code to 1 for
Linux/x86 targets.
* config.in: Regenerated.
* configure: Likewise.
* emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Set
link_info.separate_code DEFAULT_LD_Z_SEPARATE_CODE.
commit 55089490f79ce1ddb9610fd6abeeaf896825fb71
Author: Tom Tromey <tom@tromey.com>
Date: Sat Feb 24 09:55:30 2018 -0700
Change target_write_memory_blocks to use std::vector
This changes target_write_memory_blocks to use std::vector, rather
than VEC. This allows the removal of some cleanups.
This version incorporates the additions that Simon made.
Regression tested by the buildbot.
ChangeLog
2018-02-27 Simon Marchi <simon.marchi@polymtl.ca>
Tom Tromey <tom@tromey.com>
* target.h (memory_write_request_s): Remove typedef. Don't define
VEC.
(target_write_memory_blocks): Change argument to std::vector.
(struct memory_write_request): Add constructor.
* target-memory.c (compare_block_starting_address): Return bool.
Change argument types.
(claim_memory): Change arguments to use std::vector.
(split_regular_and_flash_blocks, blocks_to_erase)
(compute_garbled_blocks): Likewise.
(cleanup_request_data, cleanup_write_requests_vector): Remove.
(target_write_memory_blocks): Change argument to std::vector.
* symfile.c (struct load_section_data): Add constructor and
destructor. Use std::vector for "requests".
(struct load_progress_data): Add initializers.
(load_section_callback): Update. Use "new".
(clear_memory_write_data): Remove.
(generic_load): Update.
commit 5b616beff49ce5fe10c5efc2784b6b234bb8cb4f
Author: Thomas Preud'homme <thomas.preudhomme@arm.com>
Date: Tue Feb 27 16:40:45 2018 +0000
[ARM] Remove ARM_FEATURE_COPY macro
Among the macros to manipulate an arm_feature_set structure is the
ARM_FEATURE_COPY which copy the value of a feature set into another.
This can be achieved with a simple assignement which most of the
existing code does. This patch removes the last 2 uses of that macro and
remove the macro altogether.
2018-02-27 Thomas Preud'homme <thomas.preudhomme@arm.com>
include/
* opcode/arm.h (ARM_FEATURE_COPY): Remove macro definition.
2018-02-27 Thomas Preud'homme <thomas.preudhomme@arm.com>
opcodes/
* arm-dis.c (print_insn_coprocessor): Replace uses of ARM_FEATURE_COPY
macro by assignements.
commit 0c305b6176408347afd8452abb8fe974a7e3f999
Author: Alan Hayward <alan.hayward@arm.com>
Date: Tue Feb 27 16:21:52 2018 +0000
Explicitly specify common tdesc.h for use with aarch64.h
gdb/
* arch/aarch64.h: Use common/tdesc.h.
commit b6f8c7c45229a8a5405079e586bfbaad396d2cbe
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Tue Feb 27 07:36:33 2018 -0800
x86: Add -O[2|s] assembler command-line options
On x86, some instructions have alternate shorter encodings:
1. When the upper 32 bits of destination registers of
andq $imm31, %r64
testq $imm31, %r64
xorq %r64, %r64
subq %r64, %r64
known to be zero, we can encode them without the REX_W bit:
andl $imm31, %r32
testl $imm31, %r32
xorl %r32, %r32
subl %r32, %r32
This optimization is enabled with -O, -O2 and -Os.
2. Since 0xb0 mov with 32-bit destination registers zero-extends 32-bit
immediate to 64-bit destination register, we can use it to encode 64-bit
mov with 32-bit immediates. This optimization is enabled with -O, -O2
and -Os.
3. Since the upper bits of destination registers of VEX128 and EVEX128
instructions are extended to zero, if all bits of destination registers
of AVX256 or AVX512 instructions are zero, we can use VEX128 or EVEX128
encoding to encode AVX256 or AVX512 instructions. When 2 source
registers are identical, AVX256 and AVX512 andn and xor instructions:
VOP %reg, %reg, %dest_reg
can be encoded with
VOP128 %reg, %reg, %dest_reg
This optimization is enabled with -O2 and -Os.
4. 16-bit, 32-bit and 64-bit register tests with immediate may be
encoded as 8-bit register test with immediate. This optimization is
enabled with -Os.
This patch does:
1. Add {nooptimize} pseudo prefix to disable instruction size
optimization.
2. Add optimize to i386_opcode_modifier to tell assembler that encoding
of an instruction may be optimized.
gas/
PR gas/22871
* NEWS: Mention -O[2|s].
* config/tc-i386.c (_i386_insn): Add no_optimize.
(optimize): New.
(optimize_for_space): Likewise.
(fits_in_imm7): New function.
(fits_in_imm31): Likewise.
(optimize_encoding): Likewise.
(md_assemble): Call optimize_encoding to optimize encoding.
(parse_insn): Handle {nooptimize}.
(md_shortopts): Append "O::".
(md_parse_option): Handle -On.
* doc/c-i386.texi: Document -O0, -O, -O1, -O2 and -Os as well
as {nooptimize}.
* testsuite/gas/cfi/cfi-x86_64.d: Pass -O0 to assembler.
* testsuite/gas/i386/ilp32/cfi/cfi-x86_64.d: Likewise.
* testsuite/gas/i386/i386.exp: Run optimize-1, optimize-2,
optimize-3, x86-64-optimize-1, x86-64-optimize-2,
x86-64-optimize-3 and x86-64-optimize-4.
* testsuite/gas/i386/optimize-1.d: New file.
* testsuite/gas/i386/optimize-1.s: Likewise.
* testsuite/gas/i386/optimize-2.d: Likewise.
* testsuite/gas/i386/optimize-2.s: Likewise.
* testsuite/gas/i386/optimize-3.d: Likewise.
* testsuite/gas/i386/optimize-3.s: Likewise.
* testsuite/gas/i386/x86-64-optimize-1.s: Likewise.
* testsuite/gas/i386/x86-64-optimize-1.d: Likewise.
* testsuite/gas/i386/x86-64-optimize-2.d: Likewise.
* testsuite/gas/i386/x86-64-optimize-2.s: Likewise.
* testsuite/gas/i386/x86-64-optimize-3.d: Likewise.
* testsuite/gas/i386/x86-64-optimize-3.s: Likewise.
* testsuite/gas/i386/x86-64-optimize-4.d: Likewise.
* testsuite/gas/i386/x86-64-optimize-4.s: Likewise.
opcodes/
PR gas/22871
* i386-gen.c (opcode_modifiers): Add Optimize.
* i386-opc.h (Optimize): New enum.
(i386_opcode_modifier): Add optimize.
* i386-opc.tbl: Add "Optimize" to "mov $imm, reg",
"sub reg, reg/mem", "test $imm, acc", "test $imm, reg/mem",
"and $imm, acc", "and $imm, reg/mem", "xor reg, reg/mem",
"movq $imm, reg" and AVX256 and AVX512 versions of vandnps,
vandnpd, vpandn, vpandnd, vpandnq, vxorps, vxorpd, vpxor,
vpxord and vpxorq.
* i386-tbl.h: Regenerated.
commit bc7c0509f28d3a448adf4c2da335d0251ef69892
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Feb 27 12:27:30 2018 +0000
Add a new Portuguese translation for the binutils sub-directory, and update the Russian translation for the gas sub-directory.
gas * po/ru.po: Updated Russian translation.
binutils* po/pt.po: New Portuguese translation.
* configure.ac (ALL_LINGUAS): Add pt.
* configure: Regenerate.
commit e8f5af786c7665141f6644998b8c427ad466d474
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Feb 27 12:16:04 2018 +0000
Use standardized error message for unrecognized relocs.
bfd * aout-cris.c (swap_ext_reloc_out): Standadize error/warning
message.
* elf-hppa.h (elf_hppa_info_to_howto_rel): Likewise.
* elf32-i386.c (elf_i386_reloc_type_lookup): Likewise.
* elf32-xtensa.c (elf_xtensa_reloc_type_lookup): Likewise.
* elf64-ppc.c (ppc64_elf_reloc_type_lookup): Likewise.
* elf64-s390.c (elf_s390_reloc_type_lookup): Likewise.
* elf64-sh64.c (sh_elf64_info_to_howto): Likewise.
* elfxx-ia64.c (ia64_elf_reloc_type_lookup): Likewise.
* elfxx-sparc.c (_bfd_sparc_elf_reloc_type_lookup): Likewise.
* elfxx-tilegx.c (tilegx_reloc_type_lookup): Likewise.
commit f3185997ac0951edac802e29df03dfc0844fda34
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Feb 27 10:15:13 2018 +0000
Have info_to_howto functions return a success/fail status. Check this result. Stop strip from completeing if one of these functions fails.
bfd PR 22875
* elf-bfd.h (struct elf_backend_data): Change the return type of
the elf_info_to_howto and elf_info_to_howto_rel function pointers
to bfd_boolean.
* elfcode.h (elf_slurp_reloc_table_from_section): Check the return value from the info_to_howto function and fail if that function failed.
* elf32-h8300.c (elf32_h8_relocate_section): Check return value from the info_to_howto function.
(elf32_h8_relax_section): Likewise.
* elf32-lm32.c (lm32_elf_relocate_section): Likewise.
* elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise.
* elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise.
* elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise.
* elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise.
* elf64-ia64-vms.c (elf64_ia64_relocate_section): Likewise.
* elf64-sparc.c (elf64_sparc_slurp_one_reloc_table): Likewise.
* elf64-x86-64.c (elf_x86_64_tls_transition): Likewise.
* elfnn-ia64.c (elfNN_ia64_relocate_section): Likewise.
* elfnn-riscv.c (riscv_elf_check_relocs): Likewise.
(riscv_elf_relocate_section): Likewise.
* elf-hppa.h (elf_hppa_info_to_howto): Change return type to
bfd_boolean. Issue an error message, set an error value and
return FALSE if the reloc is not recognized.
(elf_hppa_info_to_howto_rel): Likewise.
* elf-m10200.c (mn10200_info_to_howto): Likewise.
* elf-m10300.c (mn10300_info_to_howto): Likewise.
* elf.c (_bfd_elf_no_info_to_howto): Likewise.
* elf32-arc.c (arc_info_to_howto_rel): Likewise.
* elf32-arm.c (elf32_arm_info_to_howto): Likewise.
* elf32-avr.c (avr_info_to_howto_rela): Likewise.
* elf32-bfin.c (bfin_info_to_howto): Likewise.
* elf32-cr16.c (elf_cr16_info_to_howto): Likewise.
* elf32-cr16c.c (elf_cr16c_info_to_howto): Likewise.
* elf32-cris.c (elf_cr16c_info_to_howto_rel, cris_info_to_howto_rela): Likewise.
* elf32-crx.c (elf_crx_info_to_howto): Likewise.
* elf32-d10v.c (d10v_info_to_howto_rel): Likewise.
* elf32-d30v.c (d30v_info_to_howto_rel, d30v_info_to_howto_rela): Likewise.
* elf32-dlx.c (dlx_rtype_to_howto, elf32_dlx_info_to_howto, elf32_dlx_info_to_howto_rel): Likewise.
* elf32-epiphany.c (epiphany_info_to_howto_rela): Likewise.
* elf32-fr30.c (fr30_info_to_howto_rela): Likewise.
* elf32-frv.c (frv_info_to_howto_rela, frvfdpic_info_to_howto_rel): Likewise.
* elf32-ft32.c (ft32_info_to_howto_rela): Likewise.
* elf32-gen.c (elf_generic_info_to_howto, elf_generic_info_to_howto_rel): Likewise.
* elf32-h8300.c (elf32_h8_info_to_howto, elf32_h8_info_to_howto_rel): Likewise.
* elf32-i370.c (i370_elf_info_to_howto): Likewise.
* elf32-i386.c (elf_i386_reloc_type_lookup, elf_i386_rtype_to_howto, elf_i386_info_to_howto_rel): Likewise.
* elf32-i860.c (lookup_howto, elf32_i860_info_to_howto_rela): Likewise.
* elf32-i960.c (elf32_i960_info_to_howto_rel): Likewise.
* elf32-ip2k.c (ip2k_info_to_howto_rela): Likewise.
* elf32-iq2000.c (iq2000_info_to_howto_rela): Likewise.
* elf32-lm32.c (lm32_info_to_howto_rela): Likewise.
* elf32-m32c.c (m32c_info_to_howto_rela): Likewise.
* elf32-m32r.c (m32r_info_to_howto_rel, m32r_info_to_howto): Likewise.
* elf32-m68hc11.c (m68hc11_info_to_howto_rel): Likewise.
* elf32-m68hc12.c (m68hc11_info_to_howto_rel): Likewise.
* elf32-m68k.c (rtype_to_howto): Likewise.
* elf32-mcore.c (mcore_elf_info_to_howto): Likewise.
* elf32-mep.c (mep_info_to_howto_rela): Likewise.
* elf32-metag.c (metag_info_to_howto_rela): Likewise.
* elf32-microblaze.c (microblaze_elf_info_to_howto): Likewise.
* elf32-mips.c (mips_info_to_howto_rel, mips_info_to_howto_rela): Likewise.
* elf32-moxie.c (moxie_info_to_howto_rela): Likewise.
* elf32-msp430.c (msp430_info_to_howto_rela): Likewise.
* elf32-mt.c (mt_info_to_howto_rela): Likewise.
* elf32-nds32.c (nds32_info_to_howto_rel, nds32_info_to_howto): Likewise.
* elf32-nios2.c (nios2_elf32_info_to_howto): Likewise.
* elf32-or1k.c (or1k_info_to_howto_rela): Likewise.
* elf32-pj.c (pj_elf_info_to_howto): Likewise.
* elf32-ppc.c (ppc_elf_info_to_howto): Likewise.
* elf32-pru.c (pru_elf32_info_to_howto): Likewise.
* elf32-rl78.c (rl78_info_to_howto_rela): Likewise.
* elf32-rx.c (rx_info_to_howto_rela): Likewise.
* elf32-s390.c (elf_s390_info_to_howto): Likewise.
* elf32-score.c (s3_bfd_score_info_to_howto, _bfd_score_info_to_howto): Likewise.
* elf32-score7.c (s7_bfd_score_info_to_howto): Likewise.
* elf32-sh.c (sh_elf_info_to_howto): Likewise.
* elf32-spu.c (spu_elf_info_to_howto): Likewise.
* elf32-tic6x.c (elf32_tic6x_info_to_howto, elf32_tic6x_info_to_howto_rel): Likewise.
* elf32-tilepro.c (tilepro_info_to_howto_rela): Likewise.
* elf32-v850.c (v850_elf_info_to_howto_rel, v850_elf_info_to_howto_rela, v800_elf_info_to_howto): Likewise.
* elf32-vax.c (rtype_to_howto): Likewise.
* elf32-visium.c (visium_info_to_howto_rela): Likewise.
* elf32-wasm32.c (elf32_wasm32_rtype_to_howto, elf32_wasm32_info_to_howto_rela): Likewise.
* elf32-xc16x.c (elf32_xc16x_info_to_howto): Likewise.
* elf32-xgate.c (xgate_info_to_howto_rel): Likewise.
* elf32-xstormy16.c (xstormy16_info_to_howto_rela): Likewise.
* elf32-xtensa.c (elf_xtensa_info_to_howto_rela): Likewise.
* elf64-alpha.c (elf64_alpha_info_to_howto): Likewise.
* elf64-gen.c (elf_generic_info_to_howto, elf_generic_info_to_howto_rel): Likewise.
* elf64-ia64-vms.c (elf64_ia64_info_to_howto): Likewise.
* elf64-mips.c (mips_elf64_info_to_howto_rela): Likewise.
* elf64-mmix.c (mmix_info_to_howto_rela): Likewise.
* elf64-ppc.c (ppc64_elf_info_to_howto): Likewise.
* elf64-s390.c (elf_s390_reloc_type_lookup): Likewise.
* elf64-sh64.c (elf_s390_info_to_howto, sh_elf64_info_to_howto): Likewise.
* elf64-x86-64.c (elf_x86_64_info_to_howto): Likewise.
* elfn32-mips.c (mips_info_to_howto_rel, mips_info_to_howto_rela): Likewise.
* elfnn-aarch64.c (elfNN_aarch64_info_to_howto): Likewise.
* elfnn-ia64.c (elfNN_ia64_info_to_howto): Likewise.
* elfnn-riscv.c (riscv_info_to_howto_rela): Likewise.
* elfxx-ia64.c (ia64_elf_reloc_type_lookup): Likewise.
* elfxx-sparc.c (_bfd_sparc_elf_info_to_howto): Likewise.
* elfxx-tilegx.c (tilegx_info_to_howto_rela): Likewise.
* elf32-score.h (s7_bfd_score_info_to_howto): Update prototype.
* elfxx-sparc.h (_bfd_sparc_elf_info_to_howto): Update prototype.
* elfxx-tilegx.h (tilegx_info_to_howto_rela): Update prototype.
* elfxx-target.h (elf_info_to_howto, elf_info_to_howto_rel): Default to NULL.
binutils PR 22875
* objcopy.c (copy_object): Check the error status after marking symbols used in relocations.
* testsuite/binutils-all/strip-13.s: New test source file.
* testsuite/binutils-all/strip-13.s: New test driver file.
* testsuite/binutils-all/objcopy.exp: Run the new test.
commit b643315decd3e566e68ef374a0794371a4bddab3
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Feb 27 00:00:26 2018 +0000
Automatic date update in version.in
commit 1f4bace8d6e4d8f627bd31dc01061c31fd590128
Author: Jim Wilson <jimw@sifive.com>
Date: Mon Feb 26 14:09:12 2018 -0800
ChangeLog entry for previous commit.
commit 6f6372fadcfffc89ef511d51323678f88624be5c
Author: Jim Wilson <jimw@sifive.com>
Date: Mon Feb 26 14:05:13 2018 -0800
IA-64: Fix linker error with --no-keep-memory.
bfd/
PR 15904
* elfnn-ia64.c (elfNN_ia64_relax_section): After ia64_elf_relax_brl
call, set changed_contents and changed_relocs. Likewise after
successful ia64_elf_relax_br call.
commit 3275ef477498e0500d7ea440f1bc51787acf4610
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Mon Feb 26 14:30:43 2018 -0500
Add test for load command
There doesn't seem to by any test for the load command. I suggest to
add this test, so that we can have a minimum of confidence we don't
break it completely while refactoring the code that implements it.
gdb/testsuite/ChangeLog:
* gdb.base/load-command.c: New file.
* gdb.base/load-command.exp: New file.
* lib/gdb.exp (gdb_is_target_remote_prompt): Rename to...
(gdb_is_target_1): ...this, and generalize for other targets
than just remote.
(gdb_is_target_remote): Use gdb_is_target_1.
(gdb_is_target_native): use gdb_is_target_1.
commit c5196c9298b7df29652c0ebe24a43ac6c9c76b0d
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Feb 26 19:43:17 2018 +0000
MIPS: Don't use a 32-bit BFD architecture with a 64-bit ABI
Select `bfd_mach_mips4000', which corresponds to the MIPS III ISA, the
earlies with 64-bit support, whenever a 32-bit BFD architecture has been
chosen to use with a 64-bit ABI. The situation can happen in a few
cases:
1. When the user has used `set architecture' or `set mips abi' commands
to override automatic selection and then starts a debug session by
requesting to run, attach or connect to a target.
2. In native debugging when reattaching to a previously debugged process
where the program to be debugged has been since discarded, as
observed with:
FAIL: gdb.base/attach.exp: attach2, with no file (GDB internal error)
in n32 and n64 regression testing.
3. In remote debugging with a non-XML debug stub when discarding the
program to be debugged while connected to the remote target, as
observed with:
FAIL: gdb.base/break-unload-file.exp: cmdline: always-inserted on: break: file (GDB internal error)
in n32 and n64 regression testing.
In the latter two cases the ABI, quite rightfully, is retained while the
program to be debugged is discarded. This is because in that case the
ABI previously determined is carried over along with `gdbarch' in use,
which is retained. The BFD architecture is however discarded and the
default then applies, because it is not attached to `gdbarch'.
In all these cases we trip with an internal error message as follows:
.../gdb/mips-tdep.c:766: internal-error: bad register size
A problem internal to GDB has been detected,
further debugging may prove unreliable.
Quit this debugging session? (y or n) n
This is a bug, please report it. For instructions, see:
<http://www.gnu.org/software/gdb/bugs/>.
coming from `mips_pseudo_register_read', because the raw register width
inferred from the BFD architecture turns out to be 4 for the general
registers while the cooked register width inferred from the ABI in
effect is 8.
We do not hit this internal error in remote debugging with an XML debug
stub, because in that case raw register width information is passed by
the stub along with the XML target description.
Ultimately I think we ought to make the BFD architecture sticky like the
ABI, however in the interim this simple fix will do, removing the error
across all three cases. The case where the user has used `set mips abi'
or `set architecture' commands has to be handled anyway, and although a
more sophisticated solution could be envisaged, such as reporting an
error with the respective `set' command, I think this is too much of a
corner case to bother.
gdb/
* mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
architecture with a 64-bit ABI.
commit 37c33887bda54afb8fbf4786d400ce549c0e3de8
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Feb 26 19:43:17 2018 +0000
MIPS: Reorder ABI determination ahead of target description loading
Move ABI determination code ahead of target description loading so that
architecture information can be adjusted according to the ABI selected,
and then used in OS dependent register information initialization needed
for target description processing. No functional change.
gdb/
* gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
ahead of target description loading.
commit d4dd32824a1194718c81773804017ab546cb3aab
Author: Tom Tromey <tom@tromey.com>
Date: Tue Apr 25 22:33:50 2017 -0600
Change frame_filter_flags to use DEF_ENUM_FLAGS_TYPE
This changes frame_filter_flags to use DEF_ENUM_FLAGS_TYPE, and
updates all the uses. It also changes the enum constants to use <<,
as suggested by Sergio.
ChangeLog
2018-02-26 Tom Tromey <tom@tromey.com>
* stack.c (backtrace_command_1): Update.
* python/python-internal.h (gdbpy_apply_frame_filter): Change type
of "flags".
* python/py-framefilter.c (py_print_frame)
(gdbpy_apply_frame_filter): Change type of "flags".
* mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
of "flags".
(mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
(mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
* extension.h (enum frame_filter_flag): Rename from
frame_filter_flags.
(frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
(apply_ext_lang_frame_filter): Change type of "flags".
* extension.c (apply_ext_lang_frame_filter): Change type of
"flags".
* extension-priv.h (struct extension_language_ops)
<apply_frame_filter>: Change type of "flags".
commit 6893c19a8b81a399953edbf26aaef6e714a7ab0e
Author: Tom Tromey <tom@tromey.com>
Date: Mon Jun 20 10:36:29 2016 -0600
Make "bt N" print correct number of frames when using a frame filter
PR python/16497 notes that using "bt" with a positive argument prints
the wrong number of frames when a frame filter is in use. Also, in this
case, the non-frame-filter path will print a message about "More stack
frames" when there are more; but this is not done in the frame-filter
case.
The first problem is that backtrace_command_1 passes the wrong value
to apply_ext_lang_frame_filter -- that function takes the final
frame's number as an argument, but backtrace_command_1 passes the
count, which is off by one.
The solution to the second problem is to have the C stack-printing
code stop at the correct number of frames and then print the message.
Tested using the buildbot.
ChangeLog
2018-02-26 Tom Tromey <tom@tromey.com>
PR python/16497:
* stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag. Fix
off-by-one in py_end computation.
* python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
PRINT_MORE_FRAMES.
* extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
constant.
2018-02-26 Tom Tromey <tom@tromey.com>
PR python/16497:
* gdb.python/py-framefilter.exp: Update test.
commit 2ddeaf8a7d64094f4caf6cdc412d8162f49f73a1
Author: Tom Tromey <tom@tromey.com>
Date: Wed Jan 10 13:53:18 2018 -0700
Handle DW_TAG_variant_part and DW_TAG_variant
This changes dwarf2read to understand DW_TAG_variant_part and
DW_TAG_variant.
Note that DW_AT_discr_list is not handled. I did not need this for
Rust. I imagine this should not be too hard to add later, should
someone need it. Meanwhile I have gdb emit a complaint if it is seen.
There is a lurking issue concerning the placement of the discriminant
in the DWARF. For Rust, I ended up following the letter of the
standard and having the discriminant be a child of the
DW_TAG_variant_part. However, GCC's Ada support does not do this.
Pierre-Marie filed this with the DWARF committee:
http://dwarfstd.org/ShowIssue.php?issue=180123.1
However as that is read-only, if you have comments you might consider
adding them to the GCC bug:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83935
Finally, there is a DWARF extension lurking in here. In Rust, a
univariant enum will not have a discriminant. However, in order to
unify the representation of all data-carrying enums, I've made LLVM
(and my forthcoming rustc patch) emit a univariant enum using a
DW_TAG_variant with a single variant part and without DW_AT_discr.
The lack of this DW_AT_discr is the extension. I will submit an issue
on dwarfstd.org about this.
2018-02-26 Tom Tromey <tom@tromey.com>
* dwarf2read.c (struct variant_field): New.
(struct nextfield) <variant>: New field.
(dwarf2_add_field): Handle DW_TAG_variant_part.
(dwarf2_attach_fields_to_type): Attach a discriminant_info to a
discriminated union.
(read_structure_type): Handle DW_TAG_variant_part.
(handle_struct_member_die): New function, extracted from
process_structure_scope. Handle DW_TAG_variant.
(process_structure_scope): Handle discriminated unions. Call
handle_struct_member_die.
2018-02-26 Tom Tromey <tom@tromey.com>
* gdb.dwarf2/variant.c: New file.
* gdb.dwarf2/variant.exp: New file.
commit c9317f214b274b805190b8e878c79f4181d93bb4
Author: Tom Tromey <tom@tromey.com>
Date: Fri Feb 9 13:31:51 2018 -0700
Convert Rust to use discriminated unions
A Rust enum is, essentially, a discriminated union. Currently the
Rust language support handles Rust enums locally, in rust-lang.c.
However, because I am changing the Rust compiler to use
DW_TAG_variant* to represent enums, it seemed better to have a single
internal representation for Rust enums in gdb.
This patch implements this idea by moving the current Rust enum
handling code to dwarf2read. This allows the simplification of some
parts of rust-lang.c as well.
2018-02-26 Tom Tromey <tom@tromey.com>
* rust-lang.h (rust_last_path_segment): Declare.
* rust-lang.c (rust_last_path_segment): Now public. Change
contract.
(struct disr_info): Remove.
(RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
(RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
(rust_get_disr_info, rust_tuple_variant_type_p): Remove.
(rust_enum_p, rust_enum_variant): New function.
(rust_underscore_fields): Remove "offset" parameter.
(rust_print_enum): New function.
(rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
<TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
(rust_print_struct_def): Add "for_rust_enum" parameter. Handle
enums.
(rust_internal_print_type): New function, from rust_print_type.
Remove enum code.
(rust_print_type): Call rust_internal_print_type.
(rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
Update enum handling.
* dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
(rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
(rust_union_quirks): New functions.
(process_full_comp_unit, process_full_type_unit): Call
rust_union_quirks.
(process_structure_scope): Update rust_unions if necessary.
2018-02-26 Tom Tromey <tom@tromey.com>
* gdb.rust/simple.exp: Accept more possible results in enum test.
commit 7c22600aabfd10e190e98fff0b7c2d69cd191325
Author: Tom Tromey <tom@tromey.com>
Date: Fri Feb 9 13:31:42 2018 -0700
Initial support for variant parts
This adds some initial support for variant parts to gdbtypes.h. A
variant part is represented as a union. The union has a flag
indicating that it has a discriminant, and information about the
discriminant is attached using the dynamic property system.
2018-02-26 Tom Tromey <tom@tromey.com>
* value.h (value_union_variant): Declare.
* valops.c (value_union_variant): New function.
* gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
(struct discriminant_info): New.
(enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
enumerator.
(struct main_type) <flag_discriminated_union>: New field.
commit 15ce8941e7d2807a3396a6874c528b24c387660a
Author: Tom Tromey <tom@tromey.com>
Date: Wed Feb 21 10:36:55 2018 -0700
Sign-extend non-bit-fields in unpack_bits_as_long
unpack_bits_as_long is documented as sign-extending its result when
the type is signed. However, it was only doing sign-extension in the
case where the field was a bitfield -- that is, not when the "bitsize"
parameter was 0, indicating the size should be taken from the type.
Also, unpack_bits_as_long was incorrectly computing the shift for
big-endian architectures for the non-bitfield case.
This patch fixes these bugs in a straightforward way. A new selftest
is included.
2018-02-26 Tom Tromey <tom@tromey.com>
* Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
unittests/unpack-selftests.c.
* unittests/unpack-selftests.c: New file.
* value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
commit d7c798565e0f12a821dd399ac3bbf5d49271169a
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Feb 26 16:11:03 2018 +0000
GAS/doc: Clean up `.dc' and `.ds' directive descriptions
gas/
* doc/as.texinfo (Pseudo Ops): Clean up `.dc' and `.ds'
descriptions.
commit 48fbe735fb8f0e65976d2b9dd345bf2f947ad258
Author: Yao Qi <yao.qi@linaro.org>
Date: Mon Feb 26 15:38:01 2018 +0000
Move read_partial_die to partial_die_info::read
gdb:
2018-02-26 Yao Qi <yao.qi@linaro.org>
* dwarf2read.c (struct partial_die_info) <read>: New method.
(read_partial_die): Remove the declaration.
(load_partial_dies): Update.
(partial_die_info::partial_die_info):
(read_partial_die): Change it to partial_die_info::read.
commit 52356b79d76fb299a67685510ae584f3b0179734
Author: Yao Qi <yao.qi@linaro.org>
Date: Mon Feb 26 15:38:01 2018 +0000
Move fixup_partial_die to partial_die_info::fixup
fixup_partial_die can be a partial_die_info method fixup.
gdb:
2018-02-26 Yao Qi <yao.qi@linaro.org>
* dwarf2read.c (struct partial_die_info) <fixup>: New method.
(fixup_partial_die): Remove declaration.
(scan_partial_symbols): Update.
(partial_die_parent_scope): Likewise.
(partial_die_full_name): Likewise.
(fixup_partial_die): Change it to partial_die_info::fixup.
commit 35cc7ed70ced98eedf9c065faa602abb1dfac537
Author: Yao Qi <yao.qi@linaro.org>
Date: Mon Feb 26 15:38:01 2018 +0000
Remove one argument abbrev_len in read_partial_die
gdb:
2018-02-26 Yao Qi <yao.qi@linaro.org>
* dwarf2read.c (read_partial_die): Update the declaration.
(load_partial_dies): Caller update.
(read_partial_die): Remove one argument abbrev_len.
commit 6f06d47ba0965013203af25c17854c01caae5544
Author: Yao Qi <yao.qi@linaro.org>
Date: Mon Feb 26 15:38:01 2018 +0000
Class-fy partial_die_info
This patch is to class-fy partial_die_info. Two things special here,
- disable assignment operator, but keep copy ctor, which is used in
load_partial_dies,
- have a private ctor which is only used by dwarf2_cu::find_partial_die,
I don't want other code use it, so make it private,
gdb:
2018-02-26 Yao Qi <yao.qi@linaro.org>
* dwarf2read.c (struct partial_die_info): Add ctor, delete
assignment operator.
(load_partial_dies): Use ctor and copy ctor.
(read_partial_die): Update.
(dwarf2_cu::find_partial_die): Use ctor.
commit d590ff257c81d5aac51928148ce74b0131bbf81c
Author: Yao Qi <yao.qi@linaro.org>
Date: Mon Feb 26 15:38:01 2018 +0000
Change find_partial_die_in_comp_unit to dwarf2_cu::find_partial_die
This patch changes find_partial_die_in_comp_unit to a dwarf2_cu method
find_partial_die.
gdb:
2018-02-26 Yao Qi <yao.qi@linaro.org>
* dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
(find_partial_die_in_comp_unit): Change it to
dwarf2_cu::find_partial_die.
(find_partial_die): Update.
commit fd0a254f815b133c67230c50dd84eb0d4b31a93d
Author: Yao Qi <yao.qi@linaro.org>
Date: Mon Feb 26 15:38:00 2018 +0000
Don't check abbrev is NULL in read_partial_die
'abbrev' won't be NULL, so don't check it.
gdb:
2018-02-26 Yao Qi <yao.qi@linaro.org>
* dwarf2read.c (read_partial_die): Remove the code checking abbrev
is NULL.
commit cd9983dd5f16803aa60e9fe1692b7e6716ac3927
Author: Yao Qi <yao.qi@linaro.org>
Date: Mon Feb 26 15:38:00 2018 +0000
Re-write partial_die_info allocation in load_partial_dies
load_partial_dies has a "while (1)" loop to visit each die, and create
partial_die_info if needed in each iteration, like this,
part_die = XOBNEW (&cu->comp_unit_obstack, struct partial_die_info);
while (1)
{
if (foo1) continue;
if (foo2) continue;
read_partial_die (, , part_die, ,);
....
part_die = XOBNEW (&cu->comp_unit_obstack, struct partial_die_info);
};
the code was written in a way that spaces are allocated on necessary on
cu->comp_unit_obstack. I want to class-fy partial_die_info, but
partial_die_info ctor can't follow XOBNEW immediately, so this patch
rewrite this loop to:
while (1)
{
if (foo1) continue;
if (foo2) continue;
struct partial_die_info pdi;
read_partial_die (, , &pdi, ,);
part_die = XOBNEW (&cu->comp_unit_obstack, struct partial_die_info);
memcpy (part_die, &pdi, sizeof (pdi));
};
we create a local variable pdi, if we need it, call XOBNEW, and copy.
This also reduce one XOBNEW call. I measured the number of XOBNEW call in
load_partial_dies when gdb reads dwarf2read.o, without this patch, it is
18827, and with this patch, it is 18826.
gdb:
2018-026-26 Yao Qi <yao.qi@linaro.org>
* dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
commit f46cd62a69b8050c7c30a53b29a781a9b5e9f062
Author: Alan Hayward <alan.hayward@arm.com>
Date: Mon Feb 26 10:51:36 2018 +0000
Move arch/tdesc.h to common/tdesc.h
gdb/
* arch/amd64.h: Use common/tdesc.h.
* arch/i386.c: Likewise.
* arch/i386.h: Likewise.
* arch/tic6x.c: Likewise.
* arch/tdesc.h: Move file from here...
* common/tdesc.h: ...to here.
* features/aarch64-core.c: Regenerate.
* features/aarch64-fpu.c: Regenerate.
* features/i386/32bit-avx.c: Regenerate.
* features/i386/32bit-avx512.c: Regenerate.
* features/i386/32bit-core.c: Regenerate.
* features/i386/32bit-linux.c: Regenerate.
* features/i386/32bit-mpx.c: Regenerate.
* features/i386/32bit-pkeys.c: Regenerate.
* features/i386/32bit-sse.c: Regenerate.
* features/i386/64bit-avx.c: Regenerate.
* features/i386/64bit-avx512.c: Regenerate.
* features/i386/64bit-core.c: Regenerate.
* features/i386/64bit-linux.c: Regenerate.
* features/i386/64bit-mpx.c: Regenerate.
* features/i386/64bit-pkeys.c: Regenerate.
* features/i386/64bit-segments.c: Regenerate.
* features/i386/64bit-sse.c: Regenerate.
* features/i386/x32-core.c: Regenerate.
* features/tic6x-c6xp.c: Regenerate.
* features/tic6x-core.c: Regenerate.
* features/tic6x-gp.c: Regenerate.
* target-descriptions.c: Use common/tdesc.h.
* target-descriptions.h: Likewise.
gdbserver/
* tdesc.c: Use common/tdesc.h.
* tdesc.h: Likewise.
commit 46c685acda0034ffad9d767a51aa3aa5df139356
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Feb 26 11:28:23 2018 +0000
Fix typo in documentation of assembler's .dc directive.
* doc/as.texinfo (Dc): Fix typo.
commit 6838f2bed6459514c1b0c549e6aa3fc7dbb1d7ec
Author: Alan Modra <amodra@gmail.com>
Date: Mon Feb 26 08:16:24 2018 +1030
Segfault on phdrs allocated but not created
A number of ARM tests show results like:
ld-new: no address assigned to the veneers output section .gnu.sgstubs
ld-new: can not size stub section: invalid operation
ld-new: warning: cannot find entry symbol _start; defaulting to 0000000000010074
ld-new: tmpdir/cmse-veneers-no-gnu_sgstubs: warning: allocated section `.text' not in segment
Segmentation fault
PASS: Secure gateway veneers: no .gnu.sgstubs section
The PASS despite the segv shows the danger of using "#..." to match
error output. This patch doesn't try to fix the testuite, but does
prevent the segfault.
* elf.c (assign_file_positions_except_relocs): Don't segfault
when actual number of phdrs is less than allocated. Delete
outdated comment. Formatting.
commit df5f2391f7b2e3cab7e677ab7dadd02aef06e269
Author: Alan Modra <amodra@gmail.com>
Date: Sat Feb 24 10:28:12 2018 +1030
ld error/warning messages
This patch standardizes messages in ld, to better conform to the GNU
coding standard. Besides issues of capitalization and full-stops,
I've
- Split up help messages for target options, so that adding a new
option does not mean loss of translation for all the others.
- Embedded tabs have been removed, since a user might have tab stops
set at other than 8 char intervals.
- Added missing program name (%P). ld isn't the compiler.
- Put %F and %X first (and removed %X if %F was present). These can
go anywhere, but look silly in the m%Fiddle of a message, and
choosing "%P%F:" in some messages but "%F%P:" in others leads to the
likelihood of duplication in ld.pot. Besides, the colon belongs
with %P.
* emulparams/call_nop.sh, * emulparams/cet.sh,
* emulparams/elf32mcore.sh, * emultempl/aarch64elf.em
* emultempl/aix.em, * emultempl/alphaelf.em, * emultempl/armcoff.em,
* emultempl/armelf.em, * emultempl/avrelf.em, * emultempl/beos.em,
* emultempl/bfin.em, * emultempl/cr16elf.em, * emultempl/elf32.em,
* emultempl/elf-generic.em, * emultempl/hppaelf.em,
* emultempl/linux.em, * emultempl/lnk960.em,
* emultempl/m68hc1xelf.em, * emultempl/m68kcoff.em,
* emultempl/m68kelf.em, * emultempl/metagelf.em,
* emultempl/mipself.em, * emultempl/mmix-elfnmmo.em,
* emultempl/mmo.em, * emultempl/msp430.em, * emultempl/nds32elf.em,
* emultempl/nios2elf.em, * emultempl/pe.em, * emultempl/pep.em,
* emultempl/ppc32elf.em, * emultempl/ppc64elf.em,
* emultempl/scoreelf.em, * emultempl/sh64elf.em,
* emultempl/spuelf.em, * emultempl/sunos.em, * emultempl/tic6xdsbt.em,
* emultempl/ticoff.em, * emultempl/v850elf.em, * emultempl/vms.em,
* emultempl/vxworks.em, * emultempl/xtensaelf.em, * ldcref.c,
* ldctor.c, * ldexp.c, * ldfile.c, * ldgram.y, * ldlang.c,
* ldmain.c, * ldmisc.c, * ldwrite.c, * lexsup.c, * mri.c, * pe-dll.c,
* plugin.c: Standardize error/warning messages.
* testsuite/ld-arc/jli-overflow.err,
* testsuite/ld-arm/cmse-implib-errors.out,
* testsuite/ld-arm/cmse-new-earlier-later-implib.out,
* testsuite/ld-arm/cmse-new-implib-not-sg-in-implib.out,
* testsuite/ld-arm/cmse-new-wrong-implib.out,
* testsuite/ld-arm/cmse-veneers-no-gnu_sgstubs.out,
* testsuite/ld-arm/cmse-veneers-wrong-entryfct.out,
* testsuite/ld-arm/vxworks1-static.d,
* testsuite/ld-cris/tls-err-20x.d, * testsuite/ld-cris/tls-err-29.d,
* testsuite/ld-cris/tls-err-31.d, * testsuite/ld-cris/tls-err-33.d,
* testsuite/ld-cris/tls-err-35.d, * testsuite/ld-cris/tls-err-37.d,
* testsuite/ld-cris/tls-err-39.d, * testsuite/ld-cris/tls-err-41.d,
* testsuite/ld-cris/tls-err-43.d, * testsuite/ld-cris/tls-err-45.d,
* testsuite/ld-cris/tls-err-47.d, * testsuite/ld-cris/tls-err-49.d,
* testsuite/ld-cris/tls-err-51.d, * testsuite/ld-cris/tls-err-67.d,
* testsuite/ld-elf/dwarf2.err, * testsuite/ld-elf/dwarf3.err,
* testsuite/ld-elf/orphan-5.l, * testsuite/ld-elf/orphan-6.l,
* testsuite/ld-i386/vxworks1-static.d,
* testsuite/ld-mips-elf/bal-jalx-pic-micromips-n32.d,
* testsuite/ld-mips-elf/bal-jalx-pic-micromips-n64.d,
* testsuite/ld-mips-elf/bal-jalx-pic-micromips.d,
* testsuite/ld-mips-elf/bal-jalx-pic-n32.d,
* testsuite/ld-mips-elf/bal-jalx-pic-n64.d,
* testsuite/ld-mips-elf/bal-jalx-pic.d,
* testsuite/ld-mips-elf/jal-global-overflow-1.d,
* testsuite/ld-mips-elf/jal-local-overflow-1.d,
* testsuite/ld-mips-elf/mode-change-error-1.d,
* testsuite/ld-mips-elf/unaligned-branch-2.d,
* testsuite/ld-mips-elf/unaligned-branch-ignore-2.d,
* testsuite/ld-mips-elf/unaligned-branch-ignore-micromips.d,
* testsuite/ld-mips-elf/unaligned-branch-ignore-mips16.d,
* testsuite/ld-mips-elf/unaligned-branch-ignore-r6-1.d,
* testsuite/ld-mips-elf/unaligned-branch-micromips.d,
* testsuite/ld-mips-elf/unaligned-branch-mips16.d,
* testsuite/ld-mips-elf/unaligned-branch-r6-1.d,
* testsuite/ld-mips-elf/unaligned-branch-r6-2.d,
* testsuite/ld-mips-elf/unaligned-branch.d,
* testsuite/ld-mips-elf/unaligned-jalx-1.d,
* testsuite/ld-mips-elf/unaligned-jalx-3.d,
* testsuite/ld-mips-elf/unaligned-jalx-addend-1.d,
* testsuite/ld-mips-elf/unaligned-jalx-addend-3.d,
* testsuite/ld-mips-elf/unaligned-jalx-addend-micromips-1.d,
* testsuite/ld-mips-elf/unaligned-jalx-addend-mips16-1.d,
* testsuite/ld-mips-elf/unaligned-jalx-micromips-1.d,
* testsuite/ld-mips-elf/unaligned-jalx-mips16-1.d,
* testsuite/ld-mips-elf/unaligned-jump-micromips.d,
* testsuite/ld-mips-elf/unaligned-jump-mips16.d,
* testsuite/ld-mips-elf/unaligned-jump.d,
* testsuite/ld-mips-elf/unaligned-ldpc-1.d,
* testsuite/ld-mips-elf/unaligned-lwpc-1.d,
* testsuite/ld-mips-elf/undefined.d,
* testsuite/ld-mips-elf/vxworks1-static.d,
* testsuite/ld-mmix/bpo-20.d, * testsuite/ld-mmix/bpo-20m.d,
* testsuite/ld-mmix/bpo-7.d, * testsuite/ld-mmix/bpo-7m.d,
* testsuite/ld-mmix/bpo-8.d, * testsuite/ld-mmix/bpo-8m.d,
* testsuite/ld-mmix/greg-17.d, * testsuite/ld-mmix/greg-18.d,
* testsuite/ld-mmix/greg-8.d, * testsuite/ld-mmix/greg-9.d,
* testsuite/ld-plugin/plugin-14.d, * testsuite/ld-plugin/plugin-15.d,
* testsuite/ld-plugin/plugin-16.d, * testsuite/ld-plugin/plugin-20.d,
* testsuite/ld-plugin/plugin-21.d, * testsuite/ld-plugin/plugin-22.d,
* testsuite/ld-plugin/plugin-23.d, * testsuite/ld-plugin/plugin-6.d,
* testsuite/ld-plugin/plugin-7.d, * testsuite/ld-plugin/plugin-8.d,
* testsuite/ld-powerpc/aix-weak-3-32.d,
* testsuite/ld-powerpc/aix-weak-3-64.d,
* testsuite/ld-powerpc/vxworks1-static.d,
* testsuite/ld-sh/vxworks1-static.d,
* testsuite/ld-sparc/vxworks1-static.d,
* testsuite/ld-undefined/undefined.exp,
* testsuite/ld-x86-64/pie1.d: Update for changed errors and warnings.
* testsuite/ld-elf/warn1.d, * testsuite/ld-elf/warn2.d: Correct regex.
commit 33589acbfea909ca2a26b977ff2f672332990747
Author: Alan Modra <amodra@gmail.com>
Date: Sat Feb 24 18:50:21 2018 +1030
ld message translation for emultempl and emulparams
Most of the emultempl/*.em error/warning messages do not currently
appear in ld.pot, and fixing that is not simply a matter of adding
missing files to POTFILES. The difficulty is the shell-script
quoting, for example aarch64elf.em:PARSE_AND_LIST_OPTIONS "Don'\''t".
I suppose you could avoid contractions like "don't" but I'm unsure as
to whether gettext could handle everything in the emulparams scripts.
The right thing to do is feed the generated C files to gettext, as
this patch does. The patch just copies what is already done in bfd/
for generated files.
* Makefile.am (EMULATION_FILES, POTFILES): Delete.
(SRC_POTFILES, BLD_POTFILES): Define.
(po/POTFILES.in): Delete rule.
(po/SRC-POTFILES.in, po/BLD-POTFILES.in): New rules.
* configure.ac: Add AC_CONFIG_COMMANDS to create po/Makefile.
* po/Make-in (DISTFILES): Remove POTFILES.in, add SRC-POTFILES.in
and BLD-POTFILES.in.
(POTFILES): Delete.
(SRC-POTFILES, BLD-POTFILES): Define place marker.
(ld.pot): Build from SRC-POTFILES plus BLD-POTFILES.
(distclean, maintainer-clean): Tidy up new files.
(POTFILES, POTFILES.in): Delete rules.
(SRC-POTFILES, BLD-POTFILES, SRC-POTFILES.in, BLD-POTFILES.in):
New rules.
(Makefile): Depend on SRC-POTFILES and BLD-POTFILES.
* po/SRC-POTFILES.in: Rename from po/POTFILES.in.
* po/BLD-POTFILES.in: New file.
* Makefile.in: Regenerate.
* configure: Regenerate.
commit e95b887f85a192eb1597cd5d358673520029ad14
Author: Alan Modra <amodra@gmail.com>
Date: Sat Feb 24 10:33:33 2018 +1030
crx string overflow warning
gcc8 complains wrongly about the buffer not being large enough, at
least at -Og optimization.
* crx-dis.c (getregliststring): Allocate a large enough buffer
to silence false positive gcc8 warning.
commit 128a19de3d4387888e1c46df0c3c8964881b4274
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Feb 26 00:00:31 2018 +0000
Automatic date update in version.in
commit 38f14ab8fcfa4eab8bab417a5a165b7403ef9b0e
Author: Alan Modra <amodra@gmail.com>
Date: Wed Feb 21 13:09:46 2018 +1030
assorted target messages
bfd/
* elf-m10300.c, * elf-s390-common.c, * elf32-arc.c, * elf32-cris.c,
* elf32-dlx.c, * elf32-frv.c, * elf32-i370.c, * elf32-lm32.c,
* elf32-m32r.c, * elf32-m68hc1x.c, * elf32-m68k.c,
* elf32-microblaze.c, * elf32-msp430.c, * elf32-nds32.c,
* elf32-nios2.c, * elf32-or1k.c, * elf32-rl78.c, * elf32-rx.c,
* elf32-score.c, * elf32-score7.c, * elf32-sh-symbian.c,
* elf32-sh.c, * elf32-spu.c, * elf32-v850.c, * elf32-xtensa.c,
* elf64-alpha.c, * elf64-ia64-vms.c, * elf64-mmix.c,
* elf64-sh64.c, * elf64-sparc.c, * elfnn-ia64.c, * elfxx-tilegx.c,
* mmo.c, * osf-core.c, * srec.c, * vms-alpha.c: Standardize
error/warning messages.
ld/
* testsuite/ld-cris/pcrelcp-1.d,
* testsuite/ld-mmix/start-2.d: Update.
commit 6e05870c978aaa057b5ae0f525a2e9b803047ac8
Author: Alan Modra <amodra@gmail.com>
Date: Wed Feb 21 13:09:29 2018 +1030
BFD messages
bfd/
* archive.c, * bfd.c, * linker.c, * reloc.c, * stabs.c,
* syms.c: Standardize error/warning messages.
binutils/
* testsuite/binutils-all/mips/mips-reginfo-n32.d,
* testsuite/binutils-all/mips/mips-reginfo.d: Update.
gas/
* testsuite/gas/mips/reginfo-2.l: Update.
ld/
* testsuite/ld-arm/cmse-implib-errors.out,
* testsuite/ld-arm/cmse-new-earlier-later-implib.out,
* testsuite/ld-arm/cmse-new-implib-not-sg-in-implib.out,
* testsuite/ld-arm/cmse-new-wrong-implib.out,
* testsuite/ld-arm/cmse-veneers-no-gnu_sgstubs.out,
* testsuite/ld-arm/cmse-veneers-wrong-entryfct.out,
* testsuite/ld-cris/badgotr1.d,
* testsuite/ld-cris/tls-err-24.d,
* testsuite/ld-cris/tls-err-25.d,
* testsuite/ld-cris/tls-err-26.d,
* testsuite/ld-cris/tls-err-27.d,
* testsuite/ld-cris/tls-err-28.d,
* testsuite/ld-cris/tls-err-40.d,
* testsuite/ld-cris/tls-err-44.d,
* testsuite/ld-cris/tls-err-48.d,
* testsuite/ld-cris/tls-err-52.d,
* testsuite/ld-cris/tls-err-53.d,
* testsuite/ld-cris/tls-err-55.d,
* testsuite/ld-cris/tls-err-56.d,
* testsuite/ld-cris/tls-err-62.d,
* testsuite/ld-cris/tls-err-65.d,
* testsuite/ld-cris/tls-err-77.d,
* testsuite/ld-elf/empty-implib.out,
* testsuite/ld-elf/indirect.exp: Update.
commit 59d08d6ce8cb6c41691266e133304c961c270e85
Author: Alan Modra <amodra@gmail.com>
Date: Wed Feb 21 13:07:59 2018 +1030
AOUT/COFF/PE messages
Capitalization, full-stops and unnecessary trailing \n fixes.
* aout-adobe.c, * aout-cris.c, * i386linux.c, * m68klinux.c,
* sparclinux.c, * coff-alpha.c, * coff-arm.c, * coff-mcore.c,
* coffcode.h, * coffgen.c, * cofflink.c, * ecoff.c, * pe-mips.c,
* peXXigen.c, * peicode.h: Standardize error/warning messages.
commit 90b6238f06197c2abff953ab5920ae5b6d39f97f
Author: Alan Modra <amodra@gmail.com>
Date: Wed Feb 21 13:04:48 2018 +1030
ARM and AArch64 messages
More standarization of error/warning messages. The ARM backend has
some multi-line error messages, which don't fit particularly well with
the GNU coding standard insistence that error messages shouldn't be
capitalized or have a full-stop. I've replaced the line breaks with
semicolons.
So for instance the following
system/path/to/ld: myobject.o: invalid special symbol `foo'.
system/path/to/ld: It must be a global or weak function symbol.
becomes
system/path/to/ld: myobject.o: invalid special symbol `foo'; it must be a global or weak function symbol
bfd/
* elf32-arm.c, * elfnn-aarch64.c: Standardize error/warning messages.
ld/
* testsuite/ld-aarch64/reloc-overflow-bad.d,
* testsuite/ld-arm/attr-merge-9.out,
* testsuite/ld-arm/attr-merge-arch-2.d,
* testsuite/ld-arm/attr-merge-unknown-1.d,
* testsuite/ld-arm/attr-merge-unknown-2.d,
* testsuite/ld-arm/attr-merge-unknown-2r.d,
* testsuite/ld-arm/attr-merge-unknown-3.d,
* testsuite/ld-arm/cmse-implib-errors.out,
* testsuite/ld-arm/cmse-new-earlier-later-implib.out,
* testsuite/ld-arm/cmse-new-implib-no-output.out,
* testsuite/ld-arm/cmse-new-implib-not-sg-in-implib.out,
* testsuite/ld-arm/cmse-new-implib.out,
* testsuite/ld-arm/cmse-new-wrong-implib.out,
* testsuite/ld-arm/cmse-veneers-no-gnu_sgstubs.out,
* testsuite/ld-arm/cmse-veneers-wrong-entryfct.out,
* testsuite/ld-arm/group-relocs-alu-bad-2.d,
* testsuite/ld-arm/group-relocs-alu-bad.d,
* testsuite/ld-arm/group-relocs-ldc-bad-2.d,
* testsuite/ld-arm/group-relocs-ldc-bad.d,
* testsuite/ld-arm/group-relocs-ldr-bad-2.d,
* testsuite/ld-arm/group-relocs-ldr-bad.d,
* testsuite/ld-arm/group-relocs-ldrs-bad-2.d,
* testsuite/ld-arm/group-relocs-ldrs-bad.d,
* testsuite/ld-arm/stm32l4xx-cannot-fix-far-ldm.d: Update.
commit 2c1c96795601a19554fa3a86700a1b9e9d57c931
Author: Alan Modra <amodra@gmail.com>
Date: Tue Feb 20 21:02:16 2018 +1030
MIPS messages
More standardization of messages.
bfd/
* elfxx-mips.c: Standardize error/warning messages.
binutils/
* testsuite/binutils-all/mips/mips-reginfo-n32.d,
* testsuite/binutils-all/mips/mips-reginfo.d: Update.
gas/
* testsuite/gas/mips/reginfo-2.l: Update.
ld/
* testsuite/ld-mips-elf/attr-gnu-4-12.d,
* testsuite/ld-mips-elf/attr-gnu-4-13.d,
* testsuite/ld-mips-elf/attr-gnu-4-14.d,
* testsuite/ld-mips-elf/attr-gnu-4-16.d,
* testsuite/ld-mips-elf/attr-gnu-4-17.d,
* testsuite/ld-mips-elf/attr-gnu-4-18.d,
* testsuite/ld-mips-elf/attr-gnu-4-19.d,
* testsuite/ld-mips-elf/attr-gnu-4-21.d,
* testsuite/ld-mips-elf/attr-gnu-4-23.d,
* testsuite/ld-mips-elf/attr-gnu-4-24.d,
* testsuite/ld-mips-elf/attr-gnu-4-25.d,
* testsuite/ld-mips-elf/attr-gnu-4-26.d,
* testsuite/ld-mips-elf/attr-gnu-4-27.d,
* testsuite/ld-mips-elf/attr-gnu-4-28.d,
* testsuite/ld-mips-elf/attr-gnu-4-29.d,
* testsuite/ld-mips-elf/attr-gnu-4-31.d,
* testsuite/ld-mips-elf/attr-gnu-4-32.d,
* testsuite/ld-mips-elf/attr-gnu-4-34.d,
* testsuite/ld-mips-elf/attr-gnu-4-35.d,
* testsuite/ld-mips-elf/attr-gnu-4-36.d,
* testsuite/ld-mips-elf/attr-gnu-4-37.d,
* testsuite/ld-mips-elf/attr-gnu-4-38.d,
* testsuite/ld-mips-elf/attr-gnu-4-39.d,
* testsuite/ld-mips-elf/attr-gnu-4-41.d,
* testsuite/ld-mips-elf/attr-gnu-4-42.d,
* testsuite/ld-mips-elf/attr-gnu-4-43.d,
* testsuite/ld-mips-elf/attr-gnu-4-45.d,
* testsuite/ld-mips-elf/attr-gnu-4-46.d,
* testsuite/ld-mips-elf/attr-gnu-4-47.d,
* testsuite/ld-mips-elf/attr-gnu-4-48.d,
* testsuite/ld-mips-elf/attr-gnu-4-49.d,
* testsuite/ld-mips-elf/attr-gnu-4-52.d,
* testsuite/ld-mips-elf/attr-gnu-4-53.d,
* testsuite/ld-mips-elf/attr-gnu-4-54.d,
* testsuite/ld-mips-elf/attr-gnu-4-58.d,
* testsuite/ld-mips-elf/attr-gnu-4-59.d,
* testsuite/ld-mips-elf/attr-gnu-4-61.d,
* testsuite/ld-mips-elf/attr-gnu-4-62.d,
* testsuite/ld-mips-elf/attr-gnu-4-63.d,
* testsuite/ld-mips-elf/attr-gnu-4-64.d,
* testsuite/ld-mips-elf/attr-gnu-4-68.d,
* testsuite/ld-mips-elf/attr-gnu-4-69.d,
* testsuite/ld-mips-elf/attr-gnu-4-71.d,
* testsuite/ld-mips-elf/attr-gnu-4-72.d,
* testsuite/ld-mips-elf/attr-gnu-4-73.d,
* testsuite/ld-mips-elf/attr-gnu-4-74.d,
* testsuite/ld-mips-elf/attr-gnu-4-78.d,
* testsuite/ld-mips-elf/attr-gnu-4-79.d,
* testsuite/ld-mips-elf/attr-gnu-4-81.d,
* testsuite/ld-mips-elf/attr-gnu-4-89.d,
* testsuite/ld-mips-elf/attr-gnu-8-12.d,
* testsuite/ld-mips-elf/attr-gnu-8-21.d,
* testsuite/ld-mips-elf/bal-jalx-pic-micromips-n32.d,
* testsuite/ld-mips-elf/bal-jalx-pic-micromips-n64.d,
* testsuite/ld-mips-elf/bal-jalx-pic-micromips.d,
* testsuite/ld-mips-elf/bal-jalx-pic-n32.d,
* testsuite/ld-mips-elf/bal-jalx-pic-n64.d,
* testsuite/ld-mips-elf/bal-jalx-pic.d,
* testsuite/ld-mips-elf/mode-change-error-1.d,
* testsuite/ld-mips-elf/unaligned-branch-2.d,
* testsuite/ld-mips-elf/unaligned-branch-ignore-2.d,
* testsuite/ld-mips-elf/unaligned-branch-ignore-micromips.d,
* testsuite/ld-mips-elf/unaligned-branch-ignore-mips16.d,
* testsuite/ld-mips-elf/unaligned-branch-ignore-r6-1.d,
* testsuite/ld-mips-elf/unaligned-branch-micromips.d,
* testsuite/ld-mips-elf/unaligned-branch-mips16.d,
* testsuite/ld-mips-elf/unaligned-branch-r6-1.d,
* testsuite/ld-mips-elf/unaligned-branch-r6-2.d,
* testsuite/ld-mips-elf/unaligned-branch.d,
* testsuite/ld-mips-elf/unaligned-jalx-1.d,
* testsuite/ld-mips-elf/unaligned-jalx-3.d,
* testsuite/ld-mips-elf/unaligned-jalx-addend-1.d,
* testsuite/ld-mips-elf/unaligned-jalx-addend-3.d,
* testsuite/ld-mips-elf/unaligned-jalx-addend-micromips-1.d,
* testsuite/ld-mips-elf/unaligned-jalx-addend-mips16-1.d,
* testsuite/ld-mips-elf/unaligned-jalx-micromips-1.d,
* testsuite/ld-mips-elf/unaligned-jalx-mips16-1.d,
* testsuite/ld-mips-elf/unaligned-jump-micromips.d,
* testsuite/ld-mips-elf/unaligned-jump-mips16.d,
* testsuite/ld-mips-elf/unaligned-jump.d: Update.
commit 9793eb77929a4ab2c0192d9bf5d3f8d20dd17394
Author: Alan Modra <amodra@gmail.com>
Date: Tue Feb 20 19:32:12 2018 +1030
ELF linker messages
This fixes a number of cases where we capitalized error messages or
printed a full-stop, and corrects "Dwarf" to "DWARF".
bfd/
* dwarf2.c, * elf-attrs.c, * elf-eh-frame.c, * elf.c, * elf32-gen.c,
* elflink.c: Standardize error/warning messages. Replace use of
linker callback einfo with _bfd_error_handler when possible.
ld/
* testsuite/ld-elf/indirect.exp,
* testsuite/ld-elf/pr22649-2ab-mips.msg,
* testsuite/ld-elf/pr22649-2cd-mips.msg,
* testsuite/ld-elf/pr22649.msg,
* testsuite/ld-elf/tls_common.exp,
* testsuite/ld-elfcomm/elfcomm.exp,
* testsuite/ld-arm/attr-merge-incompatible.d,
* testsuite/ld-tic6x/attr-compatibility-gnu-other.d,
* testsuite/ld-tic6x/attr-compatibility-other-gnu.d,
* testsuite/ld-tic6x/attr-compatibility-other-other.d,
* testsuite/ld-i386/warn1.d: Update expected error/warning messages.
commit 0aa13feeeb78fc9323bee329c4d91c30f25de121
Author: Alan Modra <amodra@gmail.com>
Date: Wed Feb 21 21:47:07 2018 +1030
unrecognized/unsupported reloc message
It must get boring translating all the variants we have of
unrecognized/unsupported/invalid/unexpected reloc number. This patch
cuts down on the number of variations.
* aoutx.h, * coff-alpha.c, * coff-i860.c, * coff-m68k.c,
* coff-mcore.c, * coff-ppc.c, * coff-rs6000.c, * coff-sh.c,
* coff-tic4x.c, * coff-tic54x.c, * coff-tic80.c, * coff-w65.c,
* elf-bfd.h, * elf-m10300.c, * elf.c, * elf32-avr.c, * elf32-bfin.c,
* elf32-cr16.c, * elf32-cr16c.c, * elf32-cris.c, * elf32-crx.c,
* elf32-d10v.c, * elf32-d30v.c, * elf32-dlx.c, * elf32-epiphany.c,
* elf32-fr30.c, * elf32-frv.c, * elf32-i370.c, * elf32-i386.c,
* elf32-i960.c, * elf32-ip2k.c, * elf32-iq2000.c, * elf32-lm32.c,
* elf32-m32c.c, * elf32-m32r.c, * elf32-m68hc11.c, * elf32-m68hc12.c,
* elf32-m68k.c, * elf32-mcore.c, * elf32-mep.c, * elf32-metag.c,
* elf32-microblaze.c, * elf32-mips.c, * elf32-moxie.c,
* elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c, * elf32-or1k.c,
* elf32-pj.c, * elf32-ppc.c, * elf32-rl78.c, * elf32-rx.c,
* elf32-s390.c, * elf32-sh.c, * elf32-spu.c, * elf32-tic6x.c,
* elf32-v850.c, * elf32-vax.c, * elf32-visium.c, * elf32-wasm32.c,
* elf32-xgate.c, * elf32-xtensa.c, * elf64-alpha.c,
* elf64-ia64-vms.c, * elf64-mips.c, * elf64-mmix.c,
* elf64-ppc.c, * elf64-s390.c, * elf64-sparc.c, * elf64-x86-64.c,
* elfn32-mips.c, * elfnn-aarch64.c, * elfnn-ia64.c,
* elfnn-riscv.c, * elfxx-mips.c, * elfxx-riscv.c, * elfxx-riscv.h,
* elfxx-sparc.c, * elfxx-sparc.h, * reloc.c: Standardize
unrecognized/unsupported reloc message.
commit cf97bcb0c3f33460e9cfa57a2890df1c38a497d7
Author: Alan Modra <amodra@gmail.com>
Date: Tue Feb 20 19:29:09 2018 +1030
PPC error/warning messages
The GNU coding standard says error messages should be of the form
program:sourcefile:lineno: message
or
program: message
and
"The string message should not begin with a capital letter when it
follows a program name and/or file name, because that isnât the
beginning of a sentence. (The sentence conceptually starts at the
beginning of the line.) Also, it should not end with a period."
This patch does that for ppc, and removes some British spelling.
I've also switched some error output from using the linker callback
einfo to _bfd_error_handler, due to improved compilation time
argument checking now done for the latter function.
bfd/
* elf32-ppc.c: Standardize error/warning messages. Use
_bfd_error_handler rather than einfo when einfo features not used.
* elf64-ppc.c: Likewise.
ld/
* testsuite/ld-powerpc/attr-gnu-12-21.d: Update.
* testsuite/ld-powerpc/attr-gnu-4-12.d: Update.
* testsuite/ld-powerpc/attr-gnu-4-13.d: Update.
* testsuite/ld-powerpc/attr-gnu-4-21.d: Update.
* testsuite/ld-powerpc/attr-gnu-4-23.d: Update.
* testsuite/ld-powerpc/attr-gnu-4-31.d: Update.
* testsuite/ld-powerpc/attr-gnu-4-32.d: Update.
* testsuite/ld-powerpc/attr-gnu-8-23.d: Update.
commit 6f6d0c269ecdc11aca9166940534ec61b6dbc39d
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Sun Feb 25 15:11:56 2018 -0500
Fix double space expected in cp_test_ptype_class
I noticed some failures of some buildbot slaves, e.g.:
FAIL: gdb.cp/nested-types.exp: ptype S10 (limit = 1) // wrong nested type enum definition: enum S10::E10 {S10::A10, S10::B10, S10::C10};
The issue is that they have an older gcc (not c++11 by default?) that
doesn't emit the enum underlying type information. When the
enum type is printed by ptype, it looks like this:
enum S10::E10 {S10::A10, S10::B10, S10::C10};
instead of this on older gccs:
enum S10::E10 : unsigned int {S10::A10, S10::B10, S10::C10};
The regex that matches this is in cp_test_ptype_class, and is
enum $nested_name (: (unsigned )?int)? \{
If the "unsigned int" portion is not present, then it requires the
string to have two spaces between the enum name and opening bracket.
The fix is simply to move the trailing space inside the ? group.
gdb/testsuite/ChangeLog:
* lib/cp-support.exp (cp_test_ptype_class): Move space inside
parentheses.
commit 4de41a68ed98818db42c2238d66764e5757102ed
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Feb 25 00:00:59 2018 +0000
Automatic date update in version.in
commit 9b292f68805700c7ae46fc149231fdb79554bd17
Author: Tom Tromey <tom@tromey.com>
Date: Wed Feb 21 16:39:18 2018 -0700
Remove most cleanups from linux-thread-db.c
This removes most (but not all) cleanups from linux-thread-db.c.
std::string and std::vector are used in place of manual memory
management.
The remaining cleanup in linux-thread-db.c uses
make_cleanup_free_char_ptr_vec, which requires a somewhat bigger
change.
Regression tested by the buildbot.
ChangeLog
2018-02-24 Tom Tromey <tom@tromey.com>
* linux-thread-db.c (try_thread_db_load_from_pdir_1)
(try_thread_db_load_from_dir, thread_db_load_search): Use
std::string.
(info_auto_load_libthread_db_compare): Return bool. Change
argument types.
(info_auto_load_libthread_db): Use std::vector, std::string.
Remove cleanups.
commit 281d762b1a56317171e462666b98d50bfa31a08a
Author: Tom Tromey <tom@tromey.com>
Date: Wed Feb 21 16:53:56 2018 -0700
Remove cleanups from check_fast_tracepoint_sals
This changes the gdbarch fast_tracepoint_valid_at method to use a
std::string as its out parameter, and then updates all the uses. This
allows removing a cleanup from breakpoint.c.
Regression tested by the buildbot.
ChangeLog
2018-02-24 Tom Tromey <tom@tromey.com>
* i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
std::string.
* gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
std::string*.
* gdbarch.c: Rebuild.
* gdbarch.h: Rebuild.
* breakpoint.c (check_fast_tracepoint_sals): Use std::string.
* arch-utils.h (default_fast_tracepoint_valid_at): Update.
* arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
std::string*.
commit d4333bab0a097f4bfa36d2e49f4dfb12c73dce24
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Feb 24 00:00:28 2018 +0000
Automatic date update in version.in
commit 11b031457e89d5739922ddd0bc65c9d781b6db35
Author: Maciej W. Rozycki <macro@mips.com>
Date: Fri Feb 23 20:14:41 2018 +0000
GDB/testsuite: Fix a typo in $actual_line
Fix a commit 883fd55ab104 ("Record nested types") issue:
ERROR: tcl error sourcing .../gdb/testsuite/gdb.cp/nested-types.exp.
ERROR: can't read "actual_linejj": no such variable
while executing
"append txt " definition: $actual_linejj""
(procedure "cp_test_ptype_class" line 324)
invoked from within
"cp_test_ptype_class $name "ptype $name (limit = $limit)" $key $name $children" (procedure "test_nested_limit" line 28)
invoked from within
"test_nested_limit -1 false"
(file ".../gdb/testsuite/gdb.cp/nested-types.exp" line 310)
invoked from within
"source .../gdb/testsuite/gdb.cp/nested-types.exp"
("uplevel" body line 1)
invoked from within
"uplevel #0 source .../gdb/testsuite/gdb.cp/nested-types.exp"
invoked from within
"catch "uplevel #0 source $test_file_name""
testcase .../gdb/testsuite/gdb.cp/nested-types.exp completed in 9 seconds
caused by $actual_line having been accidentally referred to as
$actual_linejj in one place.
gdb/testsuite/
* lib/cp-support.exp (cp_test_ptype_class): Fix a typo in the
name of a variable: $actual_linejj -> $actual_line.
commit 9d8780f0d0f53d9d326a9d64b7919fe1a628b767
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Fri Feb 23 13:03:33 2018 -0500
dwarf: Make sect_offset 64-bits
Does anybody have an opinion about this? It would be nice to unbreak
the "default" build with clang (i.e. without passing special -Wno-error=
flags).
Here's a version rebased on today's master.
From 47d28075117fa2ddb93584ec50881e33777a85e5 Mon Sep 17 00:00:00 2001
From: Simon Marchi <simon.marchi@ericsson.com>
Date: Sat, 30 Dec 2017 22:48:18 -0500
Subject: [PATCH] dwarf: Make sect_offset 64-bits
Compiling with Clang 6 shows these errors:
/home/emaisin/src/binutils-gdb/gdb/dwarf2read.c:26610:43: error: result of comparison of constant 4294967296 with expression of type 'typename std::underlying_type<sect_offset>::type' (a
ka 'unsigned int') is always false [-Werror,-Wtautological-constant-out-of-range-compare]
if (to_underlying (per_cu.sect_off) >= (static_cast<uint64_t> (1) << 32))
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/emaisin/src/binutils-gdb/gdb/dwarf2read.c:26618:43: error: result of comparison of constant 4294967296 with expression of type 'typename std::underlying_type<sect_offset>::type' (a
ka 'unsigned int') is always false [-Werror,-Wtautological-constant-out-of-range-compare]
if (to_underlying (per_cu.sect_off) >= (static_cast<uint64_t> (1) << 32))
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The code in question checks if there is any offset exceeding 32 bits,
and therefore if we need to use the 64-bit DWARF format when writing the
.debug_names section. The type we use currently to represent section
offsets is an unsigned int (32-bits), which means a value of this type
will never exceed 32 bits, hence the errors above.
There are many signs that we want to support 64-bits DWARF (although I
haven't tested), such as:
- We correctly read initial length fields (read_initial_length)
- We take that into account when reading offsets (read_offset_1)
- The check_dwarf64_offsets function
However, I don't see how it can work if sect_offset is a 32-bits type.
Every time we record a section offset, we risk truncating the value.
And if a file uses the 64-bit DWARF format, it's most likely because
there are such offset values that overflow 32 bits.
Because of this, I think the way forward is to change sect_offset to be
a uint64_t. It will be able to represent any offset, regardless of the
bitness of the DWARF info.
This patch was regtested on the buildbot.
gdb/ChangeLog:
* gdbtypes.h (sect_offset): Change type to uint64_t.
(sect_offset_str): New function.
* dwarf2read.c (create_addrmap_from_aranges): Use
sect_offset_str.
(error_check_comp_unit_head): Likewise.
(create_debug_type_hash_table): Likewise.
(read_cutu_die_from_dwo): Likewise.
(init_cutu_and_read_dies): Likewise.
(init_cutu_and_read_dies_no_follow): Likewise.
(process_psymtab_comp_unit_reader): Likewise.
(partial_die_parent_scope): Likewise.
(peek_die_abbrev): Likewise.
(process_queue): Likewise.
(dwarf2_physname): Likewise.
(read_namespace_alias): Likewise.
(read_import_statement): Likewise.
(create_dwo_cu_reader): Likewise.
(create_cus_hash_table): Likewise.
(lookup_dwo_cutu): Likewise.
(inherit_abstract_dies): Likewise.
(read_func_scope): Likewise.
(read_call_site_scope): Likewise.
(dwarf2_add_member_fn): Likewise.
(read_common_block): Likewise.
(read_module_type): Likewise.
(read_typedef): Likewise.
(read_subrange_type): Likewise.
(load_partial_dies): Likewise.
(read_partial_die): Likewise.
(find_partial_die): Likewise.
(read_str_index): Likewise.
(dwarf2_string_attr): Likewise.
(build_error_marker_type): Likewise.
(lookup_die_type): Likewise.
(dump_die_shallow): Likewise.
(follow_die_ref): Likewise.
(dwarf2_fetch_die_loc_sect_off): Likewise.
(dwarf2_fetch_constant_bytes): Likewise.
(follow_die_sig): Likewise.
(get_signatured_type): Likewise.
(get_DW_AT_signature_type): Likewise.
(dwarf2_find_containing_comp_unit): Likewise.
(set_die_type): Likewise.
commit 01f7e10cf2dcf403462b2feed06c43135651556d
Author: Alan Modra <amodra@gmail.com>
Date: Fri Feb 23 21:22:43 2018 +1030
PR22881, null pointer dereference in assign_file_positions_for_non_load_sections
PR 22881
* elf.c (assign_file_positions_for_non_load_sections): Remove RELRO
segment if no matching LOAD segment.
commit 340d33e565ee9749b06d31e55cb0222fa98bd546
Author: Nick Clifton <nickc@redhat.com>
Date: Fri Feb 23 10:43:53 2018 +0000
Document the assembler's .dc, .dcb and .ds directives.
* doc/as.texinfo (Pseudo Ops): Add nodes for .dc, .dcb and .ds.
commit e859f6558cc027261fb733e4e86938e1d31c13ca
Author: Kuan-Lin Chen <kuanlinchentw@gmail.com>
Date: Fri Feb 23 14:25:25 2018 +0800
nds32: Support target directive .ict_model.
commit 9c70c5223bbdfe1feac122d4b7606a46de5c22a5
Author: Kuan-Lin Chen <kuanlinchentw@gmail.com>
Date: Fri Feb 23 14:21:31 2018 +0800
Fix up one ChangeLog date.
commit 5bce538d6a6ec216bfbfa7484f356b396dd4da9e
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Feb 23 00:00:35 2018 +0000
Automatic date update in version.in
commit 0b65c07b97c43e8891c2e14061270878a85222c8
Author: Sriraman Tallam <tmsriram@google.com>
Date: Thu Feb 22 13:56:46 2018 -0800
New plugin interface to get list of symbols wrapped with --wrap option.
2018-02-22 Sriraman Tallam <tmsriram@google.com>
* plugin.cc (get_wrap_symbols): New plugin interface.
(load): Add get_wrap_symbols to transfer vector.
* plugin-api.h (ld_plugin_get_wrap_symbols): New plugin interface.
* testsuite/plugin_test.c (onload): Call and check get_wrap_symbols
interface.
* testsuite/plugin_test_wrap_symbols.sh: New test script.
* testsuite/plugin_test_wrap_symbols_1.cc: New file.
* testsuite/plugin_test_wrap_symbols_2.cc: New file.
* testsuite/Makefile.am (plugin_test_wrap_symbols): New test.
* testsuite/Makefile.in: Regenerate.
commit 0bccfb2994d307601ceba5c3a6223b7ca7cf5338
Author: Jim Wilson <jimw@sifive.com>
Date: Thu Feb 22 11:28:51 2018 -0800
RISC-V: Make disassebler work for --enable-targets=all config.
opcodes/
* disassemble.c (ARCH_riscv): Define if ARCH_all.
commit 7bdf778b10b1ab85553a31c104097073214f6430
Author: Andre Simoes Dias Vieira <andre.simoesdiasvieira@arm.com>
Date: Wed Feb 21 15:11:50 2018 +0000
Diagnose when trying to assemble conditional FP16 vmovx and vins
This patch makes GAS emit a warning when trying to assemble the Armv8.2
FP16 instructions VMOVX and VINS with condition codes. The Armv8-A
Reference Manual specifies these instructions without conditional codes
and says that if they are found in an IT block that they are CONSTRAINED
UNPREDICABLE.
gas/ChangeLog:
2018-02-22 Andre Vieira <andre.simoesdiasvieira@arm.com>
* config/tc-arm.c (do_neon_movhf): If conditional error out when in arm
mode and emit warning in thumb mode.
* testsuite/gas/arm/armv8-2-fp16-scalar-bad.s: Add new tests.
* testsuite/gas/arm/armv8-2-fp16-scalar-bad.l: Idem.
commit 6b6b680700699c15e22b6c36975729035676eef1
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Feb 22 06:18:27 2018 -0800
x86: Add {rex} pseudo prefix
Add {rex} pseudo prefix to generate a REX byte for integer and legacy
vector instructions if possible. Note that this differs from the rex
prefix which generates REX prefix unconditionally.
gas/
* config/tc-i386.c (_i386_insn): Add rex_encoding.
(md_assemble): When i.rex_encoding is true, generate a REX byte
if possible.
(parse_insn): Set i.rex_encoding for {rex}.
* doc/c-i386.texi: Document {rex}.
* testsuite/gas/i386/x86-64-pseudos.s: Add {rex} tests.
* testsuite/gas/i386/x86-64-pseudos.d: Updated.
opcodes/
* i386-opc.tbl: Add {rex},
* i386-tbl.h: Regenerated.
commit 39334a61e63321352304cbae77b37fcba4fed662
Author: A. Wilcox <awilfox@adelielinux.org>
Date: Thu Feb 22 12:49:49 2018 +0000
Fix memory access violation when attempting to shorten a suffixed micromips instruction during lookup.
PR 22014
* config/tc-mips.c (mips_lookup_insn): Use memmove to strip the
instruction size suffix.
commit f4a69c9aea8b2f86abfdc35757c7e8c53e714f64
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Feb 22 00:00:27 2018 +0000
Automatic date update in version.in
commit 54a27fe598e6d44eb59bc94882f7f56585bfd5cd
Author: John Baldwin <jhb@FreeBSD.org>
Date: Wed Feb 21 11:11:17 2018 -0800
Fix a typo.
gdb/testsuite/ChangeLog:
* gdb.arch/amd64-i386-address.exp: Fix a typo.
commit 8ec57239e91f22f427f8065eb742e6c8bfa223f1
Author: John Baldwin <jhb@FreeBSD.org>
Date: Wed Feb 21 11:03:41 2018 -0800
Add "common-defs.h" include to files in arch/ subdir not yet including it.
This fixes a build breakage on FreeBSD hosts.
gdb/ChangeLog:
* arch/aarch64.c: Include "common-defs.h".
* arch/amd64.c: Likewise.
* arch/i386.c: Likewise.
commit 3eac2b654808f9e233885f910045eea9d2ca0aa0
Author: Tom Tromey <tom@tromey.com>
Date: Thu Feb 15 22:41:03 2018 -0700
Remove a cleanup from parse_expression_for_completion
This removes a cleanup from parse_expression_for_completion, by
changing various expression-completion functions to use
gdb::unique_xmalloc_ptry rather than explicit malloc+free.
Regression tested by the buildbot.
gdb/ChangeLog
2018-02-21 Tom Tromey <tom@tromey.com>
* value.h: (extract_field_op): Update.
* eval.c (extract_field_op): Return a const char *.
* expression.h (parse_expression_for_completion): Update.
* completer.c (complete_expression): Update.
(add_struct_fields): Make fieldname const.
* parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
(mark_completion_tag, parse_exp_in_context_1): Update.
(parse_expression_for_completion): Change "name" to
unique_xmalloc_ptr*.
commit 6ccb583f751e020a6db768d517c2dd3ba6d93cc4
Author: Tom Tromey <tom@tromey.com>
Date: Fri Feb 16 16:11:29 2018 -0700
Remove a cleanup from call_function_by_hand_dummy
This removes a cleanup from call_function_by_hand_dummy, replacing
manual allocation with std::vector.
Regression tested by the buildbot.
gdb/ChangeLog
2018-02-21 Tom Tromey <tom@tromey.com>
* infcall.c (call_function_by_hand_dummy): Use std::vector.
commit c113ed0ca238bbcbc161f059ffe9b064e3ece333
Author: Yao Qi <yao.qi@linaro.org>
Date: Wed Feb 21 11:20:03 2018 +0000
Pass readable_regcache to gdbarch method read_pc
We can pass readable_regcache to gdbarch method read_pc where it is
allowed to do read from regcache.
gdb:
2018-02-21 Yao Qi <yao.qi@linaro.org>
* avr-tdep.c (avr_read_pc): Change parameter type to
readable_regcache.
* gdbarch.sh (read_pc): Likewise.
* gdbarch.c: Re-generated.
* gdbarch.h: Re-generated.
* hppa-tdep.c (hppa_read_pc): Change parameter type to
readable_regcache.
* ia64-tdep.c (ia64_read_pc): Likewise.
* mips-tdep.c (mips_read_pc): Likewise.
* spu-tdep.c (spu_read_pc): Likewise.
commit 4c74fe6b84d82066eb3f004bacd4a376cd82d140
Author: Yao Qi <yao.qi@linaro.org>
Date: Wed Feb 21 11:20:03 2018 +0000
Move register_dump to regcache-dump.c
gdb:
2018-02-21 Yao Qi <yao.qi@linaro.org>
* Makefile.in (COMMON_SFILES): Add regcache-dump.c
* regcache-dump.c: New file.
* regcache.c: Move register_dump to regcache-dump.c.
(maintenance_print_registers): Likewise.
(maintenance_print_raw_registers): Likewise.
(maintenance_print_cooked_registers): Likewise.
(maintenance_print_register_groups): Likewise.
(maintenance_print_remote_registers): Likewise.
(_initialize_regcache): Likewise.
* regcache.h (register_dump): Moved from regcache.c.
commit 796bb0264184e8d9343f041c2f11cb898c0d18ac
Author: Yao Qi <yao.qi@linaro.org>
Date: Wed Feb 21 11:20:03 2018 +0000
Remove regcache::m_readonly_p
Now, m_readonly_p is always false, so we can remove it, and regcache no
longer includes pseudo registers. Some regcache methods are lift up to
its parent class, like reg_buffer or detached_regcache.
gdb:
2018-02-21 Yao Qi <yao.qi@linaro.org>
* regcache.c (regcache::regcache): Update.
(regcache::invalidate): Move it to detached_regcache::invalidate.
(get_thread_arch_aspace_regcache): Update.
(regcache::raw_update): Update.
(regcache::cooked_read): Remove some code.
(regcache::cooked_read_value): Likewise.
(regcache::raw_write): Remove assert on m_readonly_p.
(regcache::raw_supply_integer): Move it to
detached_regcache::raw_supply_integer.
(regcache::raw_supply_zeroed): Likewise.
* regcache.h (detached_regcache) <raw_supply_integer>: New
declaration.
<raw_supply_zeroed, invalidate>: Likewise.
(regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
<invalidate>: Likewise.
<m_readonly_p>: Removed.
commit 215c69dc9a7d8f868198b5523abcf41458fb6e4a
Author: Yao Qi <yao.qi@linaro.org>
Date: Wed Feb 21 11:20:03 2018 +0000
No longer create readonly regcache
Nowadays, we create a readonly regcache in get_return_value, and pass it
to gdbarch_return_value to get the return value. In theory, we can pass a
readable_regcache instance and get the return value, because we don't need
to modify the regcache. Unfortunately, gdbarch_return_value is designed
to multiplex regcache, according to READBUF and WRITEBUF.
# If READBUF is not NULL, extract the return value and save it in this
# buffer.
#
# If WRITEBUF is not NULL, it contains a return value which will be
# stored into the appropriate register.
In fact, gdbarch_return_value should be split to three functions, 1) only
return return_value_convention, 2) pass regcache_readonly and readbuf, 3)
pass regcache and writebuf. These changes are out of the scope of this
patch series, so I pass regcache to gdbarch_return_value even for read,
and trust each gdbarch backend doesn't modify regcache.
gdb:
2018-02-21 Yao Qi <yao.qi@linaro.org>
* infcmd.c (get_return_value): Let stop_regs point to
get_current_regcache.
* regcache.c (regcache::regcache): Remove.
(register_dump_reg_buffer): New class.
(regcache_print): Adjust.
* regcache.h (regcache): Remove constructors.
commit f3384e664de76c4bb9f8fd9920afcec86557f1f0
Author: Yao Qi <yao.qi@linaro.org>
Date: Wed Feb 21 11:20:03 2018 +0000
Replace regcache::dump with class register_dump
Nowadays, we need to dump registers contents from "readwrite" regcache and
"readonly" regcache,
if (target_has_registers)
get_current_regcache ()->dump (out, what_to_dump);
else
{
/* For the benefit of "maint print registers" & co when
debugging an executable, allow dumping a regcache even when
there is no thread selected / no registers. */
regcache dummy_regs (target_gdbarch ());
dummy_regs.dump (out, what_to_dump);
}
since we'll have two different types/classes for "readwrite" regcache and
"readonly" regcache, we have to move dump method to their parent class,
reg_buffer. However, the functionality of "dump" looks unnecessary to
reg_buffer (because some dump modes like regcache_dump_none,
regcache_dump_remote and regcache_dump_groups don't need reg_buffer at
all, they need gdbarch to do the dump), so I decide to move "dump" into a
separate classes, and each sub-class is about each mode of dump.
gdb:
2018-02-21 Yao Qi <yao.qi@linaro.org>
* regcache.c (class register_dump): New class.
(register_dump_regcache, register_dump_none): New class.
(register_dump_remote, register_dump_groups): New class.
(regcache_print): Update.
* regcache.h (regcache_dump_what): Move it to regcache.c.
(regcache) <dump>: Remove.
commit c8ec2f334c3751c28d5f952d07dea9c0558ca0a0
Author: Yao Qi <yao.qi@linaro.org>
Date: Wed Feb 21 11:20:03 2018 +0000
Class detached_regcache
jit.c uses the regcache in a slightly different way, the regcache dosen't
write through to target, but it has read and write methods. If I apply
regcache in record-full.c, it has the similar use pattern. This patch
adds a new class detached_regcache, a register buffer, but can be
read and written.
Since jit.c doesn't want to write registers through to target, it uses
regcache as a readonly regcache (because only readonly regcache
disconnects from the target), but it adds a hole in regcache
(raw_set_cached_value) in order to modify a readonly regcache. This patch
fixes this hole completely.
regcache inherits detached_regcache, and detached_regcache inherits
readable_regcache. The ideal design is that both detached_regcache and
readable_regcache inherit reg_buffer, and regcache inherit
detached_regcache and regcache_read (virtual inheritance). I concern
about the performance overhead of virtual inheritance, so I don't do it in
the patch.
gdb:
2018-02-21 Yao Qi <yao.qi@linaro.org>
* jit.c (struct jit_unwind_private) <regcache>: Change its type to
reg_buffer_rw *.
(jit_unwind_reg_set_impl): Call raw_supply.
(jit_frame_sniffer): Use reg_buffer_rw.
* record-full.c (record_full_core_regbuf): Change its type.
(record_full_core_open_1): Use reg_buffer_rw.
(record_full_close): Likewise.
(record_full_core_fetch_registers): Use regcache->raw_supply.
(record_full_core_store_registers): Likewise.
* regcache.c (regcache::get_register_status): Move it to
reg_buffer.
(regcache_raw_set_cached_value): Remove.
(regcache::raw_set_cached_value): Remove.
(regcache::raw_write): Call raw_supply.
(regcache::raw_supply): Move it to reg_buffer_rw.
* regcache.h (regcache_raw_set_cached_value): Remove.
(reg_buffer_rw): New class.
commit daf6667d1f94c7e74df4076daf021cd28a2797b6
Author: Yao Qi <yao.qi@linaro.org>
Date: Wed Feb 21 11:20:03 2018 +0000
Class readonly_detached_regcache
This patch adds a new class (type) for readonly regcache, which is
created via regcache::save. readonly_detached_regcache inherits
readable_regcache.
gdb:
2018-02-21 Yao Qi <yao.qi@linaro.org>
* dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
readonly_detached_regcache.
(dummy_frame_prev_register): Use regcache->cooked_read.
* frame.c (frame_save_as_regcache): Change return type.
(frame_pop): Update.
* frame.h (frame_save_as_regcache): Update declaration.
* inferior.h (get_infcall_suspend_state_regcache): Update
declaration.
* infrun.c (infcall_suspend_state) <registers>: use
readonly_detached_regcache.
(save_infcall_suspend_state): Don't use regcache_dup.
(get_infcall_suspend_state_regcache): Change return type.
* linux-fork.c (struct fork_info) <savedregs>: Change to
readonly_detached_regcache.
<pc>: New field.
(fork_save_infrun_state): Don't use regcache_dup.
(info_checkpoints_command): Adjust.
* mi/mi-main.c (register_changed_p): Update declaration.
(mi_cmd_data_list_changed_registers): Use
readonly_detached_regcache.
(register_changed_p): Change parameter type to
readonly_detached_regcache.
* ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
readonly_detached_regcache.
(ppu2spu_sniffer): Construct a new readonly_detached_regcache.
* regcache.c (readonly_detached_regcache::readonly_detached_regcache):
New.
(regcache::save): Move it to reg_buffer.
(regcache::restore): Change parameter type.
(regcache_dup): Remove.
* regcache.h (reg_buffer) <save>: New method.
(readonly_detached_regcache): New class.
* spu-tdep.c (spu2ppu_cache) <regcache>: Use
readonly_detached_regcache.
(spu2ppu_sniffer): Construct a new readonly_detached_regcache.
commit fc5b87361580d915e28ae5f3cc4794b75b671b5a
Author: Yao Qi <yao.qi@linaro.org>
Date: Wed Feb 21 11:20:03 2018 +0000
Remove regcache_save and regcache_cpy
... instead we start to use regcache methods save and restore. It is
quite straightforward to replace regcache_save with regcache->save.
regcache_cpy has some asserts, some of them not necessary, like
gdb_assert (src != dst);
because we already assert !m_readonly_p and src->m_readonly_p, so
src isn't dst. Some of the asserts are moved to ::restore.
gdb:
2018-02-21 Yao Qi <yao.qi@linaro.org>
* frame.c (frame_save_as_regcache): Use regcache method save.
(frame_pop): Use regcache method restore.
* infrun.c (restore_infcall_suspend_state): Likewise.
* linux-fork.c (fork_load_infrun_state): Likewise.
* ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
save.
* regcache.c (regcache_save): Remove.
(regcache::restore): More asserts.
(regcache_cpy): Remove.
* regcache.h (regcache_save): Remove the declaration.
(regcache::restore): Move from private to public.
Remove the friend declaration of regcache_cpy.
(regcache_cpy): Remove declaration.
commit 849d0ba802323fe05e3039ed5b22957db2c85a67
Author: Yao Qi <yao.qi@linaro.org>
Date: Wed Feb 21 11:20:03 2018 +0000
class readable_regcache and pass readable_regcache to gdbarch pseudo_register_read and pseudo_register_read_value
pseudo registers are either from raw registers or memory, so
gdbarch methods pseudo_register_read and pseudo_register_read_value
should have regcache object which only have read methods. In other
words, we should disallow writing to regcache in these two gdbarch
methods. In order to apply this restriction, this patch adds a new
class readable_regcache, derived from reg_buffer, and it only has
raw_read and cooked_read methods. regcache is derived from
readable_regcache. This patch also passes readable_regcache instead of
regcache to gdbarch methods pseudo_register_read and
pseudo_register_read_value.
This patch moves raw_read* and cooked_read* methods to readable_regcache,
which is straightforward. One thing not straightforward is that I split
regcache::xfer_part to readable_regcache::read_part and regcache::write_part,
because readable_regcache can only have methods to read.
readable_regcache is an abstract base class, and it has a pure virtual
function raw_update, because I don't want readable_regcache know where
these raw registers are from. They can be from either the target
(readwrite regcache) or the regcache itself (readonly regcache).
gdb:
2018-02-21 Yao Qi <yao.qi@linaro.org>
* aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
parameter type to 'readable_regcache *'.
* amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
* arm-tdep.c (arm_neon_quad_read): Likewise.
(arm_pseudo_read): Likewise.
* avr-tdep.c (avr_pseudo_register_read): Likewise.
* bfin-tdep.c (bfin_pseudo_register_read): Likewise.
* frv-tdep.c (frv_pseudo_register_read): Likewise.
* gdbarch.c: Re-generated.
* gdbarch.h: Re-generated.
* gdbarch.sh (pseudo_register_read): Change parameter type to
'readable_regcache *'.
(pseudo_register_read_value): Likewise.
* h8300-tdep.c (pseudo_from_raw_register): Likewise.
(h8300_pseudo_register_read): Likewise.
* hppa-tdep.c (hppa_pseudo_register_read): Likewise.
* i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
(i386_pseudo_register_read_into_value): Likewise.
(i386_pseudo_register_read_value): Likewise.
* i386-tdep.h (i386_pseudo_register_read_into_value): Update
declaration.
* ia64-tdep.c (ia64_pseudo_register_read): Likewise.
* m32c-tdep.c (m32c_raw_read): Likewise.
(m32c_read_flg): Likewise.
(m32c_banked_register): Likewise.
(m32c_banked_read): Likewise.
(m32c_sb_read): Likewise.
(m32c_part_read): Likewise.
(m32c_cat_read): Likewise.
(m32c_r3r2r1r0_read): Likewise.
(m32c_pseudo_register_read): Likewise.
* m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
* mep-tdep.c (mep_pseudo_cr32_read): Likewise.
(mep_pseudo_cr64_read): Likewise.
(mep_pseudo_register_read): Likewise.
* mips-tdep.c (mips_pseudo_register_read): Likewise.
* msp430-tdep.c (msp430_pseudo_register_read): Likewise.
* nds32-tdep.c (nds32_pseudo_register_read): Likewise.
* regcache.c (regcache::raw_read): Move it to readable_regcache.
(regcache::cooked_read): Likewise.
(regcache::cooked_read_value): Likewise.
(regcache_cooked_read_signed):
(regcache::cooked_read): Likewise.
* regcache.h (readable_regcache): New class.
(regcache): Inherit readable_regcache. Move some methods to
readable_regcache.
* rl78-tdep.c (rl78_pseudo_register_read): Change
parameter type to 'readable_regcache *'.
* rs6000-tdep.c (do_regcache_raw_read): Remove.
(e500_pseudo_register_read): Change parameter type to
'readable_regcache *'.
(dfp_pseudo_register_read): Likewise.
(vsx_pseudo_register_read): Likewise.
(efpr_pseudo_register_read): Likewise.
* s390-tdep.c (s390_pseudo_register_read): Likewise.
* sh-tdep.c (sh_pseudo_register_read): Likewise.
* sh64-tdep.c (pseudo_register_read_portions): Likewise.
(sh64_pseudo_register_read): Likewise.
* sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
* sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
* spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
(spu_pseudo_register_read): Likewise.
* xtensa-tdep.c (xtensa_register_read_masked): Likewise.
(xtensa_pseudo_register_read): Likewise.
commit 31716595b5bda8524fc841378468fd1c47510dd3
Author: Yao Qi <yao.qi@linaro.org>
Date: Wed Feb 21 11:20:02 2018 +0000
Class reg_buffer
This patch adds a new class reg_buffer, and regcache inherits it. Class
reg_buffer is a very simple class, which has the buffer for register
contents and status only. It doesn't have any methods to set contents and
status, and it is expected that its children classes can inherit it and
add different access methods.
Another reason I keep class reg_buffer so simple is that I think
reg_buffer can be even reused in other classes which need to record the
registers contents and status, like frame cache for example.
gdb:
2018-02-21 Yao Qi <yao.qi@linaro.org>
* regcache.c (regcache::regcache): Call reg_buffer ctor.
(regcache::arch): Move it to reg_buffer::arch.
(regcache::register_buffer): Likewise.
(regcache::assert_regnum): Likewise.
(regcache::num_raw_registers): Likewise.
* regcache.h (reg_buffer): New class.
(regcache): Inherit reg_buffer.
commit bbad996200720297c10313ae45906be80cf5f260
Author: Alan Modra <amodra@gmail.com>
Date: Wed Feb 21 17:36:29 2018 +1030
ia64 testsuite changes for --gc-sections
* testsuite/ld-elf/group8b.d: Run test on ia64. Use xfail rather
than notarget.
* testsuite/ld-elf/pr12851.d: Likewise.
* testsuite/ld-elf/pr12975.d: Likewise.
* testsuite/ld-elf/pr13177.d: Likewise.
* testsuite/ld-elf/pr13195.d: Likewise.
* testsuite/ld-elf/pr17615.d: Likewise.
* testsuite/ld-elf/pr21562a.d: Likewise.
* testsuite/ld-elf/pr21562b.d: Likewise.
* testsuite/ld-elf/pr21562c.d: Likewise.
* testsuite/ld-elf/pr21562d.d: Likewise.
* testsuite/ld-elf/pr21562i.d: Likewise.
* testsuite/ld-elf/pr21562j.d: Likewise.
* testsuite/ld-elf/pr21562k.d: Likewise.
* testsuite/ld-elf/pr21562l.d: Likewise.
* testsuite/ld-elf/pr21562m.d: Likewise.
* testsuite/ld-elf/pr21562n.d: Likewise.
* testsuite/ld-elf/group9a.d: Run test on ia64 and alpha. Use xfail
rather than notarget.
* testsuite/ld-elf/group9b.d: Likewise.
* testsuite/ld-elf/pr22677.d: Likewise.
commit 50a98a5b430ca2cc6bca434ad908a74411fad537
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Feb 21 00:00:29 2018 +0000
Automatic date update in version.in
commit 1f1e0a5d0eb8474321a1a6431b4171f67a438231
Author: Maciej W. Rozycki <macro@mips.com>
Date: Tue Feb 20 20:51:37 2018 +0000
MIPS16/GAS/testsuite: Add cross-section R_MIPS16_PC16_S1 relocation tests
Add a pair of MIPS16 branch tests to verify correct R_MIPS16_PC16_S1
relocation generation for cross-section references in a single source.
This complements commit c9775dde3277 ("MIPS16: Add R_MIPS16_PC16_S1
branch relocation support").
gas/
* testsuite/gas/mips/mips16-branch-reloc-4.d: New test.
* testsuite/gas/mips/mips16-branch-reloc-5.d: New test.
* testsuite/gas/mips/mips16-branch-reloc-4.s: New test source.
* testsuite/gas/mips/mips16-branch-reloc-5.s: New test source.
* testsuite/gas/mips/mips.exp: Run the new tests.
commit 75f31665204bf965cc5b3dd699636be12fb6bcfa
Author: Maciej W. Rozycki <macro@mips.com>
Date: Tue Feb 20 20:51:36 2018 +0000
MIPS16/opcodes: Free up `M' operand code
The `M' and `m' MIPS16 operand codes are functionally the same, denoting
a 7-bit register list that is encoded the same way for both SAVE and
RESTORE. Use `m' for both instructions then, making `M' available for a
different use.
opcodes/
* mips16-opc.c (decode_mips16_operand) <'M'>: Remove case.
(mips16_opcodes): Replace `M' with `m' for "restore".
include/
* opcode/mips.h: Remove `M' operand code.
commit cd665a945eccba1406696c65ac7eebb12a355446
Author: Max Filippov <jcmvbkbc@gmail.com>
Date: Thu Feb 8 10:28:52 2018 -0800
gas: xtensa: limit size of auto litpools
Literal movement code may grow auto litpool so big that it won't be
possible to jump around it. Limit the size of auto litpools by 1/2 of
the jump range.
gas/
2018-02-20 Max Filippov <jcmvbkbc@gmail.com>
* config/tc-xtensa.c (struct litpool_frag): Add new field
literal_count.
(MAX_AUTO_POOL_LITERALS, MAX_EXPLICIT_POOL_LITERALS)
(MAX_POOL_LITERALS): New macro definitions.
(auto_litpool_limit): Initialize to 0.
(md_parse_option): Set auto_litpool_limit in the presence of
--auto-litpools option.
(xtensa_maybe_create_literal_pool_frag): Zero-initialize
literal_count field.
(xg_find_litpool): New function. Make sure that found literal
pool size is within the limit.
(xtensa_move_literals): Extract literal pool search code into
the new function.
* testsuite/gas/xtensa/all.exp: Add auto-litpools-2 test.
* testsuite/gas/xtensa/auto-litpools-2.d: New file.
* testsuite/gas/xtensa/auto-litpools-2.s: New file.
* testsuite/gas/xtensa/auto-litpools.d: Fix up changed
addresses.
* testsuite/gas/xtensa/auto-litpools.s: Change literal value so
that objdump doesn't get out of sync.
commit 7104e59bece90e387d70f617eb7ed4c34087283d
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Tue Feb 20 11:41:54 2018 -0500
remote-sim: Add missing ATTRIBUTE_PRINTF
Fixes:
/home/emaisin/src/binutils-gdb/gdb/remote-sim.c:385:34: error: format string is not a string literal [-Werror,-Wformat-nonliteral]
vfprintf_filtered (gdb_stdout, format, args);
^~~~~~
/home/emaisin/src/binutils-gdb/gdb/remote-sim.c:394:34: error: format string is not a string literal [-Werror,-Wformat-nonliteral]
vfprintf_filtered (gdb_stdout, format, ap);
^~~~~~
/home/emaisin/src/binutils-gdb/gdb/remote-sim.c:402:34: error: format string is not a string literal [-Werror,-Wformat-nonliteral]
vfprintf_filtered (gdb_stderr, format, ap);
^~~~~~
/home/emaisin/src/binutils-gdb/gdb/remote-sim.c:413:11: error: format string is not a string literal [-Werror,-Wformat-nonliteral]
verror (format, args);
^~~~~~
4 errors generated.
gdb/ChangeLog:
* remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
commit b0ab9c4549148435114b95edf38cbf4b6d9fec21
Author: Ronald Hoogenboom <hoogenboom30@zonnet.nl>
Date: Tue Feb 20 13:33:15 2018 +0000
Fix typo in listing of objcopy's command line options.
binutils* doc/binutils.texi (objcopy): Add missing closing square
parenthesis to listing of objcopy's command line options.
commit 6e8d06db1a6e63e0da80035114dbfefeabf63d87
Author: Jason Duerstock <jason.duerstock@gmail.com>
Date: Tue Feb 20 13:21:55 2018 +0000
Enable link time garbage collection support for the IA64 target.
As suggested in long ago in a galaxy far, far away [1], I tried
turning it on and it seems to work, as is evidenced by the Mesa
package in Debian/ia64. Please enable it with the following patch.
[1] https://sourceware.org/ml/binutils/2007-07/msg00241.html
bfd * elfnn-ia64.c (elf_backend_can_gc_sections): Enable.
commit 2d8adcbd07fc12a3212a9f045605ef712f5fb3ab
Author: Markus Metzger <markus.t.metzger@intel.com>
Date: Tue Feb 20 11:48:01 2018 +0100
gnulib: import mkstemp
Older versions of MinGW do not support mkstemp causing:
gdb/unittests/scoped_fd-selftests.c:37:29: error: \
'mkstemp' was not declared in this scope
int fd = mkstemp (filename);
^
gdb/unittests/scoped_fd-selftests.c: In function 'void
selftests::scoped_fd::test_release()':
gdb/unittests/scoped_fd-selftests.c:56:29: error: \
'mkstemp' was not declared in this scope
int fd = mkstemp (filename);
^
Import mkstemp from gnulib.
gdb/
* gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
* gnulib/aclocal.m4: Regenerated.
* gnulib/config.in: Regenerated.
* gnulib/configure: Regenerated.
* gnulib/import/Makefile.am: Regenerated.
* gnulib/import/Makefile.in: Regenerated.
* gnulib/import/m4/gnulib-cache.m4: Regenerated.
* gnulib/import/m4/gnulib-comp.m4: Regenerated.
* gnulib/import/m4/mkstemp.m4: Imported.
* gnulib/import/m4/secure_getenv.m4: Imported.
* gnulib/import/m4/tempname.m4: Imported.
* gnulib/import/mkstemp.c: Imported.
* gnulib/import/secure_getenv.c: Imported.
* gnulib/import/tempname.c: Imported.
* gnulib/import/tempname.h: Imported.
commit de65820cd69a4d9aaa87079a809c70364571efab
Author: Markus Metzger <markus.t.metzger@intel.com>
Date: Tue Jan 9 16:12:24 2018 +0100
btrace, testsuite: do not force BTS
In gdb.btrace/buffer-size.exp we explicitly ask for the BTS recording format.
This may lead to spurious fails on systems where PT is being used by some other
process at the same time.
Set both PT and BTS buffer sizes to 1 and check that whatever recording format
is used will use a 4KB buffer.
testsuite/
* gdb.btrace/buffer-size.exp: Do not force BTS.
commit 8811c8f495557bb05a65d2c09eb529e2675b6a57
Author: Thomas Preud'homme <thomas.preudhomme@arm.com>
Date: Tue Feb 20 12:48:50 2018 +0000
Clarify .arch_extension possible values
Documentation for .arch_extension says it accepts the same architectural
extensions as those accepted by -mcpu. Given the name and the fact that
-march for obvious reason also accept the same extensions, I believe
it's worth mentioning that it accepts the same extensions as both
-march and -mcpu. This commit addresses that.
2018-02-20 Thomas Preud'homme <thomas.preudhomme@arm.com>
gas/
* doc/c-arm.texi (.arch_extension): Mention extensions it accepts are
also the same as -march.
commit a543c5ca7c1285548726e6d92ca6044dc1963340
Author: Alan Hayward <alan.hayward@arm.com>
Date: Tue Feb 20 10:03:56 2018 +0000
Fix make 3.81 build errors
gdbserver/
* Makefile.in: Switch order of make rules.
commit afec267febc1bad9e8b24ac92c434cca06ccd325
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Feb 20 00:00:30 2018 +0000
Automatic date update in version.in
commit db1ae9c5b6660b22812d126c60778d5e298d2ea9
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Fri Feb 16 15:37:05 2018 +0000
gdb/doc: Additional information about 'info line'
Extend the documentation of 'info line' command to:
1. Make 'info line' with no argument more obvious, and make it clearer
what this does.
2. Cover what happens when a secod 'info line' with no argument is
issued.
3. Extend the example output for 'info line ...' to include
symbolic addresses.
gdb/doc/ChangeLog:
* gdb.texinfo (Machine Code): Additional information about "info
line" command.
commit b248d650a44fb49d59a548ad173a3e60646159da
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Feb 19 18:38:41 2018 +0000
Revert "_bfd_mips_elf_final_link: Notify user about wrong .reginfo size"
Revert commit 58807c48a5a3 ("_bfd_mips_elf_final_link: Notify user about
wrong .reginfo size") now that the size of the `.reginfo' section has
been truly fixed in `_bfd_mips_elf_section_processing', meaning that the
offending condition can be asserted again.
bfd/
Revert
2018-01-12 Vlad Ivanov <vlad@ivanov.email>
* elfxx-mips.c (_bfd_mips_elf_final_link): Notify user when
.reginfo section has wrong size.
commit 6798f8bfa617c72240036571cb12313fef353090
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Feb 19 18:38:41 2018 +0000
MIPS/BFD: Fix the size of `.reginfo' and `.MIPS.abiflags' sections
Use the SEC_FIXED_SIZE flag to actually fix the size of `.reginfo' and
`.MIPS.abiflags' sections in `_bfd_mips_elf_always_size_sections', as
originally intended, removing link failures such as:
ld: final link failed: Section has no contents
or:
ld: final link failed: Bad value
or:
ld: foo: .reginfo section size should be 24 bytes, actual size is 32
and assertion failures like:
ld: BFD (GNU Binutils) 2.30.51.20180131 assertion fail .../bfd/elfxx-mips.c:14322
in link scenarios involving a linker script that either creates an
output `.reginfo' or `.MIPS.abiflags' section from scratch or produces
either section from different sections. If such an output section's
size turns out to be incorrect according to the psABI, then the section
is either truncated or padded out to the correct size, as relevant.
This allows people to handle these sections in a link in an unusual way,
while still addressing the issue covered by commit 58807c48a5a3
("_bfd_mips_elf_final_link: Notify user about wrong .reginfo size").
The original arrangement, coming from an unindentified change made to
what was called `mips_elf_always_size_sections' back then, between
commit 02650bd0a97e ("This adds ABI flags to MIPS/ELF object files.")
and commit 252b5132c753 ("19990502 sourceware import"), also missing
from BFD ChangeLog files, assumed that the output section size is not
going to change after return from `bfd_elf_size_dynamic_sections', the
caller of that function, called in turn from `ldemul_before_allocation'
via `gld${EMULATION_NAME}_before_allocation' in ld/emultempl/elf32.em,
and ultimately from `lang_process'. This is because later on in
`lang_process' processing `lang_size_sections' is called , happily
recalculating the section size, and it has actually already been the
case at the time of commit 252b5132c753 ("19990502 sourceware import"),
so the assumption was clearly incorrect right from the beginning.
bfd/
* elfxx-mips.c (_bfd_mips_elf_always_size_sections): Set
SEC_FIXED_SIZE and SEC_HAS_CONTENTS flags for `.reginfo' and
`.MIPS.abiflags' sections.
(_bfd_mips_elf_final_link): Avoid reading beyond `.reginfo'
section's end.
ld/
* testsuite/ld-mips-elf/reginfo-0.d: New test.
* testsuite/ld-mips-elf/reginfo-0r.d: New test.
* testsuite/ld-mips-elf/reginfo-1.d: New test.
* testsuite/ld-mips-elf/reginfo-1r.d: New test.
* testsuite/ld-mips-elf/reginfo-2.d: New test.
* testsuite/ld-mips-elf/reginfo-2r.d: New test.
* testsuite/ld-mips-elf/mips-abiflags-0.d: New test.
* testsuite/ld-mips-elf/mips-abiflags-0r.d: New test.
* testsuite/ld-mips-elf/mips-abiflags-1.d: New test.
* testsuite/ld-mips-elf/mips-abiflags-1r.d: New test.
* testsuite/ld-mips-elf/mips-abiflags-2.d: New test.
* testsuite/ld-mips-elf/mips-abiflags-2r.d: New test.
* testsuite/ld-mips-elf/reginfo-0.ld: New test linker script.
* testsuite/ld-mips-elf/reginfo-1.ld: New test linker script.
* testsuite/ld-mips-elf/mips-abiflags-0.ld: New test linker
script.
* testsuite/ld-mips-elf/mips-abiflags-1.ld: New test linker
script.
* testsuite/ld-mips-elf/reginfo-1.s: New test source.
* testsuite/ld-mips-elf/reginfo-2.s: New test source.
* testsuite/ld-mips-elf/mips-elf.exp: Run the new tests.
commit 8772de117d8366988bc60c9f9c571e262ef75932
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Feb 19 18:38:41 2018 +0000
LD: Support fixed-size sections some psABIs may require
Define a SEC_FIXED_SIZE section flag for target backends to use for
output sections whose size has been fixed in the psABI. The size of
such sections will not be changed anyhow by the generic linker and it is
up to the target backend to get their size right.
bfd/
* section.c (SEC_FIXED_SIZE): New macro.
* bfd-in2.h: Regenerate.
ld/
* ldlang.c (insert_pad): Do not change output section's size if
SEC_FIXED_SIZE is set in the flags.
(size_input_section): Likewise.
(lang_size_sections_1): Likewise.
(lang_reset_memory_regions): Likewise.
commit 4f7fd351a727ffc44d3dd4e00ddf5222cd2063c5
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Feb 19 18:38:41 2018 +0000
BFD: Remove unused SEC_HAS_GOT_REF section flag
Remove the SEC_HAS_GOT_REF section flag no longer in use since commit
a252afa4cdff ("Fix linking of PIC code on PA"),
<https://sourceware.org/ml/binutils/2003-08/msg00467.html>, to make the
bit position available for reuse.
bfd/
* section.c (SEC_HAS_GOT_REF): Remove macro.
* bfd-in2.h: Regenerate.
commit f2b740ac53a3347b7e0fe1a09e52f6311265e709
Author: Alan Modra <amodra@gmail.com>
Date: Mon Feb 19 23:36:55 2018 +1030
Add attribute printf to _bfd_error_handler
and fix a few stray errors.
* elf-attrs.c (_bfd_elf_parse_attributes): Correct _bfd_error_handler
arguments.
* elfxx-mips.c (_bfd_mips_elf_final_link): Likewise.
* elfnn-riscv.c (_bfd_riscv_relax_align): Likewise.
(_bfd_riscv_relax_pc): Likewise and fix typos.
* libbfd-in.h (_bfd_error_handler): Add attribute printf.
* libbfd.h: Regenerate.
commit 8979927ae719d1a16d2acd01a11cc17ed3c78dfb
Author: Alan Modra <amodra@gmail.com>
Date: Mon Feb 19 18:48:15 2018 +1030
Don't use %ll
* dwarf2.c (read_section): Don't use 'll' format modifier.
(find_abstract_instance): Likewise.
* elfcore.h (elf_core_file_p): Likewise.
commit 2dcf00ce6c001c42c89e6f6baace708b706994f2
Author: Alan Modra <amodra@gmail.com>
Date: Mon Feb 19 18:34:15 2018 +1030
%L conversions
* bfd-in.h: Include inttypes.h or if not available define
PRId64, PRIu64 and PRIx64.
* bfd.c (_bfd_doprnt, _bfd_doprnt_scan): Remove support for L
modifier to print bfd_vma.
* coff-arm.c, * coff-mcore.c, * coff-ppc.c, * coff-rs6000.c,
* coff-sh.c, * coff-tic80.c, * coffcode.h, * coffgen.c, * cofflink.c,
* compress.c, * dwarf2.c, * elf-m10300.c, * elf.c, * elf32-arc.c,
* elf32-arm.c, * elf32-bfin.c, * elf32-cris.c, * elf32-hppa.c,
* elf32-i386.c, * elf32-ip2k.c, * elf32-lm32.c, * elf32-m32r.c,
* elf32-m68k.c, * elf32-metag.c, * elf32-nds32.c, * elf32-nios2.c,
* elf32-ppc.c, * elf32-rx.c, * elf32-s390.c, * elf32-score.c,
* elf32-score7.c, * elf32-sh.c, * elf32-sh64.c, * elf32-spu.c,
* elf32-tic6x.c, * elf32-tilepro.c, * elf32-v850.c, * elf32-vax.c,
* elf32-xtensa.c, * elf64-alpha.c, * elf64-hppa.c, * elf64-ia64-vms.c,
* elf64-mmix.c, * elf64-s390.c, * elf64-sh64.c, * elf64-x86-64.c,
* elfcode.h, * elfcore.h, * elflink.c, * elfnn-aarch64.c,
* elfnn-ia64.c, * elfnn-riscv.c, * elfxx-mips.c, * elfxx-sparc.c,
* elfxx-tilegx.c, * ieee.c, * ihex.c, * mach-o.c, * merge.c, * mmo.c,
* peXXigen.c, * xcofflink.c: Replace use of Lx modifier with PRIx64,
and cast input to uint64_t, and similarly for Ld and Lu.
* bfd-in2.h: Regenerate.
commit c1c8c1ef9acdeddf719f358b91590545440cea68
Author: Alan Modra <amodra@gmail.com>
Date: Mon Feb 19 18:30:41 2018 +1030
Use %pI, %pR, %pS, %pT in place of %I, %R, %S and %T.
bfd/
* elf32-arm.c, * elf32-hppa.c, * elf32-lm32.c, * elf32-m32r.c,
* elf32-metag.c, * elf32-nds32.c, * elf32-or1k.c, * elf32-ppc.c,
* elf32-s390.c, * elf32-sh.c, * elf32-tic6x.c, * elf32-tilepro.c,
* elf64-ppc.c, * elf64-s390.c, * elflink.c, * elfnn-aarch64.c,
* elfnn-riscv.c, * elfxx-sparc.c, * elfxx-tilegx.c, * elfxx-x86.c,
* reloc.c: Replace use of %R and %T in format strings passed to
einfo and friends by %pR and %pT.
ld/
* ldmisc.c (vfinfo) Handle %pI, %pR, %pS and %pT in place of
%I, %R, %S and %T.
* ldcref.c, * ldctor.c, * ldemul.c, * ldexp.c, * ldgram.y,
* ldlang.c, * ldlex.l, * ldmain.c, * ldmisc.c, * pe-dll.c,
* emultempl/sh64elf.em: Replace use of of %I, %R, %S and %T in
format strings passed to einfo and friends by %pI, %pR, %pS and %pT.
commit 871b3ab29e87cf0de15f7e49ad19acc4f7f6f84c
Author: Alan Modra <amodra@gmail.com>
Date: Mon Feb 19 15:21:40 2018 +1030
Use %pA and %pB in messages rather than %A and %B
First step towards compiler verification of _bfd_error_handler
arguments, and better verification of translated messages.
bfd/
* bfd.c (_bfd_doprnt, _bfd_doprnt_scan): Handle %pA and %pB in place
of %A and %B.
* aout-adobe.c: Update all messages using %A and %B.
* aout-cris.c: Likewise.
* aoutx.h: Likewise.
* archive.c: Likewise.
* binary.c: Likewise.
* cache.c: Likewise.
* coff-alpha.c: Likewise.
* coff-arm.c: Likewise.
* coff-i860.c: Likewise.
* coff-mcore.c: Likewise.
* coff-ppc.c: Likewise.
* coff-rs6000.c: Likewise.
* coff-sh.c: Likewise.
* coff-tic4x.c: Likewise.
* coff-tic54x.c: Likewise.
* coff-tic80.c: Likewise.
* coff64-rs6000.c: Likewise.
* coffcode.h: Likewise.
* coffgen.c: Likewise.
* cofflink.c: Likewise.
* coffswap.h: Likewise.
* compress.c: Likewise.
* cpu-arm.c: Likewise.
* ecoff.c: Likewise.
* elf-attrs.c: Likewise.
* elf-eh-frame.c: Likewise.
* elf-ifunc.c: Likewise.
* elf-m10300.c: Likewise.
* elf-properties.c: Likewise.
* elf-s390-common.c: Likewise.
* elf.c: Likewise.
* elf32-arc.c: Likewise.
* elf32-arm.c: Likewise.
* elf32-avr.c: Likewise.
* elf32-bfin.c: Likewise.
* elf32-cr16.c: Likewise.
* elf32-cr16c.c: Likewise.
* elf32-cris.c: Likewise.
* elf32-crx.c: Likewise.
* elf32-d10v.c: Likewise.
* elf32-d30v.c: Likewise.
* elf32-epiphany.c: Likewise.
* elf32-fr30.c: Likewise.
* elf32-frv.c: Likewise.
* elf32-gen.c: Likewise.
* elf32-hppa.c: Likewise.
* elf32-i370.c: Likewise.
* elf32-i386.c: Likewise.
* elf32-i960.c: Likewise.
* elf32-ip2k.c: Likewise.
* elf32-iq2000.c: Likewise.
* elf32-lm32.c: Likewise.
* elf32-m32c.c: Likewise.
* elf32-m32r.c: Likewise.
* elf32-m68hc11.c: Likewise.
* elf32-m68hc12.c: Likewise.
* elf32-m68hc1x.c: Likewise.
* elf32-m68k.c: Likewise.
* elf32-mcore.c: Likewise.
* elf32-mep.c: Likewise.
* elf32-metag.c: Likewise.
* elf32-microblaze.c: Likewise.
* elf32-moxie.c: Likewise.
* elf32-msp430.c: Likewise.
* elf32-mt.c: Likewise.
* elf32-nds32.c: Likewise.
* elf32-nios2.c: Likewise.
* elf32-or1k.c: Likewise.
* elf32-pj.c: Likewise.
* elf32-ppc.c: Likewise.
* elf32-rl78.c: Likewise.
* elf32-rx.c: Likewise.
* elf32-s390.c: Likewise.
* elf32-score.c: Likewise.
* elf32-score7.c: Likewise.
* elf32-sh-symbian.c: Likewise.
* elf32-sh.c: Likewise.
* elf32-sh64.c: Likewise.
* elf32-sparc.c: Likewise.
* elf32-spu.c: Likewise.
* elf32-tic6x.c: Likewise.
* elf32-tilepro.c: Likewise.
* elf32-v850.c: Likewise.
* elf32-vax.c: Likewise.
* elf32-visium.c: Likewise.
* elf32-wasm32.c: Likewise.
* elf32-xgate.c: Likewise.
* elf32-xtensa.c: Likewise.
* elf64-alpha.c: Likewise.
* elf64-gen.c: Likewise.
* elf64-hppa.c: Likewise.
* elf64-ia64-vms.c: Likewise.
* elf64-mmix.c: Likewise.
* elf64-ppc.c: Likewise.
* elf64-s390.c: Likewise.
* elf64-sh64.c: Likewise.
* elf64-sparc.c: Likewise.
* elf64-x86-64.c: Likewise.
* elfcode.h: Likewise.
* elfcore.h: Likewise.
* elflink.c: Likewise.
* elfnn-aarch64.c: Likewise.
* elfnn-ia64.c: Likewise.
* elfnn-riscv.c: Likewise.
* elfxx-mips.c: Likewise.
* elfxx-sparc.c: Likewise.
* elfxx-tilegx.c: Likewise.
* elfxx-x86.c: Likewise.
* hpux-core.c: Likewise.
* ieee.c: Likewise.
* ihex.c: Likewise.
* libbfd.c: Likewise.
* linker.c: Likewise.
* mach-o.c: Likewise.
* merge.c: Likewise.
* mmo.c: Likewise.
* oasys.c: Likewise.
* pdp11.c: Likewise.
* pe-mips.c: Likewise.
* peXXigen.c: Likewise.
* peicode.h: Likewise.
* reloc.c: Likewise.
* rs6000-core.c: Likewise.
* srec.c: Likewise.
* stabs.c: Likewise.
* vms-alpha.c: Likewise.
* xcofflink.c: Likewise.
ld/
* ldmisc.c (vfinfo): Handle %pA and %pB in place of %A and %B.
* ldcref.c: Update all messages using %A and %B.
* ldexp.c: Likewise.
* ldlang.c: Likewise.
* ldmain.c: Likewise.
* ldmisc.c: Likewise.
* pe-dll.c: Likewise.
* plugin.c: Likewise.
* emultempl/beos.em: Likewise.
* emultempl/cr16elf.em: Likewise.
* emultempl/elf32.em: Likewise.
* emultempl/m68kcoff.em: Likewise.
* emultempl/m68kelf.em: Likewise.
* emultempl/mmo.em: Likewise.
* emultempl/nds32elf.em: Likewise.
* emultempl/pe.em: Likewise.
* emultempl/pep.em: Likewise.
* emultempl/spuelf.em: Likewise.
* emultempl/sunos.em: Likewise.
* emultempl/xtensaelf.em: Likewise.
commit f61f94ec1bf9cb3d32b38a90a1f5c2d58ececbfb
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Feb 19 05:07:33 2018 -0800
ld: Add -z separate-code tests to frame.exp
On x86, "-z separate-code" leads to assertion fail at bfd/elf.c:5917.
Alsp skip tests if -shared isn't supported.
PR ld/22845
* testsuite/ld-elf/frame.exp: Skip if -shared isn't supported.
Add tests for "-z noseparate-code" and "-z separate-code".
Remove unsupported -shared check.
commit e207bc53a407b274e0c771b781d73321b91612ce
Author: Thomas Preud'homme <thomas.preudhomme@arm.com>
Date: Mon Feb 19 12:05:18 2018 +0000
[ARM] Fix bxns mask
Bit 7 of BXNS is a fixed bit which distinguish it from BLXNS. Yet it is
not set in the disassembler entry mask. This commit fixes that.
2018-02-19 Thomas Preud'homme <thomas.preudhomme@arm.com>
opcodes/
* arm-dis.c (thumb_opcodes): Fix BXNS mask.
commit e535d0ddb3ca97c849bd3dbab997dc756625cc9e
Author: Matthias Klose <doko@debian.org>
Date: Mon Feb 19 11:56:53 2018 +0000
Fix mistake in the declaration of the --include-all-whitespace option of the strings utility.
* strings.c (long_options): Include-all-whitespace does not take
an extra agument.
commit b5884fa7101cc528f07fd57c3de445a3680964a6
Author: Alan Hayward <alan.hayward@arm.com>
Date: Mon Feb 19 09:37:24 2018 +0000
Add common/ dir in build directories
gdb/
* Makefile.in: (COMMON_SFILES): Add common/*.c files.
(SFILES): Remove common/*.c files.
(COMMON_OBS): Remove some *.o files built from common/*.c files.
* common/common.host: Add common reference.
* configure.ac: Likewise.
* configure: Regenerate.
gdbserver/
* Makefile.in: Add common directory in build.
* configure.ac: Add common reference.
* configure: Regenerate.
commit dbc88fc14992c556b94e77de563a8f7abcb0b653
Author: Alan Modra <amodra@gmail.com>
Date: Mon Feb 19 09:52:53 2018 +1030
PT_LOAD and PT_GNU_RELRO segment overlap
Commit 325ba6fb34 excluded degenerate zero length PT_LOAD segments,
but that only fixed part of the problem, which was that the load
segment limits were not calculated properly.
PR 22845
* elf.c (IS_TBSS): Define.
(_bfd_elf_map_sections_to_segments): Use IS_TBSS.
(assign_file_positions_for_non_load_sections): Revert last change.
Properly calculate load segment limits to compare against relro limits.
commit d5c78119f7d4f6a6a3d51d7fb7ff97758bf0a880
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Feb 19 00:00:26 2018 +0000
Automatic date update in version.in
commit e64676d21c373877e93f83ba3fc9a0b55aedb40c
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Feb 18 00:00:57 2018 +0000
Automatic date update in version.in
commit d85502cffa5e41db6f2f2e1ba11d4285918dccdb
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sat Feb 17 14:54:16 2018 -0800
ld-elf/ehdr_start: Pass --build-id to ld
ld-elf/ehdr_start fails with -z separate-code. Since there is no data
LOAD segment before code LOAD segment:
There are 2 program headers, starting at offset 64
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
LOAD 0x200000 0x0000000000600000 0x0000000000600000 0x000010 0x000010 R E 0x200000
LOAD 0x400000 0x0000000000800000 0x0000000000800000 0x000008 0x000008 R 0x200000
Section to Segment mapping:
Segment Sections...
00 .text
01 .rodata
the program header isn't included in any LOAD segment. As the result,
reference to __ehdr_start is resolved to zero. Pass --build-id to ld
to add a data LOAD segment before code LOAD segment to put the program
header in the data LOAD segment.
PR ld/22845
* testsuite/ld-elf/ehdr_start.d: Pass --build-id to ld.
commit 34b00afa0396871f762190b8c436d2a5bf91c9e1
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sat Feb 17 05:37:37 2018 -0800
ld: Add -z separate-code test for zero size section
PR ld/22845
* testsuite/ld-elf/binutils.exp (tls_opts): Add tests for
"-z noseparate-code" and "-z separate-code".
commit 92d9e363b5ab7f96a2c8e6d3ae86cf8cc91dca9d
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sat Feb 17 05:30:13 2018 -0800
ld-elf/eh4: Pass -z max-page-size=0x200000 -z noseparate-code to ld
-z separate-code creates separate code LOAD segment, aligns it to the
maximum page size and places .plt section before .text section. But
ld-elf/eh4 passes -Ttext 0x400 to linker to place .text section at
address 0x400, which is impossible for linker to accomplish:
$ ld -shared -Ttext 0x400 -z separate-code -o x.so eh4.o
ld: section .eh_frame LMA [0000000000200000,000000000020006b] overlaps section .plt LMA [0000000000200000,000000000020001f]
Since ld-elf/eh4 also checks exact addresses, this patch passes
-z max-page-size=0x200000 -z noseparate-code to ld.
PR ld/22845
* ld-elf/eh4.d: Pass -z max-page-size=0x200000 -z noseparate-code
to ld.
commit 62a02d25b6e5d9f92c205260daa11355d0c62532
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sat Feb 17 05:20:42 2018 -0800
Add .nop assembler directive
Implement the '.nop SIZE[, CONTROL]' assembler directive, which emits
SIZE bytes filled with no-op instructions. SIZE is absolute expression.
The optional CONTROL byte controls how no-op instructions should be
generated. If the comma and @var{control} are omitted, CONTROL is
assumed to be zero.
For Intel 80386 and AMD x86-64 targets, CONTROL byte specifies the size
limit of a single no-op instruction. The valid values of CONTROL byte
are between 0 and 8 for 16-bit mode, between 0 and 10 for 32-bit mode,
between 0 and 11 for 64-bit mode. When 0 is used, the no-op size limit
is set to the maximum supported size.
2 new relax states, rs_space_nop and rs_fill_nop, are added to enum
_relax_state, which are similar to rs_space and rs_fill, respectively,
but they fill with no-op instructions, instead of a single byte. A
target backend must override the default md_generate_nops to generate
proper no-op instructions. Otherwise, an error of unimplemented .nop
directive will be issued whenever .nop directive is used.
* NEWS: Mention .nop directive.
* as.h (_relax_state): Add rs_space_nop and rs_fill_nop.
* read.c (potable): Add .nop.
(s_nop): New function.
* read.h (s_nop): New prototype.
* write.c (cvt_frag_to_fill): Handle rs_space_nop and
rs_fill_nop.
(md_generate_nops): New function.
(relax_segment): Likewise.
(write_contents): Use md_generate_nops for rs_fill_nop.
* config/tc-i386.c (alt64_11): New.
(alt64_patt): Likewise.
(md_convert_frag): Handle rs_space_nop.
(i386_output_nops): New function.
(i386_generate_nops): Likewise.
(i386_align_code): Call i386_output_nops.
* config/tc-i386.h (i386_generate_nops): New.
(md_generate_nops): Likewise.
* doc/as.texinfo: Document .nop directive.
* testsuite/gas/i386/i386.exp: Run .nop directive tests.
* testsuite/gas/i386/nop-1.d: New file.
* testsuite/gas/i386/nop-1.s: Likewise.
* testsuite/gas/i386/nop-2.d: Likewise.
* testsuite/gas/i386/nop-2.s: Likewise.
* testsuite/gas/i386/nop-3.d: Likewise.
* testsuite/gas/i386/nop-3.s: Likewise.
* testsuite/gas/i386/nop-4.d: Likewise.
* testsuite/gas/i386/nop-4.s: Likewise.
* testsuite/gas/i386/nop-5.d: Likewise.
* testsuite/gas/i386/nop-5.s: Likewise.
* testsuite/gas/i386/nop-6.d: Likewise.
* testsuite/gas/i386/nop-6.s: Likewise.
* testsuite/gas/i386/nop-bad-1.l: Likewise.
* testsuite/gas/i386/nop-bad-1.s: Likewise.
* testsuite/gas/i386/x86-64-nop-1.d: Likewise.
* testsuite/gas/i386/x86-64-nop-2.d: Likewise.
* testsuite/gas/i386/x86-64-nop-3.d: Likewise.
* testsuite/gas/i386/x86-64-nop-4.d: Likewise.
* testsuite/gas/i386/x86-64-nop-5.d: Likewise.
* testsuite/gas/i386/x86-64-nop-6.d: Likewise.
commit bb57c12e551e7b66db9d5d8623e2f294091f03c1
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Feb 17 00:00:29 2018 +0000
Automatic date update in version.in
commit 325ba6fb34be799c885fad9287d883e86b835c84
Author: Alan Modra <amodra@gmail.com>
Date: Sat Feb 17 09:21:17 2018 +1030
Ignore degenerate PT_LOAD segments
Fixes a failure triggered by -z separate-code. p_memsz is tested
rather than p_filesz for objcopy --only-keep-debug where p_filesz is
set to zero.
PR 22845
* elf.c (assign_file_positions_for_non_load_sections): Ignore
degenerate zero size PT_LOAD segments when finding one overlapping
the PT_GNU_RELRO segment.
commit c2596c4a72213391e5badda35b73f00d0e6aba76
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Feb 16 10:02:00 2018 -0800
x86-64: Add -z max-page-size=0x200000 -z noseparate-code to linker tests
Add -z max-page-size=0x200000 -z noseparate-code since these tests
check for exact addresses.
* testsuite/ld-x86-64/bnd-branch-1-now.d: Add -z
max-page-size=0x200000 -z noseparate-code.
* testsuite/ld-x86-64/bnd-ifunc-1-now.d: Likewise.
* testsuite/ld-x86-64/bnd-ifunc-2-now.d: Likewise.
* testsuite/ld-x86-64/bnd-ifunc-2.d: Likewise.
* testsuite/ld-x86-64/bnd-plt-1-now.d: Likewise.
* testsuite/ld-x86-64/bnd-plt-1.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-1-x32.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-1.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-2a-x32.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-2a.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-2b-x32.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-2b.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-2c-x32.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-2c.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-2d-x32.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-2d.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-3a-x32.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-3a.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-3b-x32.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-3b.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-3c-x32.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-3c.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-3d-x32.d: Likewise.
* testsuite/ld-x86-64/ibt-plt-3d.d: Likewise.
* testsuite/ld-x86-64/load1a.d: Likewise.
* testsuite/ld-x86-64/load1b.d: Likewise.
* testsuite/ld-x86-64/load1c.d: Likewise.
* testsuite/ld-x86-64/load1d.d: Likewise.
* testsuite/ld-x86-64/pie3.d: Likewise.
* testsuite/ld-x86-64/pr14207.d: Likewise.
* testsuite/ld-x86-64/pr17618.d: Likewise.
* testsuite/ld-x86-64/pr19162.d: Likewise.
* testsuite/ld-x86-64/pr19636-2d.d: Likewise.
* testsuite/ld-x86-64/pr19636-2l.d: Likewise.
* testsuite/ld-x86-64/pr20253-1b.d: Likewise.
* testsuite/ld-x86-64/pr20253-1d.d: Likewise.
* testsuite/ld-x86-64/pr20253-1f.d: Likewise.
* testsuite/ld-x86-64/pr20253-1h.d: Likewise.
* testsuite/ld-x86-64/pr20253-1j.d: Likewise.
* testsuite/ld-x86-64/pr20253-1l.d: Likewise.
* testsuite/ld-x86-64/pr20830a-now.d: Likewise.
* testsuite/ld-x86-64/pr20830a.d: Likewise.
* testsuite/ld-x86-64/pr20830b-now.d: Likewise.
* testsuite/ld-x86-64/pr20830b.d: Likewise.
* testsuite/ld-x86-64/pr21038a-now.d: Likewise.
* testsuite/ld-x86-64/pr21038a.d: Likewise.
* testsuite/ld-x86-64/pr21038b-now.d: Likewise.
* testsuite/ld-x86-64/pr21038b.d: Likewise.
* testsuite/ld-x86-64/pr21038c-now.d: Likewise.
* testsuite/ld-x86-64/pr21038c.d: Likewise.
commit c441b6234389c02408b9273a1446b46ee99a94f4
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Feb 16 09:56:58 2018 -0800
x86-64: Update tests for -z separate-code
"-z separate-code" generates different addresses. Update these tests
to accept any addresses.
* testsuite/ld-x86-64/bnd-ifunc-1.d: Updated.
* testsuite/ld-x86-64/ilp32-4.d: Likewise.
commit 197741f19d8e6304f45efd8e960ffce4712e3ea0
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Feb 16 09:54:56 2018 -0800
mpx.exp: Add -z max-page-size=0x200000 -z noseparate-code
Add -z max-page-size=0x200000 -z noseparate-code since these tests
check for exact addresses.
* testsuite/ld-x86-64/mpx.exp: Add -z max-page-size=0x200000
-z noseparate-code.
commit 7c9f387aefaca3606975868c5953a0820afd0986
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Feb 16 09:49:34 2018 -0800
x86-64.exp: Add -z noseparate-code -z max-page-size=0x200000
Add -z noseparate-code -z max-page-size=0x200000 since these tests
check for exact addresses and don't expect extra PT_LOAD segment. But
don't add them to nacl targets since they generate different addresses.
* testsuite/ld-x86-64/x86-64.exp: Add -z noseparate-code
-z max-page-size=0x200000, excluding NaCl target.
commit c9d3eb5f61c5756b78e5aebe1822df7ff977eb74
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Feb 16 09:45:02 2018 -0800
x86: Add -z noseparate-code to IFUNC tests
Add -z noseparate-code since these tests check for exact addresses.
* testsuite/ld-ifunc/ifunc-2-i386-now.d: Likewise.
* testsuite/ld-ifunc/ifunc-2-local-i386-now.d: Likewise.
* testsuite/ld-ifunc/ifunc-2-local-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-21-i386.d: Likewise.
* testsuite/ld-ifunc/ifunc-22-i386.d: Likewise.
* testsuite/ld-ifunc/pr17154-i386-now.d: Likewise.
* testsuite/ld-ifunc/pr17154-i386.d: Likewise.
commit 679a5bc8624a8d4bd96ca62c27f7ac8c4342bf20
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Feb 16 09:39:07 2018 -0800
x86-64: Add -z max-page-size=0x200000 -z noseparate-code to IFUNC tests
Add -z max-page-size=0x200000 -z noseparate-code since these tests
check for exact addresses.
* testsuite/ld-ifunc/ifunc-2-local-x86-64-now.d: Add
-z max-page-size=0x200000 -z noseparate-code.
* testsuite/ld-ifunc/ifunc-2-x86-64-now.d: Likewise.
* testsuite/ld-ifunc/ifunc-2-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-21-x86-64.d: Likewise.
* testsuite/ld-ifunc/ifunc-22-x86-64.d: Likewise.
* testsuite/ld-ifunc/pr17154-x86-64-now.d: Likewise.
* testsuite/ld-ifunc/pr17154-x86-64.d: Likewise.
commit 62e2b91b9ae508a9f875fb7f15c2173dbbfa6f25
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Feb 16 09:32:56 2018 -0800
i386: Update IFUNC tests for PLT address
i386 generates
161: e8 ea ff ff ff call 150 <*ABS*@plt>
instead of
1e1: e8 ea ff ff ff callq 1d0 <*ABS*+0x1e0@plt>
* testsuite/ld-ifunc/ifunc-1-local-x86.d: Update PLT address
for i386.
* testsuite/ld-ifunc/ifunc-1-x86.d: Likewise.
* testsuite/ld-ifunc/ifunc-3a-x86.d: Likewise.
commit 9f4aec8d9788d7d6b03c48d4c4e7f90ffaa7a62e
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Feb 16 09:20:07 2018 -0800
x86: Update IFUNC tests for -z separate-code
"-z separate-code" generates different PLT addresses. Update these tests
to accept any PLT addresses.
* testsuite/ld-ifunc/ifunc-1-local-x86.d: Updated.
* testsuite/ld-ifunc/ifunc-1-x86.d: Likewise.
* testsuite/ld-ifunc/ifunc-3a-x86.d: Likewise.
commit 410a69a0228c3445bb57687d0b60e789483b96dd
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Feb 16 09:07:46 2018 -0800
i386: Add -z noseparate-code to linker tests
Add -z noseparate-code since these tests check for exact addresses.
* testsuite/ld-i386/ibt-plt-1.d: Add -z noseparate-code.
* testsuite/ld-i386/ibt-plt-2a.d: Likewise.
* testsuite/ld-i386/ibt-plt-2b.d: Likewise.
* testsuite/ld-i386/ibt-plt-2c.d: Likewise.
* testsuite/ld-i386/ibt-plt-2d.d: Likewise.
* testsuite/ld-i386/ibt-plt-3a.d: Likewise.
* testsuite/ld-i386/ibt-plt-3b.d: Likewise.
* testsuite/ld-i386/ibt-plt-3c.d: Likewise.
* testsuite/ld-i386/ibt-plt-3d.d: Likewise.
* testsuite/ld-i386/load1.d: Likewise.
* testsuite/ld-i386/pie1.d: Likewise.
* testsuite/ld-i386/pr20244-1a.d: Likewise.
* testsuite/ld-i386/pr20244-1b.d: Likewise.
* testsuite/ld-i386/pr20244-2a.d: Likewise.
* testsuite/ld-i386/pr20244-2b.d: Likewise.
* testsuite/ld-i386/pr20244-2c.d: Likewise.
* testsuite/ld-i386/pr20244-4a.d: Likewise.
* testsuite/ld-i386/pr20244-4b.d: Likewise.
* testsuite/ld-i386/pr20830.d: Likewise.
commit 75bd00e87e3af7c3b43ae162394d0bd3a3385f26
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Feb 16 08:59:14 2018 -0800
i386: Update tests for -z separate-code
"-z separate-code" generates:
0x00002080 00200000 00000000 00000000 00000000 . ..............
There is a space ' ', instead of '.'. Update these tests to expect ".*".
* testsuite/ld-i386/pr19636-1a.d: Updated.
* testsuite/ld-i386/pr19636-1b.d: Likewise.
* testsuite/ld-i386/pr19636-1j.d: Likewise.
* testsuite/ld-i386/pr19636-1k.d: Likewise.
* testsuite/ld-i386/pr19636-2a.d: Likewise.
* testsuite/ld-i386/pr19636-2b.d: Likewise.
commit 760b28930013fc479fece0007b3db79ade49155c
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Feb 16 08:56:25 2018 -0800
i386.exp: Add -z noseparate-code
These tests fail due to one extra PT_LOAD segment with -z separate-code.
* testsuite/ld-i386/i386.exp: Add -z noseparate-code.
commit fd90ace4c1e77c94e90d2942cebe84e9a2019c0f
Author: Yao Qi <yao.qi@linaro.org>
Date: Fri Feb 16 16:20:58 2018 +0000
New class allocate_on_obstack
This patch adds a new class allocate_on_obstack, and let dwarf2_per_objfile
inherit it, so that dwarf2_per_objfile is automatically allocated on
obstack, and "delete dwarf2_per_objfile" doesn't de-allocate any space.
gdb:
2018-02-16 Yao Qi <yao.qi@linaro.org>
* block.c (block_namespace_info): Inherit allocate_on_obstack.
(block_initialize_namespace): Use new.
* dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
(dwarf2_free_objfile): Use delete.
* gdbtypes.c (type_pair): Inherit allocate_on_obstack.
(copy_type_recursive): Use new.
* gdb_obstack.h (allocate_on_obstack): New.
commit 75cdede09952b5aa8c6d4ceb0de10c5e93002a6d
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Feb 16 06:25:36 2018 -0800
Add -z noseparate-code to ld-elf tests
These tests fail due to one extra PT_LOAD segment with -z separate-code.
* testsuite/ld-elf/pr19162.d: Add -z noseparate-code.
* testsuite/ld-elf/textaddr1.d: Likewise.
* testsuite/ld-elf/textaddr2.d: Likewise.
* testsuite/ld-elf/textaddr4.d: Likewise.
* testsuite/ld-elf/textaddr6.d: Likewise.
commit d00dd7dc5e415503de88614bf2ea4aafa2bca819
Author: Alan Modra <amodra@gmail.com>
Date: Thu Feb 15 10:58:06 2018 +1030
Remove bfd stub function casts.
This patch defines a bunch of new functions to use in the BFD target
structs rather than casting bfd_false or bfd_true and similar stub
functions. I've also renamed the stub functions to reflect their
parameters and put "error" in the name if they set bfd_error. The
latter change is important since there were quite a few uses of
bfd_false where setting bfd_error was inappropriate, for example in
elf_backend_allow_non_load_phdr and is_target_special_symbol.
* libbfd.c (_bfd_bool_bfd_false_error): Rename from bfd_false.
(_bfd_bool_bfd_true): Rename from bfd_true.
(_bfd_ptr_bfd_null_error): Rename from bfd_nullvoidptr.
(_bfd_int_bfd_0): Rename from bfd_0.
(_bfd_uint_bfd_0): Rename from bfd_0u.
(_bfd_long_bfd_0): Rename from bfd_0l.
(_bfd_long_bfd_n1_error): Rename from _bfd_n1.
(_bfd_void_bfd): Rename from bfd_void.
(_bfd_bool_bfd_false, _bfd_bool_bfd_asymbol_false),
(_bfd_bool_bfd_link_false_error),
(_bfd_bool_bfd_link_true, _bfd_bool_bfd_bfd_true),
(_bfd_bool_bfd_uint_true, _bfd_bool_bfd_ptr_true),
(_bfd_bool_bfd_asection_bfd_asection_true),
(_bfd_bool_bfd_asymbol_bfd_asymbol_true),
(_bfd_void_bfd_link, _bfd_void_bfd_asection): New functions.
* archive.c (_bfd_noarchive_get_elt_at_index),
(_bfd_noarchive_openr_next_archived_file),
(_bfd_noarchive_construct_extended_name_table),
(_bfd_noarchive_write_ar_hdr, _bfd_noarchive_truncate_arname),
(_bfd_noarchive_write_armap): New functions.
* archures.c (_bfd_nowrite_set_arch_mach): New function.
* coff-alpha.c (alpha_ecoff_swap_coff_aux_in),
(alpha_ecoff_swap_coff_sym_in, alpha_ecoff_swap_coff_lineno_in),
(alpha_ecoff_swap_coff_aux_out, alpha_ecoff_swap_coff_sym_out),
(alpha_ecoff_swap_coff_lineno_out),
(alpha_ecoff_swap_coff_reloc_out): New functions.
* coff-mips.c (mips_ecoff_swap_coff_aux_in),
(mips_ecoff_swap_coff_sym_in, mips_ecoff_swap_coff_lineno_in),
(mips_ecoff_swap_coff_aux_out, mips_ecoff_swap_coff_sym_out),
(mips_ecoff_swap_coff_lineno_out),
(mips_ecoff_swap_coff_reloc_out): New functions.
* coffcode.h (coff_set_alignment_hook): Replace define with
new function.
(symname_in_debug_hook): Likewise.
* ecoff.c (_bfd_ecoff_set_alignment_hook): New function.
* elfxx-target.h (elf_backend_allow_non_load_phdr): Default to 0.
* elf.c (assign_file_positions_except_relocs): Test
elf_backend_allow_non_load_phdr for NULL.
* elflink.c (_bfd_elf_omit_section_dynsym_default): Rename from
_bfd_elf_link_omit_section_dynsym. Update uses.
(_bfd_elf_omit_section_dynsym_all): New function.
* elf-bfd.h (_bfd_elf_link_omit_section_dynsym): Delete.
(_bfd_elf_omit_section_dynsym_default): Declare.
(_bfd_elf_omit_section_dynsym_all): Declare.
* linker.c (_bfd_nolink_sizeof_headers, _bfd_nolink_bfd_relax_section),
(_bfd_nolink_bfd_get_relocated_section_contents),
(_bfd_nolink_bfd_lookup_section_flags),
(_bfd_nolink_bfd_is_group_section, _bfd_nolink_bfd_discard_group),
(_bfd_nolink_bfd_link_hash_table_create),
(_bfd_nolink_bfd_link_just_syms),
(_bfd_nolink_bfd_copy_link_hash_symbol_type),
(_bfd_nolink_bfd_link_split_section),
(_bfd_nolink_section_already_linked),
(_bfd_nolink_bfd_define_common_symbol),
(_bfd_nolink_bfd_define_start_stop): New functions.
* reloc.c (_bfd_norelocs_bfd_reloc_type_lookup),
(_bfd_norelocs_bfd_reloc_name_lookup),
(_bfd_nodynamic_canonicalize_dynamic_reloc): New functions.
* section.c (_bfd_nowrite_set_section_contents): New function.
* syms.c (_bfd_nosymbols_canonicalize_symtab),
(_bfd_nosymbols_print_symbol, _bfd_nosymbols_get_symbol_info),
(_bfd_nosymbols_get_symbol_version_string),
(_bfd_nosymbols_bfd_is_local_label_name),
(_bfd_nosymbols_get_lineno, _bfd_nosymbols_find_nearest_line),
(_bfd_nosymbols_find_line, _bfd_nosymbols_find_inliner_info),
(_bfd_nosymbols_bfd_make_debug_symbol),
( _bfd_nosymbols_read_minisymbols),
( _bfd_nosymbols_minisymbol_to_symbol),
(_bfd_nodynamic_get_synthetic_symtab): New functions.
* libbfd-in.h: Declare new functions. Update existing defines,
removing casts.
* aix386-core.c: Update to use new hooks. Formatting.
* aout-adobe.c: Likewise.
* aout-arm.c: Likewise.
* aout-target.h: Likewise.
* aout-tic30.c: Likewise.
* aoutf1.h: Likewise.
* binary.c: Likewise.
* bout.c: Likewise.
* cisco-core.c: Likewise.
* coff-alpha.c: Likewise.
* coff-i386.c: Likewise.
* coff-i860.c: Likewise.
* coff-i960.c: Likewise.
* coff-ia64.c: Likewise.
* coff-mips.c: Likewise.
* coff-ppc.c: Likewise.
* coff-rs6000.c: Likewise.
* coff-sh.c: Likewise.
* coff-tic30.c: Likewise.
* coff-tic54x.c: Likewise.
* coff-x86_64.c: Likewise.
* coff64-rs6000.c: Likewise.
* coffcode.h: Likewise.
* elf-m10300.c: Likewise.
* elf32-cr16.c: Likewise.
* elf32-lm32.c: Likewise.
* elf32-m32r.c: Likewise.
* elf32-metag.c: Likewise.
* elf32-score.c: Likewise.
* elf32-score7.c: Likewise.
* elf32-tilepro.c: Likewise.
* elf32-xstormy16.c: Likewise.
* elf32-xtensa.c: Likewise.
* elf64-alpha.c: Likewise.
* elf64-hppa.c: Likewise.
* elf64-ia64-vms.c: Likewise.
* elf64-mmix.c: Likewise.
* elf64-sh64.c: Likewise.
* elfnn-ia64.c: Likewise.
* elfxx-sparc.c: Likewise.
* elfxx-target.h: Likewise.
* elfxx-tilegx.c: Likewise.
* elfxx-x86.h: Likewise.
* hp300hpux.c: Likewise.
* hppabsd-core.c: Likewise.
* hpux-core.c: Likewise.
* i386msdos.c: Likewise.
* i386os9k.c: Likewise.
* ieee.c: Likewise.
* ihex.c: Likewise.
* irix-core.c: Likewise.
* libaout.h: Likewise.
* libecoff.h: Likewise.
* mach-o-target.c: Likewise.
* mach-o.c: Likewise.
* mipsbsd.c: Likewise.
* mmo.c: Likewise.
* netbsd-core.c: Likewise.
* nlm-target.h: Likewise.
* oasys.c: Likewise.
* osf-core.c: Likewise.
* pdp11.c: Likewise.
* pe-mips.c: Likewise.
* pe-x86_64.c: Likewise.
* pef.c: Likewise.
* plugin.c: Likewise.
* ppcboot.c: Likewise.
* ptrace-core.c: Likewise.
* sco5-core.c: Likewise.
* som.c: Likewise.
* sparclynx.c: Likewise.
* srec.c: Likewise.
* tekhex.c: Likewise.
* trad-core.c: Likewise.
* verilog.c: Likewise.
* versados.c: Likewise.
* vms-alpha.c: Likewise.
* vms-lib.c: Likewise.
* wasm-module.c: Likewise.
* xsym.c: Likewise.
* libbfd.h: Regenerate.
commit 3281b315c89caf1d539a316e41cc095e46482f75
Author: Sriraman Tallam <tmsriram@google.com>
Date: Thu Feb 15 17:35:16 2018 -0800
Fix symbol resolution with linker plugins for defsym symbols.
2018-02-07 Sriraman Tallam <tmsriram@google.com>
* expression.cc (Symbol_expression::set_expr_sym_in_real_elf):
New method.
(Unary_expression::set_expr_sym_in_real_elf): New method.
(Binary_expression::set_expr_sym_in_real_elf): New method.
(Trinary_expression::set_expr_sym_in_real_elf): New method.
* plugin.cc (get_symbol_resolution_info): Fix symbol resolution if
defined or used in defsyms.
* plugin.h (Plugin_manager::is_defsym_def): New method.
(Plugin_manager::Plugin_manager): Initialize defsym_defines_set_.
(Plugin_manager::defsym_defines_set_): New member.
(Plugin_manager::Defsym_defines_set): New typedef.
* script.cc (Script_options::set_defsym_uses_in_real_elf): New method.
(Script_options::find_defsym_defs): New method.
* script.h (Expression::set_expr_sym_in_real_elf): New method.
(Symbol_assignment::is_defsym): New method.
(Symbol_assignment::value): New method.
(Script_options::find_defsym_defs): New method.
(Script_options::set_defsym_uses_in_real_elf): New method.
* testsuite/Makefile.am (plugin_test_defsym): New test.
* testsuite/Makefile.in: Regenerate.
* testsuite/plugin_test.c: Check for new symbol resolution.
* testsuite/plugin_test_defsym.sh: New script.
* testsuite/plugin_test_defsym.c: New test source.
commit 43859909e2982252d136e19258431f3aa8afb890
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Feb 16 00:00:41 2018 +0000
Automatic date update in version.in
commit 09ca4b9d9bd61ecb779386a6cc7796cb05dde1af
Author: Jim Wilson <jimw@sifive.com>
Date: Thu Feb 15 13:48:38 2018 -0800
RISC-V: Fix relocation failure with zero address sections.
bfd/
* elfnn-riscv.c (_bfd_riscv_relax_section): Ifdef out check to ignore
symbols whose section address is zero.
commit 2a0d98534964649bc6884b7833c6c4089159a6df
Author: Jim Wilson <jimw@sifive.com>
Date: Thu Feb 15 10:53:46 2018 -0800
RISC-V: Give error for ignored pcrel_lo addend.
bfd/
* elfnn-riscv.c (riscv_elf_relocate_section): Use bfd_reloc_dangerous
when pcrel_lo reloc has an addend. Use reloc_dangerous callback for
bfd_reloc_dangerous. Use einfo instead of warning callback for errors.
Add %X%P to error messages.
ld/
* testsuite/ld-riscv-elf/ld-riscv-elf.exp: Run pcrel-lo-addend test.
* testsuite/ld-riscv-elf/pcrel-lo-addend.d: New.
* testsuite/ld-riscv-elf/pcrel-lo-addend.s: New.
commit 49ded53def53ae60926433b924db9525aae1e631
Author: Tamar Christina <tamar.christina@arm.com>
Date: Thu Feb 15 17:08:14 2018 +0000
Fix AArch32 build attributes for Armv8.4-A.
The build attribute number for Armv8.4-A is currently incorrectly set to that of Armv8-M.
This patch fixes that by setting it as part of the Armv8-A family and adds a test for it.
gas/
2018-02-15 Tamar Christina <tamar.christina@arm.com>
* config/tc-arm.c (cpu_arch_ver): Renumber ARM_ARCH_V8_4A.
* testsuite/gas/arm/attr-march-armv8_4-a.d: New.
commit e513bd38a6b91401947d90ba5f301f01d3991b8e
Author: Eric Botcazou <ebotcazou@gcc.gnu.org>
Date: Thu Feb 15 15:55:11 2018 +0100
PR ld/22832 on SPARC.
The fix for PR ld/22727 on SPARC passed TRUE as the 'create' argument
in the call to bfd_link_hash_lookup. It turns out this was a bad idea
because, if the symbol is created at this point, the link will abort
later in elf_link_output_extsym. This changes the TRUE into a FALSE
and puts an assertion on the result of the call, making it easier to
debug the issue; that's exactly in keeping with what Gold does.
bfd/
* elfxx-sparc.c (_bfd_sparc_elf_check_relocs) <R_SPARC_TLS_GD_CALL>:
Pass FALSE instead of TRUE as 'create' argument to bfd_link_hash_lookup
and assert that the result of the call is not NULL.
commit 85046ae23f853bfd01db6b4a840e80220487bffd
Author: Yao Qi <yao.qi@linaro.org>
Date: Thu Feb 15 14:48:30 2018 +0000
Reset inferior::control on inferior exit
When we kill an inferior, the inferior is not deleted. What is more, it
is reused when the new process is created, so we need to reset inferior's
state when it exits.
gdb:
2018-02-15 Yao Qi <yao.qi@linaro.org>
PR gdb/22849
* inferior.c (exit_inferior_1): Reset inf->control.
commit 355c559b74518b67eb113e635363cc890058746c
Author: Joel Brobecker <brobecker@adacore.com>
Date: Wed Feb 14 22:58:48 2018 -0500
delete ada-lang.c::ada_to_fixed_value_create advance declaration
This advance declaration really isn't necesary, since the implementation
of this function comes before the first reference to it.
gdb/ChangeLog:
* ada-lang.c (ada_to_fixed_value_create): Delete advance
declaration.
Tested by rebuilding GDB.
commit 074bca956e20b7c0044df9ae2f41d5fda2ae1026
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Feb 15 00:00:29 2018 +0000
Automatic date update in version.in
commit 980548fd880338d2cdf4ce641ca39632dc040426
Author: Pedro Alves <palves@redhat.com>
Date: Wed Feb 14 18:59:00 2018 +0000
Fix GDB crash after Quit thrown from unwinder sniffer
I ran into a GDB crash in gdb.base/bp-cmds-continue-ctrl-c.exp in my
multi-target branch, which turns out exposed a bug that exists in
master too.
That testcase has a breakpoint with a "continue" command associated.
Then the breakpoint is constantly being hit. At the same time, the
testcase is continualy interrupting the program with Ctrl-C, and
re-resuming it, in a loop.
Running that testcase manually under Valgrind, after a few sequences
of 'Ctrl-C' + 'continue', I got:
Breakpoint 1, Quit
(gdb) ==21270== Invalid read of size 8
==21270== at 0x4D8185: pyuw_this_id(frame_info*, void**, frame_id*) (py-unwind.c:461)
==21270== by 0x6D426A: compute_frame_id(frame_info*) (frame.c:505)
==21270== by 0x6D43B7: get_frame_id(frame_info*) (frame.c:537)
==21270== by 0x84F3B8: scoped_restore_current_thread::scoped_restore_current_thread() (thread.c:1678)
==21270== by 0x718E3D: fetch_inferior_event(void*) (infrun.c:4076)
==21270== by 0x7067C9: inferior_event_handler(inferior_event_type, void*) (inf-loop.c:43)
==21270== by 0x45BEF9: handle_target_event(int, void*) (linux-nat.c:4419)
==21270== by 0x6C4255: handle_file_event(file_handler*, int) (event-loop.c:733)
==21270== by 0x6C47F8: gdb_wait_for_event(int) (event-loop.c:859)
==21270== by 0x6C3666: gdb_do_one_event() (event-loop.c:322)
==21270== by 0x6C3712: start_event_loop() (event-loop.c:371)
==21270== by 0x746801: captured_command_loop() (main.c:329)
==21270== Address 0x0 is not stack'd, malloc'd or (recently) free'd
==21270==
==21270==
==21270== Process terminating with default action of signal 11 (SIGSEGV): dumping core
==21270== Access not within mapped region at address 0x0
==21270== at 0x4D8185: pyuw_this_id(frame_info*, void**, frame_id*) (py-unwind.c:461)
==21270== by 0x6D426A: compute_frame_id(frame_info*) (frame.c:505)
==21270== by 0x6D43B7: get_frame_id(frame_info*) (frame.c:537)
==21270== by 0x84F3B8: scoped_restore_current_thread::scoped_restore_current_thread() (thread.c:1678)
==21270== by 0x718E3D: fetch_inferior_event(void*) (infrun.c:4076)
==21270== by 0x7067C9: inferior_event_handler(inferior_event_type, void*) (inf-loop.c:43)
==21270== by 0x45BEF9: handle_target_event(int, void*) (linux-nat.c:4419)
==21270== by 0x6C4255: handle_file_event(file_handler*, int) (event-loop.c:733)
==21270== by 0x6C47F8: gdb_wait_for_event(int) (event-loop.c:859)
==21270== by 0x6C3666: gdb_do_one_event() (event-loop.c:322)
==21270== by 0x6C3712: start_event_loop() (event-loop.c:371)
==21270== by 0x746801: captured_command_loop() (main.c:329)
==21270== If you believe this happened as a result of a stack
==21270== overflow in your program's main thread (unlikely but
==21270== possible), you can try to increase the size of the
==21270== main thread stack using the --main-stacksize= flag.
==21270== The main thread stack size used in this run was 8388608.
==21270==
Above, when we get to compute_frame_id, fi->unwind is non-NULL,
meaning, we found an unwinder, in this case the Python unwinder, but
somehow, fi->prologue_cache is left NULL. pyuw_this_id then crashes
because it assumes fi->prologue_cache is non-NULL:
static void
pyuw_this_id (struct frame_info *this_frame, void **cache_ptr,
struct frame_id *this_id)
{
*this_id = ((cached_frame_info *) *cache_ptr)->frame_id;
^^^^^^^^^^
'*cache_ptr' here is 'fi->prologue_cache'.
There's a quit() call in pyuw_sniffer that I believe is the one that
sometimes triggers the crash above. The crash can be reproduced
easily with this hack to force a quit out of the python unwinder:
--- a/gdb/python/py-unwind.c
+++ b/gdb/python/py-unwind.c
@@ -497,6 +497,8 @@ pyuw_sniffer (const struct frame_unwind *self, struct frame_info *this_frame,
struct gdbarch *gdbarch = (struct gdbarch *) (self->unwind_data);
cached_frame_info *cached_frame;
+ quit ();
+
gdbpy_enter enter_py (gdbarch, current_language);
TRACE_PY_UNWIND (3, "%s (SP=%s, PC=%s)\n", __FUNCTION__,
After that quit is thrown, any subsequent operation that involves
unwinding results in GDB crashing with SIGSEGV like above.
The problem is that this commit:
commit 30a9c02feff56bd58a276c2a7262f364baa558ac
CommitDate: Sun Oct 8 23:16:42 2017 -0600
Subject: Remove cleanup from frame_prepare_for_sniffer
missed that we need to call frame_cleanup_after_sniffer before
rethrowing the exception too.
Without the fix, the "bt" added to
gdb.base/bp-cmds-continue-ctrl-c.exp in this commit makes GDB crash:
Running src/gdb/testsuite/gdb.base/bp-cmds-continue-ctrl-c.exp ...
ERROR: Process no longer exists
gdb/ChangeLog:
2018-02-14 Pedro Alves <palves@redhat.com>
* frame-unwind.c (frame_unwind_try_unwinder): Always call
frame_cleanup_after_sniffer on exception.
gdb/testsuite/ChangeLog:
2018-02-14 Pedro Alves <palves@redhat.com>
* gdb.base/bp-cmds-continue-ctrl-c.exp (do_test): Test "bt" after
getting a "Quit".
commit 692d6f9760bc67b68a5c96baac47067fd7dfa711
Author: Tom Tromey <tom@tromey.com>
Date: Tue Feb 13 13:34:45 2018 -0700
Constify target_so_ops::bfd_open
This constifies the bfd_open method of struct target_so_ops.
gdb/ChangeLog
2018-02-14 Tom Tromey <tom@tromey.com>
* solist.h (struct target_so_ops) <bfd_open>: Make pathname
const.
(solib_bfd_open): Make pathname const.
* solib.c (solib_bfd_open): Make pathname const.
* solib-spu.c (spu_bfd_fopen): Make name const.
(spu_bfd_open): Make pathname const.
* solib-darwin.c (darwin_bfd_open): Make pathname const.
* solib-aix.c (solib_aix_bfd_open): Make pathname const.
commit e0cc99a62f9ceb9a0db0b5bc28711fd8c82a6151
Author: Tom Tromey <tom@tromey.com>
Date: Fri Nov 10 13:47:05 2017 -0700
Change openp et al to use a unique_xmalloc_ptr
This changes openp, source_full_path_of, and find_and_open_source to
take a unique_xmalloc_ptr, rather than a char*, as an outgoing
argument type. This simplifies the API, ownership-wise, and allows
for the removal of some cleanups.
gdb/ChangeLog
2018-02-14 Tom Tromey <tom@tromey.com>
* symfile.c (symfile_bfd_open): Update.
* source.h (openp, source_full_path_of, find_and_open_source):
Change argument type to unique_xmalloc_ptr.
* source.c (openp): Take a unique_xmalloc_ptr.
(source_full_path_of, find_and_open_source): Likewise.
(open_source_file, symtab_to_fullname): Update.
* solist.h (struct target_so_ops) <find_and_open_solib>: Take a
unique_xmalloc_ptr.
* solib.c (solib_find_1): Use unique_xmalloc_ptr.
(exec_file_find): Update.
* psymtab.c (psymtab_to_fullname): Update.
* nto-tdep.h (nto_find_and_open_solib): Update.
* nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
unique_xmalloc_ptr.
* exec.c (exec_file_attach): Update.
* dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
* cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
commit b46a8d7c1d50c06e641af99b58301db0499111b9
Author: Tom Tromey <tom@tromey.com>
Date: Fri Nov 10 13:21:10 2017 -0700
Move some declarations to source.h
I noticed a few declarations in defs.h that really could be put into
source.h. I think it's generally preferable to something out of
defs.h unless it is needed by most of the files in gdb.
gdb/ChangeLog
2018-02-14 Tom Tromey <tom@tromey.com>
* solib.c: Include source.h.
* nto-tdep.c: Include source.h.
* mi/mi-cmd-env.c: Include source.h.
* infcmd.c: Include source.h.
* exec.c: Include source.h.
* defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
(add_path, directory_switch, source_path, init_source_path): Move
declarations...
* source.h (enum openp_flag, openp, source_full_path_of, mod_path)
(add_path, directory_switch, source_path, init_source_path):
...here.
commit 797bc1cb25b9dbdbc663cf711aecb0acc2450276
Author: Tom Tromey <tom@tromey.com>
Date: Fri Nov 10 13:07:46 2017 -0700
Return unique_xmalloc_ptr from some solib.c functions
This changes a couple of solib.c functions -- exec_file_find and
solib_find -- to return a unique_xmalloc_ptr, and then fixes up the
users. This allows the removal of some cleanups.
This also changes solib_bfd_open to not take ownership of its
argument. I think this change is somewhat cleaner.
gdb/ChangeLog
2018-02-14 Tom Tromey <tom@tromey.com>
* solist.h (exec_file_find, solib_find): Return
unique_xmalloc_ptr.
(solib_bfd_fopen): Take a const char *.
* solib.c (solib_find_1): Return unique_xmalloc_ptr.
(exec_file_find, solib_find): Likewise.
(solib_bfd_fopen): Do not take ownership of "pathname".
(solib_bfd_open): Use unique_xmalloc_ptr.
* solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
* solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
* infrun.c (follow_exec): Use unique_xmalloc_ptr.
* exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
commit 12ef3f5a7c5a6b89964842fd3da047b8d07dec91
Author: Nick Clifton <nickc@redhat.com>
Date: Wed Feb 14 14:56:21 2018 +0000
Fix compilation of the BFD sub-directory with a gcc v8 compiler by adding extra casts.
GCC v8 issues warnings about mis-matching casts of function pointers.
A previous patch tried to fix this problem by adding new dummy functions
which accepted a variable number of arguments. But this introduces serious
problems when compiled with other versions of gcc, (notably gcc 4.4). This
patch reverts that previous solution and instead adds extra casts (to
function types without a parameter list).
For more details see: https://sourceware.org/ml/binutils/2018-02/msg00198.html
PR 22823
Revert previous delta. Add extra casts to avoid compile time
warnings instead.
* libbfd-in.h (_bfd_generic_bfd_copy_private_bfd_data): Add extra
cast to avoid warning from gcc v8 compiler.
(_bfd_generic_bfd_merge_private_bfd_data): Likewise.
(_bfd_generic_bfd_set_private_flags): Likewise.
(_bfd_generic_bfd_copy_private_section_data): Likewise.
(_bfd_generic_bfd_copy_private_symbol_data): Likewise.
(_bfd_generic_bfd_copy_private_header_data): Likewise.
(_bfd_generic_bfd_print_private_bfd_data): Likewise.
(_bfd_noarchive_construct_extended_name_table): Likewise.
(_bfd_noarchive_truncate_arname): Likewise.
(_bfd_noarchive_write_ar_hdr): Likewise.
(_bfd_noarchive_get_elt_at_index): Likewise.
(_bfd_nosymbols_canonicalize_symtab): Likewise.
(_bfd_nosymbols_print_symbol): Likewise.
(_bfd_nosymbols_get_symbol_info): Likewise.
(_bfd_nosymbols_get_symbol_version_string): Likewise.
(_bfd_nosymbols_bfd_is_local_label_name): Likewise.
(_bfd_nosymbols_bfd_is_target_special_symbol): Likewise.
(_bfd_nosymbols_get_lineno): Likewise.
(_bfd_nosymbols_find_nearest_line): Likewise.
(_bfd_nosymbols_find_line): Likewise.
(_bfd_nosymbols_find_inliner_info): Likewise.
(_bfd_nosymbols_bfd_make_debug_symbol): Likewise.
(_bfd_nosymbols_read_minisymbols): Likewise.
(_bfd_nosymbols_minisymbol_to_symbol): Likewise.
(_bfd_norelocs_bfd_reloc_type_lookup): Likewise.
(_bfd_norelocs_bfd_reloc_name_lookup): Likewise.
(_bfd_nowrite_set_arch_mach): Likewise.
(_bfd_nowrite_set_section_contents): Likewise.
(_bfd_nolink_sizeof_headers): Likewise.
(_bfd_nolink_bfd_get_relocated_section_contents): Likewise.
(_bfd_nolink_bfd_relax_section): Likewise.
(_bfd_nolink_bfd_gc_sections): Likewise.
(_bfd_nolink_bfd_lookup_section_flags): Likewise.
(_bfd_nolink_bfd_merge_sections): Likewise.
(_bfd_nolink_bfd_is_group_section): Likewise.
(_bfd_nolink_bfd_discard_group): Likewise.
(_bfd_nolink_bfd_link_hash_table_create): Likewise.
(_bfd_nolink_bfd_link_add_symbols): Likewise.
(_bfd_nolink_bfd_link_just_syms): Likewise.
(_bfd_nolink_bfd_copy_link_hash_symbol_type): Likewise.
(_bfd_nolink_bfd_final_link): Likewise.
(_bfd_nolink_bfd_link_split_section): Likewise.
(_bfd_nolink_section_already_linked): Likewise.
(_bfd_nolink_bfd_define_common_symbol): Likewise.
(_bfd_nolink_bfd_define_start_stop): Likewise.
(_bfd_nodynamic_canonicalize_dynamic_symtab): Likewise.
(_bfd_nodynamic_get_synthetic_symtab): Likewise.
(_bfd_nodynamic_get_dynamic_reloc_upper_bound _bfd_): Likewise.
(_bfd_nodynamic_canonicalize_dynamic_reloc): Likewise.
* libbfd.c (bfd_false_any): Delete.
(bfd_true_any, bfd_nullvoidptr_any, bfd_0_any): Delete.
(bfd_0u_any, bfd_0l_any, _bfd_n1_any, bfd_void_any): Delete.
* libbfd.h (extern): Regenerate
* aout-target.h (MY_bfd_is_target_special_symbol): Add extra
cast to avoid warning from gcc v8 compiler.
* aout-tic30.c (tic30_aout_set_arch_mach): Likewise.
* binary.c (binary_get_symbol_info): Likewise.
* coff-alpha.c (alpha_ecoff_backend_data): Likewise.
* coff-mips.c (mips_ecoff_backend_data): Likewise.
* coffcode.h (coff_set_alignment_hook): Likewise.
(symname_in_debug_hook): Likewise.
(bfd_coff_backend_data bigobj_swap_table): Likewise.
* elf-m10300.c (elf_backend_omit_section_dynsym): Likewise.
* elf32-cr16.c (elf_backend_omit_section_dynsym): Likewise.
* elf32-lm32.c (elf_backend_omit_section_dynsym): Likewise.
* elf32-m32r.c (elf_backend_omit_section_dynsym): Likewise.
* elf32-metag.c (elf_backend_omit_section_dynsym): Likewise.
* elf32-score.c (elf_backend_omit_section_dynsym): Likewise.
* elf32-score7.c (elf_backend_omit_section_dynsym): Likewise.
* elf32-xstormy16.c (elf_backend_omit_section_dynsym): Likewise.
* elf32-xtensa.c (elf_backend_omit_section_dynsym): Likewise.
* elf64-alpha.c (elf_backend_omit_section_dynsym): Likewise.
* elf64-hppa.c (elf_backend_omit_section_dynsym): Likewise.
* elf64-ia64-vms.c (elf_backend_omit_section_dynsym): Likewise.
* elf64-mmix.c (elf_backend_omit_section_dynsym): Likewise.
* elf64-sh64.c (elf_backend_omit_section_dynsym): Likewise.
* elfnn-ia64.c (elf_backend_omit_section_dynsym): Likewise.
* elfxx-target.h (bfd_elfNN_bfd_debug_info_accumulate): Likewise.
(bfd_elfNN_bfd_make_debug_symbol): Likewise.
(bfd_elfNN_bfd_merge_private_bfd_data): Likewise.
(bfd_elfNN_bfd_set_private_flags): Likewise.
(bfd_elfNN_bfd_is_target_special_symbol): Likewise.
(elf_backend_init_index_section): Likewise.
(elf_backend_allow_non_load_phdr): Likewise.
* elfxx-x86.h (elf_backend_omit_section_dynsym): Likewise.
* i386msdos.c (msdos_bfd_is_target_special_symbol): Likewise.
* ieee.c (ieee_construct_extended_name_table): Likewise.
(ieee_write_armap): Likewise.
(ieee_write_ar_hdr): Likewise.
(ieee_bfd_is_target_special_symbol): Likewise.
* ihex.c (ihex_canonicalize_symtab): Likewise.
(ihex_bfd_is_target_special_symbol): Likewise.
* libaout.h (aout_32_bfd_is_target_special_symbol): Likewise.
* libecoff.h (_bfd_ecoff_bfd_is_target_special_symbol): Likewise.
(_bfd_ecoff_set_alignment_hook): Likewise.
* mach-o-target.c (bfd_mach_o_bfd_is_target_special_symbol): Likewise.
* mmo.c (mmo_bfd_is_target_special_symbol): Likewise.
* nlm-target.h (nlm_bfd_is_target_special_symbol): Likewise.
* oasys.c (oasys_construct_extended_name_table): Likewise.
(oasys_write_armap): Likewise.
(oasys_write_ar_hdr): Likewise.
(oasys_bfd_is_target_special_symbol): Likewise.
* pef.c (bfd_pef_bfd_is_target_special_symbol): Likewise.
* plugin.c (bfd_plugin_bfd_is_target_special_symbol): Likewise.
* ppcboot.c (ppcboot_bfd_is_target_special_symbol): Likewise.
* som.c (som_bfd_is_target_special_symbol): Likewise.
* srec.c (srec_bfd_is_target_special_symbol): Likewise.
* tekhex.c (tekhex_bfd_is_target_special_symbol): Likewise.
* verilog.c (verilog_bfd_is_target_special_symbol): Likewise.
* versados.c (versados_bfd_is_target_special_symbol): Likewise.
(versados_bfd_reloc_name_lookup): Likewise.
* vms-alpha.c (vms_bfd_is_target_special_symbol): Likewise.
(vms_bfd_define_start_stop): Likewise.
(alpha_vms_bfd_is_target_special_symbol): Likewise.
* wasm-module.c (wasm_bfd_is_target_special_symbol): Likewise.
* xsym.c (bfd_sym_bfd_is_target_special_symbol): Likewise.
commit 451875b4f976a527395e9303224c7881b65e12ed
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Feb 14 03:50:40 2018 -0800
x86-64: Use PLT address for PC-relative reloc
Since PLT in PDE and PC-relative PLT in PIE can be used as function
address, there is no need for dynamic PC-relative relocation against
a dynamic function definition in PIE. Linker should resolve PC-relative
reference to its PLT address.
NB: i386 has non-PIC PLT and PIC PLT. Only non-PIC PLT in PDE can
be used as function address. PIC PLT in PIE can't be used as
function address.
bfd/
PR ld/22842
* elf32-i386.c (elf_i386_check_relocs): Pass FALSE for non
PC-relative PLT to NEED_DYNAMIC_RELOCATION_P.
* elf64-x86-64.c (elf_x86_64_check_relocs): Create PLT for
R_X86_64_PC32 reloc against dynamic function in data section.
Pass TRUE for PC-relative PLT to NEED_DYNAMIC_RELOCATION_P.
(elf_x86_64_relocate_section): Use PLT for R_X86_64_PC32 reloc
against dynamic function in data section.
* elfxx-x86.c (elf_x86_allocate_dynrelocs): Use PLT in PIE as
function address only if pcrel_plt is true.
(_bfd_x86_elf_link_hash_table_create): Set pcrel_plt.
* elfxx-x86.h (NEED_DYNAMIC_RELOCATION_P): Add PCREL_PLT for
PC-relative PLT. If PLT is PC-relative, don't generate dynamic
PC-relative relocation against a function definition in data
secton in PIE. Remove the obsolete comments.
(elf_x86_link_hash_table): Add pcrel_plt.
ld/
PR ld/22842
* testsuite/ld-i386/i386.exp: Run PR ld/22842 tests.
* testsuite/ld-x86-64/x86-64.exp: Likewise.
* testsuite/ld-i386/pr22842a.c: New file.
* testsuite/ld-i386/pr22842b.S: Likewise.
* testsuite/ld-x86-64/pr22842a.c: Likewise.
* testsuite/ld-x86-64/pr22842a.rd: Likewise.
* testsuite/ld-x86-64/pr22842b.S: Likewise.
* testsuite/ld-x86-64/pr22842b.rd: Likewise.
commit f98b2e334fcca666afaee3c6546b9fc91a4963d4
Author: Joel Brobecker <brobecker@adacore.com>
Date: Wed Feb 14 05:45:24 2018 -0500
Remove references to ada_name_for_lookup (deleted)
This function was deleted on 2017-11-08, but its declaration and
a reference to it in a comment was left behind. This patch just
removes those.
gdb/ChangeLog:
* ada-lang.c (name_match_type_from_name): Remove reference to
ada_name_for_lookup in function's documentation.
* ada-lang.h (ada_name_for_lookup): Delete declaration.
Tested by rebuilding GDB.
commit d4dd94f863014a0d2daf42d94f393d294e9baa7e
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed Feb 14 01:13:31 2018 -0800
LD: Remove a stale `ldlex_command' prototype
Complement commit d4e5e3c330d5 ("Use getopt instead of lex and yacc to
parse the command line.") and remove a stale `ldlex_command' prototype
for an inexistent function removed back in 1994.
ld/
* ldlex.h (ldlex_command): Remove prototype.
commit 85f2093ddc13e96585e9a44ee03b52f848ffbf75
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Tue Feb 13 20:32:19 2018 -0800
x86-64: Use pr22393-3a.so and pr22393-3a-now.so
They should be pr22393-3a.so and pr22393-3a-now.so, not pr22393-2a.so
and pr22393-2a-now.so. Since ld-elf/shared.exp creates pr22393-2a.so
and pr22393-2a-now.so, we won't notice the problem if x86-64.exp runs
after ld-elf/shared.exp.
* testsuite/ld-x86-64/x86-64.exp: Replace pr22393-2a.so and
pr22393-2a-now.so with pr22393-3a.so and pr22393-3a-now.so.
commit 60f763ee16fca2cd1ec9fa6960f765de9b26ef70
Author: Alan Modra <amodra@gmail.com>
Date: Wed Feb 14 11:38:03 2018 +1030
PR22836 testcases
PR 22836
* testsuite/ld-elf/pr22836-1.s: New file.
* testsuite/ld-elf/pr22836-1a.d: Likewise.
* testsuite/ld-elf/pr22836-1b.d: Likewise.
commit 9abc632d37bb6ab554da89301ab1cb65164ea4aa
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Feb 14 00:00:35 2018 +0000
Automatic date update in version.in
commit 1031c264fd23641111df1e12a35d0a8f7e82fb80
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Tue Feb 13 14:31:53 2018 -0800
x86: Properly check building shared library
If a symbol is not defined in a regular file, and we are not generating
a shared library, then set the symbol to its location in the .plt. This
is required to make function pointers compare as equal between the normal
executable and the shared library.
* elfxx-x86.c (elf_x86_allocate_dynrelocs): Check bfd_link_dll,
instead of bfd_link_pic, for building shared library.
commit db5d5ad16fb02ceb636ccef232ec846086c6cef3
Author: Max Filippov <jcmvbkbc@gmail.com>
Date: Sat Feb 10 21:59:54 2018 -0800
gas: xtensa: fix trampoline placement
For jumps requiring multiple trampolines trampoline placement code may
place multiple sequential trampolines into the same frag. Don't do that.
gas/
2018-02-13 Max Filippov <jcmvbkbc@gmail.com>
* config/tc-xtensa.c (xg_find_best_trampoline): Skip trampoline
frag that contains source address.
commit 24b9144d4ba83d37751786b08b48ad62fb7aef26
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Tue Feb 13 12:13:59 2018 -0500
Use enum flags for flags passed to openp
gdb/ChangeLog:
* defs.h (enum openp_flags): New enum.
(OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
Move to enum openp_flags.
(openp_flags): New enum flags.
(openp): Change parameter type to openp_flags.
* source.c (openp): Change parameter type to openp_flags.
* cli/cli-cmds.c (find_and_open_script): Use openp_flags.
* dwarf2read.c (try_open_dwop_file): Use openp_flags.
commit db7bf1058d28b2b5e931c60435a13f6db15df6af
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Feb 13 16:50:04 2018 +0000
Fix ARm assembler so that it rejects invalid immediate values for the Thumb ORR instruction.
PR 22773
* config/tc-arm.c (md_apply_fix): Test Rn field of Thumb ORR
instruction before assuming that it is a MOV instruction.
* testsuite/gas/arm/pr22773.s: New test.
* testsuite/gas/arm/pr22773.d: New test driver.
* testsuite/gas/arm/pr22773.l: New expected output.
commit bd7ab16b4537788ad53521c45469a1bdae84ad4a
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Tue Feb 13 07:34:22 2018 -0800
x86-64: Generate branch with PLT32 relocation
Since there is no need to prepare for PLT branch on x86-64, generate
R_X86_64_PLT32, instead of R_X86_64_PC32, if possible, which can be
used as a marker for 32-bit PC-relative branches.
To compile Linux kernel, this patch:
From: "H.J. Lu" <hjl.tools@gmail.com>
Subject: [PATCH] x86: Treat R_X86_64_PLT32 as R_X86_64_PC32
On i386, there are 2 types of PLTs, PIC and non-PIC. PIE and shared
objects must use PIC PLT. To use PIC PLT, you need to load
_GLOBAL_OFFSET_TABLE_ into EBX first. There is no need for that on
x86-64 since x86-64 uses PC-relative PLT.
On x86-64, for 32-bit PC-relative branches, we can generate PLT32
relocation, instead of PC32 relocation, which can also be used as
a marker for 32-bit PC-relative branches. Linker can always reduce
PLT32 relocation to PC32 if function is defined locally. Local
functions should use PC32 relocation. As far as Linux kernel is
concerned, R_X86_64_PLT32 can be treated the same as R_X86_64_PC32
since Linux kernel doesn't use PLT.
is needed. It is available on hjl/plt32/master branch at
https://github.com/hjl-tools/linux
bfd/
PR gas/22791
* elf64-x86-64.c (is_32bit_relative_branch): Removed.
(elf_x86_64_relocate_section): Check PIC relocations in PIE.
Remove is_32bit_relative_branch usage. Disallow PC32 reloc
against protected function in shared object.
gas/
PR gas/22791
* config/tc-i386.c (need_plt32_p): New function.
(output_jump): Generate BFD_RELOC_X86_64_PLT32 if possible.
(md_estimate_size_before_relax): Likewise.
* testsuite/gas/i386/reloc64.d: Updated.
* testsuite/gas/i386/x86-64-jump.d: Likewise.
* testsuite/gas/i386/x86-64-mpx-branch-1.d: Likewise.
* testsuite/gas/i386/x86-64-mpx-branch-2.d: Likewise.
* testsuite/gas/i386/x86-64-relax-2.d: Likewise.
* testsuite/gas/i386/x86-64-relax-3.d: Likewise.
* testsuite/gas/i386/ilp32/reloc64.d: Likewise.
* testsuite/gas/i386/ilp32/x86-64-branch.d: Likewise.
ld/
PR gas/22791
* testsuite/ld-x86-64/mpx1c.rd: Updated.
* testsuite/ld-x86-64/pr22791-1.err: New file.
* testsuite/ld-x86-64/pr22791-1a.c: Likewise.
* testsuite/ld-x86-64/pr22791-1b.s: Likewise.
* testsuite/ld-x86-64/pr22791-2.rd: Likewise.
* testsuite/ld-x86-64/pr22791-2a.s: Likewise.
* testsuite/ld-x86-64/pr22791-2b.c: Likewise.
* testsuite/ld-x86-64/pr22791-2c.s: Likewise.
* testsuite/ld-x86-64/x86-64.exp: Run PR ld/22791 tests.
commit 80c96350467f23a54546580b3e2b67a65ec65b66
Author: Sergei Trofimovich <slyfox@inbox.ru>
Date: Tue Feb 13 15:13:58 2018 +0000
Fix typo in Russian translation for the bfd/ sub-directory which could lead to a seg-fault in the linker.
PR 22828
* po/ru.po: Fix typo in Russian translation.
commit 68d206766637a041bbbeb89c8a1bfdd76317e192
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Feb 13 13:14:47 2018 +0000
Fix compile time warning messages from gcc version 8 about cast between incompatible function types.
PR 22823
bfd Fix compile time warnings generated by gcc version 8.
* libbfd-in.h: Remove extraneous text from prototypes.
Add prototypes for bfd_false_any, bfd_true_any,
bfd_nullvoidptr_any, bfd_0_any, bfd_0u_any, bfd_0l_any,
bfd_n1_any, bfd_void_any.
(_bfd_generic_bfd_copy_private_bfd_data): Use vararg based dummy
function.
(_bfd_generic_bfd_merge_private_bfd_data): Likewise.
(_bfd_generic_bfd_set_private_flags): Likewise.
(_bfd_generic_bfd_copy_private_section_data): Likewise.
(_bfd_generic_bfd_copy_private_symbol_data): Likewise.
(_bfd_generic_bfd_copy_private_header_data): Likewise.
(_bfd_generic_bfd_print_private_bfd_data): Likewise.
(_bfd_noarchive_construct_extended_name_table): Likewise.
(_bfd_noarchive_truncate_arname): Likewise.
(_bfd_noarchive_write_ar_hdr): Likewise.
(_bfd_noarchive_get_elt_at_index): Likewise.
(_bfd_nosymbols_canonicalize_symtab): Likewise.
(_bfd_nosymbols_print_symbol): Likewise.
(_bfd_nosymbols_get_symbol_info): Likewise.
(_bfd_nosymbols_get_symbol_version_string): Likewise.
(_bfd_nosymbols_bfd_is_local_label_name): Likewise.
(_bfd_nosymbols_bfd_is_target_special_symbol): Likewise.
(_bfd_nosymbols_get_lineno): Likewise.
(_bfd_nosymbols_find_nearest_line): Likewise.
(_bfd_nosymbols_find_line): Likewise.
(_bfd_nosymbols_find_inliner_info): Likewise.
(_bfd_nosymbols_bfd_make_debug_symbol): Likewise.
(_bfd_nosymbols_read_minisymbols): Likewise.
(_bfd_nosymbols_minisymbol_to_symbol): Likewise.
(_bfd_norelocs_bfd_reloc_type_lookup): Likewise.
(_bfd_norelocs_bfd_reloc_name_lookup): Likewise.
(_bfd_nowrite_set_arch_mach): Likewise.
(_bfd_nowrite_set_section_contents): Likewise.
(_bfd_nolink_sizeof_headers): Likewise.
(_bfd_nolink_bfd_get_relocated_section_contents): Likewise.
(_bfd_nolink_bfd_relax_section): Likewise.
(_bfd_nolink_bfd_gc_sections): Likewise.
(_bfd_nolink_bfd_lookup_section_flags): Likewise.
(_bfd_nolink_bfd_merge_sections): Likewise.
(_bfd_nolink_bfd_is_group_section): Likewise.
(_bfd_nolink_bfd_discard_group): Likewise.
(_bfd_nolink_bfd_link_hash_table_create): Likewise.
(_bfd_nolink_bfd_link_add_symbols): Likewise.
(_bfd_nolink_bfd_link_just_syms): Likewise.
(_bfd_nolink_bfd_copy_link_hash_symbol_type): Likewise.
(_bfd_nolink_bfd_final_link): Likewise.
(_bfd_nolink_bfd_link_split_section): Likewise.
(_bfd_nolink_section_already_linked): Likewise.
(_bfd_nolink_bfd_define_common_symbol): Likewise.
(_bfd_nolink_bfd_define_start_stop): Likewise.
(_bfd_nodynamic_canonicalize_dynamic_symtab): Likewise.
(_bfd_nodynamic_get_synthetic_symtab): Likewise.
(_bfd_nodynamic_get_dynamic_reloc_upper_bound _bfd_): Likewise.
(_bfd_nodynamic_canonicalize_dynamic_reloc): Likewise.
* libbfd.c (bfd_false_any): New function. Like bfd_false but
accepts one or more arguments.
(bfd_true_any): Likewise.
(bfd_nullvoidptr_any): Likewise.
(bfd_0_any): Likewise.
(bfd_0u_any): Likewise.
(bfd_0l_any): Likewise.
(_bfd_n1_any): Likewise.
(bfd_void_any): Likewise.
* libbfd.h (extern): Regenerate
* aout-target.h (MY_bfd_is_target_special_symbol): Use vararg
based dummy function.
* aout-tic30.c (tic30_aout_set_arch_mach): Likewise.
* binary.c (binary_get_symbol_info): Likewise.
* coff-alpha.c (alpha_ecoff_backend_data): Likewise.
* coff-mips.c (mips_ecoff_backend_data): Likewise.
* coffcode.h (coff_set_alignment_hook): Likewise.
(symname_in_debug_hook): Likewise.
(bfd_coff_backend_data bigobj_swap_table): Likewise.
* elf-m10300.c (elf_backend_omit_section_dynsym): Likewise.
* elf32-cr16.c (elf_backend_omit_section_dynsym): Likewise.
* elf32-lm32.c (elf_backend_omit_section_dynsym): Likewise.
* elf32-m32r.c (elf_backend_omit_section_dynsym): Likewise.
* elf32-metag.c (elf_backend_omit_section_dynsym): Likewise.
* elf32-score.c (elf_backend_omit_section_dynsym): Likewise.
* elf32-score7.c (elf_backend_omit_section_dynsym): Likewise.
* elf32-xstormy16.c (elf_backend_omit_section_dynsym): Likewise.
* elf32-xtensa.c (elf_backend_omit_section_dynsym): Likewise.
* elf64-alpha.c (elf_backend_omit_section_dynsym): Likewise.
* elf64-hppa.c (elf_backend_omit_section_dynsym): Likewise.
* elf64-ia64-vms.c (elf_backend_omit_section_dynsym): Likewise.
* elf64-mmix.c (elf_backend_omit_section_dynsym): Likewise.
* elf64-sh64.c (elf_backend_omit_section_dynsym): Likewise.
* elfnn-ia64.c (elf_backend_omit_section_dynsym): Likewise.
* elfxx-target.h (bfd_elfNN_bfd_debug_info_accumulate): Likewise.
(bfd_elfNN_bfd_make_debug_symbol): Likewise.
(bfd_elfNN_bfd_merge_private_bfd_data): Likewise.
(bfd_elfNN_bfd_set_private_flags): Likewise.
(bfd_elfNN_bfd_is_target_special_symbol): Likewise.
(elf_backend_init_index_section): Likewise.
(elf_backend_allow_non_load_phdr): Likewise.
* elfxx-x86.h (elf_backend_omit_section_dynsym): Likewise.
* i386msdos.c (msdos_bfd_is_target_special_symbol): Likewise.
* ieee.c (ieee_construct_extended_name_table): Likewise.
(ieee_write_armap): Likewise.
(ieee_write_ar_hdr): Likewise.
(ieee_bfd_is_target_special_symbol): Likewise.
* ihex.c (ihex_canonicalize_symtab): Likewise.
(ihex_bfd_is_target_special_symbol): Likewise.
* libaout.h (aout_32_bfd_is_target_special_symbol): Likewise.
* libecoff.h (_bfd_ecoff_bfd_is_target_special_symbol): Likewise.
(_bfd_ecoff_set_alignment_hook): Likewise.
* mach-o-target.c (bfd_mach_o_bfd_is_target_special_symbol): Likewise.
* mmo.c (mmo_bfd_is_target_special_symbol): Likewise.
* nlm-target.h (nlm_bfd_is_target_special_symbol): Likewise.
* oasys.c (oasys_construct_extended_name_table): Likewise.
(oasys_write_armap): Likewise.
(oasys_write_ar_hdr): Likewise.
(oasys_bfd_is_target_special_symbol): Likewise.
* pef.c (bfd_pef_bfd_is_target_special_symbol): Likewise.
* plugin.c (bfd_plugin_bfd_is_target_special_symbol): Likewise.
* ppcboot.c (ppcboot_bfd_is_target_special_symbol): Likewise.
* som.c (som_bfd_is_target_special_symbol): Likewise.
* srec.c (srec_bfd_is_target_special_symbol): Likewise.
* tekhex.c (tekhex_bfd_is_target_special_symbol): Likewise.
* verilog.c (verilog_bfd_is_target_special_symbol): Likewise.
* versados.c (versados_bfd_is_target_special_symbol): Likewise.
(versados_bfd_reloc_name_lookup): Likewise.
* vms-alpha.c (vms_bfd_is_target_special_symbol): Likewise.
(vms_bfd_define_start_stop): Likewise.
(alpha_vms_bfd_is_target_special_symbol): Likewise.
* wasm-module.c (wasm_bfd_is_target_special_symbol): Likewise.
* xsym.c (bfd_sym_bfd_is_target_special_symbol): Likewise.
* elf32-arc.c (get_replace_function): Assign replacement function
to func pointer.
* elf32-i370.c (i370_noop): Update prototype.
gas * config/obj-elf.c (elf_pseudo_table): Remove now redundant
casts.
(obj_elf_vtable_inherit): Rename to obj_elf_get_vtable_inherit.
(obj_elf_vtable_inherit): New stub function that calls
obj_elf_get_vtable_inherit.
(obj_elf_vtable_entry): Rename to obj_elf_get_vtable_entry.
(obj_elf_vtable_entry): New stub function that calls
obj_elf_get_vtable_entry.
* config/obj-elf.h (obj_elf_vtable_inherit): Update prototype.
(obj_elf_vtable_entry) Likewise.
(obj_elf_get_vtable_inherit) Likewise.
(obj_elf_get_vtable_entry) Likewise.
* config/tc-arm.c (md_pseudo_table): Remove now redundant cast.
* config/tc-i386c (md_pseudo_table): Likewise.
* config/tc-hppa.c (pa_vtable_entry): Call
obj_elf_get_vtable_entry.
(pa_vtable_inherit): Call obj_elf_get_vtable_inherit.
* config/tc-mips.c (s_mips_file): Replace call to dwarf2_get_file
with call to dwarf2_get_filename.
* dwarf2dbg.c (dwarf2_directive_file): Rename to
dwarf2_directive_filename.
(dwarf2_directive_file): New stub function that calls
dwarf2_directive_filename.
* dwarf2dbg.h: Prototype dwarf2_directive_filename.
opcodes * metag-dis.c (print_fmmov): Double buffer size to avoid warning
about truncation of printing.
commit b29d26411c62fef6b1401aff4f2c6a157053de4d
Author: Maciej W. Rozycki <macro@mips.com>
Date: Tue Feb 13 12:56:29 2018 +0000
WebAssembly: Disable subdirectory configuration for unsupported LD
Remove an LD subdirectory configuration error:
*** ld does not support target wasm32-unknown-none
*** see ld/configure.tgt for supported targets
make[1]: *** [configure-ld] Error 1
which prevents binutils for the WebAssembly target from being built
unless an explicit `--disable-ld' configuration option has been given.
Users must not have to disable features selected by default to get a
working configuration.
/
* configure.ac <wasm32-*-*> (noconfigdirs): Add `ld'.
* configure: Regenerate.
commit 87993319a56af838d3ab7e251fa4902476ca63c8
Author: Maciej W. Rozycki <macro@mips.com>
Date: Tue Feb 13 12:56:29 2018 +0000
WebAssembly: Correct an `index' global shadowing error for pre-4.8 GCC
Remove `-Wshadow' compilation errors:
cc1: warnings being treated as errors
.../bfd/wasm-module.c: In function 'wasm_scan_name_function_section':
.../bfd/wasm-module.c:312: error: declaration of 'index' shadows a global declaration
/usr/include/string.h:303: error: shadowed declaration is here
.../bfd/wasm-module.c: In function 'wasm_register_section':
.../bfd/wasm-module.c:494: error: declaration of 'index' shadows a global declaration
/usr/include/string.h:303: error: shadowed declaration is here
.../bfd/wasm-module.c: In function 'wasm_compute_custom_section_file_position':
.../bfd/wasm-module.c:523: error: declaration of 'index' shadows a global declaration
/usr/include/string.h:303: error: shadowed declaration is here
and:
cc1: warnings being treated as errors
.../opcodes/wasm32-dis.c: In function 'print_insn_wasm32':
.../opcodes/wasm32-dis.c:272: error: declaration of 'index' shadows a global declaration
/usr/include/string.h:303: error: shadowed declaration is here
make[4]: *** [wasm32-dis.lo] Error 1
which for versions of GCC before 4.8 prevent support for the WebAssembly
target from being built. See also GCC PR c/53066.
bfd/
* wasm-module.c (wasm_scan_name_function_section): Rename
`index' local variable to `idx'.
opcodes/
* wasm32-dis.c (print_insn_wasm32): Rename `index' local
variable to `function_index'.
commit 30147392ca2b686b17e022a9cf8bbbddae785ff1
Author: Maciej W. Rozycki <macro@mips.com>
Date: Tue Feb 13 12:56:29 2018 +0000
MIPS/GAS/testsuite: Correct duplicate `Loongson-3A tests' test name
Correct a duplicate `Loongson-3A tests' GAS test name introduced with
commit 986754024085 ("Add Loongson3A specific instructions"),
<https://sourceware.org/ml/binutils/2010-12/msg00447.html>, shared
between gas/testsuite/gas/mips/loongson-3a.d and
gas/testsuite/gas/mips/loongson-3a-2.d.
gas/
* testsuite/gas/mips/loongson-3a-2.d: Rename test.
commit 6e5e9d58c1eeef5677c90886578a895cb8c164c5
Author: Alan Modra <amodra@gmail.com>
Date: Tue Feb 13 14:09:48 2018 +1030
PR22836, "-r -s" doesn't work with -g3 using GCC 7
This fixes the case where all of a group is removed with ld -r, the
situation in the PR, and failures where part of a group is removed
that contain relocs.
bfd/
PR 22836
* elf.c (_bfd_elf_fixup_group_sections): Account for removed
relocation sections. If size reduces to just the flag word,
remove that too and mark with SEC_EXCLUDE.
* elflink.c (bfd_elf_final_link): Strip empty group sections.
binutils/
* testsuite/binutils-all/group-7.s,
* testsuite/binutils-all/group-7a.d,
* testsuite/binutils-all/group-7b.d,
* testsuite/binutils-all/group-7c.d: New tests.
* testsuite/binutils-all/objcopy.exp: Run them.
ld/
* testsuite/ld-elf/pr22836-2.d,
* testsuite/ld-elf/pr22836-2.s: New test.
commit f2731e0c374e5323ce4cdae2bcc7b7fe22da1a6f
Author: Alan Modra <amodra@gmail.com>
Date: Mon Feb 12 13:06:07 2018 +1030
PR22829, objcopy/strip removes PT_GNU_RELRO from lld binaries
lld lays out the relro segment differently to GNU ld, not bothering to
include the first few bytes of .got.plt and padding out to a page at
the end of the segment. This patch teaches binutils to recognize the
different (and somewhat inferior) layout as valid.
bfd/
PR 22829
* elf.c (assign_file_positions_for_non_load_sections): Rewrite
PT_GNU_RELRO setup.
ld/
* testsuite/ld-x86-64/pr14207.d: Adjust relro p_filesz.
commit 387cd15b93fdca3a66bbda427c4e1d9340bfb532
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date: Tue Feb 13 00:32:53 2018 -0500
Fix prefix of maint set/show per-command
I noticed this:
(gdb) apropos per-command
maintenance set per-command -- Per-command statistics settings
set per-command space -- Set whether to display per-command space usage
set per-command symtab -- Set whether to display per-command symtab statistics
set per-command time -- Set whether to display per-command execution time
maintenance show per-command -- Show per-command statistics settings
show per-command space -- Show whether to display per-command space usage
show per-command symtab -- Show whether to display per-command symtab statistics
show per-command time -- Show whether to display per-command execution time
The subcommands of "maintenance set per-command" are missing the
maintenance keyword. This is because that command is registered with
the wrong prefix. This patch fixes that.
gdb/ChangeLog:
* maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
per-command.
commit 0f3f3a55b561e8560a6df2560363143751b5d9af
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Feb 13 00:00:35 2018 +0000
Automatic date update in version.in
commit b303c6f688c6cd1ffd986ae65ac3f2dc11f27b93
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Mon Feb 5 17:13:17 2018 +0000
gdb: Remove cleanup from dw2_do_instantiate_symtab
When running the test gdb.dwarf2/dw2-bad-parameter-type.exp under
valgrind, I see the following issue reported (on x86-64 Fedora):
(gdb) ptype f
==5203== Invalid read of size 1
==5203== at 0x6931FE: process_die_scope::~process_die_scope() (dwarf2read.c:10642)
==5203== by 0x66818F: process_die(die_info*, dwarf2_cu*) (dwarf2read.c:10664)
==5203== by 0x66A01F: read_file_scope(die_info*, dwarf2_cu*) (dwarf2read.c:11650)
==5203== by 0x667F2D: process_die(die_info*, dwarf2_cu*) (dwarf2read.c:10672)
==5203== by 0x6677B6: process_full_comp_unit(dwarf2_per_cu_data*, language) (dwarf2read.c:10445)
==5203== by 0x66657A: process_queue(dwarf2_per_objfile*) (dwarf2read.c:9945)
==5203== by 0x6559B4: dw2_do_instantiate_symtab(dwarf2_per_cu_data*) (dwarf2read.c:3163)
==5203== by 0x66683D: psymtab_to_symtab_1(partial_symtab*) (dwarf2read.c:10034)
==5203== by 0x66622A: dwarf2_read_symtab(partial_symtab*, objfile*) (dwarf2read.c:9811)
==5203== by 0x787984: psymtab_to_symtab(objfile*, partial_symtab*) (psymtab.c:792)
==5203== by 0x786E3E: psym_lookup_symbol(objfile*, int, char const*, domain_enum_tag) (psymtab.c:522)
==5203== by 0x804BD0: lookup_symbol_via_quick_fns(objfile*, int, char const*, domain_enum_tag) (symtab.c:2383)
==5203== Address 0x147ed063 is 291 bytes inside a block of size 4,064 free'd
==5203== at 0x4C2CD5A: free (vg_replace_malloc.c:530)
==5203== by 0x444415: void xfree<void>(void*) (common-utils.h:60)
==5203== by 0x9DA8C2: call_freefun (obstack.c:103)
==5203== by 0x9DAD35: _obstack_free (obstack.c:280)
==5203== by 0x44464C: auto_obstack::~auto_obstack() (gdb_obstack.h:73)
==5203== by 0x68AFB0: dwarf2_cu::~dwarf2_cu() (dwarf2read.c:25080)
==5203== by 0x68B204: free_one_cached_comp_unit(dwarf2_per_cu_data*) (dwarf2read.c:25174)
==5203== by 0x66668C: dwarf2_release_queue(void*) (dwarf2read.c:9982)
==5203== by 0x563A4C: do_my_cleanups(cleanup**, cleanup*) (cleanups.c:154)
==5203== by 0x563AA7: do_cleanups(cleanup*) (cleanups.c:176)
==5203== by 0x5646CE: throw_exception_cxx(gdb_exception) (common-exceptions.c:289)
==5203== by 0x5647B7: throw_exception(gdb_exception) (common-exceptions.c:317)
==5203== Block was alloc'd at
==5203== at 0x4C2BBAD: malloc (vg_replace_malloc.c:299)
==5203== by 0x564BE8: xmalloc (common-utils.c:44)
==5203== by 0x9DA872: call_chunkfun (obstack.c:94)
==5203== by 0x9DA935: _obstack_begin_worker (obstack.c:141)
==5203== by 0x9DAA3C: _obstack_begin (obstack.c:164)
==5203== by 0x4445E0: auto_obstack::auto_obstack() (gdb_obstack.h:70)
==5203== by 0x68AE07: dwarf2_cu::dwarf2_cu(dwarf2_per_cu_data*) (dwarf2read.c:25073)
==5203== by 0x661A8A: init_cutu_and_read_dies(dwarf2_per_cu_data*, abbrev_table*, int, int, void (*)(die_reader_specs const*, unsigned char const*, die_info*, int, void*), void*) (dwarf2read.c:7869)
==5203== by 0x666A29: load_full_comp_unit(dwarf2_per_cu_data*, language) (dwarf2read.c:10108)
==5203== by 0x655847: load_cu(dwarf2_per_cu_data*) (dwarf2read.c:3120)
==5203== by 0x655928: dw2_do_instantiate_symtab(dwarf2_per_cu_data*) (dwarf2read.c:3148)
==5203== by 0x66683D: psymtab_to_symtab_1(partial_symtab*) (dwarf2read.c:10034)
There's actually a series of three issues reported, but it turns out
they're all related, so we can consider on the first one.
The invalid read is triggered from a destructor which is being invoked
as part of a stack unwind after throwing an error. At the time the
error is thrown, the stack looks like this:
#0 0x00000000009f4ecd in __cxa_throw ()
#1 0x0000000000564761 in throw_exception_cxx (exception=...) at ../../src/gdb/common/common-exceptions.c:303
#2 0x00000000005647b8 in throw_exception (exception=...) at ../../src/gdb/common/common-exceptions.c:317
#3 0x00000000005648ff in throw_it(return_reason, errors, const char *, typedef __va_list_tag __va_list_tag *) (reason=RETURN_ERROR,
error=GENERIC_ERROR, fmt=0xb33020 "Dwarf Error: Cannot find DIE at 0x%x referenced from DIE at 0x%x [in module %s]",
ap=0x7fff387f2d68) at ../../src/gdb/common/common-exceptions.c:373
#4 0x0000000000564929 in throw_verror (error=GENERIC_ERROR,
fmt=0xb33020 "Dwarf Error: Cannot find DIE at 0x%x referenced from DIE at 0x%x [in module %s]", ap=0x7fff387f2d68)
at ../../src/gdb/common/common-exceptions.c:379
#5 0x0000000000867be4 in verror (string=0xb33020 "Dwarf Error: Cannot find DIE at 0x%x referenced from DIE at 0x%x [in module %s]",
args=0x7fff387f2d68) at ../../src/gdb/utils.c:251
#6 0x000000000056879d in error (fmt=0xb33020 "Dwarf Error: Cannot find DIE at 0x%x referenced from DIE at 0x%x [in module %s]")
at ../../src/gdb/common/errors.c:43
#7 0x0000000000686875 in follow_die_ref (src_die=0x30bc8a0, attr=0x30bc8c8, ref_cu=0x7fff387f2ed0) at ../../src/gdb/dwarf2read.c:22969
#8 0x00000000006844cd in lookup_die_type (die=0x30bc8a0, attr=0x30bc8c8, cu=0x30bc5d0) at ../../src/gdb/dwarf2read.c:21976
#9 0x0000000000683f27 in die_type (die=0x30bc8a0, cu=0x30bc5d0) at ../../src/gdb/dwarf2read.c:21832
#10 0x0000000000679b39 in read_subroutine_type (die=0x30bc830, cu=0x30bc5d0) at ../../src/gdb/dwarf2read.c:17343
#11 0x00000000006845fb in read_type_die_1 (die=0x30bc830, cu=0x30bc5d0) at ../../src/gdb/dwarf2read.c:22035
#12 0x0000000000684576 in read_type_die (die=0x30bc830, cu=0x30bc5d0) at ../../src/gdb/dwarf2read.c:22010
#13 0x000000000067003f in read_func_scope (die=0x30bc830, cu=0x30bc5d0) at ../../src/gdb/dwarf2read.c:13822
#14 0x0000000000667f5e in process_die (die=0x30bc830, cu=0x30bc5d0) at ../../src/gdb/dwarf2read.c:10679
#15 0x000000000066a020 in read_file_scope (die=0x30bc720, cu=0x30bc5d0) at ../../src/gdb/dwarf2read.c:11650
#16 0x0000000000667f2e in process_die (die=0x30bc720, cu=0x30bc5d0) at ../../src/gdb/dwarf2read.c:10672
#17 0x00000000006677b7 in process_full_comp_unit (per_cu=0x3089b80, pretend_language=language_minimal)
at ../../src/gdb/dwarf2read.c:10445
#18 0x000000000066657b in process_queue (dwarf2_per_objfile=0x30897d0) at ../../src/gdb/dwarf2read.c:9945
#19 0x00000000006559b5 in dw2_do_instantiate_symtab (per_cu=0x3089b80) at ../../src/gdb/dwarf2read.c:3163
#20 0x000000000066683e in psymtab_to_symtab_1 (pst=0x3089bd0) at ../../src/gdb/dwarf2read.c:10034
#21 0x000000000066622b in dwarf2_read_symtab (self=0x3089bd0, objfile=0x3073f40) at ../../src/gdb/dwarf2read.c:9811
#22 0x0000000000787985 in psymtab_to_symtab (objfile=0x3073f40, pst=0x3089bd0) at ../../src/gdb/psymtab.c:792
#23 0x0000000000786e3f in psym_lookup_symbol (objfile=0x3073f40, block_index=1, name=0x30b2e30 "f", domain=VAR_DOMAIN)
at ../../src/gdb/psymtab.c:522
#24 0x0000000000804bd1 in lookup_symbol_via_quick_fns (objfile=0x3073f40, block_index=1, name=0x30b2e30 "f", domain=VAR_DOMAIN)
at ../../src/gdb/symtab.c:2383
#25 0x0000000000804fe4 in lookup_symbol_in_objfile (objfile=0x3073f40, block_index=1, name=0x30b2e30 "f", domain=VAR_DOMAIN)
at ../../src/gdb/symtab.c:2558
#26 0x0000000000805125 in lookup_static_symbol (name=0x30b2e30 "f", domain=VAR_DOMAIN) at ../../src/gdb/symtab.c:2595
#27 0x0000000000804357 in lookup_symbol_aux (name=0x30b2e30 "f", match_type=symbol_name_match_type::FULL, block=0x0,
domain=VAR_DOMAIN, language=language_c, is_a_field_of_this=0x0) at ../../src/gdb/symtab.c:2105
#28 0x0000000000803ad9 in lookup_symbol_in_language (name=0x30b2e30 "f", block=0x0, domain=VAR_DOMAIN, lang=language_c,
is_a_field_of_this=0x0) at ../../src/gdb/symtab.c:1887
#29 0x0000000000803b53 in lookup_symbol (name=0x30b2e30 "f", block=0x0, domain=VAR_DOMAIN, is_a_field_of_this=0x0)
at ../../src/gdb/symtab.c:1899
#30 0x000000000053b246 in classify_name (par_state=0x7fff387f6090, block=0x0, is_quoted_name=false, is_after_structop=false)
at ../../src/gdb/c-exp.y:2879
#31 0x000000000053b7e9 in c_yylex () at ../../src/gdb/c-exp.y:3083
#32 0x000000000053414a in c_yyparse () at c-exp.c:1903
#33 0x000000000053c2e7 in c_parse (par_state=0x7fff387f6090) at ../../src/gdb/c-exp.y:3255
#34 0x0000000000774a02 in parse_exp_in_context_1 (stringptr=0x7fff387f61c0, pc=0, block=0x0, comma=0, void_context_p=0, out_subexp=0x0)
at ../../src/gdb/parse.c:1213
#35 0x000000000077476a in parse_exp_in_context (stringptr=0x7fff387f61c0, pc=0, block=0x0, comma=0, void_context_p=0, out_subexp=0x0)
at ../../src/gdb/parse.c:1115
#36 0x0000000000774714 in parse_exp_1 (stringptr=0x7fff387f61c0, pc=0, block=0x0, comma=0) at ../../src/gdb/parse.c:1106
#37 0x0000000000774c53 in parse_expression (string=0x27ff996 "f") at ../../src/gdb/parse.c:1253
#38 0x0000000000861dc4 in whatis_exp (exp=0x27ff996 "f", show=1) at ../../src/gdb/typeprint.c:472
#39 0x00000000008620d8 in ptype_command (type_name=0x27ff996 "f", from_tty=1) at ../../src/gdb/typeprint.c:561
#40 0x000000000047430b in do_const_cfunc (c=0x3012010, args=0x27ff996 "f", from_tty=1) at ../../src/gdb/cli/cli-decode.c:106
#41 0x000000000047715e in cmd_func (cmd=0x3012010, args=0x27ff996 "f", from_tty=1) at ../../src/gdb/cli/cli-decode.c:1886
#42 0x00000000008431bb in execute_command (p=0x27ff996 "f", from_tty=1) at ../../src/gdb/top.c:630
#43 0x00000000006bf946 in command_handler (command=0x27ff990 "ptype f") at ../../src/gdb/event-top.c:583
#44 0x00000000006bfd12 in command_line_handler (rl=0x30bb3a0 "\240\305\v\003") at ../../src/gdb/event-top.c:774
The problem is that in `process_die` (frames 14 and 16) we create a
`process_die_scope` object, that takes a copy of the `struct
dwarf2_cu *` passed into the frame. The destructor of the
`process_die_scope` dereferences the stored pointer. This wouldn't be
an issue, except...
... in dw2_do_instantiate_symtab (frame 19) a clean up was registered that
clears the dwarf2_queue in case of an error. Part of this clean up
involves deleting the `struct dwarf2_cu`s referenced from the queue..
The problem then, is that cleanups are processed at the site of the
throw, while, class destructors are invoked as we unwind their frame.
The result is that we process the frame 19 cleanup (and delete the
struct dwarf2_cu) before we process the destructors in frames 14 and 16.
When we do get back to frames 14 and 16 the objects being references
have already been deleted.
The solution is to remove the cleanup from dw2_do_instantiate_symtab, and
instead use a destructor to release the dwarf2_queue instead. With this
patch in place, the valgrind errors are now resolved.
gdb/ChangeLog:
* dwarf2read.c (dwarf2_release_queue): Delete function, move body
into...
(class dwarf2_queue_guard): ...the destructor of this new class.
(dw2_do_instantiate_symtab): Create instance of the new class
dwarf2_queue_guard, remove cleanup.
commit 12a43565addfdf720b3ba8cc45eab6daf66f85dd
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Feb 12 16:04:05 2018 +0000
MIPS/GAS/test: Fix an n32 `.reginfo' size test failure
Correct a commit 2d6dda71611b ("MIPS/BFD: Correctly report unsupported
`.reginfo' section size") issue and avoid a GAS test failure:
regexp_diff match failure
regexp "^.*: Incorrect `\.reginfo' section size; expected 24, got 28$"
line "../as-new: dump.o: Incorrect `.reginfo' section size; expected 24, got 32"
FAIL: MIPS assembled .reginfo section size (n32)
on MIPS targets other than bare-metal ones. The reason for this failure
is section padding to alignment, done in `size_seg'. For n32 `.reginfo'
the section alignment is set to 3, and therefore the section is padded
to a multiple of 8, except for bare-metal targets, for which padding is
unconditionally disabled in `md_section_align'.
Use `--no-pad-sections' then to disable padding for all targets, so that
the size of `.reginfo' is always the same, matching the message pattern.
gas/
* testsuite/gas/mips/reginfo-2-n32.d: Add `--no-pad-sections' to
`as' flags.
commit d2159fdc0f0ac1d0aaafab725b930e78a8793494
Author: Henry Wong <henry@stuffedcow.net>
Date: Mon Feb 12 14:50:42 2018 +0000
MIPS: Fix encoding for MIPSr6 sigrie instruction.
The instruction encoding for the MIPS r6 sigrie instruction seems to be
incorrect. It's currently 0x4170xxxx (which overlaps with ei, di, evp,
and dvp), but should be 0x0417xxxx. See ISA reference[1][2].
References:
[1] "MIPS Architecture for Programmers Volume II-A: The MIPS32
Instruction Set Manual", Imagination Technologies, Inc., Document
Number: MD00086, Revision 6.06, December 15, 2016, Table A.4 "MIPS32
REGIMM Encoding of rt Field", p. 452
[2] "MIPS Architecture For Programmers Volume II-A: The MIPS64
Instruction Set Reference Manual", Imagination Technologies, Inc.,
Document Number: MD00087, Revision 6.06, December 15, 2016, Table
A.4 "MIPS64 REGIMM Encoding of rt Field", p. 581
opcodes/
* mips-opc.c (mips_builtin_opcodes): Correct "sigrie" encoding.
gas/
* testsuite/gas/mips/r6.d: Update for "sigrie" encoding fix.
* testsuite/gas/mips/r6-n32.d: Likewise.
* testsuite/gas/mips/r6-n64.d: Likewise.
commit 830db0485e19000985ccfdbacda4d4d5d62583bb
Author: Zebediah Figura <z.figura12@gmail.com>
Date: Mon Feb 12 13:12:45 2018 +0000
Add support for reading msdos MZ executables.
See email thread starting here: https://www.sourceware.org/ml/binutils/2018-01/msg00001.html
include * coff/msdos.h: New header.
* coff/pe.h: Move common defines to msdos.h.
* coff/powerpc.h: Likewise.
bfd * i386msdos.c (msdos_mkobject); New function.
(msdos_object_p): New function.
(i386_msdos_vec): Use msdos_object_p as the check_format
function.
* peicode.h: Rename external_PEI_DOS_hdr, DOSMAGIC, and
NT_SIGNATURE to external_DOS_hdr, IMAGE_DOS_SIGNATURE, and
IMAGE_NT_SIGNATURE.
* peXXigen.c: Likewise.
* coff-ia64.c: Likewise.
commit 7e784da5439adaffebd2041c4abbb8a9c1e396dd
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Feb 12 12:10:50 2018 +0000
Update Russian translation for the gas/ sub-directory.
commit 0b8683b7eb25cc150c7738ddc0d237f255e0fa70
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Feb 12 11:57:41 2018 +0000
Fix compile time warning: bfd/elf32-arc.c:1537]: (warning) Redundant assignment of 'rel->r_offset' to itself.
* elf32-arc.c (elf_arc_relocate_section): Remove redundant
assignment.
commit 6444b19b244d7c84537fc796005ef756917135ae
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Feb 12 11:54:48 2018 +0000
oops - actually remove the assignment this time: bfd/elf32-nds32.c:9693]: (warning) Redundant assignment of 'irel->r_addend' to itself.
commit 94fe5757db7a4dbb33743b87bf748e906444973b
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Feb 12 11:51:56 2018 +0000
Fix compile time warning: bfd/elf32-nds32.c:9693]: (warning) Redundant assignment of 'irel->r_addend' to itself.
* elf32-nds32.c (nds32_elf_relax_longjump3): Remove redundant
assignment.
commit 7eb84119d88e6aadb0323951f42e5dcd92817835
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Feb 12 00:00:35 2018 +0000
Automatic date update in version.in
commit e5bc5e207b2e70c33286dfd5f5de8b6b85f2c937
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Feb 11 00:01:01 2018 +0000
Automatic date update in version.in
commit d805612e3816191fa4fd4f57235dc23741c64b15
Author: Eric Botcazou <ebotcazou@gcc.gnu.org>
Date: Sat Feb 10 02:37:32 2018 +0100
Fix commit date.
commit a8735c82b8519d8b18915765ca983fc07154a17d
Author: Eric Botcazou <ebotcazou@gcc.gnu.org>
Date: Sat Feb 10 02:30:25 2018 +0100
Fix GOT relocation overflow on SPARC.
There are 2 failures left in the linker testsuite on SPARC64/Linux and
they are caused by 2 different issues leading to the same end effect:
the overflow of the relocation section for the GOT, i.e. the linker
generates too many dynamic relocations for the GOT wrt the size of the
relocation section, leading to memory corruption and missing relocations
in the final binary.
The first issue was introduced by:
https://sourceware.org/ml/binutils/2017-06/msg00368.html
which makes the linker generate more R_SPARC_RELATIVE relocations for
the GOT without adjusting the size of the relocation section. This is
fixed by (1) preventively adjusting this size in allocate_dynrelocs and
(2) generating R_SPARC_NONE if needed when R_SPARC_GOTDATA_OP is relaxed.
The second issue is that we generate a GOT relocation for an undefined
weak symbol with non-default visibility in a PIC binary without accounting
for that in the size of the relocation section. Since the address of the
symbol should resolve to 0 at run time, it is fixed by not generating the
relocation at all, i.e. leaving the GOT entry zeroed.
bfd/
* elfxx-sparc.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Reorder conditions.
(sparc_elf_append_rela): Assert that there is enough room in section.
(_bfd_sparc_elf_copy_indirect_symbol): Fix formatting.
(_bfd_sparc_elf_adjust_dynamic_symbol): Minor tweak.
(allocate_dynrelocs): Remove outdated comments and reorder conditions.
For a symbol subject to a GOT relocation, reserve a slot in the
relocation section if the symbol isn't dynamic and we are in PIC mode.
(_bfd_sparc_elf_relocate_section) <R_SPARC_GOTDATA_OP>: If relocation
is relaxed and a slot was reserved, generate a R_SPARC_NONE relocation.
<R_SPARC_GOTDATA_OP_HIX22>: Adjust comments.
<R_SPARC_PC10>: Reorder conditions. Remove always-false assertion.
(_bfd_sparc_elf_finish_dynamic_symbol): Rename local_undefweak into
resolved_to_zero. Do not generate a dynamic GOT relocation for an
undefined weak symbol with non-default visibility. Remove superfluous
'else' and fix formatting.
commit 5d0fb5ffdfbdeb913ac94cc0c81cc2d105aa486c
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Feb 10 00:00:34 2018 +0000
Automatic date update in version.in
commit 3b4c384407ebbdd9ed4ad5057080b3be038b8748
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Feb 9 08:44:42 2018 -0800
x86: Add is_solaris to elf_x86_target_os
Add is_solaris to elf_x86_target_os since Solaris is quite different.
* elf32-i386.c (elf_i386_get_synthetic_symtab): Also handle
is_solaris.
(i386_elf32_sol2_vec): Don't declare.
(elf_i386_link_setup_gnu_properties): Also handle is_solaris.
Don't set need_global_offset_table.
(elf_i386_solaris_arch_bed): New.
(elf_backend_arch_data): Set to elf_i386_solaris_arch_bed for
Solaris.
* elf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Check
target_os != is_nacl instead of target_os == is_normal.
(x86_64_elf64_sol2_vec): Don't declare.
(elf_x86_64_link_setup_gnu_properties): Check target_os !=
is_nacl instead of target_os == is_normal. Don't set
need_global_offset_table.
(elf_x86_64_solaris_arch_bed): New.
(elf_backend_arch_data): Set to elf_x86_64_solaris_arch_bed for
Solaris.
* elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Keep
_GLOBAL_OFFSET_TABLE_ for Solaris.
(_bfd_x86_elf_link_setup_gnu_properties): Don't copy
need_global_offset_table.
* elfxx-x86.h (elf_x86_target_os): Add is_solaris.
(elf_x86_link_hash_table): Remove need_global_offset_table.
(elf_x86_init_table): Likewise.
commit 9c3630e983df43e68006b526a92c2a9a2b64dfd9
Author: Tom Tromey <tom@tromey.com>
Date: Fri Feb 9 05:58:46 2018 -0700
Don't reference past the end of the vector
An earlier change made find_source_lines read:
end = &data[size];
However, since 'size' is the size of the vector, this seems fishy.
More obviously ok is to compute the end of the data directly:
end = data.data () + size;
2018-02-09 Tom Tromey <tom@tromey.com>
* source.c (find_source_lines): Don't reference past the end of
the vector.
commit c4e126313219ecde255a644a2c74008831edff5a
Author: Markus Metzger <markus.t.metzger@intel.com>
Date: Thu Feb 8 14:35:44 2018 +0100
btrace: reword error messages
Reword some btrace error messages to align with the format discussed in
https://sourceware.org/ml/gdb-patches/2018-02/msg00135.html.
gdb/
* remote.c (remote_btrace_maybe_reopen): Change error message.
* btrace.c (btrace_enable): Likewise.
(parse_xml_btrace): Likewise.
(parse_xml_btrace_conf): Likewise.
testsuite/
* lib/gdb.exp (skip_btrace_pt_tests): Update expected error message.
Fix test name.
commit 88711fbfeadd6e4663d986962dfcd7ab660c61d1
Author: Markus Metzger <markus.t.metzger@intel.com>
Date: Fri Jan 19 15:17:43 2018 +0100
btrace: check perf_event_paranoid
One recurring error on Debian systems is that the default perf_event_paranoid
setting disables the perf_event interface for user-space.
Check the current level and point the user to the file.
gdb/
* nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
(linux_enable_pt, linux_enable_bts): Call
diagnose_perf_event_open_fail.
commit 17ad2a4f466f22b7a75b5ebf8a68446bb328c40c
Author: Markus Metzger <markus.t.metzger@intel.com>
Date: Fri Jan 19 13:56:32 2018 +0100
btrace: improve enable error messages
Improve the error message when GDB fails to start recording branch trace.
This patch also removes a zero buffer size check for PT to align with BTS. The
buffer size can not be configured to be zero.
gdb/
* nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
Remove parameter and change return type. Update callers. Move it.
(linux_enable_bts, linux_enable_pt): Improve error message.
(linux_enable_pt): Remove zero buffer size check.
(linux_enable_btrace): Improve error messages. Remove NULL return
check.
commit de6242d3075700ec4b73bdee583dc216f3a0b046
Author: Markus Metzger <markus.t.metzger@intel.com>
Date: Fri Jan 19 14:32:09 2018 +0100
btrace, gdbserver: remove the to_supports_btrace target method
Remove the to_supports_btrace target method and instead rely on detecting errors
when trying to enable recording. This will also provide a suitable error
message explaining why recording is not possible.
For remote debugging, gdbserver will now always advertise branch tracing related
packets. When talking to an older GDB, this will cause GDB to try to enable
branch tracing and gdbserver to report a suitable error message every time.
An older gdbserver will not advertise branch tracing related packets if the
one-time check failed, so a newer GDB with this patch will fail to enable branch
tracing at remote_enable_btrace() rather than at btrace_enable(). The error
message is the same in both cases so there should be no user-visible change.
gdb/
* btrace.c (btrace_enable): Remove target_supports_btrace call.
* nat/linux-btrace.c (perf_event_pt_event_type): Move.
(kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
(linux_supports_pt, linux_supports_btrace): Remove.
(linux_enable_bts): Call cpu_supports_bts.
* nat/linux-btrace.h (linux_supports_btrace): Remove.
* remote.c (remote_supports_btrace): Remove.
(init_remote_ops): Remove remote_supports_btrace.
* target-delegates.c: Regenerated.
* target.c (target_supports_btrace): Remove.
* target.h (target_ops) <to_supports_btrace>: Remove
(target_supports_btrace): Remove.
* x86-linux-nat.c (x86_linux_create_target): Remove
linux_supports_btrace.
gdbserver/
* linux-low.c (linux_target_ops): Remove linux_supports_btrace.
* nto-low.c (nto_target_ops): Remove NULL for supports_btrace.
* spu-low.c (spu_target_ops): Likewise.
* win32-low.c (win32_target_ops): Likewise.
* server.c (supported_btrace_packets): Report packets unconditionally.
* target.h (target_ops) <supports_btrace>: Remove.
(target_supports_btrace): Remove.
commit 9ee23a853c18da3c83530c7957464bc6b6e9fb16
Author: Markus Metzger <markus.t.metzger@intel.com>
Date: Fri Jan 19 09:41:42 2018 +0100
btrace, gdbserver: use exceptions to convey btrace enable/disable errors
Change error reporting to use exceptions and be prepared to catch them in
gdbserver. We use the exception message in our error reply to GDB.
This may remove some detail from the error message in the native case since
errno is no longer printed. Later patches will improve that.
We're still using error strings on the RSP level. This patch does not affect
the interoperability of older/newer GDB/gdbserver.
gdbserver/
* server.c (handle_btrace_enable_bts, handle_btrace_enable_pt)
(handle_btrace_disable): Change return type to void. Use exceptions
to report errors.
(handle_btrace_general_set): Catch exception and copy message to
return message.
gdb/
* nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
btrace failed.
* x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
exception and use message in own exception.
commit 5c3284c1ec2edc28b0697532fd094d93d5ecf31b
Author: Markus Metzger <markus.t.metzger@intel.com>
Date: Fri Jan 19 09:38:33 2018 +0100
btrace: prepare for throwing exceptions when enabling btrace
We indicate success or failure for enabling branch tracing via the pointer
return value. Depending on the type of error, errno may provide additional
information.
Prepare for using exceptions with more descriptive error messages by using smart
pointers and objects with automatic destruction to hold intermediate results.
gdb/
* nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
(perf_event_pt_event_type): Use gdb_file_up.
(linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
scoped_fd, and scoped_mmap.
commit 84696f37ae92280ded0e6600074ad8bc518255fa
Author: Markus Metzger <markus.t.metzger@intel.com>
Date: Fri Jan 26 13:57:48 2018 +0100
common: add scoped_mmap
Add a simple helper to automatically unmap a memory mapping.
gdb/
* common/scoped_mmap.h: New.
* unittests/scoped_mmap-selftest.c: New.
* Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
unittests/scoped_mmap-selftest.c.
commit ea4a0888120dec61348cae460ffa08de663e2852
Author: Markus Metzger <markus.t.metzger@intel.com>
Date: Fri Jan 26 13:07:29 2018 +0100
common: add scoped_fd
Add a simple helper to automatically close a file descriptor.
gdb/
* common/scoped_fd.h: New.
* unittests/scoped_fd-selftest.c: New.
* Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
unittests/scoped_fd-selftest.c.
commit 869e8290ea62f594d2472476303bb74604e9326b
Author: Tom Tromey <tom@tromey.com>
Date: Thu Feb 8 12:08:58 2018 -0700
Use gdb::unique_xmalloc_ptr in auto_load_section_scripts
This changes auto_load_section_scripts to use gdb::unique_xmalloc_ptr,
allowing the removal of a cleanup.
2018-02-09 Tom Tromey <tom@tromey.com>
* auto-load.c (auto_load_section_scripts): Use
gdb::unique_xmalloc_ptr.
commit a37a2ae7080898244de86d136961de81fe28a434
Author: Tom Tromey <tom@tromey.com>
Date: Thu Feb 8 12:06:44 2018 -0700
Use std::string in execute_script_contents
This changes execute_script_contents to use a std::string, allowing
the removal of a cleanup.
2018-02-09 Tom Tromey <tom@tromey.com>
* auto-load.c (execute_script_contents): Use std::string.
commit 4e7253479941cd6d59a0c8efbb1113d3734b7f56
Author: Joel Brobecker <brobecker@adacore.com>
Date: Fri Feb 9 16:04:38 2018 +0400
gdb/NEWS: Clarify the news entry for "rbreak" in GDB 8.1
gdb/ChangeLog:
* NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
Python function, rather than a new command.
commit 15b23f3612ffa19bd7fb20ce07485cdb3c06162f
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Feb 8 16:29:19 2018 -0800
x86: Set need_global_offset_table with info->output_bfd->xvec
* elf32-i386.c (elf32_i386_copy_solaris_special_section_fields):
Remove prototype.
(i386_elf32_sol2_vec): Declared.
(elf_i386_link_setup_gnu_properties): Set
need_global_offset_table with info->output_bfd->xvec.
* elf64-x86-64.c (elf64_x86_64_copy_solaris_special_section_fields):
Remove prototype.
(x86_64_elf64_sol2_vec): Declared.
(elf_x86_64_link_setup_gnu_properties): Set
need_global_offset_table with info->output_bfd->xvec.
commit 4d6945e70a0ce0c939d06e29c5883e57501f1e20
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Feb 9 00:00:25 2018 +0000
Automatic date update in version.in
commit dc11dea21281758b71113c03a8d8be92d175a46c
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Feb 8 13:52:22 2018 -0800
x86: Keep the unused _GLOBAL_OFFSET_TABLE_ for Solaris
Solaris requires to keep _GLOBAL_OFFSET_TABLE_ even if it isn't used.
This patch detects Solaris target and keeps _GLOBAL_OFFSET_TABLE_ for
Solaris.
* elf32-i386.c (elf32_i386_copy_solaris_special_section_fields):
New prototype.
(elf_i386_link_setup_gnu_properties): Set need_global_offset_table
for Solaris.
* elf64-x86-64.c (elf64_x86_64_copy_solaris_special_section_fields):
New prototype.
(elf_x86_64_link_setup_gnu_properties): Set
need_global_offset_table for Solaris.
* elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Keep the
unused _GLOBAL_OFFSET_TABLE_ for Solaris.
(_bfd_x86_elf_link_setup_gnu_properties): Copy
need_global_offset_table.
* elfxx-x86.h (elf_x86_link_hash_table): Add
need_global_offset_table.
(elf_x86_init_table): Likewise.
commit 3f48fe4a95ec0e67b81d5d606762c91ad9a6b799
Author: Jim Wilson <jimw@sifive.com>
Date: Thu Feb 8 13:15:10 2018 -0800
RISC-V: Add comment for previous change.
bfd/
* elfnn-riscv.c (riscv_elf_relocate_section): Add comment for previous
change.
commit 9a897d43f034544cd09292d0fb6fded7eb64ae8d
Author: Tom Tromey <tom@tromey.com>
Date: Tue Feb 6 13:00:40 2018 -0700
Remove cleanups from solib.c
This removes a couple of cleanups from solib.c, replacing one with
std::string and another with unique_xmalloc_ptr.
2018-02-08 Tom Tromey <tom@tromey.com>
* solib.c (solib_find_1): Use std::string.
(solib_bfd_fopen): Use unique_xmalloc_ptr.
commit 58ef3771fbbdf7fd891fceefdd4bf2720c6c1ee7
Author: Tom Tromey <tom@tromey.com>
Date: Tue Feb 6 12:54:44 2018 -0700
Use unique_xmalloc_ptr in build_id_to_debug_bfd
This changes build_id_to_debug_bfd to use a unique_xmalloc_ptr,
removing a cleanup.
2018-02-08 Tom Tromey <tom@tromey.com>
* build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
commit a9abc4345150a3f3e30da78f8d68c1f9e0198772
Author: Tom Tromey <tom@tromey.com>
Date: Tue Feb 6 12:51:42 2018 -0700
Use gdb::def_vector in find_source_lines
This replaces an explicit malloc and a cleanup with a gdb::def_vector.
2018-02-08 Tom Tromey <tom@tromey.com>
* source.c (find_source_lines): Use gdb::def_vector.
commit 84f27c6fcbbf580434c7d56e68fa42fe7cf7ccb9
Author: Tom Tromey <tom@tromey.com>
Date: Tue Feb 6 12:25:00 2018 -0700
Remove cleanups from macro_define_command
This removes cleanups from macro_define_command, by introducing a new
struct temporary_macro_definition that cleans up after itself.
2018-02-08 Tom Tromey <tom@tromey.com>
* macrocmd.c (struct temporary_macro_definition): New.
(macro_define_command): Use temporary_macro_definition. Remove
cleanups.
(free_macro_definition_ptr): Remove.
commit 0354904bdacb9bf1ebdf3ebdf3723f8a550bcdab
Author: Tom Tromey <tom@tromey.com>
Date: Tue Feb 6 12:11:21 2018 -0700
Use std::string in maybe_expand
This patch changes maybe_expand to use std::string rather than an
explicit malloc and a cleanup.
2018-02-08 Tom Tromey <tom@tromey.com>
* macroexp.c (maybe_expand): Use std::string.
commit 1739cf248ff21b21271d1e9d5f77a12589c3856c
Author: Tom Tromey <tom@tromey.com>
Date: Tue Feb 6 12:10:20 2018 -0700
Class-ify macro_buffer
This patch changes macro_buffer to be a bit more of a C++ class,
adding constructors, a destructor, and some members. Then this is
used to remove various cleanups in macroexp.c.
2018-02-08 Tom Tromey <tom@tromey.com>
* macroexp.c (struct macro_buffer): Add initializers for some
members.
(init_buffer, init_shared_buffer, free_buffer)
(free_buffer_return_text): Remove.
(macro_buffer): New constructors.
(~macro_buffer): New destructor.
(macro_buffer::set_shared): New method.
(macro_buffer::resize_buffer, macro_buffer::appendc)
(macro_buffer::appendmem): Now methods, not free functions.
(set_token, append_tokens_without_splicing, stringify)
(macro_stringify): Update.
(gather_arguments): Change return type. Remove argc_p argument,
add args_ptr argument. Use std::vector.
(substitute_args): Remove argc argument. Accept std::vector.
(expand): Update. Use std::vector.
(scan, macro_expand, macro_expand_next): Update.
commit f6c2623eb8ac7296b6d7a76657394272a71f5aee
Author: Tom Tromey <tom@tromey.com>
Date: Tue Feb 6 01:02:00 2018 +0100
Return unique_xmalloc_ptr from macro scope functions
This changes the macro scope functions (sal_macro_scope,
user_macro_scope, and default_macro_scope) to return a
unique_xmalloc_ptr, then fixes up the users. This allowed for the
removal of several cleanups.
2018-02-08 Tom Tromey <tom@tromey.com>
* symtab.c (default_collect_symbol_completion_matches_break_on):
Use unique_xmalloc_ptr.
* macroscope.h: (sal_macro_scope, user_macro_scope)
(default_macro_scope): Return unique_xmalloc_ptr.
* macroscope.c (sal_macro_scope, user_macro_scope)
(default_macro_scope): Return unique_xmalloc_ptr.
* macroexp.h (macro_expand, macro_expand_once): Return
unique_xmalloc_ptr.
* macroexp.c (macro_expand, macro_expand_once): Return
unique_xmalloc_ptr.
* macrocmd.c (macro_expand_command, macro_expand_once_command)
(info_macro_command, info_macros_command): Use
unique_xmalloc_ptr.
* compile/compile-c-support.c (write_macro_definitions): Use
unique_xmalloc_ptr.
* c-exp.y (c_parse): Use unique_xmalloc_ptr.
commit 8ce47547b34fddec16d1ccd801f025a56976af95
Author: Tom Tromey <tom@tromey.com>
Date: Mon Feb 5 10:59:52 2018 +0100
Remove make_cleanup_restore_current_thread from gdbserver
This removes make_cleanup_restore_current_thread from gdbserver,
replacing it with a use of scoped_restore.
2018-02-08 Tom Tromey <tom@tromey.com>
* linux-low.c (install_software_single_step_breakpoints): Use
make_scoped_restore.
* inferiors.c (make_cleanup_restore_current_thread): Remove.
(do_restore_current_thread_cleanup): Remove.
* gdbthread.h (make_cleanup_restore_current_thread): Don't
declare.
commit 45dd3607e24aaf515b5d75c666b351575410392b
Author: Tom Tromey <tom@tromey.com>
Date: Mon Feb 5 10:53:57 2018 +0100
Remove a cleanup from gdbserver
This removes a cleanup from gdbserver's set_raw_breakpoint_at,
replacing it with unique_xmalloc_ptr.
2018-02-08 Tom Tromey <tom@tromey.com>
* mem-break.c (set_raw_breakpoint_at): Use
gdb::unique_xmalloc_ptr.
commit 8de3a6e2afe21ac93d610fa46fbc579a81ea2277
Author: Nick Clifton <nickc@redhat.com>
Date: Thu Feb 8 12:29:07 2018 +0000
Speed up readelf and objdump by not looking for DWO links unless the user has requested that they be displayed/followed.
PR 22802
* dwarf.c (load_separate_debug_file): Return early if the user is
not interested in debug links.
commit ef135d4314fd4c2d7da66b9d7b59af4a85b0f7e6
Author: Nick Clifton <nickc@redhat.com>
Date: Thu Feb 8 10:28:25 2018 +0000
Fix a seg-fault in the ELF note parser when a note with an excessively large alignment is encountered.
PR 22788
* elf.c (elf_parse_notes): Reject notes with excessuively large
alignments.
commit a9479dc051ab00f311c04cdd5b299a70739f67ed
Author: Alan Modra <amodra@gmail.com>
Date: Thu Feb 8 10:18:59 2018 +1030
PR22819, powerpc gas "instruction address is not a multiple of 4"
Checks for insn alignment were hopelessly confused when misaligned
data starts a new frag. The real-world testcase happened to run out
of frag space in the middle of emitting a trace-back table via
something like:
.byte 0 /* VERSION=0 */
.byte 9 /* LANG=C++ */
.byte 34 /* Bits on: has_tboff, fp_present */
.byte 64 /* Bits on: name_present */
.byte 128 /* Bits on: stores_bc, FP_SAVED=0 */
.byte 0 /* Bits on: GP_SAVED=0 */
.byte 2 /* FIXEDPARMS=2 */
.byte 1 /* FLOATPARMS=0, parmsonstk */
.long 0
.long 768 /* tb_offset: 0x300 */
.hword 45 /* Function name length: 45 */
.long 0x334e5a5f
.long 0x31766f70
.long 0x65744932
.long 0x69746172
.long 0x7a5f6e6f
.long 0x64504533
.long 0x5f534e50
.long 0x72463431
.long 0x61746361
.long 0x74535f6c
.long 0x74637572
.byte 0x45
.byte 0
The trigger being those misaligned .long's output for the function
name. A most horrible way to output a string, especially considering
endian issues..
PR 22819
* config/tc-ppc.c (md_assemble): Rewrite insn alignment checking.
(ppc_frag_check): Likewise.
* testsuite/gas/ppc/misalign.d,
* testsuite/gas/ppc/misalign.l,
* testsuite/gas/ppc/misalign.s: New test.
* testsuite/gas/ppc/misalign2.d,
* testsuite/gas/ppc/misalign2.s: New test.
* testsuite/gas/ppc/ppc.exp: Run them.
commit 02ecce62be3516c03f523b1665c9d151a16a39c6
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Feb 8 00:00:32 2018 +0000
Automatic date update in version.in
commit c2e0e465f9488970c7e460a41e3fb7c366530619
Author: Simon Marchi <simark@simark.ca>
Date: Wed Feb 7 08:48:14 2018 -0500
Fix type of values representing optimized out static members
As reported here:
https://sourceware.org/ml/gdb/2018-02/msg00019.html
the type of values representing static members that are optimized out is
wrong. It currently assigns the type of the containing class rather
than the type of the field. This patch fixes that.
I found a place in m-static.exp already dealing with optimized out
static members, so I just added some gdb_test there.
gdb/ChangeLog:
* value.c (value_static_field): Assign field type instead of
containing type when returning an optimized out value.
gdb/testsuite/ChangeLog:
* gdb.cp/m-static.exp: Check type of optimized out static
member.
commit 407aa07cee4d075c8e7996a5e994c02e76f19276
Author: Alan Modra <amodra@gmail.com>
Date: Mon Feb 5 13:17:52 2018 +1030
Revert "PowerPC PLT speculative execution barriers"
This reverts most of commit 1be5d8d3bb.
Left in place are addition of --no-plt-align to some ppc32 ld tests
and the ld.texinfo --no-plt-thread-safe fix.
commit ed01220cc81fac2f65abde945d9b77b11d004361
Author: Jim Wilson <jimw@sifive.com>
Date: Tue Feb 6 16:53:00 2018 -0800
RISC-V: Eliminate spurious error w/ reloc truncated message
bfd/
* elfnn-riscv.c (riscv_elf_relocate_section): Return TRUE if used
callback to report an error.
commit f3342ae0302f2059324a7b90bc466b0d15fdc2aa
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Feb 7 00:00:39 2018 +0000
Automatic date update in version.in
commit 3f8c94b478c8f2e5c82a1425fd49e977ed969a7f
Author: Yao Qi <yao.qi@linaro.org>
Date: Tue Feb 6 17:31:33 2018 +0000
Remove some $ARCH_read_pc and $ARCH_write_pc
Nowadays, gdbarch_read_pc is called in this way,
if (gdbarch_read_pc_p (gdbarch))
pc_val = gdbarch_read_pc (gdbarch, regcache);
/* Else use per-frame method on get_current_frame. */
else if (gdbarch_pc_regnum (gdbarch) >= 0)
{
ULONGEST raw_val;
if (regcache_cooked_read_unsigned (regcache,
gdbarch_pc_regnum (gdbarch),
&raw_val) == REG_UNAVAILABLE)
some ports don't have to define its own gdbarch read_pc method if the
pc value is simply a unsigned value from "pc" register. The same rule
applies to regcache_write_pc. This patch removes these $ARCH_read_pc
and $ARCH_write_pc functions.
gdb:
2018-02-06 Yao Qi <yao.qi@linaro.org>
* ft32-tdep.c (ft32_read_pc): Remove.
(ft32_write_pc): Remove.
(ft32_gdbarch_init): Update.
* m32r-tdep.c (m32r_read_pc): Remove.
(m32r_gdbarch_init): Update.
* mep-tdep.c (mep_read_pc): Remove.
(mep_gdbarch_init): Update.
* microblaze-tdep.c (microblaze_write_pc): Remove.
(microblaze_gdbarch_init): Update.
* mn10300-tdep.c (mn10300_read_pc): Remove.
(mn10300_write_pc): Remove.
(mn10300_gdbarch_init): Update.
* moxie-tdep.c (moxie_read_pc): Remove.
(moxie_write_pc): Remove.
(moxie_gdbarch_init): Update.
commit c20c30f615756ddfccc4bb75c65ccfc1a399466e
Author: Eric Botcazou <ebotcazou@gcc.gnu.org>
Date: Tue Feb 6 18:15:56 2018 +0100
Fix PR ld/22263 on SPARC.
This is -fpie -pie generating dynamic relocations in the text section,
simply because no TLS transitions are applied in PIE mode. The meat
of the patch is to turn calls to bfd_link_pic (info) in TLS-related code
into !bfd_link_executable (info) and there are quite a lot of them...
bfd/
* elfxx-sparc.c (sparc_elf_tls_transition): Turn call to bfd_link_pic
into call to !bfd_link_executable and tidy up.
(_bfd_sparc_elf_check_relocs): Fix formatting and tidy up.
<R_SPARC_TLS_LE_HIX22>: Turn call to bfd_link_pic into call to
!bfd_link_executable.
<R_SPARC_TLS_IE_HI22>: Likewise.
<GOT relocations>: Remove useless code, tidy and merge blocks.
<R_SPARC_TLS_GD_CALL>: Turn call to bfd_link_pic into call to
!bfd_link_executable.
<R_SPARC_WPLT30>: Tidy up.
(_bfd_sparc_elf_gc_mark_hook): Turn call to bfd_link_pic into call
to !bfd_link_executable.
(allocate_dynrelocs): Likewise.
(_bfd_sparc_elf_relocate_section): Fix formatting and tidy up.
<R_SPARC_TLS_GD_HI22>: Merge into...
<R_SPARC_TLS_GD_LO10>: ...this. Adjust 4th argument in call to
sparc_elf_tls_transition and remove redundant code.
<R_SPARC_TLS_LDM_HI22>: Turn call to bfd_link_pic into call to
!bfd_link_executable.
<R_SPARC_TLS_LDO_HIX22>: Likewise.
<R_SPARC_TLS_LE_HIX22>: Likewise. Tidy up.
<R_SPARC_TLS_LDM_CALL>: Likewise.
<R_SPARC_TLS_GD_CALL>: Likewise. Tidy up.
<R_SPARC_TLS_GD_ADD>: Likewise.
<R_SPARC_TLS_LDM_ADD>: Likewise.
<R_SPARC_TLS_LDO_ADD>: Likewise.
<R_SPARC_TLS_IE_LD>: Likewise.
ld/
* testsuite/ld-elf/tls.exp (AFLAGS_PIC): Define on SPARC.
(pr22263-1): Pass AFLAGS_PIC to the assembler.
* testsuite/ld-sparc/tlspie32.s: Add test for other 3 transitions.
* testsuite/ld-sparc/tlspie32.dd: Adjust to above.
* testsuite/ld-sparc/tlspie64.s: Add test for other 3 transitions.
* testsuite/ld-sparc/tlspie64.dd: Adjust to above.
commit bca65a2394ce11bb4a0b001b8a986961c2e84881
Author: Yao Qi <yao.qi@linaro.org>
Date: Tue Feb 6 17:12:12 2018 +0000
Treat OP_F77_UNDETERMINED_ARGLIST as OP_FUNCALL
When I debug some fortran expression parsing, I got
(gdb) set debug expression 1
(gdb) p intvla(5,5,5)
Dump of expression @ 0x205fa80, before conversion to prefix form:
Language fortran, 19 elements, 16 bytes each.
Index Opcode Hex Value String Value
0 OP_VAR_VALUE 40 (...............
1 <unknown 31863232> 31863232 .1..............
....
14 BINOP_REM 5 ................
15 OP_LONG 38 &...............
16 OP_F77_UNDETERMINED_ARGLIST 48 0...............
17 BINOP_MUL 3 ................
18 OP_F77_UNDETERMINED_ARGLIST 48 0...............
Dump of expression @ 0x205fa80, after conversion to prefix form:
Expression: `Invalid expression
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
This patch fixes this problem by handling OP_F77_UNDETERMINED_ARGLIST in
the same way as handling OP_FUNCALL. With this patch applied, the output
looks better,
(gdb) p intvla (5,5,5)
Dump of expression @ 0x2d75590, before conversion to prefix form:
Language fortran, 19 elements, 16 bytes each.
Index Opcode Hex Value String Value
0 OP_VAR_VALUE 40 (...............
....
16 OP_F77_UNDETERMINED_ARGLIST 48 0...............
17 BINOP_MUL 3 ................
18 OP_F77_UNDETERMINED_ARGLIST 48 0...............
Dump of expression @ 0x2d75590, after conversion to prefix form:
Expression: `vla_primitives::intvla (5, 5, 5)'
Language fortran, 19 elements, 16 bytes each.
0 OP_F77_UNDETERMINED_ARGLIST Number of args: 3
3 OP_VAR_VALUE Block @0x297e1c0, symbol @0x297cd50 (intvla)
7 OP_LONG Type @0x2976900 (int), value 5 (0x5)
11 OP_LONG Type @0x2976900 (int), value 5 (0x5)
15 OP_LONG Type @0x2976900 (int), value 5 (0x5)
gdb:
2018-02-06 Yao Qi <yao.qi@linaro.org>
* expprint.c (print_subexp_standard): Handle
OP_F77_UNDETERMINED_ARGLIST.
(dump_subexp_body_standard): Likewise.
commit 583e3f90612f50fc9792a5a68fa16f7924ac94d9
Author: Yao Qi <yao.qi@linaro.org>
Date: Tue Feb 6 17:05:59 2018 +0000
Fix up one ChangeLog entry date
The patch was committed on 5th Feb, and the first line of ChangeLog
entry is too long. The max line length is 74.
https://sourceware.org/gdb/wiki/ContributionChecklist#Properly_Formatted_GNU_ChangeLog
commit 46d09186d340407fdcf066fea25444682e989512
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Feb 6 17:00:25 2018 +0000
Improve the find_nearest_line function for the MIPS target so that it tries harder to find a function name.
PR 22789
* elfxx-mips.c (_bfd_mips_elf_find_nearest_line): If the dwarf
functions failed to find the function name, try the generic elf
find function instead.
commit 8278e7cec35536046caf596f4e55c7c037d06cf0
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Tue Feb 6 10:37:04 2018 -0500
Fix GCC 8's -Wstringop-overflow on bfd/coff-rs6000.c
GCC 8 will bring a new warning option which will detect possible
overflow and truncation on string manipulation functions. For more
details, see:
https://gcc.gnu.org/ml/gcc-patches/2017-08/msg00471.html
While compiling BFD with it, I can see one place on bfd/coff-rs6000.c
where the warning is triggered. This:
(void) strncpy (fhdr.magic, XCOFFARMAG, SXCOFFARMAG);
will not include the trailing NUL on fhdr.magic, but that's fine
because it's a magic number. The fix is trivial: just use memcpy
instead.
OK to push?
2018-02-06 Sergio Durigan Junior <sergiodj@redhat.com>
* coff-rs6000.c (xcoff_write_archive_contents_old): Use
'memcpy' instead of 'strncpy' when writing the magic number.
commit 68807c3cd64ccc4f0e9261df3e840d30d9a19b51
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Feb 6 16:05:13 2018 +0000
Replace reachable assertion with a test and return of NULL.
PR 22793
* readelf.c (find_section): Replace assertion with test and return
of NULL.
(find_section_by_address): Add test of section header table
existance.
(find_section_by_type): Likewise.
(find_section_in_set): Likewise.
commit 64e234d417d5685a4aec0edc618114d9991c031b
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Feb 6 15:48:29 2018 +0000
Prevent attempts to call strncpy with a zero-length field by chacking the size of debuglink sections.
PR 22794
* opncls.c (bfd_get_debug_link_info_1): Check the size of the
section before attempting to read it in.
(bfd_get_alt_debug_link_info): Likewise.
commit 422f3d3d6d5713bf9235b7b7696818a70b3b578d
Author: Paul Carroll <pcarroll@codesourcery.com>
Date: Tue Feb 6 15:45:31 2018 +0000
Allow the find_abstract_instance_name() function in the BFD library to also return file and line number information.
The nm utility supports -l for using debug information to obtain file and line information for each symbol, if available.
We have a tool that consumes this information and displays it.
This identified a problem with the 'nm' utility.
When a source is compiled with -O2, functions can be inlined. The compiler also produces an uninlined copy of the function, normally for linking to other object files.
In the case of DWARF2 debug information, the compiler generates debug information to describe a function. If that function is inlined, the compiler then references that debug information from the inlined and uninlined copies of the routine through the use of the DW_AT_abstract_origin reference.
When nm is used on such a file, it is not able to find file and line information because that information is present in the common debug information and not at each actual implementation of the function.
The 'nm' utility only retrieves the name of the function from the abstract origin debug information and no more.
What I am proposing is to modify the find_abstract_instance_name() function (which I renamed to find_abstract_instance() ) to return the name of the function as well as any file and line information. The routine is already parsing all of the debug information in the abstract instance, so it is easy to pick up the file and line information at that time. If, for some reason, the file and line information is not present, the routine behaves as before.
For example, if I have a simple test case:
int foo(int j)
{
if (j < 15)
j += j << 2;
else
j += j << 6;
return j;
}
int main (int argc,char **argv)
{
int i = argc;
i += foo(i);
return i;
}
If that test case is compiled with -O2 and then 'nm -l' reads that executable, it currently produces this symbol output (ignoring a lot of library symbols):
8048400 T foo
080482e0 T main /scratch/pcarroll/its254/test/mytest.c:12
If I modify 'nm' to return file and line information for abstract instances, it produces the following output:
08048400 T foo /scratch/pcarroll/its254/test/mytest.c:1
080482e0 T main /scratch/pcarroll/its254/test/mytest.c:12
--------------------------------------------------------------------------
bfd * bfd/dwarf2.c (find_abstract_name): Modified to return file and
line information in addition to name, if they can be found.
commit 9d0e82daf9c650b92f0ce96c4df231452133d37f
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Feb 6 00:00:23 2018 +0000
Automatic date update in version.in
commit 72dd27306224497c8ba97f391d30b774d4d973fb
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Mon Feb 5 20:19:49 2018 +0100
ppc64: Fix stwux encoding
With gcc-8.0.1-0.9.fc28.x86_64 I get:
../../gdb/rs6000-tdep.c: In function 'CORE_ADDR skip_prologue(gdbarch*, CORE_ADDR, CORE_ADDR, rs6000_framedata*)':
../../gdb/rs6000-tdep.c:1911:34: error: bitwise comparison always evaluates to false [-Werror=tautological-compare]
else if ((op & 0xfc1f016a) == 0x7c01016e)
~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
https://www.ibm.com/support/knowledgecenter/en/ssw_aix_72/com.ibm.aix.alangref/idalangref_stwux_stux_instrs.htm
says
bit 21 - 30 = 183
Those are bits 1..10 in normal bit order: 183<<1 = 0x16e
gdb/ChangeLog
2018-02-04 Jan Kratochvil <jan.kratochvil@redhat.com>
* rs6000-tdep.c (skip_prologue): Fix stwux encoding.
commit 279b2f94168ee91e02ccd070d27c983fc001fe12
Author: Renlin Li <renlin.li@arm.com>
Date: Sat Feb 3 13:18:17 2018 +0000
[PR22764][LD][AARCH64]Allow R_AARCH64_ABS16 and R_AARCH64_ABS32 against absolution symbol or undefine symbol in shared object.
The assumption that R_AARCH64_ABS16 and R_AARCH64_ABS32 relocation in LP64 abi
will be used to generate an address does not hold for absolute symbol.
In this case, it is a value fixed at static linking time.
The condition to check the relocations is relax to allow absolute symbol and
undefined symbol case.
bfd/
2018-02-05 Renlin Li <renlin.li@arm.com>
PR ld/22764
* elfnn-aarch64.c (elfNN_aarch64_check_relocs): Relax the
R_AARCH64_ABS32 and R_AARCH64_ABS16 for absolute symbol. Apply the
check for writeable section as well.
ld/
2018-02-05 Renlin Li <renlin.li@arm.com>
PR ld/22764
* testsuite/ld-aarch64/emit-relocs-258.s: Define symbol as an address.
* testsuite/ld-aarch64/emit-relocs-259.s: Likewise.
* testsuite/ld-aarch64/aarch64-elf.exp: Run new test.
* testsuite/ld-aarch64/pr22764.s: New.
* testsuite/ld-aarch64/pr22764.d: New.
commit f3b91ed8f96a4d41eef1c64a7e77c406ec763612
Author: Antoine Tremblay <antoine.tremblay@ericsson.com>
Date: Mon Feb 5 11:38:08 2018 -0500
Remove myself as a write-after-approval GDB maintainer.
Since I'll be leaving Ericsson.
gdb/
* MAINTAINERS (Write After Approval): Remove Antoine Tremblay.
commit cd04836359da82ae1dc67e5a05565536f4427b51
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Feb 5 08:38:16 2018 -0800
x86: Remove the unused _GLOBAL_OFFSET_TABLE_
Since _GLOBAL_OFFSET_TABLE_ may be referenced implicitly on x86,
checking ref_regular_nonweak leaves the unused _GLOBAL_OFFSET_TABLE_
in output. This patch checks explicit GOT references instead.
ld-i386/discarded1.s and ld-x86-64/discarded1.s are updated to avoid
linker optimization which removes GOT references.
bfd/
PR ld/22782
* elf32-i386.c (elf_i386_check_relocs): Set got_referenced if
_GLOBAL_OFFSET_TABLE_ is referenced or GOT is needed to resolve
undefined weak symbol to 0.
* elf64-x86-64.c (elf_x86_64_check_relocs): Set got_referenced
if _GLOBAL_OFFSET_TABLE_ is referenced.
* elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Check
got_referenced instead of ref_regular_nonweak. Remove the
unused _GLOBAL_OFFSET_TABLE_ from symbol table.
* elfxx-x86.h (elf_x86_link_hash_table): Add got_referenced.
ld/
PR ld/22782
* testsuite/ld-i386/discarded1.s: Replace mov with div.
* testsuite/ld-x86-64/discarded1.s: Likewise.
* testsuite/ld-i386/i386.exp: Run pr22782.
* testsuite/ld-i386/load1-nacl.d: Updated for removing
_GLOBAL_OFFSET_TABLE_ from output.
* testsuite/ld-i386/load1.d: Likewise.
* testsuite/ld-x86-64/load1a-nacl.d: Likewise.
* testsuite/ld-x86-64/load1a.d: Likewise.
* testsuite/ld-x86-64/load1b-nacl.d: Likewise.
* testsuite/ld-x86-64/load1b.d: Likewise.
* testsuite/ld-i386/pr22782.d: New file.
* testsuite/ld-i386/pr22782.s: Likewise.
* testsuite/ld-x86-64/pr22782.s: Likewise.
* testsuite/ld-x86-64/pr22782a.d: Likewise.
* testsuite/ld-x86-64/pr22782b.d: Likewise.
* testsuite/ld-x86-64/x86-64.exp: Run pr22782a and pr22782b.
commit b8df6ca79e69678a07d3216b9b2b552fce27cda8
Author: Alan Hayward <alan.hayward@arm.com>
Date: Mon Feb 5 16:33:04 2018 +0000
Use visitors for make_gdb_type
Remove the make_gdb_type functions from the tdesc_type_ classes.
Replace with a static make_gdb_type function that uses a element
visitor called gdb_type_creator.
gdb/
* target-descriptions.c (tdesc_element_visitor) Add empty implementations.
(tdesc_type): Move make_gdb_type from here.
(tdesc_type_builtin): Likewise.
(tdesc_type_vector): Likewise.
(tdesc_type_with_fields): Move make_gdb_type_ functions from here.
(make_gdb_type_struct): Move from tdesc_type_with_fields.
(make_gdb_type_union): Likewise.
(make_gdb_type_flags): Likewise.
(make_gdb_type_enum): Likewise.
(make_gdb_type): New function.
(tdesc_register_type): Use static make_gdb_type.
commit 89424b1d6965bcda21a225d0f545f43d9294ff21
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Feb 5 14:05:51 2018 +0000
RISC-V/GAS: Correct an `expr' global shadowing error for pre-4.8 GCC
Correct a commit f0531ed6a429 ("Compress loads/stores with implicit 0
offset.") regression and remove a `-Wshadow' compilation error:
cc1: warnings being treated as errors
.../gas/config/tc-riscv.c: In function 'riscv_handle_implicit_zero_offset':
.../gas/config/tc-riscv.c:1194: error: declaration of 'expr' shadows a global declaration
.../gas/expr.h:180: error: shadowed declaration is here
make[4]: *** [tc-riscv.o] Error 1
which for versions of GCC before 4.8 prevents GAS for RISC-V targets
from being built. See also GCC PR c/53066.
gas/
* config/tc-riscv.c (riscv_handle_implicit_zero_offset): Rename
`expr' parameter to `ep'.
commit e65b1a78686f840ab46fe97355d674919185adc8
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Feb 5 14:05:51 2018 +0000
RISC-V/BFD: Correct a missing initializer error with pre-4.7 GCC
Correct a commit 9d06997adb88 ("RISC-V: Relax RISCV_PCREL_* to
RISCV_GPREL_*") regression and remove a `-Wmissing-field-initializers'
compilation error:
cc1: warnings being treated as errors
.../bfd/elfnn-riscv.c: In function '_bfd_riscv_relax_pc':
.../bfd/elfnn-riscv.c:3117: error: missing initializer
.../bfd/elfnn-riscv.c:3117: error: (near initialization for 'hi_reloc.hi_addend')
make[4]: *** [elf64-riscv.lo] Error 1
which for versions of GCC before 4.7 prevents support for RISC-V targets
from being built. See also GCC PR c/36750.
bfd/
* elfnn-riscv.c (_bfd_riscv_relax_pc): Use `memset' to
initialize `hi_reloc'.
commit 2d6dda71611ba6cc16fe2bd21ac816d5f7d1e74d
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Feb 5 14:00:21 2018 +0000
MIPS/BFD: Correctly report unsupported `.reginfo' section size
Report an error when an unsupported `.reginfo' section size is found in
`_bfd_mips_elf_section_processing', removing an assertion that triggers
at elfxx-mips.c:7105 in GAS when assembling input like:
.section .reginfo
.word 0xdeadbeef
and in `objcopy --rename-section' when renaming an incorrectly sized
section to `.reginfo'.
bfd/
* elfxx-mips.c (_bfd_mips_elf_section_processing): For
SHT_MIPS_REGINFO sections don't assert the correct size and
report an error instead.
binutils/
* testsuite/binutils-all/mips/mips-reginfo.d: New test.
* testsuite/binutils-all/mips/mips-reginfo-n32.d: New test.
* testsuite/binutils-all/mips/mips-reginfo.s: New test source.
* testsuite/binutils-all/mips/mips.exp: Run the new tests.
gas/
* testsuite/gas/mips/reginfo-2.d: New test.
* testsuite/gas/mips/reginfo-2-n32.d: New test.
* testsuite/gas/mips/reginfo-2.l: New test stderr output.
* testsuite/gas/mips/reginfo-2.s: New test source.
* testsuite/gas/mips/mips.exp: Run the new tests.
commit 7550610057c51d47e3815ef93893d4f4faa7e03d
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Feb 5 14:00:21 2018 +0000
ELF/BFD: Propagate the return status from backend section processing
Fix the issue of any failure from `->elf_backend_section_processing'
not being propagated by `_bfd_elf_write_object_contents'. The MIPS
`_bfd_mips_elf_section_processing' handler can actually potentially
fail, however the caller currently ignores that.
bfd/
* elf.c (_bfd_elf_write_object_contents): Propagate a failure
status from `->elf_backend_section_processing'.
commit 78c8836415d45839875a5f312bfaa3d3ceea189a
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Feb 5 14:00:21 2018 +0000
binutils/testsuite: Support stderr options with `run_dump_test'
Add support for the `error', `error_output', `warning' and
`warning_output' options for `run_dump_test' input files, based on the
version of the procedure in ld/testsuite/lib/ld-lib.exp and providing
compatible semantics. These options apply to PROG under test and let
test cases specify output expected on stderr as well as express a
requirement for PROG to exit unsuccessfully. Messages to match against
can be supplied either inline or fetched from a named file. Update
procedure description in the introductory comment accordingly.
As the exit status from `remote_exec' is regrettably lost in our default
implementation of `binutils_run', which is user-overridable, avoid
changing this procedure's API and use a global `binutils_run_status'
variable to pass the status up to the caller, similarly to how
`binutils_run_failed' is handled. Document the new variable in the
respective introductory comments.
binutils/
* testsuite/config/default.exp (binutils_run): Document
`binutils_run_status'.
* testsuite/lib/utils-lib.exp (default_binutils_run): Likewise,
and set it.
(run_dump_test): Add `error', `error_output', `warning' and
`warning_output' options. Update documentation accordingly.
commit f174ef9fb2d7d858fc77807045b6308e9502bd82
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Feb 5 13:09:15 2018 +0000
Updated Brazillian portuguese and Russian translation
commit e813d34aaabee0ca034fa5ddd50e76ade80318bc
Author: Ruslan Kabatsayev <b7.10110111@gmail.com>
Date: Fri Jan 19 09:15:39 2018 +0300
Align natural-format register values to the same column
Currently, commands such as "info reg", "info all-reg", as well as register
window in the TUI print badly aligned columns, like here:
eax 0x1 1
ecx 0xffffd3e0 -11296
edx 0xffffd404 -11260
ebx 0xf7fa5ff4 -134586380
esp 0xffffd390 0xffffd390
ebp 0xffffd3c8 0xffffd3c8
esi 0x0 0
edi 0x0 0
eip 0x8048b60 0x8048b60 <main+16>
eflags 0x286 [ PF SF IF ]
cs 0x23 35
ss 0x2b 43
ds 0x2b 43
es 0x2b 43
fs 0x0 0
gs 0x63 99
After this patch, these commands print the third column values consistently
aligned one under another, provided the second column is not too long.
Originally, the third column was (attempted to be) aligned using a simple tab
character. This patch changes the alignment to spaces only. The tests checking
the output and expecting the single tab have been fixed in a previous patch, so
this change doesn't break any.
gdb/ChangeLog:
* infcmd.c (default_print_one_register_info): Align natural-format
column values consistently one under another.
(pad_to_column): New function.
commit 0eb876f52f348ff08be24bca6cbca00e302839b2
Author: Joel Brobecker <brobecker@adacore.com>
Date: Sun Feb 4 23:45:06 2018 -0500
Move comment in gdb/dwarf2read.c::dwarf2_physname
This commit just moves a comment right next to where it is actually
relevant. No actual code change.
gdb/ChangeLog:
* dwarf2read.c (dwarf2_physname): Move commment.
Tested by rebuilding GDB.
commit 27d2460e7af28398649afd51acaf32a1f392a4db
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Feb 5 00:00:32 2018 +0000
Automatic date update in version.in
commit 9f7393d8fc8b79a92b027cd8ac6fda9441d3fff9
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sun Feb 4 07:51:10 2018 -0800
ld/testsuite: Replace -Sw with -SW for readelf
-Sw is a typo. It should be -SW for readelf.
* testsuite/ld-i386/lea1d.d: Replace -Sw with -SW.
* testsuite/ld-i386/lea1e.d: Likewise.
* testsuite/ld-i386/lea1f.d: Likewise.
* testsuite/ld-x86-64/lea1g.d: Likewise.
* testsuite/ld-x86-64/lea1h.d: Likewise.
* testsuite/ld-x86-64/lea1i.d: Likewise.
* testsuite/ld-x86-64/lea1j.d: Likewise.
* testsuite/ld-x86-64/lea1k.d: Likewise.
* testsuite/ld-x86-64/lea1l.d: Likewise.
commit c5b47a421ef9829ab45bed248c6be320f11de00e
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Feb 4 00:01:03 2018 +0000
Automatic date update in version.in
commit f721678315fc6bbec25341bd616a906976d72693
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Fri Feb 2 12:51:10 2018 +0000
gdb/testsuite: Remove use of dejagnu cleanup proc
The 'cleanup' proc has been removed from dejagnu (Feb 15 2016). The
proc has not done anything useful since at least 2001 so removing
these calls should be harmless.
gdb/testsuite/ChangeLog:
* config/sid.exp (gdb_target_sid): Remove use of cleanup.
* config/sim.exp (gdb_target_sim): Remove use of cleanup.
commit b0daac83d78c82f7998287bb717063c4d01d4f97
Author: Nick Clifton <nickc@redhat.com>
Date: Sat Feb 3 13:11:35 2018 +0000
Remove PROVIDE() qualifiers from definition of __CTOR_LIST__ and __DTOR_LIST__ symbols in PE linker scripts.
PR 22762
* scripttempl/pe.sc: Remove PROVIDE()s from __CTOR_LIST__ and
__DTOR_LIST__ symbols. Add a comment explaining why this is
necessary.
* scripttemp/pep.sc: Likewise.
* ld.texinfo (PROVIDE): Add a note about the effect of common
symbols.
commit 138a158f0a561d406bebb8b91eba0dd6dedd430e
Author: Sandra Loosemore <sandra@codesourcery.com>
Date: Fri Feb 2 23:00:02 2018 -0800
Disable -shared support in nios2-elf-ld.
2018-02-03 Sandra Loosemore <sandra@codesourcery.com>
* emulparams/nios2elf.sh (GENERATE_SHLIB_SCRIPT): Don't set.
commit c83344582375e65643c5efe68b3739e87db482f3
Author: Cary Coutant <ccoutant@gmail.com>
Date: Fri Feb 2 17:44:27 2018 -0800
Add support for DWARF-4 line number tables.
Reads the maximum_operations_per_instruction field, added in DWARF-4 to the
line number program header.
gold/
* PR gold/22776
* dwarf_reader.cc (Sized_dwarf_line_info::read_header_prolog): Add
support for DWARF-4 line number tables.
* dwarf_reader.h (Sized_dwarf_line_info::max_ops_per_insn): New field.
commit d73daf84d6c95c9f7854ed76cc566ea5b240bc97
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Feb 3 00:00:31 2018 +0000
Automatic date update in version.in
commit 7f02625eb48105e100d2da58091d56978ed041ef
Author: Jim Wilson <jimw@sifive.com>
Date: Fri Feb 2 12:43:09 2018 -0800
RISC-V: Fix --wrap and relaxation conflict.
bfd/
PR ld/22756
* elfnn-riscv.c (riscv_relax_delete_bytes): New parameter link_info.
If link_info->wrap_hash, check for a duplicate symbol and ignore.
(_bfd_riscv_relax_call, bfd_riscv_relax_lui, _bfd_riscv_relax_tls_le):
Pass new argument to riscv_relax_delete_bytes.
(_bfd_riscv_relax_align, _bfd_riscv_relax_delete): Likewise. Remove
ATTRIBUTE_UNUSED from link_info parameter.
commit 0625771b9e29116dc1fb0b597501f18e4bb0e18c
Author: Leszek Swirski via gdb-patches <gdb-patches@sourceware.org>
Date: Thu Feb 1 23:23:28 2018 -0500
MI: Allow non-raw varobj evaluation
Make the MI variable object expression evaluation, with the
-var-evaluate-expression command, recursively call pretty printers, to
match the output of normal expression printing.
Consider the following code:
struct Foo { int val; };
struct Wrapper { Foo foo; };
int main() {
Wrapper w;
w.foo.val = 23;
}
and this pretty printer file:
import gdb.printing
class FooPrinter:
def __init__(self, val):
self.val = val
def to_string(self):
return "Foo" + str(self.val["val"])
class WrapperPrinter:
def __init__(self, val):
self.val = val
def to_string(self):
return self.val["foo"]
test_printer = gdb.printing.RegexpCollectionPrettyPrinter("test")
test_printer.add_printer('Foo', '^Foo$', FooPrinter)
test_printer.add_printer('Wrapper', '^Wrapper$', WrapperPrinter)
gdb.printing.register_pretty_printer(None, test_printer)
Setting a breakpoint at the end of the function, we call the following commands:
-enable-pretty-printing
^done
-var-create var_w @ w
^done,name="var_w",numchild="0",value="{val = 23}",type="Wrapper",dynamic="1",has_more="0"
-var-create var_w_foo @ w.foo
^done,name="var_w_foo",numchild="0",value="Foo23",type="Foo",dynamic="1",has_more="0"
-var-evaluate-expression var_w
^done,value="{val = 23}"
-var-evaluate-expression var_w_foo
^done,value="Foo23"
-data-evaluate-expression w
^done,value="Foo23"
-data-evaluate-expression w.foo
^done,value="Foo23"
So, in the -var-evaluate-expression var_w case, we print the "raw" value
of w.foo, while in the -data-evaluate-expression w case, we print the
pretty printed w.foo value. After this patch, all of the above print
"Foo23".
gdb/ChangeLog:
* varobj.c (varobj_formatted_print_options): Allow recursive
pretty printing if pretty printing is enabled.
gdb/testsuite/ChangeLog:
* gdb.python/py-prettyprint.c
(struct to_string_returns_value_inner,
struct to_string_returns_value_wrapper): New.
(main): Add tsrvw variable.
* gdb.python/py-prettyprint.py (ToStringReturnsValueInner,
ToStringReturnsValueWrapper): New classes.
(register_pretty_printers): Register new pretty-printers.
* gdb.python/py-prettyprint.exp (run_lang_tests): Test printing
recursive pretty printer.
* gdb.python/py-mi.exp: Likewise.
commit 5bb0830d10b19230f9615694fa3c1230b32794b9
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Fri Feb 2 15:25:31 2018 +0000
binutils/riscv: Register names in DWARF output
Adds a register name table for RiscV so that objdump and readelf can
both use better register names.
binutils/ChangeLog:
* dwarf.c (dwarf_regnames_riscv): New register name table.
(init_dwarf_regnames_riscv): New function.
(init_dwarf_regnames): Add call to initialise RiscV register
names.
* dwarf.h (init_dwarf_regnames_riscv): Declare.
* objdump.c (dump_dwarf): Add call to initialise RiscV register
names.
commit e54d3c943bb3999aeaf1667b4975dc035f7b554c
Author: Maciej W. Rozycki <macro@mips.com>
Date: Fri Feb 2 18:08:04 2018 +0000
LD/testsuite: Pass $AFLAGS_PIC to GAS for PIC assembly
Add $AFLAGS_PIC flags for PIC assembly to a number of tests missing them
and remove `tic6x-*-*' XFAIL annotations from them, previously added to
paper over:
.../ld-new: warning: generating a shared library containing non-PID code
error messages produced due to `-mpic -mpid=near' GAS options having not
been used. Such errors now do not happen anymore, removing:
XFAIL: Build shared library for pr14170
XFAIL: PR ld/21703 shared
XFAIL: Build shared library for broken linker script test
XFAIL: Build pr17068.so
XFAIL: -Bsymbolic-functions
XFAIL: Build pr20995.so
XFAIL: Build pr22374 shared library
with `tic6x-elf' and `tic6x-uclinux' targets. These tests now pass all
except for:
FAIL: PR ld/21703 shared
which is now due to a different reason, as follows:
extra regexps in .../ld/testsuite/ld-elf/pr21703-shared.sd starting with "^Symbol table '\.dynsym' contains [0-9]+ entries:$"
EOF from dump.out
FAIL: PR ld/21703 shared
The addition of $AFLAGS_PIC requires the affected test cases to use the
`list' command rather than `{}' characters to create a list, to avoid
the quoting property `{}' also have in TCL. Consequently the change is
slightly more extensive than it could otherwise be.
ld/
* testsuite/ld-elf/shared.exp: Add $AFLAGS_PIC throughout to PIC
assembly builds where missing and remove `tic6x-*-*' XFAIL
markings accordingly.
commit d830549dba59f4e11412fd6dc18b7b1d4c6cf557
Author: Alan Modra <amodra@gmail.com>
Date: Fri Feb 2 16:55:21 2018 +1030
PowerPC64, don't relocate nops
This fixes a "bug" in that nops emitted as part of code optimization
were being relocated. As it happens the relocation value was always
zero so the nop wasn't changed. Whew! I've also moved the use of
"howto" later since I was caught out in some recent code changes with
the howto not matching r_type.
* elf64-ppc.c (ppc64_elf_relocate_section): Don't relocate nops
emitted for toc sequence optimization. Set and use "howto" later.
commit 59498c305e6f1db2a1ed8d44cb58f0d24ec092fe
Author: Leszek Swirski <leszeks@google.com>
Date: Thu Jan 25 16:20:47 2018 +0000
Do not classify C struct members as a filename
There is existing logic in C/C++ expression parsing to avoid classifying
names as a filename when they are a field on the this object. This
change extends this logic to also avoid classifying names after a
struct-op (-> or .) as a filename, which otherwise causes a syntax
error.
Thus, it is now possible in the file
#include <map>
struct D {
void map();
}
D d;
to call
(gdb) print d.map()
where previously this would have been a syntax error.
Tested on gdb.cp/*.exp
gdb/ChangeLog:
* c-exp.y (lex_one_token, classify_name, yylex): Don't classify
names after a structop as a filename
gdb/testsuite/ChangeLog:
* gdb.cp/filename.cc, gdb.cp/filename.exp: Test that member
functions with the same name as an include file are parsed
correctly.
commit 17545aa1bfa291def4674c6700c1c7a3575ee5c1
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Feb 2 00:00:29 2018 +0000
Automatic date update in version.in
commit 2d9e6acbdbc528563a9df5445584a8a150a86527
Author: Yao Qi <yao.qi@linaro.org>
Date: Thu Feb 1 15:51:01 2018 +0000
Rewrite arm_record_coproc_data_proc and arm_record_data_proc_misc_ld_str
When I triage some reverse debugging test fails on arm-linux, I find
arm_record_coproc_data_proc and arm_record_data_proc_misc_ld_str is not
friendly to instruction encoding on ARM ARM. This patch rewrites them, in
a way match more closely to the manual.
gdb:
2018-02-01 Yao Qi <yao.qi@linaro.org>
* arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
(arm_record_coproc_data_proc): Likewise.
commit df95a9cf09867c237ddf9b4eb65a990e86de1e17
Author: Yao Qi <yao.qi@linaro.org>
Date: Thu Feb 1 15:09:44 2018 +0000
set ret signed in arm_record_extension_space
Variable 'ret' should be int rather than unsigned, as it can be -1.
gdb:
2018-02-01 Yao Qi <yao.qi@linaro.org>
* arm-tdep.c (arm_record_extension_space): Change ret to signed.
commit d4d38844faaff1576b021558d0835dedbd415e8d
Author: Yao Qi <yao.qi@linaro.org>
Date: Thu Feb 1 14:50:23 2018 +0000
Fix gdb.base/attach.exp fails when gdb is configured --with-sysroot=/
I see some test fails in gdb.base/attach.exp when gdb is configured
--with-sysroot=/.
FAIL: gdb.base/attach.exp: attach2, with no file
FAIL: gdb.base/attach.exp: load file manually, after attach2 (re-read) (got interactive prompt)
FAIL: gdb.base/attach.exp: attach when process' a.out not in cwd
If gdb is configured this way, sysroot is "/" in default, and if binfile
is a absolute path, the regexp pattern $sysroot$escapedbinfile is
incorrect.
There are different ways to fix it, but I don't want to complicate the
test, so I choose this naive way.
gdb/testsuite:
2018-02-01 Yao Qi <yao.qi@linaro.org>
* gdb.base/attach.exp (do_attach_tests): Set sysroot to
"\[^\r\n\]*".
commit e99955cd8eca9ac8eff828e8c7b676955fd46e04
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Thu Feb 1 13:21:41 2018 +0000
Fix compile time warnings building the binutils with clang.
bfdI would like to fix instances of the following warning, when building
with clang with no special CFLAGS other than -g3 -O0.
/home/emaisin/src/binutils-gdb/bfd/elflink.c:5425:45: error: performing pointer arithmetic on a null pointer has undefined behavior [-Werror,-Wnull-pointer-arithmetic]
return (struct elf_link_hash_entry *) 0 - 1;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
Replacing those with "(struct elf_link_hash_entry *) -1" gets rid of the
warning. I wanted to check that it didn't change the resulting code, so
I tried to build this:
$ cat test.c
int *before()
{
return (int *) 0 - 1;
}
int *after()
{
return (int *) - 1;
}
$ gcc -c test.c -g
$ objdump -d test.o
test.o: file format elf64-x86-64
Disassembly of section .text:
0000000000000000 <before>:
0: 55 push %rbp
1: 48 89 e5 mov %rsp,%rbp
4: 48 c7 c0 fc ff ff ff mov $0xfffffffffffffffc,%rax
b: 5d pop %rbp
c: c3 retq
000000000000000d <after>:
d: 55 push %rbp
e: 48 89 e5 mov %rsp,%rbp
11: 48 c7 c0 ff ff ff ff mov $0xffffffffffffffff,%rax
18: 5d pop %rbp
19: c3 retq
This shows that the previous code doesn't actually return -1 as the
function documentation says, but the new one does, so it's kind of a
bugfix.
bfd * elf64-ppc.c (ppc64_elf_archive_symbol_lookup): Avoid pointer
arithmetic on NULL pointer.
* elflink.c (_bfd_elf_archive_symbol_lookup,
elf_link_add_archive_symbols): Likewise.
ld * ldexp.c (fold_name, exp_fold_tree_1): Avoid pointer arithmetic
on NULL pointer.
commit f2023ce7e8d70b0155cc6206c901e185260918f0
Author: Alan Modra <amodra@gmail.com>
Date: Thu Feb 1 18:01:00 2018 +1030
PR22769, crash when running 32-bit objdump on corrupted file
PR 22769
* objdump.c (load_specific_debug_section): Check for overflow
when adding one to section size for a string section terminator.
commit 35f48e217ab6f909510bf9ca07325ec16122ae88
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Feb 1 00:00:21 2018 +0000
Automatic date update in version.in
commit f000c2b940e82736d8a58387d73ac48bc38a4220
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Jan 31 12:42:28 2018 -0800
Fix testsuite/ld-elf/pr21964-5.c
Mark my_var as used. Otherwise it fails at -O2.
* testsuite/ld-elf/pr21964-5.c (my_var): Mark as used.
commit 07e5f5cf883c64f7bd8a2afa4302c0479670b03f
Author: Nikola Prica <nikola.prica@rt-rk.com>
Date: Wed Jan 31 19:23:00 2018 +0100
Fix for prologue processing on PowerPC
One of conditions in skip_prologue() was never visited if there was mflr
instruction that moves the link register to a register different than r0.
This condition expects non shifted value of `lr_reg`. Previously offset
of link register was never saved for registers different than r0.
gdb/ChangeLog:
2018-01-31 Nikola Prica <nikola.prica@rt-rk.com>
* rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
assign shifted lr_reg to fdata->lr_register when lr_reg is set.
gdb/testsuite/ChangeLog:
2018-01-31 Nikola Prica <nikola.prica@rt-rk.com>
* gdb.arch/powerpc-prologue-frame.s: New file.
* gdb.arch/powerpc-prologue-frame.c: Likewise.
* gdb.arch/powerpc-prologue-frame.exp: Likewise.
commit 450b6317357b67dfcd0ab951a83432d3fc2a65bc
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed Jan 31 14:47:12 2018 +0000
LD/testsuite: Fix a typo s/scrip/script/ in `note-3.so' build test name
ld/
* testsuite/ld-elf/shared.exp: Fix a typo s/scrip/script/.
commit 8988502d75343349cee39575c0e4a0b33f7c80e0
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed Jan 31 14:47:12 2018 +0000
MIPS/LD/testsuite: Correct dynamic links with VR4100, VR4300 and VR5000
Correct LD test suite failures with VR4100, VR4300 and VR5000 bare metal
MIPS/ELF targets which do not default to linking with shared libraries,
which leads to link failures like:
.../ld/ld-new: cannot find -lcomm-data
FAIL: Common symbol override test
or:
.../ld/ld-new: attempted static link of dynamic object `tmpdir/pr14170.so'
FAIL: PR ld/14170
removing:
FAIL: Build pr22471b.so
FAIL: Build pr22471
FAIL: Build pr22649-2b.so
FAIL: Build pr22649-2d.so
FAIL: Build pr22150
FAIL: PR ld/14170
FAIL: --gc-sections with __gxx_personality
test failures.
ld/
* testsuite/ld-elf/comm-data.exp: Pass `-call_shared' to links
involving a shared library for `mips*vr4100*-*-elf*',
`mips*vr4300*-*-elf*' and `mips*vr5000*-*-elf*' targets.
* testsuite/ld-elf/provide-hidden.exp: Likewise.
* testsuite/ld-elf/shared.exp: Likewise.
* testsuite/ld-gc/gc.exp: Likewise.
* testsuite/ld-mips-elf/comm-data.exp: Likewise.
commit f3a9baf18db14707276a8c911d4a6409ad965926
Author: Maciej W. Rozycki <macro@mips.com>
Date: Wed Jan 31 14:47:12 2018 +0000
LD/testsuite: Move ELF shared library tests from elf.exp to shared.exp
Move those ELF shared library tests that are in ld-elf/elf.exp over to
ld-elf/shared.exp, to keep them all together and make the maintenance of
extra flags needed with some targets and shared library builds easier,
and also removing the need for the large:
if { [check_shared_lib_support] } then {
[...]
}
conditional block and consequently reducing indentation, which always
helps with TCL code. No functional change, except for the order of
individual test case execution which has changed accordingly, i.e. the
test results are shuffled.
ld/
* testsuite/ld-elf/elf.exp: Move shared library tests over to...
* testsuite/ld-elf/shared.exp: ... here.
commit 3045b47554503c6f154e446662204e295fc769a1
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jan 31 13:50:34 2018 +0000
gdb: Fix remote-sim/MinGW/Darwin builds
(Add missing ChangeLog entry)
The recent commit e671cd59 ("Per-inferior target_terminal state, fix
PR gdb/13211, more") missed adjusting a few targets to the new
target_ops->to_interrupt interface, breaking the build for those
targets. This fixes it.
Note: remote-sim doesn't really support async execution, so I don't
think gdbsim_interrupt is ever reached via target_interrupt. (It is
reached via gdbsim_cntrl_c though).
The inflow.c changes are a bit ugly, but they're just doing what other
parts of the file already do to handle the same missing functions.
Targets that don't have 'kill', like mingw have their own
target_ops->to_interrupt implementation, so it's fine to make
child_interrupt be a nop.
gdb/ChangeLog:
2018-01-31 Pedro Alves <palves@redhat.com>
* darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
* inflow.c (child_terminal_save_inferior): Wrap reference to
tcgetpgrp in HAVE_TERMIOS_H.
(child_interrupt, child_pass_ctrlc): Wrap references to signal in
_WIN32.
* remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
always iterate over all inferiors.
(gdbsim_cntrl_c): Adjust.
* windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
commit f6cfb42730ed37bfb32cb27ef627df930f437f08
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jan 31 13:45:06 2018 +0000
gdb: Fix remote-sim/MinGW/Darwin builds
The recent commit e671cd59 ("Per-inferior target_terminal state, fix
PR gdb/13211, more") missed adjusting a few targets to the new
target_ops->to_interrupt interface, breaking the build for those
targets. This fixes it.
Note: remote-sim doesn't really support async execution, so I don't
think gdbsim_interrupt is ever reached via target_interrupt. (It is
reached via gdbsim_cntrl_c though).
The inflow.c changes are a bit ugly, but they're just doing what other
parts of the file already do to handle the same missing functions.
Targets that don't have 'kill', like mingw have their own
target_ops->to_interrupt implementation, so it's fine to make
child_interrupt be a nop.
gdb/ChangeLog:
2018-01-31 Pedro Alves <palves@redhat.com>
* darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
* inflow.c (child_terminal_save_inferior): Wrap reference to
tcgetpgrp in HAVE_TERMIOS_H.
(child_interrupt, child_pass_ctrlc): Wrap references to signal in
_WIN32.
* remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
always iterate over all inferiors.
(gdbsim_cntrl_c): Adjust.
* windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
commit bf3077a6c3c9ff21c072a6f42c91bffefd35bc15
Author: Michael Matz <matz@suse.de>
Date: Wed Jan 31 14:26:46 2018 +0100
bfd_elf_define_start_stop: Fix check
We really need to check for a dynamic def, not only a ref.
See added testcase.
bfd/
* elflink.c (bfd_elf_define_start_stop): Fix check of
def_dynamic.
ld/
* testsuite/ld-elf/pr21964-5.c: New test.
* testsuite/ld-elf/shared.exp: Run it.
commit 823143c6ca8ef4267e67ba03771991e08d09fabd
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Jan 31 05:10:40 2018 -0800
Check if __start/__stop symbols are referenced by shared objects
Define __start/__stop symbols if they are referenced by shared objects,
not if they are also defined in shared objects.
bfd/
PR ld/21964
* elflink.c (bfd_elf_define_start_stop): Check if __start and
__stop symbols are referenced by shared objects.
ld/
PR ld/21964
* testsuite/ld-elf/pr21964-4.c: New file.
* testsuite/ld-elf/shared.exp: Run pr21964-4 test on Linux.
commit bea298f9547372e6cb7854fabc2c0646e1d3d9be
Author: Xavier Roirand <roirand@adacore.com>
Date: Fri Jan 26 11:13:11 2018 +0100
(Ada) Add gdb-mi support for stopping at start of exception handler.
Following my previous commit which add support for stopping at start of
exception handler, this commit adds required gdb-mi support for this
feature.
gdb/ChangeLog:
* mi/mi-cmd-catch.c (mi_cmd_catch_handlers): New function.
* mi/mi-cmds.c (mi_cmds): Add catch-handlers command.
* mi/mi-cmds.h (mi_cmd_catch_handlers): Add external declaration.
* NEWS: Document "-catch-handlers" command.
gdb/doc/ChangeLog:
* gdb.texinfo (Ada Exception gdb/mi Catchpoints): Add
documentation for new "-catch-handlers" command.
gdb/testsuite/ChangeLog:
* gdb.ada/mi_catch_ex_hand.exp: New testcase.
* gdb.ada/mi_catch_ex_hand/foo.adb: New file.
Tested on x86_64-linux.
commit 56ecd069f031d6bcdaa46664c68a16cb27b379c3
Author: Xavier Roirand <roirand@adacore.com>
Date: Thu Jan 25 11:09:23 2018 +0100
(Ada) C++fy conditional string when catching exception.
This commit C++fy the conditional string used when catching Ada exception.
gdb/ChangeLog:
* ada-lang.c (catch_ada_exception_command_split)
(create_ada_exception_catchpoint) <cond_string>: Change parameter
type. Update code accordingly.
(catch_ada_exception_command, catch_ada_handlers_command): Use
C++ string instead of char* for conditional var.
(catch_ada_assert_command_split) <cond_string>: Change parameter
type. Update code accordingly.
(catch_assert_command): Use C++ string instead of char* for
conditional var.
* ada-lang.h (create_ada_exception_catchpoint) <cond_string>:
Update declaration.
* mi/mi-cmd-catch.c (mi_cmd_catch_assert, mi_cmd_catch_exception):
Use std::string instead of char* for condition string.
Tested on x86_64-linux.
commit 4fa955b25e31cd071ca7f3b03a2cc89811f9705d
Author: Xavier Roirand <roirand@adacore.com>
Date: Mon Jan 29 13:31:58 2018 +0100
(Ada/MI) Add testcase for mi catch assert with condition
gdb/testsuite/ChangeLog:
* gdb.ada/mi_catch_assert.exp: New testcase.
* gdb.ada/mi_catch_assert/bla.adb: New file.
* gdb.ada/mi_catch_assert/pck.ads: New file.
Tested on x86_64-linux.
commit 395507f62b98a6a1f6778295a5667110b0fc4b57
Author: Xavier Roirand <roirand@adacore.com>
Date: Mon Jan 29 10:43:21 2018 +0100
(Ada) Add testcase for catch assert with condition
gdb/testsuite/ChangeLog:
* gdb.ada/catch_assert_if.exp: New testcase.
* gdb.ada/catch_assert_if/bla.adb: New file.
* gdb.ada/catch_assert_if/pck.ads: New file.
Tested on x86_64-linux.
commit 929b5ad40f70fbd5bdf37d30281a761d56c87b59
Author: Joel Brobecker <brobecker@adacore.com>
Date: Wed Jan 31 02:18:56 2018 -0500
internal-error using '@' (repeat) operator on array of dynamic objects
Using the following Ada declarations (the same as in
gdb.ada/dyn_stride.exp)...
subtype Small_Type is Integer range L .. U;
type Record_Type (I : Small_Type := L) is record
S : String (1 .. I);
end record;
type Array_Type is array (Integer range <>) of Record_Type;
A1 : Array_Type :=
(1 => (I => U, S => (others => ASCII.NUL)),
2 => (I => 1, S => "A"),
3 => (I => 2, S => "AB"));
... where "L" and "U" are variables, trying to apply the repeat
operator to "A1(1)" yields to an internal error:
| (gdb) print a1(1)@3
| $5 = /[...]/gdbtypes.c:4883: internal-error: type* copy_type(const type*):
| Assertion `TYPE_OBJFILE_OWNED (type)' failed.
What happens first is that the ada-lang module evaluated the "A1(1)"
sub-expression returning a structure where "I" (one of the fields
in that structure) has a type which is dynamic, because it is
a range type whose bounds are not statically known.
Next, we apply the repeat ('@') operator, which is done via
allocate_repeat_value, which creates an array type with the correct
bounds to associate to our value, by calling lookup_array_range_type:
| struct type *
| lookup_array_range_type (struct type *element_type,
| LONGEST low_bound, LONGEST high_bound)
| {
| struct gdbarch *gdbarch = get_type_arch (element_type);
| struct type *index_type = builtin_type (gdbarch)->builtin_int;
| struct type *range_type
| = create_static_range_type (NULL, index_type, low_bound, high_bound);
|
| return create_array_type (NULL, element_type, range_type);
| }
As we can see, this creates an array type whose index type is
always owned by the gdbarch. This is where the problem lies.
Next, we use that type to construct a struct value. That value
then gets passed to the valprint module, which then checks
whether our object is dynamic or not. And because field "I" above
had a dynamic range type, we end up determining by association
that the artificial repeat array itself is also dynamic. So
we attempt to resolve the type, which leads to trying to copying
that type. And because the artifical array created by
lookup_array_range_type has an index which is not objfile-owned,
we trip the assertion.
This patch fixes the issue by enhancing lookup_array_range_type
to create an index type which has the same owner as the element
type.
gdb/ChangeLog:
* gdbtypes.c (lookup_array_range_type): Make sure the array's
index type is objfile-owned if the element type is as well.
gdb/testsuite/ChangeLog:
* testsuite/gdb.ada/dyn_stride.exp: Add "print a1(1)@3" test.
commit ab1fadc6b2f057b817e1fc093650b63d9f6dd6c5
Author: Alan Modra <amodra@gmail.com>
Date: Wed Jan 31 13:34:18 2018 +1030
PR22714, Assembler preprocessor loses track of \@
The PR22714 testcase is such that the input buffer processed by
do_scrub_chars ends on this line
1: bug "Returning to usermode but unexpected PSR bits set?", \@
right at the backslash. (The line is part of a macro definition.)
The next input buffer then starts with '@' which starts a comment on
ARM, and the check for \@ fails due to to == tostart. Now it would be
possible to simply access to[-1] in this particular case, but that's
ugly, and to be absolutely safe from people deliberately trying to
crash gas we'd need the read.c:read_a_source_file buffer passed to
do_scrub_chars to have a single byte pad at the start.
PR 22714
* app.c (last_char): New static var.
(struct app_save): Add last_char field.
(app_push, app_pop): Handle it.
(do_scrub_chars): Use last_char in test for "\@". Set last_char.
commit 29236ca20ad953ead58ab791ec376ee7921624b8
Author: Joel Brobecker <brobecker@adacore.com>
Date: Wed Jan 31 07:08:07 2018 +0400
Document the GDB 8.1 release in gdb/ChangeLog
gdb/ChangeLog:
GDB 8.1 released.
commit cc41a04afb7dae98c3595b05e7e9223307138826
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Jan 31 00:00:40 2018 +0000
Automatic date update in version.in
commit 52b2f30022323367b2cd727f402c9876bdc53b0d
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Jan 30 17:48:24 2018 +0000
Improve junk file removal in source tarball creation script.
* src-release.sh (do_proto_toplev): Add patterns for more junk files
to delete before creating the tarball.
commit fcabedd5cb9079268d34b47489a8e4ee669f6868
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Jan 30 17:22:41 2018 +0000
Update description of nm's symbol bss type letters.
PR 22734
* doc/binutils.texi (nm): Update description to point out that
zero-initialized values can also be shown as type B, b, S or s
since they can be stored in the BSS section.
commit c81e88797907fc0698abec09767e49cee33b2bd5
Author: Philipp Rudo <prudo@linux.vnet.ibm.com>
Date: Tue Jan 30 17:10:08 2018 +0100
s390: Fix gdb.base/all-architectures.exp with --enable-targets=all
With 7042632bf79 (s390: Hook s390 into OSABI mechanism) assigning a
default target description was moved from s390_gdbarch_init to
s390_linux_init_abi_*. This causes problems when GDB is built with
--enable-targets=all and the user sets an unsupported OSABI, e.g. "set
osabi AIX". In this case there is no valid tdesc, and GDB crashes with an
internal error. Fix this by reverting parts of 7042632bf79.
gdb/ChangeLog:
* s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
"features/s390x-linux64.c".
(_initialize_s390_linux_tdep): Remove initialization of tdescs
s390_linux32 and s390x_linux64.
(s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
default tdesc.
* s390-tdep.c: Include "features/s390-linux32.c" and
"features/s390x-linux64.c".
(s390_tdesc_valid): Add check for tdesc_has_registers.
(s390_gdbarch_init): Make sure there is always a valid tdesc.
(_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
tdesc_s390x_linux64.
* s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
tdesc_s390x_linux64 to...
* s390-tdep.h: ...here.
commit e671cd59d74cec9f53e110ce887128d1eeadb7f2
Author: Pedro Alves <palves@redhat.com>
Date: Tue Jan 30 14:23:51 2018 +0000
Per-inferior target_terminal state, fix PR gdb/13211, more
In my multi-target branch I ran into problems with GDB's terminal
handling that exist in master as well, with multi-inferior debugging.
This patch adds a testcase for said problems
(gdb.multi/multi-term-settings.exp), fixes the problems, fixes PR
gdb/13211 as well (and adds a testcase for that too,
gdb.base/interrupt-daemon.exp).
The basis of the problem I ran into is the following. Consider a
scenario where you have:
- inferior 1 - started with "attach", process is running on some
other terminal.
- inferior 2 - started with "run", process is sharing gdb's terminal.
In this scenario, when you stop/resume both inferiors, you want GDB to
save/restore the terminal settings of inferior 2, the one that is
sharing GDB's terminal. I.e., you want inferior 2 to "own" the
terminal (in target_terminal::is_ours/target_terminal::is_inferior
sense).
Unfortunately, that's not what you get currently. Because GDB doesn't
know whether an attached inferior is actually sharing GDB's terminal,
it tries to save/restore its settings anyway, ignoring errors. In
this case, this is pointless, because inferior 1 is running on a
different terminal, but GDB doesn't know better.
And then, because it is only possible to have the terminal settings of
a single inferior be in effect at a time, or make one inferior/pgrp be
the terminal's foreground pgrp (aka, only one inferior can "own" the
terminal, ignoring fork children here), if GDB happens to try to
restore the terminal settings of inferior 1 first, then GDB never
restores the terminal settings of inferior 2.
This patch fixes that and a few things more along the way:
- Moves enum target_terminal::terminal_state out of the
target_terminal class (it's currently private) and makes it a
scoped enum so that it can be easily used elsewhere.
- Replaces the inflow.c:terminal_is_ours boolean with a
target_terminal_state variable. This allows distinguishing is_ours
and is_ours_for_output states. This allows finally making
child_terminal_ours_1 do something with its "output_only"
parameter.
- Makes each inferior have its own copy of the
is_ours/is_ours_for_output/is_inferior state.
- Adds a way for GDB to tell whether the inferior is sharing GDB's
terminal. Works best on Linux and Solaris; the fallback works just
as well as currently.
- With that, we can remove the inf->attach_flag tests from
child_terminal_inferior/child_terminal_ours.
- Currently target_ops.to_ours is responsible for both saving the
current inferior's terminal state, and restoring gdb's state.
Because each inferior has its own terminal state (possibly handled
by different targets in a multi-target world, even), we need to
split the inferior-saving part from the gdb-restoring part. The
patch adds a new target_ops.to_save_inferior target method for
that.
- Adds a new target_terminal::save_inferior() function, so that
sequences like:
scoped_restore_terminal_state save_state;
target_terminal::ours_for_output ();
... restore back inferiors that were
target_terminal_state::is_inferior before back to is_inferior, and
leaves inferiors that were is_ours alone.
- Along the way, this adds a default implementation of
target_pass_ctrlc to inflow.c (for inf-child.c), that handles
passing the Ctrl-C to a process running on GDB's terminal or to
some other process otherwise.
- Similarly, adds a new target default implementation of
target_interrupt, for the "interrupt" command. The current
implementation of this hook in inf-ptrace.c kills the whole process
group, but that's incorrect/undesirable because we may not be
attached to all processes in the process group. And also, it's
incorrect because inferior_process_group() doesn't really return
the inferior's real process group id if the inferior is not a
process group leader... This is the cause of PR gdb/13211 [1],
which this patch fixes. While at it, that target method's "ptid"
parameter is eliminated, because it's not really used.
- A new test is included that exercises and fixes PR gdb/13211, and
also fixes a GDB issue reported on stackoverflow that I ran into
while working on this [2]. The problem is similar to PR gdb/13211,
except that it also triggers with Ctrl-C. When debugging a daemon
(i.e., a process that disconnects from the controlling terminal and
is not a process group leader, then Ctrl-C doesn't work, you just
can't interrupt the inferior at all, resulting in a hung debug
session. The problem is that since the inferior is no longer
associated with gdb's session / controlling terminal, then trying
to put the inferior in the foreground fails. And so Ctrl-C never
reaches the inferior directly. pass_signal is only used when the
inferior is attached, but that is not the case here. This is fixed
by the new child_pass_ctrlc. Without the fix, the new
interrupt-daemon.exp testcase fails with timeout waiting for a
SIGINT that never arrives.
[1] PR gdb/13211 - Async / Process group and interrupt not working
https://sourceware.org/bugzilla/show_bug.cgi?id=13211
[2] GDB not reacting Ctrl-C when after fork() and setsid()
https://stackoverflow.com/questions/46101292/gdb-not-reacting-ctrl-c-when-after-fork-and-setsid
Note this patch does _not_ fix:
- PR gdb/14559 - The 'interrupt' command does not work if sigwait is in use
https://sourceware.org/bugzilla/show_bug.cgi?id=14559
- PR gdb/9425 - When using "sigwait" GDB doesn't trap SIGINT. Ctrl+C terminates program when should break gdb.
https://sourceware.org/bugzilla/show_bug.cgi?id=9425
The only way to fix that that I know of (without changing the kernel)
is to make GDB put inferiors in a separate session (create a
pseudo-tty master/slave pair, make the inferior run with the slave as
its terminal, and have gdb pump output/input on the master end).
gdb/ChangeLog:
2018-01-30 Pedro Alves <palves@redhat.com>
PR gdb/13211
* config.in, configure: Regenerate.
* configure.ac: Check for getpgid.
* go32-nat.c (go32_pass_ctrlc): New.
(go32_target): Install it.
* inf-child.c (inf_child_target): Install
child_terminal_save_inferior, child_pass_ctrlc and
child_interrupt.
* inf-ptrace.c (inf_ptrace_interrupt): Delete.
(inf_ptrace_target): No longer install it.
* infcmd.c (interrupt_target_1): Adjust.
* inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
(child_interrupt): Declare.
(inferior::terminal_state): New.
* inflow.c (struct terminal_info): Update comments.
(inferior_process_group): Delete.
(terminal_is_ours): Delete.
(gdb_tty_state): New.
(child_terminal_init): Adjust.
(is_gdb_terminal, sharing_input_terminal_1)
(sharing_input_terminal): New functions.
(child_terminal_inferior): Adjust. Use sharing_input_terminal.
Set the process's actual process group in the foreground if
possible. Handle is_ours_for_output/is_ours distinction. Don't
mark terminal as the inferior's if not sharing GDB's terminal.
Don't check attach_flag.
(child_terminal_ours_for_output, child_terminal_ours): Adjust to
pass down a target_terminal_state.
(child_terminal_save_inferior): New, factored out from ...
(child_terminal_ours_1): ... this. Handle
target_terminal_state::is_ours_for_output.
(child_interrupt, child_pass_ctrlc): New.
(inflow_inferior_exit): Clear the inferior's terminal_state.
(copy_terminal_info): Copy the inferior's terminal state.
(_initialize_inflow): Remove reference to terminal_is_ours.
* inflow.h (inferior_process_group): Delete.
* nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
* procfs.c (procfs_target): Don't install procfs_interrupt.
(procfs_interrupt): Delete.
* remote.c (remote_serial_quit_handler): Adjust.
(remote_interrupt): Remove ptid parameter. Adjust.
* target-delegates.c: Regenerate.
* target.c: Include "terminal.h".
(target_terminal::terminal_state): Rename to ...
(target_terminal::m_terminal_state): ... this.
(target_terminal::init): Adjust.
(target_terminal::inferior): Adjust to per-inferior
terminal_state.
(target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
(target_terminal::ours, target_terminal::ours_for_output): Use
target_terminal_is_ours_kind.
(target_interrupt): Remove ptid parameter. Adjust.
(default_target_pass_ctrlc): Adjust.
* target.h (target_ops::to_terminal_save_inferior): New field.
(target_ops::to_interrupt): Remove ptid_t parameter.
(target_interrupt): Remove ptid_t parameter. Update comment.
(target_pass_ctrlc): Update comment.
* target/target.h (target_terminal_state): New scoped enum,
factored out of ...
(target_terminal::terminal_state): ... here.
(target_terminal::inferior): Update comments.
(target_terminal::restore_inferior): New.
(target_terminal::is_inferior, target_terminal::is_ours)
(target_terminal::is_ours_for_output): Adjust.
(target_terminal::scoped_restore_terminal_state): Adjust to
rename, and call restore_inferior() instead of inferior().
(target_terminal::scoped_restore_terminal_state::m_state): Change
type.
(target_terminal::terminal_state): Rename to ...
(target_terminal::m_terminal_state): ... this and change type.
gdb/gdbserver/ChangeLog:
2018-01-30 Pedro Alves <palves@redhat.com>
PR gdb/13211
* target.c (target_terminal::terminal_state): Rename to ...
(target_terminal::m_terminal_state): ... this.
gdb/testsuite/ChangeLog:
2018-01-30 Pedro Alves <palves@redhat.com>
PR gdb/13211
* gdb.base/interrupt-daemon.c: New.
* gdb.base/interrupt-daemon.exp: New.
* gdb.multi/multi-term-settings.c: New.
* gdb.multi/multi-term-settings.exp: New.
commit 9c3a5d9319648db16b30a91253ad02d41d242cef
Author: Pedro Alves <palves@redhat.com>
Date: Tue Jan 30 14:23:51 2018 +0000
linux-nat: Eliminate custom target_terminal_{inferior,ours}, stop using set_sigint_trap
This patch gets rid of linux-nat.c's custom
target_terminal_inferior/target_terminal_ours implementations.
The only remaining reason those overrides exist is to install
clear_sigint_trap in order to pass Ctrl-C/SIGINT to the inferior
process in case the inferior is not sharing GDB's terminal (and
target_wait was called without TARGET_WNOHANG).
However, I think that's better handled by QUIT / target_pass_ctrlc
nowadays. Going that route avoids the issue with set_sigint_trap only
looking at the current inferior to know whether to override SIGINT or
not, which doesn't really work correctly with multi-inferior in the
picture. Also centralizing on a single SIGINT handler as much as
possible seems better considering a future multi-target world.
Tested on x86-64 GNU/Linux.
gdb/ChangeLog:
2018-01-30 Pedro Alves <palves@redhat.com>
* linux-nat.c (wait_for_signal): New function.
(wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
directly.
(async_terminal_is_ours)
(linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
(linux_nat_add_target): Don't override
to_terminal_inferior/to_terminal_ours.
commit 040b4a9eb8430dc5e0fc657da88b08ab730b97ee
Author: Alan Modra <amodra@gmail.com>
Date: Tue Jan 30 22:11:00 2018 +1030
Add --gc-sections test checking removal of __start/__stop symbols.
Well, just __stop__foo but that should be good enough.
* testsuite/ld-gc/stop.d,
* testsuite/ld-gc/stop.s: New test.
* testsuite/ld-gc/gc.exp: Run it.
commit 76cb3a89a6615cf3418fa1efe8268bf6673a5c8a
Author: Alan Modra <amodra@gmail.com>
Date: Tue Jan 30 16:02:32 2018 +1030
PR22758, FAIL: Run pr22393-2
We can't map different disk pages into the same memory page; The last
page mapped will simply overwrite any previous pages. The
executable/non-executable new_segment test ignored this fact, leading
to a ld.so segfault on hppa when .dynamic is overwritten with zeros.
This patch moves existing tests for demand paging with lma on the same
memory page, to a new test performed before any case where we want a
new segment due to protection or loadable conflicts.
PR 22758
* elf.c (_bfd_elf_map_sections_to_segments): Don't start a new
segment when demand paged with lma on the same page. Test this
before load/non-load, executable/non-executable,
writable/non-writable tests and simplify. Delete bogus relro
condition in writable/non-writable test. Delete outdated
comment. Formatting.
commit fc413dc467e4c46013f6e5a60dc5db24d63f72ea
Author: Joel Brobecker <brobecker@adacore.com>
Date: Mon Jan 29 23:03:09 2018 -0500
gdb.base/break.exp: fix last "info break" test failure on Ubuntu 16.04
The last test of this testcase fails when run on Ubuntu 16.04 using
the system compiler (16.04):
FAIL: gdb.base/break.exp: verify that they were cleared
This is because the testcase expected that a breakpoint on line 47 of break.c...
printf ("%d\n", factorial (atoi ("6"))); /* set breakpoint 1 here */
... would actually be inserted on an instruction belonging to
that line. However, what actually happens is that system GCC on
that version of Ubuntu ends up inlining everything, including
the call to printf, thus reporting every instruction of generated
for this line of code as belonging to a different function. As
a result, GDB ends up insering the breakpoint on the next line
of code, which is line 49:
(gdb) break break.c:$l
Breakpoint 3 at 0x4005c1: file /[...]/gdb.base/break.c, line 49.
This causes a spurious failure in the "info break" test later on,
as it assumed that the breakpoint above is inserted on line 47:
gdb_test "info break" "$srcfile:$line" "verify that they were cleared"
This patch fixes the issue by saving the actual source location where
the breakpoint was inserted.
gdb/testsuite/ChangeLog:
* gdb.base/break.exp: Save the location where the breakpoint
on break.c:47 was actually inserted when debugging the version
compiled at -O2 and use it in the expected output of the "info
break" test performed soon after.
tested on x86_64-linux, with two configurations:
- Ubuntu 16.04 with the system compiler (breakpoint lands on line 49)
- Ubuntu 16.04 with GCC 7.3.1 (breakpoint lands on line 47)
commit af667f2218ecf772ac2f8882ceba6a16ddc18ddc
Author: Maciej W. Rozycki <macro@mips.com>
Date: Tue Jan 30 01:31:23 2018 +0000
MIPS/LD/testsuite: Correct PR ld/22649 test case failures
Fix commit d664fd41e15f ("Ignore dynamic references on forced local
symbols") and use alternative test actions and match patterns to
correctly handle messages like:
.../ld/ld-new: Removing unused section '.reginfo' in file 'tmpdir/pr22649-2b.o'
or:
.../ld/ld-new: Removing unused section '.MIPS.options' in file 'tmpdir/pr22649-2b.o'
produced by LD on MIPS targets, removing:
FAIL: Build pr22649-2c.so
FAIL: Build pr22649-2d.so
test suite failures and tightening checks made with `pr22649-2a.so' and
`pr22649-2b.so' test cases.
Keep the original empty action with `pr22649-2c.so' and `pr22649-2d.so'
links and MIPS/ELF targets though, because for them the linker does not
garbage-collect the `.reginfo' section. This is because the section has
its flags set differently by code in GAS in `md_begin':
if (strncmp (TARGET_OS, "elf", 3) != 0)
flags |= SEC_ALLOC | SEC_LOAD;
and consequently BFD linker code in `_bfd_elf_gc_mark_extra_sections':
else if (((isec->flags & SEC_DEBUGGING) != 0
|| (isec->flags & (SEC_ALLOC | SEC_LOAD | SEC_RELOC)) == 0)
&& elf_next_in_group (isec) == NULL)
isec->gc_mark = 1;
marks these sections to be kept due to their SEC_ALLOC, SEC_LOAD and
SEC_RELOC flags all being zero (`.reginfo' sections never have
relocations attached).
ld/
PR ld/22649
* testsuite/ld-elf/pr22649-2ab-mips.msg: New stderr output.
* testsuite/ld-elf/pr22649-2cd-mips.msg: New stderr output.
* testsuite/ld-elf/shared.exp: Use the new outputs with
`mips*-*-*' targets.
commit 822520337789f93b528fe0babc7dcfb03bb50fcd
Author: Maciej W. Rozycki <macro@mips.com>
Date: Tue Jan 30 00:38:12 2018 +0000
MIPS/LD/testsuite: Adjust match patterns for special section indexes
Update `readelf' symbol table dump match patterns to handle SHN_MIPS_DATA
and SHN_MIPS_TEXT special section indexes produced by the IRIX ELF format
variation used with a number of MIPS targets and printed by `readelf' as
PRC[0xff02] and PRC[0xff01] respectively, correcting LD test suite
failures:
extra regexps in .../ld/testsuite/ld-elf/comm-data1.sd starting with "^ +[0-9]+: +[0-9a-f]+ +0 +OBJECT +GLOBAL +DEFAULT +[0-9]+ +foo$"
EOF from dump.out
FAIL: Common symbol override test (auxiliary shared object build)
extra regexps in .../ld/testsuite/ld-elf/pr21703-shared.sd starting with "^ +[0-9]+: +[0-9a-f]+ +4 +FUNC +GLOBAL +DEFAULT +[0-9] +foo@FOO$"
EOF from dump.out
FAIL: PR ld/21703 shared
extra regexps in .../ld/testsuite/ld-elf/comm-data1.sd starting with "^ +[0-9]+: +[0-9a-f]+ +0 +OBJECT +GLOBAL +DEFAULT +[0-9]+ +foo$"
EOF from dump.out
FAIL: MIPS o32/copyreloc common symbol override test (auxiliary shared object build)
extra regexps in .../ld/testsuite/ld-elf/comm-data1.sd starting with "^ +[0-9]+: +[0-9a-f]+ +0 +OBJECT +GLOBAL +DEFAULT +[0-9]+ +foo$"
EOF from dump.out
FAIL: MIPS o32/nocopyreloc common symbol override test (auxiliary shared object build)
observed due to file contents like:
7: 5ffe02e8 0 OBJECT GLOBAL DEFAULT PRC[0xff02] foo
shown by `readelf -s' vs:
+[0-9]+: +[0-9a-f]+ +0 +OBJECT +GLOBAL +DEFAULT +[0-9]+ +foo
pattern expected, triggered by widening testing to these targets by commit
05a5feafdd38 ("Rewrite check_shared_lib_support").
ld/
* testsuite/ld-elf/comm-data1.sd: Alternatively accept
`PRC[0xff02]' in place of a regular section index.
* testsuite/ld-elf/pr21703-shared.sd: Likewise `PRC[0xff01]'.
commit f49db8befafd5a716a83fec75c90145c58af7418
Author: Alan Modra <amodra@gmail.com>
Date: Mon Jan 29 15:48:03 2018 +1030
32-bit objcopy build fail
* objcopy.c (merge_gnu_build_notes): Use (bfd_vma) -1 as
"artificially large" end address.
commit 016548df729bf84d155a90564c6a64beaa7fe690
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Jan 30 00:00:25 2018 +0000
Automatic date update in version.in
commit 36b8fda5d614cb5aaf701a92befa9919bd0b195a
Author: Alan Modra <amodra@gmail.com>
Date: Mon Jan 29 21:45:09 2018 +1030
Make __start/__stop symbols dynamic and add testcase
bfd/
* elflink.c (bfd_elf_define_start_stop): Make __start and __stop
symbols dynamic.
ld/
* testsuite/ld-elf/pr21964-3a.c: New file.
* testsuite/ld-elf/pr21964-3c.c: New file.
* testsuite/ld-elf/shared.exp: Run new __start/__stop testcase.
commit 185cdb8cc7c0102140d41fb6272a5ee99994d72d
Author: Eric Botcazou <ebotcazou@gcc.gnu.org>
Date: Tue Jan 30 00:21:57 2018 +0100
Adjust test for PR ld/22269.
On the SPARC architecture, you need to pass a special flag to GNU as
when you're assembling PIC/PIE code or else you get a wrong relocation
for the GOT symbol.
ld/
* testsuite/ld-elf/shared.exp (AFLAGS_PIC): Define on SPARC.
(pr22269-1): Pass AFLAGS_PIC to the assembler.
commit d85815e2d16f7c042d7912f1fa85bf1b9c28ca44
Author: Eric Botcazou <ebotcazou@gcc.gnu.org>
Date: Tue Jan 30 00:13:51 2018 +0100
Fix PR gas/22738 (.dc.a directive has wrong size on SPARC 64-bit).
The .dc.a directive has wrong size (32 bits) on SPARC 64-bit because
the assembler sets the correct BFD architecture only at the very end
of the processing and it's too late for the directive. It's fixed by
defining TARGET_MACH and making it return a sensible default value.
gas/
* config/tc-sparc.h (sparc_mach): Declare.
(TARGET_MACH): Define to above.
* config/tc-sparc.c (sparc_mach): New function.
(sparc_md_end): Minor tweak.
ld/
* testsuite/ld-elf/pr22450.d: Remove reference to SPARC64.
commit 86b24e15c45bfe5085ed88280e1a5479120edce6
Author: Maciej W. Rozycki <macro@mips.com>
Date: Mon Jan 29 12:10:19 2018 -0800
MIPS/LD/testsuite: Correct comm-data.exp test ABI/emul/endian arrangement
Update the ld-mips-elf/comm-data.exp test script to correctly select
emulations for targets using non-traditional MIPS emulation and also
correctly select ABIs for targets that do not support all of them, and
finally use the default endianness selection to benefit targets which
support only one, complementing commit 05a5feafdd38 ("Rewrite
check_shared_lib_support") and removing numerous test failures such as:
FAIL: MIPS o32/copyreloc common symbol override test (auxiliary shared object build)
FAIL: MIPS o32/copyreloc common symbol override test
FAIL: MIPS o32/nocopyreloc common symbol override test (auxiliary shared objectbuild)
FAIL: MIPS o32/nocopyreloc common symbol override test
FAIL: MIPS n32/copyreloc common symbol override test (auxiliary shared object build)
FAIL: MIPS n32/copyreloc common symbol override test
FAIL: MIPS n32/nocopyreloc common symbol override test (auxiliary shared objectbuild)
FAIL: MIPS n32/nocopyreloc common symbol override test
due to:
.../ld/ld-new: unrecognised emulation mode: elf32btsmip
Supported emulations: elf64btsmip elf64ltsmip
or:
.../ld/ld-new: unrecognised emulation mode: elf32btsmip
Supported emulations: elf32ebmip
or:
.../ld/ld-new: unrecognised emulation mode: elf32btsmip
Supported emulations: elf32l4300
etc., and:
ERROR: -n32 -march=mips3 -EB -call_shared .../ld/testsuite/ld-mips-elf/../ld-elf/comm-data1.s: assembly failed
UNRESOLVED: MIPS n32/copyreloc common symbol override test (auxiliary shared object build)
ERROR: -n32 -march=mips3 -EB -call_nonpic .../ld/testsuite/ld-mips-elf/../ld-elf/comm-data2.s: assembly failed
UNRESOLVED: MIPS n32/copyreloc common symbol override test
ERROR: -n32 -march=mips3 -EB -call_shared .../ld/testsuite/ld-mips-elf/../ld-elf/comm-data1.s: assembly failed
UNRESOLVED: MIPS n32/nocopyreloc common symbol override test (auxiliary shared object build)
ERROR: -n32 -march=mips3 -EB -call_nonpic .../ld/testsuite/ld-mips-elf/../ld-elf/comm-data2.s: assembly failed
UNRESOLVED: MIPS n32/nocopyreloc common symbol override test
due to:
Assembler messages:
Fatal error: selected target format 'elf32-nbigmips' unknown
and:
ERROR: -64 -march=mips3 -EB -call_shared .../ld/testsuite/ld-mips-elf/../ld-elf/comm-data1.s: assembly failed
UNRESOLVED: MIPS n64/copyreloc common symbol override test (auxiliary shared object build)
ERROR: -64 -march=mips3 -EB --defsym ELF64=1 -call_nonpic .../ld/testsuite/ld-mips-elf/../ld-elf/comm-data2.s:assembly failed
UNRESOLVED: MIPS n64/copyreloc common symbol override test
ERROR: -64 -march=mips3 -EB -call_shared .../ld/testsuite/ld-mips-elf/../ld-elf/comm-data1.s: assembly failed
UNRESOLVED: MIPS n64/nocopyreloc common symbol override test (auxiliary shared object build)
ERROR: -64 -march=mips3 -EB --defsym ELF64=1 -call_nonpic .../ld/testsuite/ld-mips-elf/../ld-elf/comm-data2.s:assembly failed
UNRESOLVED: MIPS n64/nocopyreloc common symbol override test
due to:
Assembler messages:
Fatal error: no compiled in support for 64 bit object file format
ld/
* testsuite/ld-mips-elf/comm-data.exp: Correct support for
targets using non-traditional MIPS emulation or having a limited
selection of ABIs available. Don't force big endianness, use
defaults.
commit 69ab5edb4d601611ba7b4d05e56689d4b60ca3b1
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Mon Jan 29 12:29:21 2018 -0500
Don't call "detach_inferior" on "remote_follow_fork"
This patch fixes a regression that has been introduced by:
commit bc09b0c14fb713a9aec25e09b78499f3bc2441b5
Date: Fri Jan 19 11:48:11 2018 -0500
Make linux_nat_detach/thread_db_detach use the inferior parameter
It is possible to trigger this failure with gdb.base/foll-fork.exp (in
which case a bunch of ERROR's will be printed), but one can also use
the test below.
Consider the following example program:
#include <unistd.h>
int
main (int argc, char *argv[])
{
fork ();
return 0;
}
When running it under gdbserver:
# ./gdb/gdbserver/gdbserver --multi --once :2345
And debugging it under GDB, we see a segmentation fault:
# ./gdb/gdb -q -batch -ex 'set remote exec-file ./a.out' -ex 'tar extended-remote :2345' -ex r ./a.out
Starting program:
...
[Detaching after fork from child process 16102.]
Segmentation fault (core dumped)
The problem happens on inferior.c:detach_inferior:
void
detach_inferior (inferior *inf)
{
/* Save the pid, since exit_inferior_1 will reset it. */
int pid = inf->pid;
^^^^^^^^^
exit_inferior_1 (inf, 0);
if (print_inferior_events)
printf_unfiltered (_("[Inferior %d detached]\n"), pid);
}
When this code is called from remote.c:remote_follow_fork, the PID is
valid but there is no 'inferior' associated with it, which means that
'inf == NULL'.
The proper fix here is to not call "detach_inferior" when doing remote
follow-fork, because we don't have an inferior to detach on the host
side.
Before bc09b0c1, that call was already a nop (exit_inferior_1 bails
out early if you pass it a NULL inferior), except that it printed
"Inferior PID detached" when "set print inferior-events" is on. Since
native debugging doesn't call detach_inferior in this case, removing
the call from remote aligns remote debugging output with native
debugging output further.
This has been regtested using BuildBot and no regressions were found.
gdb/ChangeLog:
2018-01-29 Sergio Durigan Junior <sergiodj@redhat.com>
* remote.c (remote_follow_fork): Don't call "detach_inferior".
commit c32b891ab6a558745a9eaa045069febd327b0db4
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Jan 29 13:51:47 2018 +0000
Update Russian translation for the gas sub-directory
commit b431b4ea88c8cc1b75edc4aeaa592942a905c18f
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Jan 29 13:19:02 2018 +0000
Prevent patch remnants from being included in release tarballs.
* src-release.sh (do_proto_toplev): Strip patch remnant files from
the sources before creating the tarball.
commit 98d72909f8f216fb9fc4d7c2c8e48dbe2823cd0b
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Jan 29 04:54:57 2018 -0800
ld: Skip unsupported static executable tests
Skip static executable tests if static executable is unsupported.
Tested on Linux/x86 without libc.a.
PR ld/22732
* testsuite/config/default.exp (STATIC_LDFLAGS): New. Set to
"-static" if target compiler supports it.
* testsuite/ld-bootstrap/bootstrap.exp: Skip static executable
tests if target compiler doesn't support it.
* testsuite/ld-ifunc/ifunc.exp: Likewise.
* testsuite/lib/ld-lib.exp (run_ld_link_exec_tests): Likewise.
(run_cc_link_tests): Likewise.
commit eb77f6a4621795367a39cdd30957903af9dbb815
Author: Alan Modra <amodra@gmail.com>
Date: Sat Jan 27 08:19:33 2018 +1030
PR22741, objcopy segfault on fuzzed COFF object
PR 22741
* coffgen.c (coff_pointerize_aux): Ensure auxent tagndx is in
range before converting to a symbol table pointer.
commit 0d5e2f6abee322730eea6d7c175ae24631d3b089
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Jan 29 00:00:28 2018 +0000
Automatic date update in version.in
commit fc8e7e75c2be02237a7961688b06869814f36a18
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Sun Jan 28 12:07:30 2018 -0500
Remove dwarf2_per_objfile_free and use after free of dwarf2_per_objfile
I got some crashes while doing some work with dwarf2_per_objfile. It
turns out that dwarf2_per_objfile_free is using the dwarf2_per_objfile
objects after their destructor has ran.
The easiest way to reproduce this is to run the inferior twice (do
"start" twice). Currently, it goes unnoticed, but when I tried to
change all_comp_units and all_type_units to std::vectors, things started
crashing.
The dwarf2_per_objfile objects get destroyed here:
#0 dwarf2_per_objfile::~dwarf2_per_objfile (this=0x35afe70, __in_chrg=<optimized out>) at /home/emaisin/src/binutils-gdb/gdb/dwarf2read.c:2422
#1 0x0000000000833282 in dwarf2_free_objfile (objfile=0x356cff0) at /home/emaisin/src/binutils-gdb/gdb/dwarf2read.c:25363
#2 0x0000000000699255 in elf_symfile_finish (objfile=0x356cff0) at /home/emaisin/src/binutils-gdb/gdb/elfread.c:1309
#3 0x0000000000911ed3 in objfile::~objfile (this=0x356cff0, __in_chrg=<optimized out>) at /home/emaisin/src/binutils-gdb/gdb/objfiles.c:674
and just after that the dwarf2read per-objfile registry cleanup function
gets called:
#0 dwarf2_per_objfile_free (objfile=0x356cff0, d=0x35afe70) at /home/emaisin/src/binutils-gdb/gdb/dwarf2read.c:25667
... registry boilerplate ...
#4 0x00000000009103ea in objfile_free_data (container=0x356cff0) at /home/emaisin/src/binutils-gdb/gdb/objfiles.c:61
#5 0x0000000000911ee2 in objfile::~objfile (this=0x356cff0, __in_chrg=<optimized out>) at /home/emaisin/src/binutils-gdb/gdb/objfiles.c:678
In dwarf2_per_objfile_free, we access fields of the dwarf2_per_objfile
object, which is invalid since its destructor has been executed.
This patch moves the content of dwarf2_per_objfile_free to the
destructor of dwarf2_per_objfile. The call to
register_objfile_data_with_cleanup in _initialize_dwarf2_read can be
changed to the simpler register_objfile_data.
gdb/ChangeLog:
* dwarf2read.c (free_dwo_files): Add forward-declaration.
(dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
dwarf2_per_objfile_free here.
(dwarf2_per_objfile_free): Remove.
(_initialize_dwarf2_read): Don't register
dwarf2_per_objfile_free as a registry cleanup.
commit a8d6d6acff570b1a65167ec0a5151f43cbc41abe
Author: Nick Clifton <nickc@redhat.com>
Date: Sun Jan 28 16:35:37 2018 +0000
Update release notes with a reminder to check the gpg key being used.
* README-how-to-make-a-release: Add note about checking gpg key
and the results of gnupload.
commit fef75122c0fe3abafb99d79a63545c1531f4107c
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sat Jan 27 16:04:34 2018 -0800
Add a testcase for PR ld/22751
Since dummy.o must be placed before
-Wl,--whole-archive tmpdir/pr22751.a -Wl,--no-whole-archive
to trigger the bug, this patch adds an optional trailing ld options to
run_ld_link_exec_tests.
PR ld/22751
* testsuite/config/default.exp (INT128_CFLAGS): New.
* testsuite/ld-plugin/lto.exp (INT128_CFLAGS): New.
Run ld/22751 tests.
* testsuite/ld-plugin/pr22751.c: New file.
* testsuite/lib/ld-lib.exp (run_ld_link_exec_tests): Add
ld trailing options.
commit 8d3b78ce4563e65466202c0d29d0603877846323
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Jan 28 00:00:32 2018 +0000
Automatic date update in version.in
commit d580dcc7aac21dc8396e8e90ea6d05ec32d6cbb9
Author: Alan Modra <amodra@gmail.com>
Date: Sun Jan 28 08:03:26 2018 +1030
PR22751, LTO broken for libgcc libcalls
So what was happening was that the file added from libgcc.a during the
rescan was not put on file_chain. map_input_to_output_sections then
doesn't see the file and its sections are treated as discarded.
The file_chain list pointer bug was caused by that fact that an
archive element claimed by the plugin does not have my_archive set.
Or more correctly, the actual archive element does have my_archive
set, but this bfd is replaced with a dummy bfd that doesn't have
my_archive set.
PR 22751
* ldlang.c (find_rescan_insertion): Look past bfds with claim_archive
set.
commit 9a5db26e6d9494e8285d4c177ee3d32292c7a35e
Author: Nick Clifton <nickc@redhat.com>
Date: Sat Jan 27 16:37:24 2018 +0000
Update documentation on making a release
commit b2a426e2c5632644b6b8bc0dde4cd32d42d548e2
Author: Eli Zaretskii <eliz@gnu.org>
Date: Sat Jan 27 18:34:46 2018 +0200
Avoid compilation errors in MinGW native builds of GDB
The error is triggered by including python-internal.h, and the
error message is:
In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
from build-gnulib/import/math.h:27,
from d:/usr/Python26/include/pyport.h:235,
from d:/usr/Python26/include/Python.h:58,
from python/python-internal.h:94,
from python/py-arch.c:24:
d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
using ::hypot;
^~~~~
This happens because Python headers define 'hypot' to expand to
'_hypot' in the Windows builds.
gdb/ChangeLog:
2018-01-27 Eli Zaretskii <eliz@gnu.org>
* python/python-internal.h (_hypot) [__MINGW32__]: Define back to
'hypoth'. This avoids a compilation error.
commit de54ee813f35cdeee51729c6d50b82935dc88634
Author: Eli Zaretskii <eliz@gnu.org>
Date: Sat Jan 27 18:25:06 2018 +0200
Avoid compilation warning in libiberty/simple-object-xcoff.c
gdb/ChangeLog:
2018-01-27 Eli Zaretskii <eliz@gnu.org>
* simple-object-xcoff.c (simple_object_xcoff_find_sections): Avoid
compilation warning in 32-bit builds not supported by
AC_SYS_LARGEFILE.
commit 7d73b4c8dfc8ae59dc1334e67c7ae2ea493dd121
Author: Nick Clifton <nickc@redhat.com>
Date: Sat Jan 27 14:25:50 2018 +0000
Updated Russian translation for the bfd sub-directory
commit a2f6c13ea591a8658b3a1139781a43bc385fa3fd
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Jan 27 00:01:04 2018 +0000
Automatic date update in version.in
commit 2ebd05b80b22ebf0e6c8b597f165c1e6bd6867f4
Author: Maciej W. Rozycki <macro@mips.com>
Date: Fri Jan 26 23:05:06 2018 +0000
MIPS/LD: Correct `mips-*-windiss' target emulation configuration
Fix an issue with commit 73934d319dae ("Disable .gnu.hash on MIPS
targets"), <https://sourceware.org/ml/binutils/2006-07/msg00341.html>,
which in turn caused a regression with commit 861fb55ab50a ("Defer
allocation of R_MIPS_REL32 GOT slots"),
<https://sourceware.org/ml/binutils/2008-08/msg00096.html>, and use
`mipself.em' as the extra emulation file for `mips-*-windiss' targets,
removing a segmentation fault triggered as `_bfd_mips_elf_final_link'
calls `htab_traverse' to process LA25 stubs with `htab->la25_stubs'
being NULL. This is in turn due to `_bfd_mips_elf_init_stubs' not
having been called, which is only done by `mipself.em'. No LA25 stubs
are supposed to be produced for `mips-*-windiss' targets, however the
internal data structures have to be initialized.
ld/
* emulparams/elf32mipswindiss.sh (EXTRA_EM_FILE): Set to
`mipself'.
commit 1e3f554897a3f52e12fffc1fecbb250f272e71e1
Author: Maciej W. Rozycki <macro@mips.com>
Date: Fri Jan 26 23:05:05 2018 +0000
MIPS/GAS: Correct `mips-*-windiss' target emulation configuration
Fix a commit 0a44bf6950b3 ("mips-vxworks support"),
<https://sourceware.org/ml/binutils/2006-03/msg00179.html>, regression
and override the choice of the `vxworks' target environment introduced
with commit ea3eed15006f ("Add generic vxworks GAS target."),
<https://sourceware.org/ml/binutils/2005-01/msg00052.html>, for
`mips-*-windiss' targets as they have not been converted to the VxWorks
target format introduced with the former commit, removing a GAS target
format selection failure:
Assembler messages:
Fatal error: selected target format 'elf32-bigmips-vxworks' unknown
on any assembly attempt with `mips-windiss' and equivalent target
configurations.
gas/
* configure.tgt: Use generic emulation for `mips-*-windiss',
overriding the blanket choice made for `*-*-windiss'.
commit c00f0d7a8a680a2496c7e575f1da6505a8a4915a
Author: Maciej W. Rozycki <macro@mips.com>
Date: Fri Jan 26 23:05:05 2018 +0000
MIPS/GAS: Correct `mips-*-sysv4*' target emulation configuration
Use `mips-*-sysv4*' rather than `mips-*-sysv4*MP*' to match the system
type for System V Release 4 MIPS targets, removing a GAS target
selection failure:
Assembler messages:
Fatal error: selected target format 'elf32-bigmips' unknown
on any assembly attempt with `mips-sysv4' and equivalent target
configurations. These would typically be called `mips-sni-sysv4'
(Sinix) vs `mips-dde-sysv4.2MP' (Supermax).
This corrects commit 8614eeee67f9 ("Traditional MIPS patches"),
<https://sourceware.org/ml/binutils/2000-07/msg00018.html>, making GAS
target selection match commit dd745cfae548 ("Traditional MIPS patches"),
<https://sourceware.org/ml/binutils/2000-07/msg00018.html>, and commit
3548145dcbf6 ("Traditional MIPS patches"),
<https://sourceware.org/ml/binutils/2000-07/msg00018.html>, which added
support for these targets to BFD and LD respectively.
gas/
* configure.tgt: Use `mips-*-sysv4*' rather than
`mips-*-sysv4*MP*'.
commit 0bdd8eac9b4512fb392415da65cc7eb7186a50c5
Author: Alan Hayward <alan.hayward@arm.com>
Date: Fri Jan 26 14:34:52 2018 +0000
Add myself as a write-after-approval GDB maintainer.
gdb/
* MAINTAINERS (Write After Approval): Add Alan Hayward.
commit 56ae9dc397bdf08c4e8f1ef0b64f4320bf88ba3e
Author: Alan Hayward <alan.hayward@arm.com>
Date: Fri Jan 26 14:34:52 2018 +0000
Add myself as a write-after-approval GDB maintainer.
gdb/
* MAINTAINERS (Write After Approval): Add Alan Hayward.
commit 94c2436bb8aaafc4f85130755c63c11b985df6d2
Author: Nick Clifton <nickc@redhat.com>
Date: Fri Jan 26 11:14:26 2018 +0000
Update notes on making a release
commit 7433498b7f1a79bf98ba272fd461f0ff9f1daa02
Author: Alan Modra <amodra@gmail.com>
Date: Wed Jan 24 15:22:17 2018 +1030
PowerPC PLT stub matching
This patch fixes a number of bugs in ppc32 plt stub matching code.
1) The 4-insn stubs for shared libs and PIEs weren't matched.
2) The executable stub miscalculated PLT entry address (by oring a
sign-extended quantity rather than adding).
3) Comments were not accurate.
In addition, the insn arrays are made const.
* ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
(powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
Remove nop. Make const. Comment.
(powerpc32_plt_stub_so_2): New.
(POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
Correct count. Update uses.
(ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
Move common code reading PLT entry word. Correct
powerpc32_plt_stub PLT address calculation.
* ppc64-tdep.c (ppc64_standard_linkage1): Make const.
(ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
(ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
(ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
(ppc64_standard_linkage8): Likewise.
* rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
Correct insns description.
* ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
Reviewed-By: Yao Qi <qiyaoltc@gmail.com>
commit 32253bb7963ac7caa166ec41e336372f2ffc03d4
Author: Alan Modra <amodra@gmail.com>
Date: Tue Jan 23 10:50:02 2018 +1030
Define __start/__stop symbols when there is only a dynamic def
This patch fixes a case where a user had a C-representable named
section in both the executable and shared libraries, and of course
wanted the size of the local section in the executable, not the
dynamic section. It does mean that __start and __stop symbols don't
behave exactly like PROVIDEd symbols, but I think that's a reasonable
difference particularly since this is the way they used to behave.
* elflink.c (bfd_elf_define_start_stop): Override symbols when
they are defined dynamically.
commit ba21f5646454c418e75eb06f6bf1a00a173641ca
Author: Alan Modra <amodra@gmail.com>
Date: Fri Jan 26 12:25:09 2018 +1030
PowerPC64 .branch_lt size change leads to "stubs don't match calculated size"
https://bugzilla.redhat.com/show_bug.cgi?id=1523457
I haven't analyzed this myself, I'm relying on Nick's excellent
analysis. What I believe is happening is that after some number of
stub sizing iterations, a long-branch stub needs to be converted to a
plt-branch, but either due to stub alignment or other stubs shrinking
in size, the stub group section size doesn't change.
That means we exit from ppc64_elf_size_stubs after sizing with an
incorrect layout, in fact the additional .branch_lt entry overlays
.got! Since .TOC. is normally set to .got + 0x8000 the stub sizing
code decides that entry is within +/-32k of the TOC pointer and so a
three insn stub is sufficient. When we come to build the stubs using
a correct non-overlaying layout, a four insn plt-branch stub is
generated and the stub group size doesn't match that calculated
earlier.
* elf64-ppc.c (ppc64_elf_size_stubs): Iterate sizing when
.branch_lt changes size.
commit 8a69c6d07bd9bd94ce5915fa9d09a2b7e1d163c7
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Jan 26 00:00:35 2018 +0000
Automatic date update in version.in
commit 38e64b0ecc7f4ee64a02514b8d532782ac057fa2
Author: Alan Modra <amodra@gmail.com>
Date: Thu Jan 25 21:47:41 2018 +1030
PR22746, crash when running 32-bit objdump on corrupted file
Avoid unsigned int overflow by performing bfd_size_type multiplication.
PR 22746
* elfcode.h (elf_object_p): Avoid integer overflow.
commit bb363086e7743506d78bc6b1e56face0fb1fc93f
Author: Eric Botcazou <ebotcazou@gcc.gnu.org>
Date: Thu Jan 25 12:16:06 2018 +0100
Fix PR ld/22727 (TLS breakage in PIC/PIE mode on SPARC).
There are actually 2 different bugs:
1. TLS transition is broken in PIE mode.
2. TLS is broken in PIC/PIE mode when the __tls_get_addr symbol
is versioned (as is the case on Linux and Solaris at least).
The 1st bug is fixed by reverting the problematic change for now
(note that the associated test doesn't pass on SPARC because of another
issue so there is no formal regression in the testsuite). The 2nd bug
is fixed by changing the call to _bfd_generic_link_add_one_symbol
on __tls_get_addr into a mere lookup in _bfd_sparc_elf_check_relocs.
bfd/
* elfxx-sparc.c (_bfd_sparc_elf_check_relocs) <R_SPARC_TLS_GD_CALL>:
Do a mere lookup of the __tls_get_addr symbol instead of adding it.
Revert
2017-10-19 H.J. Lu <hongjiu.lu@intel.com>
PR ld/22263
* elfxx-sparc.c (sparc_elf_tls_transition): Replace
bfd_link_pic with !bfd_link_executable, !bfd_link_pic with
bfd_link_executable for TLS check.
(_bfd_sparc_elf_check_relocs): Likewise.
(allocate_dynrelocs): Likewise.
(_bfd_sparc_elf_relocate_section): Likewise.
ld/
* testsuite/ld-sparc/sparc.exp (32-bit: Helper shared library):
Link with a version script.
(32-bit: TLS -fpie): New test.
(64-bit: Helper shared library): Link with a version script.
(64-bit: TLS -fpie): New test.
(64-bit: GOTDATA relocations): Pass -Av9 to the assembler.
* testsuite/ld-sparc/tlslib.ver: New file.
* testsuite/ld-sparc/tlspie32.dd: Likewise.
* testsuite/ld-sparc/tlspie32.s: Likewise.
* testsuite/ld-sparc/tlspie64.dd: Likewise.
* testsuite/ld-sparc/tlspie64.s: Likewise.
* testsuite/ld-sparc/tlssunbin32.dd: Adjust for versioned symbol.
* testsuite/ld-sparc/tlssunbin32.rd: Likewise.
* testsuite/ld-sparc/tlssunbin32.sd: Likewise.
* testsuite/ld-sparc/tlssunbin64.dd: Likewise.
* testsuite/ld-sparc/tlssunbin64.rd: Likewise.
* testsuite/ld-sparc/tlssunbin64.sd: Likewise.
commit 3e53a58e1f557f9b799506b62ac1cbf456b34647
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Jan 25 00:00:20 2018 +0000
Automatic date update in version.in
commit 0f59d5fc1ce646348dfae3ca90b32f9228d1d514
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jan 24 17:22:05 2018 +0000
Fix GCC PR83906 - [8 Regression] Random FAIL: libstdc++-prettyprinters/80276.cc whatis p4
GCC PR83906 [1] is about a GCC/libstdc++ GDB/Python type printer
testcase failing randomly, as shown by running (in libstdc++'s
testsuite):
make check RUNTESTFLAGS=prettyprinters.exp=80276.cc
in a loop. Sometimes you get this:
FAIL: libstdc++-prettyprinters/80276.cc whatis p4
I.e., this:
type = std::unique_ptr<std::vector<std::unique_ptr<std::list<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >>[]>>[99]>
instead of this:
type = std::unique_ptr<std::vector<std::unique_ptr<std::list<std::string>[]>>[99]>
Jonathan Wakely tracked it on the printer side to this bit in
libstdc++'s type printer:
if self.type_obj == type_obj:
return strip_inline_namespaces(self.name)
This assumes the two types resolve to the same gdb.Type but some times
the comparison unexpectedly fails.
Running the testcase manually under Valgrind finds the problem in GDB:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
==6118== Conditional jump or move depends on uninitialised value(s)
==6118== at 0x4C35CB0: bcmp (vg_replace_strmem.c:1100)
==6118== by 0x6F773A: check_types_equal(type*, type*, VEC_type_equality_entry_d**) (gdbtypes.c:3515)
==6118== by 0x6F7B00: check_types_worklist(VEC_type_equality_entry_d**, bcache*) (gdbtypes.c:3618)
==6118== by 0x6F7C03: types_deeply_equal(type*, type*) (gdbtypes.c:3655)
==6118== by 0x4D5B06: typy_richcompare(_object*, _object*, int) (py-type.c:1007)
==6118== by 0x63D7E6C: PyObject_RichCompare (object.c:961)
==6118== by 0x646EAEC: PyEval_EvalFrameEx (ceval.c:4960)
==6118== by 0x646DC08: PyEval_EvalFrameEx (ceval.c:4519)
==6118== by 0x646DC08: PyEval_EvalFrameEx (ceval.c:4519)
==6118== by 0x646DC08: PyEval_EvalFrameEx (ceval.c:4519)
==6118== by 0x646DC08: PyEval_EvalFrameEx (ceval.c:4519)
==6118== by 0x646DC08: PyEval_EvalFrameEx (ceval.c:4519)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
That "bcmp" call is really a memcmp call in check_types_equal. The
problem is that gdb is memcmp'ing two objects that are equal in value:
(top-gdb) p *TYPE_RANGE_DATA (type1)
$1 = {low = {kind = PROP_CONST, data = {const_val = 0, baton = 0x0}}, high = {kind = PROP_CONST, data = {const_val = 15, baton = 0xf}}, flag_upper_bound_is_count = 0,
flag_bound_evaluated = 0}
(top-gdb) p *TYPE_RANGE_DATA (type2)
$2 = {low = {kind = PROP_CONST, data = {const_val = 0, baton = 0x0}}, high = {kind = PROP_CONST, data = {const_val = 15, baton = 0xf}}, flag_upper_bound_is_count = 0,
flag_bound_evaluated = 0}
but differ in padding. Notice the 4-byte hole:
(top-gdb) ptype /o range_bounds
/* offset | size */ type = struct range_bounds {
/* 0 | 16 */ struct dynamic_prop {
/* 0 | 4 */ dynamic_prop_kind kind;
/* XXX 4-byte hole */
/* 8 | 8 */ union dynamic_prop_data {
/* 8 */ LONGEST const_val;
/* 8 */ void *baton;
/* total size (bytes): 8 */
} data;
which is filled with garbage:
(top-gdb) x /40bx TYPE_RANGE_DATA (type1)
0x2fa7ea0: 0x01 0x00 0x00 0x00 0x43 0x01 0x00 0x00
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
0x2fa7ea8: 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x2fa7eb0: 0x01 0x00 0x00 0x00 0xfe 0x7f 0x00 0x00
0x2fa7eb8: 0x0f 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x2fa7ec0: 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
(top-gdb) x /40bx TYPE_RANGE_DATA (type2)
0x20379b0: 0x01 0x00 0x00 0x00 0xfe 0x7f 0x00 0x00
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
0x20379b8: 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x20379c0: 0x01 0x00 0x00 0x00 0xfe 0x7f 0x00 0x00
0x20379c8: 0x0f 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x20379d0: 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
(top-gdb) p memcmp (TYPE_RANGE_DATA (type1), TYPE_RANGE_DATA (type2), sizeof (*TYPE_RANGE_DATA (type1)))
$3 = -187
In some cases objects of type range_bounds are memset when allocated,
but then their dynamic_prop low/high fields are copied over from some
template dynamic_prop object that wasn't memset. E.g.,
create_static_range_type's low/high locals are left with garbage in
the padding, and then that padding is copied over to the range_bounds
object's low/high fields.
At first, I considered making sure to always memset range_bounds
objects, thinking that maybe type objects are being put in some bcache
instance somewhere. But then I hacked bcache/bcache_full to poison
non-pod types, and made dynamic_prop a non-pod, and GDB still
compiled.
So given that, it seems safest to not assume padding will always be
memset, and instead treat them as regular value types, implementing
(in)equality operators and using those instead of memcmp.
This fixes the random FAILs in GCC's testcase.
[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83906
gdb/ChangeLog:
2018-01-24 Pedro Alves <palves@redhat.com>
GCC PR libstdc++/83906
* gdbtypes.c (operator==(const dynamic_prop &,
const dynamic_prop &)): New.
(operator==(const range_bounds &, const range_bounds &)): New.
(check_types_equal): Use them instead of memcmp.
* gdbtypes.h (operator==(const dynamic_prop &,
const dynamic_prop &)): Declare.
(operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
(operator==(const range_bounds &, const range_bounds &)): Declare.
(operator!=(const range_bounds &, const range_bounds &)): Declare.
commit 1daf502a16e052b55a28bd52b4fde185ccc3b27b
Author: Renlin Li <renlin.li@arm.com>
Date: Thu Jan 18 12:17:55 2018 +0000
[LD][AARCH64]Add group relocations to create PC-relative offset.
This is a patch to add linker support for group relocations to create a
16, 32, 48, or 64 bit PC-relative offset inline.
The following relocations are added along with the test cases:
BFD_RELOC_AARCH64_MOVW_PREL_G0, BFD_RELOC_AARCH64_MOVW_PREL_G0_NC,
BFD_RELOC_AARCH64_MOVW_PREL_G1, BFD_RELOC_AARCH64_MOVW_PREL_G1_NC,
BFD_RELOC_AARCH64_MOVW_PREL_G2, BFD_RELOC_AARCH64_MOVW_PREL_G2_NC,
BFD_RELOC_AARCH64_MOVW_PREL_G3.
bfd/
2018-01-24 Renlin Li <renlin.li@arm.com>
* elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Add support for
BFD_RELOC_AARCH64_MOVW_PREL_G0, BFD_RELOC_AARCH64_MOVW_PREL_G0_NC,
BFD_RELOC_AARCH64_MOVW_PREL_G1, BFD_RELOC_AARCH64_MOVW_PREL_G1_NC,
BFD_RELOC_AARCH64_MOVW_PREL_G2, BFD_RELOC_AARCH64_MOVW_PREL_G2_NC,
BFD_RELOC_AARCH64_MOVW_PREL_G3.
* elfxx-aarch64.c (_bfd_aarch64_elf_put_addend): Likewise.
(_bfd_aarch64_elf_resolve_relocation): Likewise.
ld/
2018-01-24 Renlin Li <renlin.li@arm.com>
* testsuite/ld-aarch64/aarch64-elf.exp: Run new testes.
* testsuite/ld-aarch64/emit-relocs-287.s: Fix test case.
* testsuite/ld-aarch64/emit-relocs-287.d: Fix expected output.
* testsuite/ld-aarch64/emit-relocs-287-overflow.s: New.
* testsuite/ld-aarch64/emit-relocs-287-overflow.d: New.
* testsuite/ld-aarch64/emit-relocs-288.d: New.
* testsuite/ld-aarch64/emit-relocs-288.s: New.
* testsuite/ld-aarch64/emit-relocs-289.d: New.
* testsuite/ld-aarch64/emit-relocs-289.s: New.
* testsuite/ld-aarch64/emit-relocs-289-overflow.s: New.
* testsuite/ld-aarch64/emit-relocs-289-overflow.d: New.
* testsuite/ld-aarch64/emit-relocs-290.d: New.
* testsuite/ld-aarch64/emit-relocs-290.s: New.
* testsuite/ld-aarch64/emit-relocs-291.d: New.
* testsuite/ld-aarch64/emit-relocs-291.s: New.
* testsuite/ld-aarch64/emit-relocs-291-overflow.s: New.
* testsuite/ld-aarch64/emit-relocs-291-overflow.d: New.
* testsuite/ld-aarch64/emit-relocs-292.d: New.
* testsuite/ld-aarch64/emit-relocs-292.s: New.
* testsuite/ld-aarch64/emit-relocs-293.d: New.
* testsuite/ld-aarch64/emit-relocs-293.s: New.
commit 322474019df79a1305e83ff7620a72f31a5c7b55
Author: Renlin Li <renlin.li@arm.com>
Date: Thu Jan 18 12:08:40 2018 +0000
[GAS][AARCH64]Add group relocations to create PC-relative offset.
This is a patch to add the gas support for group relocations to create a
16, 32, 48, or 64 bit PC-relative offset inline.
The following relocations are added along with the test cases:
BFD_RELOC_AARCH64_MOVW_PREL_G0, BFD_RELOC_AARCH64_MOVW_PREL_G0_NC,
BFD_RELOC_AARCH64_MOVW_PREL_G1, BFD_RELOC_AARCH64_MOVW_PREL_G1_NC,
BFD_RELOC_AARCH64_MOVW_PREL_G2, BFD_RELOC_AARCH64_MOVW_PREL_G2_NC,
BFD_RELOC_AARCH64_MOVW_PREL_G3.
bfd/
2018-01-24 Renlin Li <renlin.li@arm.com>
* reloc.c: Add BFD_RELOC_AARCH64_MOVW_PREL_G0,
BFD_RELOC_AARCH64_MOVW_PREL_G0_NC, BFD_RELOC_AARCH64_MOVW_PREL_G1,
BFD_RELOC_AARCH64_MOVW_PREL_G1_NC, BFD_RELOC_AARCH64_MOVW_PREL_G2,
BFD_RELOC_AARCH64_MOVW_PREL_G2_NC, BFD_RELOC_AARCH64_MOVW_PREL_G3.
* bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.
* elfnn-aarch64.c (elfNN_aarch64_howto_table): Add entries for
BFD_RELOC_AARCH64_MOVW_PREL_G0, BFD_RELOC_AARCH64_MOVW_PREL_G0_NC,
BFD_RELOC_AARCH64_MOVW_PREL_G1, BFD_RELOC_AARCH64_MOVW_PREL_G1_NC,
BFD_RELOC_AARCH64_MOVW_PREL_G2, BFD_RELOC_AARCH64_MOVW_PREL_G2_NC,
BFD_RELOC_AARCH64_MOVW_PREL_G3.
gas/
2018-01-24 Renlin Li <renlin.li@arm.com>
* config/tc-aarch64.c (reloc_table): add entries for
BFD_RELOC_AARCH64_MOVW_PREL_G0, BFD_RELOC_AARCH64_MOVW_PREL_G0_NC,
BFD_RELOC_AARCH64_MOVW_PREL_G1, BFD_RELOC_AARCH64_MOVW_PREL_G1_NC,
BFD_RELOC_AARCH64_MOVW_PREL_G2, BFD_RELOC_AARCH64_MOVW_PREL_G2_NC,
BFD_RELOC_AARCH64_MOVW_PREL_G3.
(process_movw_reloc_info): Supports newly added MOVW_PREL relocations.
(md_apply_fix): Likewise
* testsuite/gas/aarch64/prel_g0.s: New.
* testsuite/gas/aarch64/prel_g0.d: New.
* testsuite/gas/aarch64/prel_g0_nc.s: New.
* testsuite/gas/aarch64/prel_g0_nc.d: New.
* testsuite/gas/aarch64/prel_g1.s: New.
* testsuite/gas/aarch64/prel_g1.d: New.
* testsuite/gas/aarch64/prel_g1_nc.s: New.
* testsuite/gas/aarch64/prel_g1_nc.d: New.
* testsuite/gas/aarch64/prel_g2.s: New.
* testsuite/gas/aarch64/prel_g2.d: New.
* testsuite/gas/aarch64/prel_g2_nc.s: New.
* testsuite/gas/aarch64/prel_g2_nc.d: New.
* testsuite/gas/aarch64/prel_g3.s: New.
* testsuite/gas/aarch64/prel_g3.d: New.
commit cc40406d1d033abc21de1af5a30f2a5fbb692507
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Jan 24 00:00:19 2018 +0000
Automatic date update in version.in
commit d04239d32f256ca2971a951ecdf8ec053bfe4eed
Author: Stan Cox <scox@redhat.com>
Date: Tue Jan 23 16:08:21 2018 -0500
Ignore errors while unhexlify the vRun path
commit 814b8da0637e36ca7e6b6ebb79f47945221f16dd
Author: Stan Cox <scox@redhat.com>
Date: Thu Oct 26 12:25:10 2017 -0400
Handle delayed syscall event.
server.c (notify_clients): Handle delayed syscall event.
-----------------------------------------------------------------------
Summary of changes:
COPYING.LIBGLOSS | 8 +-
ChangeLog | 131 +
Makefile.def | 3 +-
Makefile.in | 187 +-
Makefile.tpl | 82 +-
README-maintainer-mode | 4 +-
ar-lib | 270 +
bfd/ChangeLog | 5011 +-
bfd/ChangeLog-2017 | 5727 +
bfd/MAINTAINERS | 2 +-
bfd/Makefile.am | 191 +-
bfd/Makefile.in | 684 +-
bfd/PORTING | 2 +-
bfd/README | 2 +-
bfd/TODO | 2 +-
bfd/acinclude.m4 | 2 +-
bfd/aclocal.m4 | 717 +-
bfd/aix386-core.c | 28 +-
bfd/aix5ppc-core.c | 2 +-
bfd/aout-adobe.c | 521 -
bfd/aout-arm.c | 548 -
bfd/aout-cris.c | 12 +-
bfd/aout-ns32k.c | 16 +-
bfd/aout-sparcle.c | 37 -
bfd/aout-target.h | 44 +-
bfd/aout-tic30.c | 71 +-
bfd/aout0.c | 38 -
bfd/aout32.c | 2 +-
bfd/aout64.c | 2 +-
bfd/aoutf1.h | 793 -
bfd/aoutx.h | 366 +-
bfd/arc-got.h | 63 +-
bfd/arc-plt.def | 10 +-
bfd/arc-plt.h | 14 +-
bfd/archive.c | 272 +-
bfd/archive64.c | 4 +-
bfd/archures.c | 610 +-
bfd/armnetbsd.c | 39 -
bfd/bfd-in.h | 67 +-
bfd/bfd-in2.h | 1372 +-
bfd/bfd.c | 864 +-
bfd/bfd.m4 | 2 +-
bfd/bfdio.c | 347 +-
bfd/bfdwin.c | 2 +-
bfd/binary.c | 83 +-
bfd/bout.c | 1481 -
bfd/cache.c | 87 +-
bfd/cf-i386lynx.c | 2 +-
bfd/cf-sparclynx.c | 29 -
bfd/cisco-core.c | 228 +-
bfd/coff-alpha.c | 165 +-
bfd/coff-apollo.c | 120 -
bfd/coff-arm.c | 486 +-
bfd/coff-aux.c | 145 -
bfd/coff-bfd.c | 2 +-
bfd/coff-bfd.h | 2 +-
bfd/coff-go32.c | 2 +-
bfd/coff-h8300.c | 1387 -
bfd/coff-h8500.c | 298 -
bfd/coff-i386.c | 72 +-
bfd/coff-i860.c | 713 -
bfd/coff-i960.c | 654 -
bfd/coff-ia64.c | 58 +-
bfd/coff-m68k.c | 543 -
bfd/coff-m88k.c | 284 -
bfd/coff-mcore.c | 154 +-
bfd/coff-mips.c | 256 +-
bfd/coff-ppc.c | 725 +-
bfd/coff-rs6000.c | 436 +-
bfd/coff-sh.c | 255 +-
bfd/coff-sparc.c | 208 -
bfd/coff-stgo32.c | 6 +-
bfd/coff-svm68k.c | 27 -
bfd/coff-tic30.c | 32 +-
bfd/coff-tic4x.c | 41 +-
bfd/coff-tic54x.c | 279 +-
bfd/coff-tic80.c | 22 +-
bfd/coff-u68k.c | 36 -
bfd/coff-w65.c | 375 -
bfd/coff-we32k.c | 78 -
bfd/coff-x86_64.c | 90 +-
bfd/coff-z80.c | 22 +-
bfd/coff-z8k.c | 52 +-
bfd/coff64-rs6000.c | 152 +-
bfd/coffcode.h | 687 +-
bfd/coffgen.c | 210 +-
bfd/cofflink.c | 247 +-
bfd/coffswap.h | 40 +-
bfd/compress.c | 33 +-
bfd/config.bfd | 709 +-
bfd/config.in | 24 +
bfd/configure | 2219 +-
bfd/configure.ac | 229 +-
bfd/configure.com | 2 +-
bfd/configure.host | 4 +-
bfd/corefile.c | 28 +-
bfd/cpu-aarch64.c | 2 +-
bfd/cpu-alpha.c | 4 +-
bfd/cpu-arc.c | 62 +-
bfd/cpu-arm.c | 75 +-
bfd/cpu-avr.c | 4 +-
bfd/cpu-bfin.c | 18 +-
bfd/cpu-cr16.c | 16 +-
bfd/cpu-cr16c.c | 4 +-
bfd/cpu-cris.c | 2 +-
bfd/cpu-crx.c | 10 +-
bfd/cpu-csky.c | 59 +
bfd/cpu-d10v.c | 4 +-
bfd/cpu-d30v.c | 2 +-
bfd/cpu-dlx.c | 2 +-
bfd/cpu-epiphany.c | 2 +-
bfd/cpu-fr30.c | 2 +-
bfd/cpu-frv.c | 8 +-
bfd/cpu-ft32.c | 54 +-
bfd/cpu-h8300.c | 2 +-
bfd/cpu-h8500.c | 59 -
bfd/cpu-hppa.c | 2 +-
bfd/cpu-i370.c | 77 -
bfd/cpu-i386.c | 2 +-
bfd/cpu-i860.c | 42 -
bfd/cpu-i960.c | 172 -
bfd/cpu-ia64-opc.c | 8 +-
bfd/cpu-ia64.c | 2 +-
bfd/cpu-iamcu.c | 2 +-
bfd/cpu-ip2k.c | 4 +-
bfd/cpu-iq2000.c | 2 +-
bfd/cpu-k1om.c | 2 +-
bfd/cpu-l1om.c | 2 +-
bfd/cpu-lm32.c | 25 +-
bfd/cpu-m10200.c | 2 +-
bfd/cpu-m10300.c | 2 +-
bfd/cpu-m32c.c | 2 +-
bfd/cpu-m32r.c | 4 +-
bfd/cpu-m68hc11.c | 2 +-
bfd/cpu-m68hc12.c | 2 +-
bfd/cpu-m68k.c | 2 +-
bfd/cpu-m88k.c | 41 -
bfd/cpu-m9s12x.c | 2 +-
bfd/cpu-m9s12xg.c | 2 +-
bfd/cpu-mcore.c | 24 +-
bfd/cpu-mep.c | 2 +-
bfd/cpu-metag.c | 2 +-
bfd/cpu-microblaze.c | 24 +-
bfd/cpu-mips.c | 75 +-
bfd/cpu-mmix.c | 2 +-
bfd/cpu-moxie.c | 16 +-
bfd/cpu-msp430.c | 2 +-
bfd/cpu-mt.c | 16 +-
bfd/cpu-nds32.c | 2 +-
bfd/cpu-nfp.c | 62 +
bfd/cpu-nios2.c | 4 +-
bfd/cpu-ns32k.c | 40 +-
bfd/cpu-or1k.c | 14 +-
bfd/cpu-pdp11.c | 4 +-
bfd/cpu-pj.c | 2 +-
bfd/cpu-plugin.c | 2 +-
bfd/cpu-powerpc.c | 56 +-
bfd/cpu-pru.c | 4 +-
bfd/cpu-riscv.c | 2 +-
bfd/cpu-rl78.c | 2 +-
bfd/cpu-rs6000.c | 2 +-
bfd/cpu-rx.c | 2 +-
bfd/cpu-s12z.c | 41 +
bfd/cpu-s390.c | 2 +-
bfd/cpu-score.c | 2 +-
bfd/cpu-sh.c | 98 +-
bfd/cpu-sparc.c | 32 +-
bfd/cpu-spu.c | 4 +-
bfd/cpu-tic30.c | 2 +-
bfd/cpu-tic4x.c | 2 +-
bfd/cpu-tic54x.c | 2 +-
bfd/cpu-tic6x.c | 2 +-
bfd/cpu-tic80.c | 2 +-
bfd/cpu-tilegx.c | 2 +-
bfd/cpu-tilepro.c | 2 +-
bfd/cpu-v850.c | 14 +-
bfd/cpu-v850_rh850.c | 18 +-
bfd/cpu-vax.c | 2 +-
bfd/cpu-visium.c | 2 +-
bfd/cpu-w65.c | 52 -
bfd/cpu-wasm32.c | 2 +-
bfd/cpu-we32k.c | 41 -
bfd/cpu-xc16x.c | 2 +-
bfd/cpu-xgate.c | 4 +-
bfd/cpu-xstormy16.c | 2 +-
bfd/cpu-xtensa.c | 2 +-
bfd/cpu-z80.c | 8 +-
bfd/cpu-z8k.c | 2 +-
bfd/demo64.c | 30 -
bfd/development.sh | 5 +-
bfd/doc/Makefile.am | 17 +-
bfd/doc/Makefile.in | 282 +-
bfd/doc/bfd.texi | 339 +
bfd/doc/bfd.texinfo | 341 -
bfd/doc/bfdint.texi | 47 +-
bfd/doc/bfdsumm.texi | 8 +-
bfd/doc/chew.c | 2 +-
bfd/doc/header.sed | 2 +-
bfd/doc/makefile.vms | 2 +-
bfd/dwarf1.c | 87 +-
bfd/dwarf2.c | 938 +-
bfd/ecoff.c | 179 +-
bfd/ecofflink.c | 194 +-
bfd/ecoffswap.h | 192 +-
bfd/elf-attrs.c | 28 +-
bfd/elf-bfd.h | 239 +-
bfd/elf-eh-frame.c | 252 +-
bfd/elf-hppa.h | 819 +-
bfd/elf-ifunc.c | 138 +-
bfd/elf-linux-core.h | 149 +-
bfd/elf-m10200.c | 25 +-
bfd/elf-m10300.c | 119 +-
bfd/elf-nacl.c | 90 +-
bfd/elf-nacl.h | 2 +-
bfd/elf-properties.c | 328 +-
bfd/elf-s390-common.c | 122 +-
bfd/elf-s390.h | 29 +
bfd/elf-strtab.c | 6 +-
bfd/elf-vxworks.c | 20 +-
bfd/elf-vxworks.h | 2 +-
bfd/elf.c | 2087 +-
bfd/elf32-am33lin.c | 10 +-
bfd/elf32-arc.c | 833 +-
bfd/elf32-arm.c | 2903 +-
bfd/elf32-avr.c | 2337 +-
bfd/elf32-avr.h | 14 +-
bfd/elf32-bfin.c | 640 +-
bfd/elf32-cr16.c | 3384 +-
bfd/elf32-cr16c.c | 27 +-
bfd/elf32-cris.c | 350 +-
bfd/elf32-crx.c | 25 +-
bfd/elf32-csky.c | 5202 +
bfd/elf32-d10v.c | 147 +-
bfd/elf32-d30v.c | 32 +-
bfd/elf32-dlx.c | 294 +-
bfd/elf32-dlx.h | 2 +-
bfd/elf32-epiphany.c | 85 +-
bfd/elf32-fr30.c | 117 +-
bfd/elf32-frv.c | 164 +-
bfd/elf32-ft32.c | 933 +-
bfd/elf32-gen.c | 10 +-
bfd/elf32-h8300.c | 64 +-
bfd/elf32-hppa.c | 959 +-
bfd/elf32-hppa.h | 2 +-
bfd/elf32-i370.c | 1423 -
bfd/elf32-i386.c | 3767 +-
bfd/elf32-i860.c | 1265 -
bfd/elf32-i960.c | 174 -
bfd/elf32-ip2k.c | 291 +-
bfd/elf32-iq2000.c | 26 +-
bfd/elf32-lm32.c | 2399 +-
bfd/elf32-m32c.c | 191 +-
bfd/elf32-m32r.c | 2232 +-
bfd/elf32-m68hc11.c | 721 +-
bfd/elf32-m68hc12.c | 89 +-
bfd/elf32-m68hc1x.c | 789 +-
bfd/elf32-m68hc1x.h | 16 +-
bfd/elf32-m68k.c | 414 +-
bfd/elf32-m88k.c | 38 -
bfd/elf32-mcore.c | 175 +-
bfd/elf32-mep.c | 104 +-
bfd/elf32-metag.c | 365 +-
bfd/elf32-metag.h | 2 +-
bfd/elf32-microblaze.c | 1737 +-
bfd/elf32-mips.c | 154 +-
bfd/elf32-moxie.c | 33 +-
bfd/elf32-msp430.c | 235 +-
bfd/elf32-mt.c | 304 +-
bfd/elf32-nds32.c |10755 +-
bfd/elf32-nds32.h | 109 +-
bfd/elf32-nios2.c | 241 +-
bfd/elf32-nios2.h | 2 +-
bfd/elf32-or1k.c | 3970 +-
bfd/elf32-pj.c | 85 +-
bfd/elf32-ppc.c | 4275 +-
bfd/elf32-ppc.h | 10 +-
bfd/elf32-pru.c | 233 +-
bfd/elf32-rl78.c | 319 +-
bfd/elf32-rx.c | 330 +-
bfd/elf32-rx.h | 8 +-
bfd/elf32-s12z.c | 322 +
bfd/elf32-s390.c | 644 +-
bfd/elf32-score.c | 3078 +-
bfd/elf32-score.h | 78 +-
bfd/elf32-score7.c | 2722 +-
bfd/elf32-sh-relocs.h | 785 +-
bfd/elf32-sh-symbian.c | 615 -
bfd/elf32-sh.c | 1061 +-
bfd/elf32-sh64-com.c | 245 -
bfd/elf32-sh64.c | 816 -
bfd/elf32-sh64.h | 88 -
bfd/elf32-sparc.c | 34 +-
bfd/elf32-spu.c | 145 +-
bfd/elf32-spu.h | 7 +-
bfd/elf32-tic6x.c | 315 +-
bfd/elf32-tic6x.h | 2 +-
bfd/elf32-tilegx.c | 21 +-
bfd/elf32-tilegx.h | 16 +-
bfd/elf32-tilepro.c | 1142 +-
bfd/elf32-tilepro.h | 14 +-
bfd/elf32-v850.c | 571 +-
bfd/elf32-vax.c | 173 +-
bfd/elf32-visium.c | 23 +-
bfd/elf32-wasm32.c | 91 +-
bfd/elf32-xc16x.c | 151 +-
bfd/elf32-xgate.c | 258 +-
bfd/elf32-xgate.h | 142 -
bfd/elf32-xstormy16.c | 174 +-
bfd/elf32-xtensa.c | 500 +-
bfd/elf32.c | 2 +-
bfd/elf64-alpha.c | 291 +-
bfd/elf64-gen.c | 10 +-
bfd/elf64-hppa.c | 118 +-
bfd/elf64-hppa.h | 2 +-
bfd/elf64-ia64-vms.c | 836 +-
bfd/elf64-mips.c | 605 +-
bfd/elf64-mmix.c | 188 +-
bfd/elf64-nfp.c | 276 +
bfd/elf64-ppc.c | 5921 +-
bfd/elf64-ppc.h | 7 +-
bfd/elf64-s390.c | 789 +-
bfd/elf64-sh64.c | 3981 -
bfd/elf64-sparc.c | 138 +-
bfd/elf64-tilegx.c | 21 +-
bfd/elf64-tilegx.h | 16 +-
bfd/elf64-x86-64.c | 4374 +-
bfd/elf64.c | 2 +-
bfd/elfcode.h | 48 +-
bfd/elfcore.h | 12 +-
bfd/elflink.c | 1599 +-
bfd/elfn32-mips.c | 568 +-
bfd/elfnn-aarch64.c | 1267 +-
bfd/elfnn-ia64.c | 214 +-
bfd/elfnn-riscv.c | 923 +-
bfd/elfxx-aarch64.c | 155 +-
bfd/elfxx-aarch64.h | 14 +-
bfd/elfxx-ia64.c | 67 +-
bfd/elfxx-ia64.h | 4 +-
bfd/elfxx-mips.c | 1145 +-
bfd/elfxx-mips.h | 11 +-
bfd/elfxx-riscv.c | 119 +-
bfd/elfxx-riscv.h | 4 +-
bfd/elfxx-sparc.c | 1147 +-
bfd/elfxx-sparc.h | 14 +-
bfd/elfxx-target.h | 93 +-
bfd/elfxx-tilegx.c | 1024 +-
bfd/elfxx-tilegx.h | 8 +-
bfd/elfxx-x86.c | 2964 +
bfd/elfxx-x86.h | 733 +
bfd/epoc-pe-arm.c | 38 -
bfd/epoc-pei-arm.c | 31 -
bfd/format.c | 26 +-
bfd/freebsd.h | 106 -
bfd/gen-aout.c | 5 +-
bfd/genlink.h | 2 +-
bfd/hash.c | 21 +-
bfd/host-aout.c | 4 +-
bfd/hosts/alphalinux.h | 2 +-
bfd/hosts/alphavms.h | 12 +-
bfd/hosts/decstation.h | 2 +-
bfd/hosts/delta68.h | 33 -
bfd/hosts/dpx2.h | 2 +-
bfd/hosts/hp300bsd.h | 32 -
bfd/hosts/i386bsd.h | 2 +-
bfd/hosts/i386linux.h | 2 +-
bfd/hosts/i386mach3.h | 2 +-
bfd/hosts/i386sco.h | 2 +-
bfd/hosts/i860mach3.h | 46 -
bfd/hosts/m68kaux.h | 35 -
bfd/hosts/m68klinux.h | 2 +-
bfd/hosts/m88kmach3.h | 30 -
bfd/hosts/mipsbsd.h | 2 +-
bfd/hosts/mipsmach3.h | 2 +-
bfd/hosts/news-mips.h | 2 +-
bfd/hosts/news.h | 28 -
bfd/hosts/pc532mach.h | 2 +-
bfd/hosts/riscos.h | 2 +-
bfd/hosts/symmetry.h | 2 +-
bfd/hosts/tahoe.h | 31 -
bfd/hosts/vaxbsd.h | 2 +-
bfd/hosts/vaxlinux.h | 2 +-
bfd/hosts/vaxult.h | 2 +-
bfd/hosts/vaxult2.h | 2 +-
bfd/hosts/x86-64linux.h | 10 +-
bfd/hp300bsd.c | 40 -
bfd/hp300hpux.c | 855 -
bfd/hppabsd-core.c | 16 +-
bfd/hpux-core.c | 160 +-
bfd/i386aout.c | 16 +-
bfd/i386bsd.c | 2 +-
bfd/i386dynix.c | 82 -
bfd/i386freebsd.c | 38 -
bfd/i386linux.c | 733 -
bfd/i386lynx.c | 22 +-
bfd/i386mach3.c | 73 -
bfd/i386msdos.c | 114 +-
bfd/i386netbsd.c | 38 -
bfd/i386os9k.c | 227 -
bfd/ieee.c | 3966 -
bfd/ihex.c | 128 +-
bfd/init.c | 13 +-
bfd/irix-core.c | 26 +-
bfd/libaout.h | 77 +-
bfd/libbfd-in.h | 693 +-
bfd/libbfd.c | 186 +-
bfd/libbfd.h | 898 +-
bfd/libcoff-in.h | 17 +-
bfd/libcoff.h | 39 +-
bfd/libecoff.h | 13 +-
bfd/libhppa.h | 2 +-
bfd/libieee.h | 136 -
bfd/libnlm.h | 222 -
bfd/liboasys.h | 83 -
bfd/libpei.h | 32 +-
bfd/libxcoff.h | 4 +-
bfd/linker.c | 316 +-
bfd/lynx-core.c | 12 +-
bfd/m68k4knetbsd.c | 36 -
bfd/m68klinux.c | 737 -
bfd/m68knetbsd.c | 38 -
bfd/m88kmach3.c | 41 -
bfd/m88kopenbsd.c | 34 -
bfd/mach-o-aarch64.c | 42 +-
bfd/mach-o-arm.c | 170 +-
bfd/mach-o-i386.c | 211 +-
bfd/mach-o-target.c | 81 +-
bfd/mach-o-x86-64.c | 149 +-
bfd/mach-o.c | 1085 +-
bfd/mach-o.h | 31 +-
bfd/makefile.vms | 2 +-
bfd/mep-relocs.pl | 2 +-
bfd/merge.c | 66 +-
bfd/mipsbsd.c | 485 -
bfd/mmo.c | 199 +-
bfd/netbsd-core.c | 22 +-
bfd/netbsd.h | 6 +-
bfd/newsos3.c | 43 -
bfd/nlm-target.h | 263 -
bfd/nlm.c | 55 -
bfd/nlm32-alpha.c | 859 -
bfd/nlm32-i386.c | 429 -
bfd/nlm32-ppc.c | 986 -
bfd/nlm32-sparc.c | 378 -
bfd/nlm32.c | 22 -
bfd/nlm64.c | 22 -
bfd/nlmcode.h | 1980 -
bfd/nlmswap.h | 153 -
bfd/ns32k.h | 14 +-
bfd/ns32knetbsd.c | 6 +-
bfd/oasys.c | 1252 -
bfd/opncls.c | 351 +-
bfd/osf-core.c | 16 +-
bfd/pc532-mach.c | 4 +-
bfd/pdp11.c | 186 +-
bfd/pe-arm-wince.c | 2 +-
bfd/pe-arm.c | 8 +-
bfd/pe-i386.c | 10 +-
bfd/pe-mcore.c | 8 +-
bfd/pe-mips.c | 924 -
bfd/pe-ppc.c | 2 +-
bfd/pe-sh.c | 2 +-
bfd/pe-x86_64.c | 42 +-
bfd/peXXigen.c | 450 +-
bfd/pef-traceback.h | 2 +-
bfd/pef.c | 100 +-
bfd/pef.h | 8 +-
bfd/pei-arm-wince.c | 2 +-
bfd/pei-arm.c | 4 +-
bfd/pei-i386.c | 10 +-
bfd/pei-ia64.c | 2 +-
bfd/pei-mcore.c | 4 +-
bfd/pei-mips.c | 32 -
bfd/pei-ppc.c | 2 +-
bfd/pei-sh.c | 2 +-
bfd/pei-x86_64.c | 74 +-
bfd/peicode.h | 199 +-
bfd/plugin.c | 165 +-
bfd/plugin.h | 2 +-
bfd/po/Make-in | 10 +-
bfd/po/SRC-POTFILES.in | 88 +-
bfd/po/bfd.pot | 6153 +-
bfd/po/es.po | 7334 +-
bfd/po/fi.po | 1 +
bfd/po/fr.po | 7010 +-
bfd/po/hr.po | 6138 +
bfd/po/id.po | 4521 +-
bfd/po/ja.po | 1 +
bfd/po/pt.po | 8886 ++
bfd/po/ro.po | 1 +
bfd/po/ru.po | 8540 +-
bfd/po/sr.po | 1 +
bfd/po/sv.po | 1 +
bfd/po/tr.po | 1 +
bfd/po/uk.po | 7907 +-
bfd/po/vi.po | 509 +-
bfd/po/zh_CN.po | 1 +
bfd/ppcboot.c | 25 +-
bfd/ptrace-core.c | 12 +-
bfd/reloc.c | 1321 +-
bfd/reloc16.c | 5 +-
bfd/riscix.c | 652 -
bfd/rs6000-core.c | 27 +-
bfd/sco5-core.c | 10 +-
bfd/section.c | 175 +-
bfd/simple.c | 2 +-
bfd/som.c | 326 +-
bfd/som.h | 10 +-
bfd/sparclinux.c | 730 -
bfd/sparclynx.c | 246 -
bfd/sparcnetbsd.c | 39 -
bfd/srec.c | 92 +-
bfd/stab-syms.c | 2 +-
bfd/stabs.c | 10 +-
bfd/sunos.c | 2845 -
bfd/syms.c | 308 +-
bfd/sysdep.h | 60 +-
bfd/targets.c | 491 +-
bfd/tekhex.c | 94 +-
bfd/trad-core.c | 16 +-
bfd/vax1knetbsd.c | 4 +-
bfd/vaxbsd.c | 40 -
bfd/vaxnetbsd.c | 4 +-
bfd/verilog.c | 64 +-
bfd/versados.c | 933 -
bfd/version.h | 20 +-
bfd/version.m4 | 2 +-
bfd/vms-alpha.c | 6635 +-
bfd/vms-lib.c | 1642 +-
bfd/vms-misc.c | 30 +-
bfd/vms.h | 6 +-
bfd/warning.m4 | 2 +-
bfd/wasm-module.c | 280 +-
bfd/wasm-module.h | 12 +-
bfd/xcofflink.c | 94 +-
bfd/xsym.c | 78 +-
bfd/xsym.h | 74 +-
bfd/xtensa-isa.c | 5 +-
bfd/xtensa-modules.c | 2 +-
binutils/.gitignore | 4 -
binutils/BRANCHES | 7 +-
binutils/ChangeLog | 1853 +-
binutils/ChangeLog-2017 | 1886 +
binutils/MAINTAINERS | 42 +-
binutils/Makefile.am | 60 +-
binutils/Makefile.in | 589 +-
binutils/NEWS | 93 +-
binutils/README | 2 +-
binutils/README-how-to-make-a-release | 406 +
binutils/aclocal.m4 | 724 +-
binutils/addr2line.c | 5 +-
binutils/ar.c | 39 +-
binutils/arlex.l | 2 +-
binutils/arparse.y | 2 +-
binutils/arsup.c | 17 +-
binutils/arsup.h | 2 +-
binutils/bfdtest1.c | 2 +-
binutils/bfdtest2.c | 2 +-
binutils/bin2c.c | 2 +-
binutils/binemul.c | 2 +-
binutils/binemul.h | 2 +-
binutils/bucomm.c | 21 +-
binutils/bucomm.h | 4 +-
binutils/budbg.h | 8 +-
binutils/coffdump.c | 2 +-
binutils/coffgrok.c | 8 +-
binutils/coffgrok.h | 2 +-
binutils/config.in | 14 +
binutils/configure | 1893 +-
binutils/configure.ac | 44 +-
binutils/configure.com | 2 +-
binutils/configure.tgt | 2 +-
binutils/cxxfilt.c | 2 +-
binutils/debug.c | 2 +-
binutils/debug.h | 2 +-
binutils/deflex.l | 2 +-
binutils/defparse.y | 2 +-
binutils/dlltool.c | 26 +-
binutils/dlltool.h | 2 +-
binutils/dllwrap.c | 2 +-
binutils/doc/Makefile.am | 12 +-
binutils/doc/Makefile.in | 256 +-
binutils/doc/binutils.texi | 386 +-
binutils/doc/debug.options.texi | 144 +
binutils/dwarf-mode.el | 98 +-
binutils/dwarf.c | 2859 +-
binutils/dwarf.h | 51 +-
binutils/elfcomm.c | 27 +-
binutils/elfcomm.h | 14 +-
binutils/elfedit.c | 277 +-
binutils/embedspu.sh | 2 +-
binutils/emul_aix.c | 2 +-
binutils/emul_vanilla.c | 2 +-
binutils/filemode.c | 2 +-
binutils/ieee.c | 7410 --
binutils/is-ranlib.c | 2 +-
binutils/is-strip.c | 2 +-
binutils/makefile.vms | 4 +-
binutils/maybe-ranlib.c | 2 +-
binutils/maybe-strip.c | 2 +-
binutils/mclex.c | 2 +-
binutils/mcparse.y | 2 +-
binutils/nlmconv.c | 2168 -
binutils/nlmconv.h | 86 -
binutils/nlmheader.y | 959 -
binutils/nm.c | 41 +-
binutils/not-ranlib.c | 2 +-
binutils/not-strip.c | 2 +-
binutils/objcopy.c | 774 +-
binutils/objdump.c | 308 +-
binutils/objdump.h | 2 +-
binutils/od-elf32_avr.c | 2 +-
binutils/od-macho.c | 10 +-
binutils/od-xcoff.c | 2 +-
binutils/po/Make-in | 10 +-
binutils/po/POTFILES.in | 4 -
binutils/po/bg.po | 6536 +-
binutils/po/binutils.pot | 5068 +-
binutils/po/ca.po | 1 +
binutils/po/da.po | 1 +
binutils/po/es.po | 8510 ++-
binutils/po/fi.po | 1 +
binutils/po/fr.po | 7294 +-
binutils/po/hr.po | 1 +
binutils/po/id.po | 3 +-
binutils/po/it.po | 1 +
binutils/po/ja.po | 9587 ++-
binutils/po/pt.po |11853 ++
binutils/po/ro.po | 1 +
binutils/po/ru.po | 8840 +-
binutils/po/sk.po | 1 +
binutils/po/sr.po | 1 +
binutils/po/sv.po | 6841 +-
binutils/po/tr.po | 1 +
binutils/po/uk.po | 8419 +-
binutils/po/vi.po | 1557 +-
binutils/po/zh_CN.po | 1 +
binutils/po/zh_TW.po | 6776 +-
binutils/prdbg.c | 8 +-
binutils/ranlib.sh | 2 +-
binutils/rclex.c | 2 +-
binutils/rcparse.y | 2 +-
binutils/rdcoff.c | 6 +-
binutils/rddbg.c | 67 +-
binutils/readelf.c | 4630 +-
binutils/rename.c | 2 +-
binutils/resbin.c | 2 +-
binutils/rescoff.c | 2 +-
binutils/resrc.c | 2 +-
binutils/resres.c | 2 +-
binutils/sanity.sh | 2 +-
binutils/size.c | 5 +-
binutils/srconv.c | 17 +-
binutils/stabs.c | 412 +-
binutils/strings.c | 90 +-
binutils/sysdep.h | 12 +-
binutils/sysdump.c | 2 +-
binutils/sysinfo.y | 17 +-
binutils/syslex.l | 2 +-
binutils/syslex_wrap.c | 2 +-
.../testsuite/binutils-all/aarch64/aarch64.exp | 2 +-
binutils/testsuite/binutils-all/aarch64/objdump.d | 19 +
binutils/testsuite/binutils-all/aarch64/objdump.s | 9 +
.../testsuite/binutils-all/add-empty-section.d | 2 +-
binutils/testsuite/binutils-all/add-section.d | 2 +-
binutils/testsuite/binutils-all/add-symbol.d | 1 +
binutils/testsuite/binutils-all/ar.exp | 17 +-
binutils/testsuite/binutils-all/arc/double_store.s | 6 +
binutils/testsuite/binutils-all/arc/hexprint.s | 2 +
binutils/testsuite/binutils-all/arc/objdump.exp | 84 +-
binutils/testsuite/binutils-all/arm/objdump.exp | 107 +-
binutils/testsuite/binutils-all/bfin/objdump.exp | 31 +-
binutils/testsuite/binutils-all/compress.exp | 26 +-
binutils/testsuite/binutils-all/copy-2.d | 2 +-
binutils/testsuite/binutils-all/copy-3.d | 2 +-
binutils/testsuite/binutils-all/copy-4.d | 2 +-
binutils/testsuite/binutils-all/copy-5.d | 7 +
binutils/testsuite/binutils-all/debuglink.s | 67 +
binutils/testsuite/binutils-all/dlltool.exp | 2 +-
binutils/testsuite/binutils-all/dw2-1.S | 4 +-
binutils/testsuite/binutils-all/dw2-1.W | 14 +-
binutils/testsuite/binutils-all/dw2-2.S | 2 +-
binutils/testsuite/binutils-all/dw2-3.S | 2 +-
binutils/testsuite/binutils-all/dw2-3.W | 14 +-
binutils/testsuite/binutils-all/dw2-3gabi.W | 14 +-
binutils/testsuite/binutils-all/dw2-compressed.S | 2 +-
binutils/testsuite/binutils-all/dw2-ranges.S | 2 +-
binutils/testsuite/binutils-all/dw5.S | 14 +-
binutils/testsuite/binutils-all/dw5.W | 28 +-
binutils/testsuite/binutils-all/dwarf-attributes.S | 133 +
binutils/testsuite/binutils-all/dwarf-attributes.W | 49 +
binutils/testsuite/binutils-all/dwo.s | 84 +
binutils/testsuite/binutils-all/elfedit-1.d | 2 +-
binutils/testsuite/binutils-all/elfedit-2.d | 2 +-
binutils/testsuite/binutils-all/elfedit-3.d | 2 +-
binutils/testsuite/binutils-all/elfedit.exp | 10 +-
binutils/testsuite/binutils-all/group-5.d | 3 +-
binutils/testsuite/binutils-all/group-7.s | 6 +
binutils/testsuite/binutils-all/group-7a.d | 15 +
binutils/testsuite/binutils-all/group-7b.d | 18 +
binutils/testsuite/binutils-all/group-7c.d | 7 +
binutils/testsuite/binutils-all/hppa/objdump.exp | 68 +-
.../testsuite/binutils-all/i386/compressed-1a.d | 14 +-
.../testsuite/binutils-all/i386/compressed-1b.d | 2 +-
.../testsuite/binutils-all/i386/compressed-1c.d | 2 +-
binutils/testsuite/binutils-all/i386/empty.d | 12 +
binutils/testsuite/binutils-all/i386/empty.s | 27 +
binutils/testsuite/binutils-all/i386/i386.exp | 2 +-
binutils/testsuite/binutils-all/i386/ibt.d | 12 +
binutils/testsuite/binutils-all/i386/ibt.s | 27 +
binutils/testsuite/binutils-all/i386/pr21231a.d | 5 +-
binutils/testsuite/binutils-all/i386/pr21231b.d | 9 +-
binutils/testsuite/binutils-all/i386/pr21231b.s | 4 +-
binutils/testsuite/binutils-all/i386/shstk.d | 12 +
binutils/testsuite/binutils-all/i386/shstk.s | 27 +
.../binutils-all/libdw2-compressedgabi.out | 42 +-
binutils/testsuite/binutils-all/linkdebug.s | 54 +
binutils/testsuite/binutils-all/locview-1.s | 270 +
binutils/testsuite/binutils-all/locview-2.s | 335 +
binutils/testsuite/binutils-all/m68k/objdump.exp | 60 +-
.../testsuite/binutils-all/mips/mips-note-2-n32.d | 7 +
.../testsuite/binutils-all/mips/mips-note-2-n64.d | 7 +
binutils/testsuite/binutils-all/mips/mips-note-2.d | 7 +
.../testsuite/binutils-all/mips/mips-note-2r-n32.d | 9 +
.../testsuite/binutils-all/mips/mips-note-2r-n64.d | 9 +
.../testsuite/binutils-all/mips/mips-note-2r.d | 9 +
.../testsuite/binutils-all/mips/mips-reginfo-n32.d | 7 +
.../testsuite/binutils-all/mips/mips-reginfo.d | 6 +
.../testsuite/binutils-all/mips/mips-reginfo.s | 2 +
.../testsuite/binutils-all/mips/mips-xpa-virt-1.d | 13 +
.../testsuite/binutils-all/mips/mips-xpa-virt-2.d | 13 +
.../testsuite/binutils-all/mips/mips-xpa-virt-3.d | 13 +
.../testsuite/binutils-all/mips/mips-xpa-virt-4.d | 13 +
.../testsuite/binutils-all/mips/mips-xpa-virt.s | 14 +
binutils/testsuite/binutils-all/mips/mips.exp | 60 +-
.../testsuite/binutils-all/mips/mips16-alias.d | 15 +
.../testsuite/binutils-all/mips/mips16-alias.s | 20 +
.../binutils-all/mips/mips16-extend-insn.d | 4 +-
.../testsuite/binutils-all/mips/mips16-noalias.d | 16 +
.../testsuite/binutils-all/mips/mips16-undecoded.d | 22 +-
.../testsuite/binutils-all/mips/mips16-undecoded.s | 1 -
.../binutils-all/mips/mips16e2-extend-insn.d | 355 +
.../binutils-all/mips/mips16e2-undecoded.d | 189 +
binutils/testsuite/binutils-all/nfp/objdump.exp | 52 +
binutils/testsuite/binutils-all/nfp/test1.d | 973 +
.../testsuite/binutils-all/nfp/test1_nfp6000.nffw | Bin 0 -> 9880 bytes
binutils/testsuite/binutils-all/nfp/test2_ctx8.d | 16 +
.../testsuite/binutils-all/nfp/test2_nfp6000.nffw | Bin 0 -> 1472 bytes
.../testsuite/binutils-all/nfp/test2_no-pc_ctx4.d | 16 +
binutils/testsuite/binutils-all/nm.exp | 238 +-
binutils/testsuite/binutils-all/note-1.d | 4 +-
binutils/testsuite/binutils-all/note-2-32.d | 16 +-
binutils/testsuite/binutils-all/note-2-32.s | 50 +-
binutils/testsuite/binutils-all/note-2-64.d | 20 +-
binutils/testsuite/binutils-all/note-2-64.s | 49 +-
binutils/testsuite/binutils-all/note-3-32.d | 18 +
binutils/testsuite/binutils-all/note-3-32.s | 58 +
binutils/testsuite/binutils-all/note-3-64.d | 18 +
binutils/testsuite/binutils-all/note-3-64.s | 58 +
binutils/testsuite/binutils-all/note-3.32.s | 67 +
binutils/testsuite/binutils-all/note-4-32.d | 19 +
binutils/testsuite/binutils-all/note-4-32.s | 74 +
binutils/testsuite/binutils-all/note-4-64.d | 19 +
binutils/testsuite/binutils-all/note-4-64.s | 78 +
binutils/testsuite/binutils-all/note-5.d | 11 +
binutils/testsuite/binutils-all/note-5.s | 14 +
binutils/testsuite/binutils-all/objcopy.exp | 127 +-
binutils/testsuite/binutils-all/objdump.W | 14 +-
binutils/testsuite/binutils-all/objdump.WK2 | 25 +
binutils/testsuite/binutils-all/objdump.WL | 5 +-
binutils/testsuite/binutils-all/objdump.Wk | 8 +
binutils/testsuite/binutils-all/objdump.exp | 298 +-
binutils/testsuite/binutils-all/pr23633.d | 9 +
binutils/testsuite/binutils-all/pr23633.list | 2417 +
binutils/testsuite/binutils-all/pr23633.s | 4 +
binutils/testsuite/binutils-all/readelf.exp | 165 +-
binutils/testsuite/binutils-all/readelf.k | 7 +
binutils/testsuite/binutils-all/readelf.k2 | 4 +
binutils/testsuite/binutils-all/readelf.locview-1 | 35 +
binutils/testsuite/binutils-all/readelf.locview-2 | 46 +
binutils/testsuite/binutils-all/readelf.r | 2 +-
binutils/testsuite/binutils-all/readelf.r-64 | 2 +-
binutils/testsuite/binutils-all/readelf.s-64 | 11 +-
binutils/testsuite/binutils-all/remove-relocs-01.d | 1 +
binutils/testsuite/binutils-all/remove-relocs-04.d | 1 +
binutils/testsuite/binutils-all/remove-relocs-05.d | 1 +
binutils/testsuite/binutils-all/remove-relocs-06.d | 1 +
binutils/testsuite/binutils-all/remove-relocs-07.d | 6 +
binutils/testsuite/binutils-all/remove-relocs-07.s | 2 +
binutils/testsuite/binutils-all/remove-relocs-08.d | 6 +
binutils/testsuite/binutils-all/size.exp | 65 +-
binutils/testsuite/binutils-all/strip-11.d | 2 +-
binutils/testsuite/binutils-all/strip-13.d | 8 +
binutils/testsuite/binutils-all/strip-13mips64.s | 14 +
binutils/testsuite/binutils-all/strip-13rel.s | 12 +
binutils/testsuite/binutils-all/strip-13rela.s | 14 +
binutils/testsuite/binutils-all/strip-14.d | 7 +
binutils/testsuite/binutils-all/strip-14mips64.s | 14 +
binutils/testsuite/binutils-all/strip-14rel.s | 23 +
binutils/testsuite/binutils-all/strip-14rela.s | 27 +
binutils/testsuite/binutils-all/strip-15.d | 8 +
binutils/testsuite/binutils-all/strip-15mips64.s | 14 +
binutils/testsuite/binutils-all/strip-15rel.s | 23 +
binutils/testsuite/binutils-all/strip-15rela.s | 27 +
binutils/testsuite/binutils-all/strip-2.d | 3 +-
binutils/testsuite/binutils-all/strip-3.d | 4 +-
binutils/testsuite/binutils-all/strip-5.d | 3 +-
binutils/testsuite/binutils-all/strip-7.d | 3 +-
binutils/testsuite/binutils-all/strip-9.d | 3 +-
binutils/testsuite/binutils-all/symbols-1.d | 3 +-
binutils/testsuite/binutils-all/symbols-2.d | 3 +-
binutils/testsuite/binutils-all/symbols-3.d | 3 +-
binutils/testsuite/binutils-all/symbols-4.d | 3 +-
binutils/testsuite/binutils-all/testranges.d | 2 +-
binutils/testsuite/binutils-all/update-section.exp | 2 +-
binutils/testsuite/binutils-all/vax/objdump.exp | 51 +-
binutils/testsuite/binutils-all/wasm32/wasm32.exp | 2 +-
binutils/testsuite/binutils-all/windres/README | 2 +-
binutils/testsuite/binutils-all/windres/msupdate | 2 +-
.../testsuite/binutils-all/windres/windres.exp | 2 +-
.../testsuite/binutils-all/x86-64/compressed-1a.d | 16 +-
.../testsuite/binutils-all/x86-64/compressed-1b.d | 2 +-
.../testsuite/binutils-all/x86-64/compressed-1c.d | 2 +-
binutils/testsuite/binutils-all/x86-64/empty-x32.d | 13 +
binutils/testsuite/binutils-all/x86-64/empty.d | 12 +
binutils/testsuite/binutils-all/x86-64/empty.s | 27 +
binutils/testsuite/binutils-all/x86-64/ibt-x32.d | 13 +
binutils/testsuite/binutils-all/x86-64/ibt.d | 12 +
binutils/testsuite/binutils-all/x86-64/ibt.s | 27 +
binutils/testsuite/binutils-all/x86-64/objects.exp | 62 +
binutils/testsuite/binutils-all/x86-64/pr21231a.d | 5 +-
binutils/testsuite/binutils-all/x86-64/pr21231b.d | 9 +-
binutils/testsuite/binutils-all/x86-64/pr21231b.s | 4 +-
.../testsuite/binutils-all/x86-64/pr22451.o.bz2 | Bin 0 -> 297 bytes
.../testsuite/binutils-all/x86-64/pr23494a-x32.d | 13 +
binutils/testsuite/binutils-all/x86-64/pr23494a.d | 13 +
binutils/testsuite/binutils-all/x86-64/pr23494a.s | 92 +
.../testsuite/binutils-all/x86-64/pr23494b-x32.d | 6 +
binutils/testsuite/binutils-all/x86-64/pr23494b.d | 6 +
binutils/testsuite/binutils-all/x86-64/pr23494b.s | 30 +
.../testsuite/binutils-all/x86-64/pr23494c-x32.d | 11 +
binutils/testsuite/binutils-all/x86-64/pr23494c.d | 11 +
binutils/testsuite/binutils-all/x86-64/pr23494c.s | 123 +
.../testsuite/binutils-all/x86-64/pr23494d-x32.d | 13 +
binutils/testsuite/binutils-all/x86-64/pr23494d.d | 13 +
.../testsuite/binutils-all/x86-64/pr23494e-x32.d | 14 +
binutils/testsuite/binutils-all/x86-64/pr23494e.d | 14 +
binutils/testsuite/binutils-all/x86-64/shstk-x32.d | 13 +
binutils/testsuite/binutils-all/x86-64/shstk.d | 12 +
binutils/testsuite/binutils-all/x86-64/shstk.s | 27 +
binutils/testsuite/binutils-all/x86-64/x86-64.exp | 2 +-
binutils/testsuite/config/default.exp | 18 +-
binutils/testsuite/config/hppa.sed | 4 +-
binutils/testsuite/lib/binutils-common.exp | 1087 +-
binutils/testsuite/lib/utils-lib.exp | 460 +-
binutils/unwind-ia64.c | 2 +-
binutils/unwind-ia64.h | 2 +-
binutils/version.c | 4 +-
binutils/windint.h | 2 +-
binutils/windmc.c | 5 +-
binutils/windmc.h | 2 +-
binutils/windres.c | 5 +-
binutils/windres.h | 2 +-
binutils/winduni.c | 4 +-
binutils/winduni.h | 2 +-
binutils/wrstabs.c | 2 +-
config-ml.in | 16 +-
config.guess | 582 +-
config.sub | 1660 +-
config/ChangeLog | 136 +
config/acx.m4 | 28 +-
config/ax_check_define.m4 | 92 +
config/ax_pthread.m4 | 485 +
config/bootstrap-cet.mk | 5 +
config/bootstrap-debug-lean.mk | 1 +
config/bootstrap-lto-noplugin.mk | 5 +-
config/bootstrap-lto.mk | 6 +-
config/bootstrap-mpx.mk | 9 -
config/bootstrap-ubsan.mk | 6 +-
config/cet.m4 | 50 +
config/dfp.m4 | 2 +-
config/gcc-plugin.m4 | 19 +-
config/hwcaps.m4 | 60 +
config/isl.m4 | 20 +-
config/math.m4 | 4 +-
config/mt-android | 1 +
config/multi.m4 | 3 +-
config/override.m4 | 2 +-
config/plugins.m4 | 2 +-
config/tls.m4 | 14 +-
configure | 1578 +-
configure.ac | 278 +-
contrib/ChangeLog | 5 +
contrib/dg-extract-results.py | 592 +
contrib/dg-extract-results.sh | 459 +
cpu/ChangeLog | 61 +
cpu/frv.opc | 17 +-
cpu/or1k.opc | 585 +-
cpu/or1kcommon.cpu | 4 +-
cpu/or1korbis.cpu | 300 +-
elfcpp/ChangeLog | 53 +-
elfcpp/ChangeLog-2017 | 49 +
elfcpp/README | 2 +-
elfcpp/aarch64.h | 4 +-
elfcpp/arm.h | 2 +-
elfcpp/dwarf.h | 15 +-
elfcpp/elfcpp.h | 48 +-
elfcpp/elfcpp_file.h | 2 +-
elfcpp/elfcpp_internal.h | 2 +-
elfcpp/elfcpp_swap.h | 2 +-
elfcpp/i386.h | 2 +-
elfcpp/mips.h | 10 +-
elfcpp/powerpc.h | 44 +-
elfcpp/s390.h | 2 +-
elfcpp/sparc.h | 2 +-
elfcpp/tilegx.h | 2 +-
elfcpp/x86_64.h | 8 +-
etc/ChangeLog | 15 +
etc/add-log.el | 8 +-
etc/configure | 445 +-
etc/configure.in | 1 -
etc/texi2pod.pl | 2 +-
etc/update-copyright.py | 2 +-
gas/CONTRIBUTORS | 2 +-
gas/ChangeLog | 6097 +-
gas/ChangeLog-2017 | 4419 +
gas/MAINTAINERS | 2 +-
gas/Makefile.am | 50 +-
gas/Makefile.in | 2141 +-
gas/NEWS | 98 +-
gas/README | 2 +-
gas/aclocal.m4 | 724 +-
gas/app.c | 29 +-
gas/as.c | 118 +-
gas/as.h | 17 +-
gas/asintl.h | 12 +-
gas/atof-generic.c | 2 +-
gas/bignum.h | 2 +-
gas/bit_fix.h | 2 +-
gas/cgen.c | 38 +-
gas/cgen.h | 2 +-
gas/compress-debug.c | 2 +-
gas/compress-debug.h | 2 +-
gas/cond.c | 40 +-
gas/config.in | 40 +-
gas/config/aout_gnu.h | 450 -
gas/config/atof-ieee.c | 2 +-
gas/config/atof-vax.c | 2 +-
gas/config/bfin-aux.h | 2 +-
gas/config/bfin-defs.h | 2 +-
gas/config/bfin-lex-wrapper.c | 2 +-
gas/config/bfin-lex.l | 2 +-
gas/config/bfin-parse.y | 2 +-
gas/config/e-crisaout.c | 2 +-
gas/config/e-criself.c | 2 +-
gas/config/e-i386aout.c | 2 +-
gas/config/e-i386coff.c | 2 +-
gas/config/e-i386elf.c | 2 +-
gas/config/e-mipself.c | 2 +-
gas/config/itbl-mips.h | 2 +-
gas/config/m68k-parse.h | 2 +-
gas/config/m68k-parse.y | 2 +-
gas/config/obj-aout.c | 2 +-
gas/config/obj-aout.h | 2 +-
gas/config/obj-coff-seh.c | 7 +-
gas/config/obj-coff-seh.h | 2 +-
gas/config/obj-coff.c | 6 +-
gas/config/obj-coff.h | 54 +-
gas/config/obj-ecoff.c | 2 +-
gas/config/obj-ecoff.h | 2 +-
gas/config/obj-elf.c | 230 +-
gas/config/obj-elf.h | 8 +-
gas/config/obj-evax.c | 17 +-
gas/config/obj-evax.h | 2 +-
gas/config/obj-fdpicelf.c | 2 +-
gas/config/obj-fdpicelf.h | 2 +-
gas/config/obj-macho.c | 30 +-
gas/config/obj-macho.h | 2 +-
gas/config/obj-multi.c | 2 +-
gas/config/obj-multi.h | 5 +-
gas/config/obj-som.c | 2 +-
gas/config/obj-som.h | 2 +-
gas/config/rl78-defs.h | 2 +-
gas/config/rl78-parse.y | 2 +-
gas/config/rx-defs.h | 2 +-
gas/config/rx-parse.y | 2 +-
gas/config/tc-aarch64.c | 599 +-
gas/config/tc-aarch64.h | 14 +-
gas/config/tc-alpha.c | 15 +-
gas/config/tc-alpha.h | 2 +-
gas/config/tc-arc.c | 477 +-
gas/config/tc-arc.h | 14 +-
gas/config/tc-arm.c | 1938 +-
gas/config/tc-arm.h | 36 +-
gas/config/tc-avr.c | 625 +-
gas/config/tc-avr.h | 16 +-
gas/config/tc-bfin.c | 5 +-
gas/config/tc-bfin.h | 2 +-
gas/config/tc-cr16.c | 14 +-
gas/config/tc-cr16.h | 2 +-
gas/config/tc-cris.c | 2 +-
gas/config/tc-cris.h | 7 +-
gas/config/tc-crx.c | 29 +-
gas/config/tc-crx.h | 2 +-
gas/config/tc-csky.c | 7306 ++
gas/config/tc-csky.h | 110 +
gas/config/tc-d10v.c | 2 +-
gas/config/tc-d10v.h | 2 +-
gas/config/tc-d30v.c | 2 +-
gas/config/tc-d30v.h | 2 +-
gas/config/tc-dlx.c | 2 +-
gas/config/tc-dlx.h | 2 +-
gas/config/tc-epiphany.c | 2 +-
gas/config/tc-epiphany.h | 2 +-
gas/config/tc-fr30.c | 2 +-
gas/config/tc-fr30.h | 2 +-
gas/config/tc-frv.c | 2 +-
gas/config/tc-frv.h | 2 +-
gas/config/tc-ft32.c | 396 +-
gas/config/tc-ft32.h | 33 +-
gas/config/tc-generic.c | 2 +-
gas/config/tc-generic.h | 2 +-
gas/config/tc-h8300.c | 40 +-
gas/config/tc-h8300.h | 18 +-
gas/config/tc-hppa.c | 15 +-
gas/config/tc-hppa.h | 2 +-
gas/config/tc-i370.c | 2667 -
gas/config/tc-i370.h | 63 -
gas/config/tc-i386-intel.c | 102 +-
gas/config/tc-i386.c | 3037 +-
gas/config/tc-i386.h | 43 +-
gas/config/tc-i860.c | 1491 -
gas/config/tc-i860.h | 95 -
gas/config/tc-i960.c | 2667 -
gas/config/tc-i960.h | 186 -
gas/config/tc-ia64.c | 2 +-
gas/config/tc-ia64.h | 7 +-
gas/config/tc-ip2k.c | 2 +-
gas/config/tc-ip2k.h | 2 +-
gas/config/tc-iq2000.c | 2 +-
gas/config/tc-iq2000.h | 2 +-
gas/config/tc-lm32.c | 2 +-
gas/config/tc-lm32.h | 2 +-
gas/config/tc-m32c.c | 8 +-
gas/config/tc-m32c.h | 8 +-
gas/config/tc-m32r.c | 2 +-
gas/config/tc-m32r.h | 2 +-
gas/config/tc-m68851.h | 2 +-
gas/config/tc-m68hc11.c | 2 +-
gas/config/tc-m68hc11.h | 2 +-
gas/config/tc-m68k.c | 157 +-
gas/config/tc-m68k.h | 57 +-
gas/config/tc-mcore.c | 7 +-
gas/config/tc-mcore.h | 2 +-
gas/config/tc-mep.c | 2 +-
gas/config/tc-mep.h | 2 +-
gas/config/tc-metag.c | 2 +-
gas/config/tc-metag.h | 2 +-
gas/config/tc-microblaze.c | 47 +-
gas/config/tc-microblaze.h | 13 +-
gas/config/tc-mips.c | 1129 +-
gas/config/tc-mips.h | 5 +-
gas/config/tc-mmix.c | 2 +-
gas/config/tc-mmix.h | 2 +-
gas/config/tc-mn10200.c | 2 +-
gas/config/tc-mn10200.h | 2 +-
gas/config/tc-mn10300.c | 2 +-
gas/config/tc-mn10300.h | 20 +-
gas/config/tc-moxie.c | 2 +-
gas/config/tc-moxie.h | 2 +-
gas/config/tc-msp430.c | 196 +-
gas/config/tc-msp430.h | 11 +-
gas/config/tc-mt.c | 8 +-
gas/config/tc-mt.h | 8 +-
gas/config/tc-nds32.c | 4489 +-
gas/config/tc-nds32.h | 43 +-
gas/config/tc-nios2.c | 86 +-
gas/config/tc-nios2.h | 2 +-
gas/config/tc-ns32k.c | 4 +-
gas/config/tc-ns32k.h | 2 +-
gas/config/tc-or1k.c | 8 +-
gas/config/tc-or1k.h | 2 +-
gas/config/tc-pdp11.c | 34 +-
gas/config/tc-pdp11.h | 2 +-
gas/config/tc-pj.c | 2 +-
gas/config/tc-pj.h | 2 +-
gas/config/tc-ppc.c | 548 +-
gas/config/tc-ppc.h | 26 +-
gas/config/tc-pru.c | 49 +-
gas/config/tc-pru.h | 14 +-
gas/config/tc-riscv.c | 769 +-
gas/config/tc-riscv.h | 11 +-
gas/config/tc-rl78.c | 3 +-
gas/config/tc-rl78.h | 6 +-
gas/config/tc-rx.c | 12 +-
gas/config/tc-rx.h | 2 +-
gas/config/tc-s12z.c | 3845 +
gas/config/tc-s12z.h | 105 +
gas/config/tc-s390.c | 69 +-
gas/config/tc-s390.h | 5 +-
gas/config/tc-score.c | 172 +-
gas/config/tc-score.h | 2 +-
gas/config/tc-score7.c | 32 +-
gas/config/tc-sh.c | 594 +-
gas/config/tc-sh.h | 11 +-
gas/config/tc-sh64.c | 3526 -
gas/config/tc-sh64.h | 227 -
gas/config/tc-sparc.c | 345 +-
gas/config/tc-sparc.h | 63 +-
gas/config/tc-spu.c | 19 +-
gas/config/tc-spu.h | 2 +-
gas/config/tc-tic30.c | 2 +-
gas/config/tc-tic30.h | 2 +-
gas/config/tc-tic4x.c | 4 +-
gas/config/tc-tic4x.h | 2 +-
gas/config/tc-tic54x.c | 24 +-
gas/config/tc-tic54x.h | 2 +-
gas/config/tc-tic6x.c | 2 +-
gas/config/tc-tic6x.h | 2 +-
gas/config/tc-tilegx.c | 13 +-
gas/config/tc-tilegx.h | 2 +-
gas/config/tc-tilepro.c | 13 +-
gas/config/tc-tilepro.h | 2 +-
gas/config/tc-v850.c | 5 +-
gas/config/tc-v850.h | 2 +-
gas/config/tc-vax.c | 2 +-
gas/config/tc-vax.h | 2 +-
gas/config/tc-visium.c | 8 +-
gas/config/tc-visium.h | 8 +-
gas/config/tc-wasm32.c | 2 +-
gas/config/tc-wasm32.h | 2 +-
gas/config/tc-xc16x.c | 2 +-
gas/config/tc-xc16x.h | 2 +-
gas/config/tc-xgate.c | 2 +-
gas/config/tc-xgate.h | 2 +-
gas/config/tc-xstormy16.c | 2 +-
gas/config/tc-xstormy16.h | 2 +-
gas/config/tc-xtensa.c | 1310 +-
gas/config/tc-xtensa.h | 21 +-
gas/config/tc-z80.c | 44 +-
gas/config/tc-z80.h | 2 +-
gas/config/tc-z8k.c | 2 +-
gas/config/tc-z8k.h | 2 +-
gas/config/te-386bsd.h | 2 +-
gas/config/te-aix.h | 2 +-
gas/config/te-aix5.h | 2 +-
gas/config/te-armeabi.h | 2 +-
gas/config/te-armfbsdeabi.h | 2 +-
gas/config/te-armfbsdvfp.h | 2 +-
gas/config/te-armlinuxeabi.h | 2 +-
gas/config/te-csky_abiv1.h | 24 +
gas/config/te-csky_abiv1_linux.h | 24 +
gas/config/te-csky_abiv2.h | 26 +
gas/config/te-csky_abiv2_linux.h | 24 +
gas/config/te-dragonfly.h | 2 +-
gas/config/te-dynix.h | 26 -
gas/config/te-epoc-pe.h | 27 -
gas/config/te-freebsd.h | 2 +-
gas/config/te-generic.h | 2 +-
gas/config/te-gnu.h | 2 +-
gas/config/te-go32.h | 2 +-
gas/config/te-hppa.h | 2 +-
gas/config/te-hppa64.h | 2 +-
gas/config/te-hppalinux64.h | 2 +-
gas/config/te-hpux.h | 2 +-
gas/config/te-i386aix.h | 38 -
gas/config/te-ia64aix.h | 2 +-
gas/config/te-interix.h | 2 +-
gas/config/te-irix.h | 2 +-
gas/config/te-linux.h | 2 +-
gas/config/te-lynx.h | 2 +-
gas/config/te-mach.h | 21 -
gas/config/te-macos.h | 2 +-
gas/config/te-nacl.h | 2 +-
gas/config/te-nbsd.h | 2 +-
gas/config/te-nbsd532.h | 2 +-
gas/config/te-netware.h | 28 -
gas/config/te-pc532mach.h | 2 +-
gas/config/te-pe.h | 2 +-
gas/config/te-pep.h | 2 +-
gas/config/te-psos.h | 35 -
gas/config/te-riscix.h | 25 -
gas/config/te-solaris.h | 2 +-
gas/config/te-sparcaout.h | 22 -
gas/config/te-sun3.h | 48 -
gas/config/te-svr4.h | 2 +-
gas/config/te-symbian.h | 2 +-
gas/config/te-tmips.h | 2 +-
gas/config/te-uclinux.h | 2 +-
gas/config/te-vms.c | 2 +-
gas/config/te-vms.h | 2 +-
gas/config/te-vxworks.h | 2 +-
gas/config/te-wince-pe.h | 2 +-
gas/config/vax-inst.h | 2 +-
gas/config/xtensa-istack.h | 2 +-
gas/config/xtensa-relax.c | 6 +-
gas/config/xtensa-relax.h | 2 +-
gas/configure | 1911 +-
gas/configure.ac | 213 +-
gas/configure.com | 2 +-
gas/configure.tgt | 100 +-
gas/debug.c | 2 +-
gas/depend.c | 2 +-
gas/doc/Makefile.am | 26 +-
gas/doc/Makefile.in | 282 +-
gas/doc/all.texi | 7 +-
gas/doc/as.texi | 8335 ++
gas/doc/as.texinfo | 8328 --
gas/doc/c-aarch64.texi | 55 +-
gas/doc/c-alpha.texi | 22 +-
gas/doc/c-arc.texi | 54 +-
gas/doc/c-arm.texi | 85 +-
gas/doc/c-avr.texi | 87 +-
gas/doc/c-bfin.texi | 10 +-
gas/doc/c-cr16.texi | 2 +-
gas/doc/c-cris.texi | 42 +-
gas/doc/c-csky.texi | 195 +
gas/doc/c-d10v.texi | 2 +-
gas/doc/c-d30v.texi | 2 +-
gas/doc/c-epiphany.texi | 6 +-
gas/doc/c-h8300.texi | 2 +-
gas/doc/c-hppa.texi | 2 +-
gas/doc/c-i370.texi | 200 -
gas/doc/c-i386.texi | 104 +-
gas/doc/c-i860.texi | 197 -
gas/doc/c-i960.texi | 324 -
gas/doc/c-ia64.texi | 4 +-
gas/doc/c-ip2k.texi | 2 +-
gas/doc/c-lm32.texi | 20 +-
gas/doc/c-m32c.texi | 2 +-
gas/doc/c-m32r.texi | 8 +-
gas/doc/c-m68hc11.texi | 2 +-
gas/doc/c-m68k.texi | 26 +-
gas/doc/c-metag.texi | 2 +-
gas/doc/c-microblaze.texi | 2 +-
gas/doc/c-mips.texi | 136 +-
gas/doc/c-mmix.texi | 24 +-
gas/doc/c-msp430.texi | 21 +-
gas/doc/c-mt.texi | 6 +-
gas/doc/c-nds32.texi | 2 +-
gas/doc/c-nios2.texi | 14 +-
gas/doc/c-ns32k.texi | 2 +-
gas/doc/c-or1k.texi | 300 +
gas/doc/c-pdp11.texi | 2 +-
gas/doc/c-pj.texi | 2 +-
gas/doc/c-ppc.texi | 11 +-
gas/doc/c-pru.texi | 10 +-
gas/doc/c-riscv.texi | 365 +-
gas/doc/c-rl78.texi | 6 +-
gas/doc/c-rx.texi | 8 +-
gas/doc/c-s12z.texi | 212 +
gas/doc/c-s390.texi | 4 +-
gas/doc/c-score.texi | 2 +-
gas/doc/c-sh.texi | 2 +-
gas/doc/c-sh64.texi | 219 -
gas/doc/c-sparc.texi | 30 +-
gas/doc/c-tic54x.texi | 2 +-
gas/doc/c-tic6x.texi | 14 +-
gas/doc/c-tilegx.texi | 2 +-
gas/doc/c-tilepro.texi | 2 +-
gas/doc/c-v850.texi | 48 +-
gas/doc/c-vax.texi | 4 +-
gas/doc/c-visium.texi | 4 +-
gas/doc/c-wasm32.texi | 2 +-
gas/doc/c-xc16x.texi | 2 +-
gas/doc/c-xgate.texi | 2 +-
gas/doc/c-xstormy16.texi | 8 +-
gas/doc/c-xtensa.texi | 16 +-
gas/doc/c-z80.texi | 6 +-
gas/doc/c-z8k.texi | 6 +-
gas/doc/h8.texi | 3 +-
gas/doc/internals.texi | 28 +-
gas/dw2gencfi.c | 6 +-
gas/dw2gencfi.h | 2 +-
gas/dwarf2dbg.c | 341 +-
gas/dwarf2dbg.h | 27 +-
gas/ecoff.c | 14 +-
gas/ecoff.h | 2 +-
gas/ehopt.c | 36 +-
gas/emul-target.h | 2 +-
gas/emul.h | 2 +-
gas/expr.c | 58 +-
gas/expr.h | 2 +-
gas/flonum-copy.c | 2 +-
gas/flonum-konst.c | 2 +-
gas/flonum-mult.c | 2 +-
gas/flonum.h | 2 +-
gas/frags.c | 7 +-
gas/frags.h | 2 +-
gas/hash.c | 2 +-
gas/hash.h | 2 +-
gas/input-file.c | 2 +-
gas/input-file.h | 2 +-
gas/input-scrub.c | 34 +-
gas/itbl-lex-wrapper.c | 2 +-
gas/itbl-lex.h | 2 +-
gas/itbl-lex.l | 2 +-
gas/itbl-ops.c | 2 +-
gas/itbl-ops.h | 2 +-
gas/itbl-parse.y | 2 +-
gas/listing.c | 10 +-
gas/listing.h | 2 +-
gas/literal.c | 2 +-
gas/macro.c | 2 +-
gas/macro.h | 2 +-
gas/makefile.vms | 2 +-
gas/messages.c | 2 +-
gas/obj.h | 2 +-
gas/output-file.c | 2 +-
gas/output-file.h | 2 +-
gas/po/Make-in | 10 +-
gas/po/POTFILES.in | 26 +-
gas/po/es.po |17457 ++--
gas/po/fi.po | 1 +
gas/po/fr.po |11527 ++-
gas/po/gas.pot | 6771 +-
gas/po/id.po | 8614 +-
gas/po/ja.po | 249 +-
gas/po/ru.po |21690 +++--
gas/po/sv.po |10444 +-
gas/po/tr.po |12590 +--
gas/po/uk.po |11642 ++-
gas/po/zh_CN.po | 1 +
gas/read.c | 327 +-
gas/read.h | 8 +-
gas/remap.c | 2 +-
gas/sb.c | 2 +-
gas/sb.h | 2 +-
gas/stabs.c | 12 +-
gas/struc-symbol.h | 158 -
gas/subsegs.c | 2 +-
gas/subsegs.h | 2 +-
gas/symbols.c | 244 +-
gas/symbols.h | 5 +-
gas/tc.h | 2 +-
gas/testsuite/config/default.exp | 12 +-
gas/testsuite/gas/aarch64/aarch64.exp | 2 +-
gas/testsuite/gas/aarch64/addsub.d | 159 +
gas/testsuite/gas/aarch64/addsub.s | 18 +-
gas/testsuite/gas/aarch64/advsimd-across.s | 2 +-
gas/testsuite/gas/aarch64/advsimd-armv8_3.d | 7725 ++
gas/testsuite/gas/aarch64/advsimd-armv8_3.s | 84 +-
gas/testsuite/gas/aarch64/advsimd-compnum.d | 8282 ++-
gas/testsuite/gas/aarch64/advsimd-compnum.s | 21 +-
gas/testsuite/gas/aarch64/advsimd-misc.s | 2 +-
gas/testsuite/gas/aarch64/advsisd-copy.s | 2 +-
gas/testsuite/gas/aarch64/advsisd-misc.s | 2 +-
gas/testsuite/gas/aarch64/alias.s | 2 +-
.../gas/aarch64/armv8_2-a-crypto-fp16-illegal.d | 3 +
.../gas/aarch64/armv8_2-a-crypto-fp16-illegal.l | 25 +
.../gas/aarch64/armv8_2-a-crypto-fp16-illegal.s | 14 +
gas/testsuite/gas/aarch64/armv8_2-a-crypto-fp16.d | 3428 +
gas/testsuite/gas/aarch64/armv8_2-a-crypto-fp16.s | 118 +
gas/testsuite/gas/aarch64/armv8_2-a-illegal.d | 2 +-
gas/testsuite/gas/aarch64/armv8_3-a-crypto-fp16.d | 3429 +
gas/testsuite/gas/aarch64/armv8_4-a-crypto-fp16.d | 3429 +
gas/testsuite/gas/aarch64/armv8_4-a-illegal.d | 3 +
gas/testsuite/gas/aarch64/armv8_4-a-illegal.l | 4 +
gas/testsuite/gas/aarch64/armv8_4-a-illegal.s | 5 +
.../gas/aarch64/armv8_4-a-registers-illegal.d | 3 +
.../gas/aarch64/armv8_4-a-registers-illegal.l | 178 +
.../gas/aarch64/armv8_4-a-registers-illegal.s | 80 +
gas/testsuite/gas/aarch64/armv8_4-a-registers.d | 192 +
gas/testsuite/gas/aarch64/armv8_4-a-registers.s | 94 +
gas/testsuite/gas/aarch64/armv8_4-a.d | 2204 +
gas/testsuite/gas/aarch64/armv8_4-a.s | 146 +
gas/testsuite/gas/aarch64/armv8_5-a-dp.d | 31 +
gas/testsuite/gas/aarch64/armv8_5-a-dp.s | 19 +
gas/testsuite/gas/aarch64/bitfield-alias.s | 2 +-
gas/testsuite/gas/aarch64/bitfield-bfm.s | 2 +-
gas/testsuite/gas/aarch64/bti.d | 12 +
gas/testsuite/gas/aarch64/bti.s | 8 +
gas/testsuite/gas/aarch64/codealign.d | 2 +-
gas/testsuite/gas/aarch64/crc32.s | 2 +-
gas/testsuite/gas/aarch64/crypto.s | 2 +-
gas/testsuite/gas/aarch64/deprecated.d | 2 +-
gas/testsuite/gas/aarch64/diagnostic.d | 2 +-
gas/testsuite/gas/aarch64/diagnostic.l | 19 +-
gas/testsuite/gas/aarch64/diagnostic.s | 26 +-
gas/testsuite/gas/aarch64/dotproduct.d | 548 +
gas/testsuite/gas/aarch64/dotproduct.s | 540 +
gas/testsuite/gas/aarch64/dotproduct_armv8_4.d | 10 +
gas/testsuite/gas/aarch64/dotproduct_armv8_4.s | 2 +
gas/testsuite/gas/aarch64/floatdp2.s | 2 +-
gas/testsuite/gas/aarch64/fp-const0-parse.s | 2 +-
gas/testsuite/gas/aarch64/fp_cvt_int.s | 2 +-
gas/testsuite/gas/aarch64/fpmov.d | 4 +
gas/testsuite/gas/aarch64/fpmov.s | 5 +
gas/testsuite/gas/aarch64/illegal-2.d | 2 +-
gas/testsuite/gas/aarch64/illegal-3.d | 49 +
gas/testsuite/gas/aarch64/illegal-3.s | 56 +
gas/testsuite/gas/aarch64/illegal-bti.d | 3 +
gas/testsuite/gas/aarch64/illegal-bti.l | 5 +
gas/testsuite/gas/aarch64/illegal-by-element.d | 3 +
gas/testsuite/gas/aarch64/illegal-by-element.l | 133 +
gas/testsuite/gas/aarch64/illegal-by-element.s | 62 +
gas/testsuite/gas/aarch64/illegal-crypto-nofp.d | 2 +-
gas/testsuite/gas/aarch64/illegal-dotproduct.d | 4 +
gas/testsuite/gas/aarch64/illegal-dotproduct.l | 13 +
gas/testsuite/gas/aarch64/illegal-dotproduct.s | 4 +
gas/testsuite/gas/aarch64/illegal-fcmla.d | 2 +-
gas/testsuite/gas/aarch64/illegal-fjcvtzs.d | 2 +-
gas/testsuite/gas/aarch64/illegal-fp16-nofp.d | 2 +-
gas/testsuite/gas/aarch64/illegal-ldapr.d | 2 +-
gas/testsuite/gas/aarch64/illegal-ldraa.d | 2 +-
gas/testsuite/gas/aarch64/illegal-lse.d | 2 +-
gas/testsuite/gas/aarch64/illegal-lse.s | 2 +-
gas/testsuite/gas/aarch64/illegal-nofp-armv8_3.d | 2 +-
gas/testsuite/gas/aarch64/illegal-nofp16.d | 2 +-
gas/testsuite/gas/aarch64/illegal-ras-1.d | 2 +-
gas/testsuite/gas/aarch64/illegal-sysreg-2.d | 2 +-
gas/testsuite/gas/aarch64/illegal-sysreg-2.l | 2 -
gas/testsuite/gas/aarch64/illegal-sysreg-3.d | 2 +-
gas/testsuite/gas/aarch64/illegal-sysreg-4.d | 3 +
gas/testsuite/gas/aarch64/illegal-sysreg-4.l | 16 +
gas/testsuite/gas/aarch64/illegal.d | 2 +-
gas/testsuite/gas/aarch64/illegal.l | 4 +-
gas/testsuite/gas/aarch64/illegal.s | 7 +-
gas/testsuite/gas/aarch64/ldst-exclusive.s | 2 +-
gas/testsuite/gas/aarch64/ldst-reg-imm-post-ind.s | 2 +-
gas/testsuite/gas/aarch64/ldst-reg-imm-pre-ind.s | 2 +-
gas/testsuite/gas/aarch64/ldst-reg-pair.s | 2 +-
gas/testsuite/gas/aarch64/ldst-reg-reg-offset.s | 2 +-
gas/testsuite/gas/aarch64/ldst-reg-uns-imm.s | 2 +-
gas/testsuite/gas/aarch64/ldst-reg-unscaled-imm.s | 2 +-
gas/testsuite/gas/aarch64/legacy_reg_names.d | 2 +-
gas/testsuite/gas/aarch64/litpool.d | 2 +-
gas/testsuite/gas/aarch64/lor.s | 2 +-
gas/testsuite/gas/aarch64/lse-atomic.s | 2 +-
gas/testsuite/gas/aarch64/mapmisc.d | 2 +-
gas/testsuite/gas/aarch64/mapping.d | 2 +-
gas/testsuite/gas/aarch64/mapping2.d | 2 +-
gas/testsuite/gas/aarch64/mapping3.d | 2 +-
gas/testsuite/gas/aarch64/mapping4.d | 2 +-
gas/testsuite/gas/aarch64/msr.d | 11 +
gas/testsuite/gas/aarch64/msr.s | 17 +-
gas/testsuite/gas/aarch64/neon-fp-cvt-int.s | 2 +-
gas/testsuite/gas/aarch64/pan-illegal.d | 2 +-
gas/testsuite/gas/aarch64/pan.s | 2 +-
gas/testsuite/gas/aarch64/pr22529.d | 4 +
gas/testsuite/gas/aarch64/pr22529.l | 17 +
gas/testsuite/gas/aarch64/pr22529.s | 3 +
gas/testsuite/gas/aarch64/predres.d | 11 +
gas/testsuite/gas/aarch64/predres.s | 5 +
gas/testsuite/gas/aarch64/rdma-directive.d | 5080 +-
gas/testsuite/gas/aarch64/rdma.d | 5080 +-
gas/testsuite/gas/aarch64/rdma.s | 25 +-
gas/testsuite/gas/aarch64/register_aliases.d | 12 +
gas/testsuite/gas/aarch64/register_aliases.s | 11 +
gas/testsuite/gas/aarch64/reloc-prel_g0.d | 13 +
gas/testsuite/gas/aarch64/reloc-prel_g0.s | 7 +
gas/testsuite/gas/aarch64/reloc-prel_g0_nc.d | 15 +
gas/testsuite/gas/aarch64/reloc-prel_g0_nc.s | 8 +
gas/testsuite/gas/aarch64/reloc-prel_g1.d | 13 +
gas/testsuite/gas/aarch64/reloc-prel_g1.s | 7 +
gas/testsuite/gas/aarch64/reloc-prel_g1_nc.d | 15 +
gas/testsuite/gas/aarch64/reloc-prel_g1_nc.s | 8 +
gas/testsuite/gas/aarch64/reloc-prel_g2.d | 15 +
gas/testsuite/gas/aarch64/reloc-prel_g2.s | 8 +
gas/testsuite/gas/aarch64/reloc-prel_g2_nc.d | 15 +
gas/testsuite/gas/aarch64/reloc-prel_g2_nc.s | 8 +
gas/testsuite/gas/aarch64/reloc-prel_g3.d | 15 +
gas/testsuite/gas/aarch64/reloc-prel_g3.s | 8 +
.../gas/aarch64/reloc-tprel_lo12-ldst16-ilp32.d | 11 +
.../gas/aarch64/reloc-tprel_lo12-ldst16.d | 10 +
.../gas/aarch64/reloc-tprel_lo12-ldst16.s | 6 +
.../gas/aarch64/reloc-tprel_lo12-ldst32-ilp32.d | 11 +
.../gas/aarch64/reloc-tprel_lo12-ldst32.d | 10 +
.../gas/aarch64/reloc-tprel_lo12-ldst32.s | 6 +
.../gas/aarch64/reloc-tprel_lo12-ldst64-ilp32.d | 12 +
.../gas/aarch64/reloc-tprel_lo12-ldst64.d | 10 +
.../gas/aarch64/reloc-tprel_lo12-ldst64.s | 6 +
.../gas/aarch64/reloc-tprel_lo12-ldst8-ilp32.d | 11 +
gas/testsuite/gas/aarch64/reloc-tprel_lo12-ldst8.d | 10 +
gas/testsuite/gas/aarch64/reloc-tprel_lo12-ldst8.s | 6 +
.../gas/aarch64/reloc-tprel_lo12_nc-ldst16-ilp32.d | 11 +
.../gas/aarch64/reloc-tprel_lo12_nc-ldst16.d | 10 +
.../gas/aarch64/reloc-tprel_lo12_nc-ldst16.s | 5 +
.../gas/aarch64/reloc-tprel_lo12_nc-ldst32-ilp32.d | 11 +
.../gas/aarch64/reloc-tprel_lo12_nc-ldst32.d | 10 +
.../gas/aarch64/reloc-tprel_lo12_nc-ldst32.s | 6 +
.../gas/aarch64/reloc-tprel_lo12_nc-ldst64-ilp32.d | 11 +
.../gas/aarch64/reloc-tprel_lo12_nc-ldst64.d | 10 +
.../gas/aarch64/reloc-tprel_lo12_nc-ldst64.s | 6 +
.../gas/aarch64/reloc-tprel_lo12_nc-ldst8-ilp32.d | 11 +
.../gas/aarch64/reloc-tprel_lo12_nc-ldst8.d | 10 +
.../gas/aarch64/reloc-tprel_lo12_nc-ldst8.s | 6 +
gas/testsuite/gas/aarch64/rm-simd-ext.d | 2 +-
gas/testsuite/gas/aarch64/rm-simd-ext.s | 2 +-
gas/testsuite/gas/aarch64/sb.s | 6 +
gas/testsuite/gas/aarch64/sb1.d | 11 +
gas/testsuite/gas/aarch64/sb2.d | 11 +
gas/testsuite/gas/aarch64/shifted.s | 2 +-
gas/testsuite/gas/aarch64/ssbs-illegal1.d | 3 +
gas/testsuite/gas/aarch64/ssbs-illegal1.l | 15 +
gas/testsuite/gas/aarch64/ssbs-illegal2.d | 3 +
gas/testsuite/gas/aarch64/ssbs-illegal2.l | 6 +
gas/testsuite/gas/aarch64/ssbs.s | 31 +
gas/testsuite/gas/aarch64/ssbs1.d | 73 +
gas/testsuite/gas/aarch64/ssbs2.d | 73 +
gas/testsuite/gas/aarch64/sve-invalid.d | 2 +-
gas/testsuite/gas/aarch64/sve-invalid.l | 14 +-
gas/testsuite/gas/aarch64/sve-invalid.s | 10 +-
gas/testsuite/gas/aarch64/sve-movprfx.d | 130 +
gas/testsuite/gas/aarch64/sve-movprfx.s | 122 +
gas/testsuite/gas/aarch64/sve-movprfx_1.d | 13 +
gas/testsuite/gas/aarch64/sve-movprfx_1.s | 9 +
gas/testsuite/gas/aarch64/sve-movprfx_10.d | 14 +
gas/testsuite/gas/aarch64/sve-movprfx_10.l | 2 +
gas/testsuite/gas/aarch64/sve-movprfx_10.s | 10 +
gas/testsuite/gas/aarch64/sve-movprfx_11.d | 13 +
gas/testsuite/gas/aarch64/sve-movprfx_11.s | 10 +
gas/testsuite/gas/aarch64/sve-movprfx_12.d | 13 +
gas/testsuite/gas/aarch64/sve-movprfx_12.s | 9 +
gas/testsuite/gas/aarch64/sve-movprfx_13.d | 17 +
gas/testsuite/gas/aarch64/sve-movprfx_13.l | 2 +
gas/testsuite/gas/aarch64/sve-movprfx_13.s | 11 +
gas/testsuite/gas/aarch64/sve-movprfx_14.d | 15 +
gas/testsuite/gas/aarch64/sve-movprfx_14.l | 2 +
gas/testsuite/gas/aarch64/sve-movprfx_14.s | 10 +
gas/testsuite/gas/aarch64/sve-movprfx_15.d | 14 +
gas/testsuite/gas/aarch64/sve-movprfx_15.l | 2 +
gas/testsuite/gas/aarch64/sve-movprfx_15.s | 10 +
gas/testsuite/gas/aarch64/sve-movprfx_16.d | 13 +
gas/testsuite/gas/aarch64/sve-movprfx_16.s | 10 +
gas/testsuite/gas/aarch64/sve-movprfx_17.d | 14 +
gas/testsuite/gas/aarch64/sve-movprfx_17.l | 2 +
gas/testsuite/gas/aarch64/sve-movprfx_17.s | 10 +
gas/testsuite/gas/aarch64/sve-movprfx_18.d | 14 +
gas/testsuite/gas/aarch64/sve-movprfx_18.l | 2 +
gas/testsuite/gas/aarch64/sve-movprfx_18.s | 10 +
gas/testsuite/gas/aarch64/sve-movprfx_19.d | 13 +
gas/testsuite/gas/aarch64/sve-movprfx_19.s | 10 +
gas/testsuite/gas/aarch64/sve-movprfx_2.d | 14 +
gas/testsuite/gas/aarch64/sve-movprfx_2.l | 2 +
gas/testsuite/gas/aarch64/sve-movprfx_2.s | 10 +
gas/testsuite/gas/aarch64/sve-movprfx_20.d | 14 +
gas/testsuite/gas/aarch64/sve-movprfx_20.l | 2 +
gas/testsuite/gas/aarch64/sve-movprfx_20.s | 11 +
gas/testsuite/gas/aarch64/sve-movprfx_21.d | 13 +
gas/testsuite/gas/aarch64/sve-movprfx_21.s | 10 +
gas/testsuite/gas/aarch64/sve-movprfx_22.d | 14 +
gas/testsuite/gas/aarch64/sve-movprfx_22.l | 2 +
gas/testsuite/gas/aarch64/sve-movprfx_22.s | 10 +
gas/testsuite/gas/aarch64/sve-movprfx_23.d | 51 +
gas/testsuite/gas/aarch64/sve-movprfx_23.l | 21 +
gas/testsuite/gas/aarch64/sve-movprfx_23.s | 34 +
gas/testsuite/gas/aarch64/sve-movprfx_24.d | 25 +
gas/testsuite/gas/aarch64/sve-movprfx_24.l | 4 +
gas/testsuite/gas/aarch64/sve-movprfx_24.s | 36 +
gas/testsuite/gas/aarch64/sve-movprfx_25.d | 29 +
gas/testsuite/gas/aarch64/sve-movprfx_25.l | 5 +
gas/testsuite/gas/aarch64/sve-movprfx_25.s | 45 +
gas/testsuite/gas/aarch64/sve-movprfx_26.d | 23 +
gas/testsuite/gas/aarch64/sve-movprfx_26.l | 4 +
gas/testsuite/gas/aarch64/sve-movprfx_26.s | 31 +
gas/testsuite/gas/aarch64/sve-movprfx_3.d | 14 +
gas/testsuite/gas/aarch64/sve-movprfx_3.l | 2 +
gas/testsuite/gas/aarch64/sve-movprfx_3.s | 10 +
gas/testsuite/gas/aarch64/sve-movprfx_4.d | 12 +
gas/testsuite/gas/aarch64/sve-movprfx_4.l | 2 +
gas/testsuite/gas/aarch64/sve-movprfx_4.s | 8 +
gas/testsuite/gas/aarch64/sve-movprfx_5.d | 15 +
gas/testsuite/gas/aarch64/sve-movprfx_5.s | 11 +
gas/testsuite/gas/aarch64/sve-movprfx_6.d | 15 +
gas/testsuite/gas/aarch64/sve-movprfx_6.l | 3 +
gas/testsuite/gas/aarch64/sve-movprfx_6.s | 12 +
gas/testsuite/gas/aarch64/sve-movprfx_7.d | 17 +
gas/testsuite/gas/aarch64/sve-movprfx_7.l | 2 +
gas/testsuite/gas/aarch64/sve-movprfx_7.s | 10 +
gas/testsuite/gas/aarch64/sve-movprfx_8.d | 18 +
gas/testsuite/gas/aarch64/sve-movprfx_8.l | 2 +
gas/testsuite/gas/aarch64/sve-movprfx_8.s | 10 +
gas/testsuite/gas/aarch64/sve-movprfx_9.d | 15 +
gas/testsuite/gas/aarch64/sve-movprfx_9.l | 2 +
gas/testsuite/gas/aarch64/sve-movprfx_9.s | 11 +
gas/testsuite/gas/aarch64/sve-reg-diagnostic.d | 2 +-
gas/testsuite/gas/aarch64/sve-sysreg-invalid.d | 2 +-
gas/testsuite/gas/aarch64/sve.d |89221 ++++++++-------
gas/testsuite/gas/aarch64/sve.s | 145 +-
gas/testsuite/gas/aarch64/sysreg-1.s | 2 +-
gas/testsuite/gas/aarch64/sysreg-2.d | 2 -
gas/testsuite/gas/aarch64/sysreg-2.s | 2 +-
gas/testsuite/gas/aarch64/sysreg-4.d | 21 +
gas/testsuite/gas/aarch64/sysreg-4.s | 14 +
gas/testsuite/gas/aarch64/sysreg-diagnostic.d | 14 +
gas/testsuite/gas/aarch64/sysreg-diagnostic.l | 4 +
gas/testsuite/gas/aarch64/sysreg-diagnostic.s | 6 +
gas/testsuite/gas/aarch64/system.d | 728 +-
gas/testsuite/gas/aarch64/system.s | 2 +
gas/testsuite/gas/aarch64/tls.s | 2 +-
gas/testsuite/gas/aarch64/uao.s | 2 +-
gas/testsuite/gas/aarch64/verbose-error.d | 2 +-
gas/testsuite/gas/aarch64/virthostext.s | 2 +-
gas/testsuite/gas/all/align.d | 4 +-
gas/testsuite/gas/all/byte.d | 2 +-
gas/testsuite/gas/all/eqv-dot.d | 12 +
gas/testsuite/gas/all/eqv-dot.s | 8 +
gas/testsuite/gas/all/err-fakelabel.s | 3 +
gas/testsuite/gas/all/fill-1.d | 8 +
gas/testsuite/gas/all/fill-1.s | 7 +
gas/testsuite/gas/all/forward.d | 2 +
gas/testsuite/gas/all/gas.exp | 55 +-
gas/testsuite/gas/all/incbin.d | 2 +-
gas/testsuite/gas/all/itbl-test.c | 2 +-
gas/testsuite/gas/all/org-1.d | 2 +-
gas/testsuite/gas/all/org-2.d | 2 +-
gas/testsuite/gas/all/org-3.d | 2 +-
gas/testsuite/gas/all/redef2.d | 2 +-
gas/testsuite/gas/all/redef3.d | 2 +-
gas/testsuite/gas/all/relax.d | 4 +
gas/testsuite/gas/all/simple-forward.d | 14 +
gas/testsuite/gas/all/simple-forward.s | 11 +
gas/testsuite/gas/all/sleb128-2.d | 4 +
gas/testsuite/gas/all/sleb128-4.d | 4 +
gas/testsuite/gas/all/sleb128-5.d | 4 +
gas/testsuite/gas/all/sleb128-7.d | 4 +
gas/testsuite/gas/all/sleb128-9.d | 5 +
gas/testsuite/gas/all/sleb128-9.l | 3 +
gas/testsuite/gas/all/sleb128-9.s | 3 +
gas/testsuite/gas/all/test-example.c | 2 +-
gas/testsuite/gas/all/test-gen.c | 2 +-
gas/testsuite/gas/all/weakref1.d | 2 +-
gas/testsuite/gas/all/weakref1g.d | 4 +-
gas/testsuite/gas/all/weakref1l.d | 4 +-
gas/testsuite/gas/all/weakref1u.d | 4 +-
gas/testsuite/gas/all/weakref1w.d | 4 +-
gas/testsuite/gas/alpha/alpha.exp | 2 +-
gas/testsuite/gas/arc/add_s-err.s | 2 +-
gas/testsuite/gas/arc/arc.exp | 2 +-
gas/testsuite/gas/arc/asm-errors-2.d | 2 +-
gas/testsuite/gas/arc/asm-errors-3.d | 2 +
gas/testsuite/gas/arc/asm-errors-3.err | 7 +
gas/testsuite/gas/arc/asm-errors-3.s | 14 +
gas/testsuite/gas/arc/asm-errors.d | 2 +-
gas/testsuite/gas/arc/attr-arc600.d | 11 +
gas/testsuite/gas/arc/attr-arc600_mul32x16.d | 11 +
gas/testsuite/gas/arc/attr-arc600_norm.d | 11 +
gas/testsuite/gas/arc/attr-arc601.d | 11 +
gas/testsuite/gas/arc/attr-arc601_mul32x16.d | 11 +
gas/testsuite/gas/arc/attr-arc601_mul64.d | 11 +
gas/testsuite/gas/arc/attr-arc601_norm.d | 11 +
gas/testsuite/gas/arc/attr-arc700.d | 11 +
gas/testsuite/gas/arc/attr-arcem.d | 11 +
gas/testsuite/gas/arc/attr-archs.d | 12 +
gas/testsuite/gas/arc/attr-autodetect-1.d | 12 +
gas/testsuite/gas/arc/attr-autodetect-1.s | 4 +
gas/testsuite/gas/arc/attr-cpu-a601.d | 9 +
gas/testsuite/gas/arc/attr-cpu-a601.s | 1 +
gas/testsuite/gas/arc/attr-cpu-a700.d | 9 +
gas/testsuite/gas/arc/attr-cpu-a700.s | 1 +
gas/testsuite/gas/arc/attr-cpu-em.d | 9 +
gas/testsuite/gas/arc/attr-cpu-em.s | 1 +
gas/testsuite/gas/arc/attr-cpu-hs.d | 10 +
gas/testsuite/gas/arc/attr-cpu-hs.s | 1 +
gas/testsuite/gas/arc/attr-em.d | 11 +
gas/testsuite/gas/arc/attr-em4.d | 12 +
gas/testsuite/gas/arc/attr-em4_dmips.d | 12 +
gas/testsuite/gas/arc/attr-em4_fpuda.d | 12 +
gas/testsuite/gas/arc/attr-em4_fpus.d | 12 +
gas/testsuite/gas/arc/attr-hs.d | 12 +
gas/testsuite/gas/arc/attr-hs34.d | 12 +
gas/testsuite/gas/arc/attr-hs38.d | 12 +
gas/testsuite/gas/arc/attr-hs38_linux.d | 12 +
gas/testsuite/gas/arc/attr-mul64.d | 11 +
gas/testsuite/gas/arc/attr-name.d | 23 +
gas/testsuite/gas/arc/attr-name.s | 17 +
gas/testsuite/gas/arc/attr-nps400.d | 12 +
gas/testsuite/gas/arc/attr-override-mcpu.d | 11 +
gas/testsuite/gas/arc/attr-override-mcpu.s | 1 +
gas/testsuite/gas/arc/attr-quarkse_em.d | 12 +
gas/testsuite/gas/arc/attr-rf16.d | 10 +
gas/testsuite/gas/arc/attr-rf16.err | 2 +
gas/testsuite/gas/arc/attr-rf16.s | 4 +
gas/testsuite/gas/arc/b.d | 76 +-
gas/testsuite/gas/arc/bl.d | 66 +-
gas/testsuite/gas/arc/blank.s | 1 +
gas/testsuite/gas/arc/cpu-pseudop-1.d | 2 +-
gas/testsuite/gas/arc/cpu-pseudop-2.d | 2 +-
gas/testsuite/gas/arc/hregs-err.s | 11 +
gas/testsuite/gas/arc/jli-1.d | 26 +
gas/testsuite/gas/arc/jli-1.s | 11 +
gas/testsuite/gas/arc/ld2.d | 2 +-
gas/testsuite/gas/arc/leave_enter.d | 41 +-
gas/testsuite/gas/arc/leave_enter.s | 11 +
gas/testsuite/gas/arc/lp.d | 56 +-
gas/testsuite/gas/arc/noargs_hs.d | 2 +-
gas/testsuite/gas/arc/nps400-0.d | 2 +-
gas/testsuite/gas/arc/nps400-12.d | 6 +-
gas/testsuite/gas/arc/pcl-print.d | 8 +
gas/testsuite/gas/arc/pcl-print.s | 5 +
gas/testsuite/gas/arc/pcl-relocs.d | 6 +-
gas/testsuite/gas/arc/pcrel-relocs.d | 10 +-
gas/testsuite/gas/arc/pic-relocs.d | 4 +-
gas/testsuite/gas/arc/plt-relocs.d | 10 +-
gas/testsuite/gas/arc/pseudos.d | 56 +-
gas/testsuite/gas/arc/relax-add01.d | 2 +-
gas/testsuite/gas/arc/relax-add04.d | 2 +-
gas/testsuite/gas/arc/relax-avoid2.d | 2 +-
gas/testsuite/gas/arc/relax-avoid3.d | 2 +-
gas/testsuite/gas/arc/relax-b.d | 4 +-
gas/testsuite/gas/arc/relax-ld01.d | 2 +-
gas/testsuite/gas/arc/relax-sub01.d | 2 +-
gas/testsuite/gas/arc/relax-sub02.d | 2 +-
gas/testsuite/gas/arc/relax-sub04.d | 2 +-
gas/testsuite/gas/arc/relocs-errors.d | 2 +-
gas/testsuite/gas/arc/st.d | 2 +-
gas/testsuite/gas/arc/taux.d | 9 -
gas/testsuite/gas/arc/taux.s | 157 -
gas/testsuite/gas/arc/textinsn-errors.d | 2 +-
gas/testsuite/gas/arc/textinsn_case.d | 9 +
gas/testsuite/gas/arc/textinsn_case.s | 6 +
gas/testsuite/gas/arc/tls-relocs.d | 6 +-
gas/testsuite/gas/arc/warn.exp | 2 +-
gas/testsuite/gas/arm/abs12.d | 2 +-
.../gas/arm/adds-thumb1-reloc-local-armv7-m.d | 2 +-
gas/testsuite/gas/arm/adds-thumb1-reloc-local.d | 2 +-
gas/testsuite/gas/arm/addsw-bad.d | 4 +-
gas/testsuite/gas/arm/addthumb2err.d | 2 +-
gas/testsuite/gas/arm/adr-invalid.d | 2 +-
gas/testsuite/gas/arm/adr.d | 1 +
gas/testsuite/gas/arm/adrl.d | 1 +
gas/testsuite/gas/arm/align.d | 2 +-
gas/testsuite/gas/arm/align64.d | 2 +-
gas/testsuite/gas/arm/arch4t.d | 2 +-
gas/testsuite/gas/arm/arch7.d | 1 -
gas/testsuite/gas/arm/arch7a-mp.d | 1 -
gas/testsuite/gas/arm/arch7em-bad-1.d | 2 +-
gas/testsuite/gas/arm/arch7em-bad-2.d | 2 +-
gas/testsuite/gas/arm/arch7em-bad-3.d | 2 +-
gas/testsuite/gas/arm/arch7em.d | 1 -
gas/testsuite/gas/arm/arch7m-bad.d | 2 +-
gas/testsuite/gas/arm/archv6s-m-bad.d | 2 +-
gas/testsuite/gas/arm/archv6t2-bad.d | 2 +-
gas/testsuite/gas/arm/archv8m-cmse-main.s | 13 +-
gas/testsuite/gas/arm/archv8m-main-dsp-5.d | 1 -
gas/testsuite/gas/arm/arm-idiv-bad.d | 2 +-
gas/testsuite/gas/arm/arm-it-auto-2.d | 2 +-
gas/testsuite/gas/arm/arm-it-auto-3.d | 2 +-
gas/testsuite/gas/arm/arm-it-auto.d | 2 +-
gas/testsuite/gas/arm/arm-it-bad-2.d | 4 +-
gas/testsuite/gas/arm/arm-it-bad-3.d | 2 +-
gas/testsuite/gas/arm/arm-it-bad.d | 2 +-
gas/testsuite/gas/arm/arm-it.d | 2 +-
gas/testsuite/gas/arm/arm.exp | 2 +-
gas/testsuite/gas/arm/arm3-bad.d | 2 +-
gas/testsuite/gas/arm/arm7-bad.d | 2 +-
gas/testsuite/gas/arm/armv1-bad.d | 2 +-
gas/testsuite/gas/arm/armv1.d | 38 +-
gas/testsuite/gas/arm/armv2-mp-bad.d | 2 +-
gas/testsuite/gas/arm/armv7e-m+fpv5-d16.d | 2 +-
gas/testsuite/gas/arm/armv7e-m+fpv5-sp-d16.d | 2 +-
gas/testsuite/gas/arm/armv8-2-fp16-scalar-bad.d | 2 +-
gas/testsuite/gas/arm/armv8-2-fp16-scalar-bad.l | 446 +-
gas/testsuite/gas/arm/armv8-2-fp16-scalar-bad.s | 24 +
gas/testsuite/gas/arm/armv8-2-fp16-scalar-thumb.d | 2 +-
gas/testsuite/gas/arm/armv8-2-fp16-scalar.d | 2 +-
gas/testsuite/gas/arm/armv8-2-fp16-simd-thumb.d | 2 +-
.../gas/arm/armv8-2-fp16-simd-warning-thumb.d | 2 +-
gas/testsuite/gas/arm/armv8-2-fp16-simd-warning.d | 2 +-
gas/testsuite/gas/arm/armv8-2-fp16-simd.d | 2 +-
gas/testsuite/gas/arm/armv8-a+crypto.d | 2 +-
gas/testsuite/gas/arm/armv8-a+fp.d | 8 +-
gas/testsuite/gas/arm/armv8-a+fp.s | 116 -
gas/testsuite/gas/arm/armv8-a+ras.d | 2 +-
gas/testsuite/gas/arm/armv8-a+rdma-warning.d | 5 +-
gas/testsuite/gas/arm/armv8-a+rdma.d | 2 +-
gas/testsuite/gas/arm/armv8-a+simd.d | 4 +-
gas/testsuite/gas/arm/armv8-a+simd.s | 79 -
gas/testsuite/gas/arm/armv8-a-bad.d | 4 +-
gas/testsuite/gas/arm/armv8-a-bad.l | 96 -
gas/testsuite/gas/arm/armv8-a-bad.s | 127 -
gas/testsuite/gas/arm/armv8-a-barrier-arm.d | 2 +-
gas/testsuite/gas/arm/armv8-a-barrier-thumb.d | 4 +-
gas/testsuite/gas/arm/armv8-a-it-bad.d | 5 +-
gas/testsuite/gas/arm/armv8-a-it-bad.l | 18 -
gas/testsuite/gas/arm/armv8-a-it-bad.s | 72 -
gas/testsuite/gas/arm/armv8-a.d | 2 +
gas/testsuite/gas/arm/armv8-ar+fp.s | 120 +
gas/testsuite/gas/arm/armv8-ar+simd.s | 78 +
gas/testsuite/gas/arm/armv8-ar-bad.l | 96 +
gas/testsuite/gas/arm/armv8-ar-bad.s | 126 +
.../arm/{armv8-a-barrier.s => armv8-ar-barrier.s} | 0
gas/testsuite/gas/arm/armv8-ar-it-bad.l | 18 +
gas/testsuite/gas/arm/armv8-ar-it-bad.s | 71 +
gas/testsuite/gas/arm/{armv8-a.s => armv8-ar.s} | 0
gas/testsuite/gas/arm/armv8-r+fp.d | 121 +
gas/testsuite/gas/arm/armv8-r+simd.d | 81 +
gas/testsuite/gas/arm/armv8-r-bad.d | 4 +
gas/testsuite/gas/arm/armv8-r-barrier-arm.d | 24 +
gas/testsuite/gas/arm/armv8-r-barrier-thumb.d | 25 +
gas/testsuite/gas/arm/armv8-r-it-bad.d | 4 +
gas/testsuite/gas/arm/armv8-r.d | 104 +
gas/testsuite/gas/arm/armv8_1-a+simd.d | 2 +-
gas/testsuite/gas/arm/armv8_2+rdma.d | 2 +-
gas/testsuite/gas/arm/armv8_2-a-fp16-illegal.d | 2 +
gas/testsuite/gas/arm/armv8_2-a-fp16-illegal.l | 5 +
gas/testsuite/gas/arm/armv8_2-a-fp16-illegal.s | 8 +
gas/testsuite/gas/arm/armv8_2-a-fp16-thumb2.d | 249 +
gas/testsuite/gas/arm/armv8_2-a-fp16.d | 249 +
gas/testsuite/gas/arm/armv8_2-a-fp16.s | 46 +
gas/testsuite/gas/arm/armv8_2-a.d | 2 +-
gas/testsuite/gas/arm/armv8_3-a-fp-bad.d | 2 +-
gas/testsuite/gas/arm/armv8_3-a-fp.d | 2 +-
gas/testsuite/gas/arm/armv8_3-a-fp16.d | 249 +
gas/testsuite/gas/arm/armv8_3-a-simd-bad.d | 2 +-
gas/testsuite/gas/arm/armv8_3-a-simd.d | 2 +-
gas/testsuite/gas/arm/armv8_4-a-fp16.d | 249 +
gas/testsuite/gas/arm/armv8a-automatic-hlt.d | 2 +-
gas/testsuite/gas/arm/armv8a-automatic-lda.d | 2 +-
gas/testsuite/gas/arm/attr-march-armv1.d | 1 -
gas/testsuite/gas/arm/attr-march-armv2.d | 1 -
gas/testsuite/gas/arm/attr-march-armv2a.d | 1 -
gas/testsuite/gas/arm/attr-march-armv2s.d | 1 -
gas/testsuite/gas/arm/attr-march-armv3.d | 1 -
gas/testsuite/gas/arm/attr-march-armv3m.d | 1 -
gas/testsuite/gas/arm/attr-march-armv8-r+crypto.d | 18 +
gas/testsuite/gas/arm/attr-march-armv8-r+fp.d | 17 +
gas/testsuite/gas/arm/attr-march-armv8-r+simd.d | 18 +
gas/testsuite/gas/arm/attr-march-armv8-r.d | 16 +
gas/testsuite/gas/arm/attr-march-armv8_4-a.d | 17 +
gas/testsuite/gas/arm/attr-march-armv8_5-a.d | 17 +
gas/testsuite/gas/arm/attr-syntax.d | 2 +-
gas/testsuite/gas/arm/automatic-bw.d | 2 +-
gas/testsuite/gas/arm/automatic-cbz.d | 2 +-
gas/testsuite/gas/arm/automatic-clrex.d | 2 +-
gas/testsuite/gas/arm/automatic-lda.d | 2 +-
gas/testsuite/gas/arm/automatic-ldaex.d | 2 +-
gas/testsuite/gas/arm/automatic-ldaexb.d | 2 +-
gas/testsuite/gas/arm/automatic-ldrex.d | 2 +-
gas/testsuite/gas/arm/automatic-ldrexd.d | 2 +-
gas/testsuite/gas/arm/automatic-movw.d | 2 +-
gas/testsuite/gas/arm/automatic-sdiv.d | 2 +-
gas/testsuite/gas/arm/automatic-strexb.d | 2 +-
gas/testsuite/gas/arm/barrier-bad-thumb.d | 4 +-
gas/testsuite/gas/arm/barrier-bad.d | 4 +-
gas/testsuite/gas/arm/barrier-thumb.d | 4 +-
gas/testsuite/gas/arm/barrier.d | 4 +-
gas/testsuite/gas/arm/bignum1.d | 2 -
gas/testsuite/gas/arm/bl-local-v4t.d | 2 +-
gas/testsuite/gas/arm/blx-bad.d | 2 +-
gas/testsuite/gas/arm/blx-bl-convert.d | 4 +-
gas/testsuite/gas/arm/blx-local.d | 2 +-
gas/testsuite/gas/arm/blx-local.s | 2 +-
gas/testsuite/gas/arm/branch-reloc.d | 2 +-
gas/testsuite/gas/arm/copro-arm_v2plus-arm_v1.d | 5 +
gas/testsuite/gas/arm/copro-arm_v2plus-arm_v2.d | 35 +
.../arm/copro-arm_v2plus-thumb_v6t2plus-unavail.l | 24 +
.../gas/arm/copro-arm_v2plus-thumb_v6t2plus.s | 41 +
gas/testsuite/gas/arm/copro-arm_v5plus-arm_v4.d | 5 +
gas/testsuite/gas/arm/copro-arm_v5plus-arm_v5.d | 23 +
.../arm/copro-arm_v5plus-thumb_v6t2plus-unavail.l | 14 +
.../gas/arm/copro-arm_v5plus-thumb_v6t2plus.s | 24 +
gas/testsuite/gas/arm/copro-arm_v5teplus-arm_v5.d | 5 +
.../gas/arm/copro-arm_v5teplus-arm_v5te.d | 14 +
.../copro-arm_v5teplus-thumb_v6t2plus-unavail.l | 5 +
.../gas/arm/copro-arm_v5teplus-thumb_v6t2plus.s | 7 +
gas/testsuite/gas/arm/copro-arm_v6plus-arm_v5te.d | 5 +
gas/testsuite/gas/arm/copro-arm_v6plus-arm_v6.d | 14 +
.../arm/copro-arm_v6plus-thumb_v6t2plus-unavail.l | 5 +
.../gas/arm/copro-arm_v6plus-thumb_v6t2plus.s | 7 +
.../gas/arm/copro-thumb_v6t2plus-thumb_v4t-1.d | 5 +
.../gas/arm/copro-thumb_v6t2plus-thumb_v4t-2.d | 5 +
.../gas/arm/copro-thumb_v6t2plus-thumb_v4t-3.d | 5 +
.../gas/arm/copro-thumb_v6t2plus-thumb_v4t-4.d | 5 +
.../gas/arm/copro-thumb_v6t2plus-thumb_v6t2-1.d | 43 +
.../gas/arm/copro-thumb_v6t2plus-thumb_v6t2-2.d | 23 +
.../gas/arm/copro-thumb_v6t2plus-thumb_v6t2-3.d | 14 +
.../gas/arm/copro-thumb_v6t2plus-thumb_v6t2-4.d | 14 +
gas/testsuite/gas/arm/copro.d | 42 -
gas/testsuite/gas/arm/copro.s | 50 -
gas/testsuite/gas/arm/crc32-armv8-a-bad.d | 23 +
gas/testsuite/gas/arm/crc32-armv8-a.d | 34 +
gas/testsuite/gas/arm/crc32-armv8-ar-bad.s | 17 +
gas/testsuite/gas/arm/crc32-armv8-ar.s | 33 +
gas/testsuite/gas/arm/crc32-armv8-r-bad.d | 23 +
gas/testsuite/gas/arm/crc32-armv8-r.d | 34 +
gas/testsuite/gas/arm/crc32-bad.d | 22 -
gas/testsuite/gas/arm/crc32-bad.l | 6 +-
gas/testsuite/gas/arm/crc32-bad.s | 17 -
gas/testsuite/gas/arm/crc32.d | 22 -
gas/testsuite/gas/arm/crc32.s | 17 -
gas/testsuite/gas/arm/csdb.d | 13 +
gas/testsuite/gas/arm/csdb.s | 10 +
gas/testsuite/gas/arm/depr-swp.d | 2 +-
gas/testsuite/gas/arm/dest-unpredictable.d | 2 +-
gas/testsuite/gas/arm/dis-data.d | 2 +-
gas/testsuite/gas/arm/dis-data2.d | 2 +-
gas/testsuite/gas/arm/dis-data3.d | 2 +-
gas/testsuite/gas/arm/dotprod-illegal.d | 2 +
gas/testsuite/gas/arm/dotprod-illegal.l | 10 +
gas/testsuite/gas/arm/dotprod-illegal.s | 16 +
gas/testsuite/gas/arm/dotprod-legacy-arch.d | 3 +
gas/testsuite/gas/arm/dotprod-legacy-arch.l | 3 +
gas/testsuite/gas/arm/dotprod-mandatory.d | 297 +
gas/testsuite/gas/arm/dotprod-thumb2.d | 297 +
gas/testsuite/gas/arm/dotprod.d | 297 +
gas/testsuite/gas/arm/dotprod.s | 44 +
gas/testsuite/gas/arm/eabi_attr_1.d | 2 +-
gas/testsuite/gas/arm/forbid-armv7-idiv-ext.d | 4 +
gas/testsuite/gas/arm/forbid-armv7-idiv-ext.l | 3 +
gas/testsuite/gas/arm/fp-save.d | 2 +-
gas/testsuite/gas/arm/got_prel.d | 2 +-
.../gas/arm/group-reloc-alu-encoding-bad.d | 4 +-
.../gas/arm/group-reloc-alu-parsing-bad.d | 4 +-
gas/testsuite/gas/arm/group-reloc-alu.d | 2 +-
.../gas/arm/group-reloc-ldc-encoding-bad.d | 4 +-
.../gas/arm/group-reloc-ldc-parsing-bad.d | 4 +-
gas/testsuite/gas/arm/group-reloc-ldc.d | 2 +-
.../gas/arm/group-reloc-ldr-encoding-bad.d | 4 +-
.../gas/arm/group-reloc-ldr-parsing-bad.d | 4 +-
gas/testsuite/gas/arm/group-reloc-ldr.d | 2 +-
.../gas/arm/group-reloc-ldrs-encoding-bad.d | 4 +-
.../gas/arm/group-reloc-ldrs-parsing-bad.d | 4 +-
gas/testsuite/gas/arm/group-reloc-ldrs.d | 2 +-
gas/testsuite/gas/arm/insn-error-a.d | 4 +-
gas/testsuite/gas/arm/insn-error-t.d | 4 +-
gas/testsuite/gas/arm/inst-po-2.d | 4 +-
gas/testsuite/gas/arm/inst-po-3.d | 2 +-
gas/testsuite/gas/arm/inst-po-be.d | 2 +-
gas/testsuite/gas/arm/inst-po.d | 2 +-
gas/testsuite/gas/arm/iwmmxt-bad.d | 2 +-
gas/testsuite/gas/arm/iwmmxt-bad2.d | 2 +-
gas/testsuite/gas/arm/ld-sp-warn-cortex-m3.d | 2 +-
gas/testsuite/gas/arm/ld-sp-warn-cortex-m4.d | 2 +-
gas/testsuite/gas/arm/ld-sp-warn-v7.d | 2 +-
gas/testsuite/gas/arm/ld-sp-warn-v7a.d | 2 +-
gas/testsuite/gas/arm/ld-sp-warn-v7em.d | 2 +-
gas/testsuite/gas/arm/ld-sp-warn-v7m.d | 2 +-
gas/testsuite/gas/arm/ld-sp-warn-v7r.d | 2 +-
gas/testsuite/gas/arm/ld-sp-warn.d | 2 +-
gas/testsuite/gas/arm/ld-sp-warn.l | 1 -
gas/testsuite/gas/arm/ldconst.d | 2 +-
gas/testsuite/gas/arm/ldgesb-bad.d | 4 +-
gas/testsuite/gas/arm/ldgesh-bad.d | 4 +-
gas/testsuite/gas/arm/ldr-bad.d | 2 +-
gas/testsuite/gas/arm/ldr-bad.l | 4 +-
gas/testsuite/gas/arm/ldr-t-bad.d | 2 +-
gas/testsuite/gas/arm/ldr-t-bad.l | 4 +-
gas/testsuite/gas/arm/ldrd-unpredictable.d | 2 +-
gas/testsuite/gas/arm/ldsgeb.d | 2 +-
gas/testsuite/gas/arm/ldsgeh.d | 2 +-
gas/testsuite/gas/arm/ldst-offset0.d | 2 +-
gas/testsuite/gas/arm/local_function.d | 2 +-
gas/testsuite/gas/arm/local_label_coff.d | 2 +-
gas/testsuite/gas/arm/local_label_elf.d | 2 +-
gas/testsuite/gas/arm/local_label_wince.d | 2 +-
gas/testsuite/gas/arm/mapping.d | 2 +-
gas/testsuite/gas/arm/mapping2.d | 2 +-
gas/testsuite/gas/arm/mapping3.d | 2 +-
gas/testsuite/gas/arm/mapping4.d | 2 +-
gas/testsuite/gas/arm/mapshort-elf.d | 2 +-
gas/testsuite/gas/arm/mask_1-armv8-a.d | 29 +
.../gas/arm/{mask_1.s => mask_1-armv8-ar.s} | 0
gas/testsuite/gas/arm/mask_1-armv8-r.d | 29 +
gas/testsuite/gas/arm/mask_1.d | 28 -
gas/testsuite/gas/arm/maverick.c | 2 +-
gas/testsuite/gas/arm/missing.d | 2 +-
.../gas/arm/movs-thumb1-reloc-local-armv7-m.d | 2 +-
gas/testsuite/gas/arm/movs-thumb1-reloc-local.d | 2 +-
gas/testsuite/gas/arm/movw-local.d | 2 +-
gas/testsuite/gas/arm/mrs-msr-arm-v7-a-bad.d | 2 +-
gas/testsuite/gas/arm/mrs-msr-thumb-v6t2.d | 2 +-
gas/testsuite/gas/arm/mrs-msr-thumb-v7-m-bad.d | 2 +-
gas/testsuite/gas/arm/mrs-msr-thumb-v7-m.d | 2 +-
gas/testsuite/gas/arm/mrs-msr-thumb-v7e-m.d | 2 +-
gas/testsuite/gas/arm/msr-imm-bad.d | 4 +-
gas/testsuite/gas/arm/msr-reg-bad.d | 4 +-
gas/testsuite/gas/arm/msr-reg-thumb.d | 2 +-
gas/testsuite/gas/arm/mul-overlap.d | 2 +-
gas/testsuite/gas/arm/neon-addressing-bad.d | 2 +-
gas/testsuite/gas/arm/neon-cond-bad-inc.s | 4 +
gas/testsuite/gas/arm/neon-cond-bad.d | 2 +-
gas/testsuite/gas/arm/neon-cond-bad.l | 30 +-
gas/testsuite/gas/arm/neon-cond-bad_t2.d | 5 +
gas/testsuite/gas/arm/neon-ldst-align-bad.d | 2 +-
gas/testsuite/gas/arm/neon-ldst-es-bad.d | 2 +-
gas/testsuite/gas/arm/neon-suffix-bad.d | 2 +-
gas/testsuite/gas/arm/neon-vmov-bad.d | 2 +-
gas/testsuite/gas/arm/noarm.d | 2 +-
gas/testsuite/gas/arm/nomapping.d | 2 +-
gas/testsuite/gas/arm/nops.d | 2 +-
gas/testsuite/gas/arm/pic.d | 2 +-
gas/testsuite/gas/arm/pic_vxworks.d | 2 +-
gas/testsuite/gas/arm/pinsn.d | 2 +-
gas/testsuite/gas/arm/plt-1.d | 2 +-
gas/testsuite/gas/arm/pr18256.d | 2 +-
gas/testsuite/gas/arm/pr18347.d | 2 +-
gas/testsuite/gas/arm/pr20429.d | 2 +-
gas/testsuite/gas/arm/pr21458.d | 28 +
gas/testsuite/gas/arm/pr21458.s | 40 +
gas/testsuite/gas/arm/pr22773.d | 2 +
gas/testsuite/gas/arm/pr22773.l | 3 +
gas/testsuite/gas/arm/pr22773.s | 9 +
gas/testsuite/gas/arm/pr9722.d | 2 +-
gas/testsuite/gas/arm/predres-bad.d | 4 +
gas/testsuite/gas/arm/predres-bad.l | 4 +
gas/testsuite/gas/arm/predres.s | 6 +
gas/testsuite/gas/arm/predres1.d | 11 +
gas/testsuite/gas/arm/predres2.d | 11 +
gas/testsuite/gas/arm/r15-bad.d | 2 +-
gas/testsuite/gas/arm/reloc-bad.d | 4 +-
gas/testsuite/gas/arm/reloc-fdpic.d | 20 +
gas/testsuite/gas/arm/reloc-fdpic.s | 9 +
gas/testsuite/gas/arm/req.d | 2 +-
gas/testsuite/gas/arm/sb-bad.d | 5 +
gas/testsuite/gas/arm/sb-bad.l | 2 +
gas/testsuite/gas/arm/sb-thumb1.d | 11 +
gas/testsuite/gas/arm/sb-thumb2.d | 11 +
gas/testsuite/gas/arm/sb.s | 4 +
gas/testsuite/gas/arm/sb1.d | 11 +
gas/testsuite/gas/arm/sb2.d | 11 +
gas/testsuite/gas/arm/shift-bad-pc.d | 2 +-
gas/testsuite/gas/arm/shift-bad.d | 2 +-
gas/testsuite/gas/arm/simd_by_scalar_low_regbank.d | 2 +-
.../gas/arm/simd_by_scalar_low_regbank_thumb.d | 2 +-
.../gas/arm/sp-pc-validations-bad-t-v8a.d | 4 +
.../gas/arm/sp-pc-validations-bad-t-v8a.l | 192 +
gas/testsuite/gas/arm/sp-pc-validations-bad-t.d | 5 +-
gas/testsuite/gas/arm/sp-pc-validations-bad-t.s | 2 +-
gas/testsuite/gas/arm/sp-pc-validations-bad.d | 2 +-
.../gas/arm/sp-usage-thumb2-relax-on-v7.d | 4 +
.../gas/arm/sp-usage-thumb2-relax-on-v7.l | 17 +
.../gas/arm/sp-usage-thumb2-relax-on-v8.d | 25 +
gas/testsuite/gas/arm/sp-usage-thumb2-relax.s | 27 +
gas/testsuite/gas/arm/srs-arm.d | 2 +-
gas/testsuite/gas/arm/srs-t2.d | 2 +-
gas/testsuite/gas/arm/strex-bad-t.d | 3 +-
gas/testsuite/gas/arm/strex-t.d | 2 +-
gas/testsuite/gas/arm/t16-bad.d | 2 +-
gas/testsuite/gas/arm/t2-branch-global.d | 2 +-
gas/testsuite/gas/arm/target-reloc-1.d | 2 +-
gas/testsuite/gas/arm/thumb-b-bad.d | 4 +-
gas/testsuite/gas/arm/thumb-w-bad.d | 4 +-
gas/testsuite/gas/arm/thumb-w-good.d | 2 +-
gas/testsuite/gas/arm/thumb.d | 2 +-
gas/testsuite/gas/arm/thumb2_bad_reg.d | 2 +-
gas/testsuite/gas/arm/thumb2_it.d | 1 -
gas/testsuite/gas/arm/thumb2_it_auto.d | 1 -
gas/testsuite/gas/arm/thumb2_it_bad.d | 2 +-
gas/testsuite/gas/arm/thumb2_it_bad.l | 3 +
gas/testsuite/gas/arm/thumb2_it_bad.s | 4 +
gas/testsuite/gas/arm/thumb2_it_bad_auto.d | 2 +-
gas/testsuite/gas/arm/thumb2_it_search.d | 2 +-
gas/testsuite/gas/arm/thumb2_ldmstm.d | 2 -
gas/testsuite/gas/arm/thumb2_ldmstm_bad.d | 2 +-
gas/testsuite/gas/arm/thumb2_ldr_immediate_armv6.d | 2 +-
.../gas/arm/thumb2_ldr_immediate_armv6t2.d | 2 +-
.../arm/thumb2_ldr_immediate_highregs_armv6t2.d | 26 +-
.../arm/thumb2_ldr_immediate_highregs_armv6t2.s | 16 +-
gas/testsuite/gas/arm/thumb2_ldstd_unpredictable.d | 2 +-
gas/testsuite/gas/arm/thumb2_mul-bad.d | 2 +-
gas/testsuite/gas/arm/thumb2_pool.d | 2 +-
gas/testsuite/gas/arm/thumb2_str-bad.d | 2 +-
gas/testsuite/gas/arm/thumb2_vpool.d | 2 +-
gas/testsuite/gas/arm/thumb2_vpool_be.d | 2 +-
gas/testsuite/gas/arm/thumb32.d | 4 +-
gas/testsuite/gas/arm/thumbver.d | 2 +-
gas/testsuite/gas/arm/tls.d | 2 +-
gas/testsuite/gas/arm/tls_vxworks.d | 4 +-
gas/testsuite/gas/arm/udf-bad.d | 2 +-
gas/testsuite/gas/arm/udf.d | 45 +-
gas/testsuite/gas/arm/udf.l | 4 +-
gas/testsuite/gas/arm/undefined-insn-arm.d | 5 +
gas/testsuite/gas/arm/undefined-insn-thumb.d | 5 +
gas/testsuite/gas/arm/undefined-insn.s | 1 +
gas/testsuite/gas/arm/undefined.d | 4 +-
gas/testsuite/gas/arm/undefined_coff.d | 4 +-
gas/testsuite/gas/arm/unwind.d | 2 +-
gas/testsuite/gas/arm/unwind_vxworks.d | 2 +-
gas/testsuite/gas/arm/v4bx.d | 2 +-
gas/testsuite/gas/arm/vcmp-noprefix-imm.d | 2 +-
gas/testsuite/gas/arm/vcmp-zero-bad.d | 2 +-
gas/testsuite/gas/arm/vcvt-bad.d | 4 +-
gas/testsuite/gas/arm/vfma1.d | 2 +-
gas/testsuite/gas/arm/vfp-bad.d | 2 +-
gas/testsuite/gas/arm/vfp-bad.l | 4 +
gas/testsuite/gas/arm/vfp-bad.s | 4 +
gas/testsuite/gas/arm/vfp-bad_t2.d | 2 +-
gas/testsuite/gas/arm/vfp-mov-enc.d | 16 +
gas/testsuite/gas/arm/vfp-mov-enc.s | 10 +
gas/testsuite/gas/arm/vfpv3-d16-bad.d | 2 +-
gas/testsuite/gas/arm/vldconst.d | 2 +-
gas/testsuite/gas/arm/vldconst_be.d | 2 +-
gas/testsuite/gas/arm/vldm-arm.d | 2 +-
gas/testsuite/gas/arm/vldm-thumb-bad.d | 2 +-
gas/testsuite/gas/arm/vldmw-arm-bad.d | 2 +-
gas/testsuite/gas/arm/vldmw-thumb-bad.d | 2 +-
gas/testsuite/gas/arm/vldr.d | 2 +-
gas/testsuite/gas/arm/vstr-arm-bad.d | 2 +-
gas/testsuite/gas/arm/vstr-thumb-bad.d | 2 +-
gas/testsuite/gas/arm/weakdef-1.d | 2 +-
gas/testsuite/gas/arm/weakdef-2.d | 4 +-
gas/testsuite/gas/arm/wince.d | 2 +-
gas/testsuite/gas/arm/wince_inst.d | 2 +-
gas/testsuite/gas/avr/avr.exp | 2 +-
gas/testsuite/gas/avr/gccisr-01.d | 141 +
gas/testsuite/gas/avr/gccisr-01.s | 127 +
gas/testsuite/gas/avr/gccisr-02.d | 43 +
gas/testsuite/gas/avr/gccisr-02.s | 38 +
gas/testsuite/gas/avr/gccisr-03.d | 4 +
gas/testsuite/gas/avr/gccisr-03.s | 6 +
gas/testsuite/gas/avr/large-debug-line-table.d | 7 +-
gas/testsuite/gas/avr/pr21621.d | 4 +
gas/testsuite/gas/avr/pr21621.l | 2 +
gas/testsuite/gas/avr/pr21621.s | 15 +
gas/testsuite/gas/bfin/bfin.exp | 2 +-
gas/testsuite/gas/bfin/error.exp | 2 +-
gas/testsuite/gas/cfi/cfi-label.d | 1 +
gas/testsuite/gas/cfi/cfi-x86_64.d | 1 +
gas/testsuite/gas/cfi/cfi.exp | 8 +-
gas/testsuite/gas/cr16/cr16.exp | 2 +-
gas/testsuite/gas/cr16/pic.exp | 2 +-
gas/testsuite/gas/cris/cris.exp | 5 +-
gas/testsuite/gas/cris/range-err-1.s | 6 +-
gas/testsuite/gas/crx/allinsn.exp | 2 +-
gas/testsuite/gas/csky/801_relax.d | 14 +
gas/testsuite/gas/csky/801_relax.s | 16 +
gas/testsuite/gas/csky/802j.d | 13 +
gas/testsuite/gas/csky/802j.s | 7 +
gas/testsuite/gas/csky/all.d | 150 +
gas/testsuite/gas/csky/all.s | 132 +
gas/testsuite/gas/csky/bsr1.d | 12 +
gas/testsuite/gas/csky/bsr1.s | 6 +
gas/testsuite/gas/csky/bsr2.d | 9 +
gas/testsuite/gas/csky/bsr2.s | 3 +
gas/testsuite/gas/csky/csky.exp | 7 +
gas/testsuite/gas/csky/csky_vdsp.d | 364 +
gas/testsuite/gas/csky/csky_vdsp.s | 359 +
gas/testsuite/gas/csky/cskyv2_all.d | 325 +
gas/testsuite/gas/csky/cskyv2_all.s | 316 +
gas/testsuite/gas/csky/cskyv2_dsp.d | 18 +
gas/testsuite/gas/csky/cskyv2_dsp.s | 11 +
gas/testsuite/gas/csky/cskyv2_elrw.d | 10 +
gas/testsuite/gas/csky/cskyv2_elrw.s | 6 +
gas/testsuite/gas/csky/cskyv2_float.d | 59 +
gas/testsuite/gas/csky/cskyv2_float.s | 52 +
gas/testsuite/gas/csky/cskyv2_lrw.d | 19 +
gas/testsuite/gas/csky/cskyv2_lrw.s | 11 +
gas/testsuite/gas/csky/cskyv2_mnolrw1.d | 23 +
gas/testsuite/gas/csky/cskyv2_mnolrw1.s | 11 +
gas/testsuite/gas/csky/cskyv2_mnolrw2.d | 12 +
gas/testsuite/gas/csky/cskyv2_mnolrw2.s | 11 +
gas/testsuite/gas/csky/enhance_dsp.d | 217 +
gas/testsuite/gas/csky/enhance_dsp.s | 219 +
gas/testsuite/gas/csky/java.d | 12 +
gas/testsuite/gas/csky/java.s | 6 +
gas/testsuite/gas/csky/jbsr.d | 14 +
gas/testsuite/gas/csky/jbsr.s | 3 +
gas/testsuite/gas/csky/jbt.d | 16 +
gas/testsuite/gas/csky/jbt.s | 10 +
gas/testsuite/gas/csky/jbt_pic.d | 23 +
gas/testsuite/gas/csky/jbt_pic.s | 10 +
gas/testsuite/gas/csky/jmpi1.d | 16 +
gas/testsuite/gas/csky/jmpi1.s | 6 +
gas/testsuite/gas/csky/jmpi2.d | 14 +
gas/testsuite/gas/csky/jmpi2.s | 5 +
gas/testsuite/gas/csky/jmpi3.d | 9 +
gas/testsuite/gas/csky/jmpi3.s | 6 +
gas/testsuite/gas/csky/jmpiv2_1.d | 13 +
gas/testsuite/gas/csky/jmpiv2_1.s | 6 +
gas/testsuite/gas/csky/jmpiv2_2.d | 9 +
gas/testsuite/gas/csky/jmpiv2_2.s | 6 +
gas/testsuite/gas/csky/jsriv2_1.d | 13 +
gas/testsuite/gas/csky/jsriv2_1.s | 5 +
gas/testsuite/gas/csky/jsriv2_2.d | 14 +
gas/testsuite/gas/csky/jsriv2_2.s | 5 +
gas/testsuite/gas/csky/jsriv2_3.d | 9 +
gas/testsuite/gas/csky/jsriv2_3.s | 5 +
gas/testsuite/gas/csky/jsriv2_4.d | 9 +
gas/testsuite/gas/csky/jsriv2_4.s | 5 +
gas/testsuite/gas/csky/trust.d | 17 +
gas/testsuite/gas/csky/trust.s | 9 +
gas/testsuite/gas/csky/v1_float.d | 222 +
gas/testsuite/gas/csky/v1_float.s | 78 +
gas/testsuite/gas/csky/v2_float_part1.d | 54 +
gas/testsuite/gas/csky/v2_float_part1.s | 48 +
gas/testsuite/gas/csky/v2_float_part2.d | 20 +
gas/testsuite/gas/csky/v2_float_part2.s | 10 +
gas/testsuite/gas/csky/v2_tls_gd.d | 10 +
gas/testsuite/gas/csky/v2_tls_gd.s | 7 +
gas/testsuite/gas/csky/v2_tls_ie.d | 9 +
gas/testsuite/gas/csky/v2_tls_ie.s | 7 +
gas/testsuite/gas/csky/v2_tls_ld.d | 11 +
gas/testsuite/gas/csky/v2_tls_ld.s | 9 +
gas/testsuite/gas/csky/v2_tls_le.d | 9 +
gas/testsuite/gas/csky/v2_tls_le.s | 3 +
gas/testsuite/gas/d10v/d10v.exp | 2 +-
gas/testsuite/gas/d30v/d30.exp | 2 +-
gas/testsuite/gas/dlx/alltests.exp | 2 +-
gas/testsuite/gas/elf/bad-bss.d | 2 +-
gas/testsuite/gas/elf/bad-group.d | 2 +-
gas/testsuite/gas/elf/bad-group.err | 4 +-
gas/testsuite/gas/elf/bad-section-flag.d | 2 +-
gas/testsuite/gas/elf/bad-section-flag.err | 4 +-
gas/testsuite/gas/elf/bad-size.d | 2 +-
gas/testsuite/gas/elf/bad-size.err | 4 +-
gas/testsuite/gas/elf/bignums.d | 2 +-
gas/testsuite/gas/elf/common1.d | 2 +-
gas/testsuite/gas/elf/common2.d | 2 +-
gas/testsuite/gas/elf/common5a.d | 5 +
gas/testsuite/gas/elf/common5a.l | 2 +
gas/testsuite/gas/elf/common5a.s | 3 +
gas/testsuite/gas/elf/common5b.d | 5 +
gas/testsuite/gas/elf/common5b.l | 2 +
gas/testsuite/gas/elf/common5b.s | 3 +
gas/testsuite/gas/elf/common5c.d | 5 +
gas/testsuite/gas/elf/common5c.s | 2 +
gas/testsuite/gas/elf/common5d.d | 5 +
gas/testsuite/gas/elf/common5d.s | 2 +
gas/testsuite/gas/elf/dwarf2-1.d | 15 +-
gas/testsuite/gas/elf/dwarf2-1.s | 2 +-
gas/testsuite/gas/elf/dwarf2-10.d | 6 +
gas/testsuite/gas/elf/dwarf2-10.l | 2 +
gas/testsuite/gas/elf/dwarf2-10.s | 32 +
gas/testsuite/gas/elf/dwarf2-11.d | 15 +
gas/testsuite/gas/elf/dwarf2-11.s | 28 +
gas/testsuite/gas/elf/dwarf2-12.d | 20 +
gas/testsuite/gas/elf/dwarf2-12.s | 31 +
gas/testsuite/gas/elf/dwarf2-13.d | 19 +
gas/testsuite/gas/elf/dwarf2-13.s | 33 +
gas/testsuite/gas/elf/dwarf2-14.d | 19 +
gas/testsuite/gas/elf/dwarf2-14.s | 32 +
gas/testsuite/gas/elf/dwarf2-15.d | 19 +
gas/testsuite/gas/elf/dwarf2-15.s | 32 +
gas/testsuite/gas/elf/dwarf2-16.d | 20 +
gas/testsuite/gas/elf/dwarf2-16.s | 33 +
gas/testsuite/gas/elf/dwarf2-17.d | 20 +
gas/testsuite/gas/elf/dwarf2-17.s | 33 +
gas/testsuite/gas/elf/dwarf2-18.d | 19 +
gas/testsuite/gas/elf/dwarf2-18.s | 33 +
gas/testsuite/gas/elf/dwarf2-2.d | 15 +-
gas/testsuite/gas/elf/dwarf2-2.s | 2 +-
gas/testsuite/gas/elf/dwarf2-3.d | 14 +-
gas/testsuite/gas/elf/dwarf2-4.d | 1 -
gas/testsuite/gas/elf/dwarf2-5.d | 79 +
gas/testsuite/gas/elf/dwarf2-5.s | 58 +
gas/testsuite/gas/elf/dwarf2-6.d | 78 +
gas/testsuite/gas/elf/dwarf2-6.s | 101 +
gas/testsuite/gas/elf/dwarf2-7.d | 19 +
gas/testsuite/gas/elf/dwarf2-7.s | 36 +
gas/testsuite/gas/elf/dwarf2-8.d | 5 +
gas/testsuite/gas/elf/dwarf2-8.l | 2 +
gas/testsuite/gas/elf/dwarf2-8.s | 27 +
gas/testsuite/gas/elf/dwarf2-9.d | 5 +
gas/testsuite/gas/elf/dwarf2-9.l | 2 +
gas/testsuite/gas/elf/dwarf2-9.s | 32 +
gas/testsuite/gas/elf/elf.exp | 41 +-
gas/testsuite/gas/elf/group0a.d | 2 +-
gas/testsuite/gas/elf/group0b.d | 6 +-
gas/testsuite/gas/elf/group0c.d | 2 +-
gas/testsuite/gas/elf/group1a.d | 4 +-
gas/testsuite/gas/elf/group1b.d | 5 +-
gas/testsuite/gas/elf/group2.d | 2 -
gas/testsuite/gas/elf/group3.d | 8 +
gas/testsuite/gas/elf/group3.s | 7 +
gas/testsuite/gas/elf/groupautoa.d | 2 +-
gas/testsuite/gas/elf/groupautob.d | 3 +-
gas/testsuite/gas/elf/ifunc-1.d | 2 +-
gas/testsuite/gas/elf/missing-build-notes.d | 14 +
gas/testsuite/gas/elf/missing-build-notes.s | 6 +
gas/testsuite/gas/elf/pr21661.d | 2 +
gas/testsuite/gas/elf/pr21661.l | 3 +
gas/testsuite/gas/elf/pr21661.s | 4 +
gas/testsuite/gas/elf/pseudo.d | 2 +-
gas/testsuite/gas/elf/section10.d | 4 +-
gas/testsuite/gas/elf/section11.d | 3 +
gas/testsuite/gas/elf/section12a.d | 6 +-
gas/testsuite/gas/elf/section13.d | 2 +-
gas/testsuite/gas/elf/section14.d | 13 +
gas/testsuite/gas/elf/section14.s | 18 +
gas/testsuite/gas/elf/section2.e-arc | 9 +
gas/testsuite/gas/elf/section4.d | 2 +-
gas/testsuite/gas/elf/section7.d | 2 +-
gas/testsuite/gas/elf/section9.d | 2 +-
gas/testsuite/gas/elf/syms.d | 2 +-
gas/testsuite/gas/elf/symver.d | 2 +-
gas/testsuite/gas/elf/warn-2.s | 7 +-
gas/testsuite/gas/epiphany/allinsn.exp | 2 +-
gas/testsuite/gas/fr30/allinsn.exp | 2 +-
gas/testsuite/gas/fr30/fr30.exp | 2 +-
gas/testsuite/gas/frv/allinsn.exp | 2 +-
gas/testsuite/gas/ft32/ft32.exp | 3 +-
gas/testsuite/gas/ft32/insn.d | 474 +-
gas/testsuite/gas/ft32/insnsc.d | 1546 +
gas/testsuite/gas/ft32/insnsc.s | 769 +
gas/testsuite/gas/h8300/branch-coff.s | 10 -
gas/testsuite/gas/h8300/branchh-coff.s | 12 -
gas/testsuite/gas/h8300/branchs-coff.s | 12 -
gas/testsuite/gas/h8300/ffxx1-coff.d | 23 -
gas/testsuite/gas/h8300/ffxx1-coff.s | 20 -
gas/testsuite/gas/h8300/h8300-coff.exp | 299 -
gas/testsuite/gas/h8300/h8300-elf.exp | 2 +-
gas/testsuite/gas/h8300/h8300.exp | 6 +-
gas/testsuite/gas/h8300/t01_mov.exp | 2 +-
gas/testsuite/gas/h8300/t02_mova.exp | 2 +-
gas/testsuite/gas/h8300/t03_add.exp | 2 +-
gas/testsuite/gas/h8300/t04_sub.exp | 2 +-
gas/testsuite/gas/h8300/t05_cmp.exp | 2 +-
gas/testsuite/gas/h8300/t06_ari2.exp | 2 +-
gas/testsuite/gas/h8300/t07_ari3.exp | 2 +-
gas/testsuite/gas/h8300/t08_or.exp | 2 +-
gas/testsuite/gas/h8300/t09_xor.exp | 2 +-
gas/testsuite/gas/h8300/t10_and.exp | 2 +-
gas/testsuite/gas/h8300/t11_logs.exp | 2 +-
gas/testsuite/gas/h8300/t12_bit.exp | 2 +-
gas/testsuite/gas/h8300/t13_otr.exp | 2 +-
gas/testsuite/gas/hppa/README | 2 +-
gas/testsuite/gas/hppa/basic/basic.exp | 2 +-
gas/testsuite/gas/hppa/parse/parse.exp | 2 +-
gas/testsuite/gas/hppa/reloc/reloc.exp | 2 +-
gas/testsuite/gas/hppa/unsorted/unsorted.exp | 2 +-
gas/testsuite/gas/i386/align-1.s | 7 +
gas/testsuite/gas/i386/align-1a.d | 17 +
gas/testsuite/gas/i386/align-1b.d | 24 +
gas/testsuite/gas/i386/arch-13-znver1.d | 8 +-
gas/testsuite/gas/i386/arch-13-znver2.d | 29 +
gas/testsuite/gas/i386/arch-13.d | 6 +-
gas/testsuite/gas/i386/arch-13.s | 39 +-
gas/testsuite/gas/i386/arch-4.d | 6 +-
gas/testsuite/gas/i386/arch-4.s | 5 +-
gas/testsuite/gas/i386/arch-avx-1-1.l | 3 +
gas/testsuite/gas/i386/arch-avx-1-2.l | 3 +
gas/testsuite/gas/i386/arch-avx-1-3.l | 3 +
gas/testsuite/gas/i386/arch-avx-1-4.l | 3 +
gas/testsuite/gas/i386/arch-avx-1-5.l | 3 +
gas/testsuite/gas/i386/arch-avx-1-6.l | 3 +
gas/testsuite/gas/i386/arch-avx-1-7.l | 16 +
gas/testsuite/gas/i386/arch-avx-1-7.s | 1 +
gas/testsuite/gas/i386/arch-avx-1-8.l | 16 +
gas/testsuite/gas/i386/arch-avx-1-8.s | 1 +
gas/testsuite/gas/i386/arch-avx-1.d | 3 +-
gas/testsuite/gas/i386/arch-avx-1.s | 2 +
gas/testsuite/gas/i386/avx-intel.d | 98 +
gas/testsuite/gas/i386/avx-scalar-2.d | 24 +
gas/testsuite/gas/i386/avx-scalar-2.s | 22 +
gas/testsuite/gas/i386/avx-scalar-intel.d | 39 -
gas/testsuite/gas/i386/avx-scalar.d | 39 -
gas/testsuite/gas/i386/avx-scalar.s | 55 -
gas/testsuite/gas/i386/avx-wig.d | 321 +
gas/testsuite/gas/i386/avx-wig.s | 315 +
gas/testsuite/gas/i386/avx.d | 98 +
gas/testsuite/gas/i386/avx.s | 98 +
gas/testsuite/gas/i386/avx2-wig.d | 118 +
gas/testsuite/gas/i386/avx2-wig.s | 112 +
gas/testsuite/gas/i386/avx512_4fmaps-intel.d | 64 +-
gas/testsuite/gas/i386/avx512_4fmaps-warn.l | 24 +-
gas/testsuite/gas/i386/avx512_4fmaps-warn.s | 20 +-
gas/testsuite/gas/i386/avx512_4fmaps.d | 64 +-
gas/testsuite/gas/i386/avx512_4fmaps.s | 64 +-
gas/testsuite/gas/i386/avx512_4fmaps_vl-intel.d | 78 -
gas/testsuite/gas/i386/avx512_4fmaps_vl-warn.l | 13 -
gas/testsuite/gas/i386/avx512_4fmaps_vl-warn.s | 23 -
gas/testsuite/gas/i386/avx512_4fmaps_vl.d | 78 -
gas/testsuite/gas/i386/avx512_4fmaps_vl.s | 74 -
gas/testsuite/gas/i386/avx512_4vnniw_vl-intel.d | 79 -
gas/testsuite/gas/i386/avx512_4vnniw_vl.d | 79 -
gas/testsuite/gas/i386/avx512_4vnniw_vl.s | 75 -
gas/testsuite/gas/i386/avx512_vpopcntdq-intel.d | 2 +
gas/testsuite/gas/i386/avx512_vpopcntdq.d | 2 +
gas/testsuite/gas/i386/avx512_vpopcntdq.s | 2 +
gas/testsuite/gas/i386/avx512bitalg-intel.d | 64 +
gas/testsuite/gas/i386/avx512bitalg.d | 64 +
gas/testsuite/gas/i386/avx512bitalg.s | 67 +
gas/testsuite/gas/i386/avx512bitalg_vl-intel.d | 100 +
gas/testsuite/gas/i386/avx512bitalg_vl.d | 100 +
gas/testsuite/gas/i386/avx512bitalg_vl.s | 103 +
gas/testsuite/gas/i386/avx512bw-intel.d | 28 +
gas/testsuite/gas/i386/avx512bw.d | 28 +
gas/testsuite/gas/i386/avx512bw.s | 28 +
gas/testsuite/gas/i386/avx512bw_vl-intel.d | 56 +
gas/testsuite/gas/i386/avx512bw_vl.d | 56 +
gas/testsuite/gas/i386/avx512bw_vl.s | 56 +
gas/testsuite/gas/i386/avx512f-intel.d | 6 +
gas/testsuite/gas/i386/avx512f-plain.l | 28 +
gas/testsuite/gas/i386/avx512f-plain.s | 17 +
gas/testsuite/gas/i386/avx512f-ymm.d | 14 +
gas/testsuite/gas/i386/avx512f-ymm.s | 9 +
gas/testsuite/gas/i386/avx512f.d | 54 +-
gas/testsuite/gas/i386/avx512f.s | 136 +-
gas/testsuite/gas/i386/avx512f_gfni-intel.d | 46 +
gas/testsuite/gas/i386/avx512f_gfni.d | 46 +
gas/testsuite/gas/i386/avx512f_gfni.s | 45 +
gas/testsuite/gas/i386/avx512f_vaes-intel.d | 36 +
gas/testsuite/gas/i386/avx512f_vaes-wig.s | 37 +
gas/testsuite/gas/i386/avx512f_vaes-wig1-intel.d | 36 +
gas/testsuite/gas/i386/avx512f_vaes-wig1.d | 36 +
gas/testsuite/gas/i386/avx512f_vaes.d | 36 +
gas/testsuite/gas/i386/avx512f_vaes.s | 37 +
gas/testsuite/gas/i386/avx512f_vl.s | 192 +-
gas/testsuite/gas/i386/avx512f_vpclmulqdq-intel.d | 18 +
gas/testsuite/gas/i386/avx512f_vpclmulqdq-wig.s | 13 +
.../gas/i386/avx512f_vpclmulqdq-wig1-intel.d | 18 +
gas/testsuite/gas/i386/avx512f_vpclmulqdq-wig1.d | 18 +
gas/testsuite/gas/i386/avx512f_vpclmulqdq.d | 18 +
gas/testsuite/gas/i386/avx512f_vpclmulqdq.s | 13 +
gas/testsuite/gas/i386/avx512pf.s | 158 +-
gas/testsuite/gas/i386/avx512vbmi2-intel.d | 199 +
gas/testsuite/gas/i386/avx512vbmi2.d | 199 +
gas/testsuite/gas/i386/avx512vbmi2.s | 224 +
gas/testsuite/gas/i386/avx512vbmi2_vl-intel.d | 308 +
gas/testsuite/gas/i386/avx512vbmi2_vl.d | 308 +
gas/testsuite/gas/i386/avx512vbmi2_vl.s | 332 +
gas/testsuite/gas/i386/avx512vl-plain.l | 28 +
gas/testsuite/gas/i386/avx512vl-plain.s | 17 +
gas/testsuite/gas/i386/avx512vl_gfni-intel.d | 73 +
gas/testsuite/gas/i386/avx512vl_gfni.d | 73 +
gas/testsuite/gas/i386/avx512vl_gfni.s | 72 +
gas/testsuite/gas/i386/avx512vl_vaes-intel.d | 108 +
gas/testsuite/gas/i386/avx512vl_vaes-wig.s | 45 +
gas/testsuite/gas/i386/avx512vl_vaes-wig1-intel.d | 44 +
gas/testsuite/gas/i386/avx512vl_vaes-wig1.d | 44 +
gas/testsuite/gas/i386/avx512vl_vaes.d | 108 +
gas/testsuite/gas/i386/avx512vl_vaes.s | 117 +
gas/testsuite/gas/i386/avx512vl_vpclmulqdq-intel.d | 36 +
gas/testsuite/gas/i386/avx512vl_vpclmulqdq-wig.s | 33 +
.../gas/i386/avx512vl_vpclmulqdq-wig1-intel.d | 36 +
gas/testsuite/gas/i386/avx512vl_vpclmulqdq-wig1.d | 36 +
gas/testsuite/gas/i386/avx512vl_vpclmulqdq.d | 36 +
gas/testsuite/gas/i386/avx512vl_vpclmulqdq.s | 33 +
gas/testsuite/gas/i386/avx512vnni-intel.d | 60 +
gas/testsuite/gas/i386/avx512vnni.d | 60 +
gas/testsuite/gas/i386/avx512vnni.s | 60 +
gas/testsuite/gas/i386/avx512vnni_vl-intel.d | 92 +
gas/testsuite/gas/i386/avx512vnni_vl.d | 92 +
gas/testsuite/gas/i386/avx512vnni_vl.s | 93 +
gas/testsuite/gas/i386/bad-size.d | 2 +-
gas/testsuite/gas/i386/bnd.l | 14 +
gas/testsuite/gas/i386/bnd.s | 7 +
gas/testsuite/gas/i386/bss.d | 1 +
gas/testsuite/gas/i386/bundle-bad.d | 2 +-
gas/testsuite/gas/i386/bundle-bad.l | 6 +-
gas/testsuite/gas/i386/cet-ibt-inval.l | 3 +
gas/testsuite/gas/i386/cet-ibt-inval.s | 7 +
gas/testsuite/gas/i386/cet-intel.d | 14 +-
gas/testsuite/gas/i386/cet-shstk-inval.l | 3 +
gas/testsuite/gas/i386/cet-shstk-inval.s | 7 +
gas/testsuite/gas/i386/cet.d | 14 +-
gas/testsuite/gas/i386/cet.s | 14 +-
gas/testsuite/gas/i386/cldemote-intel.d | 16 +
gas/testsuite/gas/i386/cldemote.d | 16 +
gas/testsuite/gas/i386/cldemote.s | 12 +
gas/testsuite/gas/i386/code64-inval.l | 13 +
gas/testsuite/gas/i386/code64-inval.s | 1 +
gas/testsuite/gas/i386/code64.d | 11 +
gas/testsuite/gas/i386/code64.s | 5 +
gas/testsuite/gas/i386/cvtsi2sX.l | 9 +
gas/testsuite/gas/i386/cvtsi2sX.s | 14 +
gas/testsuite/gas/i386/debug1.d | 12 +-
gas/testsuite/gas/i386/divide.d | 1 +
gas/testsuite/gas/i386/dw2-compress-1.d | 14 +-
gas/testsuite/gas/i386/dw2-compress-1.s | 2 +-
gas/testsuite/gas/i386/dw2-compress-3a.d | 12 +-
gas/testsuite/gas/i386/dw2-compress-3b.d | 12 +-
gas/testsuite/gas/i386/dw2-compressed-1.d | 14 +-
gas/testsuite/gas/i386/dw2-compressed-3a.d | 12 +-
gas/testsuite/gas/i386/dw2-compressed-3b.d | 12 +-
gas/testsuite/gas/i386/evex-lig-2.d | 35 +
gas/testsuite/gas/i386/evex-lig-2.s | 39 +
gas/testsuite/gas/i386/evex-lig256.d | 48 +-
gas/testsuite/gas/i386/evex-lig512.d | 48 +-
gas/testsuite/gas/i386/evex-no-scale-32.d | 12 +
gas/testsuite/gas/i386/evex-no-scale-32.s | 7 +
gas/testsuite/gas/i386/evex-no-scale-64.d | 14 +
gas/testsuite/gas/i386/evex-no-scale-64.s | 9 +
gas/testsuite/gas/i386/evex-wig.s | 58 +
gas/testsuite/gas/i386/evex-wig1-intel.d | 36 +
gas/testsuite/gas/i386/evex-wig1.d | 36 +
gas/testsuite/gas/i386/evex.d | 16 +
gas/testsuite/gas/i386/evex.s | 11 +
gas/testsuite/gas/i386/fpu.l | 4 +
gas/testsuite/gas/i386/fpu.s | 12 +
gas/testsuite/gas/i386/general.l | 16 +-
gas/testsuite/gas/i386/general.s | 8 +-
gas/testsuite/gas/i386/gfni-intel.d | 30 +
gas/testsuite/gas/i386/gfni.d | 30 +
gas/testsuite/gas/i386/gfni.s | 30 +
gas/testsuite/gas/i386/hle-intel.d | 3 +
gas/testsuite/gas/i386/hle.d | 3 +
gas/testsuite/gas/i386/hle.s | 3 +
gas/testsuite/gas/i386/i386.exp | 216 +-
gas/testsuite/gas/i386/iamcu-1.d | 2 +-
gas/testsuite/gas/i386/iamcu-2.d | 2 +-
gas/testsuite/gas/i386/iamcu-3.d | 2 +-
gas/testsuite/gas/i386/iamcu-4.d | 2 +-
gas/testsuite/gas/i386/iamcu-5.d | 2 +-
gas/testsuite/gas/i386/ilp32/cfi/cfi-x86_64.d | 1 +
gas/testsuite/gas/i386/ilp32/cfi/ilp32.exp | 2 +-
gas/testsuite/gas/i386/ilp32/elf/ilp32.exp | 2 +-
gas/testsuite/gas/i386/ilp32/elf/symver.d | 2 +-
gas/testsuite/gas/i386/ilp32/ilp32.exp | 2 +-
gas/testsuite/gas/i386/ilp32/lns/ilp32.exp | 2 +-
gas/testsuite/gas/i386/ilp32/lns/lns-common-1.d | 2 +-
gas/testsuite/gas/i386/ilp32/lns/lns-duplicate.d | 4 +-
gas/testsuite/gas/i386/ilp32/quad.d | 1 +
gas/testsuite/gas/i386/ilp32/reloc64.d | 3 +-
gas/testsuite/gas/i386/ilp32/rex.d | 10 +-
gas/testsuite/gas/i386/ilp32/x86-64-addr32-intel.d | 8 +-
gas/testsuite/gas/i386/ilp32/x86-64-addr32.d | 8 +-
gas/testsuite/gas/i386/ilp32/x86-64-avx-intel.d | 98 +
gas/testsuite/gas/i386/ilp32/x86-64-avx.d | 98 +
gas/testsuite/gas/i386/ilp32/x86-64-branch.d | 6 +-
gas/testsuite/gas/i386/ilp32/x86-64-localpic.d | 2 +-
gas/testsuite/gas/i386/ilp32/x86-64-nops-1-core2.d | 19 +-
gas/testsuite/gas/i386/ilp32/x86-64-nops-1-k8.d | 19 +-
.../gas/i386/ilp32/x86-64-nops-1-pentium.d | 120 +-
gas/testsuite/gas/i386/ilp32/x86-64-nops-1.d | 19 +-
gas/testsuite/gas/i386/ilp32/x86-64-nops-2.d | 23 +-
gas/testsuite/gas/i386/ilp32/x86-64-nops-3.d | 11 +-
gas/testsuite/gas/i386/ilp32/x86-64-nops-4-core2.d | 83 +-
gas/testsuite/gas/i386/ilp32/x86-64-nops-4-k8.d | 83 +-
gas/testsuite/gas/i386/ilp32/x86-64-nops-4.d | 83 +-
gas/testsuite/gas/i386/ilp32/x86-64-nops-5-k8.d | 44 +-
gas/testsuite/gas/i386/ilp32/x86-64-nops-5.d | 44 +-
gas/testsuite/gas/i386/ilp32/x86-64-nops.d | 4 +-
gas/testsuite/gas/i386/ilp32/x86-64-opcode.d | 4 +-
gas/testsuite/gas/i386/ilp32/x86-64-opts-intel.d | 325 +-
gas/testsuite/gas/i386/ilp32/x86-64-opts.d | 325 +-
gas/testsuite/gas/i386/ilp32/x86-64-reg-intel.d | 8 +
gas/testsuite/gas/i386/ilp32/x86-64-reg.d | 8 +
gas/testsuite/gas/i386/ilp32/x86-64-simd-suffix.d | 16 +-
gas/testsuite/gas/i386/ilp32/x86-64-size-1.d | 1 +
gas/testsuite/gas/i386/ilp32/x86-64-size-3.d | 1 +
gas/testsuite/gas/i386/ilp32/x86-64-size-5.d | 1 +
.../gas/i386/ilp32/x86-64-sse-check-none.d | 16 +-
.../gas/i386/ilp32/x86-64-sse-check-warn.d | 16 +-
gas/testsuite/gas/i386/ilp32/x86-64-sse-check.d | 14 +-
gas/testsuite/gas/i386/ilp32/x86-64-sse-noavx.d | 4 +-
.../gas/i386/ilp32/x86-64-sse2avx-opts-intel.d | 325 +-
gas/testsuite/gas/i386/ilp32/x86-64-sse2avx-opts.d | 325 +-
gas/testsuite/gas/i386/ilp32/x86-64-sse3.d | 2 +-
gas/testsuite/gas/i386/ilp32/x86-64-unwind.d | 1 +
gas/testsuite/gas/i386/intel-intel.d | 710 +
gas/testsuite/gas/i386/intel.d | 21 +-
gas/testsuite/gas/i386/intel.e | 4 -
gas/testsuite/gas/i386/intel.s | 16 +-
gas/testsuite/gas/i386/intelok.d | 1 +
gas/testsuite/gas/i386/intelok.e | 2 +
gas/testsuite/gas/i386/inval-avx512f.l | 460 +-
gas/testsuite/gas/i386/inval-avx512f.s | 256 +
gas/testsuite/gas/i386/inval-pseudo.l | 11 +
gas/testsuite/gas/i386/inval-pseudo.s | 5 +
gas/testsuite/gas/i386/inval-seg.l | 20 +-
gas/testsuite/gas/i386/inval-seg.s | 7 +
gas/testsuite/gas/i386/inval.l | 78 +-
gas/testsuite/gas/i386/inval.s | 12 +
gas/testsuite/gas/i386/invpcid-intel.d | 1 +
gas/testsuite/gas/i386/invpcid.d | 1 +
gas/testsuite/gas/i386/invpcid.s | 1 +
gas/testsuite/gas/i386/k1om.d | 2 +-
gas/testsuite/gas/i386/l1om.d | 2 +-
gas/testsuite/gas/i386/localpic.d | 2 +-
gas/testsuite/gas/i386/mixed-mode-reloc32.d | 2 +-
gas/testsuite/gas/i386/movdir-intel.d | 18 +
gas/testsuite/gas/i386/movdir.d | 18 +
gas/testsuite/gas/i386/movdir.s | 13 +
gas/testsuite/gas/i386/movdir64b-reg.l | 5 +
gas/testsuite/gas/i386/movdir64b-reg.s | 11 +
gas/testsuite/gas/i386/mpx-add-bnd-prefix.d | 7 +-
gas/testsuite/gas/i386/mpx-add-bnd-prefix.e | 3 +
gas/testsuite/gas/i386/mpx-add-bnd-prefix.s | 3 +
gas/testsuite/gas/i386/mpx.d | 4 +
gas/testsuite/gas/i386/mpx.s | 12 +
gas/testsuite/gas/i386/noavx-3.l | 6 +-
gas/testsuite/gas/i386/noavx512-2.l | 8 +-
gas/testsuite/gas/i386/noextreg.d | 53 +
gas/testsuite/gas/i386/noextreg.s | 57 +
gas/testsuite/gas/i386/nop-1.d | 59 +
gas/testsuite/gas/i386/nop-1.s | 25 +
gas/testsuite/gas/i386/nop-2.d | 78 +
gas/testsuite/gas/i386/nop-2.s | 26 +
gas/testsuite/gas/i386/nop-3.d | 20 +
gas/testsuite/gas/i386/nop-3.s | 15 +
gas/testsuite/gas/i386/nop-4.d | 24 +
gas/testsuite/gas/i386/nop-4.s | 18 +
gas/testsuite/gas/i386/nop-5.d | 26 +
gas/testsuite/gas/i386/nop-5.s | 19 +
gas/testsuite/gas/i386/nop-6.d | 18 +
gas/testsuite/gas/i386/nop-6.s | 25 +
gas/testsuite/gas/i386/nop-bad-1.l | 4 +
gas/testsuite/gas/i386/nop-bad-1.s | 4 +
gas/testsuite/gas/i386/nops-1-core2.d | 19 +-
gas/testsuite/gas/i386/nops-1-i386-i686.d | 270 +-
gas/testsuite/gas/i386/nops-1-i386.d | 270 +-
gas/testsuite/gas/i386/nops-1-i686.d | 36 +-
gas/testsuite/gas/i386/nops-1-k8.d | 19 +-
gas/testsuite/gas/i386/nops-1.d | 270 +-
gas/testsuite/gas/i386/nops-2-core2.d | 276 +-
gas/testsuite/gas/i386/nops-2-i386.d | 276 +-
gas/testsuite/gas/i386/nops-2.d | 276 +-
gas/testsuite/gas/i386/nops-3-i386.d | 34 +-
gas/testsuite/gas/i386/nops-3-i686.d | 34 +-
gas/testsuite/gas/i386/nops-3.d | 34 +-
gas/testsuite/gas/i386/nops-4-i386.d | 399 +-
gas/testsuite/gas/i386/nops-4-i686.d | 399 +-
gas/testsuite/gas/i386/nops-4.d | 399 +-
gas/testsuite/gas/i386/nops-4a-i686.d | 83 +-
gas/testsuite/gas/i386/nops-5-i686.d | 44 +-
gas/testsuite/gas/i386/nops-5.d | 44 +-
gas/testsuite/gas/i386/nops-6.d | 6 +-
gas/testsuite/gas/i386/nops-7.d | 171 +
gas/testsuite/gas/i386/nops-7.s | 18 +
gas/testsuite/gas/i386/nops.d | 4 +-
gas/testsuite/gas/i386/nops.s | 4 +-
gas/testsuite/gas/i386/nops16-1.d | 529 +-
gas/testsuite/gas/i386/notrack-intel.d | 53 +
gas/testsuite/gas/i386/notrack.d | 52 +
gas/testsuite/gas/i386/notrack.s | 67 +
gas/testsuite/gas/i386/notrackbad.l | 31 +
gas/testsuite/gas/i386/notrackbad.s | 16 +
gas/testsuite/gas/i386/opcode-intel.d | 2 +-
gas/testsuite/gas/i386/opcode-suffix.d | 6 +-
gas/testsuite/gas/i386/opcode.d | 12 +-
gas/testsuite/gas/i386/opcode.s | 8 +-
gas/testsuite/gas/i386/optimize-1.d | 65 +
gas/testsuite/gas/i386/optimize-1.s | 74 +
gas/testsuite/gas/i386/optimize-2.d | 19 +
gas/testsuite/gas/i386/optimize-2.s | 13 +
gas/testsuite/gas/i386/optimize-3.d | 12 +
gas/testsuite/gas/i386/optimize-3.s | 6 +
gas/testsuite/gas/i386/optimize-4.d | 67 +
gas/testsuite/gas/i386/optimize-4.s | 6 +
gas/testsuite/gas/i386/optimize-5.d | 67 +
gas/testsuite/gas/i386/optimize-5.s | 8 +
gas/testsuite/gas/i386/opts-intel.d | 4 +
gas/testsuite/gas/i386/opts.d | 4 +
gas/testsuite/gas/i386/opts.s | 8 +
gas/testsuite/gas/i386/pconfig-intel.d | 11 +
gas/testsuite/gas/i386/pconfig.d | 11 +
gas/testsuite/gas/i386/pconfig.s | 5 +
gas/testsuite/gas/i386/prefix.d | 3 +
gas/testsuite/gas/i386/prefix.s | 4 +
gas/testsuite/gas/i386/prefix32.l | 36 +
gas/testsuite/gas/i386/prefix32.s | 23 +
gas/testsuite/gas/i386/prefix64.l | 36 +
gas/testsuite/gas/i386/prefix64.s | 23 +
gas/testsuite/gas/i386/property-1.d | 8 +
gas/testsuite/gas/i386/property-1.s | 31 +
gas/testsuite/gas/i386/pseudos.d | 258 +-
gas/testsuite/gas/i386/pseudos.s | 262 +
gas/testsuite/gas/i386/ptwrite-intel.d | 1 +
gas/testsuite/gas/i386/ptwrite.d | 1 +
gas/testsuite/gas/i386/ptwrite.s | 1 +
gas/testsuite/gas/i386/relax.d | 1 +
gas/testsuite/gas/i386/reloc64.d | 7 +-
gas/testsuite/gas/i386/reloc64.s | 6 +
gas/testsuite/gas/i386/rex.d | 10 +-
gas/testsuite/gas/i386/rex.s | 10 +
gas/testsuite/gas/i386/se1.d | 1 +
gas/testsuite/gas/i386/se1.s | 1 +
gas/testsuite/gas/i386/sg.l | 25 +
gas/testsuite/gas/i386/sg.s | 66 +
gas/testsuite/gas/i386/size-1.d | 1 +
gas/testsuite/gas/i386/size-3.d | 1 +
gas/testsuite/gas/i386/sse-check-error.l | 18 +
gas/testsuite/gas/i386/sse-check-none.d | 16 +-
gas/testsuite/gas/i386/sse-check-none.s | 19 +-
gas/testsuite/gas/i386/sse-check-warn.d | 16 +-
gas/testsuite/gas/i386/sse-check-warn.e | 3 +
gas/testsuite/gas/i386/sse-check.d | 3 +
gas/testsuite/gas/i386/sse-check.s | 9 +
gas/testsuite/gas/i386/sse-noavx.d | 4 +-
gas/testsuite/gas/i386/sse-noavx.s | 2 +
gas/testsuite/gas/i386/sse2avx-opts-intel.d | 4 +
gas/testsuite/gas/i386/sse2avx-opts.d | 4 +
gas/testsuite/gas/i386/sse3.d | 2 +-
gas/testsuite/gas/i386/stN.l | 18 +
gas/testsuite/gas/i386/stN.s | 9 +
gas/testsuite/gas/i386/string-bad.l | 20 +-
gas/testsuite/gas/i386/string-bad.s | 10 +
gas/testsuite/gas/i386/string-ok.d | 19 +-
gas/testsuite/gas/i386/string-ok.e | 10 -
gas/testsuite/gas/i386/string-ok.s | 19 +-
gas/testsuite/gas/i386/unspec.l | 65 +
gas/testsuite/gas/i386/unspec.s | 69 +
gas/testsuite/gas/i386/unspec64.l | 21 +
gas/testsuite/gas/i386/unspec64.s | 25 +
gas/testsuite/gas/i386/vaes-intel.d | 30 +
gas/testsuite/gas/i386/vaes.d | 29 +
gas/testsuite/gas/i386/vaes.s | 30 +
gas/testsuite/gas/i386/vex-lig-2.d | 74 +
gas/testsuite/gas/i386/vex-lig-2.s | 83 +
gas/testsuite/gas/i386/vgather-check-error.l | 1 +
gas/testsuite/gas/i386/vgather-check-none.d | 2 +
gas/testsuite/gas/i386/vgather-check-warn.d | 4 +-
gas/testsuite/gas/i386/vgather-check-warn.e | 1 +
gas/testsuite/gas/i386/vgather-check.d | 2 +
gas/testsuite/gas/i386/vgather-check.s | 2 +
gas/testsuite/gas/i386/vpclmulqdq-intel.d | 18 +
gas/testsuite/gas/i386/vpclmulqdq.d | 18 +
gas/testsuite/gas/i386/vpclmulqdq.s | 13 +
gas/testsuite/gas/i386/waitpkg-intel.d | 16 +
gas/testsuite/gas/i386/waitpkg.d | 16 +
gas/testsuite/gas/i386/waitpkg.s | 8 +
gas/testsuite/gas/i386/wbnoinvd-intel.d | 11 +
gas/testsuite/gas/i386/wbnoinvd.d | 11 +
gas/testsuite/gas/i386/wbnoinvd.s | 5 +
gas/testsuite/gas/i386/x86-64-addr32-intel.d | 8 +-
gas/testsuite/gas/i386/x86-64-addr32.d | 8 +-
gas/testsuite/gas/i386/x86-64-addr32.s | 5 +-
gas/testsuite/gas/i386/x86-64-arch-3-znver1.d | 7 +-
gas/testsuite/gas/i386/x86-64-arch-3-znver2.d | 31 +
gas/testsuite/gas/i386/x86-64-arch-3.d | 7 +-
gas/testsuite/gas/i386/x86-64-arch-3.s | 40 +-
gas/testsuite/gas/i386/x86-64-avx-intel.d | 98 +
gas/testsuite/gas/i386/x86-64-avx-scalar-2.d | 32 +
gas/testsuite/gas/i386/x86-64-avx-scalar-2.s | 31 +
gas/testsuite/gas/i386/x86-64-avx-scalar-intel.d | 65 +-
gas/testsuite/gas/i386/x86-64-avx-scalar.d | 65 +-
gas/testsuite/gas/i386/x86-64-avx-scalar.s | 77 -
gas/testsuite/gas/i386/x86-64-avx-wig.d | 276 +
gas/testsuite/gas/i386/x86-64-avx-wig.s | 270 +
gas/testsuite/gas/i386/x86-64-avx.d | 98 +
gas/testsuite/gas/i386/x86-64-avx.s | 100 +
gas/testsuite/gas/i386/x86-64-avx2-wig.d | 118 +
gas/testsuite/gas/i386/x86-64-avx2-wig.s | 112 +
.../gas/i386/x86-64-avx512_4fmaps-intel.d | 64 +-
gas/testsuite/gas/i386/x86-64-avx512_4fmaps-warn.l | 12 +-
gas/testsuite/gas/i386/x86-64-avx512_4fmaps.d | 64 +-
gas/testsuite/gas/i386/x86-64-avx512_4fmaps.s | 64 +-
.../gas/i386/x86-64-avx512_4fmaps_vl-intel.d | 79 -
.../gas/i386/x86-64-avx512_4fmaps_vl-warn.l | 13 -
.../gas/i386/x86-64-avx512_4fmaps_vl-warn.s | 23 -
gas/testsuite/gas/i386/x86-64-avx512_4fmaps_vl.d | 79 -
gas/testsuite/gas/i386/x86-64-avx512_4fmaps_vl.s | 75 -
.../gas/i386/x86-64-avx512_4vnniw_vl-intel.d | 79 -
gas/testsuite/gas/i386/x86-64-avx512_4vnniw_vl.d | 79 -
gas/testsuite/gas/i386/x86-64-avx512_4vnniw_vl.s | 75 -
gas/testsuite/gas/i386/x86-64-avx512bitalg-intel.d | 64 +
gas/testsuite/gas/i386/x86-64-avx512bitalg.d | 64 +
gas/testsuite/gas/i386/x86-64-avx512bitalg.s | 67 +
.../gas/i386/x86-64-avx512bitalg_vl-intel.d | 116 +
gas/testsuite/gas/i386/x86-64-avx512bitalg_vl.d | 116 +
gas/testsuite/gas/i386/x86-64-avx512bitalg_vl.s | 119 +
gas/testsuite/gas/i386/x86-64-avx512f.d | 192 +-
gas/testsuite/gas/i386/x86-64-avx512f.s | 142 +-
gas/testsuite/gas/i386/x86-64-avx512f_gfni-intel.d | 46 +
gas/testsuite/gas/i386/x86-64-avx512f_gfni.d | 46 +
gas/testsuite/gas/i386/x86-64-avx512f_gfni.s | 45 +
gas/testsuite/gas/i386/x86-64-avx512f_vaes-intel.d | 36 +
gas/testsuite/gas/i386/x86-64-avx512f_vaes-wig.s | 31 +
.../gas/i386/x86-64-avx512f_vaes-wig1-intel.d | 36 +
gas/testsuite/gas/i386/x86-64-avx512f_vaes-wig1.d | 36 +
gas/testsuite/gas/i386/x86-64-avx512f_vaes.d | 36 +
gas/testsuite/gas/i386/x86-64-avx512f_vaes.s | 31 +
gas/testsuite/gas/i386/x86-64-avx512f_vl.s | 224 +-
.../gas/i386/x86-64-avx512f_vpclmulqdq-intel.d | 18 +
.../gas/i386/x86-64-avx512f_vpclmulqdq-wig.s | 13 +
.../i386/x86-64-avx512f_vpclmulqdq-wig1-intel.d | 18 +
.../gas/i386/x86-64-avx512f_vpclmulqdq-wig1.d | 18 +
gas/testsuite/gas/i386/x86-64-avx512f_vpclmulqdq.d | 18 +
gas/testsuite/gas/i386/x86-64-avx512f_vpclmulqdq.s | 13 +
gas/testsuite/gas/i386/x86-64-avx512pf.s | 158 +-
gas/testsuite/gas/i386/x86-64-avx512vbmi2-intel.d | 198 +
gas/testsuite/gas/i386/x86-64-avx512vbmi2.d | 198 +
gas/testsuite/gas/i386/x86-64-avx512vbmi2.s | 223 +
.../gas/i386/x86-64-avx512vbmi2_vl-intel.d | 388 +
gas/testsuite/gas/i386/x86-64-avx512vbmi2_vl.d | 388 +
gas/testsuite/gas/i386/x86-64-avx512vbmi2_vl.s | 412 +
.../gas/i386/x86-64-avx512vl_gfni-intel.d | 80 +
gas/testsuite/gas/i386/x86-64-avx512vl_gfni.d | 80 +
gas/testsuite/gas/i386/x86-64-avx512vl_gfni.s | 79 +
.../gas/i386/x86-64-avx512vl_vaes-intel.d | 61 +
gas/testsuite/gas/i386/x86-64-avx512vl_vaes-wig.s | 55 +
.../gas/i386/x86-64-avx512vl_vaes-wig1-intel.d | 60 +
gas/testsuite/gas/i386/x86-64-avx512vl_vaes-wig1.d | 60 +
gas/testsuite/gas/i386/x86-64-avx512vl_vaes.d | 61 +
gas/testsuite/gas/i386/x86-64-avx512vl_vaes.s | 56 +
.../gas/i386/x86-64-avx512vl_vpclmulqdq-intel.d | 36 +
.../gas/i386/x86-64-avx512vl_vpclmulqdq-wig.s | 33 +
.../i386/x86-64-avx512vl_vpclmulqdq-wig1-intel.d | 36 +
.../gas/i386/x86-64-avx512vl_vpclmulqdq-wig1.d | 36 +
.../gas/i386/x86-64-avx512vl_vpclmulqdq.d | 36 +
.../gas/i386/x86-64-avx512vl_vpclmulqdq.s | 33 +
gas/testsuite/gas/i386/x86-64-avx512vnni-intel.d | 60 +
gas/testsuite/gas/i386/x86-64-avx512vnni.d | 60 +
gas/testsuite/gas/i386/x86-64-avx512vnni.s | 61 +
.../gas/i386/x86-64-avx512vnni_vl-intel.d | 108 +
gas/testsuite/gas/i386/x86-64-avx512vnni_vl.d | 108 +
gas/testsuite/gas/i386/x86-64-avx512vnni_vl.s | 109 +
gas/testsuite/gas/i386/x86-64-avx_gfni-intel.d | 48 +
gas/testsuite/gas/i386/x86-64-avx_gfni.d | 48 +
gas/testsuite/gas/i386/x86-64-avx_gfni.s | 54 +
gas/testsuite/gas/i386/x86-64-cet-ibt-inval.l | 3 +
gas/testsuite/gas/i386/x86-64-cet-ibt-inval.s | 7 +
gas/testsuite/gas/i386/x86-64-cet-intel.d | 20 +-
gas/testsuite/gas/i386/x86-64-cet-shstk-inval.l | 3 +
gas/testsuite/gas/i386/x86-64-cet-shstk-inval.s | 7 +
gas/testsuite/gas/i386/x86-64-cet.d | 20 +-
gas/testsuite/gas/i386/x86-64-cet.s | 20 +-
gas/testsuite/gas/i386/x86-64-cldemote-intel.d | 16 +
gas/testsuite/gas/i386/x86-64-cldemote.d | 16 +
gas/testsuite/gas/i386/x86-64-cldemote.s | 12 +
gas/testsuite/gas/i386/x86-64-evex-lig-2.d | 41 +
gas/testsuite/gas/i386/x86-64-evex-lig-2.s | 46 +
gas/testsuite/gas/i386/x86-64-evex-lig256.d | 192 +-
gas/testsuite/gas/i386/x86-64-evex-lig512.d | 192 +-
gas/testsuite/gas/i386/x86-64-evex-wig.s | 13 +
gas/testsuite/gas/i386/x86-64-evex-wig1-intel.d | 9 +
gas/testsuite/gas/i386/x86-64-evex-wig1.d | 9 +
gas/testsuite/gas/i386/x86-64-evex-wig2.d | 17 +
gas/testsuite/gas/i386/x86-64-evex-wig2.s | 11 +
gas/testsuite/gas/i386/x86-64-gfni-intel.d | 30 +
gas/testsuite/gas/i386/x86-64-gfni.d | 30 +
gas/testsuite/gas/i386/x86-64-gfni.s | 30 +
gas/testsuite/gas/i386/x86-64-inval-avx512f.l | 19 +-
gas/testsuite/gas/i386/x86-64-inval-avx512f.s | 10 +
gas/testsuite/gas/i386/x86-64-inval.l | 6 +
gas/testsuite/gas/i386/x86-64-inval.s | 4 +
gas/testsuite/gas/i386/x86-64-invpcid-intel.d | 1 +
gas/testsuite/gas/i386/x86-64-invpcid.d | 1 +
gas/testsuite/gas/i386/x86-64-invpcid.s | 1 +
gas/testsuite/gas/i386/x86-64-jump.d | 4 +-
gas/testsuite/gas/i386/x86-64-localpic.d | 2 +-
gas/testsuite/gas/i386/x86-64-movd-intel.d | 45 +
gas/testsuite/gas/i386/x86-64-movd.d | 44 +
gas/testsuite/gas/i386/x86-64-movd.s | 39 +
gas/testsuite/gas/i386/x86-64-movdir-intel.d | 18 +
gas/testsuite/gas/i386/x86-64-movdir.d | 18 +
gas/testsuite/gas/i386/x86-64-movdir.s | 13 +
gas/testsuite/gas/i386/x86-64-movdir64b-reg.l | 5 +
gas/testsuite/gas/i386/x86-64-movdir64b-reg.s | 11 +
gas/testsuite/gas/i386/x86-64-mpx-add-bnd-prefix.d | 7 +-
gas/testsuite/gas/i386/x86-64-mpx-add-bnd-prefix.e | 3 +
gas/testsuite/gas/i386/x86-64-mpx-add-bnd-prefix.s | 3 +
gas/testsuite/gas/i386/x86-64-mpx-branch-1.d | 6 +-
gas/testsuite/gas/i386/x86-64-mpx-branch-2.d | 6 +-
gas/testsuite/gas/i386/x86-64-mpx-inval-2.l | 53 +-
gas/testsuite/gas/i386/x86-64-mpx.d | 5 +
gas/testsuite/gas/i386/x86-64-mpx.s | 19 +
gas/testsuite/gas/i386/x86-64-nop-1.d | 49 +
gas/testsuite/gas/i386/x86-64-nop-2.d | 79 +
gas/testsuite/gas/i386/x86-64-nop-3.d | 21 +
gas/testsuite/gas/i386/x86-64-nop-4.d | 24 +
gas/testsuite/gas/i386/x86-64-nop-5.d | 27 +
gas/testsuite/gas/i386/x86-64-nop-6.d | 18 +
gas/testsuite/gas/i386/x86-64-nops-1-core2.d | 19 +-
gas/testsuite/gas/i386/x86-64-nops-1-g64.d | 19 +-
gas/testsuite/gas/i386/x86-64-nops-1-k8.d | 19 +-
gas/testsuite/gas/i386/x86-64-nops-1-pentium.d | 120 +-
gas/testsuite/gas/i386/x86-64-nops-1.d | 19 +-
gas/testsuite/gas/i386/x86-64-nops-2.d | 23 +-
gas/testsuite/gas/i386/x86-64-nops-3.d | 11 +-
gas/testsuite/gas/i386/x86-64-nops-4-core2.d | 83 +-
gas/testsuite/gas/i386/x86-64-nops-4-k8.d | 83 +-
gas/testsuite/gas/i386/x86-64-nops-4.d | 83 +-
gas/testsuite/gas/i386/x86-64-nops-5-k8.d | 44 +-
gas/testsuite/gas/i386/x86-64-nops-5.d | 44 +-
gas/testsuite/gas/i386/x86-64-nops-7.d | 120 +
gas/testsuite/gas/i386/x86-64-nops.d | 4 +-
gas/testsuite/gas/i386/x86-64-nops.s | 4 +-
gas/testsuite/gas/i386/x86-64-notrack-intel.d | 74 +
gas/testsuite/gas/i386/x86-64-notrack.d | 73 +
gas/testsuite/gas/i386/x86-64-notrack.s | 97 +
gas/testsuite/gas/i386/x86-64-notrackbad.l | 31 +
gas/testsuite/gas/i386/x86-64-notrackbad.s | 16 +
gas/testsuite/gas/i386/x86-64-opcode.d | 13 +-
gas/testsuite/gas/i386/x86-64-opcode.s | 9 +
gas/testsuite/gas/i386/x86-64-optimize-1.d | 55 +
gas/testsuite/gas/i386/x86-64-optimize-1.s | 49 +
gas/testsuite/gas/i386/x86-64-optimize-2.d | 109 +
gas/testsuite/gas/i386/x86-64-optimize-2.s | 116 +
gas/testsuite/gas/i386/x86-64-optimize-3.d | 27 +
gas/testsuite/gas/i386/x86-64-optimize-3.s | 21 +
gas/testsuite/gas/i386/x86-64-optimize-4.d | 12 +
gas/testsuite/gas/i386/x86-64-optimize-4.s | 6 +
gas/testsuite/gas/i386/x86-64-optimize-5.d | 111 +
gas/testsuite/gas/i386/x86-64-optimize-5.s | 6 +
gas/testsuite/gas/i386/x86-64-optimize-6.d | 111 +
gas/testsuite/gas/i386/x86-64-optimize-6.s | 8 +
gas/testsuite/gas/i386/x86-64-pconfig-intel.d | 11 +
gas/testsuite/gas/i386/x86-64-pconfig.d | 11 +
gas/testsuite/gas/i386/x86-64-pconfig.s | 5 +
gas/testsuite/gas/i386/x86-64-property-1.d | 9 +
gas/testsuite/gas/i386/x86-64-pseudos.d | 296 +-
gas/testsuite/gas/i386/x86-64-pseudos.s | 300 +
gas/testsuite/gas/i386/x86-64-reg-bad.l | 21 +
gas/testsuite/gas/i386/x86-64-reg-bad.s | 11 +
gas/testsuite/gas/i386/x86-64-reg-intel.d | 8 +
gas/testsuite/gas/i386/x86-64-reg.d | 8 +
gas/testsuite/gas/i386/x86-64-reg.s | 9 +
gas/testsuite/gas/i386/x86-64-relax-2.d | 10 +-
gas/testsuite/gas/i386/x86-64-relax-3.d | 8 +-
gas/testsuite/gas/i386/x86-64-se1.d | 1 +
gas/testsuite/gas/i386/x86-64-se1.s | 1 +
gas/testsuite/gas/i386/x86-64-simd-suffix.d | 16 +-
gas/testsuite/gas/i386/x86-64-size-1.d | 1 +
gas/testsuite/gas/i386/x86-64-size-3.d | 1 +
gas/testsuite/gas/i386/x86-64-size-5.d | 1 +
gas/testsuite/gas/i386/x86-64-specific-reg.l | 90 +-
gas/testsuite/gas/i386/x86-64-sse-check-error.l | 18 +
gas/testsuite/gas/i386/x86-64-sse-check-none.d | 16 +-
gas/testsuite/gas/i386/x86-64-sse-check-warn.d | 16 +-
gas/testsuite/gas/i386/x86-64-sse-check.d | 14 +-
gas/testsuite/gas/i386/x86-64-sse-noavx.d | 4 +-
gas/testsuite/gas/i386/x86-64-sse-noavx.s | 2 +
gas/testsuite/gas/i386/x86-64-sse3.d | 2 +-
gas/testsuite/gas/i386/x86-64-unwind.d | 1 +
gas/testsuite/gas/i386/x86-64-vaes-intel.d | 30 +
gas/testsuite/gas/i386/x86-64-vaes.d | 29 +
gas/testsuite/gas/i386/x86-64-vaes.s | 30 +
gas/testsuite/gas/i386/x86-64-vex-lig-2.d | 78 +
gas/testsuite/gas/i386/x86-64-vex-lig-2.s | 89 +
.../gas/i386/x86-64-vgather-check-error.l | 1 +
gas/testsuite/gas/i386/x86-64-vgather-check-none.d | 2 +
gas/testsuite/gas/i386/x86-64-vgather-check-warn.d | 4 +-
gas/testsuite/gas/i386/x86-64-vgather-check-warn.e | 1 +
gas/testsuite/gas/i386/x86-64-vgather-check.d | 2 +
gas/testsuite/gas/i386/x86-64-vgather-check.s | 2 +
gas/testsuite/gas/i386/x86-64-vpclmulqdq-intel.d | 18 +
gas/testsuite/gas/i386/x86-64-vpclmulqdq.d | 18 +
gas/testsuite/gas/i386/x86-64-vpclmulqdq.s | 13 +
gas/testsuite/gas/i386/x86-64-waitpkg-intel.d | 23 +
gas/testsuite/gas/i386/x86-64-waitpkg.d | 23 +
gas/testsuite/gas/i386/x86-64-waitpkg.s | 15 +
gas/testsuite/gas/i386/x86-64-wbnoinvd-intel.d | 11 +
gas/testsuite/gas/i386/x86-64-wbnoinvd.d | 11 +
gas/testsuite/gas/i386/x86-64-wbnoinvd.s | 5 +
gas/testsuite/gas/i386/x86-64-xop.d | 1200 +-
gas/testsuite/gas/i386/xmmhi32.d | 51 +
gas/testsuite/gas/i386/xmmhi32.s | 53 +
gas/testsuite/gas/i386/xmmhi64.d | 12 +
gas/testsuite/gas/i386/xmmhi64.s | 7 +
gas/testsuite/gas/i386/xmmword.l | 111 +
gas/testsuite/gas/i386/xmmword.s | 142 +
gas/testsuite/gas/i386/xop.d | 1184 +-
gas/testsuite/gas/i386/xop32reg.d | 4 +-
gas/testsuite/gas/i386/xsave-intel.d | 12 +
gas/testsuite/gas/i386/xsave.d | 12 +
gas/testsuite/gas/i386/xsave.s | 25 +
gas/testsuite/gas/i860/README.i860 | 39 -
gas/testsuite/gas/i860/bitwise.d | 141 -
gas/testsuite/gas/i860/bitwise.s | 150 -
gas/testsuite/gas/i860/branch.d | 81 -
gas/testsuite/gas/i860/branch.s | 85 -
gas/testsuite/gas/i860/bte.d | 62 -
gas/testsuite/gas/i860/bte.s | 55 -
gas/testsuite/gas/i860/dir-align01.d | 17 -
gas/testsuite/gas/i860/dir-align01.s | 11 -
gas/testsuite/gas/i860/dir-intel01.d | 19 -
gas/testsuite/gas/i860/dir-intel01.s | 19 -
gas/testsuite/gas/i860/dir-intel02.d | 15 -
gas/testsuite/gas/i860/dir-intel02.s | 13 -
gas/testsuite/gas/i860/dir-intel03-err.l | 5 -
gas/testsuite/gas/i860/dir-intel03-err.s | 14 -
gas/testsuite/gas/i860/dual01.d | 21 -
gas/testsuite/gas/i860/dual01.s | 17 -
gas/testsuite/gas/i860/dual02-err.l | 2 -
gas/testsuite/gas/i860/dual02-err.s | 9 -
gas/testsuite/gas/i860/dual03.d | 53 -
gas/testsuite/gas/i860/dual03.s | 46 -
gas/testsuite/gas/i860/fldst01.d | 73 -
gas/testsuite/gas/i860/fldst01.s | 75 -
gas/testsuite/gas/i860/fldst02.d | 73 -
gas/testsuite/gas/i860/fldst02.s | 75 -
gas/testsuite/gas/i860/fldst03.d | 73 -
gas/testsuite/gas/i860/fldst03.s | 75 -
gas/testsuite/gas/i860/fldst04.d | 73 -
gas/testsuite/gas/i860/fldst04.s | 75 -
gas/testsuite/gas/i860/fldst05.d | 73 -
gas/testsuite/gas/i860/fldst05.s | 75 -
gas/testsuite/gas/i860/fldst06.d | 73 -
gas/testsuite/gas/i860/fldst06.s | 75 -
gas/testsuite/gas/i860/fldst07.d | 73 -
gas/testsuite/gas/i860/fldst07.s | 75 -
gas/testsuite/gas/i860/fldst08.d | 73 -
gas/testsuite/gas/i860/fldst08.s | 75 -
gas/testsuite/gas/i860/float01.d | 69 -
gas/testsuite/gas/i860/float01.s | 84 -
gas/testsuite/gas/i860/float02.d | 39 -
gas/testsuite/gas/i860/float02.s | 42 -
gas/testsuite/gas/i860/float03.d | 51 -
gas/testsuite/gas/i860/float03.s | 64 -
gas/testsuite/gas/i860/float04.d | 39 -
gas/testsuite/gas/i860/float04.s | 49 -
gas/testsuite/gas/i860/form.d | 63 -
gas/testsuite/gas/i860/form.s | 66 -
gas/testsuite/gas/i860/i860.exp | 61 -
gas/testsuite/gas/i860/iarith.d | 97 -
gas/testsuite/gas/i860/iarith.s | 102 -
gas/testsuite/gas/i860/ldst01.d | 39 -
gas/testsuite/gas/i860/ldst01.s | 35 -
gas/testsuite/gas/i860/ldst02.d | 39 -
gas/testsuite/gas/i860/ldst02.s | 35 -
gas/testsuite/gas/i860/ldst03.d | 43 -
gas/testsuite/gas/i860/ldst03.s | 39 -
gas/testsuite/gas/i860/ldst04.d | 24 -
gas/testsuite/gas/i860/ldst04.s | 19 -
gas/testsuite/gas/i860/ldst05.d | 24 -
gas/testsuite/gas/i860/ldst05.s | 19 -
gas/testsuite/gas/i860/ldst06.d | 28 -
gas/testsuite/gas/i860/ldst06.s | 22 -
gas/testsuite/gas/i860/pfam.d | 153 -
gas/testsuite/gas/i860/pfam.s | 182 -
gas/testsuite/gas/i860/pfmam.d | 153 -
gas/testsuite/gas/i860/pfmam.s | 182 -
gas/testsuite/gas/i860/pfmsm.d | 153 -
gas/testsuite/gas/i860/pfmsm.s | 182 -
gas/testsuite/gas/i860/pfsm.d | 153 -
gas/testsuite/gas/i860/pfsm.s | 182 -
gas/testsuite/gas/i860/pseudo-ops01.d | 14 -
gas/testsuite/gas/i860/pseudo-ops01.s | 10 -
gas/testsuite/gas/i860/regress01.d | 21 -
gas/testsuite/gas/i860/regress01.s | 19 -
gas/testsuite/gas/i860/shift.d | 86 -
gas/testsuite/gas/i860/shift.s | 90 -
gas/testsuite/gas/i860/simd.d | 105 -
gas/testsuite/gas/i860/simd.s | 119 -
gas/testsuite/gas/i860/system.d | 72 -
gas/testsuite/gas/i860/system.s | 76 -
gas/testsuite/gas/i860/xp.d | 241 -
gas/testsuite/gas/i860/xp.s | 266 -
gas/testsuite/gas/ia64/group-1.d | 2 +-
gas/testsuite/gas/ia64/group-2.d | 19 +-
gas/testsuite/gas/ia64/ia64.exp | 2 +-
gas/testsuite/gas/ia64/pr13167.d | 12 +-
gas/testsuite/gas/ia64/xdata.d | 2 +-
gas/testsuite/gas/ieee-fp/x930509a.exp | 2 +-
gas/testsuite/gas/iq2000/allinsn.exp | 2 +-
gas/testsuite/gas/iq2000/load-hazards.exp | 2 +-
gas/testsuite/gas/iq2000/odd-ldw.exp | 2 +-
gas/testsuite/gas/iq2000/odd-sdw.exp | 2 +-
gas/testsuite/gas/iq2000/yield.exp | 2 +-
gas/testsuite/gas/lm32/all.exp | 2 +-
gas/testsuite/gas/lm32/csr.d | 2 +-
gas/testsuite/gas/lm32/insn.d | 2 +-
gas/testsuite/gas/lns/lns-big-delta.d | 4 +-
gas/testsuite/gas/lns/lns-common-1-alt.d | 16 +-
gas/testsuite/gas/lns/lns-duplicate.d | 2 +-
gas/testsuite/gas/lns/lns.exp | 10 +-
gas/testsuite/gas/m32r/allinsn.exp | 2 +-
gas/testsuite/gas/m32r/error.exp | 2 +-
gas/testsuite/gas/m32r/m32r2.exp | 2 +-
gas/testsuite/gas/m32r/m32rx.exp | 2 +-
gas/testsuite/gas/m32r/pic.exp | 2 +-
gas/testsuite/gas/m32r/rel32.exp | 2 +-
gas/testsuite/gas/m68hc11/9s12x-exg-sex-tfr.d | 2 +-
gas/testsuite/gas/m68hc11/9s12x-mov.d | 2 +-
gas/testsuite/gas/m68hc11/hexprefix.d | 2 +-
gas/testsuite/gas/m68hc11/insns9s12x.d | 2 +-
gas/testsuite/gas/m68hc11/insns9s12xg.d | 2 +-
gas/testsuite/gas/m68hc11/m68hc11.exp | 2 +-
gas/testsuite/gas/m68k-coff/gas.exp | 31 -
gas/testsuite/gas/m68k-coff/p2389.s | 19 -
gas/testsuite/gas/m68k-coff/p2389a.s | 3 -
gas/testsuite/gas/m68k-coff/p2430.s | 6 -
gas/testsuite/gas/m68k-coff/p2430a.s | 4 -
gas/testsuite/gas/m68k-coff/t1.s | 36 -
gas/testsuite/gas/m68k/all.exp | 18 +-
gas/testsuite/gas/m68k/br-isaa.d | 1 -
gas/testsuite/gas/m68k/br-isab.d | 1 -
gas/testsuite/gas/m68k/br-isac.d | 1 -
gas/testsuite/gas/m68k/p3041.d | 36 -
gas/testsuite/gas/m68k/p3041.s | 27 -
gas/testsuite/gas/m68k/p3041data.d | 28 -
gas/testsuite/gas/m68k/p3041data.s | 27 -
gas/testsuite/gas/m68k/p3041pcrel.d | 38 -
gas/testsuite/gas/m68k/p3041pcrel.s | 28 -
gas/testsuite/gas/m68k/t2.d | 8 -
gas/testsuite/gas/mach-o/mach-o.exp | 2 +-
gas/testsuite/gas/mach-o/sections-3.d | 2 +-
gas/testsuite/gas/macros/end.l | 1 +
gas/testsuite/gas/macros/end.s | 3 +
gas/testsuite/gas/macros/irp.d | 2 +-
gas/testsuite/gas/macros/macros.exp | 2 +-
gas/testsuite/gas/macros/repeat.d | 2 +-
gas/testsuite/gas/macros/rept.d | 2 +-
gas/testsuite/gas/macros/semi.d | 2 +-
gas/testsuite/gas/macros/test2.d | 2 +-
gas/testsuite/gas/macros/test3.d | 2 +-
gas/testsuite/gas/macros/vararg.d | 2 +-
gas/testsuite/gas/mcore/allinsn.exp | 2 +-
gas/testsuite/gas/mep/allinsn.exp | 2 +-
gas/testsuite/gas/mep/complex-relocs.exp | 2 +-
gas/testsuite/gas/mep/dj1.be.d | 2 +-
gas/testsuite/gas/mep/dj1.le.d | 2 +-
gas/testsuite/gas/metag/metag.exp | 2 +-
gas/testsuite/gas/microblaze/allinsn.exp | 2 +-
gas/testsuite/gas/microblaze/endian.exp | 2 +-
gas/testsuite/gas/microblaze/reloc_sym.exp | 2 +-
gas/testsuite/gas/microblaze/special_reg.exp | 2 +-
gas/testsuite/gas/mips/addiu-error.d | 3 +
gas/testsuite/gas/mips/addiu-error.l | 8 +
gas/testsuite/gas/mips/addiu-error.s | 11 +
gas/testsuite/gas/mips/aent-2.d | 2 +-
gas/testsuite/gas/mips/aent-mdebug-2.d | 2 +-
gas/testsuite/gas/mips/ase-errors-1.l | 8 +
gas/testsuite/gas/mips/ase-errors-1.s | 17 +
gas/testsuite/gas/mips/ase-errors-2.l | 8 +
gas/testsuite/gas/mips/ase-errors-2.s | 19 +
gas/testsuite/gas/mips/attr-gnu-4-0.d | 2 +-
gas/testsuite/gas/mips/attr-gnu-4-1.d | 2 +-
gas/testsuite/gas/mips/attr-gnu-4-2.d | 2 +-
gas/testsuite/gas/mips/attr-gnu-4-3.d | 2 +-
gas/testsuite/gas/mips/attr-gnu-4-5.d | 4 +-
gas/testsuite/gas/mips/attr-gnu-4-6.d | 4 +-
gas/testsuite/gas/mips/attr-gnu-4-7.d | 4 +-
gas/testsuite/gas/mips/attr-none-double.d | 2 +-
.../gas/mips/attr-none-o32-fp64-nooddspreg.d | 4 +-
gas/testsuite/gas/mips/attr-none-o32-fp64.d | 4 +-
gas/testsuite/gas/mips/attr-none-o32-fpxx.d | 4 +-
gas/testsuite/gas/mips/attr-none-single-float.d | 2 +-
gas/testsuite/gas/mips/attr-none-soft-float.d | 2 +-
.../gas/mips/branch-addend-micromips-n32.d | 23 +
.../gas/mips/branch-addend-micromips-n64.d | 27 +
gas/testsuite/gas/mips/branch-addend-micromips.d | 22 +
gas/testsuite/gas/mips/branch-addend-micromips.s | 31 +
gas/testsuite/gas/mips/branch-extern-3.d | 2 +-
gas/testsuite/gas/mips/branch-extern-4.d | 2 +-
gas/testsuite/gas/mips/branch-local-2.d | 2 +-
gas/testsuite/gas/mips/branch-local-3.d | 2 +-
gas/testsuite/gas/mips/branch-local-5.d | 3 +
gas/testsuite/gas/mips/branch-local-5.l | 4 +
gas/testsuite/gas/mips/branch-local-5.s | 31 +
gas/testsuite/gas/mips/branch-local-6.d | 3 +
gas/testsuite/gas/mips/branch-local-6.l | 9 +
gas/testsuite/gas/mips/branch-local-6.s | 41 +
gas/testsuite/gas/mips/branch-local-7.d | 20 +
gas/testsuite/gas/mips/branch-local-7.s | 27 +
gas/testsuite/gas/mips/branch-local-ignore-5.d | 23 +
gas/testsuite/gas/mips/branch-local-ignore-6.d | 41 +
gas/testsuite/gas/mips/branch-local-ignore-n32-5.d | 5 +
gas/testsuite/gas/mips/branch-local-ignore-n32-6.d | 41 +
gas/testsuite/gas/mips/branch-local-ignore-n64-5.d | 5 +
gas/testsuite/gas/mips/branch-local-ignore-n64-6.d | 57 +
gas/testsuite/gas/mips/branch-local-n32-2.d | 2 +-
gas/testsuite/gas/mips/branch-local-n32-2.l | 5 -
gas/testsuite/gas/mips/branch-local-n32-3.d | 2 +-
gas/testsuite/gas/mips/branch-local-n32-3.l | 3 -
gas/testsuite/gas/mips/branch-local-n32-5.d | 4 +
gas/testsuite/gas/mips/branch-local-n32-6.d | 4 +
gas/testsuite/gas/mips/branch-local-n32-7.d | 20 +
gas/testsuite/gas/mips/branch-local-n64-2.d | 2 +-
gas/testsuite/gas/mips/branch-local-n64-2.l | 5 -
gas/testsuite/gas/mips/branch-local-n64-3.d | 2 +-
gas/testsuite/gas/mips/branch-local-n64-3.l | 3 -
gas/testsuite/gas/mips/branch-local-n64-5.d | 4 +
gas/testsuite/gas/mips/branch-local-n64-6.d | 4 +
gas/testsuite/gas/mips/branch-local-n64-7.d | 22 +
gas/testsuite/gas/mips/branch-section-3.d | 2 +-
gas/testsuite/gas/mips/branch-section-4.d | 2 +-
gas/testsuite/gas/mips/branch-weak-3.d | 2 +-
gas/testsuite/gas/mips/branch-weak-4.d | 2 +-
gas/testsuite/gas/mips/break-error.d | 3 +
gas/testsuite/gas/mips/break-error.l | 8 +
gas/testsuite/gas/mips/break-error.s | 11 +
gas/testsuite/gas/mips/compact-eh-eb-2.d | 2 +-
gas/testsuite/gas/mips/compact-eh-eb-5.d | 2 +-
gas/testsuite/gas/mips/compact-eh-el-2.d | 2 +-
gas/testsuite/gas/mips/compact-eh-el-5.d | 2 +-
gas/testsuite/gas/mips/crc-err.d | 3 +
gas/testsuite/gas/mips/crc-err.l | 19 +
gas/testsuite/gas/mips/crc-err.s | 32 +
gas/testsuite/gas/mips/crc.d | 21 +
gas/testsuite/gas/mips/crc.s | 12 +
gas/testsuite/gas/mips/crc64-err.d | 3 +
gas/testsuite/gas/mips/crc64-err.l | 7 +
gas/testsuite/gas/mips/crc64-err.s | 12 +
gas/testsuite/gas/mips/crc64.d | 17 +
gas/testsuite/gas/mips/crc64.s | 8 +
gas/testsuite/gas/mips/elf-rel27.d | 2 +-
.../gas/mips/elf-rel28-lldscd-micromips-n32.d | 138 +
.../gas/mips/elf-rel28-lldscd-micromips-n64.d | 222 +
gas/testsuite/gas/mips/elf-rel28-lldscd-n32.d | 96 +
gas/testsuite/gas/mips/elf-rel28-lldscd-n64.d | 180 +
gas/testsuite/gas/mips/elf-rel28-micromips-n32.d | 96 +
gas/testsuite/gas/mips/elf-rel28-micromips-n64.d | 180 +
gas/testsuite/gas/mips/elf-rel28.s | 12 +
gas/testsuite/gas/mips/elf-rel8-mips16.d | 8 +-
gas/testsuite/gas/mips/elf-rel8-mips16.s | 7 +
gas/testsuite/gas/mips/elf-rel8.d | 6 +
gas/testsuite/gas/mips/elf-rel8.s | 6 +
gas/testsuite/gas/mips/elf-rel9-mips16e2.d | 69 +
gas/testsuite/gas/mips/elf-rel9-mips16e2.s | 62 +
gas/testsuite/gas/mips/elf_ase_mips16e2-2.d | 21 +
gas/testsuite/gas/mips/elf_ase_mips16e2.d | 5 +
gas/testsuite/gas/mips/elf_mach_5900.d | 22 +
gas/testsuite/gas/mips/elf_mach_interaptiv-mr2.d | 24 +
gas/testsuite/gas/mips/ginv-err.d | 3 +
gas/testsuite/gas/mips/ginv-err.l | 4 +
gas/testsuite/gas/mips/ginv-err.s | 5 +
gas/testsuite/gas/mips/ginv.d | 18 +
gas/testsuite/gas/mips/ginv.s | 9 +
.../gas/mips/interaptiv-mr2@isa-override-1.d | 6 +
.../gas/mips/interaptiv-mr2@isa-override-1.l | 5 +
.../gas/mips/interaptiv-mr2@isa-override-2.d | 4 +
.../gas/mips/interaptiv-mr2@isa-override-2.l | 8 +
gas/testsuite/gas/mips/interaptiv-mr2@mcu.d | 110 +
gas/testsuite/gas/mips/interaptiv-mr2@save-sub.d | 44 +
gas/testsuite/gas/mips/interaptiv-mr2@save.d | 44 +
gas/testsuite/gas/mips/isa-override-2.d | 4 +
gas/testsuite/gas/mips/jal-svr4pic-local.d | 2 +-
gas/testsuite/gas/mips/loc-swap-2.d | 20 +-
gas/testsuite/gas/mips/loc-swap-3.d | 4 +-
gas/testsuite/gas/mips/loc-swap.d | 20 +-
gas/testsuite/gas/mips/loongson-2e.d | 1 -
gas/testsuite/gas/mips/loongson-2e.s | 5 +-
gas/testsuite/gas/mips/loongson-2f-2.d | 3 +-
gas/testsuite/gas/mips/loongson-2f-3.d | 3 +-
gas/testsuite/gas/mips/loongson-2f-3.s | 2 +-
gas/testsuite/gas/mips/loongson-2f-mmi.d | 106 +
gas/testsuite/gas/mips/loongson-2f-mmi.s | 86 +
gas/testsuite/gas/mips/loongson-2f.d | 87 +-
gas/testsuite/gas/mips/loongson-2f.s | 87 +-
gas/testsuite/gas/mips/loongson-3a-2.d | 7 +-
gas/testsuite/gas/mips/loongson-3a-2.s | 124 +-
gas/testsuite/gas/mips/loongson-3a-mmi.d | 108 +
gas/testsuite/gas/mips/loongson-3a-mmi.s | 86 +
gas/testsuite/gas/mips/loongson-3a.d | 136 +-
gas/testsuite/gas/mips/loongson-3a.s | 124 +-
gas/testsuite/gas/mips/loongson-cam.d | 27 +
gas/testsuite/gas/mips/loongson-cam.s | 7 +
gas/testsuite/gas/mips/loongson-ext2.d | 28 +
gas/testsuite/gas/mips/loongson-ext2.s | 7 +
gas/testsuite/gas/mips/lui-1.d | 3 +
gas/testsuite/gas/mips/lui-1.l | 2 +-
gas/testsuite/gas/mips/lui-2.d | 3 +
gas/testsuite/gas/mips/macro-warn-1-n32.d | 2 +-
gas/testsuite/gas/mips/macro-warn-1.d | 2 +-
gas/testsuite/gas/mips/macro-warn-2.d | 2 +-
gas/testsuite/gas/mips/macro-warn-3.d | 2 +-
gas/testsuite/gas/mips/macro-warn-4.d | 2 +-
gas/testsuite/gas/mips/micromips-branch-delay.d | 2 +-
.../gas/mips/micromips-branch-relax-insn32-pic.d | 2 +-
.../gas/mips/micromips-branch-relax-insn32.d | 2 +-
.../gas/mips/micromips-branch-relax-pic.d | 2 +-
gas/testsuite/gas/mips/micromips-branch-relax.d | 2 +-
gas/testsuite/gas/mips/micromips-compact.d | 2 +-
gas/testsuite/gas/mips/micromips-insn32.d | 2 +-
gas/testsuite/gas/mips/micromips-noinsn32.d | 2 +-
gas/testsuite/gas/mips/micromips-size-1.d | 2 +-
gas/testsuite/gas/mips/micromips-trap.d | 2 +-
.../gas/mips/micromips-warn-branch-delay.d | 2 +-
gas/testsuite/gas/mips/micromips.d | 2 +-
gas/testsuite/gas/mips/micromips@addiu-error.d | 4 +
gas/testsuite/gas/mips/micromips@addiu-error.l | 8 +
.../gas/mips/micromips@jal-svr4pic-local.d | 2 +-
gas/testsuite/gas/mips/micromips@loc-swap-2.d | 20 +-
gas/testsuite/gas/mips/micromips@loc-swap.d | 18 +-
gas/testsuite/gas/mips/micromips@mips32r2-sync-1.d | 29 +
gas/testsuite/gas/mips/micromips@mips5-fp.d | 2 +-
gas/testsuite/gas/mips/micromips@msa-relax.d | 2 +-
gas/testsuite/gas/mips/micromips@r5.d | 9 +
gas/testsuite/gas/mips/micromips@relax-at.d | 2 +-
gas/testsuite/gas/mips/micromips@relax-offset.d | 26 +
gas/testsuite/gas/mips/micromips@relax-swap3.d | 1 -
gas/testsuite/gas/mips/micromips@relax.d | 2 +-
.../gas/mips/micromips@stabs-symbol-type.d | 11 +
gas/testsuite/gas/mips/micromips@xpa.d | 25 +
gas/testsuite/gas/mips/mips-gp32-fp64-pic.d | 2 +-
gas/testsuite/gas/mips/mips-gp32-fp64.d | 2 +-
gas/testsuite/gas/mips/mips-gp64-fp32-pic.d | 2 +-
gas/testsuite/gas/mips/mips-gp64-fp32.d | 2 +-
gas/testsuite/gas/mips/mips-gp64-fp64.d | 2 +-
gas/testsuite/gas/mips/mips.exp | 290 +-
gas/testsuite/gas/mips/mips16-32@mips16-asmacro.d | 3 +-
gas/testsuite/gas/mips/mips16-32@mips16-asmacro.s | 2 +
gas/testsuite/gas/mips/mips16-32@mips16-insn-e.d | 2 +-
gas/testsuite/gas/mips/mips16-32@mips16-insn-e.l | 14 +-
gas/testsuite/gas/mips/mips16-32@mips16-insn-t.d | 2 +-
gas/testsuite/gas/mips/mips16-32@mips16-macro-e.d | 2 +-
gas/testsuite/gas/mips/mips16-32@mips16-macro-t.d | 2 +-
gas/testsuite/gas/mips/mips16-32@mips16-macro.d | 2 +-
gas/testsuite/gas/mips/mips16-32@mips16-sub.d | 14 +-
gas/testsuite/gas/mips/mips16-32@mips16e-64-sub.d | 2 +-
gas/testsuite/gas/mips/mips16-32@mips16e-sub.d | 2 +-
gas/testsuite/gas/mips/mips16-64.d | 14 +-
gas/testsuite/gas/mips/mips16-64@mips16-64.d | 14 +-
gas/testsuite/gas/mips/mips16-64@mips16-asmacro.d | 3 +-
gas/testsuite/gas/mips/mips16-64@mips16-asmacro.s | 2 +
gas/testsuite/gas/mips/mips16-64@mips16-insn-e.d | 2 +-
gas/testsuite/gas/mips/mips16-64@mips16-insn-e.l | 22 +-
gas/testsuite/gas/mips/mips16-64@mips16-insn-t.d | 2 +-
gas/testsuite/gas/mips/mips16-64@mips16-macro.d | 16 +-
gas/testsuite/gas/mips/mips16-64@mips16.d | 14 +-
gas/testsuite/gas/mips/mips16-64@mips16e-64-sub.d | 2 +-
gas/testsuite/gas/mips/mips16-64@mips16e-sub.d | 2 +-
gas/testsuite/gas/mips/mips16-absolute-reloc-2.d | 2 +-
gas/testsuite/gas/mips/mips16-absolute-reloc-3.d | 2 +-
gas/testsuite/gas/mips/mips16-asmacro.s | 1 -
gas/testsuite/gas/mips/mips16-branch-absolute-1.d | 20 +
gas/testsuite/gas/mips/mips16-branch-absolute-1.s | 22 +
gas/testsuite/gas/mips/mips16-branch-absolute-2.d | 4 +
gas/testsuite/gas/mips/mips16-branch-absolute-2.s | 20 +
.../gas/mips/mips16-branch-absolute-addend-1.d | 4 +
.../gas/mips/mips16-branch-absolute-addend-1.s | 22 +
.../gas/mips/mips16-branch-absolute-addend-n32-1.d | 5 +
.../gas/mips/mips16-branch-absolute-addend-n64-1.d | 5 +
.../gas/mips/mips16-branch-absolute-n32-1.d | 5 +
.../gas/mips/mips16-branch-absolute-n32-2.d | 5 +
.../gas/mips/mips16-branch-absolute-n64-1.d | 5 +
.../gas/mips/mips16-branch-absolute-n64-2.d | 5 +
gas/testsuite/gas/mips/mips16-branch-addend-4.d | 30 +
gas/testsuite/gas/mips/mips16-branch-addend-4.s | 24 +
gas/testsuite/gas/mips/mips16-branch-addend-5.d | 4 +
gas/testsuite/gas/mips/mips16-branch-addend-5.l | 11 +
gas/testsuite/gas/mips/mips16-branch-addend-5.s | 24 +
gas/testsuite/gas/mips/mips16-branch-reloc-4.d | 24 +
gas/testsuite/gas/mips/mips16-branch-reloc-4.s | 32 +
gas/testsuite/gas/mips/mips16-branch-reloc-5.d | 24 +
gas/testsuite/gas/mips/mips16-branch-reloc-5.s | 32 +
.../gas/mips/mips16-branch-unextended-1.d | 2 +-
.../gas/mips/mips16-branch-unextended-2.d | 2 +-
gas/testsuite/gas/mips/mips16-dwarf2-n32.d | 2 +-
gas/testsuite/gas/mips/mips16-dwarf2.d | 2 +-
gas/testsuite/gas/mips/mips16-insn-e.d | 2 +-
gas/testsuite/gas/mips/mips16-insn-e.l | 22 +-
gas/testsuite/gas/mips/mips16-insn-t.d | 2 +-
gas/testsuite/gas/mips/mips16-intermix.d | 2 +-
gas/testsuite/gas/mips/mips16-jal-t.d | 2 +-
gas/testsuite/gas/mips/mips16-macro-e.d | 2 +-
gas/testsuite/gas/mips/mips16-macro-t.d | 2 +-
gas/testsuite/gas/mips/mips16-macro.d | 16 +-
gas/testsuite/gas/mips/mips16-macro.l | 12 -
gas/testsuite/gas/mips/mips16-pcrel-0.d | 47 +
gas/testsuite/gas/mips/mips16-pcrel-0.l | 5 +
gas/testsuite/gas/mips/mips16-pcrel-0.s | 39 +
gas/testsuite/gas/mips/mips16-pcrel-1.d | 47 +
gas/testsuite/gas/mips/mips16-pcrel-1.l | 5 +
gas/testsuite/gas/mips/mips16-pcrel-1.s | 50 +
gas/testsuite/gas/mips/mips16-pcrel-2.d | 5 +
gas/testsuite/gas/mips/mips16-pcrel-2.l | 5 +
gas/testsuite/gas/mips/mips16-pcrel-2.s | 43 +
gas/testsuite/gas/mips/mips16-pcrel-3.d | 3 +
gas/testsuite/gas/mips/mips16-pcrel-3.l | 7 +
gas/testsuite/gas/mips/mips16-pcrel-3.s | 29 +
gas/testsuite/gas/mips/mips16-pcrel-4.d | 3 +
gas/testsuite/gas/mips/mips16-pcrel-4.l | 15 +
gas/testsuite/gas/mips/mips16-pcrel-4.s | 52 +
gas/testsuite/gas/mips/mips16-pcrel-5.d | 3 +
gas/testsuite/gas/mips/mips16-pcrel-5.l | 15 +
gas/testsuite/gas/mips/mips16-pcrel-5.s | 54 +
gas/testsuite/gas/mips/mips16-pcrel-absolute-1.d | 4 +
gas/testsuite/gas/mips/mips16-pcrel-absolute-1.s | 18 +
gas/testsuite/gas/mips/mips16-pcrel-absolute-2.d | 16 +
gas/testsuite/gas/mips/mips16-pcrel-absolute-2.s | 18 +
gas/testsuite/gas/mips/mips16-pcrel-absolute-3.d | 4 +
gas/testsuite/gas/mips/mips16-pcrel-absolute-3.s | 18 +
gas/testsuite/gas/mips/mips16-pcrel-absolute-4.d | 34 +
gas/testsuite/gas/mips/mips16-pcrel-absolute-4.l | 9 +
gas/testsuite/gas/mips/mips16-pcrel-absolute-4.s | 24 +
gas/testsuite/gas/mips/mips16-pcrel-absolute-5.d | 4 +
gas/testsuite/gas/mips/mips16-pcrel-absolute-5.s | 24 +
gas/testsuite/gas/mips/mips16-pcrel-absolute-6.d | 34 +
gas/testsuite/gas/mips/mips16-pcrel-absolute-6.l | 9 +
gas/testsuite/gas/mips/mips16-pcrel-absolute-6.s | 24 +
gas/testsuite/gas/mips/mips16-pcrel-absolute-7.d | 4 +
gas/testsuite/gas/mips/mips16-pcrel-absolute-7.s | 24 +
.../gas/mips/mips16-pcrel-absolute-n32-4.d | 5 +
.../gas/mips/mips16-pcrel-absolute-n32-6.d | 5 +
.../gas/mips/mips16-pcrel-absolute-n64-4.d | 4 +
.../gas/mips/mips16-pcrel-absolute-n64-6.d | 4 +
.../gas/mips/mips16-pcrel-absolute-n64-sym32-4.d | 5 +
.../gas/mips/mips16-pcrel-absolute-n64-sym32-6.d | 5 +
.../gas/mips/mips16-pcrel-absolute-pic-4.d | 5 +
.../gas/mips/mips16-pcrel-absolute-pic-6.d | 5 +
.../gas/mips/mips16-pcrel-absolute-pic-n32-4.d | 5 +
.../gas/mips/mips16-pcrel-absolute-pic-n32-6.d | 5 +
.../gas/mips/mips16-pcrel-absolute-pic-n64-4.d | 4 +
.../gas/mips/mips16-pcrel-absolute-pic-n64-6.d | 4 +
.../mips/mips16-pcrel-absolute-pic-n64-sym32-4.d | 5 +
.../mips/mips16-pcrel-absolute-pic-n64-sym32-6.d | 5 +
gas/testsuite/gas/mips/mips16-pcrel-absolute.d | 15 +-
gas/testsuite/gas/mips/mips16-pcrel-absolute.l | 3 -
gas/testsuite/gas/mips/mips16-pcrel-addend-2.d | 20 +-
gas/testsuite/gas/mips/mips16-pcrel-addend-2.l | 3 -
gas/testsuite/gas/mips/mips16-pcrel-addend-3.d | 19 +-
gas/testsuite/gas/mips/mips16-pcrel-addend-3.l | 3 -
gas/testsuite/gas/mips/mips16-pcrel-addend-4.d | 13 +
gas/testsuite/gas/mips/mips16-pcrel-addend-4.s | 25 +
gas/testsuite/gas/mips/mips16-pcrel-addend-5.d | 13 +
gas/testsuite/gas/mips/mips16-pcrel-addend-5.s | 25 +
gas/testsuite/gas/mips/mips16-pcrel-addend-6.d | 21 +
gas/testsuite/gas/mips/mips16-pcrel-addend-6.s | 26 +
gas/testsuite/gas/mips/mips16-pcrel-addend-7.d | 20 +
gas/testsuite/gas/mips/mips16-pcrel-addend-7.s | 16 +
gas/testsuite/gas/mips/mips16-pcrel-addend-8.d | 50 +
gas/testsuite/gas/mips/mips16-pcrel-addend-8.l | 9 +
gas/testsuite/gas/mips/mips16-pcrel-addend-8.s | 22 +
gas/testsuite/gas/mips/mips16-pcrel-addend-9.d | 50 +
gas/testsuite/gas/mips/mips16-pcrel-addend-9.l | 9 +
gas/testsuite/gas/mips/mips16-pcrel-addend-9.s | 22 +
gas/testsuite/gas/mips/mips16-pcrel-addend-n32-8.d | 51 +
gas/testsuite/gas/mips/mips16-pcrel-addend-n32-9.d | 51 +
gas/testsuite/gas/mips/mips16-pcrel-addend-n64-8.d | 4 +
gas/testsuite/gas/mips/mips16-pcrel-addend-n64-9.d | 4 +
.../gas/mips/mips16-pcrel-addend-n64-sym32-8.d | 83 +
.../gas/mips/mips16-pcrel-addend-n64-sym32-9.d | 83 +
gas/testsuite/gas/mips/mips16-pcrel-addend-pic-8.d | 4 +
gas/testsuite/gas/mips/mips16-pcrel-addend-pic-9.d | 4 +
gas/testsuite/gas/mips/mips16-pcrel-delay-0.d | 35 +
gas/testsuite/gas/mips/mips16-pcrel-delay-0.l | 5 +
gas/testsuite/gas/mips/mips16-pcrel-delay-0.s | 36 +
gas/testsuite/gas/mips/mips16-pcrel-delay-1.d | 40 +
gas/testsuite/gas/mips/mips16-pcrel-delay-1.l | 5 +
gas/testsuite/gas/mips/mips16-pcrel-delay-1.s | 35 +
gas/testsuite/gas/mips/mips16-pcrel-n32-0.d | 48 +
gas/testsuite/gas/mips/mips16-pcrel-n32-1.d | 48 +
gas/testsuite/gas/mips/mips16-pcrel-n64-0.d | 4 +
gas/testsuite/gas/mips/mips16-pcrel-n64-1.d | 4 +
gas/testsuite/gas/mips/mips16-pcrel-n64-sym32-0.d | 64 +
gas/testsuite/gas/mips/mips16-pcrel-n64-sym32-1.d | 64 +
gas/testsuite/gas/mips/mips16-pcrel-pic-0.d | 4 +
gas/testsuite/gas/mips/mips16-pcrel-pic-1.d | 4 +
gas/testsuite/gas/mips/mips16-pcrel-reloc-2.d | 20 +-
gas/testsuite/gas/mips/mips16-pcrel-reloc-2.l | 3 -
gas/testsuite/gas/mips/mips16-pcrel-reloc-3.d | 19 +-
gas/testsuite/gas/mips/mips16-pcrel-reloc-3.l | 3 -
gas/testsuite/gas/mips/mips16-pcrel-reloc-4.d | 2 +-
gas/testsuite/gas/mips/mips16-pcrel-reloc-5.d | 2 +-
gas/testsuite/gas/mips/mips16-pcrel-reloc-6.d | 22 +-
gas/testsuite/gas/mips/mips16-pcrel-reloc-6.l | 3 -
gas/testsuite/gas/mips/mips16-pcrel-reloc-7.d | 21 +-
gas/testsuite/gas/mips/mips16-pcrel-reloc-7.l | 3 -
gas/testsuite/gas/mips/mips16-reg-error.d | 3 +
gas/testsuite/gas/mips/mips16-reg-error.l | 54 +
gas/testsuite/gas/mips/mips16-reg-error.s | 81 +
gas/testsuite/gas/mips/mips16-relax-unextended-1.d | 2 +-
gas/testsuite/gas/mips/mips16-relax-unextended-2.d | 2 +-
gas/testsuite/gas/mips/mips16-reloc-error.d | 3 +
gas/testsuite/gas/mips/mips16-reloc-error.l | 28 +
gas/testsuite/gas/mips/mips16-reloc-error.s | 52 +
gas/testsuite/gas/mips/mips16-sdrasp.d | 2 +-
gas/testsuite/gas/mips/mips16-sub.d | 14 +-
gas/testsuite/gas/mips/mips16-sub.s | 1 +
gas/testsuite/gas/mips/mips16.d | 14 +-
gas/testsuite/gas/mips/mips16@addiu-error.d | 4 +
gas/testsuite/gas/mips/mips16@addiu-error.l | 8 +
gas/testsuite/gas/mips/mips16@loc-swap-2.d | 20 +-
gas/testsuite/gas/mips/mips16@loc-swap.d | 20 +-
gas/testsuite/gas/mips/mips16@relax-swap3.d | 23 +-
gas/testsuite/gas/mips/mips16@relax-swap3.l | 3 -
gas/testsuite/gas/mips/mips16@save-sub.d | 65 +
gas/testsuite/gas/mips/mips16@stabs-symbol-type.d | 11 +
gas/testsuite/gas/mips/mips16e-32@mips16-insn-e.d | 2 +-
gas/testsuite/gas/mips/mips16e-32@mips16-insn-e.l | 14 +-
gas/testsuite/gas/mips/mips16e-32@mips16-insn-t.d | 2 +-
gas/testsuite/gas/mips/mips16e-32@mips16-macro-e.d | 2 +-
gas/testsuite/gas/mips/mips16e-32@mips16-macro-t.d | 2 +-
gas/testsuite/gas/mips/mips16e-32@mips16-macro.d | 2 +-
gas/testsuite/gas/mips/mips16e-32@mips16e-64-sub.d | 2 +-
gas/testsuite/gas/mips/mips16e-32@mips16e-64.d | 2 +-
gas/testsuite/gas/mips/mips16e-64-sub.d | 2 +-
gas/testsuite/gas/mips/mips16e-64-sub.s | 1 +
gas/testsuite/gas/mips/mips16e-save-err.s | 18 -
gas/testsuite/gas/mips/mips16e-save.d | 43 -
gas/testsuite/gas/mips/mips16e-save.s | 55 -
gas/testsuite/gas/mips/mips16e-sub.d | 2 +-
gas/testsuite/gas/mips/mips16e-sub.s | 1 +
gas/testsuite/gas/mips/mips16e2-32@mips16-insn-e.d | 4 +
gas/testsuite/gas/mips/mips16e2-32@mips16-insn-e.l | 131 +
gas/testsuite/gas/mips/mips16e2-32@mips16-insn-t.d | 4 +
gas/testsuite/gas/mips/mips16e2-32@mips16-insn-t.l | 43 +
.../gas/mips/mips16e2-32@mips16-macro-e.d | 4 +
.../gas/mips/mips16e2-32@mips16-macro-e.l | 56 +
.../gas/mips/mips16e2-32@mips16-macro-t.d | 4 +
.../gas/mips/mips16e2-32@mips16-macro-t.l | 56 +
gas/testsuite/gas/mips/mips16e2-32@mips16-macro.d | 5 +
gas/testsuite/gas/mips/mips16e2-32@mips16-macro.l | 12 +
gas/testsuite/gas/mips/mips16e2-32@mips16-sub.d | 5 +
.../gas/mips/mips16e2-32@mips16e-64-sub.d | 5 +
gas/testsuite/gas/mips/mips16e2-32@mips16e-64.d | 4 +
gas/testsuite/gas/mips/mips16e2-copy-err.d | 3 +
gas/testsuite/gas/mips/mips16e2-copy-err.l | 29 +
gas/testsuite/gas/mips/mips16e2-copy-err.s | 36 +
gas/testsuite/gas/mips/mips16e2-copy.d | 32 +
gas/testsuite/gas/mips/mips16e2-copy.s | 32 +
gas/testsuite/gas/mips/mips16e2-hilo-n32.d | 419 +
gas/testsuite/gas/mips/mips16e2-hilo.d | 419 +
gas/testsuite/gas/mips/mips16e2-hilo.s | 239 +
gas/testsuite/gas/mips/mips16e2-imm-error.d | 4 +
gas/testsuite/gas/mips/mips16e2-imm-error.l | 67 +
gas/testsuite/gas/mips/mips16e2-imm-error.s | 79 +
.../mips/mips16e2-interaptiv-mr2@mips16-asmacro.d | 15 +
.../mips/mips16e2-interaptiv-mr2@mips16-insn-e.d | 4 +
.../mips/mips16e2-interaptiv-mr2@mips16-insn-e.l | 131 +
.../mips/mips16e2-interaptiv-mr2@mips16-insn-t.d | 4 +
.../mips/mips16e2-interaptiv-mr2@mips16-insn-t.l | 43 +
.../mips/mips16e2-interaptiv-mr2@mips16-macro-e.d | 4 +
.../mips/mips16e2-interaptiv-mr2@mips16-macro-e.l | 56 +
.../mips/mips16e2-interaptiv-mr2@mips16-macro-t.d | 4 +
.../mips/mips16e2-interaptiv-mr2@mips16-macro-t.l | 56 +
.../mips/mips16e2-interaptiv-mr2@mips16-macro.d | 5 +
.../mips/mips16e2-interaptiv-mr2@mips16-macro.l | 12 +
.../gas/mips/mips16e2-interaptiv-mr2@mips16-sub.d | 6 +
.../gas/mips/mips16e2-interaptiv-mr2@mips16-sub.l | 4 +
.../mips/mips16e2-interaptiv-mr2@mips16e-64-sub.d | 6 +
.../mips/mips16e2-interaptiv-mr2@mips16e-64-sub.l | 4 +
.../gas/mips/mips16e2-interaptiv-mr2@mips16e-64.d | 4 +
.../gas/mips/mips16e2-interaptiv-mr2@mips16e-sub.d | 6 +
.../gas/mips/mips16e2-interaptiv-mr2@mips16e-sub.l | 4 +
.../mips/mips16e2-interaptiv-mr2@mips16e2-mt-sub.d | 5 +
gas/testsuite/gas/mips/mips16e2-lui.d | 22 +
gas/testsuite/gas/mips/mips16e2-lui.s | 18 +
gas/testsuite/gas/mips/mips16e2-mt-err.d | 3 +
gas/testsuite/gas/mips/mips16e2-mt-err.l | 3 +
gas/testsuite/gas/mips/mips16e2-mt-err.s | 14 +
gas/testsuite/gas/mips/mips16e2-mt-sub.d | 33 +
gas/testsuite/gas/mips/mips16e2-mt-sub.s | 4 +
gas/testsuite/gas/mips/mips16e2-mt.d | 21 +
gas/testsuite/gas/mips/mips16e2-mt.s | 21 +
gas/testsuite/gas/mips/mips16e2-reloc-error.d | 4 +
gas/testsuite/gas/mips/mips16e2-reloc-error.l | 18 +
gas/testsuite/gas/mips/mips16e2-reloc-error.s | 39 +
gas/testsuite/gas/mips/mips16e2-sub.d | 749 +
gas/testsuite/gas/mips/mips16e2-sub.s | 3 +
gas/testsuite/gas/mips/mips16e2.d | 731 +
gas/testsuite/gas/mips/mips16e2.s | 210 +
gas/testsuite/gas/mips/mips16e2@lui-2.d | 4 +
gas/testsuite/gas/mips/mips16e2@lui-2.l | 5 +
gas/testsuite/gas/mips/mips16e2@mips16-pcrel-0.d | 44 +
gas/testsuite/gas/mips/mips16e2@mips16-pcrel-1.d | 52 +
gas/testsuite/gas/mips/mips16e2@mips16-pcrel-2.d | 6 +
.../gas/mips/mips16e2@mips16-pcrel-absolute-1.d | 5 +
.../gas/mips/mips16e2@mips16-pcrel-absolute-2.d | 15 +
.../gas/mips/mips16e2@mips16-pcrel-absolute-3.d | 5 +
.../gas/mips/mips16e2@mips16-pcrel-absolute-4.d | 27 +
.../gas/mips/mips16e2@mips16-pcrel-absolute-5.d | 5 +
.../gas/mips/mips16e2@mips16-pcrel-absolute-6.d | 27 +
.../gas/mips/mips16e2@mips16-pcrel-absolute-7.d | 5 +
.../mips/mips16e2@mips16-pcrel-absolute-n32-4.d | 5 +
.../mips/mips16e2@mips16-pcrel-absolute-n32-6.d | 5 +
.../mips16e2@mips16-pcrel-absolute-n64-sym32-4.d | 5 +
.../mips16e2@mips16-pcrel-absolute-n64-sym32-6.d | 5 +
.../mips/mips16e2@mips16-pcrel-absolute-pic-4.d | 5 +
.../mips/mips16e2@mips16-pcrel-absolute-pic-6.d | 5 +
.../mips16e2@mips16-pcrel-absolute-pic-n32-4.d | 5 +
.../mips16e2@mips16-pcrel-absolute-pic-n32-6.d | 5 +
...ips16e2@mips16-pcrel-absolute-pic-n64-sym32-4.d | 5 +
...ips16e2@mips16-pcrel-absolute-pic-n64-sym32-6.d | 5 +
.../gas/mips/mips16e2@mips16-pcrel-absolute.d | 15 +
.../gas/mips/mips16e2@mips16-pcrel-addend-2.d | 20 +
.../gas/mips/mips16e2@mips16-pcrel-addend-3.d | 19 +
.../gas/mips/mips16e2@mips16-pcrel-addend-6.d | 20 +
.../gas/mips/mips16e2@mips16-pcrel-addend-7.d | 19 +
.../gas/mips/mips16e2@mips16-pcrel-addend-8.d | 43 +
.../gas/mips/mips16e2@mips16-pcrel-addend-9.d | 43 +
.../gas/mips/mips16e2@mips16-pcrel-addend-n32-8.d | 43 +
.../gas/mips/mips16e2@mips16-pcrel-addend-n32-9.d | 43 +
.../mips16e2@mips16-pcrel-addend-n64-sym32-8.d | 75 +
.../mips16e2@mips16-pcrel-addend-n64-sym32-9.d | 75 +
.../gas/mips/mips16e2@mips16-pcrel-delay-0.d | 34 +
.../gas/mips/mips16e2@mips16-pcrel-delay-1.d | 39 +
.../gas/mips/mips16e2@mips16-pcrel-n32-0.d | 44 +
.../gas/mips/mips16e2@mips16-pcrel-n32-1.d | 52 +
.../gas/mips/mips16e2@mips16-pcrel-n64-sym32-0.d | 60 +
.../gas/mips/mips16e2@mips16-pcrel-n64-sym32-1.d | 68 +
.../gas/mips/mips16e2@mips16-pcrel-reloc-2.d | 20 +
.../gas/mips/mips16e2@mips16-pcrel-reloc-3.d | 19 +
.../gas/mips/mips16e2@mips16-pcrel-reloc-6.d | 20 +
.../gas/mips/mips16e2@mips16-pcrel-reloc-7.d | 19 +
gas/testsuite/gas/mips/mips16e2@mips16e2-mt-sub.d | 22 +
gas/testsuite/gas/mips/mips16e2@mips16e2-sub.d | 5 +
gas/testsuite/gas/mips/mips16e2@mips32r2-sync-1.d | 29 +
gas/testsuite/gas/mips/mips16e2@mips32r2-sync.d | 29 +
gas/testsuite/gas/mips/mips16e2@relax-swap3.d | 19 +
gas/testsuite/gas/mips/mips16e@loc-swap.d | 20 +-
gas/testsuite/gas/mips/mips16e@relax-swap3.d | 21 +
gas/testsuite/gas/mips/mips16e@save-sub.d | 44 +
gas/testsuite/gas/mips/mips1@ecoff@sd-forward.d | 5 -
gas/testsuite/gas/mips/mips1@ecoff@sd.d | 5 -
gas/testsuite/gas/mips/mips1@isa-override-2.d | 4 +
gas/testsuite/gas/mips/mips1@isa-override-2.s | 18 -
gas/testsuite/gas/mips/mips1@jal-svr4pic-local.d | 2 +-
gas/testsuite/gas/mips/mips1@relax-offset.d | 30 +
gas/testsuite/gas/mips/mips1@save-sub.d | 44 +
gas/testsuite/gas/mips/mips2@ecoff@ld-forward.d | 5 -
gas/testsuite/gas/mips/mips2@ecoff@ld.d | 5 -
gas/testsuite/gas/mips/mips2@ecoff@sd-forward.d | 5 -
gas/testsuite/gas/mips/mips2@ecoff@sd.d | 5 -
gas/testsuite/gas/mips/mips2@isa-override-2.d | 4 +
gas/testsuite/gas/mips/mips2@isa-override-2.s | 18 -
gas/testsuite/gas/mips/mips2@save-sub.d | 5 +
gas/testsuite/gas/mips/mips32-mt.d | 1 -
gas/testsuite/gas/mips/mips32@ecoff@ld-forward.d | 5 -
gas/testsuite/gas/mips/mips32@ecoff@ld.d | 5 -
gas/testsuite/gas/mips/mips32@ecoff@sd-forward.d | 5 -
gas/testsuite/gas/mips/mips32@ecoff@sd.d | 5 -
gas/testsuite/gas/mips/mips32@isa-override-2.d | 4 +
gas/testsuite/gas/mips/mips32@isa-override-2.s | 18 -
gas/testsuite/gas/mips/mips32@save-sub.d | 5 +
gas/testsuite/gas/mips/mips32r2-sync-1.d | 29 +
gas/testsuite/gas/mips/mips32r2@ecoff@ld-forward.d | 5 -
gas/testsuite/gas/mips/mips32r2@ecoff@ld.d | 5 -
gas/testsuite/gas/mips/mips32r2@ecoff@sd-forward.d | 5 -
gas/testsuite/gas/mips/mips32r2@ecoff@sd.d | 5 -
gas/testsuite/gas/mips/mips32r2@isa-override-2.d | 4 +
gas/testsuite/gas/mips/mips32r2@isa-override-2.s | 18 -
gas/testsuite/gas/mips/mips32r3@isa-override-2.d | 4 +
gas/testsuite/gas/mips/mips32r3@isa-override-2.s | 18 -
gas/testsuite/gas/mips/mips32r5@isa-override-2.d | 4 +
gas/testsuite/gas/mips/mips32r5@isa-override-2.s | 18 -
gas/testsuite/gas/mips/mips32r6@isa-override-2.d | 4 +
gas/testsuite/gas/mips/mips32r6@isa-override-2.s | 18 -
gas/testsuite/gas/mips/mips3@save-sub.d | 5 +
gas/testsuite/gas/mips/mips4@save-sub.d | 5 +
gas/testsuite/gas/mips/mips5-fp.d | 2 +-
gas/testsuite/gas/mips/mips5@save-sub.d | 5 +
gas/testsuite/gas/mips/mips64-mips3d-incl.d | 2 +-
gas/testsuite/gas/mips/mips64-mips3d.d | 2 +-
gas/testsuite/gas/mips/mips64@save-sub.d | 5 +
gas/testsuite/gas/mips/mipsr6@mips5-fp.d | 1 -
gas/testsuite/gas/mips/msa-relax.d | 2 +-
gas/testsuite/gas/mips/no-odd-spreg.d | 2 +-
gas/testsuite/gas/mips/octeon2@save-sub.d | 44 +
gas/testsuite/gas/mips/octeon3@isa-override-1.d | 2 +-
gas/testsuite/gas/mips/octeon3@isa-override-2.d | 4 +
gas/testsuite/gas/mips/octeon3@isa-override-2.s | 18 -
gas/testsuite/gas/mips/octeon3@save-sub.d | 5 +
gas/testsuite/gas/mips/odd-spreg.d | 2 +-
gas/testsuite/gas/mips/option-pic-relax-0.d | 21 +
gas/testsuite/gas/mips/option-pic-relax-0.s | 15 +
gas/testsuite/gas/mips/option-pic-relax-1.d | 18 +
gas/testsuite/gas/mips/option-pic-relax-1.s | 12 +
gas/testsuite/gas/mips/option-pic-relax-2.d | 28 +
gas/testsuite/gas/mips/option-pic-relax-2.l | 2 +
gas/testsuite/gas/mips/option-pic-relax-2.s | 19 +
gas/testsuite/gas/mips/option-pic-relax-3.d | 20 +
gas/testsuite/gas/mips/option-pic-relax-3.l | 2 +
gas/testsuite/gas/mips/option-pic-relax-3.s | 16 +
gas/testsuite/gas/mips/option-pic-relax-3a.d | 9 +
gas/testsuite/gas/mips/option-pic-relax-4.d | 28 +
gas/testsuite/gas/mips/option-pic-relax-4.l | 2 +
gas/testsuite/gas/mips/option-pic-relax-4.s | 20 +
gas/testsuite/gas/mips/option-pic-relax-5.d | 20 +
gas/testsuite/gas/mips/option-pic-relax-5.l | 2 +
gas/testsuite/gas/mips/option-pic-relax-5.s | 17 +
gas/testsuite/gas/mips/org-1.d | 2 +-
gas/testsuite/gas/mips/org-10.d | 2 +-
gas/testsuite/gas/mips/org-4.d | 2 +-
gas/testsuite/gas/mips/org-5.d | 2 +-
gas/testsuite/gas/mips/org-6.d | 2 +-
gas/testsuite/gas/mips/r3000@ecoff@sd-forward.d | 5 -
gas/testsuite/gas/mips/r3000@ecoff@sd.d | 5 -
gas/testsuite/gas/mips/r3000@isa-override-2.d | 4 +
gas/testsuite/gas/mips/r3000@isa-override-2.l | 4 -
gas/testsuite/gas/mips/r3000@isa-override-2.s | 18 -
gas/testsuite/gas/mips/r3000@jal-svr4pic-local.d | 2 +-
gas/testsuite/gas/mips/r3000@relax-offset.d | 6 +
gas/testsuite/gas/mips/r3000@save-sub.d | 5 +
gas/testsuite/gas/mips/r3900@ecoff@ld-forward.d | 5 -
gas/testsuite/gas/mips/r3900@ecoff@ld.d | 5 -
gas/testsuite/gas/mips/r3900@ecoff@sd-forward.d | 5 -
gas/testsuite/gas/mips/r3900@ecoff@sd.d | 5 -
gas/testsuite/gas/mips/r3900@isa-override-2.d | 4 +
gas/testsuite/gas/mips/r3900@isa-override-2.s | 18 -
gas/testsuite/gas/mips/r3900@relax-offset.d | 6 +
gas/testsuite/gas/mips/r3900@save-sub.d | 5 +
gas/testsuite/gas/mips/r4000@save-sub.d | 5 +
gas/testsuite/gas/mips/r5900.d | 18 +-
gas/testsuite/gas/mips/r5900.s | 32 +-
gas/testsuite/gas/mips/r5900@save-sub.d | 5 +
gas/testsuite/gas/mips/r6-attr-none-double.d | 2 +-
gas/testsuite/gas/mips/r6-n32.d | 4 +-
gas/testsuite/gas/mips/r6-n64.d | 4 +-
gas/testsuite/gas/mips/r6.d | 4 +-
gas/testsuite/gas/mips/reginfo-2-n32.d | 4 +
gas/testsuite/gas/mips/reginfo-2.d | 3 +
gas/testsuite/gas/mips/reginfo-2.l | 3 +
gas/testsuite/gas/mips/reginfo-2.s | 2 +
gas/testsuite/gas/mips/relax-at.d | 2 +-
gas/testsuite/gas/mips/relax-offset.d | 28 +
gas/testsuite/gas/mips/relax-offset.l | 2 +
gas/testsuite/gas/mips/relax-offset.s | 23 +
gas/testsuite/gas/mips/relax-swap1-mips1.d | 2 +-
gas/testsuite/gas/mips/relax-swap1-mips2.d | 2 +-
gas/testsuite/gas/mips/relax-swap2.d | 2 +-
gas/testsuite/gas/mips/relax-swap3.s | 6 +-
gas/testsuite/gas/mips/relax.d | 2 +-
gas/testsuite/gas/mips/save-err.d | 3 +
.../gas/mips/{mips16e-save-err.l => save-err.l} | 0
gas/testsuite/gas/mips/save-err.s | 18 +
gas/testsuite/gas/mips/save-sub.d | 43 +
gas/testsuite/gas/mips/save-sub.s | 2 +
gas/testsuite/gas/mips/save.d | 43 +
gas/testsuite/gas/mips/save.s | 53 +
gas/testsuite/gas/mips/sb1@save-sub.d | 5 +
gas/testsuite/gas/mips/set-arch.d | 4 +-
gas/testsuite/gas/mips/stabs-symbol-type.d | 10 +
gas/testsuite/gas/mips/stabs-symbol-type.s | 3 +
gas/testsuite/gas/mips/tls-o32.d | 2 +-
gas/testsuite/gas/mips/vr5400@save-sub.d | 5 +
gas/testsuite/gas/mips/xlr@save-sub.d | 5 +
gas/testsuite/gas/mips/xpa-err.d | 3 +
gas/testsuite/gas/mips/xpa-err.l | 2 +
gas/testsuite/gas/mips/xpa-err.s | 8 +
gas/testsuite/gas/mips/xpa-virt-err.d | 3 +
gas/testsuite/gas/mips/xpa-virt-err.l | 3 +
gas/testsuite/gas/mips/xpa-virt-err.s | 15 +
gas/testsuite/gas/mips/xpa.d | 4 +-
gas/testsuite/gas/mmix/bspec-1.d | 2 +-
gas/testsuite/gas/mmix/bspec-2.d | 2 +-
gas/testsuite/gas/mmix/mmix-err.exp | 2 +-
gas/testsuite/gas/mmix/mmix-list.exp | 2 +-
gas/testsuite/gas/mmix/mmix.exp | 2 +-
gas/testsuite/gas/mn10200/basic.exp | 2 +-
gas/testsuite/gas/mn10300/am33-2.c | 2 +-
gas/testsuite/gas/mn10300/basic.exp | 2 +-
gas/testsuite/gas/mri/char.d | 10 +-
gas/testsuite/gas/mri/float.d | 11 +-
gas/testsuite/gas/mri/mri.exp | 2 +-
gas/testsuite/gas/msp430/bad.d | 2 +-
gas/testsuite/gas/msp430/errata_warns.d | 2 +-
gas/testsuite/gas/msp430/errata_warns.l | 68 +-
gas/testsuite/gas/msp430/high-data-bss-sym.d | 6 +
gas/testsuite/gas/msp430/high-data-bss-sym.s | 19 +
gas/testsuite/gas/msp430/msp430.exp | 5 +-
gas/testsuite/gas/msp430/msp430x.d | 250 +-
gas/testsuite/gas/msp430/pr22133.d | 4 +
gas/testsuite/gas/msp430/pr22133.l | 4 +
gas/testsuite/gas/msp430/pr22133.s | 9 +
gas/testsuite/gas/mt/errors.exp | 2 +-
gas/testsuite/gas/mt/mt.exp | 2 +-
gas/testsuite/gas/mt/relocs.exp | 2 +-
gas/testsuite/gas/nds32/br-1.d | 4 +-
gas/testsuite/gas/nds32/br-2.d | 3 +-
gas/testsuite/gas/nds32/ji-jr.d | 18 +-
gas/testsuite/gas/nds32/nds32.exp | 2 +-
gas/testsuite/gas/nios2/branch-r2.d | 2 +-
gas/testsuite/gas/nios2/branch.d | 2 +-
gas/testsuite/gas/nios2/illegal_pseudoinst.l | 35 +
gas/testsuite/gas/nios2/illegal_pseudoinst.s | 45 +
gas/testsuite/gas/nios2/nios2.exp | 3 +-
gas/testsuite/gas/or1k/allinsn.d | 50 +-
gas/testsuite/gas/or1k/allinsn.exp | 5 -
gas/testsuite/gas/or1k/allinsn.s | 25 +
gas/testsuite/gas/or1k/or1k.exp | 6 +
gas/testsuite/gas/or1k/reloc-1.d | 72 +
gas/testsuite/gas/or1k/reloc-1.s | 76 +
gas/testsuite/gas/or1k/reloc-2.l | 11 +
gas/testsuite/gas/or1k/reloc-2.s | 13 +
gas/testsuite/gas/pdp11/absreloc.d | 2 +-
gas/testsuite/gas/pdp11/absreloc.s | 2 +-
gas/testsuite/gas/pdp11/opcode.d | 2 +-
gas/testsuite/gas/pdp11/opcode.s | 2 +-
gas/testsuite/gas/pdp11/pdp11.exp | 6 +-
gas/testsuite/gas/pdp11/pr14480.d | 14 +
gas/testsuite/gas/pdp11/pr14480.s | 17 +
gas/testsuite/gas/pdp11/pr23481.d | 14 +
gas/testsuite/gas/pdp11/pr23481.s | 10 +
gas/testsuite/gas/pe/pe.exp | 3 +-
gas/testsuite/gas/pe/seh-x64-err-2.l | 3 +
gas/testsuite/gas/pe/seh-x64-err-2.s | 9 +
gas/testsuite/gas/pj/pj.exp | 2 +-
gas/testsuite/gas/ppc/aix.exp | 4 +-
gas/testsuite/gas/ppc/altivec2.d | 182 +-
gas/testsuite/gas/ppc/altivec2.s | 48 -
gas/testsuite/gas/ppc/broadway.d | 108 +
gas/testsuite/gas/ppc/broadway.s | 103 +
gas/testsuite/gas/ppc/common.d | 375 +-
gas/testsuite/gas/ppc/common.s | 6 +
gas/testsuite/gas/ppc/efs.d | 25 +
gas/testsuite/gas/ppc/efs.s | 29 +
gas/testsuite/gas/ppc/efs2.d | 19 +
gas/testsuite/gas/ppc/efs2.s | 18 +
gas/testsuite/gas/ppc/htm.d | 4 +-
gas/testsuite/gas/ppc/lsp-checks.d | 3 +
gas/testsuite/gas/ppc/lsp-checks.l | 92 +
gas/testsuite/gas/ppc/lsp-checks.s | 112 +
gas/testsuite/gas/ppc/lsp.d | 687 +
gas/testsuite/gas/ppc/lsp.s | 694 +
gas/testsuite/gas/ppc/machine.d | 1 +
gas/testsuite/gas/ppc/misalign.d | 2 +
gas/testsuite/gas/ppc/misalign.l | 2 +
gas/testsuite/gas/ppc/misalign.s | 3 +
gas/testsuite/gas/ppc/misalign2.d | 7 +
gas/testsuite/gas/ppc/misalign2.s | 13 +
gas/testsuite/gas/ppc/ppc.exp | 139 +-
gas/testsuite/gas/ppc/spe.d | 270 +
gas/testsuite/gas/ppc/spe.s | 276 +
gas/testsuite/gas/ppc/spe2-checks.d | 3 +
gas/testsuite/gas/ppc/spe2-checks.l | 73 +
gas/testsuite/gas/ppc/spe2-checks.s | 99 +
gas/testsuite/gas/ppc/spe2.d | 815 +
gas/testsuite/gas/ppc/spe2.s | 834 +
gas/testsuite/gas/ppc/spe_ambiguous.d | 15 +
gas/testsuite/gas/ppc/spe_ambiguous.s | 21 +
gas/testsuite/gas/ppc/vle-mult-ld-st-insns.d | 28 +
gas/testsuite/gas/ppc/vle-mult-ld-st-insns.s | 34 +
gas/testsuite/gas/ppc/vle-reloc.d | 2 +-
gas/testsuite/gas/ppc/vle-simple-1.d | 2 +-
gas/testsuite/gas/ppc/vle-simple-2.d | 2 +-
gas/testsuite/gas/ppc/vle-simple-3.d | 2 +-
gas/testsuite/gas/ppc/vle-simple-4.d | 2 +-
gas/testsuite/gas/ppc/vle-simple-5.d | 2 +-
gas/testsuite/gas/ppc/vle-simple-6.d | 2 +-
gas/testsuite/gas/ppc/vle.d | 6 +-
gas/testsuite/gas/ppc/vle.s | 258 +-
gas/testsuite/gas/ppc/xcoff-dwsect-1-32.d | 2 +-
gas/testsuite/gas/ppc/xcoff-dwsect-1-64.d | 2 +-
gas/testsuite/gas/pru/extern.d | 10 +
gas/testsuite/gas/pru/extern.s | 5 +
gas/testsuite/gas/pru/illegal2.l | 2 +
gas/testsuite/gas/pru/illegal2.s | 5 +
gas/testsuite/gas/pru/ldi.d | 8 +-
gas/testsuite/gas/pru/pru.exp | 3 +-
gas/testsuite/gas/riscv/align-1.l | 1 +
gas/testsuite/gas/riscv/align-1.s | 3 +
gas/testsuite/gas/riscv/auipc-x0.d | 12 +
gas/testsuite/gas/riscv/auipc-x0.s | 4 +
gas/testsuite/gas/riscv/bad-csr.d | 3 +
gas/testsuite/gas/riscv/bad-csr.l | 2 +
gas/testsuite/gas/riscv/bad-csr.s | 1 +
gas/testsuite/gas/riscv/bge.d | 13 +
gas/testsuite/gas/riscv/bge.s | 5 +
gas/testsuite/gas/riscv/c-addi16sp-fail.d | 3 +
gas/testsuite/gas/riscv/c-addi16sp-fail.l | 2 +
gas/testsuite/gas/riscv/c-addi16sp-fail.s | 2 +
gas/testsuite/gas/riscv/c-addi4spn-fail.d | 3 +
gas/testsuite/gas/riscv/c-addi4spn-fail.l | 2 +
gas/testsuite/gas/riscv/c-addi4spn-fail.s | 2 +
gas/testsuite/gas/riscv/c-fld-fsd-fail.d | 3 +
gas/testsuite/gas/riscv/c-fld-fsd-fail.l | 3 +
gas/testsuite/gas/riscv/c-fld-fsd-fail.s | 3 +
gas/testsuite/gas/riscv/c-ld.d | 17 +
gas/testsuite/gas/riscv/c-ld.s | 9 +
gas/testsuite/gas/riscv/c-lui-fail.d | 3 +
gas/testsuite/gas/riscv/c-lui-fail.l | 2 +
gas/testsuite/gas/riscv/c-lui-fail.s | 2 +
gas/testsuite/gas/riscv/c-lw.d | 17 +
gas/testsuite/gas/riscv/c-lw.s | 9 +
gas/testsuite/gas/riscv/c-nonzero-imm.d | 3 +
gas/testsuite/gas/riscv/c-nonzero-imm.l | 2 +
gas/testsuite/gas/riscv/c-nonzero-imm.s | 3 +
gas/testsuite/gas/riscv/c-nonzero-reg.d | 3 +
gas/testsuite/gas/riscv/c-nonzero-reg.l | 4 +
gas/testsuite/gas/riscv/c-nonzero-reg.s | 3 +
gas/testsuite/gas/riscv/c-zero-imm-64.d | 11 +
gas/testsuite/gas/riscv/c-zero-imm-64.s | 4 +
gas/testsuite/gas/riscv/c-zero-imm.d | 23 +
gas/testsuite/gas/riscv/c-zero-imm.s | 19 +
gas/testsuite/gas/riscv/c-zero-reg.d | 20 +
gas/testsuite/gas/riscv/c-zero-reg.s | 15 +
gas/testsuite/gas/riscv/eh-relocs.d | 12 +
gas/testsuite/gas/riscv/eh-relocs.s | 11 +
gas/testsuite/gas/riscv/fence-fail.d | 3 +
gas/testsuite/gas/riscv/fence-fail.l | 4 +
gas/testsuite/gas/riscv/fence-fail.s | 4 +
gas/testsuite/gas/riscv/fence-tso.d | 11 +
gas/testsuite/gas/riscv/fence-tso.s | 2 +
gas/testsuite/gas/riscv/fmv.x.d | 13 +
gas/testsuite/gas/riscv/fmv.x.s | 4 +
gas/testsuite/gas/riscv/fsxxi.d | 13 +
gas/testsuite/gas/riscv/fsxxi.s | 4 +
gas/testsuite/gas/riscv/insn.d | 51 +
gas/testsuite/gas/riscv/insn.s | 39 +
gas/testsuite/gas/riscv/lla32.d | 19 +
gas/testsuite/gas/riscv/lla32.s | 15 +
gas/testsuite/gas/riscv/lla64-fail.d | 3 +
gas/testsuite/gas/riscv/lla64-fail.l | 2 +
gas/testsuite/gas/riscv/lla64-fail.s | 3 +
gas/testsuite/gas/riscv/lla64.d | 20 +
gas/testsuite/gas/riscv/lla64.s | 17 +
gas/testsuite/gas/riscv/no-relax-align-2.d | 19 +
gas/testsuite/gas/riscv/no-relax-align-2.s | 5 +
gas/testsuite/gas/riscv/no-relax-align.d | 13 +
gas/testsuite/gas/riscv/no-relax-align.s | 4 +
gas/testsuite/gas/riscv/no-relax-reloc.d | 12 +
gas/testsuite/gas/riscv/no-relax-reloc.s | 8 +
gas/testsuite/gas/riscv/priv-reg.d | 253 +
gas/testsuite/gas/riscv/priv-reg.s | 269 +
gas/testsuite/gas/riscv/relax-reloc.d | 17 +
gas/testsuite/gas/riscv/relax-reloc.s | 8 +
gas/testsuite/gas/riscv/riscv.exp | 5 +-
gas/testsuite/gas/riscv/rouding-fail.d | 3 +
gas/testsuite/gas/riscv/rouding-fail.l | 3 +
gas/testsuite/gas/riscv/rouding-fail.s | 3 +
gas/testsuite/gas/riscv/satp.d | 11 +
gas/testsuite/gas/riscv/satp.s | 3 +
gas/testsuite/gas/rl78/rl78.exp | 2 +-
gas/testsuite/gas/rx/abs.d | 2 +-
gas/testsuite/gas/rx/adc.d | 2 +-
gas/testsuite/gas/rx/add.d | 2 +-
gas/testsuite/gas/rx/and.d | 2 +-
gas/testsuite/gas/rx/bclr.d | 2 +-
gas/testsuite/gas/rx/bcnd.d | 2 +-
gas/testsuite/gas/rx/bmcnd.d | 2 +-
gas/testsuite/gas/rx/bnot.d | 2 +-
gas/testsuite/gas/rx/bra.d | 2 +-
gas/testsuite/gas/rx/brk.d | 2 +-
gas/testsuite/gas/rx/bset.d | 2 +-
gas/testsuite/gas/rx/bsr.d | 2 +-
gas/testsuite/gas/rx/btst.d | 2 +-
gas/testsuite/gas/rx/clrpsw.d | 2 +-
gas/testsuite/gas/rx/cmp.d | 2 +-
gas/testsuite/gas/rx/dbt.d | 2 +-
gas/testsuite/gas/rx/div.d | 2 +-
gas/testsuite/gas/rx/divu.d | 2 +-
gas/testsuite/gas/rx/emaca.d | 2 +-
gas/testsuite/gas/rx/emsba.d | 2 +-
gas/testsuite/gas/rx/emul.d | 2 +-
gas/testsuite/gas/rx/emula.d | 2 +-
gas/testsuite/gas/rx/emulu.d | 2 +-
gas/testsuite/gas/rx/explode | 6 +-
gas/testsuite/gas/rx/fadd.d | 2 +-
gas/testsuite/gas/rx/fcmp.d | 2 +-
gas/testsuite/gas/rx/fdiv.d | 2 +-
gas/testsuite/gas/rx/fmul.d | 2 +-
gas/testsuite/gas/rx/fsqrt.d | 2 +-
gas/testsuite/gas/rx/fsub.d | 2 +-
gas/testsuite/gas/rx/ftoi.d | 2 +-
gas/testsuite/gas/rx/ftou.d | 2 +-
gas/testsuite/gas/rx/gprel.d | 2 +-
gas/testsuite/gas/rx/int.d | 2 +-
gas/testsuite/gas/rx/itof.d | 2 +-
gas/testsuite/gas/rx/jmp.d | 2 +-
gas/testsuite/gas/rx/jsr.d | 2 +-
gas/testsuite/gas/rx/machi.d | 2 +-
gas/testsuite/gas/rx/maclh.d | 2 +-
gas/testsuite/gas/rx/maclo.d | 2 +-
gas/testsuite/gas/rx/make-d | 2 +-
gas/testsuite/gas/rx/max.d | 2 +-
gas/testsuite/gas/rx/min.d | 2 +-
gas/testsuite/gas/rx/mov.d | 2 +-
gas/testsuite/gas/rx/movco.d | 2 +-
gas/testsuite/gas/rx/movli.d | 2 +-
gas/testsuite/gas/rx/movu.d | 2 +-
gas/testsuite/gas/rx/msbhi.d | 2 +-
gas/testsuite/gas/rx/msblh.d | 2 +-
gas/testsuite/gas/rx/msblo.d | 2 +-
gas/testsuite/gas/rx/mul.d | 2 +-
gas/testsuite/gas/rx/mulhi.d | 2 +-
gas/testsuite/gas/rx/mullh.d | 2 +-
gas/testsuite/gas/rx/mullo.d | 2 +-
gas/testsuite/gas/rx/mvfacgu.d | 2 +-
gas/testsuite/gas/rx/mvfachi.d | 2 +-
gas/testsuite/gas/rx/mvfaclo.d | 2 +-
gas/testsuite/gas/rx/mvfacmi.d | 2 +-
gas/testsuite/gas/rx/mvfc.d | 2 +-
gas/testsuite/gas/rx/mvfcp.d | 2 +-
gas/testsuite/gas/rx/mvtacgu.d | 2 +-
gas/testsuite/gas/rx/mvtachi.d | 2 +-
gas/testsuite/gas/rx/mvtaclo.d | 2 +-
gas/testsuite/gas/rx/mvtc.d | 2 +-
gas/testsuite/gas/rx/mvtcp.d | 2 +-
gas/testsuite/gas/rx/neg.d | 2 +-
gas/testsuite/gas/rx/nop.d | 2 +-
gas/testsuite/gas/rx/not.d | 2 +-
gas/testsuite/gas/rx/opecp.d | 2 +-
gas/testsuite/gas/rx/or.d | 2 +-
gas/testsuite/gas/rx/pop.d | 2 +-
gas/testsuite/gas/rx/popc.d | 2 +-
gas/testsuite/gas/rx/popm.d | 2 +-
gas/testsuite/gas/rx/pr19665.d | 2 +-
gas/testsuite/gas/rx/pr22737.d | 15 +
gas/testsuite/gas/rx/pr22737.s | 1 +
gas/testsuite/gas/rx/push.d | 2 +-
gas/testsuite/gas/rx/pushc.d | 2 +-
gas/testsuite/gas/rx/pushm.d | 2 +-
gas/testsuite/gas/rx/r-bcc.d | 2 +-
gas/testsuite/gas/rx/r-bra.d | 2 +-
gas/testsuite/gas/rx/racl.d | 2 +-
gas/testsuite/gas/rx/racw.d | 2 +-
gas/testsuite/gas/rx/rdacl.d | 2 +-
gas/testsuite/gas/rx/rdacw.d | 2 +-
gas/testsuite/gas/rx/revl.d | 2 +-
gas/testsuite/gas/rx/revw.d | 2 +-
gas/testsuite/gas/rx/rmpa.d | 2 +-
gas/testsuite/gas/rx/rolc.d | 2 +-
gas/testsuite/gas/rx/rorc.d | 2 +-
gas/testsuite/gas/rx/rotl.d | 2 +-
gas/testsuite/gas/rx/rotr.d | 2 +-
gas/testsuite/gas/rx/round.d | 2 +-
gas/testsuite/gas/rx/rte.d | 2 +-
gas/testsuite/gas/rx/rtfi.d | 2 +-
gas/testsuite/gas/rx/rts.d | 2 +-
gas/testsuite/gas/rx/rtsd.d | 2 +-
gas/testsuite/gas/rx/rx.exp | 3 +-
gas/testsuite/gas/rx/sat.d | 2 +-
gas/testsuite/gas/rx/satr.d | 2 +-
gas/testsuite/gas/rx/sbb.d | 2 +-
gas/testsuite/gas/rx/sccnd.d | 2 +-
gas/testsuite/gas/rx/scmpu.d | 2 +-
gas/testsuite/gas/rx/setpsw.d | 2 +-
gas/testsuite/gas/rx/shar.d | 2 +-
gas/testsuite/gas/rx/shll.d | 2 +-
gas/testsuite/gas/rx/shlr.d | 2 +-
gas/testsuite/gas/rx/smovb.d | 2 +-
gas/testsuite/gas/rx/smovf.d | 2 +-
gas/testsuite/gas/rx/smovu.d | 2 +-
gas/testsuite/gas/rx/sstr.d | 2 +-
gas/testsuite/gas/rx/stnz.d | 2 +-
gas/testsuite/gas/rx/stz.d | 2 +-
gas/testsuite/gas/rx/sub.d | 2 +-
gas/testsuite/gas/rx/suntil.d | 2 +-
gas/testsuite/gas/rx/swhile.d | 2 +-
gas/testsuite/gas/rx/tst.d | 2 +-
gas/testsuite/gas/rx/utof.d | 2 +-
gas/testsuite/gas/rx/wait.d | 2 +-
gas/testsuite/gas/rx/xchg.d | 2 +-
gas/testsuite/gas/rx/xor.d | 2 +-
gas/testsuite/gas/s12z/abs.d | 19 +
gas/testsuite/gas/s12z/abs.s | 8 +
gas/testsuite/gas/s12z/adc-imm.d | 21 +
gas/testsuite/gas/s12z/adc-imm.s | 8 +
gas/testsuite/gas/s12z/adc-opr.d | 21 +
gas/testsuite/gas/s12z/adc-opr.s | 9 +
gas/testsuite/gas/s12z/add-imm.d | 21 +
gas/testsuite/gas/s12z/add-imm.s | 8 +
gas/testsuite/gas/s12z/add-opr.d | 21 +
gas/testsuite/gas/s12z/add-opr.s | 9 +
gas/testsuite/gas/s12z/and-imm.d | 21 +
gas/testsuite/gas/s12z/and-imm.s | 8 +
gas/testsuite/gas/s12z/and-opr.d | 22 +
gas/testsuite/gas/s12z/and-opr.s | 9 +
gas/testsuite/gas/s12z/and-or-cc.d | 13 +
gas/testsuite/gas/s12z/and-or-cc.s | 2 +
gas/testsuite/gas/s12z/bfext-special.d | 13 +
gas/testsuite/gas/s12z/bfext-special.s | 2 +
gas/testsuite/gas/s12z/bfext.d | 47 +
gas/testsuite/gas/s12z/bfext.s | 23 +
gas/testsuite/gas/s12z/bit-manip-invalid.d | 19 +
gas/testsuite/gas/s12z/bit-manip-invalid.s | 11 +
gas/testsuite/gas/s12z/bit-manip.d | 26 +
gas/testsuite/gas/s12z/bit-manip.s | 16 +
gas/testsuite/gas/s12z/bit.d | 33 +
gas/testsuite/gas/s12z/bit.s | 17 +
gas/testsuite/gas/s12z/bra-expression-defined.d | 23 +
gas/testsuite/gas/s12z/bra-expression-defined.s | 11 +
gas/testsuite/gas/s12z/bra-expression-undef.d | 24 +
gas/testsuite/gas/s12z/bra-expression-undef.s | 9 +
gas/testsuite/gas/s12z/bra.d | 34 +
gas/testsuite/gas/s12z/bra.s | 20 +
gas/testsuite/gas/s12z/brclr-symbols.d | 32 +
gas/testsuite/gas/s12z/brclr-symbols.s | 9 +
gas/testsuite/gas/s12z/brset-clr-opr-imm-rel.d | 23 +
gas/testsuite/gas/s12z/brset-clr-opr-imm-rel.s | 7 +
gas/testsuite/gas/s12z/brset-clr-opr-reg-rel.d | 21 +
gas/testsuite/gas/s12z/brset-clr-opr-reg-rel.s | 5 +
gas/testsuite/gas/s12z/brset-clr-reg-imm-rel.d | 24 +
gas/testsuite/gas/s12z/brset-clr-reg-imm-rel.s | 12 +
gas/testsuite/gas/s12z/brset-clr-reg-reg-rel.d | 19 +
gas/testsuite/gas/s12z/brset-clr-reg-reg-rel.s | 6 +
gas/testsuite/gas/s12z/clb.d | 19 +
gas/testsuite/gas/s12z/clb.s | 8 +
gas/testsuite/gas/s12z/clr-opr.d | 15 +
gas/testsuite/gas/s12z/clr-opr.s | 5 +
gas/testsuite/gas/s12z/clr.d | 21 +
gas/testsuite/gas/s12z/clr.s | 10 +
gas/testsuite/gas/s12z/cmp-imm.d | 23 +
gas/testsuite/gas/s12z/cmp-imm.s | 12 +
gas/testsuite/gas/s12z/cmp-opr-inc.d | 21 +
gas/testsuite/gas/s12z/cmp-opr-inc.s | 11 +
gas/testsuite/gas/s12z/cmp-opr-rdirect.d | 19 +
gas/testsuite/gas/s12z/cmp-opr-rdirect.s | 9 +
gas/testsuite/gas/s12z/cmp-opr-reg.d | 19 +
gas/testsuite/gas/s12z/cmp-opr-reg.s | 9 +
gas/testsuite/gas/s12z/cmp-opr-rindirect.d | 19 +
gas/testsuite/gas/s12z/cmp-opr-rindirect.s | 9 +
gas/testsuite/gas/s12z/cmp-opr-sxe4.d | 21 +
gas/testsuite/gas/s12z/cmp-opr-sxe4.s | 10 +
gas/testsuite/gas/s12z/cmp-opr-xys.d | 19 +
gas/testsuite/gas/s12z/cmp-opr-xys.s | 9 +
gas/testsuite/gas/s12z/cmp-s-imm.d | 27 +
gas/testsuite/gas/s12z/cmp-s-imm.s | 10 +
gas/testsuite/gas/s12z/cmp-s-opr.d | 25 +
gas/testsuite/gas/s12z/cmp-s-opr.s | 10 +
gas/testsuite/gas/s12z/cmp-xy.d | 12 +
gas/testsuite/gas/s12z/cmp-xy.s | 1 +
gas/testsuite/gas/s12z/com-opr.d | 15 +
gas/testsuite/gas/s12z/com-opr.s | 3 +
gas/testsuite/gas/s12z/complex-shifts.d | 18 +
gas/testsuite/gas/s12z/complex-shifts.s | 4 +
gas/testsuite/gas/s12z/db-tb-cc-opr.d | 30 +
gas/testsuite/gas/s12z/db-tb-cc-opr.s | 11 +
gas/testsuite/gas/s12z/db-tb-cc-reg.d | 31 +
gas/testsuite/gas/s12z/db-tb-cc-reg.s | 21 +
gas/testsuite/gas/s12z/dbCC.d | 27 +
gas/testsuite/gas/s12z/dbCC.s | 7 +
gas/testsuite/gas/s12z/dec-opr.d | 15 +
gas/testsuite/gas/s12z/dec-opr.s | 3 +
gas/testsuite/gas/s12z/dec.d | 19 +
gas/testsuite/gas/s12z/dec.s | 8 +
gas/testsuite/gas/s12z/div.d | 23 +
gas/testsuite/gas/s12z/div.s | 8 +
gas/testsuite/gas/s12z/eor.d | 33 +
gas/testsuite/gas/s12z/eor.s | 17 +
gas/testsuite/gas/s12z/exg.d | 29 +
gas/testsuite/gas/s12z/exg.s | 18 +
gas/testsuite/gas/s12z/ext24-ld-xy.d | 12 +
gas/testsuite/gas/s12z/ext24-ld-xy.s | 2 +
gas/testsuite/gas/s12z/inc-opr.d | 15 +
gas/testsuite/gas/s12z/inc-opr.s | 3 +
gas/testsuite/gas/s12z/inc.d | 19 +
gas/testsuite/gas/s12z/inc.s | 8 +
gas/testsuite/gas/s12z/inh.d | 15 +
gas/testsuite/gas/s12z/inh.s | 5 +
gas/testsuite/gas/s12z/jmp.d | 33 +
gas/testsuite/gas/s12z/jmp.s | 20 +
gas/testsuite/gas/s12z/jsr.d | 33 +
gas/testsuite/gas/s12z/jsr.s | 20 +
gas/testsuite/gas/s12z/ld-imm-page2.d | 15 +
gas/testsuite/gas/s12z/ld-imm-page2.s | 2 +
gas/testsuite/gas/s12z/ld-imm.d | 25 +
gas/testsuite/gas/s12z/ld-imm.s | 16 +
gas/testsuite/gas/s12z/ld-immu18.d | 28 +
gas/testsuite/gas/s12z/ld-immu18.s | 10 +
gas/testsuite/gas/s12z/ld-large-direct.d | 21 +
gas/testsuite/gas/s12z/ld-large-direct.s | 11 +
gas/testsuite/gas/s12z/ld-opr.d | 22 +
gas/testsuite/gas/s12z/ld-opr.s | 10 +
gas/testsuite/gas/s12z/ld-s-opr.d | 16 +
gas/testsuite/gas/s12z/ld-s-opr.s | 4 +
gas/testsuite/gas/s12z/ld-small-direct.d | 31 +
gas/testsuite/gas/s12z/ld-small-direct.s | 11 +
gas/testsuite/gas/s12z/lea-immu18.d | 14 +
gas/testsuite/gas/s12z/lea-immu18.s | 3 +
gas/testsuite/gas/s12z/lea.d | 18 +
gas/testsuite/gas/s12z/lea.s | 8 +
gas/testsuite/gas/s12z/mac.d | 23 +
gas/testsuite/gas/s12z/mac.s | 8 +
gas/testsuite/gas/s12z/min-max.d | 48 +
gas/testsuite/gas/s12z/min-max.s | 32 +
gas/testsuite/gas/s12z/mod.d | 23 +
gas/testsuite/gas/s12z/mod.s | 8 +
gas/testsuite/gas/s12z/mov.d | 26 +
gas/testsuite/gas/s12z/mov.s | 8 +
gas/testsuite/gas/s12z/mul-imm.d | 19 +
gas/testsuite/gas/s12z/mul-imm.s | 6 +
gas/testsuite/gas/s12z/mul-opr-opr.d | 19 +
gas/testsuite/gas/s12z/mul-opr-opr.s | 6 +
gas/testsuite/gas/s12z/mul-opr.d | 17 +
gas/testsuite/gas/s12z/mul-opr.s | 6 +
gas/testsuite/gas/s12z/mul-reg.d | 27 +
gas/testsuite/gas/s12z/mul-reg.s | 16 +
gas/testsuite/gas/s12z/mul.d | 19 +
gas/testsuite/gas/s12z/mul.s | 6 +
gas/testsuite/gas/s12z/neg-opr.d | 34 +
gas/testsuite/gas/s12z/neg-opr.s | 21 +
gas/testsuite/gas/s12z/not-so-simple-shifts.d | 17 +
gas/testsuite/gas/s12z/not-so-simple-shifts.s | 4 +
gas/testsuite/gas/s12z/opr-18u.d | 26 +
gas/testsuite/gas/s12z/opr-18u.s | 15 +
gas/testsuite/gas/s12z/opr-expr.d | 13 +
gas/testsuite/gas/s12z/opr-expr.s | 5 +
gas/testsuite/gas/s12z/opr-ext-18.d | 13 +
gas/testsuite/gas/s12z/opr-ext-18.s | 5 +
gas/testsuite/gas/s12z/opr-idx-24-reg.d | 13 +
gas/testsuite/gas/s12z/opr-idx-24-reg.s | 2 +
gas/testsuite/gas/s12z/opr-idx3-reg.d | 17 +
gas/testsuite/gas/s12z/opr-idx3-reg.s | 3 +
gas/testsuite/gas/s12z/opr-idx3-xysp-24.d | 15 +
gas/testsuite/gas/s12z/opr-idx3-xysp-24.s | 3 +
gas/testsuite/gas/s12z/opr-indirect-expr.d | 14 +
gas/testsuite/gas/s12z/opr-indirect-expr.s | 1 +
gas/testsuite/gas/s12z/opr-symbol.d | 170 +
gas/testsuite/gas/s12z/opr-symbol.s | 109 +
gas/testsuite/gas/s12z/or-imm.d | 21 +
gas/testsuite/gas/s12z/or-imm.s | 8 +
gas/testsuite/gas/s12z/or-opr.d | 21 +
gas/testsuite/gas/s12z/or-opr.s | 8 +
gas/testsuite/gas/s12z/p2-mul.d | 17 +
gas/testsuite/gas/s12z/p2-mul.s | 7 +
gas/testsuite/gas/s12z/page2-inh.d | 15 +
gas/testsuite/gas/s12z/page2-inh.s | 5 +
gas/testsuite/gas/s12z/psh-pul.d | 21 +
gas/testsuite/gas/s12z/psh-pul.s | 8 +
gas/testsuite/gas/s12z/qmul.d | 23 +
gas/testsuite/gas/s12z/qmul.s | 8 +
gas/testsuite/gas/s12z/rotate.d | 22 +
gas/testsuite/gas/s12z/rotate.s | 10 +
gas/testsuite/gas/s12z/s12z.exp | 133 +
gas/testsuite/gas/s12z/sat.d | 19 +
gas/testsuite/gas/s12z/sat.s | 8 +
gas/testsuite/gas/s12z/sbc-imm.d | 21 +
gas/testsuite/gas/s12z/sbc-imm.s | 8 +
gas/testsuite/gas/s12z/sbc-opr.d | 23 +
gas/testsuite/gas/s12z/sbc-opr.s | 9 +
gas/testsuite/gas/s12z/shift.d | 22 +
gas/testsuite/gas/s12z/shift.s | 11 +
gas/testsuite/gas/s12z/simple-shift.d | 18 +
gas/testsuite/gas/s12z/simple-shift.s | 9 +
gas/testsuite/gas/s12z/single-ops.d | 15 +
gas/testsuite/gas/s12z/single-ops.s | 4 +
gas/testsuite/gas/s12z/specd6.d | 14 +
gas/testsuite/gas/s12z/specd6.s | 4 +
gas/testsuite/gas/s12z/st-large-direct.d | 21 +
gas/testsuite/gas/s12z/st-large-direct.s | 11 +
gas/testsuite/gas/s12z/st-opr.d | 22 +
gas/testsuite/gas/s12z/st-opr.s | 10 +
gas/testsuite/gas/s12z/st-s-opr.d | 16 +
gas/testsuite/gas/s12z/st-s-opr.s | 4 +
gas/testsuite/gas/s12z/st-small-direct.d | 34 +
gas/testsuite/gas/s12z/st-small-direct.s | 12 +
gas/testsuite/gas/s12z/st-xy.d | 12 +
gas/testsuite/gas/s12z/st-xy.s | 3 +
gas/testsuite/gas/s12z/sub-imm.d | 21 +
gas/testsuite/gas/s12z/sub-imm.s | 8 +
gas/testsuite/gas/s12z/sub-opr.d | 22 +
gas/testsuite/gas/s12z/sub-opr.s | 9 +
gas/testsuite/gas/s12z/tfr.d | 20 +
gas/testsuite/gas/s12z/tfr.s | 9 +
gas/testsuite/gas/s12z/trap.d | 105 +
gas/testsuite/gas/s12z/trap.s | 96 +
gas/testsuite/gas/s390/esa-g5.d | 4 +-
gas/testsuite/gas/s390/esa-g5.s | 4 +-
gas/testsuite/gas/s390/s390.exp | 1 +
gas/testsuite/gas/s390/zarch-arch12.d | 11 +
gas/testsuite/gas/s390/zarch-arch12.s | 11 +
gas/testsuite/gas/s390/zarch-z10.d | 1 -
gas/testsuite/gas/s390/zarch-z10.s | 1 -
gas/testsuite/gas/s390/zarch-z13.d | 2 +-
gas/testsuite/gas/s390/zarch-z196.d | 1 +
gas/testsuite/gas/s390/zarch-z196.s | 1 +
gas/testsuite/gas/s390/zarch-z9-ec.d | 4 +-
gas/testsuite/gas/s390/zarch-z9-ec.s | 4 +-
gas/testsuite/gas/s390/zarch-z990-symbol-lay.s | 6 +
gas/testsuite/gas/s390/zarch-z990.d | 3 +-
gas/testsuite/gas/s390/zarch-z990.s | 3 +-
gas/testsuite/gas/score/relax.exp | 2 +-
gas/testsuite/gas/score/relax_32.exp | 2 +-
gas/testsuite/gas/sh/arch/arch.exp | 2 +-
gas/testsuite/gas/sh/basic.exp | 23 +-
gas/testsuite/gas/sh/err.exp | 2 +-
gas/testsuite/gas/sh/fdpic.d | 2 +-
gas/testsuite/gas/sh/pcrel-hms.d | 2 +-
gas/testsuite/gas/sh/pcrel.d | 2 +-
gas/testsuite/gas/sh/reg-prefix.d | 1 -
gas/testsuite/gas/sh/sh2a-pic.d | 3 +-
gas/testsuite/gas/sh/sh2a.d | 2 +-
gas/testsuite/gas/sh/sh64/abi-32.d | 10 -
gas/testsuite/gas/sh/sh64/abi-32.s | 7 -
gas/testsuite/gas/sh/sh64/abi-64.d | 9 -
gas/testsuite/gas/sh/sh64/abi-64.s | 7 -
gas/testsuite/gas/sh/sh64/basic-1.d | 234 -
gas/testsuite/gas/sh/sh64/basic-1.s | 233 -
gas/testsuite/gas/sh/sh64/case-1.d | 23 -
gas/testsuite/gas/sh/sh64/case-1.s | 12 -
gas/testsuite/gas/sh/sh64/case-noexp-1.d | 18 -
gas/testsuite/gas/sh/sh64/crange1-1.d | 104 -
gas/testsuite/gas/sh/sh64/crange1-2.d | 108 -
gas/testsuite/gas/sh/sh64/crange1.s | 210 -
gas/testsuite/gas/sh/sh64/crange2-1.d | 43 -
gas/testsuite/gas/sh/sh64/crange2-2.d | 22 -
gas/testsuite/gas/sh/sh64/crange2-noexp-1.d | 43 -
gas/testsuite/gas/sh/sh64/crange2.s | 34 -
gas/testsuite/gas/sh/sh64/crange3-1.d | 24 -
gas/testsuite/gas/sh/sh64/crange3.s | 34 -
gas/testsuite/gas/sh/sh64/crange4-1.d | 19 -
gas/testsuite/gas/sh/sh64/crange4.s | 8 -
gas/testsuite/gas/sh/sh64/crange5-1.d | 12 -
gas/testsuite/gas/sh/sh64/crange5.s | 26 -
gas/testsuite/gas/sh/sh64/creg-1.d | 77 -
gas/testsuite/gas/sh/sh64/creg-1.s | 79 -
gas/testsuite/gas/sh/sh64/creg-2.d | 17 -
gas/testsuite/gas/sh/sh64/creg-2.s | 14 -
gas/testsuite/gas/sh/sh64/datal-1.s | 41 -
gas/testsuite/gas/sh/sh64/datal-2.d | 44 -
gas/testsuite/gas/sh/sh64/datal-2.s | 46 -
gas/testsuite/gas/sh/sh64/datal-3.s | 48 -
gas/testsuite/gas/sh/sh64/datal32-1.d | 45 -
gas/testsuite/gas/sh/sh64/datal32-3.d | 94 -
gas/testsuite/gas/sh/sh64/datal64-1.d | 50 -
gas/testsuite/gas/sh/sh64/datal64-3.d | 123 -
gas/testsuite/gas/sh/sh64/eh-1.d | 14 -
gas/testsuite/gas/sh/sh64/eh-1.s | 7 -
gas/testsuite/gas/sh/sh64/endian-1.d | 9 -
gas/testsuite/gas/sh/sh64/endian-1.s | 7 -
gas/testsuite/gas/sh/sh64/endian-2.d | 10 -
gas/testsuite/gas/sh/sh64/endian-2.s | 7 -
gas/testsuite/gas/sh/sh64/err-1.s | 47 -
gas/testsuite/gas/sh/sh64/err-2.s | 16 -
gas/testsuite/gas/sh/sh64/err-3.s | 36 -
gas/testsuite/gas/sh/sh64/err-4.s | 27 -
gas/testsuite/gas/sh/sh64/err-abi-32.s | 10 -
gas/testsuite/gas/sh/sh64/err-abi-64.s | 10 -
gas/testsuite/gas/sh/sh64/err-dsp.s | 15 -
gas/testsuite/gas/sh/sh64/err-movi-noexp-1.s | 24 -
gas/testsuite/gas/sh/sh64/err-noexp-cmd1.s | 10 -
gas/testsuite/gas/sh/sh64/err-pt-1.s | 18 -
gas/testsuite/gas/sh/sh64/err-pt32-cmd1.s | 10 -
gas/testsuite/gas/sh/sh64/err-pt32-cmd2.s | 10 -
gas/testsuite/gas/sh/sh64/err-pt32-cmd3.s | 10 -
gas/testsuite/gas/sh/sh64/err-ptb-1.s | 34 -
gas/testsuite/gas/sh/sh64/err-ptb-2.s | 34 -
gas/testsuite/gas/sh/sh64/err.exp | 9 -
gas/testsuite/gas/sh/sh64/immexpr1.s | 85 -
gas/testsuite/gas/sh/sh64/immexpr2.s | 16 -
gas/testsuite/gas/sh/sh64/immexpr32-1.d | 67 -
gas/testsuite/gas/sh/sh64/immexpr32-2.d | 11 -
gas/testsuite/gas/sh/sh64/immexpr64-1.d | 68 -
gas/testsuite/gas/sh/sh64/immexpr64-2.d | 11 -
gas/testsuite/gas/sh/sh64/lineno.d | 19 -
gas/testsuite/gas/sh/sh64/lineno.s | 7 -
gas/testsuite/gas/sh/sh64/localcom-1.d | 30 -
gas/testsuite/gas/sh/sh64/localcom-1.s | 26 -
gas/testsuite/gas/sh/sh64/mix-1.d | 42 -
gas/testsuite/gas/sh/sh64/mix-1.s | 21 -
gas/testsuite/gas/sh/sh64/mix-noexp-1.d | 33 -
gas/testsuite/gas/sh/sh64/movi-1.s | 20 -
gas/testsuite/gas/sh/sh64/movi-2.s | 28 -
gas/testsuite/gas/sh/sh64/movi-3.d | 18 -
gas/testsuite/gas/sh/sh64/movi-3.s | 10 -
gas/testsuite/gas/sh/sh64/movi32-1.d | 35 -
gas/testsuite/gas/sh/sh64/movi32-2.d | 36 -
gas/testsuite/gas/sh/sh64/movi32-noexp-2.d | 28 -
gas/testsuite/gas/sh/sh64/movi64-1.d | 44 -
gas/testsuite/gas/sh/sh64/movi64-2.d | 30 -
gas/testsuite/gas/sh/sh64/movi64-2.s | 10 -
gas/testsuite/gas/sh/sh64/movi64-3.d | 52 -
gas/testsuite/gas/sh/sh64/movi64-noexp-2.d | 28 -
gas/testsuite/gas/sh/sh64/pt-1.d | 26 -
gas/testsuite/gas/sh/sh64/pt-1.s | 17 -
gas/testsuite/gas/sh/sh64/pt-2.s | 22 -
gas/testsuite/gas/sh/sh64/pt-noexp-1.d | 27 -
gas/testsuite/gas/sh/sh64/pt32-1.d | 39 -
gas/testsuite/gas/sh/sh64/pt32-noexp-2.d | 34 -
gas/testsuite/gas/sh/sh64/pt64-1.d | 47 -
gas/testsuite/gas/sh/sh64/pt64-32-1.d | 27 -
gas/testsuite/gas/sh/sh64/pt64-32-2.d | 39 -
gas/testsuite/gas/sh/sh64/pt64-noexp-2.d | 34 -
gas/testsuite/gas/sh/sh64/ptc-1.s | 5 -
gas/testsuite/gas/sh/sh64/ptc32-1.d | 15 -
gas/testsuite/gas/sh/sh64/ptc32-noexp-1.d | 12 -
gas/testsuite/gas/sh/sh64/ptc64-1.d | 19 -
gas/testsuite/gas/sh/sh64/ptc64-32-1.d | 15 -
gas/testsuite/gas/sh/sh64/ptc64-noexp-1.d | 13 -
gas/testsuite/gas/sh/sh64/ptext-1.s | 8 -
gas/testsuite/gas/sh/sh64/ptext32-1.d | 40 -
gas/testsuite/gas/sh/sh64/ptext32-noexp-1.d | 22 -
gas/testsuite/gas/sh/sh64/ptext64-1.d | 64 -
gas/testsuite/gas/sh/sh64/ptext64-32-1.d | 40 -
gas/testsuite/gas/sh/sh64/ptext64-noexp-1.d | 22 -
gas/testsuite/gas/sh/sh64/rel-1.s | 137 -
gas/testsuite/gas/sh/sh64/rel-2.s | 138 -
gas/testsuite/gas/sh/sh64/rel-3.s | 137 -
gas/testsuite/gas/sh/sh64/rel-4.s | 138 -
gas/testsuite/gas/sh/sh64/rel-5.s | 48 -
gas/testsuite/gas/sh/sh64/rel32-1.d | 86 -
gas/testsuite/gas/sh/sh64/rel32-2.d | 86 -
gas/testsuite/gas/sh/sh64/rel32-3.d | 86 -
gas/testsuite/gas/sh/sh64/rel32-4.d | 86 -
gas/testsuite/gas/sh/sh64/rel32-5.d | 30 -
gas/testsuite/gas/sh/sh64/rel64-1.d | 111 -
gas/testsuite/gas/sh/sh64/rel64-2.d | 111 -
gas/testsuite/gas/sh/sh64/rel64-3.d | 111 -
gas/testsuite/gas/sh/sh64/rel64-4.d | 111 -
gas/testsuite/gas/sh/sh64/rel64-5.d | 40 -
gas/testsuite/gas/sh/sh64/relax-1.d | 30 -
gas/testsuite/gas/sh/sh64/relax-1.s | 18 -
gas/testsuite/gas/sh/sh64/relax-2.d | 30 -
gas/testsuite/gas/sh/sh64/relax-2.s | 23 -
gas/testsuite/gas/sh/sh64/relax-3.d | 43 -
gas/testsuite/gas/sh/sh64/relax-3.s | 32 -
gas/testsuite/gas/sh/sh64/sh64.exp | 27 -
gas/testsuite/gas/sh/sh64/shift-1.s | 42 -
gas/testsuite/gas/sh/sh64/shift-2.s | 34 -
gas/testsuite/gas/sh/sh64/shift-3.s | 7 -
gas/testsuite/gas/sh/sh64/shift32-1.d | 58 -
gas/testsuite/gas/sh/sh64/shift32-3.d | 14 -
gas/testsuite/gas/sh/sh64/shift32-noexp-3.d | 14 -
gas/testsuite/gas/sh/sh64/shift64-1.d | 58 -
gas/testsuite/gas/sh/sh64/shift64-2.d | 42 -
gas/testsuite/gas/sh/sh64/shift64-3.d | 14 -
gas/testsuite/gas/sh/sh64/shift64-noexp-3.d | 14 -
gas/testsuite/gas/sh/sh64/syntax-1.d | 157 -
gas/testsuite/gas/sh/sh64/syntax-1.s | 199 -
gas/testsuite/gas/sh/sh64/syntax-2.d | 11 -
gas/testsuite/gas/sh/sh64/syntax-2.s | 10 -
gas/testsuite/gas/sh/sh64/ua-1.s | 16 -
gas/testsuite/gas/sh/sh64/ua32-1.d | 23 -
gas/testsuite/gas/sh/sh64/ua64-1.d | 23 -
gas/testsuite/gas/sparc-solaris/addend.exp | 2 +-
gas/testsuite/gas/sparc-solaris/gas.exp | 2 +-
gas/testsuite/gas/sparc/call-relax-aout.d | 19 +
gas/testsuite/gas/sparc/call-relax.d | 18 +
gas/testsuite/gas/sparc/call-relax.s | 10 +
gas/testsuite/gas/sparc/dcti-couples-v8.d | 2 +-
gas/testsuite/gas/sparc/dcti-couples-v9c.d | 2 +-
gas/testsuite/gas/sparc/fpcmpshl-diag.l | 6 +
gas/testsuite/gas/sparc/fpcmpshl-diag.s | 7 +
gas/testsuite/gas/sparc/fpcmpshl.d | 27 +
gas/testsuite/gas/sparc/fpcmpshl.s | 19 +
gas/testsuite/gas/sparc/ldm-stm-diag.l | 3 +
gas/testsuite/gas/sparc/ldm-stm-diag.s | 4 +
gas/testsuite/gas/sparc/ldm-stm.d | 70 +
gas/testsuite/gas/sparc/ldm-stm.s | 63 +
gas/testsuite/gas/sparc/ldmf-stmf-diag.l | 11 +
gas/testsuite/gas/sparc/ldmf-stmf-diag.s | 12 +
gas/testsuite/gas/sparc/ldmf-stmf.d | 37 +
gas/testsuite/gas/sparc/ldmf-stmf.s | 31 +
gas/testsuite/gas/sparc/leon.d | 13 +
gas/testsuite/gas/sparc/leon.s | 6 +
gas/testsuite/gas/sparc/mismatch.exp | 2 +-
gas/testsuite/gas/sparc/on-diag.l | 5 +
gas/testsuite/gas/sparc/on-diag.s | 6 +
gas/testsuite/gas/sparc/on.d | 13 +
gas/testsuite/gas/sparc/on.s | 6 +
gas/testsuite/gas/sparc/rdasr.d | 3 +-
gas/testsuite/gas/sparc/rdasr.s | 1 +
gas/testsuite/gas/sparc/rle.d | 12 +
gas/testsuite/gas/sparc/rle.s | 4 +
gas/testsuite/gas/sparc/sparc.exp | 87 +-
gas/testsuite/gas/sparc/sparc6-diag.l | 7 +
gas/testsuite/gas/sparc/sparc6-diag.s | 8 +
gas/testsuite/gas/sparc/sparc6.d | 18 +
gas/testsuite/gas/sparc/sparc6.s | 11 +
gas/testsuite/gas/sparc/v8branch.d | 18 +
gas/testsuite/gas/sparc/v8branch.s | 11 +
gas/testsuite/gas/sun4/addend.d | 13 -
gas/testsuite/gas/sun4/addend.exp | 23 -
gas/testsuite/gas/sun4/addend.s | 11 -
gas/testsuite/gas/symver/symver.exp | 7 +-
gas/testsuite/gas/tic4x/tic4x.exp | 2 +-
gas/testsuite/gas/tic54x/opcodes.s | 2 +-
gas/testsuite/gas/tic54x/tic54x.exp | 2 +-
gas/testsuite/gas/tic6x/arch-invalid-1.d | 2 +-
gas/testsuite/gas/tic6x/arch-invalid-2.d | 2 +-
gas/testsuite/gas/tic6x/dir-junk.d | 2 +-
gas/testsuite/gas/tic6x/insns-bad-1.d | 2 +-
gas/testsuite/gas/tic6x/insns-bad-2.d | 2 +-
gas/testsuite/gas/tic6x/parallel-bad-1.d | 2 +-
gas/testsuite/gas/tic6x/parallel-bad-2.d | 2 +-
gas/testsuite/gas/tic6x/parallel-bad-3.d | 2 +-
gas/testsuite/gas/tic6x/parallel-bad-4.d | 2 +-
gas/testsuite/gas/tic6x/predicate-bad-1.d | 2 +-
gas/testsuite/gas/tic6x/predicate-bad-2.d | 2 +-
gas/testsuite/gas/tic6x/predicate-bad-3.d | 2 +-
gas/testsuite/gas/tic6x/reloc-bad-1.d | 2 +-
gas/testsuite/gas/tic6x/reloc-bad-2.d | 2 +-
gas/testsuite/gas/tic6x/reloc-bad-3.d | 2 +-
gas/testsuite/gas/tic6x/reloc-bad-4.d | 2 +-
gas/testsuite/gas/tic6x/reloc-bad-5.d | 2 +-
gas/testsuite/gas/tic6x/reloc-bad-6.d | 2 +-
gas/testsuite/gas/tic6x/resource-func-unit-1.d | 2 +-
gas/testsuite/gas/tic6x/resource-func-unit-2.d | 2 +-
gas/testsuite/gas/tic6x/sploop-bad-1.d | 2 +-
gas/testsuite/gas/tic6x/sploop-bad-2.d | 2 +-
gas/testsuite/gas/tic6x/sploop-bad-3.d | 2 +-
gas/testsuite/gas/tic6x/sploop-bad-4.d | 2 +-
gas/testsuite/gas/tic6x/sploop-bad-5.d | 2 +-
gas/testsuite/gas/tic6x/sploop-bad-6.d | 2 +-
gas/testsuite/gas/tic6x/sploop-bad-7.d | 2 +-
gas/testsuite/gas/tic6x/tic6x.exp | 2 +-
gas/testsuite/gas/tic6x/unwind-1.d | 2 +-
gas/testsuite/gas/tic6x/unwind-2.d | 2 +-
gas/testsuite/gas/tic6x/unwind-3.d | 4 +-
gas/testsuite/gas/tic6x/unwind-bad-1.d | 2 +-
gas/testsuite/gas/tic6x/unwind-bad-2.d | 2 +-
gas/testsuite/gas/tilegx/tilegx.exp | 2 +-
gas/testsuite/gas/tilepro/tilepro.exp | 2 +-
gas/testsuite/gas/v850/basic.exp | 2 +-
gas/testsuite/gas/vax/vax.exp | 2 +-
gas/testsuite/gas/visium/error.exp | 2 +-
gas/testsuite/gas/visium/visium.exp | 2 +-
gas/testsuite/gas/wasm32/disass-2.d | 11 +-
gas/testsuite/gas/wasm32/disass.d | 11 +-
gas/testsuite/gas/wasm32/wasm32.exp | 2 +-
gas/testsuite/gas/xc16x/xc16x.exp | 2 +-
gas/testsuite/gas/xgate/xgate.exp | 2 +-
gas/testsuite/gas/xstormy16/allinsn.exp | 2 +-
gas/testsuite/gas/xtensa/all.exp | 9 +-
gas/testsuite/gas/xtensa/auto-litpools-2.d | 6 +
gas/testsuite/gas/xtensa/auto-litpools-2.s | 9 +
gas/testsuite/gas/xtensa/auto-litpools-3.d | 11 +
gas/testsuite/gas/xtensa/auto-litpools-3.s | 6 +
gas/testsuite/gas/xtensa/auto-litpools-4.d | 18 +
gas/testsuite/gas/xtensa/auto-litpools-4.s | 6 +
gas/testsuite/gas/xtensa/auto-litpools-first1.d | 12 +
gas/testsuite/gas/xtensa/auto-litpools-first1.s | 3 +
gas/testsuite/gas/xtensa/auto-litpools-first2.d | 15 +
gas/testsuite/gas/xtensa/auto-litpools-first2.s | 3 +
gas/testsuite/gas/xtensa/auto-litpools.d | 6 +-
gas/testsuite/gas/xtensa/auto-litpools.s | 2 +-
gas/testsuite/gas/xtensa/text-section-literals-1.d | 18 +
gas/testsuite/gas/xtensa/text-section-literals-1.s | 6 +
gas/testsuite/gas/xtensa/trampoline-2.l | 1 +
gas/testsuite/gas/xtensa/trampoline-2.s | 20 +
gas/testsuite/gas/xtensa/trampoline.d | 35 +-
gas/testsuite/gas/xtensa/trampoline.s | 2 +
gas/testsuite/gas/xtensa/xtensa-err.exp | 2 +-
gas/testsuite/gas/z80/z80.exp | 2 +-
gas/testsuite/gas/z8k/z8k.exp | 2 +-
gas/testsuite/lib/gas-defs.exp | 494 +-
gas/testsuite/lib/gas-dg.exp | 2 +-
gas/write.c | 346 +-
gas/write.h | 19 +-
gdb/.dir-locals.el | 4 +-
gdb/.gitignore | 1 -
gdb/ChangeLog |19617 +++-
gdb/ChangeLog-2017 |18463 +++
gdb/MAINTAINERS | 127 +-
gdb/Makefile.in | 974 +-
gdb/NEWS | 566 +-
gdb/PROBLEMS | 7 +-
gdb/README | 219 +-
gdb/aarch32-linux-nat.c | 31 +-
gdb/aarch32-linux-nat.h | 2 +-
gdb/aarch64-fbsd-nat.c | 132 +
gdb/aarch64-fbsd-tdep.c | 205 +
gdb/aarch64-fbsd-tdep.h | 33 +
gdb/aarch64-linux-nat.c | 397 +-
gdb/aarch64-linux-tdep.c | 499 +-
gdb/aarch64-linux-tdep.h | 2 +-
gdb/aarch64-newlib-tdep.c | 5 +-
gdb/aarch64-ravenscar-thread.c | 213 +
gdb/aarch64-ravenscar-thread.h | 27 +
gdb/aarch64-tdep.c | 992 +-
gdb/aarch64-tdep.h | 46 +-
gdb/acinclude.m4 | 8 +-
gdb/aclocal.m4 | 81 +-
gdb/acx_configure_dir.m4 | 2 +-
gdb/ada-exp.y | 91 +-
gdb/ada-lang.c | 2462 +-
gdb/ada-lang.h | 47 +-
gdb/ada-lex.l | 48 +-
gdb/ada-operator.def | 2 +-
gdb/ada-tasks.c | 232 +-
gdb/ada-typeprint.c | 50 +-
gdb/ada-valprint.c | 63 +-
gdb/ada-varobj.c | 53 +-
gdb/addrmap.c | 7 +-
gdb/addrmap.h | 2 +-
gdb/agent.c | 11 +-
gdb/aix-thread.c | 478 +-
gdb/alpha-bsd-nat.c | 53 +-
gdb/alpha-bsd-tdep.c | 2 +-
gdb/alpha-bsd-tdep.h | 2 +-
gdb/alpha-linux-nat.c | 24 +-
gdb/alpha-linux-tdep.c | 9 +-
gdb/alpha-mdebug-tdep.c | 2 +-
gdb/alpha-nbsd-tdep.c | 23 +-
gdb/alpha-obsd-tdep.c | 5 +-
gdb/alpha-tdep.c | 157 +-
gdb/alpha-tdep.h | 5 +-
gdb/amd64-bsd-nat.c | 88 +-
gdb/amd64-bsd-nat.h | 44 +
gdb/amd64-darwin-tdep.c | 10 +-
gdb/amd64-darwin-tdep.h | 2 +-
gdb/amd64-dicos-tdep.c | 9 +-
gdb/amd64-fbsd-nat.c | 77 +-
gdb/amd64-fbsd-tdep.c | 19 +-
gdb/amd64-linux-nat.c | 78 +-
gdb/amd64-linux-tdep.c | 168 +-
gdb/amd64-linux-tdep.h | 8 +-
gdb/amd64-nat.c | 10 +-
gdb/amd64-nat.h | 7 +-
gdb/amd64-nbsd-nat.c | 14 +-
gdb/amd64-nbsd-tdep.c | 10 +-
gdb/amd64-obsd-nat.c | 28 +-
gdb/amd64-obsd-tdep.c | 22 +-
gdb/amd64-sol2-tdep.c | 13 +-
gdb/amd64-tdep.c | 350 +-
gdb/amd64-tdep.h | 19 +-
gdb/amd64-windows-nat.c | 5 +-
gdb/amd64-windows-tdep.c | 21 +-
gdb/annotate.c | 24 +-
gdb/annotate.h | 12 +-
gdb/arc-newlib-tdep.c | 5 +-
gdb/arc-tdep.c | 149 +-
gdb/arc-tdep.h | 17 +-
gdb/arch-utils.c | 111 +-
gdb/arch-utils.h | 46 +-
gdb/arch/aarch64-insn.c | 2 +-
gdb/arch/aarch64-insn.h | 2 +-
gdb/arch/aarch64.c | 47 +
gdb/arch/aarch64.h | 100 +
gdb/arch/amd64.c | 78 +
gdb/arch/amd64.h | 22 +
gdb/arch/arm-get-next-pcs.c | 103 +-
gdb/arch/arm-get-next-pcs.h | 7 +-
gdb/arch/arm-linux.c | 2 +-
gdb/arch/arm-linux.h | 2 +-
gdb/arch/arm.c | 5 +-
gdb/arch/arm.h | 2 +-
gdb/arch/i386.c | 69 +
gdb/arch/i386.h | 21 +
gdb/arch/ppc-linux-common.c | 91 +
gdb/arch/ppc-linux-common.h | 80 +
gdb/arch/ppc-linux-tdesc.h | 48 +
gdb/arch/tic6x.c | 47 +
gdb/arch/tic6x.h | 26 +
gdb/arch/xtensa.h | 2 +-
gdb/arm-bsd-tdep.c | 14 +-
gdb/arm-fbsd-nat.c | 152 +
gdb/arm-fbsd-tdep.c | 258 +
gdb/arm-fbsd-tdep.h | 40 +
gdb/arm-linux-nat.c | 299 +-
gdb/arm-linux-tdep.c | 151 +-
gdb/arm-linux-tdep.h | 2 +-
gdb/arm-nbsd-nat.c | 169 +-
gdb/arm-nbsd-tdep.c | 5 +-
gdb/arm-obsd-tdep.c | 16 +-
gdb/arm-pikeos-tdep.c | 92 +
gdb/arm-symbian-tdep.c | 5 +-
gdb/arm-tdep.c | 1043 +-
gdb/arm-tdep.h | 21 +-
gdb/arm-wince-tdep.c | 5 +-
gdb/auto-load.c | 347 +-
gdb/auto-load.h | 4 +-
gdb/auxv.c | 85 +-
gdb/auxv.h | 5 +-
gdb/avr-tdep.c | 68 +-
gdb/ax-gdb.c | 395 +-
gdb/ax-gdb.h | 4 +-
gdb/ax-general.c | 2 +-
gdb/ax.h | 14 +-
gdb/ax_cxx_compile_stdcxx.m4 | 460 +-
gdb/bcache.c | 2 +-
gdb/bcache.h | 2 +-
gdb/bfd-target.c | 107 +-
gdb/bfd-target.h | 2 +-
gdb/bfin-linux-tdep.c | 13 +-
gdb/bfin-tdep.c | 22 +-
gdb/bfin-tdep.h | 2 +-
gdb/block.c | 143 +-
gdb/block.h | 139 +-
gdb/blockframe.c | 206 +-
gdb/break-catch-sig.c | 193 +-
gdb/break-catch-syscall.c | 260 +-
gdb/break-catch-throw.c | 142 +-
gdb/breakpoint.c | 4078 +-
gdb/breakpoint.h | 525 +-
gdb/bsd-kvm.c | 119 +-
gdb/bsd-kvm.h | 2 +-
gdb/bsd-uthread.c | 192 +-
gdb/bsd-uthread.h | 2 +-
gdb/btrace.c | 1339 +-
gdb/btrace.h | 94 +-
gdb/build-id.c | 63 +-
gdb/build-id.h | 21 +-
gdb/buildsym-legacy.c | 346 +
gdb/buildsym-legacy.h | 182 +
gdb/buildsym.c | 1049 +-
gdb/buildsym.h | 392 +-
gdb/c-exp.y | 405 +-
gdb/c-lang.c | 108 +-
gdb/c-lang.h | 39 +-
gdb/c-support.h | 46 +
gdb/c-typeprint.c | 1210 +-
gdb/c-valprint.c | 15 +-
gdb/c-varobj.c | 30 +-
gdb/charset-list.h | 2 +-
gdb/charset.c | 121 +-
gdb/charset.h | 12 +-
gdb/cli-out.c | 20 +-
gdb/cli-out.h | 20 +-
gdb/cli/cli-cmds.c | 701 +-
gdb/cli/cli-cmds.h | 27 +-
gdb/cli/cli-decode.c | 315 +-
gdb/cli/cli-decode.h | 105 +-
gdb/cli/cli-dump.c | 202 +-
gdb/cli/cli-interp.c | 54 +-
gdb/cli/cli-interp.h | 2 +-
gdb/cli/cli-logging.c | 21 +-
gdb/cli/cli-script.c | 726 +-
gdb/cli/cli-script.h | 123 +-
gdb/cli/cli-setshow.c | 47 +-
gdb/cli/cli-setshow.h | 2 +-
gdb/cli/cli-utils.c | 280 +-
gdb/cli/cli-utils.h | 94 +-
gdb/coff-pe-read.c | 85 +-
gdb/coff-pe-read.h | 2 +-
gdb/coffread.c | 157 +-
gdb/command.h | 129 +-
gdb/common/agent.c | 15 +-
gdb/common/agent.h | 20 +-
gdb/common/array-view.h | 206 +
gdb/common/ax.def | 2 +-
gdb/common/break-common.h | 2 +-
gdb/common/btrace-common.c | 36 +-
gdb/common/btrace-common.h | 47 +-
gdb/common/buffer.c | 8 +-
gdb/common/buffer.h | 4 +-
gdb/common/byte-vector.h | 63 +
gdb/common/cleanups.c | 2 +-
gdb/common/cleanups.h | 2 +-
gdb/common/common-debug.c | 2 +-
gdb/common/common-debug.h | 2 +-
gdb/common/common-defs.h | 39 +-
gdb/common/common-exceptions.c | 10 +-
gdb/common/common-exceptions.h | 51 +-
gdb/common/common-gdbthread.h | 25 +
gdb/common/common-inferior.h | 41 +
gdb/common/common-regcache.c | 2 +-
gdb/common/common-regcache.h | 24 +-
gdb/common/common-types.h | 7 +-
gdb/common/common-utils.c | 131 +-
gdb/common/common-utils.h | 85 +-
gdb/common/common.host | 6 +-
gdb/common/common.m4 | 7 +-
gdb/common/create-version.sh | 2 +-
gdb/common/def-vector.h | 36 +
gdb/common/default-init-alloc.h | 67 +
gdb/common/enum-flags.h | 20 +-
gdb/common/environ.c | 241 +-
gdb/common/environ.h | 94 +-
gdb/common/errors.c | 2 +-
gdb/common/errors.h | 2 +-
gdb/common/fileio.c | 2 +-
gdb/common/fileio.h | 2 +-
gdb/common/filestuff.c | 113 +-
gdb/common/filestuff.h | 76 +-
gdb/common/format.c | 75 +-
gdb/common/format.h | 55 +-
gdb/common/function-view.h | 42 +-
gdb/common/gdb_assert.h | 5 +-
gdb/common/gdb_locale.h | 2 +-
gdb/common/gdb_optional.h | 134 +-
gdb/common/gdb_proc_service.h | 173 +
gdb/common/gdb_ref_ptr.h | 9 +-
gdb/common/gdb_setjmp.h | 2 +-
gdb/common/gdb_signals.h | 2 +-
gdb/common/gdb_splay_tree.h | 42 +
gdb/common/gdb_string_view.h | 560 +
gdb/common/gdb_string_view.tcc | 219 +
gdb/common/gdb_sys_time.h | 2 +-
gdb/common/gdb_tilde_expand.c | 95 +
gdb/common/gdb_tilde_expand.h | 31 +
gdb/common/gdb_unique_ptr.h | 9 +-
gdb/common/gdb_unlinker.h | 2 +-
gdb/common/gdb_vecs.c | 56 +-
gdb/common/gdb_vecs.h | 70 +-
gdb/common/gdb_wait.h | 2 +-
gdb/common/hash_enum.h | 45 +
gdb/common/host-defs.h | 2 +-
gdb/common/job-control.c | 86 +
gdb/common/job-control.h | 38 +
gdb/common/mingw-strerror.c | 2 +-
gdb/common/netstuff.c | 155 +
gdb/common/netstuff.h | 76 +
gdb/common/new-op.c | 2 +-
gdb/common/observable.h | 119 +
gdb/common/offset-type.h | 20 +-
gdb/common/pathstuff.c | 240 +
gdb/common/pathstuff.h | 89 +
gdb/common/poison.h | 248 +
gdb/common/posix-strerror.c | 2 +-
gdb/common/preprocessor.h | 6 +-
gdb/common/print-utils.c | 8 +-
gdb/common/print-utils.h | 2 +-
gdb/common/ptid.c | 82 +-
gdb/common/ptid.h | 46 +-
gdb/common/queue.h | 2 +-
gdb/common/refcounted-object.h | 70 +
gdb/common/rsp-low.c | 67 +-
gdb/common/rsp-low.h | 22 +-
gdb/common/run-time-clock.c | 2 +-
gdb/common/run-time-clock.h | 2 +-
gdb/common/scoped_fd.h | 68 +
gdb/common/scoped_mmap.c | 49 +
gdb/common/scoped_mmap.h | 95 +
gdb/common/scoped_restore.h | 38 +-
gdb/common/selftest.c | 112 +
gdb/common/selftest.h | 73 +
gdb/common/signals-state-save-restore.c | 33 +-
gdb/common/signals-state-save-restore.h | 7 +-
gdb/common/signals.c | 2 +-
gdb/common/symbol.h | 2 +-
gdb/common/tdesc.c | 400 +
gdb/common/tdesc.h | 407 +
gdb/common/traits.h | 77 +-
gdb/common/underlying.h | 2 +-
gdb/common/valid-expr.h | 2 +-
gdb/common/vec.c | 2 +-
gdb/common/vec.h | 27 +-
gdb/common/version.h | 2 +-
gdb/common/x86-xstate.h | 15 +-
gdb/common/xml-utils.c | 60 +-
gdb/common/xml-utils.h | 13 +-
gdb/compile/compile-c-support.c | 638 +-
gdb/compile/compile-c-symbols.c | 228 +-
gdb/compile/compile-c-types.c | 353 +-
gdb/compile/compile-c.h | 95 +
gdb/compile/compile-cplus-symbols.c | 491 +
gdb/compile/compile-cplus-types.c | 1433 +
gdb/compile/compile-cplus.h | 205 +
gdb/compile/compile-internal.h | 194 +-
gdb/compile/compile-loc2c.c | 187 +-
gdb/compile/compile-object-load.c | 205 +-
gdb/compile/compile-object-load.h | 27 +-
gdb/compile/compile-object-run.c | 13 +-
gdb/compile/compile-object-run.h | 2 +-
gdb/compile/compile.c | 501 +-
gdb/compile/compile.h | 9 +-
gdb/compile/gcc-c-plugin.h | 64 +
gdb/compile/gcc-cp-plugin.h | 85 +
gdb/complaints.c | 281 +-
gdb/complaints.h | 46 +-
gdb/completer.c | 1930 +-
gdb/completer.h | 591 +-
gdb/config.in | 116 +-
gdb/config/aarch64/linux.mh | 29 -
gdb/config/alpha/alpha-linux.mh | 15 -
gdb/config/alpha/nbsd.mh | 4 -
gdb/config/arm/linux.mh | 10 -
gdb/config/arm/nbsdelf.mh | 2 -
gdb/config/djgpp/djcheck.sh | 2 +-
gdb/config/djgpp/djconfig.sh | 4 +-
gdb/config/djgpp/fnchange.lst | 1 +
gdb/config/djgpp/langinfo.h | 2 +-
gdb/config/djgpp/nl_types.h | 2 +-
gdb/config/i386/cygwin.mh | 3 -
gdb/config/i386/cygwin64.mh | 20 -
gdb/config/i386/darwin.mh | 4 -
gdb/config/i386/fbsd.mh | 8 -
gdb/config/i386/fbsd64.mh | 7 -
gdb/config/i386/go32.mh | 11 -
gdb/config/i386/i386gnu.mh | 41 -
gdb/config/i386/i386gnu.mn | 29 +
gdb/config/i386/i386sol2.mh | 4 -
gdb/config/i386/linux.mh | 14 -
gdb/config/i386/linux64.mh | 15 -
gdb/config/i386/mingw.mh | 3 -
gdb/config/i386/mingw64.mh | 1 -
gdb/config/i386/nbsd64.mh | 3 -
gdb/config/i386/nbsdelf.mh | 5 -
gdb/config/i386/nm-fbsd.h | 2 +-
gdb/config/i386/nm-i386gnu.h | 2 +-
gdb/config/i386/nto.mh | 4 -
gdb/config/i386/obsd.mh | 5 -
gdb/config/i386/obsd64.mh | 5 -
gdb/config/i386/sol2-64.mh | 4 -
gdb/config/ia64/linux.mh | 13 -
gdb/config/m32r/linux.mh | 10 -
gdb/config/m68k/linux.mh | 14 -
gdb/config/m68k/nbsdelf.mh | 4 -
gdb/config/m68k/obsd.mh | 4 -
gdb/config/m88k/obsd.mh | 2 -
gdb/config/mips/fbsd.mh | 3 -
gdb/config/mips/linux.mh | 11 -
gdb/config/mips/nbsd.mh | 2 -
gdb/config/mips/obsd64.mh | 2 -
gdb/config/nm-linux.h | 2 +-
gdb/config/nm-nto.h | 2 +-
gdb/config/pa/linux.mh | 10 -
gdb/config/pa/nbsd.mh | 2 -
gdb/config/pa/obsd.mh | 2 -
gdb/config/powerpc/aix.mh | 8 -
gdb/config/powerpc/fbsd.mh | 24 -
gdb/config/powerpc/linux.mh | 12 -
gdb/config/powerpc/nbsd.mh | 4 -
gdb/config/powerpc/obsd.mh | 4 -
gdb/config/powerpc/ppc64-linux.mh | 15 -
gdb/config/powerpc/spu-linux.mh | 8 -
gdb/config/s390/linux.mh | 9 -
gdb/config/sh/nbsd.mh | 2 -
gdb/config/sparc/fbsd.mh | 7 -
gdb/config/sparc/linux.mh | 13 -
gdb/config/sparc/linux64.mh | 13 -
gdb/config/sparc/nbsd64.mh | 5 -
gdb/config/sparc/nbsdelf.mh | 5 -
gdb/config/sparc/nm-sol2.h | 2 +-
gdb/config/sparc/obsd64.mh | 5 -
gdb/config/sparc/sol2.mh | 6 -
gdb/config/tilegx/linux.mh | 13 -
gdb/config/vax/nbsdelf.mh | 5 -
gdb/config/vax/obsd.mh | 5 -
gdb/config/xtensa/linux.mh | 11 -
gdb/configure | 3092 +-
gdb/configure.ac | 302 +-
gdb/configure.host | 12 +-
gdb/configure.nat | 497 +
gdb/configure.tgt | 331 +-
gdb/continuations.c | 2 +-
gdb/continuations.h | 2 +-
gdb/contrib/ari/create-web-ari-in-src.sh | 2 +-
gdb/contrib/ari/gdb_ari.sh | 4 +-
gdb/contrib/ari/gdb_find.sh | 2 +-
gdb/contrib/ari/update-web-ari.sh | 2 +-
gdb/contrib/cc-with-tweaks.sh | 42 +-
gdb/contrib/cleanup_check.py | 2 +-
gdb/contrib/excheck.py | 2 +-
gdb/contrib/expect-read1.c | 2 +-
gdb/contrib/expect-read1.sh | 2 +-
gdb/contrib/exsummary.py | 2 +-
gdb/contrib/gcc-with-excheck | 2 +-
gdb/contrib/gdb-add-index.sh | 65 +-
gdb/contrib/gdbrp-dump.py | 8 +-
gdb/contrib/test_pubnames_and_indexes.py | 2 +-
gdb/copying.awk | 10 +-
gdb/copying.c | 10 +-
gdb/copyright.py | 17 +-
gdb/core-regset.c | 121 -
gdb/corefile.c | 78 +-
gdb/corelow.c | 600 +-
gdb/cp-abi.c | 18 +-
gdb/cp-abi.h | 2 +-
gdb/cp-name-parser.y | 740 +-
gdb/cp-namespace.c | 104 +-
gdb/cp-support.c | 742 +-
gdb/cp-support.h | 43 +-
gdb/cp-valprint.c | 40 +-
gdb/cris-linux-tdep.c | 5 +-
gdb/cris-tdep.c | 74 +-
gdb/cris-tdep.h | 2 +-
gdb/csky-linux-tdep.c | 263 +
gdb/csky-tdep.c | 2294 +
gdb/csky-tdep.h | 355 +
gdb/ctf.c | 203 +-
gdb/ctf.h | 2 +-
gdb/d-exp.y | 194 +-
gdb/d-lang.c | 19 +-
gdb/d-lang.h | 4 +-
gdb/d-namespace.c | 75 +-
gdb/d-valprint.c | 3 +-
gdb/darwin-nat-info.c | 143 +-
gdb/darwin-nat.c | 913 +-
gdb/darwin-nat.h | 107 +-
gdb/data-directory/Makefile.in | 2 +-
gdb/dbxread.c | 479 +-
gdb/dcache.c | 31 +-
gdb/dcache.h | 2 +-
gdb/debug.c | 2 +-
gdb/defs.h | 177 +-
gdb/demangle.c | 49 +-
gdb/dfp.c | 384 -
gdb/dfp.h | 54 -
gdb/dicos-tdep.c | 2 +-
gdb/dicos-tdep.h | 2 +-
gdb/dictionary.c | 164 +-
gdb/dictionary.h | 69 +-
gdb/disable-implicit-rules.mk | 2 +-
gdb/disasm-selftests.c | 26 +-
gdb/disasm.c | 433 +-
gdb/disasm.h | 32 +-
gdb/doc/ChangeLog | 724 +
gdb/doc/Doxyfile-base.in | 2 +-
gdb/doc/Doxyfile-gdb-api.in | 2 +-
gdb/doc/Doxyfile-gdb-xref.in | 2 +-
gdb/doc/Doxyfile-gdbserver.in | 2 +-
gdb/doc/Makefile.in | 14 +-
gdb/doc/agentexpr.texi | 8 +-
gdb/doc/all-cfg.texi | 2 +-
gdb/doc/annotate.texinfo | 2 +-
gdb/doc/doxy-index.in | 2 +-
gdb/doc/gdb.texinfo | 2804 +-
gdb/doc/guile.texi | 4 +-
gdb/doc/observer.texi | 313 -
gdb/doc/python.texi | 579 +-
gdb/doc/refcard.tex | 6 +-
gdb/doc/stabs.texinfo | 2 +-
gdb/doublest.c | 880 -
gdb/doublest.h | 104 -
gdb/dtrace-probe.c | 578 +-
gdb/dummy-frame.c | 46 +-
gdb/dummy-frame.h | 22 +-
gdb/dwarf-index-cache.c | 361 +
gdb/dwarf-index-cache.h | 112 +
gdb/dwarf-index-common.c | 56 +
gdb/dwarf-index-common.h | 68 +
gdb/dwarf-index-write.c | 1705 +
gdb/dwarf-index-write.h | 34 +
gdb/dwarf2-frame-tailcall.c | 8 +-
gdb/dwarf2-frame-tailcall.h | 2 +-
gdb/dwarf2-frame.c | 475 +-
gdb/dwarf2-frame.h | 127 +-
gdb/dwarf2expr.c | 201 +-
gdb/dwarf2expr.h | 140 +-
gdb/dwarf2loc.c | 780 +-
gdb/dwarf2loc.h | 7 +-
gdb/dwarf2read.c |10067 +-
gdb/dwarf2read.h | 406 +
gdb/elfread.c | 266 +-
gdb/eval.c | 1486 +-
gdb/event-loop.c | 8 +-
gdb/event-loop.h | 2 +-
gdb/event-top.c | 117 +-
gdb/event-top.h | 14 +-
gdb/exceptions.c | 139 +-
gdb/exceptions.h | 62 +-
gdb/exec.c | 289 +-
gdb/exec.h | 2 +-
gdb/expprint.c | 141 +-
gdb/expression.h | 51 +-
gdb/extension-priv.h | 81 +-
gdb/extension.c | 192 +-
gdb/extension.h | 141 +-
gdb/f-exp.y | 65 +-
gdb/f-lang.c | 31 +-
gdb/f-lang.h | 4 +-
gdb/f-typeprint.c | 30 +-
gdb/f-valprint.c | 25 +-
gdb/fbsd-nat.c | 1154 +-
gdb/fbsd-nat.h | 81 +-
gdb/fbsd-tdep.c | 1381 +-
gdb/fbsd-tdep.h | 40 +-
gdb/features/Makefile | 176 +-
gdb/features/aarch64-core.c | 65 +
gdb/features/aarch64-core.xml | 2 +-
gdb/features/aarch64-fpu.c | 133 +
gdb/features/aarch64-fpu.xml | 2 +-
gdb/features/aarch64-sve.c | 158 +
gdb/features/aarch64.c | 191 -
gdb/features/aarch64.xml | 2 +-
gdb/features/arc-arcompact.c | 37 +-
gdb/features/arc-arcompact.xml | 2 +-
gdb/features/arc-v2.c | 47 +-
gdb/features/arc-v2.xml | 2 +-
gdb/features/arm/arm-core.xml | 2 +-
gdb/features/arm/arm-fpa.xml | 2 +-
gdb/features/arm/arm-m-profile.xml | 2 +-
gdb/features/arm/arm-vfpv2.xml | 2 +-
gdb/features/arm/arm-vfpv3.xml | 2 +-
gdb/features/arm/arm-with-iwmmxt.c | 31 +-
gdb/features/arm/arm-with-iwmmxt.xml | 2 +-
gdb/features/arm/arm-with-m-fpa-layout.c | 4 +-
gdb/features/arm/arm-with-m-fpa-layout.xml | 2 +-
gdb/features/arm/arm-with-m-vfp-d16.c | 4 +-
gdb/features/arm/arm-with-m-vfp-d16.xml | 2 +-
gdb/features/arm/arm-with-m.c | 4 +-
gdb/features/arm/arm-with-m.xml | 2 +-
gdb/features/arm/arm-with-neon.c | 4 +-
gdb/features/arm/arm-with-neon.xml | 2 +-
gdb/features/arm/arm-with-vfpv2.c | 4 +-
gdb/features/arm/arm-with-vfpv2.xml | 2 +-
gdb/features/arm/arm-with-vfpv3.c | 4 +-
gdb/features/arm/arm-with-vfpv3.xml | 2 +-
gdb/features/arm/xscale-iwmmxt.xml | 2 +-
gdb/features/btrace-conf.dtd | 2 +-
gdb/features/btrace.dtd | 2 +-
gdb/features/feature_to_c.sh | 2 +-
gdb/features/gdb-target.dtd | 2 +-
gdb/features/i386/32bit-avx.c | 21 +
gdb/features/i386/32bit-avx.xml | 2 +-
gdb/features/i386/32bit-avx512.c | 33 +
gdb/features/i386/32bit-avx512.xml | 2 +-
gdb/features/i386/32bit-core.c | 65 +
gdb/features/i386/32bit-core.xml | 2 +-
gdb/features/i386/32bit-linux.c | 15 +
gdb/features/i386/32bit-linux.xml | 2 +-
gdb/features/i386/32bit-mpx.c | 51 +
gdb/features/i386/32bit-mpx.xml | 2 +-
gdb/features/i386/32bit-pkeys.c | 14 +
gdb/features/i386/32bit-pkeys.xml | 2 +-
gdb/features/i386/32bit-sse.c | 76 +
gdb/features/i386/32bit-sse.xml | 2 +-
gdb/features/i386/64bit-avx.c | 29 +
gdb/features/i386/64bit-avx.xml | 2 +-
gdb/features/i386/64bit-avx512.c | 125 +
gdb/features/i386/64bit-avx512.xml | 2 +-
gdb/features/i386/64bit-core.c | 73 +
gdb/features/i386/64bit-core.xml | 2 +-
gdb/features/i386/64bit-linux.c | 15 +
gdb/features/i386/64bit-linux.xml | 2 +-
gdb/features/i386/64bit-mpx.c | 51 +
gdb/features/i386/64bit-mpx.xml | 2 +-
gdb/features/i386/64bit-pkeys.c | 14 +
gdb/features/i386/64bit-pkeys.xml | 2 +-
gdb/features/i386/64bit-segments.c | 15 +
gdb/features/i386/64bit-segments.xml | 2 +-
gdb/features/i386/64bit-sse.c | 84 +
gdb/features/i386/64bit-sse.xml | 2 +-
gdb/features/i386/amd64-avx-avx512-linux.c | 288 -
gdb/features/i386/amd64-avx-avx512-linux.xml | 2 +-
gdb/features/i386/amd64-avx-avx512.c | 279 -
gdb/features/i386/amd64-avx-avx512.xml | 3 +-
gdb/features/i386/amd64-avx-linux.c | 177 -
gdb/features/i386/amd64-avx-linux.xml | 2 +-
gdb/features/i386/amd64-avx-mpx-avx512-pku-linux.c | 329 -
.../i386/amd64-avx-mpx-avx512-pku-linux.xml | 2 +-
gdb/features/i386/amd64-avx-mpx-avx512-pku.c | 320 -
gdb/features/i386/amd64-avx-mpx-avx512-pku.xml | 3 +-
gdb/features/i386/amd64-avx-mpx-linux.c | 215 -
gdb/features/i386/amd64-avx-mpx-linux.xml | 2 +-
gdb/features/i386/amd64-avx-mpx.c | 206 -
gdb/features/i386/amd64-avx-mpx.xml | 3 +-
gdb/features/i386/amd64-avx.c | 168 -
gdb/features/i386/amd64-avx.xml | 3 +-
gdb/features/i386/amd64-linux.c | 159 -
gdb/features/i386/amd64-linux.xml | 2 +-
gdb/features/i386/amd64-mpx-linux.c | 197 -
gdb/features/i386/amd64-mpx-linux.xml | 2 +-
gdb/features/i386/amd64-mpx.c | 188 -
gdb/features/i386/amd64-mpx.xml | 3 +-
gdb/features/i386/amd64.c | 150 -
gdb/features/i386/amd64.xml | 3 +-
gdb/features/i386/i386-avx-avx512-linux.c | 170 -
gdb/features/i386/i386-avx-avx512-linux.xml | 2 +-
gdb/features/i386/i386-avx-avx512.c | 165 -
gdb/features/i386/i386-avx-avx512.xml | 2 +-
gdb/features/i386/i386-avx-linux.c | 149 -
gdb/features/i386/i386-avx-linux.xml | 2 +-
gdb/features/i386/i386-avx-mpx-avx512-pku-linux.c | 211 -
.../i386/i386-avx-mpx-avx512-pku-linux.xml | 2 +-
gdb/features/i386/i386-avx-mpx-avx512-pku.c | 206 -
gdb/features/i386/i386-avx-mpx-avx512-pku.xml | 2 +-
gdb/features/i386/i386-avx-mpx-linux.c | 187 -
gdb/features/i386/i386-avx-mpx-linux.xml | 2 +-
gdb/features/i386/i386-avx-mpx.c | 182 -
gdb/features/i386/i386-avx-mpx.xml | 2 +-
gdb/features/i386/i386-avx.c | 144 -
gdb/features/i386/i386-avx.xml | 2 +-
gdb/features/i386/i386-linux.c | 139 -
gdb/features/i386/i386-linux.xml | 4 +-
gdb/features/i386/i386-mmx-linux.c | 78 -
gdb/features/i386/i386-mmx-linux.xml | 2 +-
gdb/features/i386/i386-mmx.c | 73 -
gdb/features/i386/i386-mmx.xml | 2 +-
gdb/features/i386/i386-mpx-linux.c | 177 -
gdb/features/i386/i386-mpx-linux.xml | 2 +-
gdb/features/i386/i386-mpx.c | 172 -
gdb/features/i386/i386-mpx.xml | 2 +-
gdb/features/i386/i386.c | 134 -
gdb/features/i386/i386.xml | 2 +-
gdb/features/i386/x32-avx-avx512-linux.c | 288 -
gdb/features/i386/x32-avx-avx512-linux.xml | 2 +-
gdb/features/i386/x32-avx-avx512.c | 279 -
gdb/features/i386/x32-avx-avx512.xml | 17 -
gdb/features/i386/x32-avx-linux.c | 177 -
gdb/features/i386/x32-avx-linux.xml | 2 +-
gdb/features/i386/x32-avx.c | 168 -
gdb/features/i386/x32-avx.xml | 16 -
gdb/features/i386/x32-core.c | 73 +
gdb/features/i386/x32-core.xml | 2 +-
gdb/features/i386/x32-linux.c | 159 -
gdb/features/i386/x32-linux.xml | 2 +-
gdb/features/i386/x32.c | 150 -
gdb/features/i386/x32.xml | 15 -
gdb/features/library-list-aix.dtd | 2 +-
gdb/features/library-list-svr4.dtd | 2 +-
gdb/features/library-list.dtd | 2 +-
gdb/features/microblaze-core.xml | 2 +-
gdb/features/microblaze-stack-protect.xml | 2 +-
gdb/features/microblaze-with-stack-protect.xml | 2 +-
gdb/features/microblaze.xml | 2 +-
gdb/features/mips-cp0.xml | 2 +-
gdb/features/mips-cpu.xml | 2 +-
gdb/features/mips-dsp-linux.c | 4 +-
gdb/features/mips-dsp-linux.xml | 2 +-
gdb/features/mips-dsp.xml | 2 +-
gdb/features/mips-fpu.xml | 2 +-
gdb/features/mips-linux.c | 4 +-
gdb/features/mips-linux.xml | 2 +-
gdb/features/mips64-cp0.xml | 2 +-
gdb/features/mips64-cpu.xml | 2 +-
gdb/features/mips64-dsp-linux.c | 4 +-
gdb/features/mips64-dsp-linux.xml | 2 +-
gdb/features/mips64-dsp.xml | 2 +-
gdb/features/mips64-fpu.xml | 2 +-
gdb/features/mips64-linux.c | 4 +-
gdb/features/mips64-linux.xml | 2 +-
gdb/features/nds32-core.xml | 2 +-
gdb/features/nds32-fpu.xml | 2 +-
gdb/features/nds32-system.xml | 2 +-
gdb/features/nds32.c | 4 +-
gdb/features/nds32.xml | 2 +-
gdb/features/nios2-cpu.xml | 2 +-
gdb/features/nios2-linux.c | 71 -
gdb/features/nios2-linux.xml | 2 +-
gdb/features/nios2.c | 4 +-
gdb/features/nios2.xml | 2 +-
gdb/features/or1k-core.xml | 65 +
gdb/features/or1k.c | 76 +
gdb/features/or1k.xml | 12 +
gdb/features/osdata.dtd | 2 +-
gdb/features/rs6000/power-altivec.xml | 2 +-
gdb/features/rs6000/power-core.xml | 2 +-
gdb/features/rs6000/power-dscr.xml | 12 +
gdb/features/rs6000/power-ebb.xml | 14 +
gdb/features/rs6000/power-fpu-isa205.xml | 2 +-
gdb/features/rs6000/power-fpu.xml | 2 +-
gdb/features/rs6000/power-htm-altivec.xml | 58 +
gdb/features/rs6000/power-htm-core.xml | 48 +
gdb/features/rs6000/power-htm-dscr.xml | 12 +
gdb/features/rs6000/power-htm-fpu.xml | 45 +
gdb/features/rs6000/power-htm-ppr.xml | 12 +
gdb/features/rs6000/power-htm-spr.xml | 14 +
gdb/features/rs6000/power-htm-tar.xml | 12 +
gdb/features/rs6000/power-htm-vsx.xml | 43 +
gdb/features/rs6000/power-linux-pmu.xml | 17 +
gdb/features/rs6000/power-linux.xml | 2 +-
gdb/features/rs6000/power-oea.xml | 2 +-
gdb/features/rs6000/power-ppr.xml | 12 +
gdb/features/rs6000/power-spe.xml | 2 +-
gdb/features/rs6000/power-tar.xml | 12 +
gdb/features/rs6000/power-vsx.xml | 2 +-
gdb/features/rs6000/power64-core.xml | 2 +-
gdb/features/rs6000/power64-htm-core.xml | 48 +
gdb/features/rs6000/power64-linux.xml | 2 +-
gdb/features/rs6000/powerpc-32.c | 4 +-
gdb/features/rs6000/powerpc-32.xml | 2 +-
gdb/features/rs6000/powerpc-32l.c | 4 +-
gdb/features/rs6000/powerpc-32l.xml | 2 +-
gdb/features/rs6000/powerpc-403.xml | 2 +-
gdb/features/rs6000/powerpc-403gc.xml | 2 +-
gdb/features/rs6000/powerpc-405.xml | 2 +-
gdb/features/rs6000/powerpc-505.xml | 2 +-
gdb/features/rs6000/powerpc-601.xml | 2 +-
gdb/features/rs6000/powerpc-602.xml | 2 +-
gdb/features/rs6000/powerpc-603.xml | 2 +-
gdb/features/rs6000/powerpc-604.xml | 2 +-
gdb/features/rs6000/powerpc-64.c | 4 +-
gdb/features/rs6000/powerpc-64.xml | 2 +-
gdb/features/rs6000/powerpc-64l.c | 4 +-
gdb/features/rs6000/powerpc-64l.xml | 2 +-
gdb/features/rs6000/powerpc-7400.c | 33 +-
gdb/features/rs6000/powerpc-7400.xml | 2 +-
gdb/features/rs6000/powerpc-750.xml | 2 +-
gdb/features/rs6000/powerpc-860.xml | 2 +-
gdb/features/rs6000/powerpc-altivec32.c | 37 +-
gdb/features/rs6000/powerpc-altivec32.xml | 2 +-
gdb/features/rs6000/powerpc-altivec32l.c | 37 +-
gdb/features/rs6000/powerpc-altivec32l.xml | 2 +-
gdb/features/rs6000/powerpc-altivec64.c | 37 +-
gdb/features/rs6000/powerpc-altivec64.xml | 2 +-
gdb/features/rs6000/powerpc-altivec64l.c | 37 +-
gdb/features/rs6000/powerpc-altivec64l.xml | 2 +-
gdb/features/rs6000/powerpc-cell32l.c | 37 +-
gdb/features/rs6000/powerpc-cell32l.xml | 2 +-
gdb/features/rs6000/powerpc-cell64l.c | 37 +-
gdb/features/rs6000/powerpc-cell64l.xml | 2 +-
gdb/features/rs6000/powerpc-e500.c | 4 +-
gdb/features/rs6000/powerpc-e500.xml | 2 +-
gdb/features/rs6000/powerpc-e500l.c | 4 +-
gdb/features/rs6000/powerpc-e500l.xml | 2 +-
gdb/features/rs6000/powerpc-isa205-32l.c | 4 +-
gdb/features/rs6000/powerpc-isa205-32l.xml | 2 +-
gdb/features/rs6000/powerpc-isa205-64l.c | 4 +-
gdb/features/rs6000/powerpc-isa205-64l.xml | 2 +-
gdb/features/rs6000/powerpc-isa205-altivec32l.c | 37 +-
gdb/features/rs6000/powerpc-isa205-altivec32l.xml | 2 +-
gdb/features/rs6000/powerpc-isa205-altivec64l.c | 37 +-
gdb/features/rs6000/powerpc-isa205-altivec64l.xml | 2 +-
.../rs6000/powerpc-isa205-ppr-dscr-vsx32l.c | 200 +
.../rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml | 18 +
.../rs6000/powerpc-isa205-ppr-dscr-vsx64l.c | 200 +
.../rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml | 18 +
gdb/features/rs6000/powerpc-isa205-vsx32l.c | 37 +-
gdb/features/rs6000/powerpc-isa205-vsx32l.xml | 2 +-
gdb/features/rs6000/powerpc-isa205-vsx64l.c | 37 +-
gdb/features/rs6000/powerpc-isa205-vsx64l.xml | 2 +-
gdb/features/rs6000/powerpc-isa207-htm-vsx32l.c | 396 +
gdb/features/rs6000/powerpc-isa207-htm-vsx32l.xml | 29 +
gdb/features/rs6000/powerpc-isa207-htm-vsx64l.c | 396 +
gdb/features/rs6000/powerpc-isa207-htm-vsx64l.xml | 29 +
gdb/features/rs6000/powerpc-isa207-vsx32l.c | 215 +
gdb/features/rs6000/powerpc-isa207-vsx32l.xml | 21 +
gdb/features/rs6000/powerpc-isa207-vsx64l.c | 215 +
gdb/features/rs6000/powerpc-isa207-vsx64l.xml | 21 +
gdb/features/rs6000/powerpc-vsx32.c | 37 +-
gdb/features/rs6000/powerpc-vsx32.xml | 2 +-
gdb/features/rs6000/powerpc-vsx32l.c | 37 +-
gdb/features/rs6000/powerpc-vsx32l.xml | 2 +-
gdb/features/rs6000/powerpc-vsx64.c | 37 +-
gdb/features/rs6000/powerpc-vsx64.xml | 2 +-
gdb/features/rs6000/powerpc-vsx64l.c | 37 +-
gdb/features/rs6000/powerpc-vsx64l.xml | 2 +-
gdb/features/rs6000/rs6000.c | 4 +-
gdb/features/rs6000/rs6000.xml | 2 +-
gdb/features/s390-acr.xml | 2 +-
gdb/features/s390-core32.xml | 2 +-
gdb/features/s390-core64.xml | 2 +-
gdb/features/s390-fpr.xml | 2 +-
gdb/features/s390-gs-linux64.c | 199 +
gdb/features/s390-gs-linux64.xml | 28 +
gdb/features/s390-gs.xml | 13 +
gdb/features/s390-gsbc.xml | 13 +
gdb/features/s390-linux32.c | 4 +-
gdb/features/s390-linux32.xml | 2 +-
gdb/features/s390-linux32v1.c | 4 +-
gdb/features/s390-linux32v1.xml | 2 +-
gdb/features/s390-linux32v2.c | 4 +-
gdb/features/s390-linux32v2.xml | 2 +-
gdb/features/s390-linux64.c | 4 +-
gdb/features/s390-linux64.xml | 2 +-
gdb/features/s390-linux64v1.c | 4 +-
gdb/features/s390-linux64v1.xml | 2 +-
gdb/features/s390-linux64v2.c | 4 +-
gdb/features/s390-linux64v2.xml | 2 +-
gdb/features/s390-tdb.xml | 2 +-
gdb/features/s390-te-linux64.c | 4 +-
gdb/features/s390-te-linux64.xml | 2 +-
gdb/features/s390-tevx-linux64.c | 49 +-
gdb/features/s390-tevx-linux64.xml | 2 +-
gdb/features/s390-vx-linux64.c | 49 +-
gdb/features/s390-vx-linux64.xml | 2 +-
gdb/features/s390-vx.xml | 2 +-
gdb/features/s390x-core64.xml | 2 +-
gdb/features/s390x-gs-linux64.c | 183 +
gdb/features/s390x-gs-linux64.xml | 27 +
gdb/features/s390x-linux64.c | 4 +-
gdb/features/s390x-linux64.xml | 2 +-
gdb/features/s390x-linux64v1.c | 4 +-
gdb/features/s390x-linux64v1.xml | 2 +-
gdb/features/s390x-linux64v2.c | 4 +-
gdb/features/s390x-linux64v2.xml | 2 +-
gdb/features/s390x-te-linux64.c | 4 +-
gdb/features/s390x-te-linux64.xml | 2 +-
gdb/features/s390x-tevx-linux64.c | 49 +-
gdb/features/s390x-tevx-linux64.xml | 2 +-
gdb/features/s390x-vx-linux64.c | 49 +-
gdb/features/s390x-vx-linux64.xml | 2 +-
gdb/features/sparc/sparc32-cp0.xml | 2 +-
gdb/features/sparc/sparc32-cpu.xml | 2 +-
gdb/features/sparc/sparc32-fpu.xml | 2 +-
gdb/features/sparc/sparc32-solaris.xml | 2 +-
gdb/features/sparc/sparc64-cp0.xml | 2 +-
gdb/features/sparc/sparc64-cpu.xml | 2 +-
gdb/features/sparc/sparc64-fpu.xml | 2 +-
gdb/features/sparc/sparc64-solaris.xml | 2 +-
gdb/features/threads.dtd | 2 +-
gdb/features/tic6x-c62x-linux.c | 56 -
gdb/features/tic6x-c62x-linux.xml | 2 +-
gdb/features/tic6x-c62x.c | 54 -
gdb/features/tic6x-c62x.xml | 12 -
gdb/features/tic6x-c64x-linux.c | 90 -
gdb/features/tic6x-c64x-linux.xml | 2 +-
gdb/features/tic6x-c64x.c | 88 -
gdb/features/tic6x-c64x.xml | 13 -
gdb/features/tic6x-c64xp-linux.c | 95 -
gdb/features/tic6x-c64xp-linux.xml | 2 +-
gdb/features/tic6x-c64xp.c | 93 -
gdb/features/tic6x-c64xp.xml | 14 -
gdb/features/tic6x-c6xp.c | 16 +
gdb/features/tic6x-c6xp.xml | 2 +-
gdb/features/tic6x-core.c | 47 +
gdb/features/tic6x-core.xml | 2 +-
gdb/features/tic6x-gp.c | 45 +
gdb/features/tic6x-gp.xml | 2 +-
gdb/features/traceframe-info.dtd | 2 +-
gdb/features/xinclude.dtd | 2 +-
gdb/filename-seen-cache.c | 66 +
gdb/filename-seen-cache.h | 66 +
gdb/filesystem.c | 5 +-
gdb/filesystem.h | 2 +-
gdb/findcmd.c | 110 +-
gdb/findvar.c | 256 +-
gdb/fork-child.c | 577 +-
gdb/frame-base.c | 4 +-
gdb/frame-base.h | 2 +-
gdb/frame-unwind.c | 25 +-
gdb/frame-unwind.h | 5 +-
gdb/frame.c | 244 +-
gdb/frame.h | 67 +-
gdb/frv-linux-tdep.c | 20 +-
gdb/frv-tdep.c | 31 +-
gdb/frv-tdep.h | 2 +-
gdb/ft32-tdep.c | 68 +-
gdb/ft32-tdep.h | 2 +-
gdb/gcore.c | 42 +-
gdb/gcore.h | 2 +-
gdb/gcore.in | 65 +-
gdb/gdb-code-style.el | 2 +-
gdb/gdb-demangle.h | 2 +-
gdb/gdb-dlfcn.c | 47 +-
gdb/gdb-dlfcn.h | 26 +-
gdb/gdb-gdb.py | 252 -
gdb/gdb-gdb.py.in | 284 +
gdb/gdb-stabs.h | 2 +-
gdb/gdb.c | 2 +-
gdb/gdb.h | 58 -
gdb/gdb_bfd.c | 131 +-
gdb/gdb_bfd.h | 34 +-
gdb/gdb_buildall.sh | 2 +-
gdb/gdb_curses.h | 13 +-
gdb/gdb_expat.h | 2 +-
gdb/gdb_mbuild.sh | 2 +-
gdb/gdb_obstack.c | 2 +-
gdb/gdb_obstack.h | 73 +-
gdb/gdb_proc_service.h | 160 +-
gdb/gdb_regex.c | 57 +
gdb/gdb_regex.h | 39 +-
gdb/gdb_select.h | 2 +-
gdb/gdb_usleep.c | 2 +-
gdb/gdb_usleep.h | 2 +-
gdb/gdb_vfork.h | 2 +-
gdb/gdb_wchar.h | 2 +-
gdb/gdbarch-selftests.c | 179 +
gdb/gdbarch.c | 311 +-
gdb/gdbarch.h | 176 +-
gdb/gdbarch.sh | 501 +-
gdb/gdbcmd.h | 13 +-
gdb/gdbcore.h | 73 +-
gdb/gdbserver/ChangeLog | 2187 +-
gdb/gdbserver/Makefile.in | 204 +-
gdb/gdbserver/acinclude.m4 | 3 +
gdb/gdbserver/aclocal.m4 | 46 +-
gdb/gdbserver/ax.c | 33 +-
gdb/gdbserver/ax.h | 4 +-
gdb/gdbserver/config.in | 28 +-
gdb/gdbserver/configure | 1215 +-
gdb/gdbserver/configure.ac | 35 +-
gdb/gdbserver/configure.srv | 159 +-
gdb/gdbserver/debug.c | 2 +-
gdb/gdbserver/debug.h | 2 +-
gdb/gdbserver/dll.c | 69 +-
gdb/gdbserver/dll.h | 14 +-
gdb/gdbserver/event-loop.c | 61 +-
gdb/gdbserver/event-loop.h | 2 +-
gdb/gdbserver/fork-child.c | 118 +
gdb/gdbserver/gdb_proc_service.h | 129 +-
gdb/gdbserver/gdbreplay.c | 198 +-
gdb/gdbserver/gdbthread.h | 152 +-
gdb/gdbserver/hostio-errno.c | 2 +-
gdb/gdbserver/hostio.c | 17 +-
gdb/gdbserver/hostio.h | 2 +-
gdb/gdbserver/i387-fp.c | 269 +-
gdb/gdbserver/i387-fp.h | 2 +-
gdb/gdbserver/inferiors.c | 377 +-
gdb/gdbserver/inferiors.h | 144 +-
gdb/gdbserver/linux-aarch32-low.c | 2 +-
gdb/gdbserver/linux-aarch32-low.h | 2 +-
gdb/gdbserver/linux-aarch64-ipa.c | 14 +-
gdb/gdbserver/linux-aarch64-low.c | 175 +-
gdb/gdbserver/linux-aarch64-tdesc-selftest.c | 45 +
gdb/gdbserver/linux-aarch64-tdesc.c | 57 +
gdb/gdbserver/linux-aarch64-tdesc.h | 24 +
gdb/gdbserver/linux-amd64-ipa.c | 64 +-
gdb/gdbserver/linux-arm-low.c | 85 +-
gdb/gdbserver/linux-bfin-low.c | 4 +-
gdb/gdbserver/linux-cris-low.c | 2 +-
gdb/gdbserver/linux-crisv32-low.c | 4 +-
gdb/gdbserver/linux-i386-ipa.c | 42 +-
gdb/gdbserver/linux-ia64-low.c | 2 +-
gdb/gdbserver/linux-low.c | 1304 +-
gdb/gdbserver/linux-low.h | 39 +-
gdb/gdbserver/linux-m32r-low.c | 4 +-
gdb/gdbserver/linux-m68k-low.c | 33 +-
gdb/gdbserver/linux-mips-low.c | 142 +-
gdb/gdbserver/linux-nios2-low.c | 2 +-
gdb/gdbserver/linux-ppc-ipa.c | 23 +-
gdb/gdbserver/linux-ppc-low.c | 576 +-
gdb/gdbserver/linux-ppc-tdesc-init.h | 107 +
gdb/gdbserver/linux-ppc-tdesc.h | 101 -
gdb/gdbserver/linux-s390-ipa.c | 15 +-
gdb/gdbserver/linux-s390-low.c | 197 +-
gdb/gdbserver/linux-s390-tdesc.h | 11 +-
gdb/gdbserver/linux-sh-low.c | 4 +-
gdb/gdbserver/linux-sparc-low.c | 2 +-
gdb/gdbserver/linux-tic6x-low.c | 126 +-
gdb/gdbserver/linux-tile-low.c | 4 +-
gdb/gdbserver/linux-x86-low.c | 204 +-
gdb/gdbserver/linux-x86-tdesc-selftest.c | 183 +
gdb/gdbserver/linux-x86-tdesc.c | 164 +
gdb/gdbserver/linux-x86-tdesc.h | 80 +-
gdb/gdbserver/linux-xtensa-low.c | 4 +-
gdb/gdbserver/lynx-i386-low.c | 55 +-
gdb/gdbserver/lynx-low.c | 131 +-
gdb/gdbserver/lynx-low.h | 2 +-
gdb/gdbserver/lynx-ppc-low.c | 2 +-
gdb/gdbserver/mem-break.c | 45 +-
gdb/gdbserver/mem-break.h | 14 +-
gdb/gdbserver/notif.c | 2 +-
gdb/gdbserver/notif.h | 2 +-
gdb/gdbserver/nto-low.c | 66 +-
gdb/gdbserver/nto-low.h | 2 +-
gdb/gdbserver/nto-x86-low.c | 19 +-
gdb/gdbserver/proc-service.c | 7 +-
gdb/gdbserver/proc-service.list | 2 +-
gdb/gdbserver/regcache.c | 183 +-
gdb/gdbserver/regcache.h | 40 +-
gdb/gdbserver/remote-utils.c | 371 +-
gdb/gdbserver/remote-utils.h | 7 +-
gdb/gdbserver/server.c | 2686 +-
gdb/gdbserver/server.h | 251 +-
gdb/gdbserver/spu-low.c | 96 +-
gdb/gdbserver/symbol.c | 2 +-
gdb/gdbserver/target.c | 184 +-
gdb/gdbserver/target.h | 98 +-
gdb/gdbserver/tdesc.c | 143 +-
gdb/gdbserver/tdesc.h | 62 +-
gdb/gdbserver/terminal.h | 51 -
gdb/gdbserver/thread-db.c | 105 +-
gdb/gdbserver/tracepoint.c | 103 +-
gdb/gdbserver/tracepoint.h | 26 +-
gdb/gdbserver/utils.c | 2 +-
gdb/gdbserver/utils.h | 2 +-
gdb/gdbserver/win32-arm-low.c | 2 +-
gdb/gdbserver/win32-i386-low.c | 67 +-
gdb/gdbserver/win32-low.c | 154 +-
gdb/gdbserver/win32-low.h | 2 +-
gdb/gdbserver/wincecompat.c | 2 +-
gdb/gdbserver/wincecompat.h | 2 +-
gdb/gdbserver/x86-low.c | 2 +-
gdb/gdbserver/x86-low.h | 2 +-
gdb/gdbserver/x86-tdesc.h | 32 +
gdb/gdbserver/xtensa-xtregs.c | 2 +-
gdb/gdbthread.h | 282 +-
gdb/gdbtypes.c | 777 +-
gdb/gdbtypes.h | 303 +-
gdb/glibc-tdep.c | 4 +-
gdb/glibc-tdep.h | 2 +-
gdb/gnu-nat.c | 300 +-
gdb/gnu-nat.h | 36 +-
gdb/gnu-v2-abi.c | 6 +-
gdb/gnu-v3-abi.c | 75 +-
gdb/gnulib/Makefile.in | 58 +-
gdb/gnulib/aclocal-m4-deps.mk | 138 +
gdb/gnulib/aclocal.m4 | 879 +-
gdb/gnulib/config.in | 497 +-
gdb/gnulib/configure | 9775 ++-
gdb/gnulib/configure.ac | 10 +-
gdb/gnulib/import/Makefile.am | 660 +-
gdb/gnulib/import/Makefile.in | 802 +-
gdb/gnulib/import/arpa_inet.in.h | 140 +
gdb/gnulib/import/assure.h | 37 +
gdb/gnulib/import/at-func.c | 146 +
gdb/gnulib/import/chdir-long.c | 264 +
gdb/gnulib/import/chdir-long.h | 30 +
gdb/gnulib/import/cloexec.c | 83 +
gdb/gnulib/import/cloexec.h | 38 +
gdb/gnulib/import/close.c | 69 +
gdb/gnulib/import/closedir.c | 71 +
gdb/gnulib/import/dirent-private.h | 40 +
gdb/gnulib/import/dup-safer.c | 34 +
gdb/gnulib/import/dup.c | 86 +
gdb/gnulib/import/dup2.c | 215 +
gdb/gnulib/import/error.c | 406 +
gdb/gnulib/import/error.h | 75 +
gdb/gnulib/import/exitfail.c | 24 +
gdb/gnulib/import/exitfail.h | 18 +
gdb/gnulib/import/fchdir.c | 208 +
gdb/gnulib/import/fcntl.c | 414 +
gdb/gnulib/import/fcntl.in.h | 363 +
gdb/gnulib/import/fd-hook.c | 116 +
gdb/gnulib/import/fd-hook.h | 119 +
gdb/gnulib/import/fd-safer.c | 49 +
gdb/gnulib/import/fdopendir.c | 249 +
gdb/gnulib/import/filename.h | 54 +
gdb/gnulib/import/filenamecat-lgpl.c | 88 +
gdb/gnulib/import/filenamecat.h | 27 +
gdb/gnulib/import/fstat.c | 88 +
gdb/gnulib/import/fstatat.c | 135 +
gdb/gnulib/import/getcwd-lgpl.c | 126 +
gdb/gnulib/import/getcwd.c | 446 +
gdb/gnulib/import/getdtablesize.c | 121 +
gdb/gnulib/import/getlogin_r.c | 87 +
gdb/gnulib/import/getprogname.c | 151 +
gdb/gnulib/import/getprogname.h | 40 +
gdb/gnulib/import/gettext.h | 292 +
gdb/gnulib/import/glob-libc.h | 212 +
gdb/gnulib/import/glob.c | 1808 +
gdb/gnulib/import/glob.in.h | 93 +
gdb/gnulib/import/inet_ntop.c | 260 +
gdb/gnulib/import/intprops.h | 464 +
gdb/gnulib/import/m4/arpa_inet_h.m4 | 57 +
gdb/gnulib/import/m4/chdir-long.m4 | 30 +
gdb/gnulib/import/m4/close.m4 | 33 +
gdb/gnulib/import/m4/closedir.m4 | 30 +
gdb/gnulib/import/m4/d-ino.m4 | 56 +
gdb/gnulib/import/m4/d-type.m4 | 32 +
gdb/gnulib/import/m4/dup.m4 | 45 +
gdb/gnulib/import/m4/dup2.m4 | 117 +
gdb/gnulib/import/m4/environ.m4 | 47 +
gdb/gnulib/import/m4/error.m4 | 27 +
gdb/gnulib/import/m4/fchdir.m4 | 61 +
gdb/gnulib/import/m4/fcntl.m4 | 126 +
gdb/gnulib/import/m4/fcntl_h.m4 | 50 +
gdb/gnulib/import/m4/fdopendir.m4 | 61 +
gdb/gnulib/import/m4/filenamecat.m4 | 16 +
gdb/gnulib/import/m4/fstat.m4 | 36 +
gdb/gnulib/import/m4/fstatat.m4 | 60 +
gdb/gnulib/import/m4/getcwd-abort-bug.m4 | 140 +
gdb/gnulib/import/m4/getcwd-path-max.m4 | 229 +
gdb/gnulib/import/m4/getcwd.m4 | 162 +
gdb/gnulib/import/m4/getdtablesize.m4 | 46 +
gdb/gnulib/import/m4/getlogin_r.m4 | 88 +
gdb/gnulib/import/m4/getprogname.m4 | 43 +
gdb/gnulib/import/m4/glob.m4 | 76 +
gdb/gnulib/import/m4/gnulib-cache.m4 | 10 +-
gdb/gnulib/import/m4/gnulib-comp.m4 | 415 +
gdb/gnulib/import/m4/inet_ntop.m4 | 68 +
gdb/gnulib/import/m4/mempcpy.m4 | 26 +
gdb/gnulib/import/m4/memrchr.m4 | 23 +
gdb/gnulib/import/m4/mkdir.m4 | 69 +
gdb/gnulib/import/m4/mkdtemp.m4 | 20 +
gdb/gnulib/import/m4/mkostemp.m4 | 23 +
gdb/gnulib/import/m4/mode_t.m4 | 26 +
gdb/gnulib/import/m4/msvc-inval.m4 | 19 +
gdb/gnulib/import/m4/msvc-nothrow.m4 | 10 +
gdb/gnulib/import/m4/netinet_in_h.m4 | 31 +
gdb/gnulib/import/m4/onceonly.m4 | 104 +
gdb/gnulib/import/m4/open.m4 | 91 +
gdb/gnulib/import/m4/openat.m4 | 36 +
gdb/gnulib/import/m4/opendir.m4 | 31 +
gdb/gnulib/import/m4/readdir.m4 | 15 +
gdb/gnulib/import/m4/realloc.m4 | 79 +
gdb/gnulib/import/m4/rewinddir.m4 | 15 +
gdb/gnulib/import/m4/save-cwd.m4 | 11 +
gdb/gnulib/import/m4/secure_getenv.m4 | 26 +
gdb/gnulib/import/m4/setenv.m4 | 160 +
gdb/gnulib/import/m4/socklen.m4 | 77 +
gdb/gnulib/import/m4/sockpfaf.m4 | 87 +
gdb/gnulib/import/m4/stdalign.m4 | 57 +
gdb/gnulib/import/m4/strdup.m4 | 36 +
gdb/gnulib/import/m4/strerror.m4 | 96 +
gdb/gnulib/import/m4/sys_uio_h.m4 | 31 +
gdb/gnulib/import/m4/tempname.m4 | 19 +
gdb/gnulib/import/m4/unistd-safer.m4 | 10 +
gdb/gnulib/import/mempcpy.c | 28 +
gdb/gnulib/import/memrchr.c | 161 +
gdb/gnulib/import/mkdir.c | 93 +
gdb/gnulib/import/mkdtemp.c | 39 +
gdb/gnulib/import/mkostemp.c | 46 +
gdb/gnulib/import/msvc-inval.c | 129 +
gdb/gnulib/import/msvc-inval.h | 222 +
gdb/gnulib/import/msvc-nothrow.c | 49 +
gdb/gnulib/import/msvc-nothrow.h | 43 +
gdb/gnulib/import/netinet_in.in.h | 47 +
gdb/gnulib/import/open.c | 181 +
gdb/gnulib/import/openat-die.c | 62 +
gdb/gnulib/import/openat-priv.h | 64 +
gdb/gnulib/import/openat-proc.c | 134 +
gdb/gnulib/import/openat.c | 286 +
gdb/gnulib/import/openat.h | 123 +
gdb/gnulib/import/opendir.c | 169 +
gdb/gnulib/import/pipe-safer.c | 56 +
gdb/gnulib/import/readdir.c | 98 +
gdb/gnulib/import/realloc.c | 79 +
gdb/gnulib/import/rewinddir.c | 49 +
gdb/gnulib/import/save-cwd.c | 99 +
gdb/gnulib/import/save-cwd.h | 34 +
gdb/gnulib/import/secure_getenv.c | 54 +
gdb/gnulib/import/setenv.c | 390 +
gdb/gnulib/import/stdalign.in.h | 121 +
gdb/gnulib/import/stdlib.in.h | 3 +-
gdb/gnulib/import/strdup.c | 54 +
gdb/gnulib/import/strerror-override.c | 302 +
gdb/gnulib/import/strerror-override.h | 56 +
gdb/gnulib/import/strerror.c | 70 +
gdb/gnulib/import/sys_socket.c | 4 +
gdb/gnulib/import/sys_socket.in.h | 692 +
gdb/gnulib/import/sys_uio.in.h | 63 +
gdb/gnulib/import/tempname.c | 324 +
gdb/gnulib/import/tempname.h | 65 +
gdb/gnulib/import/unistd--.h | 32 +
gdb/gnulib/import/unistd-safer.h | 31 +
gdb/gnulib/import/unsetenv.c | 127 +
...23558-Use-system-s-getcwd-when-cross-comp.patch | 69 +
...ostemps-Fix-compilation-error-in-C-mode-o.patch | 38 +
gdb/gnulib/update-gnulib.sh | 44 +-
gdb/go-exp.y | 123 +-
gdb/go-lang.c | 22 +-
gdb/go-lang.h | 4 +-
gdb/go-typeprint.c | 2 +-
gdb/go-valprint.c | 2 +-
gdb/go32-nat.c | 223 +-
gdb/gregset.h | 2 +-
gdb/guile/guile-internal.h | 73 +-
gdb/guile/guile.c | 112 +-
gdb/guile/guile.h | 5 +-
gdb/guile/lib/gdb.scm | 2 +-
gdb/guile/lib/gdb/boot.scm | 2 +-
gdb/guile/lib/gdb/experimental.scm | 2 +-
gdb/guile/lib/gdb/init.scm | 2 +-
gdb/guile/lib/gdb/iterator.scm | 2 +-
gdb/guile/lib/gdb/printing.scm | 2 +-
gdb/guile/lib/gdb/support.scm | 2 +-
gdb/guile/lib/gdb/types.scm | 2 +-
gdb/guile/scm-arch.c | 2 +-
gdb/guile/scm-auto-load.c | 4 +-
gdb/guile/scm-block.c | 7 +-
gdb/guile/scm-breakpoint.c | 55 +-
gdb/guile/scm-cmd.c | 63 +-
gdb/guile/scm-disasm.c | 2 +-
gdb/guile/scm-exception.c | 13 +-
gdb/guile/scm-frame.c | 82 +-
gdb/guile/scm-gsmob.c | 2 +-
gdb/guile/scm-iterator.c | 2 +-
gdb/guile/scm-lazy-string.c | 2 +-
gdb/guile/scm-math.c | 414 +-
gdb/guile/scm-objfile.c | 12 +-
gdb/guile/scm-param.c | 56 +-
gdb/guile/scm-ports.c | 36 +-
gdb/guile/scm-pretty-print.c | 79 +-
gdb/guile/scm-progspace.c | 2 +-
gdb/guile/scm-safe-call.c | 14 +-
gdb/guile/scm-string.c | 30 +-
gdb/guile/scm-symbol.c | 21 +-
gdb/guile/scm-symtab.c | 10 +-
gdb/guile/scm-type.c | 69 +-
gdb/guile/scm-utils.c | 201 +-
gdb/guile/scm-value.c | 482 +-
gdb/h8300-tdep.c | 54 +-
gdb/hppa-bsd-tdep.c | 4 +-
gdb/hppa-bsd-tdep.h | 2 +-
gdb/hppa-linux-nat.c | 66 +-
gdb/hppa-linux-offsets.h | 2 +-
gdb/hppa-linux-tdep.c | 12 +-
gdb/hppa-nbsd-nat.c | 104 +-
gdb/hppa-nbsd-tdep.c | 47 +-
gdb/hppa-obsd-nat.c | 122 +-
gdb/hppa-obsd-tdep.c | 56 +-
gdb/hppa-tdep.c | 66 +-
gdb/hppa-tdep.h | 2 +-
gdb/i386-bsd-nat.c | 38 +-
gdb/i386-bsd-nat.h | 22 +-
gdb/i386-bsd-tdep.c | 2 +-
gdb/i386-cygwin-tdep.c | 9 +-
gdb/i386-darwin-nat.c | 55 +-
gdb/i386-darwin-tdep.c | 13 +-
gdb/i386-darwin-tdep.h | 2 +-
gdb/i386-dicos-tdep.c | 5 +-
gdb/i386-fbsd-nat.c | 85 +-
gdb/i386-fbsd-tdep.c | 21 +-
gdb/i386-fbsd-tdep.h | 2 +-
gdb/i386-gnu-nat.c | 65 +-
gdb/i386-gnu-tdep.c | 5 +-
gdb/i386-go32-tdep.c | 73 +
gdb/i386-linux-nat.c | 94 +-
gdb/i386-linux-nat.h | 2 +-
gdb/i386-linux-tdep.c | 137 +-
gdb/i386-linux-tdep.h | 12 +-
gdb/i386-nbsd-nat.c | 25 +-
gdb/i386-nbsd-tdep.c | 262 +-
gdb/i386-nto-tdep.c | 12 +-
gdb/i386-obsd-nat.c | 25 +-
gdb/i386-obsd-tdep.c | 18 +-
gdb/i386-sol2-nat.c | 129 +-
gdb/i386-sol2-tdep.c | 8 +-
gdb/i386-tdep.c | 396 +-
gdb/i386-tdep.h | 14 +-
gdb/i386-v4-nat.c | 163 -
gdb/i386-windows-nat.c | 5 +-
gdb/i387-tdep.c | 950 +-
gdb/i387-tdep.h | 8 +-
gdb/ia64-libunwind-tdep.c | 43 +-
gdb/ia64-libunwind-tdep.h | 4 +-
gdb/ia64-linux-nat.c | 225 +-
gdb/ia64-linux-tdep.c | 15 +-
gdb/ia64-tdep.c | 243 +-
gdb/ia64-tdep.h | 2 +-
gdb/ia64-vms-tdep.c | 11 +-
gdb/inf-child.c | 342 +-
gdb/inf-child.h | 117 +-
gdb/inf-loop.c | 16 +-
gdb/inf-loop.h | 2 +-
gdb/inf-ptrace.c | 389 +-
gdb/inf-ptrace.h | 69 +-
gdb/infcall.c | 342 +-
gdb/infcall.h | 30 +-
gdb/infcmd.c | 755 +-
gdb/inferior.c | 321 +-
gdb/inferior.h | 274 +-
gdb/inflow.c | 642 +-
gdb/inflow.h | 15 +-
gdb/infrun.c | 1558 +-
gdb/infrun.h | 25 +-
gdb/inline-frame.c | 197 +-
gdb/inline-frame.h | 19 +-
gdb/interps.c | 148 +-
gdb/interps.h | 48 +-
gdb/iq2000-tdep.c | 16 +-
gdb/jit-reader.in | 2 +-
gdb/jit.c | 150 +-
gdb/jit.h | 2 +-
gdb/language.c | 346 +-
gdb/language.h | 186 +-
gdb/libiberty.m4 | 2 +-
gdb/libmcheck.m4 | 2 +-
gdb/linespec.c | 2642 +-
gdb/linespec.h | 95 +-
gdb/linux-fork.c | 113 +-
gdb/linux-fork.h | 4 +-
gdb/linux-nat-trad.c | 144 +
gdb/linux-nat-trad.h | 46 +
gdb/linux-nat.c | 1138 +-
gdb/linux-nat.h | 217 +-
gdb/linux-record.c | 11 +-
gdb/linux-record.h | 2 +-
gdb/linux-tdep.c | 542 +-
gdb/linux-tdep.h | 2 +-
gdb/linux-thread-db.c | 815 +-
gdb/lm32-tdep.c | 16 +-
gdb/location.c | 503 +-
gdb/location.h | 133 +-
gdb/m2-exp.y | 47 +-
gdb/m2-lang.c | 15 +-
gdb/m2-lang.h | 4 +-
gdb/m2-typeprint.c | 35 +-
gdb/m2-valprint.c | 3 +-
gdb/m32c-tdep.c | 156 +-
gdb/m32r-linux-nat.c | 50 +-
gdb/m32r-linux-tdep.c | 23 +-
gdb/m32r-tdep.c | 29 +-
gdb/m32r-tdep.h | 2 +-
gdb/m68hc11-tdep.c | 46 +-
gdb/m68k-bsd-nat.c | 58 +-
gdb/m68k-bsd-tdep.c | 19 +-
gdb/m68k-linux-nat.c | 93 +-
gdb/m68k-linux-tdep.c | 17 +-
gdb/m68k-tdep.c | 73 +-
gdb/m68k-tdep.h | 2 +-
gdb/m88k-bsd-nat.c | 111 -
gdb/m88k-tdep.c | 875 -
gdb/m88k-tdep.h | 47 -
gdb/machoread.c | 147 +-
gdb/macrocmd.c | 130 +-
gdb/macroexp.c | 532 +-
gdb/macroexp.h | 14 +-
gdb/macroscope.c | 23 +-
gdb/macroscope.h | 17 +-
gdb/macrotab.c | 14 +-
gdb/macrotab.h | 24 +-
gdb/main.c | 234 +-
gdb/main.h | 2 +-
gdb/maint.c | 148 +-
gdb/maint.h | 2 +-
gdb/make-target-delegates | 242 +-
gdb/mdebugread.c | 481 +-
gdb/mdebugread.h | 2 +-
gdb/mem-break.c | 14 +-
gdb/memattr.c | 375 +-
gdb/memattr.h | 71 +-
gdb/memory-map.c | 82 +-
gdb/memory-map.h | 7 +-
gdb/memrange.c | 48 +-
gdb/memrange.h | 25 +-
gdb/mep-tdep.c | 93 +-
gdb/mi/mi-cmd-break.c | 145 +-
gdb/mi/mi-cmd-break.h | 5 +-
gdb/mi/mi-cmd-catch.c | 107 +-
gdb/mi/mi-cmd-disas.c | 47 +-
gdb/mi/mi-cmd-env.c | 46 +-
gdb/mi/mi-cmd-file.c | 13 +-
gdb/mi/mi-cmd-info.c | 32 +-
gdb/mi/mi-cmd-stack.c | 119 +-
gdb/mi/mi-cmd-target.c | 2 +-
gdb/mi/mi-cmd-var.c | 181 +-
gdb/mi/mi-cmds.c | 6 +-
gdb/mi/mi-cmds.h | 3 +-
gdb/mi/mi-common.c | 2 +-
gdb/mi/mi-common.h | 2 +-
gdb/mi/mi-console.c | 35 +-
gdb/mi/mi-console.h | 4 +-
gdb/mi/mi-getopt.c | 2 +-
gdb/mi/mi-getopt.h | 2 +-
gdb/mi/mi-interp.c | 408 +-
gdb/mi/mi-interp.h | 2 +-
gdb/mi/mi-main.c | 870 +-
gdb/mi/mi-main.h | 2 +-
gdb/mi/mi-out.c | 2 +-
gdb/mi/mi-out.h | 4 +-
gdb/mi/mi-parse.c | 80 +-
gdb/mi/mi-parse.h | 14 +-
gdb/mi/mi-symbol-cmds.c | 10 +-
gdb/microblaze-linux-tdep.c | 13 +-
gdb/microblaze-tdep.c | 41 +-
gdb/microblaze-tdep.h | 2 +-
gdb/mingw-hdep.c | 2 +-
gdb/minidebug.c | 8 +-
gdb/minsyms.c | 582 +-
gdb/minsyms.h | 64 +-
gdb/mips-fbsd-nat.c | 63 +-
gdb/mips-fbsd-tdep.c | 165 +-
gdb/mips-fbsd-tdep.h | 2 +-
gdb/mips-linux-nat.c | 267 +-
gdb/mips-linux-tdep.c | 295 +-
gdb/mips-linux-tdep.h | 10 +-
gdb/mips-nbsd-nat.c | 43 +-
gdb/mips-nbsd-tdep.c | 52 +-
gdb/mips-nbsd-tdep.h | 2 +-
gdb/mips-sde-tdep.c | 5 +-
gdb/mips-tdep.c | 791 +-
gdb/mips-tdep.h | 5 +-
gdb/mips64-obsd-nat.c | 41 +-
gdb/mips64-obsd-tdep.c | 21 +-
gdb/mipsread.c | 98 +-
gdb/mn10300-linux-tdep.c | 274 +-
gdb/mn10300-tdep.c | 175 +-
gdb/mn10300-tdep.h | 2 +-
gdb/moxie-tdep.c | 91 +-
gdb/moxie-tdep.h | 2 +-
gdb/msp430-tdep.c | 46 +-
gdb/mt-tdep.c | 1225 -
gdb/namespace.c | 22 +-
gdb/namespace.h | 4 +-
gdb/nat/aarch64-linux-hw-point.c | 283 +-
gdb/nat/aarch64-linux-hw-point.h | 12 +-
gdb/nat/aarch64-linux.c | 14 +-
gdb/nat/aarch64-linux.h | 5 +-
gdb/nat/aarch64-sve-linux-ptrace.c | 324 +
gdb/nat/aarch64-sve-linux-ptrace.h | 58 +
gdb/nat/aarch64-sve-linux-sigcontext.h | 268 +
gdb/nat/amd64-linux-siginfo.c | 2 +-
gdb/nat/amd64-linux-siginfo.h | 2 +-
gdb/nat/fork-inferior.c | 597 +
gdb/nat/fork-inferior.h | 106 +
gdb/nat/gdb_ptrace.h | 2 +-
gdb/nat/gdb_thread_db.h | 2 +-
gdb/nat/linux-btrace.c | 448 +-
gdb/nat/linux-btrace.h | 5 +-
gdb/nat/linux-namespaces.c | 2 +-
gdb/nat/linux-namespaces.h | 2 +-
gdb/nat/linux-nat.h | 2 +-
gdb/nat/linux-osdata.c | 290 +-
gdb/nat/linux-osdata.h | 2 +-
gdb/nat/linux-personality.c | 73 +-
gdb/nat/linux-personality.h | 29 +-
gdb/nat/linux-procfs.c | 51 +-
gdb/nat/linux-procfs.h | 7 +-
gdb/nat/linux-ptrace.c | 65 +-
gdb/nat/linux-ptrace.h | 11 +-
gdb/nat/linux-waitpid.c | 4 +-
gdb/nat/linux-waitpid.h | 2 +-
gdb/nat/mips-linux-watch.c | 2 +-
gdb/nat/mips-linux-watch.h | 2 +-
gdb/nat/ppc-linux.c | 24 +-
gdb/nat/ppc-linux.h | 87 +-
gdb/nat/x86-cpuid.h | 2 +-
gdb/nat/x86-dregs.c | 65 +-
gdb/nat/x86-dregs.h | 6 +-
gdb/nat/x86-gcc-cpuid.h | 2 +-
gdb/nat/x86-linux-dregs.c | 16 +-
gdb/nat/x86-linux-dregs.h | 2 +-
gdb/nat/x86-linux.c | 10 +-
gdb/nat/x86-linux.h | 6 +-
gdb/nbsd-nat.c | 4 +-
gdb/nbsd-nat.h | 12 +-
gdb/nbsd-tdep.c | 2 +-
gdb/nbsd-tdep.h | 2 +-
gdb/nds32-tdep.c | 70 +-
gdb/nds32-tdep.h | 2 +-
gdb/nios2-linux-tdep.c | 29 +-
gdb/nios2-tdep.c | 86 +-
gdb/nios2-tdep.h | 2 +-
gdb/nto-procfs.c | 505 +-
gdb/nto-tdep.c | 56 +-
gdb/nto-tdep.h | 21 +-
gdb/objc-lang.c | 140 +-
gdb/objc-lang.h | 8 +-
gdb/objfile-flags.h | 8 +-
gdb/objfiles.c | 249 +-
gdb/objfiles.h | 150 +-
gdb/obsd-nat.c | 64 +-
gdb/obsd-nat.h | 12 +-
gdb/obsd-tdep.c | 2 +-
gdb/obsd-tdep.h | 2 +-
gdb/observable.c | 99 +
gdb/observable.h | 235 +
gdb/observer.c | 222 -
gdb/observer.sh | 200 -
gdb/opencl-lang.c | 22 +-
gdb/or1k-tdep.c | 1294 +
gdb/or1k-tdep.h | 56 +
gdb/osabi.c | 29 +-
gdb/osabi.h | 2 +-
gdb/osdata.c | 256 +-
gdb/osdata.h | 44 +-
gdb/p-exp.y | 74 +-
gdb/p-lang.c | 22 +-
gdb/p-lang.h | 6 +-
gdb/p-typeprint.c | 81 +-
gdb/p-valprint.c | 168 +-
gdb/parse.c | 576 +-
gdb/parser-defs.h | 131 +-
gdb/posix-hdep.c | 2 +-
gdb/ppc-fbsd-nat.c | 50 +-
gdb/ppc-fbsd-tdep.c | 28 +-
gdb/ppc-fbsd-tdep.h | 2 +-
gdb/ppc-linux-nat.c | 1165 +-
gdb/ppc-linux-tdep.c | 951 +-
gdb/ppc-linux-tdep.h | 42 +-
gdb/ppc-nbsd-nat.c | 58 +-
gdb/ppc-nbsd-tdep.c | 46 +-
gdb/ppc-nbsd-tdep.h | 2 +-
gdb/ppc-obsd-nat.c | 61 +-
gdb/ppc-obsd-tdep.c | 12 +-
gdb/ppc-obsd-tdep.h | 2 +-
gdb/ppc-ravenscar-thread.c | 16 +-
gdb/ppc-ravenscar-thread.h | 2 +-
gdb/ppc-sysv-tdep.c | 367 +-
gdb/ppc-tdep.h | 120 +-
gdb/ppc64-tdep.c | 205 +-
gdb/ppc64-tdep.h | 2 +-
gdb/printcmd.c | 690 +-
gdb/probe.c | 797 +-
gdb/probe.h | 409 +-
gdb/proc-api.c | 370 +-
gdb/proc-events.c | 1213 +-
gdb/proc-flags.c | 220 +-
gdb/proc-service.c | 106 +-
gdb/proc-service.list | 2 +-
gdb/proc-utils.h | 6 +-
gdb/proc-why.c | 63 +-
gdb/procfs.c | 2738 +-
gdb/procfs.h | 15 +-
gdb/producer.c | 218 +
gdb/producer.h | 55 +
gdb/progspace-and-thread.c | 44 +
gdb/progspace-and-thread.h | 40 +
gdb/progspace.c | 158 +-
gdb/progspace.h | 203 +-
gdb/prologue-value.c | 190 +-
gdb/prologue-value.h | 185 +-
gdb/psympriv.h | 102 +-
gdb/psymtab.c | 736 +-
gdb/psymtab.h | 3 +-
gdb/ptrace.m4 | 2 +-
gdb/python/lib/gdb/FrameDecorator.py | 2 +-
gdb/python/lib/gdb/FrameIterator.py | 2 +-
gdb/python/lib/gdb/__init__.py | 29 +-
gdb/python/lib/gdb/command/__init__.py | 2 +-
gdb/python/lib/gdb/command/explore.py | 38 +-
gdb/python/lib/gdb/command/frame_filters.py | 95 +-
gdb/python/lib/gdb/command/pretty_printers.py | 47 +-
gdb/python/lib/gdb/command/prompt.py | 2 +-
gdb/python/lib/gdb/command/type_printers.py | 15 +-
gdb/python/lib/gdb/command/unwinders.py | 53 +-
gdb/python/lib/gdb/command/xmethods.py | 77 +-
gdb/python/lib/gdb/frames.py | 2 +-
gdb/python/lib/gdb/function/__init__.py | 2 +-
gdb/python/lib/gdb/function/as_string.py | 10 +-
gdb/python/lib/gdb/function/caller_is.py | 42 +-
gdb/python/lib/gdb/function/strfns.py | 30 +-
gdb/python/lib/gdb/printer/__init__.py | 2 +-
gdb/python/lib/gdb/printer/bound_registers.py | 2 +-
gdb/python/lib/gdb/printing.py | 2 +-
gdb/python/lib/gdb/prompt.py | 2 +-
gdb/python/lib/gdb/types.py | 2 +-
gdb/python/lib/gdb/unwinder.py | 2 +-
gdb/python/lib/gdb/xmethod.py | 2 +-
gdb/python/py-all-events.def | 40 +
gdb/python/py-arch.c | 2 +-
gdb/python/py-auto-load.c | 4 +-
gdb/python/py-block.c | 44 +-
gdb/python/py-bpevent.c | 17 +-
gdb/python/py-breakpoint.c | 235 +-
gdb/python/py-cmd.c | 140 +-
gdb/python/py-continueevent.c | 31 +-
gdb/python/py-event-types.def | 107 +
gdb/python/py-event.c | 6 +-
gdb/python/py-event.h | 90 +-
gdb/python/py-events.h | 21 +-
gdb/python/py-evtregistry.c | 2 +-
gdb/python/py-evts.c | 45 +-
gdb/python/py-exitedevent.c | 24 +-
gdb/python/py-finishbreakpoint.c | 23 +-
gdb/python/py-frame.c | 19 +-
gdb/python/py-framefilter.c | 672 +-
gdb/python/py-function.c | 62 +-
gdb/python/py-gdb-readline.c | 6 +-
gdb/python/py-inferior.c | 233 +-
gdb/python/py-infevents.c | 63 +-
gdb/python/py-infthread.c | 29 +-
gdb/python/py-instruction.c | 67 +
gdb/python/py-instruction.h | 30 +
gdb/python/py-lazy-string.c | 2 +-
gdb/python/py-linetable.c | 32 +-
gdb/python/py-newobjfileevent.c | 58 +-
gdb/python/py-objfile.c | 76 +-
gdb/python/py-param.c | 118 +-
gdb/python/py-prettyprint.c | 85 +-
gdb/python/py-progspace.c | 212 +-
gdb/python/py-record-btrace.c | 632 +-
gdb/python/py-record-btrace.h | 44 +-
gdb/python/py-record-full.c | 2 +-
gdb/python/py-record-full.h | 2 +-
gdb/python/py-record.c | 431 +-
gdb/python/py-record.h | 74 +
gdb/python/py-ref.h | 2 +-
gdb/python/py-signalevent.c | 20 +-
gdb/python/py-stopevent.c | 21 +-
gdb/python/py-stopevent.h | 10 +-
gdb/python/py-symbol.c | 26 +-
gdb/python/py-symtab.c | 13 +-
gdb/python/py-threadevent.c | 49 +-
gdb/python/py-type.c | 60 +-
gdb/python/py-unwind.c | 101 +-
gdb/python/py-utils.c | 105 +-
gdb/python/py-value.c | 153 +-
gdb/python/py-varobj.c | 28 +-
gdb/python/py-xmethods.c | 156 +-
gdb/python/python-config.py | 3 +-
gdb/python/python-internal.h | 120 +-
gdb/python/python.c | 616 +-
gdb/python/python.h | 5 +-
gdb/ravenscar-thread.c | 448 +-
gdb/ravenscar-thread.h | 2 +-
gdb/record-btrace.c | 1176 +-
gdb/record-btrace.h | 6 +-
gdb/record-full.c | 1442 +-
gdb/record-full.h | 4 +-
gdb/record.c | 134 +-
gdb/record.h | 7 +-
gdb/regcache-dump.c | 335 +
gdb/regcache.c | 1756 +-
gdb/regcache.h | 453 +-
gdb/regformats/aarch64.dat | 1 +
gdb/regformats/i386/amd64-avx-avx512-linux.dat | 1 +
gdb/regformats/i386/amd64-avx-avx512.dat | 150 -
gdb/regformats/i386/amd64-avx-linux.dat | 1 +
.../i386/amd64-avx-mpx-avx512-pku-linux.dat | 2 +
gdb/regformats/i386/amd64-avx-mpx-avx512-pku.dat | 160 -
gdb/regformats/i386/amd64-avx-mpx-linux.dat | 1 +
gdb/regformats/i386/amd64-avx-mpx.dat | 84 -
gdb/regformats/i386/amd64-avx.dat | 78 -
gdb/regformats/i386/amd64-linux.dat | 1 +
gdb/regformats/i386/amd64-mpx-linux.dat | 1 +
gdb/regformats/i386/amd64-mpx.dat | 68 -
gdb/regformats/i386/amd64.dat | 3 +
gdb/regformats/i386/i386-avx-avx512-linux.dat | 1 +
gdb/regformats/i386/i386-avx-avx512.dat | 70 -
gdb/regformats/i386/i386-avx-linux.dat | 1 +
.../i386/i386-avx-mpx-avx512-pku-linux.dat | 1 +
gdb/regformats/i386/i386-avx-mpx-avx512-pku.dat | 77 -
gdb/regformats/i386/i386-avx-mpx-linux.dat | 1 +
gdb/regformats/i386/i386-avx-mpx.dat | 60 -
gdb/regformats/i386/i386-avx.dat | 54 -
gdb/regformats/i386/i386-linux.dat | 1 +
gdb/regformats/i386/i386-mmx-linux.dat | 1 +
gdb/regformats/i386/i386-mmx.dat | 37 -
gdb/regformats/i386/i386-mpx-linux.dat | 1 +
gdb/regformats/i386/i386-mpx.dat | 52 -
gdb/regformats/i386/i386.dat | 1 +
gdb/regformats/i386/x32-avx-avx512-linux.dat | 1 +
gdb/regformats/i386/x32-avx-avx512.dat | 150 -
gdb/regformats/i386/x32-avx-linux.dat | 1 +
gdb/regformats/i386/x32-avx.dat | 78 -
gdb/regformats/i386/x32-linux.dat | 1 +
gdb/regformats/i386/x32.dat | 62 -
gdb/regformats/regdat.sh | 41 +-
gdb/regformats/regdef.h | 31 +-
.../rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat | 146 +
.../rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat | 146 +
.../rs6000/powerpc-isa207-htm-vsx32l.dat | 296 +
.../rs6000/powerpc-isa207-htm-vsx64l.dat | 296 +
gdb/regformats/rs6000/powerpc-isa207-vsx32l.dat | 155 +
gdb/regformats/rs6000/powerpc-isa207-vsx64l.dat | 155 +
gdb/regformats/s390-gs-linux64.dat | 133 +
gdb/regformats/s390x-gs-linux64.dat | 117 +
gdb/regformats/tic6x-c62x-linux.dat | 1 +
gdb/regformats/tic6x-c62x.dat | 39 -
gdb/regformats/tic6x-c64x-linux.dat | 1 +
gdb/regformats/tic6x-c64x.dat | 71 -
gdb/regformats/tic6x-c64xp-linux.dat | 1 +
gdb/regformats/tic6x-c64xp.dat | 74 -
gdb/reggroups.c | 56 +-
gdb/reggroups.h | 8 +-
gdb/registry.c | 2 +-
gdb/registry.h | 6 +-
gdb/regset.h | 2 +-
gdb/remote-fileio.c | 245 +-
gdb/remote-fileio.h | 5 +-
gdb/remote-notif.c | 29 +-
gdb/remote-notif.h | 23 +-
gdb/remote-sim.c | 419 +-
gdb/remote.c | 5690 +-
gdb/remote.h | 11 +-
gdb/reply_mig_hack.awk | 2 +-
gdb/reverse.c | 63 +-
gdb/riscv-fbsd-nat.c | 136 +
gdb/riscv-fbsd-tdep.c | 203 +
gdb/riscv-fbsd-tdep.h | 33 +
gdb/riscv-linux-nat.c | 281 +
gdb/riscv-linux-tdep.c | 174 +
gdb/riscv-tdep.c | 3143 +
gdb/riscv-tdep.h | 103 +
gdb/rl78-tdep.c | 85 +-
gdb/rs6000-aix-tdep.c | 229 +-
gdb/rs6000-aix-tdep.h | 2 +-
gdb/rs6000-lynx178-tdep.c | 51 +-
gdb/rs6000-nat.c | 161 +-
gdb/rs6000-tdep.c | 1334 +-
gdb/rs6000-tdep.h | 2 +-
gdb/rust-exp.y | 1443 +-
gdb/rust-lang.c | 1164 +-
gdb/rust-lang.h | 14 +-
gdb/rx-tdep.c | 36 +-
gdb/s12z-tdep.c | 544 +
gdb/s390-linux-nat.c | 232 +-
gdb/s390-linux-tdep.c | 7212 +--
gdb/s390-linux-tdep.h | 174 +-
gdb/s390-tdep.c | 7137 ++
gdb/s390-tdep.h | 321 +
gdb/sanitize.m4 | 46 +
gdb/score-tdep.c | 31 +-
gdb/score-tdep.h | 2 +-
gdb/selftest-arch.c | 143 +-
gdb/selftest-arch.h | 8 +-
gdb/selftest.c | 60 -
gdb/selftest.h | 44 -
gdb/selftest.m4 | 45 +
gdb/sentinel-frame.c | 6 +-
gdb/sentinel-frame.h | 2 +-
gdb/ser-base.c | 29 +-
gdb/ser-base.h | 5 +-
gdb/ser-event.c | 5 +-
gdb/ser-event.h | 2 +-
gdb/ser-go32.c | 21 +-
gdb/ser-mingw.c | 54 +-
gdb/ser-pipe.c | 5 +-
gdb/ser-tcp.c | 311 +-
gdb/ser-tcp.h | 2 +-
gdb/ser-uds.c | 118 +
gdb/ser-unix.c | 267 +-
gdb/ser-unix.h | 2 +-
gdb/serial.c | 53 +-
gdb/serial.h | 14 +-
gdb/sh-linux-tdep.c | 28 +-
gdb/sh-nbsd-nat.c | 37 +-
gdb/sh-nbsd-tdep.c | 6 +-
gdb/sh-tdep.c | 107 +-
gdb/sh-tdep.h | 4 +-
gdb/sh64-tdep.c | 2450 -
gdb/sh64-tdep.h | 24 -
gdb/silent-rules.mk | 17 +
gdb/sim-regno.h | 2 +-
gdb/skip.c | 611 +-
gdb/skip.h | 10 +-
gdb/sol-thread.c | 404 +-
gdb/sol2-tdep.c | 6 +-
gdb/sol2-tdep.h | 2 +-
gdb/solib-aix.c | 181 +-
gdb/solib-aix.h | 2 +-
gdb/solib-darwin.c | 138 +-
gdb/solib-darwin.h | 2 +-
gdb/solib-dsbt.c | 91 +-
gdb/solib-frv.c | 136 +-
gdb/solib-spu.c | 21 +-
gdb/solib-spu.h | 2 +-
gdb/solib-svr4.c | 643 +-
gdb/solib-svr4.h | 25 +-
gdb/solib-target.c | 190 +-
gdb/solib-target.h | 2 +-
gdb/solib.c | 310 +-
gdb/solib.h | 4 +-
gdb/solist.h | 304 +-
gdb/source.c | 397 +-
gdb/source.h | 35 +-
gdb/sparc-linux-nat.c | 29 +-
gdb/sparc-linux-tdep.c | 25 +-
gdb/sparc-nat.c | 57 +-
gdb/sparc-nat.h | 45 +-
gdb/sparc-nbsd-nat.c | 19 +-
gdb/sparc-nbsd-tdep.c | 6 +-
gdb/sparc-obsd-tdep.c | 23 +-
gdb/sparc-ravenscar-thread.c | 16 +-
gdb/sparc-ravenscar-thread.h | 2 +-
gdb/sparc-sol2-nat.c | 25 +-
gdb/sparc-sol2-tdep.c | 6 +-
gdb/sparc-tdep.c | 285 +-
gdb/sparc-tdep.h | 2 +-
gdb/sparc64-fbsd-nat.c | 19 +-
gdb/sparc64-fbsd-tdep.c | 5 +-
gdb/sparc64-linux-nat.c | 36 +-
gdb/sparc64-linux-tdep.c | 89 +-
gdb/sparc64-nat.c | 6 +-
gdb/sparc64-nbsd-nat.c | 24 +-
gdb/sparc64-nbsd-tdep.c | 6 +-
gdb/sparc64-obsd-nat.c | 15 +-
gdb/sparc64-obsd-tdep.c | 22 +-
gdb/sparc64-sol2-tdep.c | 6 +-
gdb/sparc64-tdep.c | 780 +-
gdb/sparc64-tdep.h | 4 +-
gdb/spu-linux-nat.c | 125 +-
gdb/spu-multiarch.c | 211 +-
gdb/spu-tdep.c | 317 +-
gdb/spu-tdep.h | 2 +-
gdb/stabsread.c | 240 +-
gdb/stabsread.h | 38 +-
gdb/stack.c | 1549 +-
gdb/stack.h | 15 +-
gdb/stap-probe.c | 594 +-
gdb/stap-probe.h | 16 +-
gdb/std-operator.def | 57 +-
gdb/std-regs.c | 4 +-
gdb/stub-termcap.c | 2 +-
gdb/stubs/buildvms.com | 2 +-
gdb/stubs/ia64vms-stub.c | 2 +-
gdb/symfile-add-flags.h | 11 +-
gdb/symfile-debug.c | 72 +-
gdb/symfile-mem.c | 93 +-
gdb/symfile.c | 1327 +-
gdb/symfile.h | 141 +-
gdb/symmisc.c | 110 +-
gdb/symtab.c | 1554 +-
gdb/symtab.h | 727 +-
gdb/syscalls/aarch64-linux.xml | 2 +-
gdb/syscalls/aarch64-linux.xml.in | 2 +-
gdb/syscalls/amd64-linux.xml | 2 +-
gdb/syscalls/amd64-linux.xml.in | 2 +-
gdb/syscalls/apply-defaults.xsl | 2 +-
gdb/syscalls/arm-linux.py | 2 +-
gdb/syscalls/arm-linux.xml | 2 +-
gdb/syscalls/arm-linux.xml.in | 2 +-
gdb/syscalls/bfin-linux.xml.in | 2 +-
gdb/syscalls/freebsd.xml | 2 +-
gdb/syscalls/gdb-syscalls.dtd | 2 +-
gdb/syscalls/i386-linux.xml | 2 +-
gdb/syscalls/i386-linux.xml.in | 2 +-
gdb/syscalls/linux-defaults.xml.in | 2 +-
gdb/syscalls/mips-n32-linux.xml | 2 +-
gdb/syscalls/mips-n32-linux.xml.in | 2 +-
gdb/syscalls/mips-n64-linux.xml | 2 +-
gdb/syscalls/mips-n64-linux.xml.in | 2 +-
gdb/syscalls/mips-o32-linux.xml | 2 +-
gdb/syscalls/mips-o32-linux.xml.in | 2 +-
gdb/syscalls/ppc-linux.xml | 2 +-
gdb/syscalls/ppc-linux.xml.in | 2 +-
gdb/syscalls/ppc64-linux.xml | 2 +-
gdb/syscalls/ppc64-linux.xml.in | 2 +-
gdb/syscalls/s390-linux.xml | 2 +-
gdb/syscalls/s390-linux.xml.in | 2 +-
gdb/syscalls/s390x-linux.xml | 2 +-
gdb/syscalls/s390x-linux.xml.in | 2 +-
gdb/syscalls/sparc-linux.xml | 2 +-
gdb/syscalls/sparc-linux.xml.in | 2 +-
gdb/syscalls/sparc64-linux.xml | 2 +-
gdb/syscalls/sparc64-linux.xml.in | 2 +-
gdb/system-gdbinit/elinos.py | 2 +-
gdb/system-gdbinit/wrs-linux.py | 2 +-
gdb/target-dcache.c | 9 +-
gdb/target-dcache.h | 2 +-
gdb/target-debug.h | 46 +-
gdb/target-delegates.c | 5236 +-
gdb/target-descriptions.c | 2103 +-
gdb/target-descriptions.h | 61 +-
gdb/target-float.c | 2498 +
gdb/target-float.h | 61 +
gdb/target-memory.c | 247 +-
gdb/target.c | 1881 +-
gdb/target.h | 1365 +-
gdb/target/resume.h | 2 +-
gdb/target/target.h | 116 +-
gdb/target/wait.h | 2 +-
gdb/target/waitstatus.c | 50 +-
gdb/target/waitstatus.h | 7 +-
gdb/terminal.h | 72 +-
gdb/testsuite/ChangeLog | 3513 +-
gdb/testsuite/ChangeLog-1993-2013 | 2 +-
gdb/testsuite/Makefile.in | 23 +-
gdb/testsuite/README | 59 +
gdb/testsuite/analyze-racy-logs.py | 2 +-
gdb/testsuite/boards/cc-with-tweaks.exp | 11 +-
gdb/testsuite/boards/dwarf4-gdb-index.exp | 11 +-
gdb/testsuite/boards/fission-dwp.exp | 6 +-
gdb/testsuite/boards/fission.exp | 8 +-
gdb/testsuite/boards/gdbserver-base.exp | 24 +-
gdb/testsuite/boards/local-board.exp | 24 +
gdb/testsuite/boards/local-remote-host-native.exp | 2 +-
gdb/testsuite/boards/local-remote-host-notty.exp | 2 +-
gdb/testsuite/boards/local-remote-host.exp | 2 +-
gdb/testsuite/boards/native-extended-gdbserver.exp | 55 +-
gdb/testsuite/boards/native-gdbserver.exp | 28 +-
gdb/testsuite/boards/native-stdio-gdbserver.exp | 73 +-
.../boards/remote-gdbserver-on-localhost.exp | 2 +-
gdb/testsuite/boards/remote-stdio-gdbserver.exp | 35 +-
gdb/testsuite/boards/stabs.exp | 8 +-
gdb/testsuite/boards/stdio-gdbserver-base.exp | 54 +
gdb/testsuite/config/cfdbug.exp | 2 +-
gdb/testsuite/config/d10v.exp | 2 +-
gdb/testsuite/config/default.exp | 2 +-
gdb/testsuite/config/dve.exp | 2 +-
gdb/testsuite/config/extended-gdbserver.exp | 2 +-
gdb/testsuite/config/gdbserver.exp | 2 +-
gdb/testsuite/config/i960.exp | 2 +-
gdb/testsuite/config/m32r.exp | 2 +-
gdb/testsuite/config/mips-idt.exp | 2 +-
gdb/testsuite/config/mips.exp | 2 +-
gdb/testsuite/config/mn10300-eval.exp | 2 +-
gdb/testsuite/config/monitor.exp | 2 +-
gdb/testsuite/config/proelf.exp | 2 +-
gdb/testsuite/config/rom68k.exp | 2 +-
gdb/testsuite/config/sh.exp | 2 +-
gdb/testsuite/config/sid.exp | 4 +-
gdb/testsuite/config/sim.exp | 3 +-
gdb/testsuite/config/slite.exp | 2 +-
gdb/testsuite/config/unix.exp | 2 +-
gdb/testsuite/config/vr4300.exp | 2 +-
gdb/testsuite/config/vr5000.exp | 2 +-
gdb/testsuite/configure | 706 +-
gdb/testsuite/configure.ac | 3 +-
gdb/testsuite/dg-extract-results.sh | 453 -
gdb/testsuite/gdb.ada/O2_float_param.exp | 2 +-
gdb/testsuite/gdb.ada/O2_float_param/callee.adb | 2 +-
gdb/testsuite/gdb.ada/O2_float_param/callee.ads | 2 +-
gdb/testsuite/gdb.ada/O2_float_param/caller.adb | 2 +-
gdb/testsuite/gdb.ada/O2_float_param/caller.ads | 2 +-
gdb/testsuite/gdb.ada/O2_float_param/foo.adb | 2 +-
gdb/testsuite/gdb.ada/O2_float_param/io.adb | 2 +-
gdb/testsuite/gdb.ada/O2_float_param/io.ads | 2 +-
gdb/testsuite/gdb.ada/access_tagged_param.exp | 40 +
gdb/testsuite/gdb.ada/access_tagged_param/foo.adb | 20 +
gdb/testsuite/gdb.ada/access_tagged_param/pck.adb | 21 +
gdb/testsuite/gdb.ada/access_tagged_param/pck.ads | 21 +
gdb/testsuite/gdb.ada/access_to_packed_array.exp | 2 +-
.../gdb.ada/access_to_packed_array/foo.adb | 2 +-
.../gdb.ada/access_to_packed_array/pack.adb | 2 +-
.../gdb.ada/access_to_packed_array/pack.ads | 2 +-
.../gdb.ada/access_to_unbounded_array.exp | 30 +
.../gdb.ada/access_to_unbounded_array/foo.adb | 24 +
.../gdb.ada/access_to_unbounded_array/pack.adb | 23 +
.../gdb.ada/access_to_unbounded_array/pack.ads | 19 +
gdb/testsuite/gdb.ada/addr_arith.exp | 2 +-
gdb/testsuite/gdb.ada/addr_arith/foo_na07_019.adb | 2 +-
gdb/testsuite/gdb.ada/addr_arith/pck.adb | 2 +-
gdb/testsuite/gdb.ada/addr_arith/pck.ads | 2 +-
gdb/testsuite/gdb.ada/aliased_array.exp | 2 +-
gdb/testsuite/gdb.ada/aliased_array/foo.adb | 2 +-
gdb/testsuite/gdb.ada/aliased_array/pck.adb | 2 +-
gdb/testsuite/gdb.ada/aliased_array/pck.ads | 2 +-
gdb/testsuite/gdb.ada/arr_acc_idx_w_gap.exp | 55 +
.../gdb.ada/arr_acc_idx_w_gap/enum_with_gap.adb | 28 +
.../gdb.ada/arr_acc_idx_w_gap/enum_with_gap.ads | 48 +
.../arr_acc_idx_w_gap/enum_with_gap_main.adb | 25 +
gdb/testsuite/gdb.ada/arr_arr.exp | 2 +-
gdb/testsuite/gdb.ada/arr_arr/foo.adb | 2 +-
gdb/testsuite/gdb.ada/arr_arr/pck.adb | 2 +-
gdb/testsuite/gdb.ada/arr_arr/pck.ads | 2 +-
gdb/testsuite/gdb.ada/arr_enum_idx_w_gap.exp | 33 +
.../gdb.ada/arr_enum_idx_w_gap/foo_q418_043.adb | 24 +
gdb/testsuite/gdb.ada/array_bounds.exp | 2 +-
gdb/testsuite/gdb.ada/array_bounds/bar.adb | 2 +-
gdb/testsuite/gdb.ada/array_char_idx.exp | 5 +-
gdb/testsuite/gdb.ada/array_char_idx/foo.adb | 2 +-
gdb/testsuite/gdb.ada/array_char_idx/pck.adb | 2 +-
gdb/testsuite/gdb.ada/array_char_idx/pck.ads | 5 +-
gdb/testsuite/gdb.ada/array_of_variable_length.exp | 2 +-
.../gdb.ada/array_of_variable_length/foo.adb | 2 +-
.../gdb.ada/array_of_variable_length/pck.adb | 2 +-
.../gdb.ada/array_of_variable_length/pck.ads | 2 +-
gdb/testsuite/gdb.ada/array_ptr_renaming.exp | 2 +-
gdb/testsuite/gdb.ada/array_ptr_renaming/foo.adb | 2 +-
gdb/testsuite/gdb.ada/array_ptr_renaming/pack.ads | 2 +-
gdb/testsuite/gdb.ada/array_return.exp | 2 +-
gdb/testsuite/gdb.ada/array_return/p.adb | 2 +-
gdb/testsuite/gdb.ada/array_return/pck.adb | 2 +-
gdb/testsuite/gdb.ada/array_return/pck.ads | 2 +-
gdb/testsuite/gdb.ada/array_subscript_addr.exp | 2 +-
gdb/testsuite/gdb.ada/array_subscript_addr/p.adb | 2 +-
gdb/testsuite/gdb.ada/arraydim.exp | 2 +-
gdb/testsuite/gdb.ada/arraydim/foo.adb | 2 +-
gdb/testsuite/gdb.ada/arraydim/inc.c | 2 +-
gdb/testsuite/gdb.ada/arraydim/pck.adb | 2 +-
gdb/testsuite/gdb.ada/arraydim/pck.ads | 2 +-
gdb/testsuite/gdb.ada/arrayidx.exp | 2 +-
gdb/testsuite/gdb.ada/arrayidx/p.adb | 2 +-
gdb/testsuite/gdb.ada/arrayparam.exp | 2 +-
gdb/testsuite/gdb.ada/arrayparam/foo.adb | 2 +-
gdb/testsuite/gdb.ada/arrayparam/pck.adb | 2 +-
gdb/testsuite/gdb.ada/arrayparam/pck.ads | 2 +-
gdb/testsuite/gdb.ada/arrayptr.exp | 2 +-
gdb/testsuite/gdb.ada/arrayptr/foo.adb | 2 +-
gdb/testsuite/gdb.ada/arrayptr/pck.adb | 2 +-
gdb/testsuite/gdb.ada/arrayptr/pck.ads | 2 +-
gdb/testsuite/gdb.ada/assign_1.exp | 2 +-
gdb/testsuite/gdb.ada/assign_arr.exp | 30 +
gdb/testsuite/gdb.ada/assign_arr/main_p324_051.adb | 21 +
.../gdb.ada/assign_arr/target_wrapper.ads | 26 +
gdb/testsuite/gdb.ada/atomic_enum.exp | 2 +-
gdb/testsuite/gdb.ada/atomic_enum/foo.adb | 2 +-
gdb/testsuite/gdb.ada/atomic_enum/pck.adb | 2 +-
gdb/testsuite/gdb.ada/atomic_enum/pck.ads | 2 +-
gdb/testsuite/gdb.ada/attr_ref_and_charlit.exp | 2 +-
gdb/testsuite/gdb.ada/attr_ref_and_charlit/foo.adb | 2 +-
gdb/testsuite/gdb.ada/bad-task-bp-keyword.exp | 2 +-
gdb/testsuite/gdb.ada/bad-task-bp-keyword/foo.adb | 2 +-
gdb/testsuite/gdb.ada/boolean_expr.exp | 2 +-
gdb/testsuite/gdb.ada/bp_c_mixed_case.exp | 104 +
gdb/testsuite/gdb.ada/bp_c_mixed_case/bar.c | 21 +
.../gdb.ada/bp_c_mixed_case/foo_h731_021.adb | 24 +
gdb/testsuite/gdb.ada/bp_c_mixed_case/qux.c | 21 +
gdb/testsuite/gdb.ada/bp_enum_homonym.exp | 2 +-
gdb/testsuite/gdb.ada/bp_enum_homonym/p.adb | 2 +-
gdb/testsuite/gdb.ada/bp_enum_homonym/pck.adb | 2 +-
gdb/testsuite/gdb.ada/bp_enum_homonym/pck.ads | 2 +-
gdb/testsuite/gdb.ada/bp_fun_addr.exp | 35 +
gdb/testsuite/gdb.ada/bp_fun_addr/a.adb | 19 +
gdb/testsuite/gdb.ada/bp_inlined_func.exp | 51 +
gdb/testsuite/gdb.ada/bp_inlined_func/b.adb | 28 +
gdb/testsuite/gdb.ada/bp_inlined_func/b.ads | 19 +
gdb/testsuite/gdb.ada/bp_inlined_func/c.adb | 27 +
gdb/testsuite/gdb.ada/bp_inlined_func/c.ads | 19 +
gdb/testsuite/gdb.ada/bp_inlined_func/foo.adb | 23 +
gdb/testsuite/gdb.ada/bp_on_var.exp | 2 +-
gdb/testsuite/gdb.ada/bp_on_var/foo.adb | 2 +-
gdb/testsuite/gdb.ada/bp_on_var/pck.adb | 2 +-
gdb/testsuite/gdb.ada/bp_on_var/pck.ads | 2 +-
gdb/testsuite/gdb.ada/bp_range_type.exp | 2 +-
gdb/testsuite/gdb.ada/bp_range_type/foo.adb | 2 +-
gdb/testsuite/gdb.ada/bp_range_type/pck.adb | 2 +-
gdb/testsuite/gdb.ada/bp_range_type/pck.ads | 2 +-
gdb/testsuite/gdb.ada/bp_reset.exp | 2 +-
gdb/testsuite/gdb.ada/bp_reset/foo.adb | 2 +-
gdb/testsuite/gdb.ada/bp_reset/io.adb | 2 +-
gdb/testsuite/gdb.ada/bp_reset/io.ads | 2 +-
gdb/testsuite/gdb.ada/bp_reset/pck.adb | 2 +-
gdb/testsuite/gdb.ada/bp_reset/pck.ads | 2 +-
gdb/testsuite/gdb.ada/byte_packed_arr.exp | 2 +-
.../gdb.ada/byte_packed_arr/array_list_g.ads | 2 +-
gdb/testsuite/gdb.ada/byte_packed_arr/reprod.adb | 2 +-
gdb/testsuite/gdb.ada/byte_packed_arr/reprod.ads | 2 +-
.../gdb.ada/byte_packed_arr/reprod_main.adb | 2 +-
gdb/testsuite/gdb.ada/call_pn.exp | 2 +-
gdb/testsuite/gdb.ada/call_pn/foo.adb | 2 +-
gdb/testsuite/gdb.ada/call_pn/pck.adb | 2 +-
gdb/testsuite/gdb.ada/call_pn/pck.ads | 2 +-
gdb/testsuite/gdb.ada/catch_assert_if.exp | 86 +
gdb/testsuite/gdb.ada/catch_assert_if/bla.adb | 46 +
gdb/testsuite/gdb.ada/catch_assert_if/pck.ads | 19 +
gdb/testsuite/gdb.ada/catch_ex.exp | 10 +-
gdb/testsuite/gdb.ada/catch_ex/foo.adb | 2 +-
gdb/testsuite/gdb.ada/char_enum.exp | 2 +-
gdb/testsuite/gdb.ada/char_enum/foo.adb | 2 +-
gdb/testsuite/gdb.ada/char_enum/pck.adb | 2 +-
gdb/testsuite/gdb.ada/char_enum/pck.ads | 2 +-
gdb/testsuite/gdb.ada/char_param.exp | 2 +-
gdb/testsuite/gdb.ada/char_param/foo.adb | 2 +-
gdb/testsuite/gdb.ada/char_param/pck.adb | 2 +-
gdb/testsuite/gdb.ada/char_param/pck.ads | 2 +-
gdb/testsuite/gdb.ada/complete.exp | 33 +-
gdb/testsuite/gdb.ada/complete/aux_pck.adb | 2 +-
gdb/testsuite/gdb.ada/complete/aux_pck.ads | 2 +-
gdb/testsuite/gdb.ada/complete/foo.adb | 2 +-
gdb/testsuite/gdb.ada/complete/pck.adb | 2 +-
gdb/testsuite/gdb.ada/complete/pck.ads | 2 +-
gdb/testsuite/gdb.ada/cond_lang.exp | 2 +-
gdb/testsuite/gdb.ada/cond_lang/a.adb | 2 +-
gdb/testsuite/gdb.ada/cond_lang/foo.c | 2 +-
gdb/testsuite/gdb.ada/cond_lang/mixed.adb | 2 +-
gdb/testsuite/gdb.ada/cond_lang/mixed.ads | 2 +-
gdb/testsuite/gdb.ada/cond_lang/pck.adb | 2 +-
gdb/testsuite/gdb.ada/cond_lang/pck.ads | 2 +-
gdb/testsuite/gdb.ada/convvar_comp.exp | 34 +
gdb/testsuite/gdb.ada/convvar_comp/pb16_063.adb | 23 +
gdb/testsuite/gdb.ada/convvar_comp/pck.adb | 21 +
gdb/testsuite/gdb.ada/convvar_comp/pck.ads | 29 +
gdb/testsuite/gdb.ada/disc_arr_bound.exp | 2 +-
.../gdb.ada/disc_arr_bound/foo_n612_026.adb | 2 +-
gdb/testsuite/gdb.ada/disc_arr_bound/pck.adb | 2 +-
gdb/testsuite/gdb.ada/disc_arr_bound/pck.ads | 2 +-
gdb/testsuite/gdb.ada/dot_all.exp | 2 +-
gdb/testsuite/gdb.ada/dot_all/foo.adb | 2 +-
gdb/testsuite/gdb.ada/dot_all/pck.adb | 2 +-
gdb/testsuite/gdb.ada/dot_all/pck.ads | 2 +-
gdb/testsuite/gdb.ada/dyn_arrayidx.exp | 2 +-
gdb/testsuite/gdb.ada/dyn_arrayidx/foo.adb | 2 +-
gdb/testsuite/gdb.ada/dyn_loc.exp | 2 +-
gdb/testsuite/gdb.ada/dyn_loc/p.adb | 2 +-
gdb/testsuite/gdb.ada/dyn_loc/pack.adb | 2 +-
gdb/testsuite/gdb.ada/dyn_loc/pack.ads | 2 +-
gdb/testsuite/gdb.ada/dyn_stride.exp | 60 +
gdb/testsuite/gdb.ada/dyn_stride/foo.adb | 42 +
gdb/testsuite/gdb.ada/enum_idx_packed.exp | 2 +-
gdb/testsuite/gdb.ada/enum_idx_packed/foo.adb | 2 +-
gdb/testsuite/gdb.ada/enum_idx_packed/pck.adb | 2 +-
gdb/testsuite/gdb.ada/enum_idx_packed/pck.ads | 2 +-
gdb/testsuite/gdb.ada/excep_handle.exp | 171 +
gdb/testsuite/gdb.ada/excep_handle/foo.adb | 103 +
gdb/testsuite/gdb.ada/excep_handle/pck.ads | 19 +
gdb/testsuite/gdb.ada/exec_changed.exp | 4 +-
gdb/testsuite/gdb.ada/exec_changed/first.adb | 2 +-
gdb/testsuite/gdb.ada/exec_changed/second.adb | 2 +-
gdb/testsuite/gdb.ada/expr_delims.exp | 2 +-
gdb/testsuite/gdb.ada/expr_delims/foo.adb | 2 +-
gdb/testsuite/gdb.ada/expr_delims/pck.adb | 2 +-
gdb/testsuite/gdb.ada/expr_delims/pck.ads | 2 +-
gdb/testsuite/gdb.ada/expr_with_funcall.exp | 52 +
.../gdb.ada/expr_with_funcall/expr_r821_013.adb | 23 +
gdb/testsuite/gdb.ada/expr_with_funcall/pck.adb | 26 +
gdb/testsuite/gdb.ada/expr_with_funcall/pck.ads | 20 +
gdb/testsuite/gdb.ada/exprs.exp | 2 +-
gdb/testsuite/gdb.ada/exprs/p.adb | 2 +-
gdb/testsuite/gdb.ada/fin_fun_out.exp | 2 +-
gdb/testsuite/gdb.ada/fin_fun_out/bar.adb | 2 +-
gdb/testsuite/gdb.ada/fin_fun_out/bar.ads | 2 +-
gdb/testsuite/gdb.ada/fin_fun_out/foo_o525_013.adb | 2 +-
gdb/testsuite/gdb.ada/fixed_cmp.exp | 2 +-
gdb/testsuite/gdb.ada/fixed_cmp/fixed.adb | 2 +-
gdb/testsuite/gdb.ada/fixed_cmp/pck.adb | 2 +-
gdb/testsuite/gdb.ada/fixed_cmp/pck.ads | 2 +-
gdb/testsuite/gdb.ada/fixed_points.exp | 2 +-
.../gdb.ada/fixed_points/fixed_points.adb | 2 +-
gdb/testsuite/gdb.ada/float_param.exp | 2 +-
gdb/testsuite/gdb.ada/float_param/foo.adb | 2 +-
gdb/testsuite/gdb.ada/float_param/pck.adb | 2 +-
gdb/testsuite/gdb.ada/float_param/pck.ads | 2 +-
gdb/testsuite/gdb.ada/formatted_ref.exp | 2 +-
gdb/testsuite/gdb.ada/formatted_ref/defs.adb | 2 +-
gdb/testsuite/gdb.ada/formatted_ref/defs.ads | 2 +-
.../gdb.ada/formatted_ref/formatted_ref.adb | 2 +-
gdb/testsuite/gdb.ada/frame_args.exp | 2 +-
gdb/testsuite/gdb.ada/frame_args/foo.adb | 2 +-
gdb/testsuite/gdb.ada/frame_args/pck.adb | 2 +-
gdb/testsuite/gdb.ada/frame_args/pck.ads | 2 +-
gdb/testsuite/gdb.ada/fullname_bp.exp | 2 +-
gdb/testsuite/gdb.ada/fullname_bp/dn.adb | 2 +-
gdb/testsuite/gdb.ada/fullname_bp/dn.ads | 2 +-
gdb/testsuite/gdb.ada/fullname_bp/foo.adb | 2 +-
gdb/testsuite/gdb.ada/fullname_bp/pck.adb | 2 +-
gdb/testsuite/gdb.ada/fullname_bp/pck.ads | 2 +-
gdb/testsuite/gdb.ada/fun_addr.exp | 2 +-
gdb/testsuite/gdb.ada/fun_addr/foo.adb | 2 +-
gdb/testsuite/gdb.ada/fun_in_declare.exp | 2 +-
gdb/testsuite/gdb.ada/fun_in_declare/foo.adb | 2 +-
gdb/testsuite/gdb.ada/fun_in_declare/pck.adb | 2 +-
gdb/testsuite/gdb.ada/fun_in_declare/pck.ads | 2 +-
gdb/testsuite/gdb.ada/fun_overload_menu.exp | 2 +-
gdb/testsuite/gdb.ada/fun_overload_menu/foo.adb | 2 +-
gdb/testsuite/gdb.ada/fun_renaming.exp | 2 +-
.../gdb.ada/fun_renaming/fun_renaming.adb | 2 +-
gdb/testsuite/gdb.ada/fun_renaming/pack.adb | 2 +-
gdb/testsuite/gdb.ada/fun_renaming/pack.ads | 2 +-
gdb/testsuite/gdb.ada/funcall_char.exp | 2 +-
gdb/testsuite/gdb.ada/funcall_char/foo.adb | 2 +-
gdb/testsuite/gdb.ada/funcall_param.exp | 2 +-
gdb/testsuite/gdb.ada/funcall_param/foo.adb | 2 +-
gdb/testsuite/gdb.ada/funcall_param/pck.adb | 2 +-
gdb/testsuite/gdb.ada/funcall_param/pck.ads | 2 +-
gdb/testsuite/gdb.ada/funcall_ptr.exp | 40 +
gdb/testsuite/gdb.ada/funcall_ptr/foo.adb | 21 +
gdb/testsuite/gdb.ada/funcall_ptr/pck.adb | 23 +
gdb/testsuite/gdb.ada/funcall_ptr/pck.ads | 24 +
gdb/testsuite/gdb.ada/funcall_ref.exp | 2 +-
gdb/testsuite/gdb.ada/funcall_ref/foo.adb | 2 +-
gdb/testsuite/gdb.ada/homonym.exp | 2 +-
gdb/testsuite/gdb.ada/homonym/homonym.adb | 2 +-
gdb/testsuite/gdb.ada/homonym/homonym.ads | 2 +-
gdb/testsuite/gdb.ada/homonym/homonym_main.adb | 2 +-
gdb/testsuite/gdb.ada/homonym/pck.adb | 2 +-
gdb/testsuite/gdb.ada/homonym/pck.ads | 2 +-
gdb/testsuite/gdb.ada/info_addr_mixed_case.exp | 41 +
gdb/testsuite/gdb.ada/info_addr_mixed_case/foo.adb | 21 +
gdb/testsuite/gdb.ada/info_addr_mixed_case/pck.adb | 24 +
gdb/testsuite/gdb.ada/info_addr_mixed_case/pck.ads | 35 +
gdb/testsuite/gdb.ada/info_exc.exp | 2 +-
gdb/testsuite/gdb.ada/info_exc/const.ads | 2 +-
gdb/testsuite/gdb.ada/info_exc/foo.adb | 2 +-
gdb/testsuite/gdb.ada/info_locals_renaming.exp | 2 +-
gdb/testsuite/gdb.ada/info_locals_renaming/foo.adb | 2 +-
gdb/testsuite/gdb.ada/info_locals_renaming/pck.adb | 2 +-
gdb/testsuite/gdb.ada/info_locals_renaming/pck.ads | 2 +-
gdb/testsuite/gdb.ada/info_types.c | 2 +-
gdb/testsuite/gdb.ada/info_types.exp | 4 +-
gdb/testsuite/gdb.ada/int_deref.exp | 2 +-
gdb/testsuite/gdb.ada/int_deref/foo.adb | 2 +-
gdb/testsuite/gdb.ada/int_deref/pck.ads | 2 +-
gdb/testsuite/gdb.ada/interface.exp | 2 +-
gdb/testsuite/gdb.ada/interface/foo.adb | 2 +-
gdb/testsuite/gdb.ada/interface/types.adb | 2 +-
gdb/testsuite/gdb.ada/interface/types.ads | 2 +-
gdb/testsuite/gdb.ada/iwide.exp | 2 +-
gdb/testsuite/gdb.ada/iwide/classes.adb | 2 +-
gdb/testsuite/gdb.ada/iwide/classes.ads | 2 +-
gdb/testsuite/gdb.ada/iwide/p.adb | 2 +-
gdb/testsuite/gdb.ada/lang_switch.exp | 2 +-
gdb/testsuite/gdb.ada/lang_switch/foo.c | 2 +-
gdb/testsuite/gdb.ada/lang_switch/lang_switch.adb | 2 +-
gdb/testsuite/gdb.ada/maint_with_ada.exp | 37 +
.../{var_arr_typedef => maint_with_ada}/pack.adb | 0
.../{var_arr_typedef => maint_with_ada}/pack.ads | 0
.../var_arr_typedef.adb | 0
gdb/testsuite/gdb.ada/mi_catch_assert.exp | 96 +
gdb/testsuite/gdb.ada/mi_catch_assert/bla.adb | 46 +
gdb/testsuite/gdb.ada/mi_catch_assert/pck.ads | 19 +
gdb/testsuite/gdb.ada/mi_catch_ex.exp | 14 +-
gdb/testsuite/gdb.ada/mi_catch_ex/foo.adb | 2 +-
gdb/testsuite/gdb.ada/mi_catch_ex_hand.exp | 137 +
gdb/testsuite/gdb.ada/mi_catch_ex_hand/foo.adb | 33 +
gdb/testsuite/gdb.ada/mi_dyn_arr.exp | 2 +-
gdb/testsuite/gdb.ada/mi_dyn_arr/foo.adb | 2 +-
gdb/testsuite/gdb.ada/mi_dyn_arr/pck.adb | 2 +-
gdb/testsuite/gdb.ada/mi_dyn_arr/pck.ads | 2 +-
gdb/testsuite/gdb.ada/mi_ex_cond.exp | 4 +-
gdb/testsuite/gdb.ada/mi_ex_cond/foo.adb | 2 +-
gdb/testsuite/gdb.ada/mi_ex_cond/pck.ads | 2 +-
gdb/testsuite/gdb.ada/mi_exc_info.exp | 2 +-
gdb/testsuite/gdb.ada/mi_exc_info/const.ads | 2 +-
gdb/testsuite/gdb.ada/mi_exc_info/foo.adb | 2 +-
gdb/testsuite/gdb.ada/mi_interface.exp | 6 +-
gdb/testsuite/gdb.ada/mi_interface/foo.adb | 2 +-
gdb/testsuite/gdb.ada/mi_interface/pck.adb | 2 +-
gdb/testsuite/gdb.ada/mi_interface/pck.ads | 2 +-
gdb/testsuite/gdb.ada/mi_string_access.exp | 64 +
gdb/testsuite/gdb.ada/mi_string_access/bar.adb | 24 +
gdb/testsuite/gdb.ada/mi_string_access/pck.adb | 21 +
gdb/testsuite/gdb.ada/mi_string_access/pck.ads | 19 +
gdb/testsuite/gdb.ada/mi_task_arg.exp | 2 +-
gdb/testsuite/gdb.ada/mi_task_arg/task_switch.adb | 2 +-
gdb/testsuite/gdb.ada/mi_task_info.exp | 2 +-
gdb/testsuite/gdb.ada/mi_task_info/task_switch.adb | 2 +-
gdb/testsuite/gdb.ada/mi_var_array.exp | 4 +-
gdb/testsuite/gdb.ada/mi_var_array/bar.adb | 2 +-
gdb/testsuite/gdb.ada/mi_var_array/pck.adb | 2 +-
gdb/testsuite/gdb.ada/mi_var_array/pck.ads | 2 +-
gdb/testsuite/gdb.ada/mi_var_union.exp | 54 +
gdb/testsuite/gdb.ada/mi_var_union/bar.adb | 29 +
gdb/testsuite/gdb.ada/mi_var_union/pck.adb | 21 +
gdb/testsuite/gdb.ada/mi_var_union/pck.ads | 19 +
gdb/testsuite/gdb.ada/minsyms.exp | 41 +
gdb/testsuite/gdb.ada/minsyms/foo_qb07_057.adb | 20 +
gdb/testsuite/gdb.ada/minsyms/pck.adb | 21 +
gdb/testsuite/gdb.ada/minsyms/pck.ads | 21 +
gdb/testsuite/gdb.ada/mod_from_name.exp | 2 +-
gdb/testsuite/gdb.ada/mod_from_name/foo.adb | 2 +-
gdb/testsuite/gdb.ada/n_arr_bound.exp | 2 +-
gdb/testsuite/gdb.ada/n_arr_bound/foo.adb | 2 +-
gdb/testsuite/gdb.ada/n_arr_bound/pck.adb | 2 +-
gdb/testsuite/gdb.ada/n_arr_bound/pck.ads | 2 +-
gdb/testsuite/gdb.ada/nested.exp | 2 +-
gdb/testsuite/gdb.ada/nested/hello.adb | 2 +-
gdb/testsuite/gdb.ada/notcplusplus.exp | 45 +
gdb/testsuite/gdb.ada/notcplusplus/foo.adb | 21 +
gdb/testsuite/gdb.ada/notcplusplus/pck.adb | 21 +
gdb/testsuite/gdb.ada/notcplusplus/pck.ads | 19 +
gdb/testsuite/gdb.ada/notcplusplus/ver.ads | 22 +
gdb/testsuite/gdb.ada/null_array.exp | 2 +-
gdb/testsuite/gdb.ada/null_array/foo.adb | 2 +-
gdb/testsuite/gdb.ada/null_array/pck.adb | 2 +-
gdb/testsuite/gdb.ada/null_array/pck.ads | 2 +-
gdb/testsuite/gdb.ada/null_record.exp | 2 +-
gdb/testsuite/gdb.ada/null_record/bar.adb | 2 +-
gdb/testsuite/gdb.ada/null_record/bar.ads | 2 +-
gdb/testsuite/gdb.ada/null_record/null_record.adb | 2 +-
gdb/testsuite/gdb.ada/operator_bp.exp | 2 +-
gdb/testsuite/gdb.ada/operator_bp/ops.adb | 2 +-
gdb/testsuite/gdb.ada/operator_bp/ops.ads | 2 +-
gdb/testsuite/gdb.ada/operator_bp/ops_test.adb | 2 +-
gdb/testsuite/gdb.ada/optim_drec.exp | 2 +-
gdb/testsuite/gdb.ada/optim_drec/foo.adb | 2 +-
gdb/testsuite/gdb.ada/out_of_line_in_inlined.exp | 2 +-
.../gdb.ada/out_of_line_in_inlined/bar.adb | 2 +-
.../gdb.ada/out_of_line_in_inlined/bar.ads | 2 +-
.../out_of_line_in_inlined/foo_o224_021.adb | 2 +-
gdb/testsuite/gdb.ada/packed_array.exp | 2 +-
gdb/testsuite/gdb.ada/packed_array/pa.adb | 2 +-
gdb/testsuite/gdb.ada/packed_array/pck.adb | 2 +-
gdb/testsuite/gdb.ada/packed_array/pck.ads | 2 +-
gdb/testsuite/gdb.ada/packed_array_assign.exp | 30 +
.../gdb.ada/packed_array_assign/aggregates.adb | 25 +
.../gdb.ada/packed_array_assign/aggregates.ads | 33 +
gdb/testsuite/gdb.ada/packed_array_assign/pck.adb | 23 +
gdb/testsuite/gdb.ada/packed_array_assign/pck.ads | 22 +
.../gdb.ada/packed_array_assign/tester.adb | 20 +
gdb/testsuite/gdb.ada/packed_tagged.exp | 2 +-
gdb/testsuite/gdb.ada/packed_tagged/comp_bug.adb | 2 +-
gdb/testsuite/gdb.ada/pckd_arr_ren.exp | 2 +-
gdb/testsuite/gdb.ada/pckd_arr_ren/foo.adb | 2 +-
gdb/testsuite/gdb.ada/pckd_arr_ren/pck.adb | 2 +-
gdb/testsuite/gdb.ada/pckd_arr_ren/pck.ads | 2 +-
gdb/testsuite/gdb.ada/pckd_neg.exp | 2 +-
gdb/testsuite/gdb.ada/pckd_neg/foo_o508_021.adb | 2 +-
gdb/testsuite/gdb.ada/pckd_neg/pck.adb | 2 +-
gdb/testsuite/gdb.ada/pckd_neg/pck.ads | 2 +-
gdb/testsuite/gdb.ada/pkd_arr_elem.exp | 16 +-
gdb/testsuite/gdb.ada/pkd_arr_elem/failure.adb | 2 +-
gdb/testsuite/gdb.ada/pkd_arr_elem/pck.adb | 2 +-
gdb/testsuite/gdb.ada/pkd_arr_elem/pck.ads | 2 +-
gdb/testsuite/gdb.ada/pp-rec-component.exp | 2 +-
gdb/testsuite/gdb.ada/pp-rec-component.py | 2 +-
gdb/testsuite/gdb.ada/pp-rec-component/foo.adb | 2 +-
gdb/testsuite/gdb.ada/pp-rec-component/pck.adb | 2 +-
gdb/testsuite/gdb.ada/pp-rec-component/pck.ads | 2 +-
gdb/testsuite/gdb.ada/print_chars.exp | 2 +-
gdb/testsuite/gdb.ada/print_chars/foo.adb | 2 +-
gdb/testsuite/gdb.ada/print_chars/pck.adb | 2 +-
gdb/testsuite/gdb.ada/print_chars/pck.ads | 2 +-
gdb/testsuite/gdb.ada/print_pc.exp | 2 +-
gdb/testsuite/gdb.ada/ptr_typedef.exp | 2 +-
gdb/testsuite/gdb.ada/ptr_typedef/foo.adb | 2 +-
gdb/testsuite/gdb.ada/ptr_typedef/pck.adb | 2 +-
gdb/testsuite/gdb.ada/ptr_typedef/pck.ads | 2 +-
gdb/testsuite/gdb.ada/ptype_arith_binop.exp | 2 +-
gdb/testsuite/gdb.ada/ptype_field.exp | 2 +-
gdb/testsuite/gdb.ada/ptype_field/foo.adb | 2 +-
gdb/testsuite/gdb.ada/ptype_field/pck.adb | 2 +-
gdb/testsuite/gdb.ada/ptype_field/pck.ads | 2 +-
gdb/testsuite/gdb.ada/ptype_tagged_param.exp | 2 +-
gdb/testsuite/gdb.ada/ptype_tagged_param/foo.adb | 2 +-
gdb/testsuite/gdb.ada/ptype_tagged_param/pck.adb | 2 +-
gdb/testsuite/gdb.ada/ptype_tagged_param/pck.ads | 2 +-
gdb/testsuite/gdb.ada/py_range.exp | 2 +-
gdb/testsuite/gdb.ada/py_range/foo.adb | 2 +-
gdb/testsuite/gdb.ada/py_range/pck.adb | 2 +-
gdb/testsuite/gdb.ada/py_range/pck.ads | 2 +-
gdb/testsuite/gdb.ada/rdv_wait.exp | 2 +-
gdb/testsuite/gdb.ada/rdv_wait/foo.adb | 2 +-
gdb/testsuite/gdb.ada/rdv_wait/pck.adb | 2 +-
gdb/testsuite/gdb.ada/rdv_wait/pck.ads | 2 +-
gdb/testsuite/gdb.ada/rec_comp.exp | 2 +-
gdb/testsuite/gdb.ada/rec_comp/bar_o203_012.adb | 2 +-
gdb/testsuite/gdb.ada/rec_comp/pck.adb | 2 +-
gdb/testsuite/gdb.ada/rec_comp/pck.ads | 2 +-
gdb/testsuite/gdb.ada/rec_return.exp | 2 +-
gdb/testsuite/gdb.ada/rec_return/foo.adb | 2 +-
gdb/testsuite/gdb.ada/rec_return/pck.adb | 2 +-
gdb/testsuite/gdb.ada/rec_return/pck.ads | 2 +-
gdb/testsuite/gdb.ada/ref_param.exp | 2 +-
gdb/testsuite/gdb.ada/ref_param/foo.adb | 2 +-
gdb/testsuite/gdb.ada/ref_param/pck.adb | 2 +-
gdb/testsuite/gdb.ada/ref_param/pck.ads | 2 +-
gdb/testsuite/gdb.ada/ref_tick_size.exp | 2 +-
gdb/testsuite/gdb.ada/ref_tick_size/p.adb | 2 +-
gdb/testsuite/gdb.ada/ref_tick_size/pck.adb | 2 +-
gdb/testsuite/gdb.ada/ref_tick_size/pck.ads | 2 +-
gdb/testsuite/gdb.ada/rename_subscript_param.exp | 44 +
.../gdb.ada/rename_subscript_param/pb30_012.adb | 22 +
.../gdb.ada/rename_subscript_param/pck.adb | 21 +
.../gdb.ada/rename_subscript_param/pck.ads | 19 +
.../gdb.ada/rename_subscript_param/pkg.adb | 30 +
.../gdb.ada/rename_subscript_param/pkg.ads | 21 +
gdb/testsuite/gdb.ada/repeat_dyn.exp | 30 +
gdb/testsuite/gdb.ada/repeat_dyn/foo_oc22_002.adb | 25 +
gdb/testsuite/gdb.ada/repeat_dyn/pck.adb | 27 +
gdb/testsuite/gdb.ada/repeat_dyn/pck.ads | 22 +
gdb/testsuite/gdb.ada/same_component_name.exp | 70 +
gdb/testsuite/gdb.ada/same_component_name/foo.adb | 36 +
gdb/testsuite/gdb.ada/same_component_name/pck.adb | 57 +
gdb/testsuite/gdb.ada/same_component_name/pck.ads | 76 +
gdb/testsuite/gdb.ada/same_enum.exp | 2 +-
gdb/testsuite/gdb.ada/same_enum/a.adb | 2 +-
gdb/testsuite/gdb.ada/same_enum/pck.adb | 2 +-
gdb/testsuite/gdb.ada/same_enum/pck.ads | 2 +-
gdb/testsuite/gdb.ada/scoped_watch.exp | 83 +
.../gdb.ada/scoped_watch/foo_p708_025.adb | 25 +
gdb/testsuite/gdb.ada/scoped_watch/pck.adb | 44 +
gdb/testsuite/gdb.ada/scoped_watch/pck.ads | 21 +
gdb/testsuite/gdb.ada/set_pckd_arr_elt.exp | 2 +-
gdb/testsuite/gdb.ada/set_pckd_arr_elt/foo.adb | 2 +-
gdb/testsuite/gdb.ada/set_pckd_arr_elt/pck.adb | 2 +-
gdb/testsuite/gdb.ada/set_pckd_arr_elt/pck.ads | 2 +-
gdb/testsuite/gdb.ada/set_wstr.exp | 2 +-
gdb/testsuite/gdb.ada/set_wstr/a.adb | 2 +-
gdb/testsuite/gdb.ada/set_wstr/pck.adb | 2 +-
gdb/testsuite/gdb.ada/set_wstr/pck.ads | 2 +-
gdb/testsuite/gdb.ada/small_reg_param.exp | 2 +-
gdb/testsuite/gdb.ada/small_reg_param/foo.adb | 2 +-
gdb/testsuite/gdb.ada/small_reg_param/pck.adb | 2 +-
gdb/testsuite/gdb.ada/small_reg_param/pck.ads | 2 +-
gdb/testsuite/gdb.ada/start.exp | 4 +-
gdb/testsuite/gdb.ada/start/dummy.adb | 2 +-
gdb/testsuite/gdb.ada/str_binop_equal.exp | 39 +
.../gdb.ada/str_binop_equal/foo_p211_061.adb | 22 +
gdb/testsuite/gdb.ada/str_binop_equal/pck.adb | 22 +
gdb/testsuite/gdb.ada/str_binop_equal/pck.ads | 20 +
gdb/testsuite/gdb.ada/str_ref_cmp.exp | 2 +-
gdb/testsuite/gdb.ada/str_ref_cmp/foo.adb | 2 +-
gdb/testsuite/gdb.ada/str_ref_cmp/pck.ads | 2 +-
gdb/testsuite/gdb.ada/str_uninit.exp | 2 +-
gdb/testsuite/gdb.ada/str_uninit/parse.adb | 2 +-
gdb/testsuite/gdb.ada/str_uninit/pck.adb | 2 +-
gdb/testsuite/gdb.ada/str_uninit/pck.ads | 2 +-
gdb/testsuite/gdb.ada/sym_print_name.exp | 2 +-
gdb/testsuite/gdb.ada/sym_print_name/foo.adb | 2 +-
gdb/testsuite/gdb.ada/sym_print_name/pck.adb | 2 +-
gdb/testsuite/gdb.ada/sym_print_name/pck.ads | 2 +-
gdb/testsuite/gdb.ada/taft_type.exp | 2 +-
gdb/testsuite/gdb.ada/taft_type/p.adb | 2 +-
gdb/testsuite/gdb.ada/taft_type/pck.adb | 2 +-
gdb/testsuite/gdb.ada/taft_type/pck.ads | 2 +-
gdb/testsuite/gdb.ada/tagged.exp | 2 +-
gdb/testsuite/gdb.ada/tagged/foo.adb | 2 +-
gdb/testsuite/gdb.ada/tagged/pck.adb | 2 +-
gdb/testsuite/gdb.ada/tagged/pck.ads | 2 +-
gdb/testsuite/gdb.ada/tagged_access.exp | 2 +-
gdb/testsuite/gdb.ada/tagged_access/p.adb | 2 +-
gdb/testsuite/gdb.ada/tagged_access/pack.adb | 2 +-
gdb/testsuite/gdb.ada/tagged_access/pack.ads | 2 +-
gdb/testsuite/gdb.ada/tagged_not_init.exp | 2 +-
gdb/testsuite/gdb.ada/tagged_not_init/foo.adb | 2 +-
gdb/testsuite/gdb.ada/tagged_not_init/pck.adb | 2 +-
gdb/testsuite/gdb.ada/tagged_not_init/pck.ads | 2 +-
gdb/testsuite/gdb.ada/task_bp.exp | 2 +-
gdb/testsuite/gdb.ada/task_bp/foo.adb | 2 +-
gdb/testsuite/gdb.ada/task_bp/pck.adb | 2 +-
gdb/testsuite/gdb.ada/task_bp/pck.ads | 2 +-
gdb/testsuite/gdb.ada/task_switch_in_core.exp | 80 +
.../gdb.ada/task_switch_in_core/crash.adb | 53 +
gdb/testsuite/gdb.ada/tasks.exp | 2 +-
gdb/testsuite/gdb.ada/tasks/foo.adb | 2 +-
gdb/testsuite/gdb.ada/tick_last_segv.exp | 2 +-
gdb/testsuite/gdb.ada/tick_last_segv/foo.adb | 2 +-
.../gdb.ada/tick_length_array_enum_idx.exp | 2 +-
.../tick_length_array_enum_idx/foo_n207_004.adb | 2 +-
.../gdb.ada/tick_length_array_enum_idx/pck.adb | 2 +-
.../gdb.ada/tick_length_array_enum_idx/pck.ads | 2 +-
gdb/testsuite/gdb.ada/type_coercion.exp | 2 +-
gdb/testsuite/gdb.ada/type_coercion/assign.adb | 2 +-
gdb/testsuite/gdb.ada/type_coercion/ident.adb | 2 +-
gdb/testsuite/gdb.ada/unc_arr_ptr_in_var_rec.exp | 2 +-
.../gdb.ada/unc_arr_ptr_in_var_rec/foo.adb | 2 +-
.../gdb.ada/unc_arr_ptr_in_var_rec/pck.adb | 2 +-
.../gdb.ada/unc_arr_ptr_in_var_rec/pck.ads | 2 +-
gdb/testsuite/gdb.ada/uninitialized_vars.exp | 2 +-
gdb/testsuite/gdb.ada/uninitialized_vars/parse.adb | 2 +-
.../uninitialized_vars/parse_controlled.ads | 2 +-
gdb/testsuite/gdb.ada/var_arr_attrs.exp | 2 +-
.../gdb.ada/var_arr_attrs/foo_o115_002.adb | 2 +-
gdb/testsuite/gdb.ada/var_arr_attrs/pck.adb | 2 +-
gdb/testsuite/gdb.ada/var_arr_attrs/pck.ads | 2 +-
gdb/testsuite/gdb.ada/var_arr_typedef.exp | 2 +-
gdb/testsuite/gdb.ada/var_arr_typedef/pack.adb | 2 +-
gdb/testsuite/gdb.ada/var_arr_typedef/pack.ads | 2 +-
.../gdb.ada/var_arr_typedef/var_arr_typedef.adb | 2 +-
gdb/testsuite/gdb.ada/var_rec_arr.exp | 2 +-
gdb/testsuite/gdb.ada/var_rec_arr/foo_na09_042.adb | 2 +-
gdb/testsuite/gdb.ada/var_rec_arr/pck.adb | 2 +-
gdb/testsuite/gdb.ada/var_rec_arr/pck.ads | 2 +-
.../gdb.ada/variant_record_packed_array.exp | 26 +-
.../gdb.ada/variant_record_packed_array/foo.adb | 2 +-
.../gdb.ada/variant_record_packed_array/pck.adb | 2 +-
.../gdb.ada/variant_record_packed_array/pck.ads | 2 +-
gdb/testsuite/gdb.ada/varsize_limit.exp | 38 +
gdb/testsuite/gdb.ada/varsize_limit/pck.adb | 25 +
gdb/testsuite/gdb.ada/varsize_limit/pck.ads | 20 +
gdb/testsuite/gdb.ada/varsize_limit/vsizelim.adb | 23 +
gdb/testsuite/gdb.ada/watch_arg.exp | 15 +-
gdb/testsuite/gdb.ada/watch_arg/pck.adb | 2 +-
gdb/testsuite/gdb.ada/watch_arg/pck.ads | 2 +-
gdb/testsuite/gdb.ada/watch_arg/watch.adb | 2 +-
gdb/testsuite/gdb.ada/watch_minus_l.exp | 42 +
.../gdb.ada/watch_minus_l/foo_ra10_006.adb | 22 +
gdb/testsuite/gdb.ada/watch_minus_l/pck.adb | 21 +
gdb/testsuite/gdb.ada/watch_minus_l/pck.ads | 22 +
gdb/testsuite/gdb.ada/whatis_array_val.exp | 2 +-
gdb/testsuite/gdb.ada/whatis_array_val/foo.adb | 2 +-
gdb/testsuite/gdb.ada/whatis_array_val/pck.adb | 2 +-
gdb/testsuite/gdb.ada/whatis_array_val/pck.ads | 2 +-
gdb/testsuite/gdb.ada/widewide.exp | 2 +-
gdb/testsuite/gdb.ada/widewide/foo.adb | 2 +-
gdb/testsuite/gdb.ada/widewide/pck.adb | 2 +-
gdb/testsuite/gdb.ada/widewide/pck.ads | 2 +-
gdb/testsuite/gdb.ada/win_fu_syms.exp | 2 +-
gdb/testsuite/gdb.ada/win_fu_syms/foo.adb | 2 +-
gdb/testsuite/gdb.ada/win_fu_syms/pck.adb | 2 +-
gdb/testsuite/gdb.ada/win_fu_syms/pck.ads | 2 +-
gdb/testsuite/gdb.arch/aarch64-atomic-inst.c | 2 +-
gdb/testsuite/gdb.arch/aarch64-atomic-inst.exp | 5 +-
gdb/testsuite/gdb.arch/aarch64-fp.c | 18 +-
gdb/testsuite/gdb.arch/aarch64-fp.exp | 14 +-
gdb/testsuite/gdb.arch/aarch64-sighandler-regs.c | 187 +
gdb/testsuite/gdb.arch/aarch64-sighandler-regs.exp | 149 +
gdb/testsuite/gdb.arch/aarch64-tagged-pointer.c | 57 +
gdb/testsuite/gdb.arch/aarch64-tagged-pointer.exp | 105 +
gdb/testsuite/gdb.arch/aix-sighandle.c | 35 +
gdb/testsuite/gdb.arch/aix-sighandle.exp | 43 +
gdb/testsuite/gdb.arch/alpha-step.c | 2 +-
gdb/testsuite/gdb.arch/alpha-step.exp | 2 +-
gdb/testsuite/gdb.arch/altivec-abi.exp | 2 +-
gdb/testsuite/gdb.arch/altivec-regs.exp | 29 +-
gdb/testsuite/gdb.arch/amd64-byte.exp | 5 +-
gdb/testsuite/gdb.arch/amd64-disp-step-avx.S | 72 +
gdb/testsuite/gdb.arch/amd64-disp-step-avx.exp | 150 +
gdb/testsuite/gdb.arch/amd64-disp-step.S | 2 +-
gdb/testsuite/gdb.arch/amd64-disp-step.exp | 14 +-
gdb/testsuite/gdb.arch/amd64-dword.exp | 5 +-
gdb/testsuite/gdb.arch/amd64-entry-value-inline.S | 2 +-
gdb/testsuite/gdb.arch/amd64-entry-value-inline.c | 2 +-
.../gdb.arch/amd64-entry-value-inline.exp | 2 +-
.../gdb.arch/amd64-entry-value-param-dwarf5.S | 2 +-
.../gdb.arch/amd64-entry-value-param-dwarf5.c | 2 +-
.../gdb.arch/amd64-entry-value-param-dwarf5.exp | 2 +-
gdb/testsuite/gdb.arch/amd64-entry-value-param.S | 2 +-
gdb/testsuite/gdb.arch/amd64-entry-value-param.c | 2 +-
gdb/testsuite/gdb.arch/amd64-entry-value-param.exp | 2 +-
.../gdb.arch/amd64-entry-value-paramref.S | 2 +-
.../gdb.arch/amd64-entry-value-paramref.cc | 2 +-
.../gdb.arch/amd64-entry-value-paramref.exp | 2 +-
gdb/testsuite/gdb.arch/amd64-entry-value.cc | 2 +-
gdb/testsuite/gdb.arch/amd64-entry-value.exp | 10 +-
gdb/testsuite/gdb.arch/amd64-entry-value.s | 2 +-
gdb/testsuite/gdb.arch/amd64-gs_base.c | 2 +-
gdb/testsuite/gdb.arch/amd64-gs_base.exp | 2 +-
gdb/testsuite/gdb.arch/amd64-i386-address.S | 2 +-
gdb/testsuite/gdb.arch/amd64-i386-address.exp | 4 +-
gdb/testsuite/gdb.arch/amd64-init-x87-values.S | 31 +
gdb/testsuite/gdb.arch/amd64-init-x87-values.exp | 175 +
.../gdb.arch/amd64-invalid-stack-middle.S | 2 +-
.../gdb.arch/amd64-invalid-stack-middle.c | 2 +-
.../gdb.arch/amd64-invalid-stack-middle.exp | 6 +-
gdb/testsuite/gdb.arch/amd64-invalid-stack-top.c | 2 +-
gdb/testsuite/gdb.arch/amd64-invalid-stack-top.exp | 6 +-
gdb/testsuite/gdb.arch/amd64-optimout-repeat.S | 2 +-
gdb/testsuite/gdb.arch/amd64-optimout-repeat.c | 2 +-
gdb/testsuite/gdb.arch/amd64-optimout-repeat.exp | 2 +-
gdb/testsuite/gdb.arch/amd64-osabi.exp | 43 +
gdb/testsuite/gdb.arch/amd64-prologue-skip.S | 2 +-
gdb/testsuite/gdb.arch/amd64-prologue-skip.exp | 2 +-
gdb/testsuite/gdb.arch/amd64-prologue-xmm.c | 2 +-
gdb/testsuite/gdb.arch/amd64-prologue-xmm.exp | 2 +-
gdb/testsuite/gdb.arch/amd64-prologue-xmm.s | 2 +-
gdb/testsuite/gdb.arch/amd64-pseudo.c | 2 +-
.../gdb.arch/amd64-stap-optional-prefix.S | 2 +-
.../gdb.arch/amd64-stap-optional-prefix.exp | 2 +-
.../gdb.arch/amd64-stap-special-operands.exp | 2 +-
gdb/testsuite/gdb.arch/amd64-stap-three-arg-disp.c | 2 +-
gdb/testsuite/gdb.arch/amd64-stap-triplet.S | 2 +-
gdb/testsuite/gdb.arch/amd64-stap-triplet.c | 2 +-
gdb/testsuite/gdb.arch/amd64-stap-wrong-subexp.S | 2 +-
gdb/testsuite/gdb.arch/amd64-stap-wrong-subexp.exp | 2 +-
gdb/testsuite/gdb.arch/amd64-tailcall-cxx.exp | 2 +-
gdb/testsuite/gdb.arch/amd64-tailcall-cxx1.S | 2 +-
gdb/testsuite/gdb.arch/amd64-tailcall-cxx1.cc | 2 +-
gdb/testsuite/gdb.arch/amd64-tailcall-cxx2.S | 2 +-
gdb/testsuite/gdb.arch/amd64-tailcall-cxx2.cc | 2 +-
gdb/testsuite/gdb.arch/amd64-tailcall-noret.S | 2 +-
gdb/testsuite/gdb.arch/amd64-tailcall-noret.c | 2 +-
gdb/testsuite/gdb.arch/amd64-tailcall-noret.exp | 2 +-
gdb/testsuite/gdb.arch/amd64-tailcall-ret.S | 2 +-
gdb/testsuite/gdb.arch/amd64-tailcall-ret.c | 2 +-
gdb/testsuite/gdb.arch/amd64-tailcall-ret.exp | 2 +-
gdb/testsuite/gdb.arch/amd64-tailcall-self.S | 2 +-
gdb/testsuite/gdb.arch/amd64-tailcall-self.c | 2 +-
gdb/testsuite/gdb.arch/amd64-tailcall-self.exp | 2 +-
gdb/testsuite/gdb.arch/amd64-word.exp | 5 +-
gdb/testsuite/gdb.arch/arc-analyze-prologue.S | 2 +-
gdb/testsuite/gdb.arch/arc-analyze-prologue.exp | 4 +-
gdb/testsuite/gdb.arch/arc-decode-insn.S | 2 +-
gdb/testsuite/gdb.arch/arc-decode-insn.exp | 4 +-
gdb/testsuite/gdb.arch/arc-tdesc-cpu.exp | 48 +
gdb/testsuite/gdb.arch/arc-tdesc-cpu.xml | 53 +
gdb/testsuite/gdb.arch/arm-bl-branch-dest.c | 2 +-
gdb/testsuite/gdb.arch/arm-bl-branch-dest.exp | 2 +-
.../gdb.arch/arm-disassembler-options.exp | 2 +-
gdb/testsuite/gdb.arch/arm-disp-step.S | 2 +-
gdb/testsuite/gdb.arch/arm-disp-step.exp | 6 +-
gdb/testsuite/gdb.arch/arm-neon.c | 2 +-
gdb/testsuite/gdb.arch/arm-neon.exp | 2 +-
.../gdb.arch/arm-single-step-kernel-helper.c | 2 +-
.../gdb.arch/arm-single-step-kernel-helper.exp | 2 +-
gdb/testsuite/gdb.arch/avr-flash-qualifier.c | 2 +-
gdb/testsuite/gdb.arch/avr-flash-qualifier.exp | 2 +-
gdb/testsuite/gdb.arch/disp-step-insn-reloc.exp | 2 +-
gdb/testsuite/gdb.arch/e500-abi.exp | 5 +-
gdb/testsuite/gdb.arch/e500-prologue.c | 2 +-
gdb/testsuite/gdb.arch/e500-prologue.exp | 2 +-
gdb/testsuite/gdb.arch/e500-regs.exp | 20 +-
gdb/testsuite/gdb.arch/ftrace-insn-reloc.exp | 2 +-
gdb/testsuite/gdb.arch/gdb1291.exp | 5 +-
gdb/testsuite/gdb.arch/gdb1291.s | 2 +-
gdb/testsuite/gdb.arch/gdb1431.exp | 5 +-
gdb/testsuite/gdb.arch/gdb1431.s | 2 +-
gdb/testsuite/gdb.arch/gdb1558.c | 2 +-
gdb/testsuite/gdb.arch/gdb1558.exp | 2 +-
gdb/testsuite/gdb.arch/i386-avx.c | 2 +-
gdb/testsuite/gdb.arch/i386-avx.exp | 30 +-
gdb/testsuite/gdb.arch/i386-avx512.c | 130 +-
gdb/testsuite/gdb.arch/i386-avx512.exp | 6 +-
gdb/testsuite/gdb.arch/i386-biarch-core.exp | 2 +-
gdb/testsuite/gdb.arch/i386-bp_permanent.c | 2 +-
gdb/testsuite/gdb.arch/i386-bp_permanent.exp | 2 +-
gdb/testsuite/gdb.arch/i386-byte.exp | 5 +-
gdb/testsuite/gdb.arch/i386-cfi-notcurrent.S | 2 +-
gdb/testsuite/gdb.arch/i386-cfi-notcurrent.exp | 2 +-
gdb/testsuite/gdb.arch/i386-disp-step.S | 2 +-
gdb/testsuite/gdb.arch/i386-disp-step.exp | 14 +-
gdb/testsuite/gdb.arch/i386-dr3-watch.c | 2 +-
gdb/testsuite/gdb.arch/i386-dr3-watch.exp | 2 +-
gdb/testsuite/gdb.arch/i386-float.S | 2 +-
gdb/testsuite/gdb.arch/i386-float.exp | 2 +-
gdb/testsuite/gdb.arch/i386-gnu-cfi-asm.S | 2 +-
gdb/testsuite/gdb.arch/i386-gnu-cfi.c | 2 +-
gdb/testsuite/gdb.arch/i386-gnu-cfi.exp | 2 +-
gdb/testsuite/gdb.arch/i386-mpx-call.c | 2 +-
gdb/testsuite/gdb.arch/i386-mpx-call.exp | 2 +-
gdb/testsuite/gdb.arch/i386-mpx-map.c | 2 +-
gdb/testsuite/gdb.arch/i386-mpx-map.exp | 2 +-
gdb/testsuite/gdb.arch/i386-mpx-sigsegv.c | 2 +-
gdb/testsuite/gdb.arch/i386-mpx-sigsegv.exp | 2 +-
gdb/testsuite/gdb.arch/i386-mpx-simple_segv.c | 2 +-
gdb/testsuite/gdb.arch/i386-mpx-simple_segv.exp | 2 +-
gdb/testsuite/gdb.arch/i386-mpx.c | 2 +-
gdb/testsuite/gdb.arch/i386-mpx.exp | 2 +-
gdb/testsuite/gdb.arch/i386-permbkpt.S | 2 +-
gdb/testsuite/gdb.arch/i386-permbkpt.exp | 2 +-
gdb/testsuite/gdb.arch/i386-pkru.c | 2 +-
gdb/testsuite/gdb.arch/i386-pkru.exp | 2 +-
gdb/testsuite/gdb.arch/i386-prologue.c | 2 +-
gdb/testsuite/gdb.arch/i386-prologue.exp | 5 +-
gdb/testsuite/gdb.arch/i386-pseudo.c | 2 +-
gdb/testsuite/gdb.arch/i386-signal.c | 2 +-
gdb/testsuite/gdb.arch/i386-signal.exp | 2 +-
gdb/testsuite/gdb.arch/i386-size-overlap.c | 2 +-
gdb/testsuite/gdb.arch/i386-size-overlap.exp | 2 +-
gdb/testsuite/gdb.arch/i386-size.c | 2 +-
gdb/testsuite/gdb.arch/i386-size.exp | 2 +-
gdb/testsuite/gdb.arch/i386-sse-stack-align.S | 2 +-
gdb/testsuite/gdb.arch/i386-sse-stack-align.c | 2 +-
gdb/testsuite/gdb.arch/i386-sse-stack-align.exp | 4 +-
gdb/testsuite/gdb.arch/i386-sse.c | 2 +-
gdb/testsuite/gdb.arch/i386-sse.exp | 5 +-
gdb/testsuite/gdb.arch/i386-stap-eval-lang-ada.S | 2 +-
gdb/testsuite/gdb.arch/i386-stap-eval-lang-ada.c | 2 +-
gdb/testsuite/gdb.arch/i386-stap-eval-lang-ada.exp | 2 +-
gdb/testsuite/gdb.arch/i386-unwind.c | 2 +-
gdb/testsuite/gdb.arch/i386-unwind.exp | 2 +-
gdb/testsuite/gdb.arch/i386-word.exp | 5 +-
gdb/testsuite/gdb.arch/ia64-breakpoint-shadow.S | 2 +-
gdb/testsuite/gdb.arch/ia64-breakpoint-shadow.exp | 2 +-
gdb/testsuite/gdb.arch/insn-reloc.c | 5 +-
gdb/testsuite/gdb.arch/iwmmxt-regs.c | 2 +-
gdb/testsuite/gdb.arch/iwmmxt-regs.exp | 5 +-
.../gdb.arch/mips-disassembler-options.exp | 58 +
gdb/testsuite/gdb.arch/mips-disassembler-options.s | 30 +
gdb/testsuite/gdb.arch/mips-fcr.c | 2 +-
gdb/testsuite/gdb.arch/mips-fcr.exp | 2 +-
gdb/testsuite/gdb.arch/mips-fpregset-core.c | 82 +
gdb/testsuite/gdb.arch/mips-fpregset-core.exp | 154 +
gdb/testsuite/gdb.arch/mips-octeon-bbit.exp | 2 +-
gdb/testsuite/gdb.arch/mips16-thunks-inmain.c | 2 +-
gdb/testsuite/gdb.arch/mips16-thunks-main.c | 2 +-
gdb/testsuite/gdb.arch/mips16-thunks-sin.c | 2 +-
gdb/testsuite/gdb.arch/mips16-thunks-sinfrob.c | 2 +-
gdb/testsuite/gdb.arch/mips16-thunks-sinfrob16.c | 2 +-
gdb/testsuite/gdb.arch/mips16-thunks-sinmain.c | 2 +-
gdb/testsuite/gdb.arch/mips16-thunks-sinmips16.c | 2 +-
gdb/testsuite/gdb.arch/mips16-thunks.exp | 2 +-
gdb/testsuite/gdb.arch/pa-nullify.exp | 17 +-
gdb/testsuite/gdb.arch/powerpc-aix-prologue.c | 2 +-
gdb/testsuite/gdb.arch/powerpc-aix-prologue.exp | 2 +-
gdb/testsuite/gdb.arch/powerpc-altivec.exp | 2 +-
gdb/testsuite/gdb.arch/powerpc-altivec.s | 2 +-
gdb/testsuite/gdb.arch/powerpc-altivec2.exp | 2 +-
gdb/testsuite/gdb.arch/powerpc-altivec2.s | 2 +-
gdb/testsuite/gdb.arch/powerpc-altivec3.exp | 2 +-
gdb/testsuite/gdb.arch/powerpc-altivec3.s | 2 +-
gdb/testsuite/gdb.arch/powerpc-d128-regs.c | 2 +-
gdb/testsuite/gdb.arch/powerpc-d128-regs.exp | 8 +-
.../gdb.arch/powerpc-disassembler-options.exp | 2 +-
gdb/testsuite/gdb.arch/powerpc-fpscr-gcore.exp | 93 +
gdb/testsuite/gdb.arch/powerpc-htm-regs.c | 39 +
gdb/testsuite/gdb.arch/powerpc-htm-regs.exp | 328 +
gdb/testsuite/gdb.arch/powerpc-power7.exp | 2 +-
gdb/testsuite/gdb.arch/powerpc-power7.s | 2 +-
gdb/testsuite/gdb.arch/powerpc-power8.exp | 2 +-
gdb/testsuite/gdb.arch/powerpc-power8.s | 2 +-
gdb/testsuite/gdb.arch/powerpc-power9.exp | 6 +-
gdb/testsuite/gdb.arch/powerpc-power9.s | 4 +-
gdb/testsuite/gdb.arch/powerpc-ppr-dscr.c | 34 +
gdb/testsuite/gdb.arch/powerpc-ppr-dscr.exp | 120 +
gdb/testsuite/gdb.arch/powerpc-prologue-frame.S | 35 +
gdb/testsuite/gdb.arch/powerpc-prologue-frame.c | 28 +
gdb/testsuite/gdb.arch/powerpc-prologue-frame.exp | 41 +
gdb/testsuite/gdb.arch/powerpc-prologue.c | 2 +-
gdb/testsuite/gdb.arch/powerpc-prologue.exp | 5 +-
gdb/testsuite/gdb.arch/powerpc-stackless.S | 2 +-
gdb/testsuite/gdb.arch/powerpc-stackless.exp | 2 +-
gdb/testsuite/gdb.arch/powerpc-tar.c | 33 +
gdb/testsuite/gdb.arch/powerpc-tar.exp | 122 +
gdb/testsuite/gdb.arch/powerpc-vsx-gcore.exp | 90 +
gdb/testsuite/gdb.arch/powerpc-vsx.exp | 2 +-
gdb/testsuite/gdb.arch/powerpc-vsx.s | 2 +-
gdb/testsuite/gdb.arch/powerpc-vsx2.exp | 2 +-
gdb/testsuite/gdb.arch/powerpc-vsx2.s | 2 +-
gdb/testsuite/gdb.arch/powerpc-vsx3.exp | 2 +-
gdb/testsuite/gdb.arch/powerpc-vsx3.s | 2 +-
gdb/testsuite/gdb.arch/ppc-dfp.c | 2 +-
gdb/testsuite/gdb.arch/ppc-dfp.exp | 2 +-
gdb/testsuite/gdb.arch/ppc-fp.c | 2 +-
gdb/testsuite/gdb.arch/ppc-fp.exp | 2 +-
gdb/testsuite/gdb.arch/ppc-longdouble.c | 38 +
gdb/testsuite/gdb.arch/ppc-longdouble.exp | 58 +
gdb/testsuite/gdb.arch/ppc64-atomic-inst.S | 2 +-
gdb/testsuite/gdb.arch/ppc64-atomic-inst.exp | 5 +-
gdb/testsuite/gdb.arch/ppc64-isa207-atomic-inst.S | 2 +-
gdb/testsuite/gdb.arch/ppc64-isa207-atomic-inst.c | 2 +-
.../gdb.arch/ppc64-isa207-atomic-inst.exp | 5 +-
gdb/testsuite/gdb.arch/ppc64-symtab-cordic.exp | 2 +-
gdb/testsuite/gdb.arch/riscv-reg-aliases.c | 22 +
gdb/testsuite/gdb.arch/riscv-reg-aliases.exp | 180 +
.../gdb.arch/s390-disassembler-options.exp | 2 +-
gdb/testsuite/gdb.arch/s390-multiarch.c | 2 +-
gdb/testsuite/gdb.arch/s390-multiarch.exp | 6 +-
gdb/testsuite/gdb.arch/s390-stackless.S | 2 +-
gdb/testsuite/gdb.arch/s390-stackless.exp | 2 +-
gdb/testsuite/gdb.arch/s390-tdbregs.c | 11 +-
gdb/testsuite/gdb.arch/s390-tdbregs.exp | 14 +-
gdb/testsuite/gdb.arch/s390-vregs.S | 2 +-
gdb/testsuite/gdb.arch/s390-vregs.exp | 17 +-
gdb/testsuite/gdb.arch/sparc-sysstep.c | 2 +-
gdb/testsuite/gdb.arch/sparc-sysstep.exp | 2 +-
gdb/testsuite/gdb.arch/sparc64-adi.c | 145 +
gdb/testsuite/gdb.arch/sparc64-adi.exp | 53 +
gdb/testsuite/gdb.arch/sparc64-regs.S | 2 +-
gdb/testsuite/gdb.arch/sparc64-regs.exp | 7 +-
gdb/testsuite/gdb.arch/spu-info.c | 7 +-
gdb/testsuite/gdb.arch/spu-info.exp | 48 +-
gdb/testsuite/gdb.arch/spu-ls.c | 2 +-
gdb/testsuite/gdb.arch/spu-ls.exp | 15 +-
gdb/testsuite/gdb.arch/thumb-bx-pc.S | 2 +-
gdb/testsuite/gdb.arch/thumb-bx-pc.exp | 2 +-
gdb/testsuite/gdb.arch/thumb-prologue.c | 2 +-
gdb/testsuite/gdb.arch/thumb-prologue.exp | 2 +-
gdb/testsuite/gdb.arch/thumb-singlestep.S | 2 +-
gdb/testsuite/gdb.arch/thumb-singlestep.exp | 2 +-
gdb/testsuite/gdb.arch/thumb2-it.S | 2 +-
gdb/testsuite/gdb.arch/thumb2-it.exp | 6 +-
gdb/testsuite/gdb.arch/vsx-regs.exp | 37 +-
gdb/testsuite/gdb.asm/asm-source.exp | 15 +-
gdb/testsuite/gdb.base/a2-run.exp | 2 +-
gdb/testsuite/gdb.base/advance.exp | 2 +-
gdb/testsuite/gdb.base/alias.exp | 2 +-
gdb/testsuite/gdb.base/align.exp | 109 +
gdb/testsuite/gdb.base/all-architectures-0.exp | 2 +-
gdb/testsuite/gdb.base/all-architectures-1.exp | 2 +-
gdb/testsuite/gdb.base/all-architectures-2.exp | 2 +-
gdb/testsuite/gdb.base/all-architectures-3.exp | 2 +-
gdb/testsuite/gdb.base/all-architectures-4.exp | 2 +-
gdb/testsuite/gdb.base/all-architectures-5.exp | 2 +-
gdb/testsuite/gdb.base/all-architectures-6.exp | 2 +-
gdb/testsuite/gdb.base/all-architectures-7.exp | 2 +-
gdb/testsuite/gdb.base/all-architectures.exp.in | 2 +-
gdb/testsuite/gdb.base/all-bin.exp | 2 +-
.../gdb.base/annota-input-while-running.c | 2 +-
.../gdb.base/annota-input-while-running.exp | 2 +-
gdb/testsuite/gdb.base/annota1.exp | 10 +-
gdb/testsuite/gdb.base/annota3.exp | 10 +-
gdb/testsuite/gdb.base/anon.exp | 2 +-
gdb/testsuite/gdb.base/args.exp | 2 +-
gdb/testsuite/gdb.base/argv0-symlink.c | 2 +-
gdb/testsuite/gdb.base/argv0-symlink.exp | 7 +-
gdb/testsuite/gdb.base/arithmet.exp | 2 +-
gdb/testsuite/gdb.base/arrayidx.c | 2 +-
gdb/testsuite/gdb.base/arrayidx.exp | 2 +-
gdb/testsuite/gdb.base/asmlabel.c | 2 +-
gdb/testsuite/gdb.base/asmlabel.exp | 2 +-
gdb/testsuite/gdb.base/assign.exp | 2 +-
gdb/testsuite/gdb.base/async-shell.c | 2 +-
gdb/testsuite/gdb.base/async-shell.exp | 4 +-
gdb/testsuite/gdb.base/async.exp | 2 +-
gdb/testsuite/gdb.base/attach-non-pgrp-leader.c | 45 +
gdb/testsuite/gdb.base/attach-non-pgrp-leader.exp | 77 +
gdb/testsuite/gdb.base/attach-pie-misread.c | 2 +-
gdb/testsuite/gdb.base/attach-pie-misread.exp | 4 +-
gdb/testsuite/gdb.base/attach-pie-noexec.c | 2 +-
gdb/testsuite/gdb.base/attach-pie-noexec.exp | 4 +-
gdb/testsuite/gdb.base/attach-twice.c | 2 +-
gdb/testsuite/gdb.base/attach-twice.exp | 2 +-
gdb/testsuite/gdb.base/attach-wait-input.c | 2 +-
gdb/testsuite/gdb.base/attach-wait-input.exp | 4 +-
gdb/testsuite/gdb.base/attach.exp | 37 +-
.../gdb.base/auto-connect-native-target.c | 2 +-
.../gdb.base/auto-connect-native-target.exp | 2 +-
gdb/testsuite/gdb.base/auto-load-script | 2 +-
gdb/testsuite/gdb.base/auto-load.c | 2 +-
gdb/testsuite/gdb.base/auto-load.exp | 2 +-
gdb/testsuite/gdb.base/auxv.c | 2 +-
gdb/testsuite/gdb.base/auxv.exp | 13 +-
gdb/testsuite/gdb.base/bad-file.exp | 2 +-
gdb/testsuite/gdb.base/bang.exp | 2 +-
.../gdb.base/batch-exit-status.bad-commands | 1 +
gdb/testsuite/gdb.base/batch-exit-status.exp | 70 +
.../gdb.base/batch-exit-status.good-commands | 1 +
.../gdb.base/batch-preserve-term-settings.c | 2 +-
.../gdb.base/batch-preserve-term-settings.exp | 2 +-
gdb/testsuite/gdb.base/bfp-test.c | 2 +-
gdb/testsuite/gdb.base/bfp-test.exp | 2 +-
gdb/testsuite/gdb.base/bg-execution-repeat.c | 2 +-
gdb/testsuite/gdb.base/bg-execution-repeat.exp | 2 +-
gdb/testsuite/gdb.base/bigcore.c | 2 +-
gdb/testsuite/gdb.base/bigcore.exp | 7 +-
gdb/testsuite/gdb.base/bitfields.exp | 2 +-
gdb/testsuite/gdb.base/bitfields2.exp | 2 +-
gdb/testsuite/gdb.base/bitops.exp | 2 +-
gdb/testsuite/gdb.base/bp-cmds-continue-ctrl-c.c | 35 +
gdb/testsuite/gdb.base/bp-cmds-continue-ctrl-c.exp | 149 +
.../gdb.base/bp-cmds-execution-x-script.c | 2 +-
.../gdb.base/bp-cmds-execution-x-script.exp | 2 +-
.../gdb.base/bp-cmds-execution-x-script.gdb | 2 +-
gdb/testsuite/gdb.base/bp-permanent.c | 4 +-
gdb/testsuite/gdb.base/bp-permanent.exp | 2 +-
gdb/testsuite/gdb.base/branch-to-self.c | 2 +-
gdb/testsuite/gdb.base/branch-to-self.exp | 2 +-
gdb/testsuite/gdb.base/break-always.c | 2 +-
gdb/testsuite/gdb.base/break-always.exp | 2 +-
gdb/testsuite/gdb.base/break-caller-line.c | 2 +-
gdb/testsuite/gdb.base/break-caller-line.exp | 2 +-
gdb/testsuite/gdb.base/break-entry.exp | 4 +-
gdb/testsuite/gdb.base/break-fun-addr.exp | 2 +-
gdb/testsuite/gdb.base/break-fun-addr1.c | 2 +-
gdb/testsuite/gdb.base/break-fun-addr2.c | 2 +-
gdb/testsuite/gdb.base/break-idempotent.c | 2 +-
gdb/testsuite/gdb.base/break-idempotent.exp | 4 +-
gdb/testsuite/gdb.base/break-include.c | 57 +
gdb/testsuite/gdb.base/break-include.exp | 34 +
gdb/testsuite/gdb.base/break-include.inc | 18 +
gdb/testsuite/gdb.base/break-inline.c | 2 +-
gdb/testsuite/gdb.base/break-inline.exp | 2 +-
gdb/testsuite/gdb.base/break-interp-lib.c | 2 +-
gdb/testsuite/gdb.base/break-interp-main.c | 2 +-
gdb/testsuite/gdb.base/break-interp.exp | 9 +-
.../gdb.base/break-main-file-remove-fail.c | 2 +-
.../gdb.base/break-main-file-remove-fail.exp | 4 +-
.../gdb.base/break-on-linker-gcd-function.cc | 2 +-
.../gdb.base/break-on-linker-gcd-function.exp | 2 +-
gdb/testsuite/gdb.base/break-probes-solib.c | 2 +-
gdb/testsuite/gdb.base/break-probes.c | 2 +-
gdb/testsuite/gdb.base/break-probes.exp | 12 +-
gdb/testsuite/gdb.base/break-unload-file.c | 2 +-
gdb/testsuite/gdb.base/break-unload-file.exp | 4 +-
gdb/testsuite/gdb.base/break.c | 2 +-
gdb/testsuite/gdb.base/break.exp | 29 +-
gdb/testsuite/gdb.base/break1.c | 2 +-
gdb/testsuite/gdb.base/breakpoint-in-ro-region.c | 2 +-
gdb/testsuite/gdb.base/breakpoint-in-ro-region.exp | 6 +-
gdb/testsuite/gdb.base/breakpoint-shadow.c | 2 +-
gdb/testsuite/gdb.base/breakpoint-shadow.exp | 2 +-
gdb/testsuite/gdb.base/bt-selected-frame.c | 35 +
gdb/testsuite/gdb.base/bt-selected-frame.exp | 72 +
gdb/testsuite/gdb.base/c-linkage-name.c | 44 +
gdb/testsuite/gdb.base/c-linkage-name.exp | 47 +
gdb/testsuite/gdb.base/call-ar-st.exp | 2 +-
gdb/testsuite/gdb.base/call-rt-st.exp | 2 +-
gdb/testsuite/gdb.base/call-sc.c | 2 +-
gdb/testsuite/gdb.base/call-sc.exp | 2 +-
gdb/testsuite/gdb.base/call-signal-resume.exp | 2 +-
gdb/testsuite/gdb.base/call-signals.c | 2 +-
gdb/testsuite/gdb.base/call-strs.exp | 2 +-
gdb/testsuite/gdb.base/callexit.c | 2 +-
gdb/testsuite/gdb.base/callexit.exp | 2 +-
gdb/testsuite/gdb.base/callfuncs.c | 2 +-
gdb/testsuite/gdb.base/callfuncs.exp | 38 +-
gdb/testsuite/gdb.base/catch-follow-exec.c | 27 +
gdb/testsuite/gdb.base/catch-follow-exec.exp | 47 +
gdb/testsuite/gdb.base/catch-fork-kill.c | 2 +-
gdb/testsuite/gdb.base/catch-fork-kill.exp | 2 +-
gdb/testsuite/gdb.base/catch-fork-static.exp | 6 +-
gdb/testsuite/gdb.base/catch-gdb-caused-signals.c | 2 +-
.../gdb.base/catch-gdb-caused-signals.exp | 2 +-
gdb/testsuite/gdb.base/catch-load-so.c | 2 +-
gdb/testsuite/gdb.base/catch-load.c | 2 +-
gdb/testsuite/gdb.base/catch-load.exp | 2 +-
gdb/testsuite/gdb.base/catch-signal-fork.c | 2 +-
gdb/testsuite/gdb.base/catch-signal-fork.exp | 2 +-
gdb/testsuite/gdb.base/catch-signal-siginfo-cond.c | 2 +-
.../gdb.base/catch-signal-siginfo-cond.exp | 2 +-
gdb/testsuite/gdb.base/catch-signal.c | 2 +-
gdb/testsuite/gdb.base/catch-signal.exp | 2 +-
gdb/testsuite/gdb.base/catch-syscall.exp | 6 +-
gdb/testsuite/gdb.base/charset-malloc.c | 2 +-
gdb/testsuite/gdb.base/charset.c | 2 +-
gdb/testsuite/gdb.base/charset.exp | 2 +-
gdb/testsuite/gdb.base/checkpoint-ns.exp | 2 +-
gdb/testsuite/gdb.base/checkpoint.c | 2 +-
gdb/testsuite/gdb.base/checkpoint.exp | 56 +-
gdb/testsuite/gdb.base/chng-syms.exp | 2 +-
gdb/testsuite/gdb.base/code-expr.exp | 2 +-
gdb/testsuite/gdb.base/code_elim.exp | 17 +-
gdb/testsuite/gdb.base/code_elim1.c | 2 +-
gdb/testsuite/gdb.base/code_elim2.c | 2 +-
gdb/testsuite/gdb.base/command-line-input.exp | 2 +-
gdb/testsuite/gdb.base/commands.exp | 174 +-
gdb/testsuite/gdb.base/compare-sections.c | 2 +-
gdb/testsuite/gdb.base/compare-sections.exp | 9 +-
gdb/testsuite/gdb.base/complete-empty.exp | 52 +
gdb/testsuite/gdb.base/completion.exp | 98 +-
gdb/testsuite/gdb.base/complex.c | 2 +-
gdb/testsuite/gdb.base/complex.exp | 2 +-
gdb/testsuite/gdb.base/comprdebug.exp | 2 +-
gdb/testsuite/gdb.base/cond-eval-mode.c | 2 +-
gdb/testsuite/gdb.base/cond-eval-mode.exp | 2 +-
gdb/testsuite/gdb.base/cond-expr.exp | 2 +-
gdb/testsuite/gdb.base/condbreak-call-false.c | 2 +-
gdb/testsuite/gdb.base/condbreak-call-false.exp | 2 +-
gdb/testsuite/gdb.base/condbreak.exp | 2 +-
gdb/testsuite/gdb.base/consecutive-step-over.c | 2 +-
gdb/testsuite/gdb.base/consecutive-step-over.exp | 2 +-
gdb/testsuite/gdb.base/consecutive.exp | 2 +-
gdb/testsuite/gdb.base/constvars.exp | 2 +-
.../gdb.base/continue-after-aborted-step-over.c | 29 +
.../gdb.base/continue-after-aborted-step-over.exp | 87 +
.../gdb.base/continue-all-already-running.c | 2 +-
.../gdb.base/continue-all-already-running.exp | 2 +-
gdb/testsuite/gdb.base/coredump-filter.c | 2 +-
gdb/testsuite/gdb.base/coredump-filter.exp | 48 +-
gdb/testsuite/gdb.base/corefile.exp | 22 +-
gdb/testsuite/gdb.base/coremaker.c | 2 +-
gdb/testsuite/gdb.base/ctxobj-f.c | 2 +-
gdb/testsuite/gdb.base/ctxobj-m.c | 2 +-
gdb/testsuite/gdb.base/ctxobj-v.c | 2 +-
gdb/testsuite/gdb.base/ctxobj.exp | 2 +-
gdb/testsuite/gdb.base/cursal.c | 2 +-
gdb/testsuite/gdb.base/cursal.exp | 2 +-
gdb/testsuite/gdb.base/cvexpr.c | 2 +-
gdb/testsuite/gdb.base/cvexpr.exp | 2 +-
gdb/testsuite/gdb.base/dbx.exp | 23 +-
gdb/testsuite/gdb.base/dcache-line-read-error.c | 2 +-
gdb/testsuite/gdb.base/dcache-line-read-error.exp | 2 +-
gdb/testsuite/gdb.base/debug-expr.exp | 2 +-
gdb/testsuite/gdb.base/default.exp | 6 +-
gdb/testsuite/gdb.base/define.exp | 10 +-
gdb/testsuite/gdb.base/del.c | 2 +-
gdb/testsuite/gdb.base/del.exp | 2 +-
gdb/testsuite/gdb.base/detach.exp | 2 +-
gdb/testsuite/gdb.base/dfp-exprs.exp | 7 +-
gdb/testsuite/gdb.base/dfp-test.c | 19 +-
gdb/testsuite/gdb.base/dfp-test.exp | 67 +-
gdb/testsuite/gdb.base/disabled-location.c | 2 +-
gdb/testsuite/gdb.base/disabled-location.exp | 2 +-
gdb/testsuite/gdb.base/disasm-end-cu-1.c | 2 +-
gdb/testsuite/gdb.base/disasm-end-cu-2.c | 2 +-
gdb/testsuite/gdb.base/disasm-end-cu.exp | 2 +-
gdb/testsuite/gdb.base/disasm-optim.S | 2 +-
gdb/testsuite/gdb.base/disasm-optim.c | 2 +-
gdb/testsuite/gdb.base/disasm-optim.exp | 2 +-
gdb/testsuite/gdb.base/disasm-optim.h | 2 +-
gdb/testsuite/gdb.base/display.exp | 2 +-
gdb/testsuite/gdb.base/dmsym.c | 10 +-
gdb/testsuite/gdb.base/dmsym.exp | 39 +-
gdb/testsuite/gdb.base/dmsym_main.c | 12 +-
.../gdb.base/double-prompt-target-event-error.c | 2 +-
.../gdb.base/double-prompt-target-event-error.exp | 2 +-
gdb/testsuite/gdb.base/dprintf-bp-same-addr.c | 2 +-
gdb/testsuite/gdb.base/dprintf-bp-same-addr.exp | 2 +-
gdb/testsuite/gdb.base/dprintf-detach.c | 2 +-
gdb/testsuite/gdb.base/dprintf-detach.exp | 6 +-
gdb/testsuite/gdb.base/dprintf-next.c | 2 +-
gdb/testsuite/gdb.base/dprintf-next.exp | 2 +-
gdb/testsuite/gdb.base/dprintf-non-stop.c | 2 +-
gdb/testsuite/gdb.base/dprintf-non-stop.exp | 8 +-
gdb/testsuite/gdb.base/dprintf-pending.c | 2 +-
gdb/testsuite/gdb.base/dprintf-pending.exp | 2 +-
gdb/testsuite/gdb.base/dprintf-pendshr.c | 2 +-
gdb/testsuite/gdb.base/dprintf.c | 2 +-
gdb/testsuite/gdb.base/dprintf.exp | 2 +-
gdb/testsuite/gdb.base/dso2dso-dso1.c | 2 +-
gdb/testsuite/gdb.base/dso2dso-dso1.h | 2 +-
gdb/testsuite/gdb.base/dso2dso-dso2.c | 2 +-
gdb/testsuite/gdb.base/dso2dso-dso2.h | 2 +-
gdb/testsuite/gdb.base/dso2dso.c | 2 +-
gdb/testsuite/gdb.base/dso2dso.exp | 2 +-
gdb/testsuite/gdb.base/dtrace-probe.c | 2 +-
gdb/testsuite/gdb.base/dtrace-probe.d | 2 +-
gdb/testsuite/gdb.base/dtrace-probe.exp | 2 +-
gdb/testsuite/gdb.base/dump.exp | 9 +-
gdb/testsuite/gdb.base/dup-sect.S | 2 +-
gdb/testsuite/gdb.base/dup-sect.exp | 2 +-
gdb/testsuite/gdb.base/duplicate-bp.c | 2 +-
gdb/testsuite/gdb.base/duplicate-bp.exp | 2 +-
gdb/testsuite/gdb.base/echo.exp | 2 +-
gdb/testsuite/gdb.base/empty_exe.exp | 2 +-
gdb/testsuite/gdb.base/ena-dis-br.exp | 13 +-
gdb/testsuite/gdb.base/endian.c | 22 +
gdb/testsuite/gdb.base/endian.exp | 94 +
gdb/testsuite/gdb.base/ending-run.exp | 6 +-
gdb/testsuite/gdb.base/enum_cond.c | 2 +-
gdb/testsuite/gdb.base/enum_cond.exp | 2 +-
gdb/testsuite/gdb.base/enumval.c | 2 +-
gdb/testsuite/gdb.base/enumval.exp | 2 +-
gdb/testsuite/gdb.base/environ.exp | 307 +-
gdb/testsuite/gdb.base/eu-strip-infcall.c | 2 +-
gdb/testsuite/gdb.base/eu-strip-infcall.exp | 2 +-
gdb/testsuite/gdb.base/eval-avoid-side-effects.exp | 2 +-
gdb/testsuite/gdb.base/eval-skip.exp | 2 +-
gdb/testsuite/gdb.base/eval.exp | 2 +-
gdb/testsuite/gdb.base/examine-backward.c | 2 +-
gdb/testsuite/gdb.base/examine-backward.exp | 70 +-
gdb/testsuite/gdb.base/exe-lock.exp | 2 +-
gdb/testsuite/gdb.base/exec-invalid-sysroot.exp | 2 +-
gdb/testsuite/gdb.base/execl-update-breakpoints.c | 2 +-
.../gdb.base/execl-update-breakpoints.exp | 2 +-
gdb/testsuite/gdb.base/execution-termios.c | 2 +-
gdb/testsuite/gdb.base/execution-termios.exp | 2 +-
gdb/testsuite/gdb.base/exitsignal.exp | 2 +-
gdb/testsuite/gdb.base/expand-psymtabs.c | 2 +-
gdb/testsuite/gdb.base/expand-psymtabs.exp | 5 +-
gdb/testsuite/gdb.base/exprs.exp | 2 +-
gdb/testsuite/gdb.base/fileio.c | 66 +-
gdb/testsuite/gdb.base/fileio.exp | 4 +-
gdb/testsuite/gdb.base/filesym.c | 2 +-
gdb/testsuite/gdb.base/filesym.exp | 2 +-
gdb/testsuite/gdb.base/find-unmapped.c | 2 +-
gdb/testsuite/gdb.base/find-unmapped.exp | 68 +-
gdb/testsuite/gdb.base/find.c | 2 +-
gdb/testsuite/gdb.base/find.exp | 2 +-
gdb/testsuite/gdb.base/finish-pretty.c | 41 +
gdb/testsuite/gdb.base/finish-pretty.exp | 37 +
gdb/testsuite/gdb.base/finish.exp | 2 +-
gdb/testsuite/gdb.base/fixsection.c | 2 +-
gdb/testsuite/gdb.base/fixsection.exp | 2 +-
gdb/testsuite/gdb.base/float.c | 2 +-
gdb/testsuite/gdb.base/float.exp | 14 +-
gdb/testsuite/gdb.base/float128.c | 6 +-
gdb/testsuite/gdb.base/float128.exp | 19 +-
gdb/testsuite/gdb.base/floatn.c | 2 +-
gdb/testsuite/gdb.base/floatn.exp | 2 +-
gdb/testsuite/gdb.base/foll-exec-mode.c | 2 +-
gdb/testsuite/gdb.base/foll-exec-mode.exp | 2 +-
gdb/testsuite/gdb.base/foll-exec.c | 2 +-
gdb/testsuite/gdb.base/foll-exec.exp | 2 +-
gdb/testsuite/gdb.base/foll-fork.exp | 16 +-
gdb/testsuite/gdb.base/foll-vfork-exit.c | 2 +-
gdb/testsuite/gdb.base/foll-vfork.c | 2 +-
gdb/testsuite/gdb.base/foll-vfork.exp | 18 +-
.../gdb.base/fork-print-inferior-events.c | 37 +
.../gdb.base/fork-print-inferior-events.exp | 85 +
gdb/testsuite/gdb.base/fork-running-state.c | 58 +-
gdb/testsuite/gdb.base/fork-running-state.exp | 9 +-
gdb/testsuite/gdb.base/fortran-sym-case.c | 2 +-
gdb/testsuite/gdb.base/fortran-sym-case.exp | 2 +-
gdb/testsuite/gdb.base/frame-args.c | 2 +-
gdb/testsuite/gdb.base/frame-args.exp | 2 +-
gdb/testsuite/gdb.base/frame-selection.c | 52 +
gdb/testsuite/gdb.base/frame-selection.exp | 188 +
gdb/testsuite/gdb.base/frameapply.c | 71 +
gdb/testsuite/gdb.base/frameapply.exp | 217 +
gdb/testsuite/gdb.base/freebpcmd.c | 2 +-
gdb/testsuite/gdb.base/freebpcmd.exp | 2 +-
gdb/testsuite/gdb.base/fullname.c | 2 +-
gdb/testsuite/gdb.base/fullname.exp | 2 +-
gdb/testsuite/gdb.base/fullpath-expand-func.c | 2 +-
gdb/testsuite/gdb.base/fullpath-expand.c | 2 +-
gdb/testsuite/gdb.base/fullpath-expand.exp | 2 +-
gdb/testsuite/gdb.base/func-ptr.c | 2 +-
gdb/testsuite/gdb.base/func-ptr.exp | 2 +-
gdb/testsuite/gdb.base/func-ptrs.c | 2 +-
gdb/testsuite/gdb.base/func-ptrs.exp | 2 +-
gdb/testsuite/gdb.base/funcargs.c | 9 +
gdb/testsuite/gdb.base/funcargs.exp | 14 +-
gdb/testsuite/gdb.base/gcore-buffer-overflow.c | 2 +-
gdb/testsuite/gdb.base/gcore-buffer-overflow.exp | 2 +-
gdb/testsuite/gdb.base/gcore-relro-lib.c | 2 +-
gdb/testsuite/gdb.base/gcore-relro-main.c | 2 +-
gdb/testsuite/gdb.base/gcore-relro-pie.c | 2 +-
gdb/testsuite/gdb.base/gcore-relro-pie.exp | 2 +-
gdb/testsuite/gdb.base/gcore-relro.exp | 2 +-
gdb/testsuite/gdb.base/gcore-tls-pie.c | 48 +
gdb/testsuite/gdb.base/gcore-tls-pie.exp | 62 +
gdb/testsuite/gdb.base/gcore.c | 2 +-
gdb/testsuite/gdb.base/gcore.exp | 2 +-
gdb/testsuite/gdb.base/gdb-sigterm-2.exp | 2 +-
gdb/testsuite/gdb.base/gdb-sigterm.c | 2 +-
gdb/testsuite/gdb.base/gdb-sigterm.exp | 2 +-
gdb/testsuite/gdb.base/gdb1056.exp | 2 +-
gdb/testsuite/gdb.base/gdb1090.c | 2 +-
gdb/testsuite/gdb.base/gdb1090.exp | 2 +-
gdb/testsuite/gdb.base/gdb11530.c | 2 +-
gdb/testsuite/gdb.base/gdb11530.exp | 2 +-
gdb/testsuite/gdb.base/gdb11531.c | 2 +-
gdb/testsuite/gdb.base/gdb11531.exp | 2 +-
gdb/testsuite/gdb.base/gdb1250.c | 2 +-
gdb/testsuite/gdb.base/gdb1250.exp | 2 +-
gdb/testsuite/gdb.base/gdb1555-main.c | 2 +-
gdb/testsuite/gdb.base/gdb1555.c | 2 +-
gdb/testsuite/gdb.base/gdb1555.exp | 2 +-
gdb/testsuite/gdb.base/gdb1821.c | 2 +-
gdb/testsuite/gdb.base/gdb1821.exp | 2 +-
gdb/testsuite/gdb.base/gdbhistsize-history.exp | 2 +-
gdb/testsuite/gdb.base/gdbindex-stabs-dwarf.c | 2 +-
gdb/testsuite/gdb.base/gdbindex-stabs.c | 2 +-
gdb/testsuite/gdb.base/gdbindex-stabs.exp | 2 +-
gdb/testsuite/gdb.base/gdbinit-history.exp | 2 +-
gdb/testsuite/gdb.base/gdbvars.exp | 2 +-
.../gdb.base/global-var-nested-by-dso-solib1.c | 2 +-
.../gdb.base/global-var-nested-by-dso-solib2.c | 2 +-
gdb/testsuite/gdb.base/global-var-nested-by-dso.c | 2 +-
.../gdb.base/global-var-nested-by-dso.exp | 2 +-
gdb/testsuite/gdb.base/gnu-debugdata.c | 2 +-
gdb/testsuite/gdb.base/gnu-debugdata.exp | 2 +-
gdb/testsuite/gdb.base/gnu-ifunc-final.c | 22 +
gdb/testsuite/gdb.base/gnu-ifunc-lib.c | 14 +-
gdb/testsuite/gdb.base/gnu-ifunc.c | 8 +-
gdb/testsuite/gdb.base/gnu-ifunc.exp | 425 +-
gdb/testsuite/gdb.base/gnu_vector.c | 2 +-
gdb/testsuite/gdb.base/gnu_vector.exp | 36 +-
gdb/testsuite/gdb.base/hashline1.exp | 2 +-
gdb/testsuite/gdb.base/hashline2.exp | 2 +-
gdb/testsuite/gdb.base/hashline3.exp | 2 +-
.../gdb.base/hbreak-in-shr-unsupported-shr.c | 2 +-
gdb/testsuite/gdb.base/hbreak-in-shr-unsupported.c | 2 +-
.../gdb.base/hbreak-in-shr-unsupported.exp | 2 +-
gdb/testsuite/gdb.base/hbreak-unmapped.c | 2 +-
gdb/testsuite/gdb.base/hbreak-unmapped.exp | 2 +-
gdb/testsuite/gdb.base/hbreak.c | 2 +-
gdb/testsuite/gdb.base/hbreak.exp | 2 +-
gdb/testsuite/gdb.base/hbreak2.exp | 2 +-
gdb/testsuite/gdb.base/help.exp | 2 +-
gdb/testsuite/gdb.base/history-duplicates.exp | 2 +-
gdb/testsuite/gdb.base/hook-stop.c | 2 +-
gdb/testsuite/gdb.base/hook-stop.exp | 5 +-
gdb/testsuite/gdb.base/huge.exp | 2 +-
gdb/testsuite/gdb.base/ifelse.exp | 2 +-
gdb/testsuite/gdb.base/included.c | 2 +-
gdb/testsuite/gdb.base/included.exp | 4 +-
gdb/testsuite/gdb.base/included.h | 2 +-
gdb/testsuite/gdb.base/index-cache.c | 23 +
gdb/testsuite/gdb.base/index-cache.exp | 193 +
gdb/testsuite/gdb.base/infcall-exec.c | 2 +-
gdb/testsuite/gdb.base/infcall-exec.exp | 4 +-
gdb/testsuite/gdb.base/infcall-exec2.c | 2 +-
gdb/testsuite/gdb.base/infcall-input.c | 2 +-
gdb/testsuite/gdb.base/infcall-input.exp | 2 +-
gdb/testsuite/gdb.base/infcall-nested-structs.c | 233 +
gdb/testsuite/gdb.base/infcall-nested-structs.exp | 172 +
gdb/testsuite/gdb.base/inferior-died.c | 2 +-
gdb/testsuite/gdb.base/inferior-died.exp | 15 +-
gdb/testsuite/gdb.base/infnan.c | 2 +-
gdb/testsuite/gdb.base/infnan.exp | 2 +-
gdb/testsuite/gdb.base/info-fun-solib.c | 2 +-
gdb/testsuite/gdb.base/info-fun.c | 2 +-
gdb/testsuite/gdb.base/info-fun.exp | 4 +-
gdb/testsuite/gdb.base/info-macros.exp | 2 +-
gdb/testsuite/gdb.base/info-os.c | 2 +-
gdb/testsuite/gdb.base/info-os.exp | 12 +-
gdb/testsuite/gdb.base/info-proc.exp | 17 +-
gdb/testsuite/gdb.base/info-program.exp | 45 +
gdb/testsuite/gdb.base/info-shared-solib1.c | 2 +-
gdb/testsuite/gdb.base/info-shared-solib2.c | 2 +-
gdb/testsuite/gdb.base/info-shared.c | 2 +-
gdb/testsuite/gdb.base/info-shared.exp | 4 +-
gdb/testsuite/gdb.base/info-target.exp | 2 +-
gdb/testsuite/gdb.base/info_qt.c | 78 +
gdb/testsuite/gdb.base/info_qt.exp | 243 +
.../gdb.base/infoline-reloc-main-from-zero.c | 24 +
.../gdb.base/infoline-reloc-main-from-zero.exp | 51 +
gdb/testsuite/gdb.base/infoline.c | 2 +-
gdb/testsuite/gdb.base/infoline.exp | 2 +-
gdb/testsuite/gdb.base/interact.exp | 2 +-
gdb/testsuite/gdb.base/interp.c | 2 +-
gdb/testsuite/gdb.base/interp.exp | 2 +-
gdb/testsuite/gdb.base/interrupt-daemon.c | 67 +
gdb/testsuite/gdb.base/interrupt-daemon.exp | 89 +
gdb/testsuite/gdb.base/interrupt-noterm.c | 2 +-
gdb/testsuite/gdb.base/interrupt-noterm.exp | 2 +-
gdb/testsuite/gdb.base/interrupt.exp | 2 +-
gdb/testsuite/gdb.base/jit-attach-pie.c | 2 +-
gdb/testsuite/gdb.base/jit-attach-pie.exp | 4 +-
gdb/testsuite/gdb.base/jit-main.c | 2 +-
gdb/testsuite/gdb.base/jit-protocol.h | 2 +-
gdb/testsuite/gdb.base/jit-reader.exp | 56 +-
gdb/testsuite/gdb.base/jit-simple-dl.c | 2 +-
gdb/testsuite/gdb.base/jit-simple-jit.c | 2 +-
gdb/testsuite/gdb.base/jit-simple.c | 2 +-
gdb/testsuite/gdb.base/jit-simple.exp | 2 +-
gdb/testsuite/gdb.base/jit-so.exp | 2 +-
gdb/testsuite/gdb.base/jit-solib.c | 2 +-
gdb/testsuite/gdb.base/jit.exp | 2 +-
gdb/testsuite/gdb.base/jithost.c | 2 +-
gdb/testsuite/gdb.base/jithost.h | 2 +-
gdb/testsuite/gdb.base/jitreader.c | 2 +-
gdb/testsuite/gdb.base/jump.exp | 2 +-
gdb/testsuite/gdb.base/kill-after-signal.c | 2 +-
gdb/testsuite/gdb.base/kill-after-signal.exp | 8 +-
gdb/testsuite/gdb.base/kill-detach-inferiors-cmd.c | 2 +-
.../gdb.base/kill-detach-inferiors-cmd.exp | 4 +-
gdb/testsuite/gdb.base/killed-outside.c | 2 +-
gdb/testsuite/gdb.base/killed-outside.exp | 2 +-
gdb/testsuite/gdb.base/label.exp | 8 +-
gdb/testsuite/gdb.base/langs.exp | 4 +-
gdb/testsuite/gdb.base/langs1.f | 2 +-
gdb/testsuite/gdb.base/large-frame-1.c | 32 +
gdb/testsuite/gdb.base/large-frame-2.c | 25 +
gdb/testsuite/gdb.base/large-frame.exp | 57 +
gdb/testsuite/gdb.base/large-frame.h | 24 +
gdb/testsuite/gdb.base/ldbl_e308.c | 2 +-
gdb/testsuite/gdb.base/ldbl_e308.exp | 2 +-
gdb/testsuite/gdb.base/libsegfault.exp | 84 +
gdb/testsuite/gdb.base/line-symtabs.c | 2 +-
gdb/testsuite/gdb.base/line-symtabs.exp | 2 +-
gdb/testsuite/gdb.base/line-symtabs.h | 2 +-
gdb/testsuite/gdb.base/lineinc.exp | 2 +-
gdb/testsuite/gdb.base/linespecs.exp | 2 +-
gdb/testsuite/gdb.base/list-ambiguous.exp | 79 +
gdb/testsuite/gdb.base/list-ambiguous0.c | 42 +
gdb/testsuite/gdb.base/list-ambiguous1.c | 41 +
gdb/testsuite/gdb.base/list.exp | 4 +-
gdb/testsuite/gdb.base/load-command.c | 22 +
gdb/testsuite/gdb.base/load-command.exp | 49 +
gdb/testsuite/gdb.base/logical.exp | 2 +-
gdb/testsuite/gdb.base/long-inferior-output.c | 38 +
gdb/testsuite/gdb.base/long-inferior-output.exp | 75 +
gdb/testsuite/gdb.base/long_long.c | 2 +-
gdb/testsuite/gdb.base/long_long.exp | 7 +-
gdb/testsuite/gdb.base/longest-types.c | 2 +-
gdb/testsuite/gdb.base/longest-types.exp | 2 +-
gdb/testsuite/gdb.base/longjmp.c | 2 +-
gdb/testsuite/gdb.base/longjmp.exp | 2 +-
gdb/testsuite/gdb.base/macscp.exp | 68 +-
gdb/testsuite/gdb.base/maint.exp | 90 +-
gdb/testsuite/gdb.base/many-headers.c | 50 +
gdb/testsuite/gdb.base/many-headers.exp | 67 +
gdb/testsuite/gdb.base/max-value-size.c | 2 +-
gdb/testsuite/gdb.base/max-value-size.exp | 2 +-
gdb/testsuite/gdb.base/memattr.c | 2 +-
gdb/testsuite/gdb.base/memattr.exp | 14 +-
gdb/testsuite/gdb.base/mips_pro.exp | 2 +-
gdb/testsuite/gdb.base/miscexprs.exp | 2 +-
gdb/testsuite/gdb.base/morestack.c | 2 +-
gdb/testsuite/gdb.base/morestack.exp | 2 +-
gdb/testsuite/gdb.base/moribund-step.exp | 2 +-
gdb/testsuite/gdb.base/multi-forks.c | 2 +-
gdb/testsuite/gdb.base/multi-forks.exp | 2 +-
.../gdb.base/multi-line-starts-subshell.exp | 2 +-
gdb/testsuite/gdb.base/nested-addr.c | 2 +-
gdb/testsuite/gdb.base/nested-addr.exp | 2 +-
gdb/testsuite/gdb.base/nested-subp1.c | 2 +-
gdb/testsuite/gdb.base/nested-subp1.exp | 2 +-
gdb/testsuite/gdb.base/nested-subp2.c | 2 +-
gdb/testsuite/gdb.base/nested-subp2.exp | 2 +-
gdb/testsuite/gdb.base/nested-subp3.c | 2 +-
gdb/testsuite/gdb.base/nested-subp3.exp | 2 +-
gdb/testsuite/gdb.base/new-ui-echo.c | 2 +-
gdb/testsuite/gdb.base/new-ui-echo.exp | 2 +-
gdb/testsuite/gdb.base/new-ui-pending-input.c | 2 +-
gdb/testsuite/gdb.base/new-ui-pending-input.exp | 2 +-
gdb/testsuite/gdb.base/new-ui.c | 2 +-
gdb/testsuite/gdb.base/new-ui.exp | 19 +-
gdb/testsuite/gdb.base/nextoverexit.c | 2 +-
gdb/testsuite/gdb.base/nextoverexit.exp | 2 +-
gdb/testsuite/gdb.base/nodebug.c | 48 +
gdb/testsuite/gdb.base/nodebug.exp | 215 +-
gdb/testsuite/gdb.base/nofield.c | 2 +-
gdb/testsuite/gdb.base/nofield.exp | 2 +-
gdb/testsuite/gdb.base/noreturn-finish.c | 2 +-
gdb/testsuite/gdb.base/noreturn-finish.exp | 2 +-
gdb/testsuite/gdb.base/noreturn-return.c | 2 +-
gdb/testsuite/gdb.base/noreturn-return.exp | 2 +-
gdb/testsuite/gdb.base/normal.c | 2 +-
gdb/testsuite/gdb.base/nostdlib.c | 2 +-
gdb/testsuite/gdb.base/nostdlib.exp | 4 +-
gdb/testsuite/gdb.base/offsets.c | 2 +-
gdb/testsuite/gdb.base/offsets.exp | 2 +-
gdb/testsuite/gdb.base/opaque.exp | 2 +-
gdb/testsuite/gdb.base/osabi.exp | 26 +
gdb/testsuite/gdb.base/overlays.exp | 5 +-
gdb/testsuite/gdb.base/page.exp | 23 +-
.../gdb.base/paginate-after-ctrl-c-running.c | 2 +-
.../gdb.base/paginate-after-ctrl-c-running.exp | 2 +-
gdb/testsuite/gdb.base/paginate-bg-execution.c | 2 +-
gdb/testsuite/gdb.base/paginate-bg-execution.exp | 2 +-
.../gdb.base/paginate-execution-startup.c | 2 +-
.../gdb.base/paginate-execution-startup.exp | 2 +-
gdb/testsuite/gdb.base/paginate-inferior-exit.c | 2 +-
gdb/testsuite/gdb.base/paginate-inferior-exit.exp | 2 +-
gdb/testsuite/gdb.base/pc-fp.exp | 4 +-
gdb/testsuite/gdb.base/pending.c | 2 +-
gdb/testsuite/gdb.base/pending.exp | 2 +-
gdb/testsuite/gdb.base/pendshr.c | 2 +-
gdb/testsuite/gdb.base/permissions.exp | 2 +-
gdb/testsuite/gdb.base/pie-execl.c | 2 +-
gdb/testsuite/gdb.base/pie-execl.exp | 2 +-
gdb/testsuite/gdb.base/pie-fork.c | 34 +
gdb/testsuite/gdb.base/pie-fork.exp | 65 +
gdb/testsuite/gdb.base/pointers.exp | 2 +-
gdb/testsuite/gdb.base/pr10179.exp | 2 +-
gdb/testsuite/gdb.base/pr11022.c | 2 +-
gdb/testsuite/gdb.base/pr11022.exp | 2 +-
gdb/testsuite/gdb.base/prelink-lib.c | 2 +-
gdb/testsuite/gdb.base/prelink.c | 2 +-
gdb/testsuite/gdb.base/prelink.exp | 2 +-
gdb/testsuite/gdb.base/print-file-var-lib1.c | 2 +-
gdb/testsuite/gdb.base/print-file-var-lib2.c | 2 +-
gdb/testsuite/gdb.base/print-file-var-main.c | 8 +-
gdb/testsuite/gdb.base/print-file-var.exp | 4 +-
gdb/testsuite/gdb.base/print-symbol-loading-lib.c | 2 +-
gdb/testsuite/gdb.base/print-symbol-loading-main.c | 2 +-
gdb/testsuite/gdb.base/print-symbol-loading.exp | 4 +-
gdb/testsuite/gdb.base/printcmds.exp | 26 +-
gdb/testsuite/gdb.base/prologue-include.c | 2 +-
gdb/testsuite/gdb.base/prologue-include.exp | 2 +-
gdb/testsuite/gdb.base/prologue-include.h | 2 +-
gdb/testsuite/gdb.base/prologue.c | 2 +-
gdb/testsuite/gdb.base/prologue.exp | 2 +-
gdb/testsuite/gdb.base/psymtab.exp | 2 +-
gdb/testsuite/gdb.base/ptr-typedef.c | 2 +-
gdb/testsuite/gdb.base/ptr-typedef.exp | 2 +-
gdb/testsuite/gdb.base/ptype-offsets.cc | 201 +
gdb/testsuite/gdb.base/ptype-offsets.exp | 341 +
gdb/testsuite/gdb.base/ptype.exp | 2 +-
gdb/testsuite/gdb.base/quit-live.c | 27 +
gdb/testsuite/gdb.base/quit-live.exp | 178 +
gdb/testsuite/gdb.base/quit.exp | 22 +-
gdb/testsuite/gdb.base/radix.exp | 2 +-
gdb/testsuite/gdb.base/random-signal.c | 2 +-
gdb/testsuite/gdb.base/random-signal.exp | 2 +-
gdb/testsuite/gdb.base/randomize.c | 2 +-
gdb/testsuite/gdb.base/randomize.exp | 2 +-
gdb/testsuite/gdb.base/range-stepping.c | 2 +-
gdb/testsuite/gdb.base/range-stepping.exp | 2 +-
gdb/testsuite/gdb.base/readline-ask.c | 2 +-
gdb/testsuite/gdb.base/readline-ask.exp | 2 +-
gdb/testsuite/gdb.base/readline-ask.inputrc | 2 +-
gdb/testsuite/gdb.base/readline.exp | 2 +-
gdb/testsuite/gdb.base/readnever.c | 41 +
gdb/testsuite/gdb.base/readnever.exp | 83 +
gdb/testsuite/gdb.base/realname-expand-real.c | 2 +-
gdb/testsuite/gdb.base/realname-expand.c | 2 +-
gdb/testsuite/gdb.base/realname-expand.exp | 2 +-
gdb/testsuite/gdb.base/recpar.c | 2 +-
gdb/testsuite/gdb.base/recpar.exp | 2 +-
gdb/testsuite/gdb.base/recurse.exp | 2 +-
gdb/testsuite/gdb.base/reggroups.c | 22 +
gdb/testsuite/gdb.base/reggroups.exp | 113 +
gdb/testsuite/gdb.base/relational.exp | 2 +-
gdb/testsuite/gdb.base/relativedebug.c | 2 +-
gdb/testsuite/gdb.base/relativedebug.exp | 2 +-
gdb/testsuite/gdb.base/relocate.c | 2 +-
gdb/testsuite/gdb.base/relocate.exp | 199 +-
gdb/testsuite/gdb.base/remote.exp | 55 +-
gdb/testsuite/gdb.base/remotetimeout.exp | 2 +-
gdb/testsuite/gdb.base/reread-readsym.c | 22 +
gdb/testsuite/gdb.base/reread-readsym.exp | 61 +
gdb/testsuite/gdb.base/reread.exp | 226 +-
gdb/testsuite/gdb.base/restore.c | 2 +-
gdb/testsuite/gdb.base/restore.exp | 10 +-
gdb/testsuite/gdb.base/return-nodebug.c | 2 +-
gdb/testsuite/gdb.base/return-nodebug.exp | 2 +-
gdb/testsuite/gdb.base/return-nodebug1.c | 2 +-
gdb/testsuite/gdb.base/return.c | 2 +-
gdb/testsuite/gdb.base/return.exp | 2 +-
gdb/testsuite/gdb.base/return2.exp | 2 +-
gdb/testsuite/gdb.base/run-after-attach.c | 2 +-
gdb/testsuite/gdb.base/run-after-attach.exp | 2 +-
gdb/testsuite/gdb.base/save-bp.c | 2 +-
gdb/testsuite/gdb.base/save-bp.exp | 2 +-
gdb/testsuite/gdb.base/savedregs.c | 2 +-
gdb/testsuite/gdb.base/savedregs.exp | 7 +-
gdb/testsuite/gdb.base/scope.exp | 33 +-
gdb/testsuite/gdb.base/sect-cmd.exp | 2 +-
gdb/testsuite/gdb.base/segv.c | 2 +-
gdb/testsuite/gdb.base/sep-proc.c | 2 +-
gdb/testsuite/gdb.base/sep.c | 2 +-
gdb/testsuite/gdb.base/sep.exp | 2 +-
gdb/testsuite/gdb.base/sepdebug.c | 2 +-
gdb/testsuite/gdb.base/sepdebug.exp | 4 +-
gdb/testsuite/gdb.base/sepdebug2.c | 2 +-
gdb/testsuite/gdb.base/sepsymtab.c | 2 +-
gdb/testsuite/gdb.base/sepsymtab.exp | 2 +-
gdb/testsuite/gdb.base/server-del-break.c | 22 +
gdb/testsuite/gdb.base/server-del-break.exp | 38 +
gdb/testsuite/gdb.base/set-cwd.c | 31 +
gdb/testsuite/gdb.base/set-cwd.exp | 197 +
gdb/testsuite/gdb.base/set-inferior-tty.c | 2 +-
gdb/testsuite/gdb.base/set-inferior-tty.exp | 12 +-
gdb/testsuite/gdb.base/set-lang-auto.exp | 2 +-
gdb/testsuite/gdb.base/set-noassign.exp | 2 +-
gdb/testsuite/gdb.base/setshow.exp | 7 +-
gdb/testsuite/gdb.base/setvar.exp | 2 +-
gdb/testsuite/gdb.base/share-env-with-gdbserver.c | 43 +
.../gdb.base/share-env-with-gdbserver.exp | 255 +
gdb/testsuite/gdb.base/shell.exp | 2 +-
gdb/testsuite/gdb.base/shlib-call.exp | 28 +-
gdb/testsuite/gdb.base/shreloc.exp | 2 +-
gdb/testsuite/gdb.base/sigall.exp | 2 +-
gdb/testsuite/gdb.base/sigaltstack.c | 2 +-
gdb/testsuite/gdb.base/sigaltstack.exp | 7 +-
gdb/testsuite/gdb.base/sigbpt.c | 2 +-
gdb/testsuite/gdb.base/sigbpt.exp | 5 +-
gdb/testsuite/gdb.base/sigchld.c | 2 +-
gdb/testsuite/gdb.base/sigchld.exp | 2 +-
gdb/testsuite/gdb.base/siginfo-addr.c | 2 +-
gdb/testsuite/gdb.base/siginfo-addr.exp | 7 +-
gdb/testsuite/gdb.base/siginfo-infcall.c | 2 +-
gdb/testsuite/gdb.base/siginfo-infcall.exp | 2 +-
gdb/testsuite/gdb.base/siginfo-obj.c | 2 +-
gdb/testsuite/gdb.base/siginfo-obj.exp | 12 +-
gdb/testsuite/gdb.base/siginfo-thread.c | 2 +-
gdb/testsuite/gdb.base/siginfo-thread.exp | 7 +-
gdb/testsuite/gdb.base/siginfo.c | 2 +-
gdb/testsuite/gdb.base/siginfo.exp | 7 +-
gdb/testsuite/gdb.base/signals-state-child.c | 2 +-
gdb/testsuite/gdb.base/signals-state-child.exp | 2 +-
gdb/testsuite/gdb.base/signals.exp | 2 +-
gdb/testsuite/gdb.base/signest.c | 2 +-
gdb/testsuite/gdb.base/signest.exp | 2 +-
gdb/testsuite/gdb.base/signull.c | 2 +-
gdb/testsuite/gdb.base/signull.exp | 5 +-
gdb/testsuite/gdb.base/sigrepeat.c | 2 +-
gdb/testsuite/gdb.base/sigrepeat.exp | 7 +-
gdb/testsuite/gdb.base/sigstep.c | 2 +-
gdb/testsuite/gdb.base/sigstep.exp | 2 +-
gdb/testsuite/gdb.base/sizeof.exp | 6 +-
gdb/testsuite/gdb.base/skip-solib.exp | 2 +-
gdb/testsuite/gdb.base/skip.c | 2 +-
gdb/testsuite/gdb.base/skip.exp | 8 +-
gdb/testsuite/gdb.base/skip1.c | 2 +-
gdb/testsuite/gdb.base/so-disc-shr.c | 2 +-
gdb/testsuite/gdb.base/so-impl-ld.exp | 2 +-
gdb/testsuite/gdb.base/solib-corrupted.exp | 2 +-
gdb/testsuite/gdb.base/solib-disc.c | 2 +-
gdb/testsuite/gdb.base/solib-disc.exp | 2 +-
gdb/testsuite/gdb.base/solib-display-lib.c | 2 +-
gdb/testsuite/gdb.base/solib-display-main.c | 2 +-
gdb/testsuite/gdb.base/solib-display.exp | 18 +-
gdb/testsuite/gdb.base/solib-nodir.exp | 20 +-
gdb/testsuite/gdb.base/solib-overlap-lib.c | 2 +-
gdb/testsuite/gdb.base/solib-overlap-main.c | 2 +-
gdb/testsuite/gdb.base/solib-overlap.exp | 4 +-
gdb/testsuite/gdb.base/solib-search-lib1.c | 2 +-
gdb/testsuite/gdb.base/solib-search-lib2.c | 2 +-
gdb/testsuite/gdb.base/solib-search.c | 2 +-
gdb/testsuite/gdb.base/solib-search.exp | 2 +-
gdb/testsuite/gdb.base/solib-search.h | 2 +-
gdb/testsuite/gdb.base/solib-symbol-lib.c | 2 +-
gdb/testsuite/gdb.base/solib-symbol-main.c | 2 +-
gdb/testsuite/gdb.base/solib-symbol.exp | 2 +-
gdb/testsuite/gdb.base/solib-vanish-lib1.c | 24 +
gdb/testsuite/gdb.base/solib-vanish-lib2.c | 22 +
gdb/testsuite/gdb.base/solib-vanish-main.c | 75 +
gdb/testsuite/gdb.base/solib-vanish.exp | 107 +
gdb/testsuite/gdb.base/solib-weak.c | 2 +-
gdb/testsuite/gdb.base/solib-weak.exp | 2 +-
gdb/testsuite/gdb.base/source-dir.exp | 2 +-
gdb/testsuite/gdb.base/source-error.gdb | 2 +-
gdb/testsuite/gdb.base/source-execution.c | 2 +-
gdb/testsuite/gdb.base/source-execution.exp | 2 +-
gdb/testsuite/gdb.base/source-execution.gdb | 2 +-
gdb/testsuite/gdb.base/source-nofile.gdb | 2 +-
gdb/testsuite/gdb.base/source-test.gdb | 2 +-
gdb/testsuite/gdb.base/source.exp | 2 +-
gdb/testsuite/gdb.base/sss-bp-on-user-bp-2.c | 2 +-
gdb/testsuite/gdb.base/sss-bp-on-user-bp-2.exp | 6 +-
gdb/testsuite/gdb.base/sss-bp-on-user-bp.c | 2 +-
gdb/testsuite/gdb.base/sss-bp-on-user-bp.exp | 2 +-
gdb/testsuite/gdb.base/stack-checking.c | 2 +-
gdb/testsuite/gdb.base/stack-checking.exp | 2 +-
gdb/testsuite/gdb.base/stale-infcall.c | 2 +-
gdb/testsuite/gdb.base/stale-infcall.exp | 2 +-
gdb/testsuite/gdb.base/stap-probe.c | 2 +-
gdb/testsuite/gdb.base/stap-probe.exp | 2 +-
gdb/testsuite/gdb.base/start.c | 2 +-
gdb/testsuite/gdb.base/start.exp | 2 +-
gdb/testsuite/gdb.base/starti.c | 30 +
gdb/testsuite/gdb.base/starti.exp | 51 +
gdb/testsuite/gdb.base/startup-with-shell.c | 29 +
gdb/testsuite/gdb.base/startup-with-shell.exp | 92 +
gdb/testsuite/gdb.base/statistics.exp | 4 +-
gdb/testsuite/gdb.base/step-break.c | 2 +-
gdb/testsuite/gdb.base/step-break.exp | 2 +-
gdb/testsuite/gdb.base/step-bt.c | 2 +-
gdb/testsuite/gdb.base/step-bt.exp | 2 +-
gdb/testsuite/gdb.base/step-indirect-call-thunk.c | 42 +
.../gdb.base/step-indirect-call-thunk.exp | 73 +
gdb/testsuite/gdb.base/step-line.c | 4 +-
gdb/testsuite/gdb.base/step-line.exp | 2 +-
gdb/testsuite/gdb.base/step-line.inp | 4 +-
gdb/testsuite/gdb.base/step-over-clone.c | 2 +-
gdb/testsuite/gdb.base/step-over-exit.c | 2 +-
gdb/testsuite/gdb.base/step-over-exit.exp | 2 +-
gdb/testsuite/gdb.base/step-over-fork.c | 2 +-
gdb/testsuite/gdb.base/step-over-no-symbols.exp | 2 +-
gdb/testsuite/gdb.base/step-over-syscall.exp | 2 +-
gdb/testsuite/gdb.base/step-over-vfork.c | 2 +-
gdb/testsuite/gdb.base/step-resume-infcall.c | 2 +-
gdb/testsuite/gdb.base/step-resume-infcall.exp | 2 +-
.../gdb.base/step-sw-breakpoint-adjust-pc.c | 2 +-
.../gdb.base/step-sw-breakpoint-adjust-pc.exp | 2 +-
gdb/testsuite/gdb.base/step-symless.c | 2 +-
gdb/testsuite/gdb.base/step-symless.exp | 2 +-
gdb/testsuite/gdb.base/step-test.exp | 2 +-
gdb/testsuite/gdb.base/store.exp | 2 +-
gdb/testsuite/gdb.base/structs.c | 2 +-
gdb/testsuite/gdb.base/structs.exp | 2 +-
gdb/testsuite/gdb.base/structs2.exp | 7 +-
gdb/testsuite/gdb.base/structs3.c | 2 +-
gdb/testsuite/gdb.base/structs3.exp | 2 +-
gdb/testsuite/gdb.base/subst.exp | 2 +-
gdb/testsuite/gdb.base/sym-file-lib.c | 2 +-
gdb/testsuite/gdb.base/sym-file-loader.c | 2 +-
gdb/testsuite/gdb.base/sym-file-loader.h | 2 +-
gdb/testsuite/gdb.base/sym-file-main.c | 2 +-
gdb/testsuite/gdb.base/sym-file.exp | 6 +-
gdb/testsuite/gdb.base/symbol-alias.c | 31 +
gdb/testsuite/gdb.base/symbol-alias.exp | 37 +
gdb/testsuite/gdb.base/symbol-alias2.c | 34 +
.../gdb.base/symbol-without-target_section.c | 2 +-
.../gdb.base/symbol-without-target_section.exp | 2 +-
gdb/testsuite/gdb.base/symtab-search-order-1.c | 2 +-
.../gdb.base/symtab-search-order-shlib-1.c | 2 +-
gdb/testsuite/gdb.base/symtab-search-order.c | 2 +-
gdb/testsuite/gdb.base/symtab-search-order.exp | 2 +-
gdb/testsuite/gdb.base/term.c | 24 +-
gdb/testsuite/gdb.base/term.exp | 87 +-
gdb/testsuite/gdb.base/testenv.c | 2 +-
gdb/testsuite/gdb.base/testenv.exp | 201 +-
gdb/testsuite/gdb.base/trace-commands.exp | 2 +-
gdb/testsuite/gdb.base/twice.exp | 2 +-
gdb/testsuite/gdb.base/type-opaque-lib.c | 2 +-
gdb/testsuite/gdb.base/type-opaque-main.c | 2 +-
gdb/testsuite/gdb.base/type-opaque.exp | 2 +-
gdb/testsuite/gdb.base/ui-redirect.exp | 2 +-
gdb/testsuite/gdb.base/unload.c | 2 +-
gdb/testsuite/gdb.base/unload.exp | 2 +-
gdb/testsuite/gdb.base/unloadshr.c | 2 +-
gdb/testsuite/gdb.base/unloadshr2.c | 2 +-
gdb/testsuite/gdb.base/until-nodebug.exp | 2 +-
gdb/testsuite/gdb.base/until.exp | 2 +-
gdb/testsuite/gdb.base/unwindonsignal.c | 2 +-
gdb/testsuite/gdb.base/unwindonsignal.exp | 2 +-
gdb/testsuite/gdb.base/utf8-identifiers.c | 71 +
gdb/testsuite/gdb.base/utf8-identifiers.exp | 85 +
gdb/testsuite/gdb.base/valgrind-bt.c | 30 +
gdb/testsuite/gdb.base/valgrind-bt.exp | 65 +
gdb/testsuite/gdb.base/valgrind-db-attach.c | 30 -
gdb/testsuite/gdb.base/valgrind-db-attach.exp | 95 -
gdb/testsuite/gdb.base/valgrind-disp-step.c | 2 +-
gdb/testsuite/gdb.base/valgrind-disp-step.exp | 74 +-
gdb/testsuite/gdb.base/valgrind-infcall.c | 2 +-
gdb/testsuite/gdb.base/valgrind-infcall.exp | 74 +-
gdb/testsuite/gdb.base/value-double-free.c | 2 +-
gdb/testsuite/gdb.base/value-double-free.exp | 2 +-
gdb/testsuite/gdb.base/varargs.exp | 2 +-
gdb/testsuite/gdb.base/vdso-warning.c | 2 +-
gdb/testsuite/gdb.base/vdso-warning.exp | 2 +-
gdb/testsuite/gdb.base/vforked-prog.c | 2 +-
gdb/testsuite/gdb.base/vla-datatypes.c | 2 +-
gdb/testsuite/gdb.base/vla-datatypes.exp | 2 +-
gdb/testsuite/gdb.base/vla-optimized-out.c | 42 +
gdb/testsuite/gdb.base/vla-optimized-out.exp | 81 +
gdb/testsuite/gdb.base/vla-ptr.c | 2 +-
gdb/testsuite/gdb.base/vla-ptr.exp | 2 +-
gdb/testsuite/gdb.base/vla-sideeffect.c | 2 +-
gdb/testsuite/gdb.base/vla-sideeffect.exp | 2 +-
gdb/testsuite/gdb.base/vla-stub-define.c | 2 +-
gdb/testsuite/gdb.base/vla-stub.c | 2 +-
gdb/testsuite/gdb.base/vla-stub.exp | 2 +-
gdb/testsuite/gdb.base/volatile.exp | 2 +-
gdb/testsuite/gdb.base/watch-bitfields.c | 2 +-
gdb/testsuite/gdb.base/watch-bitfields.exp | 2 +-
gdb/testsuite/gdb.base/watch-cond-infcall.c | 2 +-
gdb/testsuite/gdb.base/watch-cond-infcall.exp | 7 +-
gdb/testsuite/gdb.base/watch-cond.c | 2 +-
gdb/testsuite/gdb.base/watch-cond.exp | 2 +-
gdb/testsuite/gdb.base/watch-non-mem.c | 2 +-
gdb/testsuite/gdb.base/watch-non-mem.exp | 2 +-
gdb/testsuite/gdb.base/watch-read.c | 2 +-
gdb/testsuite/gdb.base/watch-read.exp | 2 +-
gdb/testsuite/gdb.base/watch-vfork.c | 2 +-
gdb/testsuite/gdb.base/watch-vfork.exp | 2 +-
gdb/testsuite/gdb.base/watch_thread_num.c | 2 +-
gdb/testsuite/gdb.base/watch_thread_num.exp | 2 +-
.../gdb.base/watchpoint-cond-gone-stripped.c | 2 +-
gdb/testsuite/gdb.base/watchpoint-cond-gone.c | 2 +-
gdb/testsuite/gdb.base/watchpoint-cond-gone.exp | 2 +-
gdb/testsuite/gdb.base/watchpoint-delete.c | 2 +-
gdb/testsuite/gdb.base/watchpoint-delete.exp | 2 +-
gdb/testsuite/gdb.base/watchpoint-hw-attach.c | 43 +
gdb/testsuite/gdb.base/watchpoint-hw-attach.exp | 71 +
gdb/testsuite/gdb.base/watchpoint-hw-hit-once.c | 2 +-
gdb/testsuite/gdb.base/watchpoint-hw-hit-once.exp | 2 +-
gdb/testsuite/gdb.base/watchpoint-hw.c | 2 +-
gdb/testsuite/gdb.base/watchpoint-hw.exp | 2 +-
gdb/testsuite/gdb.base/watchpoint-reuse-slot.c | 2 +-
gdb/testsuite/gdb.base/watchpoint-reuse-slot.exp | 178 +-
gdb/testsuite/gdb.base/watchpoint-solib-shr.c | 2 +-
gdb/testsuite/gdb.base/watchpoint-solib.c | 2 +-
gdb/testsuite/gdb.base/watchpoint-solib.exp | 2 +-
.../gdb.base/watchpoint-stops-at-right-insn.c | 2 +-
.../gdb.base/watchpoint-stops-at-right-insn.exp | 2 +-
gdb/testsuite/gdb.base/watchpoint-unaligned.c | 96 +
gdb/testsuite/gdb.base/watchpoint-unaligned.exp | 188 +
gdb/testsuite/gdb.base/watchpoint.exp | 54 +-
gdb/testsuite/gdb.base/watchpoints.c | 2 +-
gdb/testsuite/gdb.base/watchpoints.exp | 2 +-
gdb/testsuite/gdb.base/wchar.c | 2 +-
gdb/testsuite/gdb.base/wchar.exp | 5 +-
gdb/testsuite/gdb.base/weaklib1.c | 2 +-
gdb/testsuite/gdb.base/weaklib2.c | 2 +-
gdb/testsuite/gdb.base/whatis-exp.exp | 2 +-
gdb/testsuite/gdb.base/whatis-ptype-typedefs.c | 153 +
gdb/testsuite/gdb.base/whatis-ptype-typedefs.exp | 308 +
gdb/testsuite/gdb.base/whatis.c | 2 +-
gdb/testsuite/gdb.base/whatis.exp | 27 +-
gdb/testsuite/gdb.base/write_mem.c | 20 +
gdb/testsuite/gdb.base/write_mem.exp | 47 +
gdb/testsuite/gdb.base/wrong_frame_bt_full-main.c | 2 +-
.../gdb.base/wrong_frame_bt_full-opaque.c | 2 +-
gdb/testsuite/gdb.base/wrong_frame_bt_full.exp | 2 +-
gdb/testsuite/gdb.btrace/buffer-size.exp | 17 +-
gdb/testsuite/gdb.btrace/cpu.exp | 76 +
gdb/testsuite/gdb.btrace/data.c | 2 +-
gdb/testsuite/gdb.btrace/data.exp | 2 +-
gdb/testsuite/gdb.btrace/delta.exp | 2 +-
gdb/testsuite/gdb.btrace/dlopen-dso.c | 2 +-
gdb/testsuite/gdb.btrace/dlopen.c | 2 +-
gdb/testsuite/gdb.btrace/dlopen.exp | 2 +-
gdb/testsuite/gdb.btrace/enable-running.c | 2 +-
gdb/testsuite/gdb.btrace/enable-running.exp | 2 +-
gdb/testsuite/gdb.btrace/enable.c | 2 +-
gdb/testsuite/gdb.btrace/enable.exp | 2 +-
gdb/testsuite/gdb.btrace/exception.cc | 2 +-
gdb/testsuite/gdb.btrace/exception.exp | 2 +-
gdb/testsuite/gdb.btrace/function_call_history.c | 2 +-
gdb/testsuite/gdb.btrace/function_call_history.exp | 2 +-
gdb/testsuite/gdb.btrace/gcore.exp | 2 +-
gdb/testsuite/gdb.btrace/i686-record_goto.S | 2 +-
gdb/testsuite/gdb.btrace/i686-tailcall-only.S | 2 +-
gdb/testsuite/gdb.btrace/i686-tailcall.S | 2 +-
gdb/testsuite/gdb.btrace/instruction_history.S | 2 +-
gdb/testsuite/gdb.btrace/instruction_history.c | 2 +-
gdb/testsuite/gdb.btrace/instruction_history.exp | 2 +-
gdb/testsuite/gdb.btrace/multi-thread-step.c | 2 +-
gdb/testsuite/gdb.btrace/multi-thread-step.exp | 2 +-
gdb/testsuite/gdb.btrace/nohist.exp | 2 +-
gdb/testsuite/gdb.btrace/non-stop.c | 2 +-
gdb/testsuite/gdb.btrace/non-stop.exp | 2 +-
gdb/testsuite/gdb.btrace/reconnect.c | 2 +-
gdb/testsuite/gdb.btrace/reconnect.exp | 2 +-
gdb/testsuite/gdb.btrace/record_goto-step.exp | 2 +-
gdb/testsuite/gdb.btrace/record_goto.c | 2 +-
gdb/testsuite/gdb.btrace/record_goto.exp | 2 +-
gdb/testsuite/gdb.btrace/rn-dl-bind.c | 2 +-
gdb/testsuite/gdb.btrace/rn-dl-bind.exp | 2 +-
gdb/testsuite/gdb.btrace/segv.c | 2 +-
gdb/testsuite/gdb.btrace/segv.exp | 2 +-
gdb/testsuite/gdb.btrace/step.exp | 2 +-
gdb/testsuite/gdb.btrace/stepi.exp | 2 +-
gdb/testsuite/gdb.btrace/tailcall-only.c | 2 +-
gdb/testsuite/gdb.btrace/tailcall-only.exp | 2 +-
gdb/testsuite/gdb.btrace/tailcall.c | 2 +-
gdb/testsuite/gdb.btrace/tailcall.exp | 2 +-
gdb/testsuite/gdb.btrace/tsx.c | 2 +-
gdb/testsuite/gdb.btrace/tsx.exp | 2 +-
gdb/testsuite/gdb.btrace/unknown_functions.c | 2 +-
gdb/testsuite/gdb.btrace/unknown_functions.exp | 2 +-
gdb/testsuite/gdb.btrace/vdso.c | 2 +-
gdb/testsuite/gdb.btrace/vdso.exp | 2 +-
gdb/testsuite/gdb.btrace/x86-tsx.S | 2 +-
gdb/testsuite/gdb.btrace/x86_64-record_goto.S | 2 +-
gdb/testsuite/gdb.btrace/x86_64-tailcall-only.S | 2 +-
gdb/testsuite/gdb.btrace/x86_64-tailcall.S | 2 +-
gdb/testsuite/gdb.cell/arch.exp | 6 +-
gdb/testsuite/gdb.cell/break-spu.c | 2 +-
gdb/testsuite/gdb.cell/break.c | 2 +-
gdb/testsuite/gdb.cell/break.exp | 6 +-
gdb/testsuite/gdb.cell/bt-spu.c | 2 +-
gdb/testsuite/gdb.cell/bt.c | 2 +-
gdb/testsuite/gdb.cell/bt.exp | 10 +-
gdb/testsuite/gdb.cell/bt2-spu.c | 2 +-
gdb/testsuite/gdb.cell/core.exp | 6 +-
gdb/testsuite/gdb.cell/coremaker-spu.c | 2 +-
gdb/testsuite/gdb.cell/coremaker.c | 2 +-
gdb/testsuite/gdb.cell/data-spu.c | 2 +-
gdb/testsuite/gdb.cell/data.c | 2 +-
gdb/testsuite/gdb.cell/data.exp | 6 +-
gdb/testsuite/gdb.cell/dwarfaddr.S | 2 +-
gdb/testsuite/gdb.cell/dwarfaddr.exp | 4 +-
gdb/testsuite/gdb.cell/ea-cache-spu.c | 2 +-
gdb/testsuite/gdb.cell/ea-cache.c | 2 +-
gdb/testsuite/gdb.cell/ea-cache.exp | 6 +-
gdb/testsuite/gdb.cell/ea-standalone.c | 2 +-
gdb/testsuite/gdb.cell/ea-standalone.exp | 4 +-
gdb/testsuite/gdb.cell/ea-test.c | 2 +-
gdb/testsuite/gdb.cell/ea-test.exp | 4 +-
gdb/testsuite/gdb.cell/f-regs.exp | 6 +-
gdb/testsuite/gdb.cell/fork-spu.c | 2 +-
gdb/testsuite/gdb.cell/fork.c | 2 +-
gdb/testsuite/gdb.cell/fork.exp | 6 +-
gdb/testsuite/gdb.cell/gcore.exp | 9 +-
gdb/testsuite/gdb.cell/mem-access-spu.c | 2 +-
gdb/testsuite/gdb.cell/mem-access.c | 2 +-
gdb/testsuite/gdb.cell/mem-access.exp | 6 +-
gdb/testsuite/gdb.cell/ptype.exp | 6 +-
gdb/testsuite/gdb.cell/registers.exp | 6 +-
gdb/testsuite/gdb.cell/size-spu.c | 2 +-
gdb/testsuite/gdb.cell/size.c | 2 +-
gdb/testsuite/gdb.cell/sizeof.exp | 6 +-
gdb/testsuite/gdb.cell/solib-symbol.exp | 6 +-
gdb/testsuite/gdb.cell/solib.exp | 6 +-
gdb/testsuite/gdb.compile/compile-constvar.S | 2 +-
gdb/testsuite/gdb.compile/compile-constvar.c | 2 +-
.../gdb.compile/compile-cplus-anonymous.cc | 76 +
.../gdb.compile/compile-cplus-anonymous.exp | 64 +
.../gdb.compile/compile-cplus-array-decay.cc | 31 +
.../gdb.compile/compile-cplus-array-decay.exp | 50 +
gdb/testsuite/gdb.compile/compile-cplus-inherit.cc | 58 +
.../gdb.compile/compile-cplus-inherit.exp | 53 +
gdb/testsuite/gdb.compile/compile-cplus-member.cc | 83 +
gdb/testsuite/gdb.compile/compile-cplus-member.exp | 76 +
gdb/testsuite/gdb.compile/compile-cplus-method.cc | 91 +
gdb/testsuite/gdb.compile/compile-cplus-method.exp | 67 +
gdb/testsuite/gdb.compile/compile-cplus-mod.c | 28 +
.../gdb.compile/compile-cplus-namespace.cc | 52 +
.../gdb.compile/compile-cplus-namespace.exp | 51 +
gdb/testsuite/gdb.compile/compile-cplus-nested.cc | 58 +
gdb/testsuite/gdb.compile/compile-cplus-nested.exp | 53 +
gdb/testsuite/gdb.compile/compile-cplus-print.c | 32 +
gdb/testsuite/gdb.compile/compile-cplus-print.exp | 79 +
gdb/testsuite/gdb.compile/compile-cplus-virtual.cc | 54 +
.../gdb.compile/compile-cplus-virtual.exp | 71 +
gdb/testsuite/gdb.compile/compile-cplus.c | 241 +
gdb/testsuite/gdb.compile/compile-cplus.exp | 347 +
gdb/testsuite/gdb.compile/compile-ifunc.c | 2 +-
gdb/testsuite/gdb.compile/compile-ifunc.exp | 18 +-
gdb/testsuite/gdb.compile/compile-mod.c | 2 +-
gdb/testsuite/gdb.compile/compile-nodebug.c | 2 +-
gdb/testsuite/gdb.compile/compile-ops.c | 2 +-
gdb/testsuite/gdb.compile/compile-ops.exp | 2 +-
gdb/testsuite/gdb.compile/compile-print.c | 2 +-
gdb/testsuite/gdb.compile/compile-print.exp | 2 +-
gdb/testsuite/gdb.compile/compile-setjmp-mod.c | 2 +-
gdb/testsuite/gdb.compile/compile-setjmp.c | 2 +-
gdb/testsuite/gdb.compile/compile-setjmp.exp | 2 +-
gdb/testsuite/gdb.compile/compile-shlib.c | 2 +-
gdb/testsuite/gdb.compile/compile-tls.c | 2 +-
gdb/testsuite/gdb.compile/compile-tls.exp | 2 +-
gdb/testsuite/gdb.compile/compile.c | 2 +-
gdb/testsuite/gdb.compile/compile.exp | 23 +-
gdb/testsuite/gdb.cp/abstract-origin.cc | 2 +-
gdb/testsuite/gdb.cp/abstract-origin.exp | 2 +-
gdb/testsuite/gdb.cp/align.exp | 174 +
gdb/testsuite/gdb.cp/ambiguous.exp | 2 +-
gdb/testsuite/gdb.cp/annota2.exp | 10 +-
gdb/testsuite/gdb.cp/annota3.exp | 10 +-
gdb/testsuite/gdb.cp/anon-ns.cc | 2 +-
gdb/testsuite/gdb.cp/anon-ns.exp | 2 +-
gdb/testsuite/gdb.cp/anon-ns2.cc | 2 +-
gdb/testsuite/gdb.cp/anon-struct.cc | 2 +-
gdb/testsuite/gdb.cp/anon-struct.exp | 2 +-
gdb/testsuite/gdb.cp/anon-union.exp | 2 +-
gdb/testsuite/gdb.cp/arg-reference.cc | 2 +-
gdb/testsuite/gdb.cp/arg-reference.exp | 2 +-
gdb/testsuite/gdb.cp/baseenum.cc | 2 +-
gdb/testsuite/gdb.cp/baseenum.exp | 2 +-
gdb/testsuite/gdb.cp/bool.cc | 2 +-
gdb/testsuite/gdb.cp/bool.exp | 2 +-
gdb/testsuite/gdb.cp/breakpoint.cc | 4 +-
gdb/testsuite/gdb.cp/breakpoint.exp | 2 +-
gdb/testsuite/gdb.cp/bs15503.cc | 2 +-
gdb/testsuite/gdb.cp/bs15503.exp | 2 +-
gdb/testsuite/gdb.cp/call-c-1.c | 2 +-
gdb/testsuite/gdb.cp/call-c.cc | 2 +-
gdb/testsuite/gdb.cp/call-c.exp | 2 +-
gdb/testsuite/gdb.cp/casts.exp | 2 +-
gdb/testsuite/gdb.cp/casts03.cc | 2 +-
gdb/testsuite/gdb.cp/chained-calls.cc | 2 +-
gdb/testsuite/gdb.cp/chained-calls.exp | 2 +-
gdb/testsuite/gdb.cp/class2.cc | 2 +-
gdb/testsuite/gdb.cp/class2.exp | 2 +-
gdb/testsuite/gdb.cp/classes.cc | 98 +-
gdb/testsuite/gdb.cp/classes.exp | 65 +-
gdb/testsuite/gdb.cp/cmpd-minsyms.cc | 2 +-
gdb/testsuite/gdb.cp/cmpd-minsyms.exp | 2 +-
gdb/testsuite/gdb.cp/converts.exp | 2 +-
gdb/testsuite/gdb.cp/cp-relocate.cc | 2 +-
gdb/testsuite/gdb.cp/cp-relocate.exp | 8 +-
gdb/testsuite/gdb.cp/cpcompletion.exp | 54 +-
gdb/testsuite/gdb.cp/cpexprs.cc | 4 +-
gdb/testsuite/gdb.cp/cpexprs.exp | 18 +-
gdb/testsuite/gdb.cp/cplabel.cc | 2 +-
gdb/testsuite/gdb.cp/cplabel.exp | 2 +-
gdb/testsuite/gdb.cp/cplusfuncs.exp | 4 +-
gdb/testsuite/gdb.cp/cpsizeof.cc | 2 +-
gdb/testsuite/gdb.cp/cpsizeof.exp | 2 +-
gdb/testsuite/gdb.cp/ctti.exp | 2 +-
gdb/testsuite/gdb.cp/cttiadd.cc | 2 +-
gdb/testsuite/gdb.cp/cttiadd1.cc | 2 +-
gdb/testsuite/gdb.cp/cttiadd2.cc | 2 +-
gdb/testsuite/gdb.cp/cttiadd3.cc | 2 +-
gdb/testsuite/gdb.cp/debug-expr.exp | 2 +-
gdb/testsuite/gdb.cp/demangle.exp | 2 +-
gdb/testsuite/gdb.cp/derivation.cc | 2 +-
gdb/testsuite/gdb.cp/derivation.exp | 2 +-
gdb/testsuite/gdb.cp/derivation2.cc | 2 +-
gdb/testsuite/gdb.cp/destrprint.exp | 2 +-
gdb/testsuite/gdb.cp/dispcxx.cc | 2 +-
gdb/testsuite/gdb.cp/dispcxx.exp | 2 +-
gdb/testsuite/gdb.cp/ena-dis-br-range.cc | 66 +
gdb/testsuite/gdb.cp/ena-dis-br-range.exp | 250 +
gdb/testsuite/gdb.cp/enum-class.cc | 2 +-
gdb/testsuite/gdb.cp/enum-class.exp | 2 +-
gdb/testsuite/gdb.cp/exception.cc | 2 +-
gdb/testsuite/gdb.cp/exception.exp | 2 +-
gdb/testsuite/gdb.cp/exceptprint.cc | 2 +-
gdb/testsuite/gdb.cp/exceptprint.exp | 2 +-
gdb/testsuite/gdb.cp/expand-psymtabs-cxx.cc | 2 +-
gdb/testsuite/gdb.cp/expand-psymtabs-cxx.exp | 5 +-
gdb/testsuite/gdb.cp/expand-sals.cc | 2 +-
gdb/testsuite/gdb.cp/expand-sals.exp | 2 +-
gdb/testsuite/gdb.cp/extern-c.cc | 2 +-
gdb/testsuite/gdb.cp/extern-c.exp | 2 +-
gdb/testsuite/gdb.cp/filename.cc | 24 +-
gdb/testsuite/gdb.cp/filename.exp | 22 +-
gdb/testsuite/gdb.cp/formatted-ref.cc | 2 +-
gdb/testsuite/gdb.cp/formatted-ref.exp | 2 +-
gdb/testsuite/gdb.cp/fpointer.exp | 2 +-
gdb/testsuite/gdb.cp/gdb1355.exp | 2 +-
gdb/testsuite/gdb.cp/gdb2384-base.cc | 2 +-
gdb/testsuite/gdb.cp/gdb2384-base.h | 2 +-
gdb/testsuite/gdb.cp/gdb2384.cc | 2 +-
gdb/testsuite/gdb.cp/gdb2384.exp | 2 +-
gdb/testsuite/gdb.cp/gdb2495.cc | 2 +-
gdb/testsuite/gdb.cp/gdb2495.exp | 2 +-
gdb/testsuite/gdb.cp/hang.exp | 2 +-
gdb/testsuite/gdb.cp/impl-this.cc | 2 +-
gdb/testsuite/gdb.cp/impl-this.exp | 2 +-
gdb/testsuite/gdb.cp/includefile | 2 +-
gdb/testsuite/gdb.cp/infcall-dlopen-lib.cc | 2 +-
gdb/testsuite/gdb.cp/infcall-dlopen.cc | 2 +-
gdb/testsuite/gdb.cp/infcall-dlopen.exp | 2 +-
gdb/testsuite/gdb.cp/inherit.exp | 2 +-
gdb/testsuite/gdb.cp/iostream.cc | 2 +-
gdb/testsuite/gdb.cp/iostream.exp | 2 +-
gdb/testsuite/gdb.cp/koenig.exp | 5 +-
gdb/testsuite/gdb.cp/local-static.c | 170 +
gdb/testsuite/gdb.cp/local-static.cc | 1 +
gdb/testsuite/gdb.cp/local-static.exp | 241 +
gdb/testsuite/gdb.cp/local.exp | 2 +-
gdb/testsuite/gdb.cp/m-data.exp | 2 +-
gdb/testsuite/gdb.cp/m-static.exp | 9 +-
gdb/testsuite/gdb.cp/maint.exp | 4 +-
gdb/testsuite/gdb.cp/mb-ctor.exp | 2 +-
gdb/testsuite/gdb.cp/mb-inline.exp | 2 +-
gdb/testsuite/gdb.cp/mb-inline.h | 2 +-
gdb/testsuite/gdb.cp/mb-inline1.cc | 2 +-
gdb/testsuite/gdb.cp/mb-inline2.cc | 2 +-
gdb/testsuite/gdb.cp/mb-templates.exp | 2 +-
gdb/testsuite/gdb.cp/member-name.cc | 2 +-
gdb/testsuite/gdb.cp/member-name.exp | 2 +-
gdb/testsuite/gdb.cp/member-ptr.cc | 2 +-
gdb/testsuite/gdb.cp/member-ptr.exp | 2 +-
gdb/testsuite/gdb.cp/meth-typedefs.cc | 2 +-
gdb/testsuite/gdb.cp/meth-typedefs.exp | 41 +-
gdb/testsuite/gdb.cp/method.exp | 2 +-
gdb/testsuite/gdb.cp/method2.exp | 2 +-
gdb/testsuite/gdb.cp/minsym-fallback-main.cc | 2 +-
gdb/testsuite/gdb.cp/minsym-fallback.cc | 2 +-
gdb/testsuite/gdb.cp/minsym-fallback.exp | 2 +-
gdb/testsuite/gdb.cp/minsym-fallback.h | 2 +-
gdb/testsuite/gdb.cp/misc.cc | 2 +-
gdb/testsuite/gdb.cp/misc.exp | 2 +-
gdb/testsuite/gdb.cp/namelessclass.S | 2 +-
gdb/testsuite/gdb.cp/namelessclass.cc | 2 +-
gdb/testsuite/gdb.cp/namelessclass.exp | 2 +-
gdb/testsuite/gdb.cp/namespace-enum.exp | 2 +-
gdb/testsuite/gdb.cp/namespace-nested-import.exp | 2 +-
gdb/testsuite/gdb.cp/namespace.exp | 8 +-
gdb/testsuite/gdb.cp/namespace1.cc | 2 +-
gdb/testsuite/gdb.cp/nested-types.cc | 628 +
gdb/testsuite/gdb.cp/nested-types.exp | 322 +
gdb/testsuite/gdb.cp/nextoverthrow.cc | 2 +-
gdb/testsuite/gdb.cp/nextoverthrow.exp | 2 +-
gdb/testsuite/gdb.cp/no-dmgl-verbose.cc | 2 +-
gdb/testsuite/gdb.cp/no-dmgl-verbose.exp | 2 +-
gdb/testsuite/gdb.cp/non-trivial-retval.cc | 2 +-
gdb/testsuite/gdb.cp/non-trivial-retval.exp | 2 +-
gdb/testsuite/gdb.cp/noparam.cc | 2 +-
gdb/testsuite/gdb.cp/noparam.exp | 2 +-
gdb/testsuite/gdb.cp/nsalias.cc | 2 +-
gdb/testsuite/gdb.cp/nsalias.exp | 2 +-
gdb/testsuite/gdb.cp/nsdecl.exp | 2 +-
gdb/testsuite/gdb.cp/nsimport.exp | 2 +-
gdb/testsuite/gdb.cp/nsnested.exp | 2 +-
gdb/testsuite/gdb.cp/nsnoimports.exp | 2 +-
gdb/testsuite/gdb.cp/nsrecurs.exp | 2 +-
gdb/testsuite/gdb.cp/nsstress.exp | 2 +-
gdb/testsuite/gdb.cp/nsusing.exp | 2 +-
gdb/testsuite/gdb.cp/operator.exp | 2 +-
gdb/testsuite/gdb.cp/oranking.cc | 39 +
gdb/testsuite/gdb.cp/oranking.exp | 11 +-
gdb/testsuite/gdb.cp/overload-const.cc | 2 +-
gdb/testsuite/gdb.cp/overload-const.exp | 2 +-
gdb/testsuite/gdb.cp/overload.exp | 36 +-
gdb/testsuite/gdb.cp/ovldbreak.exp | 12 +-
gdb/testsuite/gdb.cp/ovsrch.exp | 2 +-
gdb/testsuite/gdb.cp/ovsrch.h | 2 +-
gdb/testsuite/gdb.cp/ovsrch1.cc | 2 +-
gdb/testsuite/gdb.cp/ovsrch2.cc | 2 +-
gdb/testsuite/gdb.cp/ovsrch3.cc | 2 +-
gdb/testsuite/gdb.cp/ovsrch4.cc | 2 +-
gdb/testsuite/gdb.cp/paren-type.cc | 2 +-
gdb/testsuite/gdb.cp/paren-type.exp | 2 +-
gdb/testsuite/gdb.cp/parse-lang.cc | 2 +-
gdb/testsuite/gdb.cp/parse-lang.exp | 2 +-
gdb/testsuite/gdb.cp/pass-by-ref.cc | 2 +-
gdb/testsuite/gdb.cp/pass-by-ref.exp | 2 +-
gdb/testsuite/gdb.cp/pr-1023.exp | 2 +-
gdb/testsuite/gdb.cp/pr-1210.exp | 2 +-
gdb/testsuite/gdb.cp/pr-574.cc | 2 +-
gdb/testsuite/gdb.cp/pr-574.exp | 2 +-
gdb/testsuite/gdb.cp/pr10687.exp | 2 +-
gdb/testsuite/gdb.cp/pr10728.exp | 2 +-
gdb/testsuite/gdb.cp/pr12028.exp | 2 +-
gdb/testsuite/gdb.cp/pr17132.cc | 2 +-
gdb/testsuite/gdb.cp/pr17132.exp | 2 +-
gdb/testsuite/gdb.cp/pr17494.cc | 2 +-
gdb/testsuite/gdb.cp/pr17494.exp | 2 +-
gdb/testsuite/gdb.cp/pr9067.exp | 2 +-
gdb/testsuite/gdb.cp/pr9167.exp | 2 +-
gdb/testsuite/gdb.cp/pr9594.cc | 13 +
gdb/testsuite/gdb.cp/pr9631.cc | 2 +-
gdb/testsuite/gdb.cp/pr9631.exp | 2 +-
gdb/testsuite/gdb.cp/printmethod.cc | 2 +-
gdb/testsuite/gdb.cp/printmethod.exp | 2 +-
gdb/testsuite/gdb.cp/psmang.exp | 2 +-
gdb/testsuite/gdb.cp/psmang1.cc | 2 +-
gdb/testsuite/gdb.cp/psmang2.cc | 2 +-
gdb/testsuite/gdb.cp/psymtab-parameter.cc | 3 +-
gdb/testsuite/gdb.cp/psymtab-parameter.exp | 2 +-
gdb/testsuite/gdb.cp/ptype-cv-cp.cc | 2 +-
gdb/testsuite/gdb.cp/ptype-cv-cp.exp | 2 +-
gdb/testsuite/gdb.cp/ptype-flags.cc | 2 +-
gdb/testsuite/gdb.cp/ptype-flags.exp | 2 +-
gdb/testsuite/gdb.cp/punctuator.exp | 2 +-
gdb/testsuite/gdb.cp/re-set-overloaded.cc | 2 +-
gdb/testsuite/gdb.cp/re-set-overloaded.exp | 2 +-
gdb/testsuite/gdb.cp/readnow-language.cc | 2 +-
gdb/testsuite/gdb.cp/readnow-language.exp | 2 +-
gdb/testsuite/gdb.cp/ref-params.cc | 2 +-
gdb/testsuite/gdb.cp/ref-params.exp | 2 +-
gdb/testsuite/gdb.cp/ref-types.cc | 2 +-
gdb/testsuite/gdb.cp/ref-types.exp | 2 +-
gdb/testsuite/gdb.cp/rtti.exp | 2 +-
gdb/testsuite/gdb.cp/rtti.h | 2 +-
gdb/testsuite/gdb.cp/rtti1.cc | 2 +-
gdb/testsuite/gdb.cp/rtti2.cc | 2 +-
gdb/testsuite/gdb.cp/rvalue-ref-casts.cc | 2 +-
gdb/testsuite/gdb.cp/rvalue-ref-casts.exp | 2 +-
gdb/testsuite/gdb.cp/rvalue-ref-overload.cc | 2 +-
gdb/testsuite/gdb.cp/rvalue-ref-overload.exp | 3 +-
gdb/testsuite/gdb.cp/rvalue-ref-params.cc | 2 +-
gdb/testsuite/gdb.cp/rvalue-ref-params.exp | 3 +-
gdb/testsuite/gdb.cp/rvalue-ref-sizeof.cc | 2 +-
gdb/testsuite/gdb.cp/rvalue-ref-sizeof.exp | 2 +-
gdb/testsuite/gdb.cp/rvalue-ref-types.cc | 2 +-
gdb/testsuite/gdb.cp/rvalue-ref-types.exp | 2 +-
gdb/testsuite/gdb.cp/save-bp-qualified.cc | 40 +
gdb/testsuite/gdb.cp/save-bp-qualified.exp | 74 +
gdb/testsuite/gdb.cp/scope-err.cc | 2 +-
gdb/testsuite/gdb.cp/scope-err.exp | 2 +-
gdb/testsuite/gdb.cp/shadow.cc | 1 +
gdb/testsuite/gdb.cp/shadow.exp | 2 +-
gdb/testsuite/gdb.cp/smartp.cc | 2 +-
gdb/testsuite/gdb.cp/smartp.exp | 2 +-
gdb/testsuite/gdb.cp/static-method.cc | 2 +-
gdb/testsuite/gdb.cp/static-method.exp | 2 +-
gdb/testsuite/gdb.cp/static-print-quit.cc | 2 +-
gdb/testsuite/gdb.cp/static-print-quit.exp | 12 +-
gdb/testsuite/gdb.cp/static-typedef-print.cc | 34 +
gdb/testsuite/gdb.cp/static-typedef-print.exp | 37 +
gdb/testsuite/gdb.cp/subtypes-2.cc | 30 +
gdb/testsuite/gdb.cp/subtypes.cc | 42 +
gdb/testsuite/gdb.cp/subtypes.exp | 52 +
gdb/testsuite/gdb.cp/subtypes.h | 50 +
gdb/testsuite/gdb.cp/temargs.cc | 2 +-
gdb/testsuite/gdb.cp/temargs.exp | 10 +-
gdb/testsuite/gdb.cp/templates.exp | 2 +-
gdb/testsuite/gdb.cp/try_catch.cc | 2 +-
gdb/testsuite/gdb.cp/try_catch.exp | 2 +-
gdb/testsuite/gdb.cp/typedef-base.cc | 30 +
gdb/testsuite/gdb.cp/typedef-base.exp | 39 +
gdb/testsuite/gdb.cp/typedef-operator.cc | 2 +-
gdb/testsuite/gdb.cp/typedef-operator.exp | 2 +-
gdb/testsuite/gdb.cp/typeid.cc | 2 +-
gdb/testsuite/gdb.cp/typeid.exp | 4 +-
gdb/testsuite/gdb.cp/userdef.cc | 2 +-
gdb/testsuite/gdb.cp/userdef.exp | 2 +-
gdb/testsuite/gdb.cp/using-crash.cc | 2 +-
gdb/testsuite/gdb.cp/using-crash.exp | 2 +-
gdb/testsuite/gdb.cp/var-tag-2.cc | 2 +-
gdb/testsuite/gdb.cp/var-tag-3.cc | 2 +-
gdb/testsuite/gdb.cp/var-tag-4.cc | 2 +-
gdb/testsuite/gdb.cp/var-tag.cc | 2 +-
gdb/testsuite/gdb.cp/var-tag.exp | 2 +-
gdb/testsuite/gdb.cp/virtbase.exp | 2 +-
gdb/testsuite/gdb.cp/virtbase2.cc | 49 +
gdb/testsuite/gdb.cp/virtbase2.exp | 111 +
gdb/testsuite/gdb.cp/virtfunc.cc | 2 +-
gdb/testsuite/gdb.cp/virtfunc.exp | 2 +-
gdb/testsuite/gdb.cp/virtfunc2.cc | 2 +-
gdb/testsuite/gdb.cp/virtfunc2.exp | 2 +-
gdb/testsuite/gdb.cp/vla-cxx.cc | 2 +-
gdb/testsuite/gdb.cp/vla-cxx.exp | 2 +-
gdb/testsuite/gdb.cp/watch-cp.cc | 28 +
gdb/testsuite/gdb.cp/watch-cp.exp | 35 +
gdb/testsuite/gdb.cp/wide_char_types.c | 30 +
gdb/testsuite/gdb.cp/wide_char_types.exp | 181 +
gdb/testsuite/gdb.disasm/am33.exp | 2 +-
gdb/testsuite/gdb.disasm/disassembler-options.exp | 2 +-
gdb/testsuite/gdb.disasm/h8300s.exp | 2 +-
gdb/testsuite/gdb.disasm/hppa.exp | 2 +-
gdb/testsuite/gdb.disasm/mn10300.exp | 2 +-
gdb/testsuite/gdb.disasm/sh3.exp | 2 +-
gdb/testsuite/gdb.disasm/t01_mov.exp | 2 +-
gdb/testsuite/gdb.disasm/t02_mova.exp | 2 +-
gdb/testsuite/gdb.disasm/t03_add.exp | 2 +-
gdb/testsuite/gdb.disasm/t04_sub.exp | 2 +-
gdb/testsuite/gdb.disasm/t05_cmp.exp | 2 +-
gdb/testsuite/gdb.disasm/t06_ari2.exp | 2 +-
gdb/testsuite/gdb.disasm/t07_ari3.exp | 2 +-
gdb/testsuite/gdb.disasm/t08_or.exp | 2 +-
gdb/testsuite/gdb.disasm/t09_xor.exp | 2 +-
gdb/testsuite/gdb.disasm/t10_and.exp | 2 +-
gdb/testsuite/gdb.disasm/t11_logs.exp | 2 +-
gdb/testsuite/gdb.disasm/t12_bit.exp | 2 +-
gdb/testsuite/gdb.disasm/t13_otr.exp | 2 +-
gdb/testsuite/gdb.dlang/circular.c | 2 +-
gdb/testsuite/gdb.dlang/circular.exp | 2 +-
gdb/testsuite/gdb.dlang/debug-expr.exp | 2 +-
gdb/testsuite/gdb.dlang/demangle.exp | 4 +-
gdb/testsuite/gdb.dlang/expression.exp | 2 +-
gdb/testsuite/gdb.dlang/primitive-types.exp | 2 +-
gdb/testsuite/gdb.dlang/properties.exp | 2 +-
gdb/testsuite/gdb.dlang/watch-loc.c | 22 +-
gdb/testsuite/gdb.dlang/watch-loc.exp | 2 +-
gdb/testsuite/gdb.dwarf2/ada-valprint-error.c | 23 +
gdb/testsuite/gdb.dwarf2/ada-valprint-error.exp | 115 +
gdb/testsuite/gdb.dwarf2/arr-stride.c | 2 +-
gdb/testsuite/gdb.dwarf2/arr-stride.exp | 2 +-
gdb/testsuite/gdb.dwarf2/arr-subrange.c | 2 +-
gdb/testsuite/gdb.dwarf2/arr-subrange.exp | 2 +-
gdb/testsuite/gdb.dwarf2/atomic-type.exp | 2 +-
gdb/testsuite/gdb.dwarf2/atomic.c | 2 +-
gdb/testsuite/gdb.dwarf2/bad-regnum.c | 2 +-
gdb/testsuite/gdb.dwarf2/bad-regnum.exp | 2 +-
.../gdb.dwarf2/bitfield-parent-optimized-out.exp | 2 +-
gdb/testsuite/gdb.dwarf2/callframecfa.S | 2 +-
gdb/testsuite/gdb.dwarf2/callframecfa.exp | 2 +-
gdb/testsuite/gdb.dwarf2/clztest.S | 2 +-
gdb/testsuite/gdb.dwarf2/clztest.exp | 2 +-
gdb/testsuite/gdb.dwarf2/comp-unit-lang.c | 2 +-
gdb/testsuite/gdb.dwarf2/comp-unit-lang.exp | 2 +-
gdb/testsuite/gdb.dwarf2/corrupt.c | 2 +-
gdb/testsuite/gdb.dwarf2/corrupt.exp | 2 +-
gdb/testsuite/gdb.dwarf2/count.exp | 2 +-
gdb/testsuite/gdb.dwarf2/data-loc.c | 2 +-
gdb/testsuite/gdb.dwarf2/data-loc.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dup-psym.S | 2 +-
gdb/testsuite/gdb.dwarf2/dup-psym.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-abs-hi-pc-hello-dbg.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-abs-hi-pc-hello.c | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-abs-hi-pc-world-dbg.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-abs-hi-pc-world.c | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-abs-hi-pc.c | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-abs-hi-pc.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-ada-ffffffff.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-ada-ffffffff.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-align.exp | 83 +
gdb/testsuite/gdb.dwarf2/dw2-anon-mptr.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-anon-mptr.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-anonymous-func.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-anonymous-func.exp | 2 +-
.../gdb.dwarf2/dw2-bad-mips-linkage-name.c | 2 +-
.../gdb.dwarf2/dw2-bad-mips-linkage-name.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-bad-parameter-type.S | 2 +-
.../gdb.dwarf2/dw2-bad-parameter-type.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-bad-unresolved.c | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-bad-unresolved.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-basic.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-basic.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-canonicalize-type.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-canonicalize-type.exp | 2 +-
.../gdb.dwarf2/dw2-case-insensitive-debug.S | 20 +-
gdb/testsuite/gdb.dwarf2/dw2-case-insensitive.c | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-case-insensitive.exp | 4 +-
gdb/testsuite/gdb.dwarf2/dw2-common-block.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-common-block.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-compdir-oldgcc.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-compdir-oldgcc.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-compressed.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-compressed.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-const.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-const.exp | 2 +-
.../gdb.dwarf2/dw2-cp-infcall-ref-static-main.c | 2 +-
.../gdb.dwarf2/dw2-cp-infcall-ref-static.S | 2 +-
.../gdb.dwarf2/dw2-cp-infcall-ref-static.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-cu-size.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-cu-size.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-dir-file-name.c | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-dir-file-name.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-dos-drive.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-dos-drive.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-double-set-die-type.S | 2 +-
.../gdb.dwarf2/dw2-double-set-die-type.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-dummy-cu.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-dummy-cu.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-dup-frame.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-dup-frame.c | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-dup-frame.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-empty-namespace.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-empty-namespace.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-empty-pc-range.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-empty-pc-range.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-entry-value-main.c | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-entry-value.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-entry-value.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-error.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-error.c | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-error.exp | 4 +-
gdb/testsuite/gdb.dwarf2/dw2-filename.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-filename.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-icc-opaque.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-icc-opaque.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-icycle.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-icycle.c | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-icycle.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-ifort-parameter.c | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-ifort-parameter.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-inheritance.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-inheritance.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-inline-break.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-inline-break.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-inline-param-main.c | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-inline-param.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-inline-param.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-intercu.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-intercu.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-intermix.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-intermix.exp | 2 +-
.../gdb.dwarf2/dw2-lexical-block-bare.exp | 2 +-
.../gdb.dwarf2/dw2-linkage-name-trust-main.cc | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-linkage-name-trust.S | 2 +-
.../gdb.dwarf2/dw2-linkage-name-trust.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-minsym-in-cu.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-minsym-in-cu.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-modula2-self-type.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-modula2-self-type.exp | 2 +-
.../gdb.dwarf2/dw2-namespaceless-anonymous.S | 2 +-
.../gdb.dwarf2/dw2-namespaceless-anonymous.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-noloc-main.c | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-noloc.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-noloc.exp | 2 +-
.../gdb.dwarf2/dw2-objfile-overlap-inner.S | 2 +-
.../gdb.dwarf2/dw2-objfile-overlap-outer.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-objfile-overlap.exp | 4 +-
gdb/testsuite/gdb.dwarf2/dw2-op-call.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-op-call.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-op-out-param.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-op-out-param.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-op-stack-value.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-op-stack-value.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-opt-structptr.c | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-opt-structptr.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-param-error-main.c | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-param-error.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-param-error.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-producer.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-producer.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-ranges-base.c | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-ranges-base.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-ranges-func.c | 78 +
gdb/testsuite/gdb.dwarf2/dw2-ranges-func.exp | 405 +
gdb/testsuite/gdb.dwarf2/dw2-ranges.c | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-ranges.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-ranges2.c | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-ranges3.c | 2 +-
.../gdb.dwarf2/dw2-ref-missing-frame-func.c | 2 +-
.../gdb.dwarf2/dw2-ref-missing-frame-main.c | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-ref-missing-frame.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-ref-missing-frame.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-reg-undefined.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-reg-undefined.c | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-reg-undefined.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-regno-invalid.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-restore.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-restore.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-restrict.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-restrict.c | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-restrict.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-simple-locdesc.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-simple-locdesc.exp | 2 +-
.../gdb.dwarf2/dw2-single-line-discriminators.S | 2 +-
.../gdb.dwarf2/dw2-single-line-discriminators.c | 2 +-
.../gdb.dwarf2/dw2-single-line-discriminators.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-skip-prologue.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-skip-prologue.c | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-skip-prologue.exp | 4 +-
gdb/testsuite/gdb.dwarf2/dw2-stack-boundary.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-stack-boundary.exp | 4 +-
gdb/testsuite/gdb.dwarf2/dw2-strp.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-strp.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-undefined-ret-addr.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-undefined-ret-addr.c | 2 +-
.../gdb.dwarf2/dw2-undefined-ret-addr.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-unresolved-main.c | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-unresolved.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-unresolved.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-var-zero-addr.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw2-var-zero-addr.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw4-sig-type-unused.S | 2 +-
gdb/testsuite/gdb.dwarf2/dw4-sig-type-unused.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dw4-sig-types.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dwp-sepdebug.c | 2 +-
gdb/testsuite/gdb.dwarf2/dwp-sepdebug.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dwp-symlink.c | 2 +-
gdb/testsuite/gdb.dwarf2/dwp-symlink.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dwz.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dwzbuildid.exp | 2 +-
gdb/testsuite/gdb.dwarf2/dynarr-ptr.c | 2 +-
gdb/testsuite/gdb.dwarf2/dynarr-ptr.exp | 2 +-
gdb/testsuite/gdb.dwarf2/enum-type.exp | 2 +-
gdb/testsuite/gdb.dwarf2/fission-base.S | 2 +-
gdb/testsuite/gdb.dwarf2/fission-base.c | 2 +-
gdb/testsuite/gdb.dwarf2/fission-base.exp | 2 +-
gdb/testsuite/gdb.dwarf2/fission-loclists-pie.S | 2 +-
gdb/testsuite/gdb.dwarf2/fission-loclists-pie.exp | 2 +-
gdb/testsuite/gdb.dwarf2/fission-loclists.S | 2 +-
gdb/testsuite/gdb.dwarf2/fission-loclists.exp | 2 +-
gdb/testsuite/gdb.dwarf2/fission-mix.c | 2 +-
gdb/testsuite/gdb.dwarf2/fission-mix.exp | 2 +-
gdb/testsuite/gdb.dwarf2/fission-mix.h | 2 +-
gdb/testsuite/gdb.dwarf2/fission-mix2.c | 2 +-
gdb/testsuite/gdb.dwarf2/fission-multi-cu.S | 374 +
gdb/testsuite/gdb.dwarf2/fission-multi-cu.exp | 67 +
gdb/testsuite/gdb.dwarf2/fission-multi-cu1.c | 22 +
gdb/testsuite/gdb.dwarf2/fission-multi-cu2.c | 24 +
gdb/testsuite/gdb.dwarf2/fission-reread.S | 2 +-
gdb/testsuite/gdb.dwarf2/fission-reread.exp | 2 +-
gdb/testsuite/gdb.dwarf2/formdata16.c | 2 +-
gdb/testsuite/gdb.dwarf2/formdata16.exp | 42 +-
gdb/testsuite/gdb.dwarf2/gdb-index.exp | 21 +-
gdb/testsuite/gdb.dwarf2/implptr-64bit.exp | 2 +-
gdb/testsuite/gdb.dwarf2/implptr-optimized-out.exp | 2 +-
gdb/testsuite/gdb.dwarf2/implptr.c | 2 +-
gdb/testsuite/gdb.dwarf2/implptr.exp | 8 +-
gdb/testsuite/gdb.dwarf2/implptrconst.c | 2 +-
gdb/testsuite/gdb.dwarf2/implptrconst.exp | 2 +-
gdb/testsuite/gdb.dwarf2/implptrpiece.exp | 12 +-
gdb/testsuite/gdb.dwarf2/implref-array.c | 2 +-
gdb/testsuite/gdb.dwarf2/implref-array.exp | 2 +-
gdb/testsuite/gdb.dwarf2/implref-const.exp | 2 +-
gdb/testsuite/gdb.dwarf2/implref-global.c | 2 +-
gdb/testsuite/gdb.dwarf2/implref-global.exp | 2 +-
gdb/testsuite/gdb.dwarf2/implref-struct.c | 2 +-
gdb/testsuite/gdb.dwarf2/implref-struct.exp | 2 +-
.../gdb.dwarf2/info-locals-optimized-out.c | 23 +
.../gdb.dwarf2/info-locals-optimized-out.exp | 74 +
gdb/testsuite/gdb.dwarf2/mac-fileno.S | 2 +-
gdb/testsuite/gdb.dwarf2/mac-fileno.exp | 2 +-
gdb/testsuite/gdb.dwarf2/main-subprogram.c | 2 +-
gdb/testsuite/gdb.dwarf2/main-subprogram.exp | 2 +-
gdb/testsuite/gdb.dwarf2/main.c | 2 +-
gdb/testsuite/gdb.dwarf2/member-ptr-forwardref.S | 2 +-
gdb/testsuite/gdb.dwarf2/member-ptr-forwardref.exp | 3 +-
gdb/testsuite/gdb.dwarf2/method-ptr.cc | 2 +-
gdb/testsuite/gdb.dwarf2/method-ptr.exp | 3 +-
gdb/testsuite/gdb.dwarf2/missing-sig-type.exp | 2 +-
gdb/testsuite/gdb.dwarf2/nonvar-access.exp | 33 +-
gdb/testsuite/gdb.dwarf2/nostaticblock.exp | 2 +-
gdb/testsuite/gdb.dwarf2/opaque-type-lookup-2.c | 2 +-
gdb/testsuite/gdb.dwarf2/opaque-type-lookup.c | 2 +-
gdb/testsuite/gdb.dwarf2/opaque-type-lookup.exp | 2 +-
gdb/testsuite/gdb.dwarf2/pieces-optimized-out.S | 2 +-
gdb/testsuite/gdb.dwarf2/pieces-optimized-out.c | 2 +-
gdb/testsuite/gdb.dwarf2/pieces-optimized-out.exp | 2 +-
gdb/testsuite/gdb.dwarf2/pieces.S | 2 +-
gdb/testsuite/gdb.dwarf2/pieces.c | 2 +-
gdb/testsuite/gdb.dwarf2/pieces.exp | 2 +-
gdb/testsuite/gdb.dwarf2/pr10770.exp | 8 +-
gdb/testsuite/gdb.dwarf2/pr11465.S | 2 +-
gdb/testsuite/gdb.dwarf2/pr11465.exp | 2 +-
gdb/testsuite/gdb.dwarf2/pr13961.S | 2 +-
gdb/testsuite/gdb.dwarf2/pr13961.exp | 2 +-
gdb/testsuite/gdb.dwarf2/shortpiece.exp | 100 +
gdb/testsuite/gdb.dwarf2/staticvirtual.exp | 2 +-
gdb/testsuite/gdb.dwarf2/subrange.exp | 2 +-
gdb/testsuite/gdb.dwarf2/symtab-producer.exp | 2 +-
gdb/testsuite/gdb.dwarf2/trace-crash.exp | 2 +-
gdb/testsuite/gdb.dwarf2/typeddwarf-amd64.S | 2 +-
gdb/testsuite/gdb.dwarf2/typeddwarf.S | 2 +-
gdb/testsuite/gdb.dwarf2/typeddwarf.exp | 2 +-
gdb/testsuite/gdb.dwarf2/valop.S | 2 +-
gdb/testsuite/gdb.dwarf2/valop.exp | 2 +-
gdb/testsuite/gdb.dwarf2/var-access.c | 25 +
gdb/testsuite/gdb.dwarf2/var-access.exp | 345 +
gdb/testsuite/gdb.dwarf2/variant.c | 47 +
gdb/testsuite/gdb.dwarf2/variant.exp | 224 +
gdb/testsuite/gdb.dwarf2/varval.c | 30 +
gdb/testsuite/gdb.dwarf2/varval.exp | 299 +
gdb/testsuite/gdb.dwarf2/void-type.c | 36 +
gdb/testsuite/gdb.dwarf2/void-type.exp | 125 +
gdb/testsuite/gdb.dwarf2/watch-notconst.c | 2 +-
gdb/testsuite/gdb.dwarf2/watch-notconst.exp | 2 +-
gdb/testsuite/gdb.dwarf2/watch-notconst2.S | 2 +-
gdb/testsuite/gdb.dwarf2/watch-notconst2.c | 2 +-
gdb/testsuite/gdb.fortran/array-element.exp | 2 +-
gdb/testsuite/gdb.fortran/array-element.f | 2 +-
gdb/testsuite/gdb.fortran/charset.exp | 2 +-
gdb/testsuite/gdb.fortran/common-block.exp | 5 +-
gdb/testsuite/gdb.fortran/common-block.f90 | 5 +-
gdb/testsuite/gdb.fortran/complex.exp | 2 +-
gdb/testsuite/gdb.fortran/complex.f | 2 +-
.../gdb.fortran/derived-type-function.exp | 2 +-
.../gdb.fortran/derived-type-function.f90 | 2 +-
gdb/testsuite/gdb.fortran/derived-type.exp | 2 +-
gdb/testsuite/gdb.fortran/derived-type.f90 | 2 +-
gdb/testsuite/gdb.fortran/exprs.exp | 2 +-
gdb/testsuite/gdb.fortran/library-module-lib.f90 | 2 +-
gdb/testsuite/gdb.fortran/library-module-main.f90 | 2 +-
gdb/testsuite/gdb.fortran/library-module.exp | 2 +-
gdb/testsuite/gdb.fortran/logical.exp | 5 +-
gdb/testsuite/gdb.fortran/logical.f90 | 2 +-
gdb/testsuite/gdb.fortran/module.exp | 2 +-
gdb/testsuite/gdb.fortran/module.f90 | 2 +-
gdb/testsuite/gdb.fortran/multi-dim.exp | 2 +-
gdb/testsuite/gdb.fortran/multi-dim.f90 | 2 +-
gdb/testsuite/gdb.fortran/nested-funcs.exp | 4 +-
gdb/testsuite/gdb.fortran/nested-funcs.f90 | 2 +-
gdb/testsuite/gdb.fortran/print-formatted.exp | 2 +-
gdb/testsuite/gdb.fortran/print-formatted.f90 | 2 +-
gdb/testsuite/gdb.fortran/printing-types.exp | 35 +
gdb/testsuite/gdb.fortran/printing-types.f90 | 27 +
gdb/testsuite/gdb.fortran/ptr-indentation.exp | 41 +
gdb/testsuite/gdb.fortran/ptr-indentation.f90 | 30 +
.../gdb.fortran/short-circuit-argument-list.exp | 106 +
.../gdb.fortran/short-circuit-argument-list.f90 | 78 +
gdb/testsuite/gdb.fortran/subarray.exp | 2 +-
gdb/testsuite/gdb.fortran/subarray.f | 2 +-
gdb/testsuite/gdb.fortran/type.f90 | 2 +-
gdb/testsuite/gdb.fortran/types.exp | 2 +-
gdb/testsuite/gdb.fortran/vla-alloc-assoc.exp | 2 +-
gdb/testsuite/gdb.fortran/vla-datatypes.exp | 2 +-
gdb/testsuite/gdb.fortran/vla-datatypes.f90 | 5 +-
gdb/testsuite/gdb.fortran/vla-history.exp | 2 +-
gdb/testsuite/gdb.fortran/vla-ptr-info.exp | 2 +-
gdb/testsuite/gdb.fortran/vla-ptype-sub.exp | 2 +-
gdb/testsuite/gdb.fortran/vla-ptype.exp | 8 +-
gdb/testsuite/gdb.fortran/vla-sizeof.exp | 2 +-
gdb/testsuite/gdb.fortran/vla-sub.f90 | 5 +-
gdb/testsuite/gdb.fortran/vla-type.exp | 2 +-
gdb/testsuite/gdb.fortran/vla-type.f90 | 2 +-
.../gdb.fortran/vla-value-sub-arbitrary.exp | 2 +-
gdb/testsuite/gdb.fortran/vla-value-sub-finish.exp | 2 +-
gdb/testsuite/gdb.fortran/vla-value-sub.exp | 2 +-
gdb/testsuite/gdb.fortran/vla-value.exp | 17 +-
gdb/testsuite/gdb.fortran/vla.f90 | 2 +-
gdb/testsuite/gdb.fortran/whatis_type.exp | 2 +-
gdb/testsuite/gdb.gdb/complaints.exp | 85 +-
gdb/testsuite/gdb.gdb/observer.exp | 143 -
gdb/testsuite/gdb.gdb/python-interrupts.exp | 2 +-
gdb/testsuite/gdb.gdb/python-selftest.exp | 2 +-
gdb/testsuite/gdb.gdb/selftest.exp | 13 +-
gdb/testsuite/gdb.gdb/unittest.exp | 23 +-
gdb/testsuite/gdb.gdb/xfullpath.exp | 60 -
gdb/testsuite/gdb.go/basic-types.exp | 2 +-
gdb/testsuite/gdb.go/chan.exp | 2 +-
gdb/testsuite/gdb.go/handcall.exp | 2 +-
gdb/testsuite/gdb.go/hello.exp | 2 +-
gdb/testsuite/gdb.go/integers.exp | 2 +-
gdb/testsuite/gdb.go/methods.exp | 2 +-
gdb/testsuite/gdb.go/package.exp | 2 +-
gdb/testsuite/gdb.go/print.exp | 2 +-
gdb/testsuite/gdb.go/strings.exp | 2 +-
gdb/testsuite/gdb.go/types.exp | 2 +-
gdb/testsuite/gdb.go/unsafe.exp | 2 +-
gdb/testsuite/gdb.guile/guile.exp | 2 +-
gdb/testsuite/gdb.guile/scm-arch.c | 2 +-
gdb/testsuite/gdb.guile/scm-arch.exp | 2 +-
gdb/testsuite/gdb.guile/scm-block.c | 2 +-
gdb/testsuite/gdb.guile/scm-block.exp | 2 +-
gdb/testsuite/gdb.guile/scm-breakpoint.c | 2 +-
gdb/testsuite/gdb.guile/scm-breakpoint.exp | 2 +-
gdb/testsuite/gdb.guile/scm-cmd.c | 2 +-
gdb/testsuite/gdb.guile/scm-cmd.exp | 2 +-
gdb/testsuite/gdb.guile/scm-disasm.c | 2 +-
gdb/testsuite/gdb.guile/scm-disasm.exp | 2 +-
gdb/testsuite/gdb.guile/scm-equal.c | 2 +-
gdb/testsuite/gdb.guile/scm-equal.exp | 2 +-
gdb/testsuite/gdb.guile/scm-error-1.scm | 2 +-
gdb/testsuite/gdb.guile/scm-error-2.scm | 2 +-
gdb/testsuite/gdb.guile/scm-error.exp | 2 +-
gdb/testsuite/gdb.guile/scm-frame-args.c | 2 +-
gdb/testsuite/gdb.guile/scm-frame-args.exp | 2 +-
gdb/testsuite/gdb.guile/scm-frame-args.scm | 2 +-
gdb/testsuite/gdb.guile/scm-frame-inline.c | 2 +-
gdb/testsuite/gdb.guile/scm-frame-inline.exp | 2 +-
gdb/testsuite/gdb.guile/scm-frame.exp | 2 +-
gdb/testsuite/gdb.guile/scm-gsmob.exp | 2 +-
gdb/testsuite/gdb.guile/scm-iterator.c | 2 +-
gdb/testsuite/gdb.guile/scm-iterator.exp | 2 +-
gdb/testsuite/gdb.guile/scm-lazy-string.c | 2 +-
gdb/testsuite/gdb.guile/scm-lazy-string.exp | 4 +-
gdb/testsuite/gdb.guile/scm-math.c | 2 +-
gdb/testsuite/gdb.guile/scm-math.exp | 2 +-
gdb/testsuite/gdb.guile/scm-objfile-script-gdb.in | 2 +-
gdb/testsuite/gdb.guile/scm-objfile-script.c | 2 +-
gdb/testsuite/gdb.guile/scm-objfile-script.exp | 2 +-
gdb/testsuite/gdb.guile/scm-objfile.c | 2 +-
gdb/testsuite/gdb.guile/scm-objfile.exp | 2 +-
gdb/testsuite/gdb.guile/scm-parameter.exp | 2 +-
gdb/testsuite/gdb.guile/scm-ports.c | 2 +-
gdb/testsuite/gdb.guile/scm-ports.exp | 4 +-
gdb/testsuite/gdb.guile/scm-pretty-print.c | 2 +-
gdb/testsuite/gdb.guile/scm-pretty-print.exp | 2 +-
gdb/testsuite/gdb.guile/scm-pretty-print.scm | 2 +-
gdb/testsuite/gdb.guile/scm-progspace.c | 2 +-
gdb/testsuite/gdb.guile/scm-progspace.exp | 2 +-
gdb/testsuite/gdb.guile/scm-section-script.c | 2 +-
gdb/testsuite/gdb.guile/scm-section-script.exp | 2 +-
gdb/testsuite/gdb.guile/scm-section-script.scm | 2 +-
gdb/testsuite/gdb.guile/scm-symbol.c | 2 +-
gdb/testsuite/gdb.guile/scm-symbol.exp | 2 +-
gdb/testsuite/gdb.guile/scm-symtab-2.c | 2 +-
gdb/testsuite/gdb.guile/scm-symtab.c | 2 +-
gdb/testsuite/gdb.guile/scm-symtab.exp | 2 +-
gdb/testsuite/gdb.guile/scm-type.c | 2 +-
gdb/testsuite/gdb.guile/scm-type.exp | 2 +-
gdb/testsuite/gdb.guile/scm-value-cc.cc | 2 +-
gdb/testsuite/gdb.guile/scm-value-cc.exp | 2 +-
gdb/testsuite/gdb.guile/scm-value.c | 2 +-
gdb/testsuite/gdb.guile/scm-value.exp | 2 +-
gdb/testsuite/gdb.guile/source2.scm | 2 +-
gdb/testsuite/gdb.guile/types-module.cc | 2 +-
gdb/testsuite/gdb.guile/types-module.exp | 2 +-
gdb/testsuite/gdb.linespec/3explicit.c | 2 +-
gdb/testsuite/gdb.linespec/base/one/header.h | 2 +-
gdb/testsuite/gdb.linespec/base/one/thefile.cc | 5 +
gdb/testsuite/gdb.linespec/base/two/header.h | 2 +-
gdb/testsuite/gdb.linespec/base/two/thefile.cc | 5 +
gdb/testsuite/gdb.linespec/break-ask.exp | 2 +-
gdb/testsuite/gdb.linespec/break-asm-file.c | 2 +-
gdb/testsuite/gdb.linespec/break-asm-file.exp | 2 +-
gdb/testsuite/gdb.linespec/break-asm-file0.s | 2 +-
gdb/testsuite/gdb.linespec/break-asm-file1.s | 2 +-
gdb/testsuite/gdb.linespec/cpcompletion.exp | 965 +
gdb/testsuite/gdb.linespec/cpexplicit.cc | 2 +-
gdb/testsuite/gdb.linespec/cpexplicit.exp | 2 +-
gdb/testsuite/gdb.linespec/cpls-abi-tag.cc | 93 +
gdb/testsuite/gdb.linespec/cpls-abi-tag.exp | 294 +
gdb/testsuite/gdb.linespec/cpls-hyphen.cc | 33 +
gdb/testsuite/gdb.linespec/cpls-ops.cc | 254 +
gdb/testsuite/gdb.linespec/cpls-ops.exp | 582 +
gdb/testsuite/gdb.linespec/cpls.cc | 386 +
gdb/testsuite/gdb.linespec/cpls2.cc | 46 +
gdb/testsuite/gdb.linespec/explicit.c | 2 +-
gdb/testsuite/gdb.linespec/explicit.exp | 226 +-
gdb/testsuite/gdb.linespec/explicit2.c | 2 +-
gdb/testsuite/gdb.linespec/keywords.c | 2 +-
gdb/testsuite/gdb.linespec/keywords.exp | 2 +-
gdb/testsuite/gdb.linespec/linespec.exp | 97 +-
gdb/testsuite/gdb.linespec/ls-dollar.cc | 2 +-
gdb/testsuite/gdb.linespec/ls-dollar.exp | 2 +-
gdb/testsuite/gdb.linespec/ls-errs.c | 2 +-
gdb/testsuite/gdb.linespec/ls-errs.exp | 36 +-
gdb/testsuite/gdb.linespec/macro-relative.c | 2 +-
gdb/testsuite/gdb.linespec/macro-relative.exp | 2 +-
gdb/testsuite/gdb.linespec/skip-two.exp | 2 +-
gdb/testsuite/gdb.linespec/thread.c | 2 +-
gdb/testsuite/gdb.linespec/thread.exp | 2 +-
gdb/testsuite/gdb.mi/array.f | 2 +-
gdb/testsuite/gdb.mi/basics.c | 4 +-
gdb/testsuite/gdb.mi/dw2-ref-missing-frame-func.c | 23 +-
gdb/testsuite/gdb.mi/dw2-ref-missing-frame-main.c | 2 +-
gdb/testsuite/gdb.mi/dw2-ref-missing-frame.S | 2 +-
gdb/testsuite/gdb.mi/dw2-ref-missing-frame.exp | 2 +-
gdb/testsuite/gdb.mi/gdb2549.exp | 2 +-
gdb/testsuite/gdb.mi/gdb669.exp | 2 +-
gdb/testsuite/gdb.mi/gdb680.exp | 2 +-
gdb/testsuite/gdb.mi/gdb701.exp | 2 +-
gdb/testsuite/gdb.mi/gdb792.exp | 2 +-
.../gdb.mi/list-thread-groups-available.c | 29 +
.../gdb.mi/list-thread-groups-available.exp | 88 +
.../gdb.mi/list-thread-groups-no-inferior.exp | 47 +
gdb/testsuite/gdb.mi/mi-async-run.c | 2 +-
gdb/testsuite/gdb.mi/mi-async-run.exp | 2 +-
gdb/testsuite/gdb.mi/mi-async.exp | 2 +-
gdb/testsuite/gdb.mi/mi-basics.exp | 2 +-
gdb/testsuite/gdb.mi/mi-break.exp | 17 +-
gdb/testsuite/gdb.mi/mi-breakpoint-changed.exp | 2 +-
.../gdb.mi/mi-breakpoint-location-ena-dis.cc | 36 +
.../gdb.mi/mi-breakpoint-location-ena-dis.exp | 56 +
gdb/testsuite/gdb.mi/mi-catch-load-so.c | 2 +-
gdb/testsuite/gdb.mi/mi-catch-load.c | 2 +-
gdb/testsuite/gdb.mi/mi-catch-load.exp | 2 +-
gdb/testsuite/gdb.mi/mi-cli.exp | 4 +-
gdb/testsuite/gdb.mi/mi-cmd-error.exp | 2 +-
gdb/testsuite/gdb.mi/mi-cmd-param-changed.exp | 50 +-
.../gdb.mi/mi-condbreak-call-thr-state-mt.c | 2 +-
.../gdb.mi/mi-condbreak-call-thr-state-st.c | 2 +-
gdb/testsuite/gdb.mi/mi-condbreak-call-thr-state.c | 2 +-
.../gdb.mi/mi-condbreak-call-thr-state.exp | 2 +-
gdb/testsuite/gdb.mi/mi-console.exp | 2 +-
gdb/testsuite/gdb.mi/mi-detach.exp | 2 +-
gdb/testsuite/gdb.mi/mi-disassemble.exp | 22 +-
gdb/testsuite/gdb.mi/mi-dprintf-pending.c | 2 +-
gdb/testsuite/gdb.mi/mi-dprintf-pending.exp | 2 +-
gdb/testsuite/gdb.mi/mi-dprintf-pendshr.c | 2 +-
gdb/testsuite/gdb.mi/mi-dprintf.c | 2 +-
gdb/testsuite/gdb.mi/mi-dprintf.exp | 2 +-
gdb/testsuite/gdb.mi/mi-editing.exp | 2 +-
gdb/testsuite/gdb.mi/mi-eval.exp | 2 +-
gdb/testsuite/gdb.mi/mi-exec-run.exp | 4 +-
gdb/testsuite/gdb.mi/mi-exit-code.c | 2 +-
gdb/testsuite/gdb.mi/mi-exit-code.exp | 2 +-
gdb/testsuite/gdb.mi/mi-file-transfer.exp | 2 +-
gdb/testsuite/gdb.mi/mi-file.exp | 2 +-
gdb/testsuite/gdb.mi/mi-fill-memory.exp | 2 +-
gdb/testsuite/gdb.mi/mi-frame-regs.exp | 186 +
gdb/testsuite/gdb.mi/mi-fullname-deleted.exp | 2 +-
gdb/testsuite/gdb.mi/mi-hack-cli.exp | 2 +-
gdb/testsuite/gdb.mi/mi-i-cmd.exp | 2 +-
gdb/testsuite/gdb.mi/mi-info-os.exp | 2 +-
.../gdb.mi/mi-inheritance-syntax-error.exp | 2 +-
gdb/testsuite/gdb.mi/mi-language.exp | 2 +-
gdb/testsuite/gdb.mi/mi-linespec-err-cp.cc | 2 +-
gdb/testsuite/gdb.mi/mi-linespec-err-cp.exp | 2 +-
gdb/testsuite/gdb.mi/mi-logging.exp | 2 +-
gdb/testsuite/gdb.mi/mi-memory-changed.exp | 2 +-
gdb/testsuite/gdb.mi/mi-nonstop-exit.exp | 2 +-
gdb/testsuite/gdb.mi/mi-nonstop.exp | 2 +-
gdb/testsuite/gdb.mi/mi-ns-stale-regcache.exp | 2 +-
gdb/testsuite/gdb.mi/mi-nsintrall.exp | 2 +-
gdb/testsuite/gdb.mi/mi-nsmoribund.exp | 2 +-
gdb/testsuite/gdb.mi/mi-nsthrexec.exp | 2 +-
gdb/testsuite/gdb.mi/mi-pending.c | 2 +-
gdb/testsuite/gdb.mi/mi-pending.exp | 2 +-
gdb/testsuite/gdb.mi/mi-pendshr.c | 2 +-
gdb/testsuite/gdb.mi/mi-pendshr2.c | 2 +-
gdb/testsuite/gdb.mi/mi-pthreads.exp | 4 +-
gdb/testsuite/gdb.mi/mi-read-memory.exp | 2 +-
gdb/testsuite/gdb.mi/mi-record-changed.exp | 2 +-
gdb/testsuite/gdb.mi/mi-reg-undefined.S | 2 +-
gdb/testsuite/gdb.mi/mi-reg-undefined.c | 2 +-
gdb/testsuite/gdb.mi/mi-reg-undefined.exp | 2 +-
gdb/testsuite/gdb.mi/mi-regs.exp | 2 +-
gdb/testsuite/gdb.mi/mi-return.exp | 4 +-
gdb/testsuite/gdb.mi/mi-reverse.exp | 4 +-
gdb/testsuite/gdb.mi/mi-simplerun.exp | 6 +-
gdb/testsuite/gdb.mi/mi-solib.exp | 2 +-
gdb/testsuite/gdb.mi/mi-stack.c | 4 +-
gdb/testsuite/gdb.mi/mi-stack.exp | 117 +-
gdb/testsuite/gdb.mi/mi-start.c | 2 +-
gdb/testsuite/gdb.mi/mi-start.exp | 4 +-
gdb/testsuite/gdb.mi/mi-stepi.exp | 2 +-
gdb/testsuite/gdb.mi/mi-stepn.c | 2 +-
gdb/testsuite/gdb.mi/mi-stepn.exp | 2 +-
gdb/testsuite/gdb.mi/mi-syn-frame.exp | 13 +-
gdb/testsuite/gdb.mi/mi-threads-interrupt.c | 2 +-
gdb/testsuite/gdb.mi/mi-threads-interrupt.exp | 7 +-
gdb/testsuite/gdb.mi/mi-undefined-cmd.exp | 2 +-
gdb/testsuite/gdb.mi/mi-until.exp | 2 +-
gdb/testsuite/gdb.mi/mi-var-block.exp | 2 +-
gdb/testsuite/gdb.mi/mi-var-child-f.exp | 10 +-
gdb/testsuite/gdb.mi/mi-var-child.c | 2 +-
gdb/testsuite/gdb.mi/mi-var-child.exp | 2 +-
gdb/testsuite/gdb.mi/mi-var-cmd.exp | 2 +-
gdb/testsuite/gdb.mi/mi-var-cp.cc | 2 +-
gdb/testsuite/gdb.mi/mi-var-cp.exp | 2 +-
gdb/testsuite/gdb.mi/mi-var-create-rtti.c | 2 +-
gdb/testsuite/gdb.mi/mi-var-create-rtti.exp | 7 +-
gdb/testsuite/gdb.mi/mi-var-display.exp | 2 +-
gdb/testsuite/gdb.mi/mi-var-invalidate.exp | 2 +-
.../mi-var-list-children-invalid-grandchild.c | 2 +-
.../mi-var-list-children-invalid-grandchild.exp | 2 +-
gdb/testsuite/gdb.mi/mi-var-rtti.cc | 2 +-
gdb/testsuite/gdb.mi/mi-var-rtti.exp | 2 +-
gdb/testsuite/gdb.mi/mi-vla-c99.exp | 2 +-
gdb/testsuite/gdb.mi/mi-vla-fortran.exp | 76 +-
gdb/testsuite/gdb.mi/mi-watch-nonstop.exp | 2 +-
gdb/testsuite/gdb.mi/mi-watch.exp | 2 +-
gdb/testsuite/gdb.mi/mi2-amd64-entry-value.c | 2 +-
gdb/testsuite/gdb.mi/mi2-amd64-entry-value.exp | 2 +-
gdb/testsuite/gdb.mi/mi2-amd64-entry-value.s | 2 +-
gdb/testsuite/gdb.mi/mi2-prompt.exp | 2 +-
gdb/testsuite/gdb.mi/mi2-var-child.exp | 2 +-
gdb/testsuite/gdb.mi/new-ui-mi-sync.c | 2 +-
gdb/testsuite/gdb.mi/new-ui-mi-sync.exp | 2 +-
gdb/testsuite/gdb.mi/non-stop-exit.c | 2 +-
gdb/testsuite/gdb.mi/non-stop.c | 2 +-
gdb/testsuite/gdb.mi/ns-stale-regcache.c | 2 +-
gdb/testsuite/gdb.mi/nsintrall.c | 2 +-
gdb/testsuite/gdb.mi/nsmoribund.c | 2 +-
gdb/testsuite/gdb.mi/nsthrexec.c | 2 +-
gdb/testsuite/gdb.mi/pending.c | 2 +-
gdb/testsuite/gdb.mi/pendshr1.c | 2 +-
gdb/testsuite/gdb.mi/pendshr2.c | 2 +-
gdb/testsuite/gdb.mi/pr11022.c | 2 +-
gdb/testsuite/gdb.mi/pr11022.exp | 2 +-
gdb/testsuite/gdb.mi/pthreads.c | 2 +-
gdb/testsuite/gdb.mi/solib-lib.c | 2 +-
gdb/testsuite/gdb.mi/solib-main.c | 2 +-
gdb/testsuite/gdb.mi/user-selected-context-sync.c | 2 +-
.../gdb.mi/user-selected-context-sync.exp | 8 +-
gdb/testsuite/gdb.mi/var-cmd.c | 2 +-
gdb/testsuite/gdb.mi/vla.c | 2 +-
gdb/testsuite/gdb.mi/vla.f90 | 2 +-
gdb/testsuite/gdb.mi/watch-nonstop.c | 2 +-
gdb/testsuite/gdb.modula2/unbounded-array.exp | 2 +-
gdb/testsuite/gdb.modula2/unbounded1.c | 2 +-
gdb/testsuite/gdb.multi/base.exp | 2 +-
gdb/testsuite/gdb.multi/bkpt-multi-exec.exp | 4 +-
gdb/testsuite/gdb.multi/dummy-frame-restore.c | 2 +-
gdb/testsuite/gdb.multi/dummy-frame-restore.exp | 4 +-
gdb/testsuite/gdb.multi/goodbye.c | 2 +-
gdb/testsuite/gdb.multi/hangout.c | 16 +-
gdb/testsuite/gdb.multi/hello.c | 17 +-
gdb/testsuite/gdb.multi/info-threads.exp | 2 +-
gdb/testsuite/gdb.multi/multi-arch-exec.c | 29 +-
gdb/testsuite/gdb.multi/multi-arch-exec.exp | 192 +-
gdb/testsuite/gdb.multi/multi-arch.exp | 28 +-
gdb/testsuite/gdb.multi/multi-attach.c | 2 +-
gdb/testsuite/gdb.multi/multi-attach.exp | 8 +-
gdb/testsuite/gdb.multi/multi-term-settings.c | 52 +
gdb/testsuite/gdb.multi/multi-term-settings.exp | 242 +
gdb/testsuite/gdb.multi/remove-inferiors.c | 2 +-
gdb/testsuite/gdb.multi/remove-inferiors.exp | 4 +-
gdb/testsuite/gdb.multi/tids.c | 2 +-
gdb/testsuite/gdb.multi/tids.exp | 4 +-
gdb/testsuite/gdb.multi/watchpoint-multi-exit.c | 2 +-
gdb/testsuite/gdb.multi/watchpoint-multi-exit.exp | 2 +-
gdb/testsuite/gdb.multi/watchpoint-multi.c | 2 +-
gdb/testsuite/gdb.multi/watchpoint-multi.exp | 4 +-
gdb/testsuite/gdb.objc/basicclass.exp | 2 +-
gdb/testsuite/gdb.objc/nondebug.exp | 2 +-
gdb/testsuite/gdb.objc/objcdecode.exp | 2 +-
gdb/testsuite/gdb.objc/print.exp | 2 +-
gdb/testsuite/gdb.opencl/callfuncs.cl | 2 +-
gdb/testsuite/gdb.opencl/callfuncs.exp | 2 +-
gdb/testsuite/gdb.opencl/convs_casts.cl | 2 +-
gdb/testsuite/gdb.opencl/convs_casts.exp | 2 +-
gdb/testsuite/gdb.opencl/datatypes.cl | 2 +-
gdb/testsuite/gdb.opencl/datatypes.exp | 2 +-
gdb/testsuite/gdb.opencl/operators.cl | 2 +-
gdb/testsuite/gdb.opencl/operators.exp | 2 +-
gdb/testsuite/gdb.opencl/vec_comps.cl | 2 +-
gdb/testsuite/gdb.opencl/vec_comps.exp | 2 +-
gdb/testsuite/gdb.opt/clobbered-registers-O2.c | 2 +-
gdb/testsuite/gdb.opt/clobbered-registers-O2.exp | 2 +-
gdb/testsuite/gdb.opt/inline-break.c | 88 +-
gdb/testsuite/gdb.opt/inline-break.exp | 196 +-
gdb/testsuite/gdb.opt/inline-bt.c | 2 +-
gdb/testsuite/gdb.opt/inline-bt.exp | 2 +-
gdb/testsuite/gdb.opt/inline-cmds.c | 2 +-
gdb/testsuite/gdb.opt/inline-cmds.exp | 2 +-
gdb/testsuite/gdb.opt/inline-locals.c | 2 +-
gdb/testsuite/gdb.opt/inline-locals.exp | 40 +-
gdb/testsuite/gdb.opt/inline-markers.c | 2 +-
gdb/testsuite/gdb.opt/solib-intra-step-lib.c | 2 +-
gdb/testsuite/gdb.opt/solib-intra-step-main.c | 2 +-
gdb/testsuite/gdb.opt/solib-intra-step.exp | 2 +-
.../gdb.pascal/case-insensitive-symbols.exp | 2 +-
.../gdb.pascal/case-insensitive-symbols.pas | 2 +-
gdb/testsuite/gdb.pascal/floats.exp | 2 +-
gdb/testsuite/gdb.pascal/floats.pas | 2 +-
gdb/testsuite/gdb.pascal/gdb11492.exp | 2 +-
gdb/testsuite/gdb.pascal/gdb11492.pas | 2 +-
gdb/testsuite/gdb.pascal/hello.exp | 2 +-
gdb/testsuite/gdb.pascal/integers.exp | 2 +-
gdb/testsuite/gdb.pascal/integers.pas | 2 +-
gdb/testsuite/gdb.pascal/print.exp | 2 +-
gdb/testsuite/gdb.pascal/stub-method.exp | 2 +-
gdb/testsuite/gdb.pascal/stub-method.pas | 2 +-
gdb/testsuite/gdb.pascal/types.exp | 2 +-
gdb/testsuite/gdb.perf/backtrace.c | 2 +-
gdb/testsuite/gdb.perf/backtrace.exp | 2 +-
gdb/testsuite/gdb.perf/backtrace.py | 2 +-
gdb/testsuite/gdb.perf/disassemble.exp | 2 +-
gdb/testsuite/gdb.perf/disassemble.py | 2 +-
gdb/testsuite/gdb.perf/gm-hello.cc | 2 +-
gdb/testsuite/gdb.perf/gm-pervasive-typedef.cc | 2 +-
gdb/testsuite/gdb.perf/gm-pervasive-typedef.h | 2 +-
gdb/testsuite/gdb.perf/gm-std.cc | 2 +-
gdb/testsuite/gdb.perf/gm-std.h | 2 +-
gdb/testsuite/gdb.perf/gm-use-cerr.cc | 2 +-
gdb/testsuite/gdb.perf/gm-utils.h | 2 +-
gdb/testsuite/gdb.perf/gmonster-null-lookup.py | 2 +-
.../gdb.perf/gmonster-pervasive-typedef.py | 2 +-
gdb/testsuite/gdb.perf/gmonster-print-cerr.py | 2 +-
gdb/testsuite/gdb.perf/gmonster-ptype-string.py | 2 +-
gdb/testsuite/gdb.perf/gmonster-runto-main.py | 2 +-
gdb/testsuite/gdb.perf/gmonster-select-file.py | 2 +-
gdb/testsuite/gdb.perf/gmonster1-null-lookup.exp | 2 +-
.../gdb.perf/gmonster1-pervasive-typedef.exp | 2 +-
gdb/testsuite/gdb.perf/gmonster1-print-cerr.exp | 2 +-
gdb/testsuite/gdb.perf/gmonster1-ptype-string.exp | 2 +-
gdb/testsuite/gdb.perf/gmonster1-runto-main.exp | 2 +-
gdb/testsuite/gdb.perf/gmonster1-select-file.exp | 2 +-
gdb/testsuite/gdb.perf/gmonster1.cc | 2 +-
gdb/testsuite/gdb.perf/gmonster1.exp | 2 +-
gdb/testsuite/gdb.perf/gmonster2-null-lookup.exp | 2 +-
.../gdb.perf/gmonster2-pervasive-typedef.exp | 2 +-
gdb/testsuite/gdb.perf/gmonster2-print-cerr.exp | 2 +-
gdb/testsuite/gdb.perf/gmonster2-ptype-string.exp | 2 +-
gdb/testsuite/gdb.perf/gmonster2-runto-main.exp | 2 +-
gdb/testsuite/gdb.perf/gmonster2-select-file.exp | 2 +-
gdb/testsuite/gdb.perf/gmonster2.cc | 2 +-
gdb/testsuite/gdb.perf/gmonster2.exp | 2 +-
gdb/testsuite/gdb.perf/lib/perftest/__init__.py | 2 +-
gdb/testsuite/gdb.perf/lib/perftest/measure.py | 2 +-
gdb/testsuite/gdb.perf/lib/perftest/perftest.py | 2 +-
gdb/testsuite/gdb.perf/lib/perftest/reporter.py | 2 +-
gdb/testsuite/gdb.perf/lib/perftest/testresult.py | 2 +-
gdb/testsuite/gdb.perf/lib/perftest/utils.py | 2 +-
gdb/testsuite/gdb.perf/single-step.c | 2 +-
gdb/testsuite/gdb.perf/single-step.exp | 2 +-
gdb/testsuite/gdb.perf/single-step.py | 2 +-
gdb/testsuite/gdb.perf/skip-command.cc | 2 +-
gdb/testsuite/gdb.perf/skip-command.exp | 2 +-
gdb/testsuite/gdb.perf/skip-command.py | 2 +-
gdb/testsuite/gdb.perf/skip-prologue.c | 2 +-
gdb/testsuite/gdb.perf/skip-prologue.exp | 2 +-
gdb/testsuite/gdb.perf/skip-prologue.py | 2 +-
gdb/testsuite/gdb.perf/solib.c | 2 +-
gdb/testsuite/gdb.perf/solib.exp | 2 +-
gdb/testsuite/gdb.perf/solib.py | 2 +-
gdb/testsuite/gdb.perf/template-breakpoints.cc | 97 +
gdb/testsuite/gdb.perf/template-breakpoints.exp | 65 +
gdb/testsuite/gdb.perf/template-breakpoints.py | 33 +
.../gdb.python/amd64-py-framefilter-invalidarg.S | 2 +-
gdb/testsuite/gdb.python/lib-types.cc | 2 +-
gdb/testsuite/gdb.python/lib-types.exp | 2 +-
gdb/testsuite/gdb.python/py-arch.c | 2 +-
gdb/testsuite/gdb.python/py-arch.exp | 2 +-
gdb/testsuite/gdb.python/py-as-string.c | 2 +-
gdb/testsuite/gdb.python/py-as-string.exp | 2 +-
gdb/testsuite/gdb.python/py-bad-printers.c | 2 +-
gdb/testsuite/gdb.python/py-bad-printers.exp | 2 +-
gdb/testsuite/gdb.python/py-bad-printers.py | 2 +-
gdb/testsuite/gdb.python/py-block.c | 2 +-
gdb/testsuite/gdb.python/py-block.exp | 2 +-
.../gdb.python/py-breakpoint-create-fail.c | 2 +-
.../gdb.python/py-breakpoint-create-fail.exp | 2 +-
.../gdb.python/py-breakpoint-create-fail.py | 2 +-
gdb/testsuite/gdb.python/py-breakpoint.c | 12 +-
gdb/testsuite/gdb.python/py-breakpoint.exp | 941 +-
gdb/testsuite/gdb.python/py-caller-is.c | 2 +-
gdb/testsuite/gdb.python/py-caller-is.exp | 2 +-
gdb/testsuite/gdb.python/py-cmd.c | 2 +-
gdb/testsuite/gdb.python/py-cmd.exp | 68 +-
gdb/testsuite/gdb.python/py-completion.exp | 2 +-
gdb/testsuite/gdb.python/py-completion.py | 2 +-
gdb/testsuite/gdb.python/py-error.exp | 2 +-
gdb/testsuite/gdb.python/py-error.py | 2 +-
gdb/testsuite/gdb.python/py-events-shlib.c | 2 +-
gdb/testsuite/gdb.python/py-events.c | 2 +-
gdb/testsuite/gdb.python/py-events.exp | 4 +-
gdb/testsuite/gdb.python/py-events.py | 2 +-
gdb/testsuite/gdb.python/py-evsignal.exp | 5 +-
gdb/testsuite/gdb.python/py-evthreads.c | 2 +-
gdb/testsuite/gdb.python/py-evthreads.exp | 15 +-
gdb/testsuite/gdb.python/py-explore-cc.exp | 2 +-
gdb/testsuite/gdb.python/py-explore.c | 2 +-
gdb/testsuite/gdb.python/py-explore.cc | 2 +-
gdb/testsuite/gdb.python/py-explore.exp | 2 +-
gdb/testsuite/gdb.python/py-finish-breakpoint.c | 2 +-
gdb/testsuite/gdb.python/py-finish-breakpoint.exp | 2 +-
gdb/testsuite/gdb.python/py-finish-breakpoint.py | 2 +-
gdb/testsuite/gdb.python/py-finish-breakpoint2.cc | 2 +-
gdb/testsuite/gdb.python/py-finish-breakpoint2.exp | 2 +-
gdb/testsuite/gdb.python/py-finish-breakpoint2.py | 2 +-
gdb/testsuite/gdb.python/py-frame-args.c | 2 +-
gdb/testsuite/gdb.python/py-frame-args.exp | 2 +-
gdb/testsuite/gdb.python/py-frame-args.py | 2 +-
gdb/testsuite/gdb.python/py-frame-inline.c | 2 +-
gdb/testsuite/gdb.python/py-frame-inline.exp | 2 +-
gdb/testsuite/gdb.python/py-frame.exp | 2 +-
gdb/testsuite/gdb.python/py-framefilter-gdb.py.in | 2 +-
.../gdb.python/py-framefilter-invalidarg-gdb.py.in | 2 +-
.../gdb.python/py-framefilter-invalidarg.exp | 2 +-
.../gdb.python/py-framefilter-invalidarg.py | 2 +-
gdb/testsuite/gdb.python/py-framefilter-mi.c | 2 +-
gdb/testsuite/gdb.python/py-framefilter-mi.exp | 10 +-
gdb/testsuite/gdb.python/py-framefilter.c | 2 +-
gdb/testsuite/gdb.python/py-framefilter.exp | 13 +-
gdb/testsuite/gdb.python/py-framefilter.py | 8 +-
gdb/testsuite/gdb.python/py-function.exp | 2 +-
gdb/testsuite/gdb.python/py-inferior.exp | 81 +-
gdb/testsuite/gdb.python/py-infthread.exp | 23 +-
gdb/testsuite/gdb.python/py-lazy-string.c | 2 +-
gdb/testsuite/gdb.python/py-lazy-string.exp | 2 +-
gdb/testsuite/gdb.python/py-linetable.S | 2 +-
gdb/testsuite/gdb.python/py-linetable.c | 2 +-
gdb/testsuite/gdb.python/py-linetable.exp | 2 +-
gdb/testsuite/gdb.python/py-lookup-type.exp | 2 +-
gdb/testsuite/gdb.python/py-mi-events-gdb.py | 2 +-
gdb/testsuite/gdb.python/py-mi-events.c | 2 +-
gdb/testsuite/gdb.python/py-mi-events.exp | 2 +-
gdb/testsuite/gdb.python/py-mi-objfile-gdb.py | 2 +-
gdb/testsuite/gdb.python/py-mi-objfile.c | 2 +-
gdb/testsuite/gdb.python/py-mi-objfile.exp | 2 +-
.../gdb.python/py-mi-var-info-path-expression.c | 62 +
.../gdb.python/py-mi-var-info-path-expression.exp | 88 +
.../gdb.python/py-mi-var-info-path-expression.py | 57 +
gdb/testsuite/gdb.python/py-mi.exp | 24 +-
gdb/testsuite/gdb.python/py-objfile-script-gdb.py | 2 +-
gdb/testsuite/gdb.python/py-objfile-script.c | 2 +-
gdb/testsuite/gdb.python/py-objfile-script.exp | 2 +-
gdb/testsuite/gdb.python/py-objfile.c | 2 +-
gdb/testsuite/gdb.python/py-objfile.exp | 11 +-
gdb/testsuite/gdb.python/py-parameter.exp | 45 +-
gdb/testsuite/gdb.python/py-pp-integral.c | 2 +-
gdb/testsuite/gdb.python/py-pp-integral.exp | 2 +-
gdb/testsuite/gdb.python/py-pp-integral.py | 2 +-
gdb/testsuite/gdb.python/py-pp-maint.c | 2 +-
gdb/testsuite/gdb.python/py-pp-maint.exp | 2 +-
gdb/testsuite/gdb.python/py-pp-maint.py | 2 +-
gdb/testsuite/gdb.python/py-pp-re-notag.c | 2 +-
gdb/testsuite/gdb.python/py-pp-re-notag.exp | 2 +-
gdb/testsuite/gdb.python/py-pp-re-notag.py | 2 +-
gdb/testsuite/gdb.python/py-pp-registration.c | 2 +-
gdb/testsuite/gdb.python/py-pp-registration.exp | 2 +-
gdb/testsuite/gdb.python/py-pp-registration.py | 2 +-
gdb/testsuite/gdb.python/py-prettyprint.c | 24 +-
gdb/testsuite/gdb.python/py-prettyprint.exp | 35 +-
gdb/testsuite/gdb.python/py-prettyprint.py | 72 +-
gdb/testsuite/gdb.python/py-progspace.c | 2 +-
gdb/testsuite/gdb.python/py-progspace.exp | 33 +-
gdb/testsuite/gdb.python/py-prompt.c | 2 +-
gdb/testsuite/gdb.python/py-prompt.exp | 2 +-
gdb/testsuite/gdb.python/py-rbreak-func2.c | 34 +
gdb/testsuite/gdb.python/py-rbreak.c | 70 +
gdb/testsuite/gdb.python/py-rbreak.exp | 62 +
.../gdb.python/py-record-btrace-threads.c | 58 +
.../gdb.python/py-record-btrace-threads.exp | 81 +
gdb/testsuite/gdb.python/py-record-btrace.c | 2 +-
gdb/testsuite/gdb.python/py-record-btrace.exp | 8 +-
gdb/testsuite/gdb.python/py-record-full.c | 2 +-
gdb/testsuite/gdb.python/py-record-full.exp | 2 +-
gdb/testsuite/gdb.python/py-recurse-unwind.c | 2 +-
gdb/testsuite/gdb.python/py-recurse-unwind.exp | 2 +-
gdb/testsuite/gdb.python/py-recurse-unwind.py | 2 +-
gdb/testsuite/gdb.python/py-rvalue-ref-value-cc.cc | 2 +-
.../gdb.python/py-rvalue-ref-value-cc.exp | 2 +-
gdb/testsuite/gdb.python/py-section-script.c | 2 +-
gdb/testsuite/gdb.python/py-section-script.exp | 4 +-
gdb/testsuite/gdb.python/py-section-script.py | 2 +-
gdb/testsuite/gdb.python/py-shared-sl.c | 2 +-
gdb/testsuite/gdb.python/py-shared.c | 2 +-
gdb/testsuite/gdb.python/py-shared.exp | 2 +-
gdb/testsuite/gdb.python/py-strfns.c | 2 +-
gdb/testsuite/gdb.python/py-strfns.exp | 2 +-
gdb/testsuite/gdb.python/py-symbol.c | 2 +-
gdb/testsuite/gdb.python/py-symbol.exp | 2 +-
gdb/testsuite/gdb.python/py-symtab.exp | 5 +-
gdb/testsuite/gdb.python/py-sync-interp.c | 2 +-
gdb/testsuite/gdb.python/py-sync-interp.exp | 2 +-
gdb/testsuite/gdb.python/py-template.cc | 2 +-
gdb/testsuite/gdb.python/py-template.exp | 6 +-
gdb/testsuite/gdb.python/py-thrhandle.c | 94 +
gdb/testsuite/gdb.python/py-thrhandle.exp | 106 +
gdb/testsuite/gdb.python/py-type.c | 4 +-
gdb/testsuite/gdb.python/py-type.exp | 6 +-
gdb/testsuite/gdb.python/py-typeprint.cc | 2 +-
gdb/testsuite/gdb.python/py-typeprint.exp | 2 +-
gdb/testsuite/gdb.python/py-typeprint.py | 2 +-
gdb/testsuite/gdb.python/py-unwind-maint.c | 2 +-
gdb/testsuite/gdb.python/py-unwind-maint.exp | 2 +-
gdb/testsuite/gdb.python/py-unwind-maint.py | 2 +-
gdb/testsuite/gdb.python/py-unwind.c | 2 +-
gdb/testsuite/gdb.python/py-unwind.exp | 12 +-
gdb/testsuite/gdb.python/py-unwind.py | 2 +-
gdb/testsuite/gdb.python/py-value-cc.cc | 2 +-
gdb/testsuite/gdb.python/py-value-cc.exp | 2 +-
gdb/testsuite/gdb.python/py-value.c | 2 +-
gdb/testsuite/gdb.python/py-value.exp | 34 +-
gdb/testsuite/gdb.python/py-xmethods.cc | 2 +-
gdb/testsuite/gdb.python/py-xmethods.exp | 2 +-
gdb/testsuite/gdb.python/py-xmethods.py | 2 +-
gdb/testsuite/gdb.python/python-1.c | 2 +-
gdb/testsuite/gdb.python/python.c | 2 +-
gdb/testsuite/gdb.python/python.exp | 54 +-
gdb/testsuite/gdb.python/source1 | 2 +-
gdb/testsuite/gdb.python/source2.py | 2 +-
gdb/testsuite/gdb.reverse/amd64-tailcall-reverse.S | 2 +-
gdb/testsuite/gdb.reverse/amd64-tailcall-reverse.c | 2 +-
.../gdb.reverse/amd64-tailcall-reverse.exp | 2 +-
gdb/testsuite/gdb.reverse/break-precsave.exp | 2 +-
gdb/testsuite/gdb.reverse/break-reverse.c | 2 +-
gdb/testsuite/gdb.reverse/break-reverse.exp | 2 +-
gdb/testsuite/gdb.reverse/consecutive-precsave.exp | 2 +-
gdb/testsuite/gdb.reverse/consecutive-reverse.c | 2 +-
gdb/testsuite/gdb.reverse/consecutive-reverse.exp | 2 +-
gdb/testsuite/gdb.reverse/finish-precsave.exp | 2 +-
gdb/testsuite/gdb.reverse/finish-reverse-bkpt.exp | 2 +-
gdb/testsuite/gdb.reverse/finish-reverse.c | 2 +-
gdb/testsuite/gdb.reverse/finish-reverse.exp | 2 +-
gdb/testsuite/gdb.reverse/fstatat-reverse.c | 2 +-
gdb/testsuite/gdb.reverse/fstatat-reverse.exp | 2 +-
gdb/testsuite/gdb.reverse/getresuid-reverse.c | 2 +-
gdb/testsuite/gdb.reverse/getresuid-reverse.exp | 2 +-
gdb/testsuite/gdb.reverse/i386-precsave.exp | 98 +-
gdb/testsuite/gdb.reverse/i386-reverse.c | 2 +-
gdb/testsuite/gdb.reverse/i386-reverse.exp | 98 +-
gdb/testsuite/gdb.reverse/i386-sse-reverse.c | 2 +-
gdb/testsuite/gdb.reverse/i386-sse-reverse.exp | 96 +-
gdb/testsuite/gdb.reverse/i387-env-reverse.exp | 64 +-
gdb/testsuite/gdb.reverse/i387-stack-reverse.exp | 128 +-
gdb/testsuite/gdb.reverse/insn-reverse-aarch64.c | 2 +-
gdb/testsuite/gdb.reverse/insn-reverse-arm.c | 2 +-
gdb/testsuite/gdb.reverse/insn-reverse-x86.c | 2 +-
gdb/testsuite/gdb.reverse/insn-reverse.c | 2 +-
gdb/testsuite/gdb.reverse/insn-reverse.exp | 2 +-
.../gdb.reverse/machinestate-precsave.exp | 2 +-
gdb/testsuite/gdb.reverse/machinestate.c | 2 +-
gdb/testsuite/gdb.reverse/machinestate.exp | 2 +-
gdb/testsuite/gdb.reverse/ms1.c | 2 +-
.../gdb.reverse/next-reverse-bkpt-over-sr.exp | 2 +-
gdb/testsuite/gdb.reverse/pipe-reverse.c | 2 +-
gdb/testsuite/gdb.reverse/pipe-reverse.exp | 2 +-
gdb/testsuite/gdb.reverse/readv-reverse.c | 2 +-
gdb/testsuite/gdb.reverse/readv-reverse.exp | 2 +-
gdb/testsuite/gdb.reverse/recvmsg-reverse.c | 2 +-
gdb/testsuite/gdb.reverse/recvmsg-reverse.exp | 2 +-
gdb/testsuite/gdb.reverse/rerun-prec.c | 2 +-
gdb/testsuite/gdb.reverse/rerun-prec.exp | 2 +-
gdb/testsuite/gdb.reverse/s390-mvcle.c | 2 +-
gdb/testsuite/gdb.reverse/s390-mvcle.exp | 2 +-
gdb/testsuite/gdb.reverse/shr.h | 2 +-
gdb/testsuite/gdb.reverse/shr1.c | 2 +-
gdb/testsuite/gdb.reverse/shr2.c | 2 +-
gdb/testsuite/gdb.reverse/sigall-precsave.exp | 2 +-
gdb/testsuite/gdb.reverse/sigall-reverse.c | 2 +-
gdb/testsuite/gdb.reverse/sigall-reverse.exp | 2 +-
.../gdb.reverse/singlejmp-reverse-nodebug.S | 2 +-
.../gdb.reverse/singlejmp-reverse-nodebug.c | 2 +-
gdb/testsuite/gdb.reverse/singlejmp-reverse.S | 2 +-
gdb/testsuite/gdb.reverse/singlejmp-reverse.c | 2 +-
gdb/testsuite/gdb.reverse/singlejmp-reverse.exp | 2 +-
gdb/testsuite/gdb.reverse/solib-precsave.exp | 2 +-
gdb/testsuite/gdb.reverse/solib-reverse.c | 2 +-
gdb/testsuite/gdb.reverse/solib-reverse.exp | 2 +-
.../gdb.reverse/step-indirect-call-thunk.c | 36 +
.../gdb.reverse/step-indirect-call-thunk.exp | 100 +
gdb/testsuite/gdb.reverse/step-precsave.exp | 2 +-
gdb/testsuite/gdb.reverse/step-reverse.c | 2 +-
gdb/testsuite/gdb.reverse/step-reverse.exp | 2 +-
gdb/testsuite/gdb.reverse/time-reverse.c | 2 +-
gdb/testsuite/gdb.reverse/time-reverse.exp | 2 +-
gdb/testsuite/gdb.reverse/until-precsave.exp | 2 +-
gdb/testsuite/gdb.reverse/until-reverse.c | 2 +-
gdb/testsuite/gdb.reverse/until-reverse.exp | 2 +-
gdb/testsuite/gdb.reverse/ur1.c | 2 +-
gdb/testsuite/gdb.reverse/waitpid-reverse.c | 2 +-
gdb/testsuite/gdb.reverse/waitpid-reverse.exp | 2 +-
gdb/testsuite/gdb.reverse/watch-precsave.exp | 2 +-
gdb/testsuite/gdb.reverse/watch-reverse.c | 2 +-
gdb/testsuite/gdb.reverse/watch-reverse.exp | 2 +-
gdb/testsuite/gdb.rust/expr.exp | 6 +-
gdb/testsuite/gdb.rust/generics.exp | 2 +-
gdb/testsuite/gdb.rust/generics.rs | 2 +-
gdb/testsuite/gdb.rust/methods.exp | 2 +-
gdb/testsuite/gdb.rust/methods.rs | 2 +-
gdb/testsuite/gdb.rust/modules.exp | 22 +-
gdb/testsuite/gdb.rust/modules.rs | 8 +-
gdb/testsuite/gdb.rust/simple.exp | 109 +-
gdb/testsuite/gdb.rust/simple.rs | 27 +-
gdb/testsuite/gdb.rust/traits.exp | 47 +
gdb/testsuite/gdb.rust/traits.rs | 37 +
gdb/testsuite/gdb.rust/unsized.exp | 35 +
gdb/testsuite/gdb.rust/unsized.rs | 33 +
gdb/testsuite/gdb.rust/watch.exp | 35 +
gdb/testsuite/gdb.rust/watch.rs | 24 +
gdb/testsuite/gdb.server/abspath.exp | 58 +
gdb/testsuite/gdb.server/connect-stopped-target.c | 2 +-
.../gdb.server/connect-stopped-target.exp | 2 +-
.../gdb.server/connect-with-no-symbol-file.c | 2 +-
.../gdb.server/connect-with-no-symbol-file.exp | 2 +-
.../gdb.server/connect-without-multi-process.c | 2 +-
.../gdb.server/connect-without-multi-process.exp | 2 +-
gdb/testsuite/gdb.server/ext-attach.c | 2 +-
gdb/testsuite/gdb.server/ext-attach.exp | 4 +-
gdb/testsuite/gdb.server/ext-restart.exp | 4 +-
gdb/testsuite/gdb.server/ext-run.exp | 4 +-
gdb/testsuite/gdb.server/ext-wrapper.exp | 4 +-
gdb/testsuite/gdb.server/extended-remote-restart.c | 60 +
.../gdb.server/extended-remote-restart.exp | 132 +
gdb/testsuite/gdb.server/file-transfer.exp | 2 +-
gdb/testsuite/gdb.server/multi-client.exp | 117 +-
gdb/testsuite/gdb.server/no-thread-db.c | 2 +-
gdb/testsuite/gdb.server/no-thread-db.exp | 2 +-
gdb/testsuite/gdb.server/non-existing-program.exp | 14 +-
gdb/testsuite/gdb.server/normal.c | 24 +
gdb/testsuite/gdb.server/reconnect-ctrl-c.c | 28 +
gdb/testsuite/gdb.server/reconnect-ctrl-c.exp | 72 +
.../gdb.server/run-without-local-binary.exp | 62 +
gdb/testsuite/gdb.server/server-connect.exp | 111 +
gdb/testsuite/gdb.server/server-exec-info.exp | 2 +-
gdb/testsuite/gdb.server/server-kill.c | 2 +-
gdb/testsuite/gdb.server/server-kill.exp | 4 +-
gdb/testsuite/gdb.server/server-mon.exp | 2 +-
gdb/testsuite/gdb.server/server-run.exp | 2 +-
gdb/testsuite/gdb.server/server.c | 2 +-
gdb/testsuite/gdb.server/solib-list-lib.c | 2 +-
gdb/testsuite/gdb.server/solib-list-main.c | 2 +-
gdb/testsuite/gdb.server/solib-list.exp | 4 +-
gdb/testsuite/gdb.server/stop-reply-no-thread.c | 22 +
gdb/testsuite/gdb.server/stop-reply-no-thread.exp | 74 +
gdb/testsuite/gdb.server/unittest.exp | 48 +
gdb/testsuite/gdb.server/wrapper.c | 2 +-
gdb/testsuite/gdb.server/wrapper.exp | 2 +-
gdb/testsuite/gdb.stabs/exclfwd.exp | 2 +-
gdb/testsuite/gdb.stabs/exclfwd.h | 2 +-
gdb/testsuite/gdb.stabs/exclfwd1.c | 2 +-
gdb/testsuite/gdb.stabs/exclfwd2.c | 2 +-
gdb/testsuite/gdb.stabs/gdb11479.c | 2 +-
gdb/testsuite/gdb.stabs/gdb11479.exp | 2 +-
gdb/testsuite/gdb.stabs/weird.exp | 4 +-
gdb/testsuite/gdb.threads/attach-into-signal.c | 2 +-
gdb/testsuite/gdb.threads/attach-into-signal.exp | 103 +-
.../gdb.threads/attach-many-short-lived-threads.c | 2 +-
.../attach-many-short-lived-threads.exp | 2 +-
gdb/testsuite/gdb.threads/attach-slow-waitpid.c | 77 +
gdb/testsuite/gdb.threads/attach-slow-waitpid.exp | 100 +
gdb/testsuite/gdb.threads/attach-stopped.c | 2 +-
gdb/testsuite/gdb.threads/attach-stopped.exp | 4 +-
gdb/testsuite/gdb.threads/bp_in_thread.c | 2 +-
gdb/testsuite/gdb.threads/bp_in_thread.exp | 2 +-
gdb/testsuite/gdb.threads/break-while-running.c | 2 +-
gdb/testsuite/gdb.threads/break-while-running.exp | 2 +-
gdb/testsuite/gdb.threads/check-libthread-db.c | 75 +
gdb/testsuite/gdb.threads/check-libthread-db.exp | 114 +
gdb/testsuite/gdb.threads/clone-attach-detach.c | 2 +-
gdb/testsuite/gdb.threads/clone-attach-detach.exp | 6 +-
gdb/testsuite/gdb.threads/clone-new-thread-event.c | 2 +-
.../gdb.threads/clone-new-thread-event.exp | 2 +-
gdb/testsuite/gdb.threads/clone-thread_db.c | 2 +-
gdb/testsuite/gdb.threads/clone-thread_db.exp | 2 +-
.../gdb.threads/continue-pending-after-query.c | 2 +-
.../gdb.threads/continue-pending-after-query.exp | 2 +-
.../gdb.threads/continue-pending-status.c | 2 +-
.../gdb.threads/continue-pending-status.exp | 2 +-
gdb/testsuite/gdb.threads/corethreads.c | 2 +-
gdb/testsuite/gdb.threads/corethreads.exp | 2 +-
gdb/testsuite/gdb.threads/create-fail.c | 2 +-
gdb/testsuite/gdb.threads/create-fail.exp | 2 +-
gdb/testsuite/gdb.threads/current-lwp-dead.c | 2 +-
gdb/testsuite/gdb.threads/current-lwp-dead.exp | 2 +-
gdb/testsuite/gdb.threads/dlopen-libpthread-lib.c | 2 +-
gdb/testsuite/gdb.threads/dlopen-libpthread.c | 2 +-
gdb/testsuite/gdb.threads/dlopen-libpthread.exp | 2 +-
gdb/testsuite/gdb.threads/execl.c | 2 +-
gdb/testsuite/gdb.threads/execl.exp | 2 +-
gdb/testsuite/gdb.threads/execl1.c | 2 +-
gdb/testsuite/gdb.threads/fork-child-threads.c | 2 +-
gdb/testsuite/gdb.threads/fork-child-threads.exp | 2 +-
gdb/testsuite/gdb.threads/fork-plus-threads.c | 2 +-
gdb/testsuite/gdb.threads/fork-plus-threads.exp | 2 +-
gdb/testsuite/gdb.threads/fork-thread-pending.c | 2 +-
gdb/testsuite/gdb.threads/fork-thread-pending.exp | 2 +-
.../gdb.threads/forking-threads-plus-breakpoint.c | 2 +-
.../forking-threads-plus-breakpoint.exp | 2 +-
gdb/testsuite/gdb.threads/gcore-stale-thread.c | 2 +-
gdb/testsuite/gdb.threads/gcore-stale-thread.exp | 2 +-
gdb/testsuite/gdb.threads/gcore-thread.exp | 2 +-
gdb/testsuite/gdb.threads/hand-call-in-threads.c | 2 +-
gdb/testsuite/gdb.threads/hand-call-in-threads.exp | 2 +-
gdb/testsuite/gdb.threads/hand-call-new-thread.c | 2 +-
gdb/testsuite/gdb.threads/hand-call-new-thread.exp | 2 +-
gdb/testsuite/gdb.threads/ia64-sigill.c | 2 +-
gdb/testsuite/gdb.threads/ia64-sigill.exp | 2 +-
gdb/testsuite/gdb.threads/info-threads-cur-sal-2.c | 2 +-
gdb/testsuite/gdb.threads/info-threads-cur-sal.c | 2 +-
gdb/testsuite/gdb.threads/info-threads-cur-sal.exp | 2 +-
.../gdb.threads/interrupt-while-step-over.c | 2 +-
.../gdb.threads/interrupt-while-step-over.exp | 2 +-
gdb/testsuite/gdb.threads/interrupted-hand-call.c | 2 +-
.../gdb.threads/interrupted-hand-call.exp | 2 +-
gdb/testsuite/gdb.threads/kill.c | 2 +-
gdb/testsuite/gdb.threads/kill.exp | 10 +-
gdb/testsuite/gdb.threads/killed.c | 2 +-
gdb/testsuite/gdb.threads/killed.exp | 2 +-
gdb/testsuite/gdb.threads/leader-exit.c | 2 +-
gdb/testsuite/gdb.threads/leader-exit.exp | 2 +-
gdb/testsuite/gdb.threads/linux-dp.exp | 2 +-
.../gdb.threads/local-watch-wrong-thread.c | 2 +-
.../gdb.threads/local-watch-wrong-thread.exp | 2 +-
gdb/testsuite/gdb.threads/manythreads.c | 2 +-
gdb/testsuite/gdb.threads/manythreads.exp | 2 +-
.../gdb.threads/multi-create-ns-info-thr.exp | 2 +-
gdb/testsuite/gdb.threads/multi-create.c | 2 +-
gdb/testsuite/gdb.threads/multi-create.exp | 2 +-
gdb/testsuite/gdb.threads/multiple-step-overs.c | 2 +-
gdb/testsuite/gdb.threads/multiple-step-overs.exp | 2 +-
.../gdb.threads/multiple-successive-infcall.c | 111 +
.../gdb.threads/multiple-successive-infcall.exp | 61 +
gdb/testsuite/gdb.threads/names.c | 2 +-
gdb/testsuite/gdb.threads/names.exp | 4 +-
gdb/testsuite/gdb.threads/next-bp-other-thread.c | 2 +-
gdb/testsuite/gdb.threads/next-bp-other-thread.exp | 2 +-
.../gdb.threads/next-while-other-thread-longjmps.c | 2 +-
.../next-while-other-thread-longjmps.exp | 2 +-
gdb/testsuite/gdb.threads/no-unwaited-for-left.c | 2 +-
gdb/testsuite/gdb.threads/no-unwaited-for-left.exp | 2 +-
gdb/testsuite/gdb.threads/non-ldr-exc-1.c | 2 +-
gdb/testsuite/gdb.threads/non-ldr-exc-1.exp | 7 +-
gdb/testsuite/gdb.threads/non-ldr-exc-2.c | 2 +-
gdb/testsuite/gdb.threads/non-ldr-exc-2.exp | 7 +-
gdb/testsuite/gdb.threads/non-ldr-exc-3.c | 2 +-
gdb/testsuite/gdb.threads/non-ldr-exc-3.exp | 7 +-
gdb/testsuite/gdb.threads/non-ldr-exc-4.c | 2 +-
gdb/testsuite/gdb.threads/non-ldr-exc-4.exp | 7 +-
gdb/testsuite/gdb.threads/non-ldr-exit.c | 2 +-
gdb/testsuite/gdb.threads/non-ldr-exit.exp | 2 +-
gdb/testsuite/gdb.threads/non-stop-fair-events.c | 2 +-
gdb/testsuite/gdb.threads/non-stop-fair-events.exp | 2 +-
gdb/testsuite/gdb.threads/pending-step.c | 2 +-
gdb/testsuite/gdb.threads/pending-step.exp | 2 +-
gdb/testsuite/gdb.threads/print-threads.exp | 2 +-
.../gdb.threads/process-dies-while-detaching.c | 24 +-
.../gdb.threads/process-dies-while-detaching.exp | 61 +-
.../gdb.threads/process-dies-while-handling-bp.c | 2 +-
.../gdb.threads/process-dies-while-handling-bp.exp | 2 +-
gdb/testsuite/gdb.threads/pthread_cond_wait.c | 2 +-
gdb/testsuite/gdb.threads/pthread_cond_wait.exp | 2 +-
gdb/testsuite/gdb.threads/pthreads.c | 2 +-
gdb/testsuite/gdb.threads/pthreads.exp | 85 +-
gdb/testsuite/gdb.threads/queue-signal.c | 2 +-
gdb/testsuite/gdb.threads/queue-signal.exp | 2 +-
gdb/testsuite/gdb.threads/reconnect-signal.c | 2 +-
gdb/testsuite/gdb.threads/reconnect-signal.exp | 2 +-
gdb/testsuite/gdb.threads/schedlock.c | 2 +-
gdb/testsuite/gdb.threads/schedlock.exp | 2 +-
gdb/testsuite/gdb.threads/siginfo-threads.c | 2 +-
gdb/testsuite/gdb.threads/siginfo-threads.exp | 9 +-
.../gdb.threads/signal-command-handle-nopass.c | 2 +-
.../gdb.threads/signal-command-handle-nopass.exp | 2 +-
.../signal-command-multiple-signals-pending.c | 2 +-
.../signal-command-multiple-signals-pending.exp | 2 +-
.../gdb.threads/signal-delivered-right-thread.c | 2 +-
.../gdb.threads/signal-delivered-right-thread.exp | 2 +-
gdb/testsuite/gdb.threads/signal-sigtrap.c | 2 +-
gdb/testsuite/gdb.threads/signal-sigtrap.exp | 2 +-
.../signal-while-stepping-over-bp-other-thread.c | 2 +-
.../signal-while-stepping-over-bp-other-thread.exp | 2 +-
gdb/testsuite/gdb.threads/sigstep-threads.c | 2 +-
gdb/testsuite/gdb.threads/sigstep-threads.exp | 2 +-
gdb/testsuite/gdb.threads/sigthread.exp | 2 +-
gdb/testsuite/gdb.threads/slow-waitpid.c | 342 +
gdb/testsuite/gdb.threads/staticthreads.c | 2 +-
gdb/testsuite/gdb.threads/staticthreads.exp | 2 +-
.../gdb.threads/step-bg-decr-pc-switch-thread.c | 2 +-
.../gdb.threads/step-bg-decr-pc-switch-thread.exp | 2 +-
.../gdb.threads/step-over-lands-on-breakpoint.c | 2 +-
.../gdb.threads/step-over-lands-on-breakpoint.exp | 2 +-
.../gdb.threads/step-over-trips-on-watchpoint.c | 2 +-
.../gdb.threads/step-over-trips-on-watchpoint.exp | 2 +-
gdb/testsuite/gdb.threads/stepi-random-signal.c | 2 +-
gdb/testsuite/gdb.threads/stepi-random-signal.exp | 2 +-
gdb/testsuite/gdb.threads/switch-threads.c | 2 +-
gdb/testsuite/gdb.threads/switch-threads.exp | 2 +-
gdb/testsuite/gdb.threads/thread-execl.c | 2 +-
gdb/testsuite/gdb.threads/thread-execl.exp | 2 +-
gdb/testsuite/gdb.threads/thread-find.exp | 2 +-
gdb/testsuite/gdb.threads/thread-specific-bp.c | 2 +-
gdb/testsuite/gdb.threads/thread-specific-bp.exp | 2 +-
gdb/testsuite/gdb.threads/thread-specific.c | 2 +-
gdb/testsuite/gdb.threads/thread-specific.exp | 2 +-
.../gdb.threads/thread-unwindonsignal.exp | 2 +-
gdb/testsuite/gdb.threads/thread_check.c | 2 +-
gdb/testsuite/gdb.threads/thread_check.exp | 2 +-
gdb/testsuite/gdb.threads/thread_events.c | 2 +-
gdb/testsuite/gdb.threads/thread_events.exp | 9 +-
gdb/testsuite/gdb.threads/threadapply.c | 2 +-
gdb/testsuite/gdb.threads/threadapply.exp | 171 +-
gdb/testsuite/gdb.threads/threxit-hop-specific.c | 2 +-
gdb/testsuite/gdb.threads/threxit-hop-specific.exp | 2 +-
gdb/testsuite/gdb.threads/tid-reuse.c | 2 +-
gdb/testsuite/gdb.threads/tid-reuse.exp | 2 +-
gdb/testsuite/gdb.threads/tls-core.c | 39 +
gdb/testsuite/gdb.threads/tls-core.exp | 77 +
gdb/testsuite/gdb.threads/tls-nodebug-pie.c | 28 +
gdb/testsuite/gdb.threads/tls-nodebug-pie.exp | 29 +
gdb/testsuite/gdb.threads/tls-nodebug.exp | 7 +-
gdb/testsuite/gdb.threads/tls-shared.exp | 2 +-
gdb/testsuite/gdb.threads/tls-so_extern.c | 2 +-
gdb/testsuite/gdb.threads/tls-so_extern.exp | 2 +-
gdb/testsuite/gdb.threads/tls-so_extern_main.c | 2 +-
gdb/testsuite/gdb.threads/tls-var-main.c | 2 +-
gdb/testsuite/gdb.threads/tls-var.c | 2 +-
gdb/testsuite/gdb.threads/tls-var.exp | 2 +-
gdb/testsuite/gdb.threads/tls.exp | 2 +-
gdb/testsuite/gdb.threads/tls2.c | 2 +-
gdb/testsuite/gdb.threads/watchpoint-fork-child.c | 2 +-
gdb/testsuite/gdb.threads/watchpoint-fork-mt.c | 2 +-
gdb/testsuite/gdb.threads/watchpoint-fork-parent.c | 2 +-
gdb/testsuite/gdb.threads/watchpoint-fork-st.c | 2 +-
gdb/testsuite/gdb.threads/watchpoint-fork.exp | 2 +-
gdb/testsuite/gdb.threads/watchpoint-fork.h | 2 +-
gdb/testsuite/gdb.threads/watchthreads-reorder.c | 2 +-
gdb/testsuite/gdb.threads/watchthreads-reorder.exp | 2 +-
gdb/testsuite/gdb.threads/watchthreads.c | 2 +-
gdb/testsuite/gdb.threads/watchthreads.exp | 5 +-
gdb/testsuite/gdb.threads/watchthreads2.c | 2 +-
gdb/testsuite/gdb.threads/watchthreads2.exp | 5 +-
gdb/testsuite/gdb.threads/wp-replication.c | 2 +-
gdb/testsuite/gdb.threads/wp-replication.exp | 2 +-
gdb/testsuite/gdb.trace/actions-changed.c | 2 +-
gdb/testsuite/gdb.trace/actions-changed.exp | 9 +-
gdb/testsuite/gdb.trace/actions.c | 2 +-
gdb/testsuite/gdb.trace/actions.exp | 6 +-
gdb/testsuite/gdb.trace/ax.exp | 8 +-
gdb/testsuite/gdb.trace/backtrace.exp | 9 +-
gdb/testsuite/gdb.trace/change-loc-1.c | 2 +-
gdb/testsuite/gdb.trace/change-loc-2.c | 2 +-
gdb/testsuite/gdb.trace/change-loc.c | 2 +-
gdb/testsuite/gdb.trace/change-loc.exp | 7 +-
gdb/testsuite/gdb.trace/change-loc.h | 2 +-
gdb/testsuite/gdb.trace/circ.c | 2 +-
gdb/testsuite/gdb.trace/circ.exp | 6 +-
gdb/testsuite/gdb.trace/collection.c | 2 +-
gdb/testsuite/gdb.trace/collection.exp | 6 +-
gdb/testsuite/gdb.trace/deltrace.exp | 8 +-
gdb/testsuite/gdb.trace/disconnected-tracing.c | 2 +-
gdb/testsuite/gdb.trace/disconnected-tracing.exp | 6 +-
gdb/testsuite/gdb.trace/entry-values.c | 2 +-
gdb/testsuite/gdb.trace/entry-values.exp | 8 +-
gdb/testsuite/gdb.trace/ftrace-lock.c | 2 +-
gdb/testsuite/gdb.trace/ftrace-lock.exp | 14 +-
gdb/testsuite/gdb.trace/ftrace.c | 2 +-
gdb/testsuite/gdb.trace/ftrace.exp | 48 +-
gdb/testsuite/gdb.trace/infotrace.exp | 10 +-
.../gdb.trace/mi-trace-frame-collected.exp | 7 +-
gdb/testsuite/gdb.trace/mi-trace-save.exp | 2 +-
gdb/testsuite/gdb.trace/mi-trace-unavailable.exp | 2 +-
gdb/testsuite/gdb.trace/mi-traceframe-changed.exp | 2 +-
gdb/testsuite/gdb.trace/mi-tracepoint-changed.exp | 6 +-
gdb/testsuite/gdb.trace/mi-tsv-changed.exp | 8 +-
gdb/testsuite/gdb.trace/no-attach-trace.c | 2 +-
gdb/testsuite/gdb.trace/no-attach-trace.exp | 2 +-
gdb/testsuite/gdb.trace/packetlen.exp | 8 +-
gdb/testsuite/gdb.trace/passc-dyn.exp | 8 +-
gdb/testsuite/gdb.trace/passcount.exp | 6 +-
gdb/testsuite/gdb.trace/pending.c | 2 +-
gdb/testsuite/gdb.trace/pending.exp | 7 +-
gdb/testsuite/gdb.trace/pendshr1.c | 2 +-
gdb/testsuite/gdb.trace/pendshr2.c | 2 +-
gdb/testsuite/gdb.trace/pr16508.exp | 2 +-
gdb/testsuite/gdb.trace/qtro.c | 2 +-
gdb/testsuite/gdb.trace/qtro.exp | 4 +-
gdb/testsuite/gdb.trace/range-stepping.c | 2 +-
gdb/testsuite/gdb.trace/range-stepping.exp | 6 +-
gdb/testsuite/gdb.trace/read-memory.c | 2 +-
gdb/testsuite/gdb.trace/read-memory.exp | 4 +-
gdb/testsuite/gdb.trace/report.exp | 8 +-
gdb/testsuite/gdb.trace/save-trace.exp | 6 +-
gdb/testsuite/gdb.trace/signal.c | 2 +-
gdb/testsuite/gdb.trace/signal.exp | 13 +-
gdb/testsuite/gdb.trace/stap-trace.c | 2 +-
gdb/testsuite/gdb.trace/stap-trace.exp | 2 +-
gdb/testsuite/gdb.trace/status-stop.c | 2 +-
gdb/testsuite/gdb.trace/status-stop.exp | 6 +-
gdb/testsuite/gdb.trace/strace.c | 2 +-
gdb/testsuite/gdb.trace/strace.exp | 8 +-
gdb/testsuite/gdb.trace/tfile.c | 2 +-
gdb/testsuite/gdb.trace/tfile.exp | 2 +-
gdb/testsuite/gdb.trace/tfind.exp | 13 +-
gdb/testsuite/gdb.trace/trace-break.c | 2 +-
gdb/testsuite/gdb.trace/trace-break.exp | 37 +-
gdb/testsuite/gdb.trace/trace-buffer-size.c | 2 +-
gdb/testsuite/gdb.trace/trace-buffer-size.exp | 2 +-
gdb/testsuite/gdb.trace/trace-common.h | 5 +-
gdb/testsuite/gdb.trace/trace-condition.c | 2 +-
gdb/testsuite/gdb.trace/trace-condition.exp | 15 +-
gdb/testsuite/gdb.trace/trace-enable-disable.c | 2 +-
gdb/testsuite/gdb.trace/trace-enable-disable.exp | 10 +-
gdb/testsuite/gdb.trace/trace-mt.c | 2 +-
gdb/testsuite/gdb.trace/trace-mt.exp | 15 +-
gdb/testsuite/gdb.trace/trace-unavailable.c | 2 +-
gdb/testsuite/gdb.trace/tracecmd.exp | 6 +-
gdb/testsuite/gdb.trace/tracefile-pseudo-reg.c | 2 +-
gdb/testsuite/gdb.trace/tracefile-pseudo-reg.exp | 2 +-
gdb/testsuite/gdb.trace/tspeed.c | 5 +-
gdb/testsuite/gdb.trace/tspeed.exp | 31 +-
gdb/testsuite/gdb.trace/tstatus.exp | 11 +-
gdb/testsuite/gdb.trace/tsv.exp | 8 +-
gdb/testsuite/gdb.trace/unavailable-dwarf-piece.c | 2 +-
.../gdb.trace/unavailable-dwarf-piece.exp | 14 +-
gdb/testsuite/gdb.trace/unavailable.cc | 2 +-
gdb/testsuite/gdb.trace/unavailable.exp | 6 +-
gdb/testsuite/gdb.trace/while-dyn.exp | 8 +-
gdb/testsuite/gdb.trace/while-stepping.exp | 6 +-
gdb/testsuite/gdb.tui/completion.exp | 38 +-
gdb/testsuite/gdb.tui/tui-disasm-long-lines.c | 2 +-
gdb/testsuite/gdb.tui/tui-disasm-long-lines.exp | 2 +-
gdb/testsuite/gdb.tui/tui-layout.c | 2 +-
gdb/testsuite/gdb.tui/tui-layout.exp | 2 +-
gdb/testsuite/gdb.tui/tui-nl-filtered-output.exp | 2 +-
gdb/testsuite/gdb.xml/extra-regs.xml | 1 +
gdb/testsuite/gdb.xml/maint_print_struct.exp | 2 +-
gdb/testsuite/gdb.xml/maint_print_struct.xml | 2 +-
gdb/testsuite/gdb.xml/tdesc-arch.exp | 2 +-
gdb/testsuite/gdb.xml/tdesc-errors.exp | 2 +-
gdb/testsuite/gdb.xml/tdesc-regs.exp | 12 +-
gdb/testsuite/gdb.xml/tdesc-xinclude.exp | 2 +-
gdb/testsuite/lib/ada.exp | 2 +-
gdb/testsuite/lib/append_gdb_boards_dir.exp | 2 +-
gdb/testsuite/lib/build-piece.exp | 2 +-
gdb/testsuite/lib/cache.exp | 2 +-
gdb/testsuite/lib/cell.exp | 2 +-
gdb/testsuite/lib/cl_util.c | 2 +-
gdb/testsuite/lib/cl_util.h | 2 +-
gdb/testsuite/lib/compile-support.exp | 227 +
gdb/testsuite/lib/compiler.c | 2 +-
gdb/testsuite/lib/compiler.cc | 2 +-
gdb/testsuite/lib/completion-support.exp | 483 +
gdb/testsuite/lib/cp-support.exp | 366 +-
gdb/testsuite/lib/d-support.exp | 2 +-
gdb/testsuite/lib/data-structures.exp | 164 +
gdb/testsuite/lib/dtrace.exp | 2 +-
gdb/testsuite/lib/dwarf.exp | 16 +-
gdb/testsuite/lib/fortran.exp | 2 +-
gdb/testsuite/lib/future.exp | 2 +-
gdb/testsuite/lib/gdb-guile.exp | 2 +-
gdb/testsuite/lib/gdb-python.exp | 18 +-
gdb/testsuite/lib/gdb-utils.exp | 4 +-
gdb/testsuite/lib/gdb.exp | 780 +-
gdb/testsuite/lib/gdbserver-support.exp | 30 +-
gdb/testsuite/lib/gen-perf-test.exp | 2 +-
gdb/testsuite/lib/go.exp | 2 +-
gdb/testsuite/lib/memory.exp | 2 +-
gdb/testsuite/lib/mi-support.exp | 18 +-
gdb/testsuite/lib/objc.exp | 2 +-
gdb/testsuite/lib/opencl.exp | 2 +-
gdb/testsuite/lib/opencl_hostapp.c | 2 +-
gdb/testsuite/lib/pascal.exp | 2 +-
gdb/testsuite/lib/pdtrace.in | 2 +-
gdb/testsuite/lib/perftest.exp | 2 +-
gdb/testsuite/lib/prelink-support.exp | 2 +-
gdb/testsuite/lib/prompt.exp | 2 +-
gdb/testsuite/lib/range-stepping-support.exp | 2 +-
gdb/testsuite/lib/read1.c | 2 +-
gdb/testsuite/lib/rust-support.exp | 2 +-
gdb/testsuite/lib/selftest-support.exp | 30 +-
gdb/testsuite/lib/set_unbuffered_mode.c | 2 +-
gdb/testsuite/lib/trace-support.exp | 21 +-
gdb/testsuite/lib/unbuffer_output.c | 2 +-
gdb/testsuite/lib/valgrind.exp | 105 +
gdb/thread-fsm.c | 2 +-
gdb/thread-fsm.h | 2 +-
gdb/thread.c | 1351 +-
gdb/tic6x-linux-tdep.c | 15 +-
gdb/tic6x-tdep.c | 86 +-
gdb/tic6x-tdep.h | 2 +-
gdb/tid-parse.c | 8 +-
gdb/tid-parse.h | 2 +-
gdb/tilegx-linux-nat.c | 48 +-
gdb/tilegx-linux-tdep.c | 15 +-
gdb/tilegx-tdep.c | 28 +-
gdb/tilegx-tdep.h | 2 +-
gdb/top.c | 549 +-
gdb/top.h | 43 +-
gdb/tracefile-tfile.c | 203 +-
gdb/tracefile.c | 154 +-
gdb/tracefile.h | 16 +-
gdb/tracepoint.c | 1274 +-
gdb/tracepoint.h | 169 +-
gdb/trad-frame.c | 86 +-
gdb/trad-frame.h | 14 +-
gdb/tramp-frame.c | 2 +-
gdb/tramp-frame.h | 4 +-
gdb/transform.m4 | 2 +-
gdb/tui/tui-command.c | 2 +-
gdb/tui/tui-command.h | 2 +-
gdb/tui/tui-data.c | 29 +-
gdb/tui/tui-data.h | 10 +-
gdb/tui/tui-disasm.c | 8 +-
gdb/tui/tui-disasm.h | 2 +-
gdb/tui/tui-file.c | 2 +-
gdb/tui/tui-file.h | 2 +-
gdb/tui/tui-hooks.c | 90 +-
gdb/tui/tui-hooks.h | 2 +-
gdb/tui/tui-interp.c | 30 +-
gdb/tui/tui-io.c | 41 +-
gdb/tui/tui-io.h | 10 +-
gdb/tui/tui-layout.c | 30 +-
gdb/tui/tui-layout.h | 2 +-
gdb/tui/tui-out.c | 2 +-
gdb/tui/tui-out.h | 2 +-
gdb/tui/tui-regs.c | 57 +-
gdb/tui/tui-regs.h | 2 +-
gdb/tui/tui-source.c | 12 +-
gdb/tui/tui-source.h | 2 +-
gdb/tui/tui-stack.c | 22 +-
gdb/tui/tui-stack.h | 2 +-
gdb/tui/tui-win.c | 464 +-
gdb/tui/tui-win.h | 2 +-
gdb/tui/tui-windata.c | 22 +-
gdb/tui/tui-windata.h | 2 +-
gdb/tui/tui-wingeneral.c | 5 +-
gdb/tui/tui-wingeneral.h | 2 +-
gdb/tui/tui-winsource.c | 20 +-
gdb/tui/tui-winsource.h | 2 +-
gdb/tui/tui.c | 17 +-
gdb/tui/tui.h | 2 +-
gdb/typeprint.c | 452 +-
gdb/typeprint.h | 121 +-
gdb/ui-file.c | 8 +-
gdb/ui-file.h | 2 +-
gdb/ui-out.c | 70 +-
gdb/ui-out.h | 72 +-
gdb/unittests/array-view-selftests.c | 496 +
gdb/unittests/basic_string_view/capacity/1.cc | 172 +
.../basic_string_view/capacity/empty_neg.cc | 28 +
gdb/unittests/basic_string_view/cons/char/1.cc | 67 +
gdb/unittests/basic_string_view/cons/char/2.cc | 46 +
gdb/unittests/basic_string_view/cons/char/3.cc | 39 +
gdb/unittests/basic_string_view/cons/wchar_t/1.cc | 68 +
gdb/unittests/basic_string_view/cons/wchar_t/2.cc | 45 +
gdb/unittests/basic_string_view/cons/wchar_t/3.cc | 38 +
.../basic_string_view/element_access/char/1.cc | 70 +
.../basic_string_view/element_access/char/2.cc | 30 +
.../basic_string_view/element_access/char/empty.cc | 39 +
.../element_access/char/front_back.cc | 43 +
.../basic_string_view/element_access/wchar_t/1.cc | 71 +
.../basic_string_view/element_access/wchar_t/2.cc | 32 +
.../element_access/wchar_t/empty.cc | 38 +
.../element_access/wchar_t/front_back.cc | 42 +
gdb/unittests/basic_string_view/include.cc | 25 +
.../basic_string_view/inserters/char/1.cc | 65 +
.../basic_string_view/inserters/char/2.cc | 91 +
.../basic_string_view/inserters/char/3.cc | 54 +
.../basic_string_view/inserters/pod/10081-out.cc | 75 +
.../basic_string_view/inserters/wchar_t/1.cc | 70 +
.../basic_string_view/inserters/wchar_t/2.cc | 91 +
.../basic_string_view/inserters/wchar_t/3.cc | 53 +
gdb/unittests/basic_string_view/literals/types.cc | 45 +
gdb/unittests/basic_string_view/literals/values.cc | 72 +
.../modifiers/remove_prefix/char/1.cc | 66 +
.../modifiers/remove_prefix/wchar_t/1.cc | 61 +
.../modifiers/remove_suffix/char/1.cc | 66 +
.../modifiers/remove_suffix/wchar_t/1.cc | 61 +
.../basic_string_view/modifiers/swap/char/1.cc | 36 +
.../basic_string_view/modifiers/swap/wchar_t/1.cc | 35 +
.../basic_string_view/operations/compare/char/1.cc | 132 +
.../operations/compare/char/13650.cc | 50 +
.../basic_string_view/operations/compare/char/2.cc | 30 +
.../operations/compare/char/70483.cc | 89 +
.../operations/compare/wchar_t/1.cc | 133 +
.../operations/compare/wchar_t/13650.cc | 49 +
.../operations/compare/wchar_t/2.cc | 30 +
.../basic_string_view/operations/copy/char/1.cc | 46 +
.../basic_string_view/operations/copy/wchar_t/1.cc | 46 +
.../basic_string_view/operations/data/char/1.cc | 44 +
.../basic_string_view/operations/data/wchar_t/1.cc | 43 +
.../basic_string_view/operations/find/char/1.cc | 168 +
.../basic_string_view/operations/find/char/2.cc | 166 +
.../basic_string_view/operations/find/char/3.cc | 166 +
.../basic_string_view/operations/find/char/4.cc | 45 +
.../basic_string_view/operations/find/wchar_t/1.cc | 163 +
.../basic_string_view/operations/find/wchar_t/2.cc | 161 +
.../basic_string_view/operations/find/wchar_t/3.cc | 161 +
.../basic_string_view/operations/find/wchar_t/4.cc | 44 +
.../basic_string_view/operations/rfind/char/1.cc | 95 +
.../basic_string_view/operations/rfind/char/2.cc | 53 +
.../basic_string_view/operations/rfind/char/3.cc | 67 +
.../operations/rfind/wchar_t/1.cc | 94 +
.../operations/rfind/wchar_t/2.cc | 52 +
.../operations/rfind/wchar_t/3.cc | 66 +
.../operations/string_conversion/1.cc | 51 +
.../basic_string_view/operations/substr/char/1.cc | 79 +
.../operations/substr/wchar_t/1.cc | 79 +
.../basic_string_view/operators/char/2.cc | 373 +
.../basic_string_view/operators/wchar_t/2.cc | 367 +
.../basic_string_view/range_access/char/1.cc | 47 +
.../basic_string_view/range_access/wchar_t/1.cc | 47 +
.../requirements/explicit_instantiation/1.cc | 26 +
.../requirements/explicit_instantiation/char/1.cc | 23 +
.../explicit_instantiation/char16_t/1.cc | 24 +
.../explicit_instantiation/char32_t/1.cc | 24 +
.../explicit_instantiation/wchar_t/1.cc | 23 +
.../basic_string_view/requirements/typedefs.cc | 47 +
gdb/unittests/basic_string_view/typedefs.cc | 36 +
gdb/unittests/basic_string_view/types/1.cc | 43 +
gdb/unittests/cli-utils-selftests.c | 253 +
gdb/unittests/common-utils-selftests.c | 136 +
gdb/unittests/environ-selftests.c | 306 +
gdb/unittests/format_pieces-selftests.c | 76 +
gdb/unittests/function-view-selftests.c | 5 +-
gdb/unittests/lookup_name_info-selftests.c | 111 +
gdb/unittests/memory-map-selftests.c | 87 +
gdb/unittests/memrange-selftests.c | 115 +
gdb/unittests/mkdir-recursive-selftests.c | 90 +
gdb/unittests/observable-selftests.c | 135 +
gdb/unittests/offset-type-selftests.c | 4 +-
gdb/unittests/optional-selftests.c | 94 +
gdb/unittests/optional/assignment/1.cc | 195 +
gdb/unittests/optional/assignment/2.cc | 193 +
gdb/unittests/optional/assignment/3.cc | 156 +
gdb/unittests/optional/assignment/4.cc | 156 +
gdb/unittests/optional/assignment/5.cc | 80 +
gdb/unittests/optional/assignment/6.cc | 90 +
gdb/unittests/optional/assignment/7.cc | 29 +
gdb/unittests/optional/cons/copy.cc | 126 +
gdb/unittests/optional/cons/default.cc | 58 +
gdb/unittests/optional/cons/move.cc | 124 +
gdb/unittests/optional/cons/value.cc | 294 +
gdb/unittests/optional/in_place.cc | 65 +
gdb/unittests/optional/observers/1.cc | 31 +
gdb/unittests/optional/observers/2.cc | 35 +
gdb/unittests/parse-connection-spec-selftests.c | 249 +
gdb/unittests/ptid-selftests.c | 2 +-
gdb/unittests/rsp-low-selftests.c | 71 +
gdb/unittests/scoped_fd-selftests.c | 101 +
gdb/unittests/scoped_mmap-selftests.c | 147 +
gdb/unittests/scoped_restore-selftests.c | 111 +
gdb/unittests/string_view-selftests.c | 179 +
gdb/unittests/tracepoint-selftests.c | 70 +
gdb/unittests/unpack-selftests.c | 61 +
gdb/unittests/utils-selftests.c | 59 +
gdb/unittests/xml-utils-selftests.c | 58 +
gdb/unwind_stop_reasons.def | 2 +-
gdb/user-regs.c | 20 +-
gdb/user-regs.h | 2 +-
gdb/utils-selftests.c | 60 -
gdb/utils.c | 1330 +-
gdb/utils.h | 284 +-
gdb/v850-tdep.c | 22 +-
gdb/valarith.c | 354 +-
gdb/valops.c | 312 +-
gdb/valprint.c | 539 +-
gdb/valprint.h | 32 +-
gdb/value.c | 1242 +-
gdb/value.h | 134 +-
gdb/varobj-iter.h | 2 +-
gdb/varobj.c | 752 +-
gdb/varobj.h | 118 +-
gdb/vax-bsd-nat.c | 51 +-
gdb/vax-nbsd-tdep.c | 6 +-
gdb/vax-tdep.c | 28 +-
gdb/vax-tdep.h | 2 +-
gdb/version.in | 2 +-
gdb/warning.m4 | 55 +-
gdb/windows-nat.c | 634 +-
gdb/windows-nat.h | 2 +-
gdb/windows-tdep.c | 36 +-
gdb/windows-tdep.h | 2 +-
gdb/x86-bsd-nat.c | 38 +-
gdb/x86-bsd-nat.h | 23 +-
gdb/x86-linux-nat.c | 187 +-
gdb/x86-linux-nat.h | 64 +-
gdb/x86-nat.c | 85 +-
gdb/x86-nat.h | 74 +-
gdb/x86-tdep.c | 76 +
gdb/x86-tdep.h | 30 +
gdb/xcoffread.c | 294 +-
gdb/xcoffread.h | 2 +-
gdb/xml-support.c | 687 +-
gdb/xml-support.h | 63 +-
gdb/xml-syscall.c | 268 +-
gdb/xml-syscall.h | 2 +-
gdb/xml-tdesc.c | 243 +-
gdb/xml-tdesc.h | 24 +-
gdb/xstormy16-tdep.c | 34 +-
gdb/xtensa-config.c | 2 +-
gdb/xtensa-linux-nat.c | 159 +-
gdb/xtensa-linux-tdep.c | 11 +-
gdb/xtensa-tdep.c | 177 +-
gdb/xtensa-tdep.h | 6 +-
gdb/xtensa-xtregs.c | 29 +-
gdb/yy-remap.h | 2 +-
gold/ChangeLog | 892 +-
gold/ChangeLog-2017 | 848 +
gold/Makefile.am | 23 +-
gold/Makefile.in | 940 +-
gold/NEWS | 33 +-
gold/README | 2 +-
gold/aarch64-reloc-property.cc | 2 +-
gold/aarch64-reloc-property.h | 2 +-
gold/aarch64-reloc.def | 10 +-
gold/aarch64.cc | 471 +-
gold/aclocal.m4 | 748 +-
gold/archive.cc | 2 +-
gold/archive.h | 2 +-
gold/arm-reloc-property.cc | 2 +-
gold/arm-reloc-property.h | 2 +-
gold/arm-reloc.def | 2 +-
gold/arm.cc | 61 +-
gold/attributes.cc | 2 +-
gold/attributes.h | 2 +-
gold/binary.cc | 2 +-
gold/binary.h | 2 +-
gold/common.cc | 2 +-
gold/common.h | 2 +-
gold/compressed_output.cc | 6 +-
gold/compressed_output.h | 2 +-
gold/config.in | 10 +
gold/configure | 5161 +-
gold/configure.ac | 112 +-
gold/configure.tgt | 2 +-
gold/copy-relocs.cc | 2 +-
gold/copy-relocs.h | 2 +-
gold/cref.cc | 8 +-
gold/cref.h | 2 +-
gold/debug.h | 6 +-
gold/defstd.cc | 2 +-
gold/defstd.h | 2 +-
gold/descriptors.cc | 2 +-
gold/descriptors.h | 2 +-
gold/dirsearch.cc | 2 +-
gold/dirsearch.h | 2 +-
gold/dwarf_reader.cc | 32 +-
gold/dwarf_reader.h | 12 +-
gold/dwp.cc | 4 +-
gold/dwp.h | 2 +-
gold/dynobj.cc | 31 +-
gold/dynobj.h | 2 +-
gold/ehframe.cc | 48 +-
gold/ehframe.h | 15 +-
gold/errors.cc | 2 +-
gold/errors.h | 2 +-
gold/expression.cc | 29 +-
gold/ffsll.c | 2 +-
gold/fileread.cc | 2 +-
gold/fileread.h | 2 +-
gold/freebsd.h | 2 +-
gold/ftruncate.c | 2 +-
gold/gc.cc | 2 +-
gold/gc.h | 13 +-
gold/gdb-index.cc | 2 +-
gold/gdb-index.h | 2 +-
gold/gold-threads.cc | 2 +-
gold/gold-threads.h | 2 +-
gold/gold.cc | 18 +-
gold/gold.h | 2 +-
gold/i386.cc | 5 +-
gold/icf.cc | 86 +-
gold/icf.h | 2 +-
gold/incremental-dump.cc | 2 +-
gold/incremental.cc | 17 +-
gold/incremental.h | 9 +-
gold/int_encoding.cc | 2 +-
gold/int_encoding.h | 2 +-
gold/layout.cc | 531 +-
gold/layout.h | 65 +-
gold/main.cc | 6 +-
gold/mapfile.cc | 2 +-
gold/mapfile.h | 2 +-
gold/merge.cc | 2 +-
gold/merge.h | 2 +-
gold/mips.cc | 82 +-
gold/mremap.c | 2 +-
gold/nacl.cc | 2 +-
gold/nacl.h | 2 +-
gold/object.cc | 420 +-
gold/object.h | 64 +-
gold/options.cc | 19 +-
gold/options.h | 58 +-
gold/output.cc | 23 +-
gold/output.h | 14 +-
gold/parameters.cc | 2 +-
gold/parameters.h | 2 +-
gold/plugin.cc | 416 +-
gold/plugin.h | 47 +-
gold/po/Make-in | 8 +-
gold/po/es.po | 3543 +-
gold/po/fi.po | 1 +
gold/po/fr.po | 2751 +-
gold/po/gold.pot | 2624 +-
gold/po/id.po | 1410 +-
gold/po/it.po | 1 +
gold/po/ja.po | 2241 +
gold/po/sv.po | 4733 +
gold/po/uk.po | 4252 +
gold/po/vi.po | 323 +-
gold/po/zh_CN.po | 1 +
gold/powerpc.cc | 2121 +-
gold/pread.c | 2 +-
gold/readsyms.cc | 2 +-
gold/readsyms.h | 2 +-
gold/reduced_debug_output.cc | 2 +-
gold/reduced_debug_output.h | 2 +-
gold/reloc-types.h | 2 +-
gold/reloc.cc | 2 +-
gold/reloc.h | 2 +-
gold/resolve.cc | 136 +-
gold/s390.cc | 4 +-
gold/script-c.h | 2 +-
gold/script-sections.cc | 2 +-
gold/script-sections.h | 2 +-
gold/script.cc | 25 +-
gold/script.h | 23 +-
gold/sparc.cc | 8 +-
gold/stringpool.cc | 2 +-
gold/stringpool.h | 2 +-
gold/symtab.cc | 194 +-
gold/symtab.h | 158 +-
gold/system.h | 12 +-
gold/target-reloc.h | 87 +-
gold/target-select.cc | 2 +-
gold/target-select.h | 2 +-
gold/target.cc | 2 +-
gold/target.h | 34 +-
gold/testsuite/Makefile.am | 355 +-
gold/testsuite/Makefile.in | 5191 +-
gold/testsuite/aarch64_tlsdesc.s | 12 +
gold/testsuite/aarch64_tlsdesc.sh | 110 +
gold/testsuite/aarch64_tlsdesc.t | 6 +
gold/testsuite/arm_abs_global.sh | 2 +-
gold/testsuite/arm_farcall_arm_arm.sh | 2 +-
gold/testsuite/arm_farcall_arm_arm_be8.sh | 41 +
gold/testsuite/arm_farcall_arm_thumb.sh | 2 +-
gold/testsuite/arm_farcall_thumb_thumb_be8.sh | 47 +
gold/testsuite/arm_target2_got_rel.sh | 2 +-
gold/testsuite/arm_target2_rel.sh | 2 +-
gold/testsuite/bnd_ifunc_1.sh | 2 +-
gold/testsuite/common_test_1.c | 2 +-
gold/testsuite/copy_test_2.cc | 2 +-
gold/testsuite/debug_msg.sh | 6 +-
gold/testsuite/discard_locals_relocatable_test.c | 2 +-
gold/testsuite/dwp_test.h | 2 +-
gold/testsuite/dwp_test_2.cc | 2 +-
gold/testsuite/dwp_test_main.cc | 2 +-
gold/testsuite/dyn_weak_ref_1.c | 2 +-
gold/testsuite/dynamic_list_2.t | 2 +-
gold/testsuite/ehdr_start_def.cc | 2 +-
gold/testsuite/ehdr_start_test.cc | 2 +-
gold/testsuite/empty_command_line_test.sh | 43 +
gold/testsuite/export_dynamic_plugin.cc | 29 +
gold/testsuite/file_in_many_sections_test.sh | 2 +-
gold/testsuite/gc_dynamic_list_test.c | 2 +-
gold/testsuite/gc_dynamic_list_test.sh | 2 +-
gold/testsuite/gc_orphan_section_test.cc | 2 +-
gold/testsuite/gc_tls_test.cc | 2 +-
gold/testsuite/gdb_index_test.cc | 2 +-
gold/testsuite/gdb_index_test_1.sh | 2 +-
gold/testsuite/gnu_property_a.S | 46 +
gold/testsuite/gnu_property_b.S | 38 +
gold/testsuite/gnu_property_c.S | 44 +
gold/testsuite/gnu_property_main.c | 5 +
gold/testsuite/gnu_property_test.sh | 64 +
gold/testsuite/icf_preemptible_functions_test.sh | 2 +-
gold/testsuite/icf_safe_so_test.cc | 2 +-
gold/testsuite/icf_sht_rel_addend_test_1.cc | 2 +-
gold/testsuite/icf_string_merge_test.cc | 2 +-
gold/testsuite/icf_test.cc | 2 +-
gold/testsuite/incremental_test.sh | 2 +-
gold/testsuite/incremental_test_2.c | 2 +-
gold/testsuite/initpri3.c | 2 +-
gold/testsuite/justsyms.t | 2 +-
gold/testsuite/justsyms_exec.c | 2 +-
gold/testsuite/justsyms_lib.c | 2 +-
gold/testsuite/keep_text_section_prefix.cc | 52 +
gold/testsuite/keep_text_section_prefix.sh | 77 +
gold/testsuite/memory_test.sh | 2 +-
gold/testsuite/missing_key_func.sh | 2 +-
gold/testsuite/no_version_test.c | 2 +-
gold/testsuite/odr_violation2.cc | 8 +
gold/testsuite/pie_copyrelocs_shared_test.cc | 2 +-
gold/testsuite/plugin_common_test_1.c | 2 +-
gold/testsuite/plugin_final_layout.sh | 16 +-
gold/testsuite/plugin_new_section_layout.c | 182 +
gold/testsuite/plugin_pr22868.sh | 45 +
gold/testsuite/plugin_pr22868_a.c | 28 +
gold/testsuite/plugin_pr22868_b.c | 39 +
gold/testsuite/plugin_section_alignment.cc | 2 +-
gold/testsuite/plugin_section_order.c | 1 +
gold/testsuite/plugin_test.c | 67 +-
gold/testsuite/plugin_test_10.sh | 2 +-
gold/testsuite/plugin_test_11.sh | 2 +-
gold/testsuite/plugin_test_12.sh | 52 +
gold/testsuite/plugin_test_2.sh | 2 +-
gold/testsuite/plugin_test_7_2.c | 2 +-
gold/testsuite/plugin_test_defsym.c | 32 +
gold/testsuite/plugin_test_defsym.sh | 52 +
gold/testsuite/plugin_test_start_lib.sh | 2 +-
gold/testsuite/plugin_test_wrap_symbols.sh | 52 +
gold/testsuite/plugin_test_wrap_symbols_1.cc | 40 +
gold/testsuite/plugin_test_wrap_symbols_2.cc | 33 +
gold/testsuite/pr20717.sh | 2 +-
gold/testsuite/pr21430.s | 15 +
gold/testsuite/pr21430.sh | 73 +
gold/testsuite/pr22266_a.c | 13 +
gold/testsuite/pr22266_main.c | 13 +
gold/testsuite/pr22266_script.t | 24 +
gold/testsuite/pr23016_1.sh | 87 +
gold/testsuite/pr23016_1a.s | 3 +
gold/testsuite/pr23016_1b.s | 3 +
gold/testsuite/pr23016_2.sh | 57 +
gold/testsuite/pr23016_2a.s | 3 +
gold/testsuite/pr23016_2b.s | 3 +
gold/testsuite/relro_test.sh | 2 +-
gold/testsuite/relro_test_main.cc | 2 +-
gold/testsuite/script_test_14.sh | 2 +-
gold/testsuite/script_test_4.sh | 2 +-
gold/testsuite/script_test_5.cc | 2 +-
gold/testsuite/script_test_5.t | 2 +-
gold/testsuite/script_test_9.sh | 2 +-
gold/testsuite/section_sorting_name.cc | 2 +-
gold/testsuite/section_sorting_name.sh | 2 +-
gold/testsuite/split_x32.sh | 2 +-
gold/testsuite/split_x86_64.sh | 4 +-
gold/testsuite/strong_ref_weak_def_2.c | 2 +-
gold/testsuite/test.cc | 2 +-
gold/testsuite/testfile.cc | 1 +
gold/testsuite/text_section_grouping.sh | 2 +-
gold/testsuite/text_unlikely_segment.cc | 30 +
gold/testsuite/text_unlikely_segment.sh | 60 +
gold/testsuite/thin_archive_test_2.cc | 2 +-
gold/testsuite/thin_archive_test_4.cc | 2 +-
gold/testsuite/tls_test.cc | 2 +-
gold/testsuite/two_file_shared.sh | 2 +-
gold/testsuite/two_file_test.h | 2 +-
gold/testsuite/two_file_test_1.cc | 3 +
gold/testsuite/two_file_test_1_v1.cc | 3 +
gold/testsuite/two_file_test_main.cc | 2 +-
gold/testsuite/two_file_test_tls.cc | 2 +-
gold/testsuite/ver_matching_test.sh | 2 +-
gold/testsuite/ver_test.h | 2 +-
gold/testsuite/ver_test_1.sh | 2 +-
gold/testsuite/ver_test_10.script | 2 +-
gold/testsuite/ver_test_10.sh | 2 +-
gold/testsuite/ver_test_14.script | 6 +
gold/testsuite/ver_test_14.sh | 43 +
gold/testsuite/ver_test_4.cc | 2 +-
gold/testsuite/ver_test_4.script | 2 +-
gold/testsuite/ver_test_6.c | 2 +-
gold/testsuite/ver_test_8.script | 2 +-
gold/testsuite/ver_test_pr16504.sh | 41 +
gold/testsuite/ver_test_pr16504_a.c | 5 +
gold/testsuite/ver_test_pr16504_a.script | 4 +
gold/testsuite/ver_test_pr16504_b.c | 10 +
gold/testsuite/ver_test_pr16504_b.script | 4 +
gold/testsuite/ver_test_pr23409.sh | 64 +
gold/testsuite/ver_test_pr23409_1.script | 3 +
gold/testsuite/ver_test_pr23409_2.script | 3 +
gold/testsuite/weak_alias_test_1.cc | 2 +-
gold/testsuite/weak_as_needed.sh | 62 +
gold/testsuite/weak_as_needed_a.c | 10 +
gold/testsuite/weak_as_needed_b.c | 23 +
gold/testsuite/weak_as_needed_b.script | 11 +
gold/testsuite/weak_as_needed_c.c | 29 +
gold/testsuite/weak_as_needed_c.script | 12 +
gold/testsuite/weak_plt.sh | 2 +-
gold/testsuite/weak_undef_file1.cc | 2 +-
gold/testsuite/weak_undef_file3.cc | 2 +-
gold/testsuite/x32_overflow_pc32.sh | 2 +-
gold/testsuite/x86_64_mov_to_lea.sh | 2 +-
gold/tilegx.cc | 6 +-
gold/timer.cc | 2 +-
gold/timer.h | 2 +-
gold/tls.h | 2 +-
gold/token.h | 2 +-
gold/version.cc | 6 +-
gold/workqueue-internal.h | 2 +-
gold/workqueue-threads.cc | 2 +-
gold/workqueue.cc | 2 +-
gold/workqueue.h | 2 +-
gold/x86_64.cc | 672 +-
gold/yyscript.y | 2 +-
gprof/ChangeLog | 87 +-
gprof/ChangeLog-2017 | 69 +
gprof/MAINTAINERS | 2 +-
gprof/Makefile.am | 13 +-
gprof/Makefile.in | 454 +-
gprof/README | 2 +-
gprof/TODO | 2 +-
gprof/aclocal.m4 | 717 +-
gprof/basic_blocks.c | 2 +-
gprof/basic_blocks.h | 2 +-
gprof/bb_exit_func.c | 2 +-
gprof/bbconv.pl | 2 +-
gprof/bsd_callg_bl.m | 2 +-
gprof/call_graph.c | 2 +-
gprof/call_graph.h | 2 +-
gprof/cg_arcs.h | 2 +-
gprof/cg_dfn.h | 2 +-
gprof/cg_print.c | 2 +-
gprof/cg_print.h | 2 +-
gprof/configure | 1456 +-
gprof/configure.ac | 5 +-
gprof/corefile.c | 9 +-
gprof/corefile.h | 2 +-
gprof/flat_bl.m | 2 +-
gprof/fsf_callg_bl.m | 2 +-
gprof/gconfig.in | 5 +
gprof/gmon_io.c | 2 +-
gprof/gmon_io.h | 2 +-
gprof/gmon_out.h | 2 +-
gprof/gprof.c | 2 +-
gprof/gprof.texi | 12 +-
gprof/hertz.h | 2 +-
gprof/hist.c | 2 +-
gprof/hist.h | 2 +-
gprof/po/Make-in | 10 +-
gprof/po/POTFILES.in | 1 -
gprof/po/bg.po | 182 +-
gprof/po/da.po | 1 +
gprof/po/de.po | 1 +
gprof/po/eo.po | 188 +-
gprof/po/es.po | 415 +-
gprof/po/fi.po | 1 +
gprof/po/fr.po | 179 +-
gprof/po/ga.po | 1 +
gprof/po/gprof.pot | 22 +-
gprof/po/hu.po | 186 +-
gprof/po/id.po | 144 +-
gprof/po/it.po | 1 +
gprof/po/ja.po | 1 +
gprof/po/ms.po | 200 +-
gprof/po/nl.po | 1 +
gprof/po/pt_BR.po | 396 +-
gprof/po/ro.po | 1 +
gprof/po/ru.po | 171 +-
gprof/po/sr.po | 184 +-
gprof/po/sv.po | 186 +-
gprof/po/tr.po | 299 +-
gprof/po/uk.po | 176 +-
gprof/po/vi.po | 79 +-
gprof/search_list.c | 2 +-
gprof/search_list.h | 2 +-
gprof/source.c | 2 +-
gprof/source.h | 2 +-
gprof/sym_ids.c | 2 +-
gprof/sym_ids.h | 2 +-
gprof/symtab.c | 2 +-
gprof/symtab.h | 2 +-
gprof/tahoe.c | 339 -
gprof/utils.h | 2 +-
include/ChangeLog | 985 +-
include/ChangeLog-2017 | 871 +
include/MAINTAINERS | 2 +-
include/alloca-conf.h | 2 +-
include/ansidecl.h | 75 +-
include/aout/adobe.h | 314 -
include/aout/aout64.h | 28 +-
include/aout/ar.h | 3 +-
include/aout/dynix3.h | 87 -
include/aout/encap.h | 2 +-
include/aout/host.h | 13 +-
include/aout/hp.h | 2 +-
include/aout/hp300hpux.h | 131 -
include/aout/hppa.h | 2 +-
include/aout/ranlib.h | 2 +-
include/aout/reloc.h | 67 -
include/aout/stab.def | 2 +-
include/aout/stab_gnu.h | 2 +-
include/aout/sun4.h | 2 +-
include/bfdlink.h | 49 +-
include/binary-io.h | 2 +-
include/bout.h | 2 +-
include/cgen/basic-modes.h | 2 +-
include/cgen/basic-ops.h | 2 +-
include/cgen/bitset.h | 2 +-
include/coff/alpha.h | 2 +-
include/coff/apollo.h | 125 -
include/coff/arm.h | 2 +-
include/coff/aux-coff.h | 49 -
include/coff/ecoff.h | 2 +-
include/coff/external.h | 2 +-
include/coff/go32exe.h | 2 +-
include/coff/h8300.h | 55 -
include/coff/h8500.h | 47 -
include/coff/i386.h | 2 +-
include/coff/i860.h | 87 -
include/coff/i960.h | 320 -
include/coff/ia64.h | 2 +-
include/coff/internal.h | 65 +-
include/coff/m68k.h | 82 -
include/coff/m88k.h | 197 -
include/coff/mcore.h | 2 +-
include/coff/mips.h | 2 +-
include/coff/mipspe.h | 67 -
include/coff/msdos.h | 57 +
include/coff/pe.h | 39 +-
include/coff/powerpc.h | 4 +-
include/coff/rs6000.h | 2 +-
include/coff/rs6k64.h | 2 +-
include/coff/sh.h | 2 +-
include/coff/sparc.h | 164 -
include/coff/ti.h | 2 +-
include/coff/tic30.h | 2 +-
include/coff/tic4x.h | 2 +-
include/coff/tic54x.h | 2 +-
include/coff/tic80.h | 2 +-
include/coff/w65.h | 47 -
include/coff/we32k.h | 62 -
include/coff/x86_64.h | 2 +-
include/coff/xcoff.h | 2 +-
include/coff/z80.h | 2 +-
include/coff/z8k.h | 2 +-
include/demangle.h | 2 +-
include/diagnostics.h | 107 +
include/dis-asm.h | 157 +-
include/dwarf2.def | 25 +-
include/dwarf2.h | 37 +-
include/dyn-string.h | 2 +-
include/elf/aarch64.h | 10 +-
include/elf/alpha.h | 2 +-
include/elf/arc-cpu.def | 49 +
include/elf/arc-reloc.def | 13 +-
include/elf/arc.h | 37 +-
include/elf/arm.h | 18 +-
include/elf/avr.h | 2 +-
include/elf/bfin.h | 2 +-
include/elf/common.h | 176 +-
include/elf/cr16.h | 2 +-
include/elf/cr16c.h | 2 +-
include/elf/cris.h | 2 +-
include/elf/crx.h | 2 +-
include/elf/csky.h | 97 +
include/elf/d10v.h | 2 +-
include/elf/d30v.h | 2 +-
include/elf/dlx.h | 2 +-
include/elf/dwarf.h | 2 +-
include/elf/epiphany.h | 2 +-
include/elf/external.h | 18 +-
include/elf/fr30.h | 2 +-
include/elf/frv.h | 2 +-
include/elf/ft32.h | 7 +-
include/elf/h8.h | 2 +-
include/elf/hppa.h | 4 +-
include/elf/i370.h | 6 +-
include/elf/i386.h | 2 +-
include/elf/i860.h | 10 +-
include/elf/i960.h | 2 +-
include/elf/ia64.h | 2 +-
include/elf/internal.h | 12 +-
include/elf/ip2k.h | 2 +-
include/elf/iq2000.h | 2 +-
include/elf/lm32.h | 2 +-
include/elf/m32c.h | 2 +-
include/elf/m32r.h | 2 +-
include/elf/m68hc11.h | 2 +-
include/elf/m68k.h | 2 +-
include/elf/mcore.h | 2 +-
include/elf/mep.h | 2 +-
include/elf/metag.h | 2 +-
include/elf/microblaze.h | 6 +-
include/elf/mips.h | 19 +-
include/elf/mmix.h | 2 +-
include/elf/mn10200.h | 2 +-
include/elf/mn10300.h | 2 +-
include/elf/moxie.h | 2 +-
include/elf/msp430.h | 2 +-
include/elf/mt.h | 2 +-
include/elf/nds32.h | 67 +-
include/elf/nfp.h | 292 +
include/elf/nios2.h | 2 +-
include/elf/or1k.h | 21 +-
include/elf/pj.h | 2 +-
include/elf/ppc.h | 7 +-
include/elf/ppc64.h | 35 +-
include/elf/pru.h | 2 +-
include/elf/reloc-macros.h | 2 +-
include/elf/riscv.h | 6 +-
include/elf/rl78.h | 2 +-
include/elf/rx.h | 2 +-
include/elf/s12z.h | 37 +
include/elf/s390.h | 5 +-
include/elf/score.h | 2 +-
include/elf/sh.h | 2 +-
include/elf/sparc.h | 11 +-
include/elf/spu.h | 2 +-
include/elf/tic6x-attrs.h | 2 +-
include/elf/tic6x.h | 2 +-
include/elf/tilegx.h | 2 +-
include/elf/tilepro.h | 2 +-
include/elf/v850.h | 2 +-
include/elf/vax.h | 2 +-
include/elf/visium.h | 2 +-
include/elf/vxworks.h | 2 +-
include/elf/wasm32.h | 2 +-
include/elf/x86-64.h | 2 +-
include/elf/xc16x.h | 2 +-
include/elf/xgate.h | 2 +-
include/elf/xstormy16.h | 2 +-
include/elf/xtensa.h | 10 +-
include/environ.h | 4 +-
include/fibheap.h | 2 +-
include/filenames.h | 2 +-
include/floatformat.h | 2 +-
include/fnmatch.h | 2 +-
include/fopen-bin.h | 2 +-
include/fopen-same.h | 2 +-
include/fopen-vms.h | 2 +-
include/gcc-c-fe.def | 37 +-
include/gcc-c-interface.h | 23 +-
include/gcc-cp-fe.def | 1050 +
include/gcc-cp-interface.h | 496 +
include/gcc-interface.h | 111 +-
include/gdb/ChangeLog | 2 +-
include/gdb/callback.h | 2 +-
include/gdb/fileio.h | 2 +-
include/gdb/gdb-index.h | 2 +-
include/gdb/remote-sim.h | 4 +-
include/gdb/section-scripts.h | 2 +-
include/gdb/signals.def | 2 +-
include/gdb/signals.h | 2 +-
include/gdb/sim-aarch64.h | 2 +-
include/gdb/sim-arm.h | 2 +-
include/gdb/sim-bfin.h | 2 +-
include/gdb/sim-cr16.h | 2 +-
include/gdb/sim-d10v.h | 2 +-
include/gdb/sim-frv.h | 2 +-
include/gdb/sim-ft32.h | 2 +-
include/gdb/sim-h8300.h | 2 +-
include/gdb/sim-lm32.h | 2 +-
include/gdb/sim-m32c.h | 2 +-
include/gdb/sim-ppc.h | 2 +-
include/gdb/sim-rl78.h | 2 +-
include/gdb/sim-rx.h | 2 +-
include/gdb/sim-sh.h | 2 +-
include/getopt.h | 2 +-
include/hashtab.h | 2 +-
include/hp-symtab.h | 2 +-
include/ieee.h | 165 -
include/leb128.h | 2 +-
include/libiberty.h | 9 +-
include/longlong.h | 117 +-
include/lto-symtab.h | 2 +-
include/mach-o/arm.h | 4 +-
include/mach-o/arm64.h | 2 +-
include/mach-o/codesign.h | 2 +-
include/mach-o/external.h | 2 +-
include/mach-o/loader.h | 5 +-
include/mach-o/reloc.h | 2 +-
include/mach-o/unwind.h | 6 +-
include/mach-o/x86-64.h | 2 +-
include/md5.h | 2 +-
include/nlm/ChangeLog-9315 | 127 -
include/nlm/alpha-ext.h | 167 -
include/nlm/common.h | 123 -
include/nlm/external.h | 172 -
include/nlm/i386-ext.h | 117 -
include/nlm/internal.h | 309 -
include/nlm/ppc-ext.h | 164 -
include/nlm/sparc32-ext.h | 121 -
include/oasys.h | 2 +-
include/objalloc.h | 2 +-
include/obstack.h | 2 +-
include/opcode/aarch64.h | 167 +-
include/opcode/alpha.h | 2 +-
include/opcode/arc-attrs.h | 72 +
include/opcode/arc-func.h | 17 +-
include/opcode/arc.h | 94 +-
include/opcode/arm.h | 89 +-
include/opcode/avr.h | 7 +-
include/opcode/bfin.h | 2 +-
include/opcode/cgen.h | 2 +-
include/opcode/convex.h | 2 +-
include/opcode/cr16.h | 10 +-
include/opcode/cris.h | 2 +-
include/opcode/crx.h | 11 +-
include/opcode/csky.h | 110 +
include/opcode/d10v.h | 2 +-
include/opcode/d30v.h | 2 +-
include/opcode/dlx.h | 2 +-
include/opcode/ft32.h | 391 +-
include/opcode/h8300.h | 2 +-
include/opcode/hppa.h | 4 +-
include/opcode/i370.h | 266 -
include/opcode/i386.h | 9 +-
include/opcode/i860.h | 506 -
include/opcode/i960.h | 525 -
include/opcode/ia64.h | 2 +-
include/opcode/m68hc11.h | 2 +-
include/opcode/m68k.h | 2 +-
include/opcode/m88k.h | 454 -
include/opcode/metag.h | 2 +-
include/opcode/mips.h | 95 +-
include/opcode/mmix.h | 2 +-
include/opcode/mn10200.h | 2 +-
include/opcode/mn10300.h | 2 +-
include/opcode/moxie.h | 2 +-
include/opcode/msp430-decode.h | 2 +-
include/opcode/msp430.h | 2 +-
include/opcode/nds32.h | 210 +-
include/opcode/nfp.h | 175 +
include/opcode/nios2.h | 2 +-
include/opcode/nios2r1.h | 2 +-
include/opcode/nios2r2.h | 2 +-
include/opcode/np1.h | 2 +-
include/opcode/ns32k.h | 2 +-
include/opcode/pdp11.h | 2 +-
include/opcode/pj.h | 2 +-
include/opcode/pn.h | 2 +-
include/opcode/ppc.h | 195 +-
include/opcode/pru.h | 2 +-
include/opcode/pyr.h | 2 +-
include/opcode/riscv-opc.h | 383 +-
include/opcode/riscv.h | 61 +-
include/opcode/rl78.h | 2 +-
include/opcode/rx.h | 2 +-
include/opcode/s12z.h | 71 +
include/opcode/s390.h | 25 +-
include/opcode/score-datadep.h | 2 +-
include/opcode/score-inst.h | 2 +-
include/opcode/sparc.h | 27 +-
include/opcode/spu-insns.h | 2 +-
include/opcode/spu.h | 2 +-
include/opcode/tahoe.h | 232 -
include/opcode/tic30.h | 2 +-
include/opcode/tic4x.h | 2 +-
include/opcode/tic54x.h | 2 +-
include/opcode/tic6x-control-registers.h | 2 +-
include/opcode/tic6x-insn-formats.h | 2 +-
include/opcode/tic6x-opcode-table.h | 2 +-
include/opcode/tic6x.h | 2 +-
include/opcode/tic80.h | 2 +-
include/opcode/tilegx.h | 2 +-
include/opcode/tilepro.h | 2 +-
include/opcode/v850.h | 6 +-
include/opcode/vax.h | 2 +-
include/opcode/visium.h | 2 +-
include/opcode/wasm.h | 2 +-
include/opcode/xgate.h | 2 +-
include/os9k.h | 2 +-
include/partition.h | 2 +-
include/plugin-api.h | 30 +-
include/progress.h | 2 +-
include/safe-ctype.h | 2 +-
include/sha1.h | 2 +-
include/simple-object.h | 13 +-
include/som/aout.h | 2 +-
include/som/clock.h | 2 +-
include/som/internal.h | 2 +-
include/som/lst.h | 2 +-
include/som/reloc.h | 2 +-
include/sort.h | 2 +-
include/splay-tree.h | 6 +-
include/symcat.h | 2 +-
include/timeval-utils.h | 2 +-
include/vms/dcx.h | 2 +-
include/vms/dmt.h | 2 +-
include/vms/dsc.h | 2 +-
include/vms/dst.h | 2 +-
include/vms/eeom.h | 2 +-
include/vms/egps.h | 2 +-
include/vms/egsd.h | 2 +-
include/vms/egst.h | 2 +-
include/vms/egsy.h | 2 +-
include/vms/eiaf.h | 2 +-
include/vms/eicp.h | 2 +-
include/vms/eidc.h | 2 +-
include/vms/eiha.h | 2 +-
include/vms/eihd.h | 2 +-
include/vms/eihi.h | 2 +-
include/vms/eihs.h | 2 +-
include/vms/eihvn.h | 2 +-
include/vms/eisd.h | 2 +-
include/vms/emh.h | 2 +-
include/vms/eobjrec.h | 2 +-
include/vms/esdf.h | 2 +-
include/vms/esdfm.h | 2 +-
include/vms/esdfv.h | 2 +-
include/vms/esgps.h | 2 +-
include/vms/esrf.h | 2 +-
include/vms/etir.h | 2 +-
include/vms/internal.h | 2 +-
include/vms/lbr.h | 2 +-
include/vms/prt.h | 2 +-
include/vms/shl.h | 2 +-
include/vtv-change-permission.h | 2 +-
include/xregex2.h | 2 +-
include/xtensa-config.h | 2 +-
include/xtensa-isa-internal.h | 2 +-
include/xtensa-isa.h | 2 +-
intl/ChangeLog | 19 +
intl/aclocal.m4 | 7 +-
intl/config.h.in | 32 +
intl/configure | 2712 +-
intl/configure.ac | 4 +-
intl/libgnuintl.h | 35 +-
ld/ChangeLog | 5100 +-
ld/ChangeLog-2017 | 4038 +
ld/MAINTAINERS | 2 +-
ld/Makefile.am | 444 +-
ld/Makefile.in | 1045 +-
ld/NEWS | 80 +-
ld/README | 8 +-
ld/aclocal.m4 | 724 +-
ld/config.in | 19 +
ld/configure | 1871 +-
ld/configure.ac | 108 +-
ld/configure.host | 7 +-
ld/configure.tgt | 315 +-
ld/deffile.h | 12 +-
ld/deffilep.y | 174 +-
ld/emulparams/README | 2 +-
ld/emulparams/aarch64cloudabi.sh | 10 +-
ld/emulparams/aarch64elf.sh | 10 +-
ld/emulparams/aarch64elf32.sh | 10 +-
ld/emulparams/aarch64fbsd.sh | 10 +-
ld/emulparams/aarch64linux.sh | 10 +-
ld/emulparams/aarch64linux32.sh | 10 +-
ld/emulparams/arc-endianness.sh | 8 +-
ld/emulparams/arc-nps.sh | 2 +
ld/emulparams/arcelf.sh | 1 +
ld/emulparams/arcv2elf.sh | 3 +-
ld/emulparams/arcv2elfx.sh | 3 +-
ld/emulparams/arm_epoc_pe.sh | 9 -
ld/emulparams/armaoutb.sh | 6 -
ld/emulparams/armaoutl.sh | 6 -
ld/emulparams/armcoff.sh | 6 -
ld/emulparams/armelf.sh | 8 +-
ld/emulparams/armelf_fuchsia.sh | 6 +-
ld/emulparams/armelf_linux.sh | 6 +-
ld/emulparams/armelf_linux_fdpiceabi.sh | 17 +
ld/emulparams/armelf_phoenix.sh | 6 +-
ld/emulparams/armelfb_linux_fdpiceabi.sh | 2 +
ld/emulparams/armnbsd.sh | 9 -
ld/emulparams/armnto.sh | 8 +-
ld/emulparams/avr1.sh | 8 +
ld/emulparams/avr2.sh | 8 +
ld/emulparams/avr25.sh | 8 +
ld/emulparams/avr3.sh | 8 +
ld/emulparams/avr31.sh | 8 +
ld/emulparams/avr35.sh | 8 +
ld/emulparams/avr4.sh | 8 +
ld/emulparams/avr5.sh | 8 +
ld/emulparams/avr51.sh | 8 +
ld/emulparams/avr6.sh | 8 +
ld/emulparams/avrtiny.sh | 10 +-
ld/emulparams/avrxmega1.sh | 8 +
ld/emulparams/avrxmega2.sh | 8 +
ld/emulparams/avrxmega3.sh | 9 +
ld/emulparams/avrxmega4.sh | 8 +
ld/emulparams/avrxmega5.sh | 8 +
ld/emulparams/avrxmega6.sh | 8 +
ld/emulparams/avrxmega7.sh | 8 +
ld/emulparams/call_nop.sh | 11 +-
ld/emulparams/cet.sh | 19 +
ld/emulparams/coff_i860.sh | 5 -
ld/emulparams/coff_sparc.sh | 9 -
ld/emulparams/cskyelf.sh | 34 +
ld/emulparams/cskyelf_linux.sh | 36 +
ld/emulparams/delta68.sh | 5 -
ld/emulparams/dynamic_undefined_weak.sh | 13 +-
ld/emulparams/elf32_i860.sh | 12 -
ld/emulparams/elf32_i960.sh | 10 -
ld/emulparams/elf32_spu.sh | 4 +-
ld/emulparams/elf32_tic6x_le.sh | 5 +-
ld/emulparams/elf32_x86_64.sh | 11 +-
ld/emulparams/elf32bmip.sh | 24 +-
ld/emulparams/elf32bmipn32-defs.sh | 16 +-
ld/emulparams/elf32bmipn32.sh | 8 +-
ld/emulparams/elf32btsmipn32.sh | 8 +-
ld/emulparams/elf32frv.sh | 4 +-
ld/emulparams/elf32i370.sh | 8 -
ld/emulparams/elf32lr5900n32.sh | 8 +-
ld/emulparams/elf32lriscv-defs.sh | 24 +-
ld/emulparams/elf32lriscv.sh | 13 +
ld/emulparams/elf32lriscv_ilp32.sh | 14 +
ld/emulparams/elf32lriscv_ilp32f.sh | 14 +
ld/emulparams/elf32mcore.sh | 8 +-
ld/emulparams/elf32mep.sh | 3 +
ld/emulparams/elf32metag.sh | 2 +-
ld/emulparams/elf32mipswindiss.sh | 1 +
ld/emulparams/elf32ppc.sh | 4 +
ld/emulparams/elf32ppccommon.sh | 4 +-
ld/emulparams/elf32ppcwindiss.sh | 9 +-
ld/emulparams/elf32rl78.sh | 8 +-
ld/emulparams/elf32xtensa.sh | 1 +
ld/emulparams/elf64_ia64.sh | 4 +-
ld/emulparams/elf64_s390.sh | 4 +
ld/emulparams/elf64bmip.sh | 2 +-
ld/emulparams/elf64btsmip.sh | 8 +-
ld/emulparams/elf64hppa.sh | 2 +-
ld/emulparams/elf64lriscv-defs.sh | 11 -
ld/emulparams/elf64lriscv.sh | 13 +
ld/emulparams/elf64lriscv_lp64.sh | 14 +
ld/emulparams/elf64lriscv_lp64f.sh | 14 +
ld/emulparams/elf64mmix.sh | 2 +-
ld/emulparams/elf_i386.sh | 7 +-
ld/emulparams/elf_i386_be.sh | 1 -
ld/emulparams/elf_i386_chaos.sh | 1 -
ld/emulparams/elf_i386_ldso.sh | 1 -
ld/emulparams/elf_i386_vxworks.sh | 1 -
ld/emulparams/elf_iamcu.sh | 5 +-
ld/emulparams/elf_k1om.sh | 1 -
ld/emulparams/elf_l1om.sh | 1 -
ld/emulparams/elf_x86_64.sh | 12 +-
ld/emulparams/gld960.sh | 7 -
ld/emulparams/gld960coff.sh | 19 -
ld/emulparams/h8300.sh | 18 -
ld/emulparams/h8300elf.sh | 2 +-
ld/emulparams/h8300elf_linux.sh | 2 +-
ld/emulparams/h8300h.sh | 5 -
ld/emulparams/h8300hn.sh | 5 -
ld/emulparams/h8300s.sh | 5 -
ld/emulparams/h8300sn.sh | 5 -
ld/emulparams/h8300sx.sh | 5 -
ld/emulparams/h8300sxn.sh | 5 -
ld/emulparams/h8500.sh | 5 -
ld/emulparams/h8500b.sh | 5 -
ld/emulparams/h8500c.sh | 5 -
ld/emulparams/h8500m.sh | 5 -
ld/emulparams/h8500s.sh | 5 -
ld/emulparams/hp300bsd.sh | 5 -
ld/emulparams/hp3hpux.sh | 8 -
ld/emulparams/i386coff.sh | 5 -
ld/emulparams/i386linux.sh | 9 -
ld/emulparams/i386mach.sh | 9 -
ld/emulparams/i386nbsd.sh | 6 -
ld/emulparams/i386nto.sh | 3 +-
ld/emulparams/i386nw.sh | 8 -
ld/emulparams/lnk960.sh | 6 -
ld/emulparams/m68k4knbsd.sh | 9 -
ld/emulparams/m68kaout.sh | 6 -
ld/emulparams/m68kaux.sh | 8 -
ld/emulparams/m68kcoff.sh | 6 -
ld/emulparams/m68klinux.sh | 9 -
ld/emulparams/m68knbsd.sh | 9 -
ld/emulparams/m68kpsos.sh | 6 -
ld/emulparams/m88kbcs.sh | 5 -
ld/emulparams/m9s12zelf.sh | 18 +
ld/emulparams/news.sh | 5 -
ld/emulparams/nios2elf.sh | 1 -
ld/emulparams/ppclynx.sh | 15 +-
ld/emulparams/ppcnw.sh | 6 -
ld/emulparams/riscix.sh | 5 -
ld/emulparams/score3_elf.sh | 16 +-
ld/emulparams/shelf.sh | 4 -
ld/emulparams/shelf32.sh | 46 -
ld/emulparams/shelf32_linux.sh | 2 -
ld/emulparams/shelf32_nbsd.sh | 17 -
ld/emulparams/shelf64.sh | 9 -
ld/emulparams/shelf64_nbsd.sh | 8 -
ld/emulparams/shelf_nto.sh | 5 +-
ld/emulparams/shelf_vxworks.sh | 7 +-
ld/emulparams/shlelf32.sh | 2 -
ld/emulparams/shlelf32_linux.sh | 46 -
ld/emulparams/shlelf32_nbsd.sh | 3 -
ld/emulparams/shlelf64.sh | 2 -
ld/emulparams/shlelf64_nbsd.sh | 3 -
ld/emulparams/shlelf_fd.sh | 2 +-
ld/emulparams/shlelf_linux.sh | 3 -
ld/emulparams/shlelf_nto.sh | 5 +-
ld/emulparams/shlsymbian.sh | 19 -
ld/emulparams/sparcaout.sh | 10 -
ld/emulparams/sparclinux.sh | 9 -
ld/emulparams/sparcnbsd.sh | 5 -
ld/emulparams/st2000.sh | 5 -
ld/emulparams/sun3.sh | 10 -
ld/emulparams/sun4.sh | 7 -
ld/emulparams/vax.sh | 5 -
ld/emulparams/vsta.sh | 10 -
ld/emulparams/vxworks.sh | 18 +-
ld/emulparams/w65.sh | 5 -
ld/emulparams/xgateelf.sh | 4 +-
ld/emultempl/README | 2 +-
ld/emultempl/aarch64elf.em | 59 +-
ld/emultempl/aix.em | 82 +-
ld/emultempl/alphaelf.em | 11 +-
ld/emultempl/arclinux.em | 2 +-
ld/emultempl/armcoff.em | 9 +-
ld/emultempl/armelf.em | 84 +-
ld/emultempl/avrelf.em | 127 +-
ld/emultempl/beos.em | 111 +-
ld/emultempl/bfin.em | 8 +-
ld/emultempl/cr16elf.em | 59 +-
ld/emultempl/crxelf.em | 2 +-
ld/emultempl/cskyelf.em | 355 +
ld/emultempl/elf-generic.em | 6 +-
ld/emultempl/elf32.em | 519 +-
ld/emultempl/epiphanyelf_4x4.em | 2 +-
ld/emultempl/genelf.em | 4 +-
ld/emultempl/generic.em | 3 +-
ld/emultempl/gld960.em | 154 -
ld/emultempl/gld960c.em | 167 -
ld/emultempl/hppaelf.em | 24 +-
ld/emultempl/ia64elf.em | 2 +-
ld/emultempl/irix.em | 2 +-
ld/emultempl/linux.em | 6 +-
ld/emultempl/lnk960.em | 348 -
ld/emultempl/m68hc1xelf.em | 60 +-
ld/emultempl/m68kcoff.em | 245 -
ld/emultempl/m68kelf.em | 48 +-
ld/emultempl/metagelf.em | 20 +-
ld/emultempl/mipself.em | 35 +-
ld/emultempl/mmix-elfnmmo.em | 18 +-
ld/emultempl/mmixelf.em | 4 +-
ld/emultempl/mmo.em | 4 +-
ld/emultempl/msp430.em | 663 +-
ld/emultempl/nds32elf.em | 264 +-
ld/emultempl/needrelax.em | 2 +-
ld/emultempl/netbsd.em | 2 +-
ld/emultempl/nios2elf.em | 14 +-
ld/emultempl/pe.em | 267 +-
ld/emultempl/pep.em | 288 +-
ld/emultempl/ppc32elf.em | 155 +-
ld/emultempl/ppc64elf.em | 168 +-
ld/emultempl/pruelf.em | 2 +-
ld/emultempl/riscvelf.em | 39 +-
ld/emultempl/rxelf.em | 2 +-
ld/emultempl/s390.em | 64 +
ld/emultempl/scoreelf.em | 6 +-
ld/emultempl/sh64elf.em | 563 -
ld/emultempl/solaris2.em | 70 +-
ld/emultempl/spu_ovl.S | 8 +-
ld/emultempl/spuelf.em | 105 +-
ld/emultempl/sunos.em | 1041 -
ld/emultempl/tic6xdsbt.em | 23 +-
ld/emultempl/ticoff.em | 23 +-
ld/emultempl/v850elf.em | 25 +-
ld/emultempl/vanilla.em | 3 +-
ld/emultempl/vms.em | 12 +-
ld/emultempl/vxworks.em | 6 +-
ld/emultempl/xtensaelf.em | 14 +-
ld/emultempl/z80.em | 2 +-
ld/gen-doc.texi | 6 +-
ld/genscripts.sh | 278 +-
ld/h8-doc.texi | 4 +-
ld/ld.h | 20 +-
ld/ld.texi | 8717 ++
ld/ld.texinfo | 8602 --
ld/ldbuildid.c | 2 +-
ld/ldbuildid.h | 2 +-
ld/ldcref.c | 22 +-
ld/ldctor.c | 16 +-
ld/ldctor.h | 2 +-
ld/ldemul.c | 22 +-
ld/ldemul.h | 9 +-
ld/ldexp.c | 463 +-
ld/ldexp.h | 56 +-
ld/ldfile.c | 8 +-
ld/ldfile.h | 2 +-
ld/ldgram.y | 244 +-
ld/ldint.texi | 700 +
ld/ldint.texinfo | 700 -
ld/ldlang.c | 1121 +-
ld/ldlang.h | 20 +-
ld/ldlex-wrapper.c | 2 +-
ld/ldlex.h | 5 +-
ld/ldlex.l | 137 +-
ld/ldmain.c | 246 +-
ld/ldmain.h | 4 +-
ld/ldmisc.c | 440 +-
ld/ldmisc.h | 2 +-
ld/ldver.c | 4 +-
ld/ldver.h | 2 +-
ld/ldwrite.c | 10 +-
ld/ldwrite.h | 2 +-
ld/lexsup.c | 133 +-
ld/mri.c | 10 +-
ld/mri.h | 2 +-
ld/pe-dll.c | 712 +-
ld/pe-dll.h | 8 +-
ld/pep-dll.c | 7 +-
ld/pep-dll.h | 10 +-
ld/plugin.c | 111 +-
ld/plugin.h | 2 +-
ld/po/BLD-POTFILES.in | 304 +
ld/po/Make-in | 53 +-
ld/po/POTFILES.in | 37 -
ld/po/SRC-POTFILES.in | 35 +
ld/po/bg.po | 7378 +-
ld/po/da.po | 329 +-
ld/po/de.po | 2214 +
ld/po/es.po | 7547 +-
ld/po/fi.po | 7836 ++-
ld/po/fr.po | 7422 +-
ld/po/id.po | 1154 +-
ld/po/it.po | 1 +
ld/po/ja.po | 1 +
ld/po/ld.pot | 6878 +-
ld/po/pt_BR.po | 7695 ++
ld/po/ru.po | 2197 +
ld/po/tr.po | 2162 +-
ld/po/uk.po | 7431 +-
ld/po/vi.po | 383 +-
ld/po/zh_CN.po | 1 +
ld/po/zh_TW.po | 1 +
ld/scripttempl/DWARF.sc | 6 +-
ld/scripttempl/README | 2 +-
ld/scripttempl/aix.sc | 8 +-
ld/scripttempl/alpha.sc | 22 +-
ld/scripttempl/alphavms.sc | 18 +-
ld/scripttempl/aout.sc | 6 +-
ld/scripttempl/arclinux.sc | 64 +-
ld/scripttempl/armaout.sc | 47 -
ld/scripttempl/armbpabi.sc | 78 +-
ld/scripttempl/armcoff.sc | 97 -
ld/scripttempl/avr.sc | 166 +-
ld/scripttempl/avrtiny.sc | 262 -
ld/scripttempl/crisaout.sc | 8 +-
ld/scripttempl/delta68.sc | 61 -
ld/scripttempl/dlx.sc | 12 +-
ld/scripttempl/elf.sc | 150 +-
ld/scripttempl/elf32cr16.sc | 80 +-
ld/scripttempl/elf32cr16c.sc | 50 +-
ld/scripttempl/elf32crx.sc | 48 +-
ld/scripttempl/elf32msp430.sc | 111 +-
ld/scripttempl/elf32msp430_3.sc | 55 +-
ld/scripttempl/elf32sh-symbian.sc | 372 -
ld/scripttempl/elf32xc16x.sc | 64 +-
ld/scripttempl/elf32xc16xl.sc | 69 +-
ld/scripttempl/elf32xc16xs.sc | 67 +-
ld/scripttempl/elf64hppa.sc | 64 +-
ld/scripttempl/elf_chaos.sc | 48 +-
ld/scripttempl/elfarc.sc | 74 +-
ld/scripttempl/elfarcv2.sc | 30 +-
ld/scripttempl/elfd10v.sc | 68 +-
ld/scripttempl/elfd30v.sc | 39 +-
ld/scripttempl/elfi370.sc | 206 -
ld/scripttempl/elfm68hc11.sc | 33 +-
ld/scripttempl/elfm68hc12.sc | 33 +-
ld/scripttempl/elfm9s12z.sc | 444 +
ld/scripttempl/elfmicroblaze.sc | 79 +-
ld/scripttempl/elfxgate.sc | 33 +-
ld/scripttempl/elfxtensa.sc | 60 +-
ld/scripttempl/epiphany_4x4.sc | 186 +-
ld/scripttempl/epocpe.sc | 164 -
ld/scripttempl/ft32.sc | 26 +-
ld/scripttempl/h8300.sc | 106 -
ld/scripttempl/h8300h.sc | 109 -
ld/scripttempl/h8300hn.sc | 99 -
ld/scripttempl/h8300s.sc | 109 -
ld/scripttempl/h8300sn.sc | 99 -
ld/scripttempl/h8300sx.sc | 109 -
ld/scripttempl/h8300sxn.sc | 99 -
ld/scripttempl/h8500.sc | 73 -
ld/scripttempl/h8500b.sc | 73 -
ld/scripttempl/h8500c.sc | 73 -
ld/scripttempl/h8500m.sc | 73 -
ld/scripttempl/h8500s.sc | 73 -
ld/scripttempl/hppaelf.sc | 28 +-
ld/scripttempl/i386beos.sc | 22 +-
ld/scripttempl/i386coff.sc | 57 -
ld/scripttempl/i386go32.sc | 8 +-
ld/scripttempl/i386msdos.sc | 6 +-
ld/scripttempl/i860coff.sc | 54 -
ld/scripttempl/i960.sc | 37 -
ld/scripttempl/ia64vms.sc | 12 +-
ld/scripttempl/ip2k.sc | 21 +-
ld/scripttempl/iq2000.sc | 78 +-
ld/scripttempl/m68kaux.sc | 59 -
ld/scripttempl/m68kcoff.sc | 54 -
ld/scripttempl/m88kbcs.sc | 62 -
ld/scripttempl/mcorepe.sc | 22 +-
ld/scripttempl/mep.sc | 42 +-
ld/scripttempl/mips.sc | 6 +-
ld/scripttempl/mipsbsd.sc | 6 +-
ld/scripttempl/mmo.sc | 10 +-
ld/scripttempl/moxie.sc | 6 +-
ld/scripttempl/nds32elf.sc | 54 +-
ld/scripttempl/nw.sc | 143 -
ld/scripttempl/pe.sc | 64 +-
ld/scripttempl/pep.sc | 72 +-
ld/scripttempl/pj.sc | 6 +-
ld/scripttempl/ppcpe.sc | 72 +-
ld/scripttempl/pru.sc | 76 +-
ld/scripttempl/psos.sc | 73 -
ld/scripttempl/riscix.sc | 47 -
ld/scripttempl/sh.sc | 14 +-
ld/scripttempl/sparccoff.sc | 62 -
ld/scripttempl/st2000.sc | 35 -
ld/scripttempl/tic30aout.sc | 6 +-
ld/scripttempl/tic30coff.sc | 12 +-
ld/scripttempl/tic4xcoff.sc | 26 +-
ld/scripttempl/tic54xcoff.sc | 18 +-
ld/scripttempl/tic80coff.sc | 10 +-
ld/scripttempl/v850.sc | 54 +-
ld/scripttempl/v850_rh850.sc | 64 +-
ld/scripttempl/vanilla.sc | 4 +-
ld/scripttempl/visium.sc | 31 +-
ld/scripttempl/w65.sc | 77 -
ld/scripttempl/xstormy16.sc | 63 +-
ld/scripttempl/z80.sc | 8 +-
ld/scripttempl/z8000.sc | 24 +-
ld/sysdep.h | 2 +-
ld/testplug.c | 2 +-
ld/testplug2.c | 2 +-
ld/testplug3.c | 2 +-
ld/testplug4.c | 2 +-
ld/testsuite/config/default.exp | 128 +-
ld/testsuite/ld-aarch64/aarch64-elf.exp | 54 +-
ld/testsuite/ld-aarch64/copy-reloc-2.d | 7 +
ld/testsuite/ld-aarch64/copy-reloc-eliminate.d | 4 +
ld/testsuite/ld-aarch64/copy-reloc-exe-2.s | 32 +
ld/testsuite/ld-aarch64/copy-reloc-exe-eliminate.s | 7 +
ld/testsuite/ld-aarch64/copy-reloc-so.s | 19 +
ld/testsuite/ld-aarch64/dt_textrel.d | 3 +-
ld/testsuite/ld-aarch64/emit-relocs-112-overflow.d | 5 +
ld/testsuite/ld-aarch64/emit-relocs-112-overflow.s | 11 +
ld/testsuite/ld-aarch64/emit-relocs-112.d | 8 +
ld/testsuite/ld-aarch64/emit-relocs-112.s | 10 +
ld/testsuite/ld-aarch64/emit-relocs-113.d | 10 +
ld/testsuite/ld-aarch64/emit-relocs-113.s | 17 +
ld/testsuite/ld-aarch64/emit-relocs-114-overflow.d | 5 +
ld/testsuite/ld-aarch64/emit-relocs-114-overflow.s | 11 +
ld/testsuite/ld-aarch64/emit-relocs-114.d | 8 +
ld/testsuite/ld-aarch64/emit-relocs-114.s | 10 +
ld/testsuite/ld-aarch64/emit-relocs-115.d | 10 +
ld/testsuite/ld-aarch64/emit-relocs-115.s | 17 +
ld/testsuite/ld-aarch64/emit-relocs-116-overflow.d | 5 +
ld/testsuite/ld-aarch64/emit-relocs-116-overflow.s | 11 +
ld/testsuite/ld-aarch64/emit-relocs-116.d | 8 +
ld/testsuite/ld-aarch64/emit-relocs-116.s | 10 +
ld/testsuite/ld-aarch64/emit-relocs-117.d | 10 +
ld/testsuite/ld-aarch64/emit-relocs-117.s | 17 +
ld/testsuite/ld-aarch64/emit-relocs-118-overflow.d | 5 +
ld/testsuite/ld-aarch64/emit-relocs-118-overflow.s | 11 +
ld/testsuite/ld-aarch64/emit-relocs-118.d | 8 +
ld/testsuite/ld-aarch64/emit-relocs-118.s | 12 +
ld/testsuite/ld-aarch64/emit-relocs-119.d | 10 +
ld/testsuite/ld-aarch64/emit-relocs-119.s | 19 +
ld/testsuite/ld-aarch64/emit-relocs-258-dyn-bad.d | 4 +
ld/testsuite/ld-aarch64/emit-relocs-258.s | 7 +
ld/testsuite/ld-aarch64/emit-relocs-259-dyn-bad.d | 4 +
ld/testsuite/ld-aarch64/emit-relocs-259.s | 7 +
ld/testsuite/ld-aarch64/emit-relocs-287-overflow.d | 5 +
ld/testsuite/ld-aarch64/emit-relocs-287-overflow.s | 5 +
ld/testsuite/ld-aarch64/emit-relocs-287.d | 14 +-
ld/testsuite/ld-aarch64/emit-relocs-287.s | 8 +-
ld/testsuite/ld-aarch64/emit-relocs-288.d | 11 +
ld/testsuite/ld-aarch64/emit-relocs-288.s | 5 +
ld/testsuite/ld-aarch64/emit-relocs-289-overflow.d | 4 +
ld/testsuite/ld-aarch64/emit-relocs-289-overflow.s | 4 +
ld/testsuite/ld-aarch64/emit-relocs-289.d | 10 +
ld/testsuite/ld-aarch64/emit-relocs-289.s | 4 +
ld/testsuite/ld-aarch64/emit-relocs-290.d | 11 +
ld/testsuite/ld-aarch64/emit-relocs-290.s | 5 +
ld/testsuite/ld-aarch64/emit-relocs-291-overflow.d | 4 +
ld/testsuite/ld-aarch64/emit-relocs-291-overflow.s | 4 +
ld/testsuite/ld-aarch64/emit-relocs-291.d | 11 +
ld/testsuite/ld-aarch64/emit-relocs-291.s | 5 +
ld/testsuite/ld-aarch64/emit-relocs-292.d | 11 +
ld/testsuite/ld-aarch64/emit-relocs-292.s | 6 +
ld/testsuite/ld-aarch64/emit-relocs-293.d | 9 +
ld/testsuite/ld-aarch64/emit-relocs-293.s | 5 +
ld/testsuite/ld-aarch64/emit-relocs-534.d | 2 +-
ld/testsuite/ld-aarch64/emit-relocs-552-overflow.d | 4 +
ld/testsuite/ld-aarch64/emit-relocs-552-overflow.s | 11 +
ld/testsuite/ld-aarch64/emit-relocs-552.d | 7 +
ld/testsuite/ld-aarch64/emit-relocs-552.s | 10 +
ld/testsuite/ld-aarch64/emit-relocs-553.d | 9 +
ld/testsuite/ld-aarch64/emit-relocs-553.s | 17 +
ld/testsuite/ld-aarch64/emit-relocs-554-overflow.d | 4 +
ld/testsuite/ld-aarch64/emit-relocs-554-overflow.s | 11 +
ld/testsuite/ld-aarch64/emit-relocs-554.d | 7 +
ld/testsuite/ld-aarch64/emit-relocs-554.s | 10 +
ld/testsuite/ld-aarch64/emit-relocs-555.d | 9 +
ld/testsuite/ld-aarch64/emit-relocs-555.s | 17 +
ld/testsuite/ld-aarch64/emit-relocs-556-overflow.d | 4 +
ld/testsuite/ld-aarch64/emit-relocs-556-overflow.s | 11 +
ld/testsuite/ld-aarch64/emit-relocs-556.d | 7 +
ld/testsuite/ld-aarch64/emit-relocs-556.s | 10 +
ld/testsuite/ld-aarch64/emit-relocs-557.d | 9 +
ld/testsuite/ld-aarch64/emit-relocs-557.s | 17 +
ld/testsuite/ld-aarch64/emit-relocs-558-overflow.d | 4 +
ld/testsuite/ld-aarch64/emit-relocs-558-overflow.s | 11 +
ld/testsuite/ld-aarch64/emit-relocs-558.d | 7 +
ld/testsuite/ld-aarch64/emit-relocs-558.s | 12 +
ld/testsuite/ld-aarch64/emit-relocs-559.d | 9 +
ld/testsuite/ld-aarch64/emit-relocs-559.s | 19 +
ld/testsuite/ld-aarch64/erratum835769.d | 4 +-
ld/testsuite/ld-aarch64/erratum843419.d | 48 +-
ld/testsuite/ld-aarch64/farcall-b-defsym.d | 13 +-
ld/testsuite/ld-aarch64/farcall-b-none-function.d | 11 +-
ld/testsuite/ld-aarch64/farcall-b-plt.d | 2 +
ld/testsuite/ld-aarch64/farcall-b-section.d | 22 +-
ld/testsuite/ld-aarch64/farcall-b.d | 13 +-
ld/testsuite/ld-aarch64/farcall-back.d | 78 +-
ld/testsuite/ld-aarch64/farcall-bl-defsym.d | 15 +-
ld/testsuite/ld-aarch64/farcall-bl-none-function.d | 11 +-
ld/testsuite/ld-aarch64/farcall-bl-plt.d | 2 +
ld/testsuite/ld-aarch64/farcall-bl-section.d | 22 +-
ld/testsuite/ld-aarch64/farcall-bl.d | 15 +-
ld/testsuite/ld-aarch64/gc-got-relocs.d | 10 +-
ld/testsuite/ld-aarch64/gc-plt-relocs.d | 3 +-
ld/testsuite/ld-aarch64/gc-relocs-257.s | 8 +-
ld/testsuite/ld-aarch64/gc-tls-relocs.d | 10 +-
ld/testsuite/ld-aarch64/ifunc-1-local.d | 6 +-
ld/testsuite/ld-aarch64/ifunc-1.d | 6 +-
ld/testsuite/ld-aarch64/ifunc-13.d | 4 +-
ld/testsuite/ld-aarch64/ifunc-15.d | 4 +-
ld/testsuite/ld-aarch64/ifunc-2-local.d | 8 +-
ld/testsuite/ld-aarch64/ifunc-2.d | 8 +-
ld/testsuite/ld-aarch64/ifunc-20.d | 4 +-
ld/testsuite/ld-aarch64/ifunc-21.d | 8 +-
ld/testsuite/ld-aarch64/ifunc-3a.d | 6 +-
ld/testsuite/ld-aarch64/ifunc-9.d | 3 +-
ld/testsuite/ld-aarch64/pcrel.s | 6 +
ld/testsuite/ld-aarch64/pcrel_pic_defined.d | 17 +
ld/testsuite/ld-aarch64/pcrel_pic_defined_local.d | 5 -
ld/testsuite/ld-aarch64/pcrel_pic_undefined.d | 23 +-
ld/testsuite/ld-aarch64/pr20402.d | 7 +
ld/testsuite/ld-aarch64/pr20402.s | 6 +
ld/testsuite/ld-aarch64/pr22764.d | 18 +
ld/testsuite/ld-aarch64/pr22764.s | 6 +
ld/testsuite/ld-aarch64/relasz.d | 2 +-
ld/testsuite/ld-aarch64/reloc-overflow-bad.d | 2 +-
ld/testsuite/ld-aarch64/tls-small-ld.d | 2 +-
ld/testsuite/ld-aarch64/tls-tiny-ld.d | 2 +-
ld/testsuite/ld-alpha/alpha.exp | 9 +-
ld/testsuite/ld-alpha/tlsbin.rd | 7 +-
ld/testsuite/ld-alpha/tlsbin.sd | 2 +-
ld/testsuite/ld-alpha/tlsbinr.rd | 7 +-
ld/testsuite/ld-alpha/tlspic.rd | 8 +-
ld/testsuite/ld-alpha/tlspic.sd | 2 +-
ld/testsuite/ld-arc/arc.exp | 7 +-
ld/testsuite/ld-arc/attr-merge-0.d | 13 +
ld/testsuite/ld-arc/attr-merge-0.s | 2 +
ld/testsuite/ld-arc/attr-merge-0e.s | 1 +
ld/testsuite/ld-arc/attr-merge-1.d | 13 +
ld/testsuite/ld-arc/attr-merge-1.s | 2 +
ld/testsuite/ld-arc/attr-merge-1e.s | 2 +
ld/testsuite/ld-arc/attr-merge-2.d | 13 +
ld/testsuite/ld-arc/attr-merge-2.s | 2 +
ld/testsuite/ld-arc/attr-merge-3.d | 13 +
ld/testsuite/ld-arc/attr-merge-3.s | 1 +
ld/testsuite/ld-arc/attr-merge-3e.s | 1 +
ld/testsuite/ld-arc/attr-merge-4.s | 2 +
ld/testsuite/ld-arc/attr-merge-5.d | 14 +
ld/testsuite/ld-arc/attr-merge-5a.s | 3 +
ld/testsuite/ld-arc/attr-merge-5b.s | 2 +
ld/testsuite/ld-arc/attr-merge-6.d | 16 +
ld/testsuite/ld-arc/attr-merge-6a.s | 9 +
ld/testsuite/ld-arc/attr-merge-6b.s | 8 +
ld/testsuite/ld-arc/attr-merge-6bis.d | 16 +
ld/testsuite/ld-arc/attr-merge-conflict-isa.d | 6 +
ld/testsuite/ld-arc/attr-merge-err-isa.d | 5 +
ld/testsuite/ld-arc/attr-merge-err-quarkse.d | 5 +
ld/testsuite/ld-arc/attr-merge-incompatible-cpu.d | 5 +
ld/testsuite/ld-arc/attr-quarkse.s | 2 +
ld/testsuite/ld-arc/attr-quarkse2.s | 2 +
ld/testsuite/ld-arc/got-01.d | 2 +-
ld/testsuite/ld-arc/jli-overflow.d | 4 +
ld/testsuite/ld-arc/jli-overflow.err | 3 +
ld/testsuite/ld-arc/jli-overflow.s | 1050 +
ld/testsuite/ld-arc/jli-script.ld | 20 +
ld/testsuite/ld-arc/jli-simple.dd | 26 +
ld/testsuite/ld-arc/jli-simple.rd | 10 +
ld/testsuite/ld-arc/jli-simple.s | 24 +
ld/testsuite/ld-arc/nps-1b.err | 2 +-
ld/testsuite/ld-arc/tls_gd-01.d | 4 +-
ld/testsuite/ld-arc/tls_ie-01.d | 6 +-
ld/testsuite/ld-arm/arm-elf.exp | 196 +-
ld/testsuite/ld-arm/attr-merge-11.attr | 9 +
ld/testsuite/ld-arm/attr-merge-11a.s | 5 +
ld/testsuite/ld-arm/attr-merge-11b.s | 5 +
ld/testsuite/ld-arm/attr-merge-12.attr | 9 +
ld/testsuite/ld-arm/attr-merge-12a.s | 5 +
ld/testsuite/ld-arm/attr-merge-12b.s | 5 +
ld/testsuite/ld-arm/attr-merge-9.out | 2 +-
ld/testsuite/ld-arm/attr-merge-arch-2.d | 2 +-
ld/testsuite/ld-arm/attr-merge-div-00.d | 2 +-
ld/testsuite/ld-arm/attr-merge-div-01-m3.d | 2 +-
ld/testsuite/ld-arm/attr-merge-div-01.d | 2 +-
ld/testsuite/ld-arm/attr-merge-div-02.d | 2 +-
ld/testsuite/ld-arm/attr-merge-div-10-m3.d | 2 +-
ld/testsuite/ld-arm/attr-merge-div-10.d | 2 +-
ld/testsuite/ld-arm/attr-merge-div-11.d | 2 +-
ld/testsuite/ld-arm/attr-merge-div-12.d | 2 +-
ld/testsuite/ld-arm/attr-merge-div-120.d | 2 +-
ld/testsuite/ld-arm/attr-merge-div-20.d | 2 +-
ld/testsuite/ld-arm/attr-merge-div-21.d | 2 +-
ld/testsuite/ld-arm/attr-merge-div-22.d | 2 +-
ld/testsuite/ld-arm/attr-merge-hardfp-use-1.d | 2 +-
ld/testsuite/ld-arm/attr-merge-hardfp-use-2.d | 2 +-
ld/testsuite/ld-arm/attr-merge-incompatible.d | 2 +-
ld/testsuite/ld-arm/attr-merge-nosection-1.d | 2 +-
ld/testsuite/ld-arm/attr-merge-unknown-1.d | 2 +-
ld/testsuite/ld-arm/attr-merge-unknown-2.d | 4 +-
ld/testsuite/ld-arm/attr-merge-unknown-2r.d | 4 +-
ld/testsuite/ld-arm/attr-merge-unknown-3.d | 4 +-
ld/testsuite/ld-arm/attr-merge-vfp-1.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-10.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-10r.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-11.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-11r.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-12.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-12r.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-13.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-13r.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-14.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-14r.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-1r.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-2.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-2r.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-3.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-3r.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-4.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-4r.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-5.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-5r.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-6.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-6r.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-7.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-7r.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-8.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-8r.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-9.d | 2 +-
ld/testsuite/ld-arm/attr-merge-vfp-9r.d | 2 +-
ld/testsuite/ld-arm/attr-merge-wchar-00-nowarn.d | 2 +-
ld/testsuite/ld-arm/attr-merge-wchar-00.d | 2 +-
ld/testsuite/ld-arm/attr-merge-wchar-02-nowarn.d | 2 +-
ld/testsuite/ld-arm/attr-merge-wchar-02.d | 2 +-
ld/testsuite/ld-arm/attr-merge-wchar-04-nowarn.d | 2 +-
ld/testsuite/ld-arm/attr-merge-wchar-04.d | 2 +-
ld/testsuite/ld-arm/attr-merge-wchar-20-nowarn.d | 2 +-
ld/testsuite/ld-arm/attr-merge-wchar-20.d | 2 +-
ld/testsuite/ld-arm/attr-merge-wchar-22-nowarn.d | 2 +-
ld/testsuite/ld-arm/attr-merge-wchar-22.d | 2 +-
ld/testsuite/ld-arm/attr-merge-wchar-24-nowarn.d | 2 +-
ld/testsuite/ld-arm/attr-merge-wchar-40-nowarn.d | 2 +-
ld/testsuite/ld-arm/attr-merge-wchar-40.d | 2 +-
ld/testsuite/ld-arm/attr-merge-wchar-42-nowarn.d | 2 +-
ld/testsuite/ld-arm/attr-merge-wchar-44-nowarn.d | 2 +-
ld/testsuite/ld-arm/attr-merge-wchar-44.d | 2 +-
ld/testsuite/ld-arm/cmse-implib-errors.out | 10 +-
ld/testsuite/ld-arm/cmse-implib.type | 9 +
.../ld-arm/cmse-new-earlier-later-implib.out | 6 +-
ld/testsuite/ld-arm/cmse-new-implib-no-output.out | 2 +-
.../ld-arm/cmse-new-implib-not-sg-in-implib.out | 4 +-
ld/testsuite/ld-arm/cmse-new-implib.out | 2 +-
ld/testsuite/ld-arm/cmse-new-wrong-implib.out | 6 +-
.../ld-arm/cmse-veneers-no-gnu_sgstubs.out | 4 +-
.../ld-arm/cmse-veneers-wrong-entryfct.out | 29 +-
ld/testsuite/ld-arm/cortex-a8-far.d | 20 +-
ld/testsuite/ld-arm/eabi-hard-float.d | 2 +-
ld/testsuite/ld-arm/eabi-soft-float-ABI4.d | 2 +-
ld/testsuite/ld-arm/eabi-soft-float-r.d | 2 +-
ld/testsuite/ld-arm/eabi-soft-float.d | 2 +-
ld/testsuite/ld-arm/export-class.exp | 6 +-
ld/testsuite/ld-arm/farcall-group-size2.d | 16 +-
ld/testsuite/ld-arm/farcall-group.d | 22 +-
ld/testsuite/ld-arm/farcall-mixed-lib-v4t.d | 16 +-
ld/testsuite/ld-arm/farcall-mixed-lib.d | 12 +-
ld/testsuite/ld-arm/fdpic-main-m.d | 73 +
ld/testsuite/ld-arm/fdpic-main-m.s | 86 +
ld/testsuite/ld-arm/fdpic-main-m.sym | 14 +
ld/testsuite/ld-arm/fdpic-main.d | 72 +
ld/testsuite/ld-arm/fdpic-main.ld | 244 +
ld/testsuite/ld-arm/fdpic-main.r | 11 +
ld/testsuite/ld-arm/fdpic-main.s | 86 +
ld/testsuite/ld-arm/fdpic-main.sym | 14 +
ld/testsuite/ld-arm/fdpic-shared-m.d | 37 +
ld/testsuite/ld-arm/fdpic-shared-m.s | 52 +
ld/testsuite/ld-arm/fdpic-shared-m.sym | 15 +
ld/testsuite/ld-arm/fdpic-shared.d | 35 +
ld/testsuite/ld-arm/fdpic-shared.ld | 228 +
ld/testsuite/ld-arm/fdpic-shared.r | 8 +
ld/testsuite/ld-arm/fdpic-shared.s | 52 +
ld/testsuite/ld-arm/fdpic-shared.sym | 15 +
ld/testsuite/ld-arm/gc-hidden-1.d | 3 +-
ld/testsuite/ld-arm/group-relocs-alu-bad-2.d | 2 +-
ld/testsuite/ld-arm/group-relocs-alu-bad.d | 2 +-
ld/testsuite/ld-arm/group-relocs-ldc-bad-2.d | 2 +-
ld/testsuite/ld-arm/group-relocs-ldc-bad.d | 2 +-
ld/testsuite/ld-arm/group-relocs-ldr-bad-2.d | 2 +-
ld/testsuite/ld-arm/group-relocs-ldr-bad.d | 2 +-
ld/testsuite/ld-arm/group-relocs-ldrs-bad-2.d | 2 +-
ld/testsuite/ld-arm/group-relocs-ldrs-bad.d | 2 +-
ld/testsuite/ld-arm/ifunc-3.rd | 2 +-
ld/testsuite/ld-arm/ifunc-9.rd | 2 +-
ld/testsuite/ld-arm/stm32l4xx-cannot-fix-far-ldm.d | 2 +-
ld/testsuite/ld-arm/tls-app.d | 22 +-
ld/testsuite/ld-arm/tls-app.r | 3 -
ld/testsuite/ld-arm/tls-descrelax-be8.d | 2 +-
ld/testsuite/ld-arm/tls-descrelax-v7.d | 2 +-
ld/testsuite/ld-arm/tls-gdesc-got.d | 40 +-
ld/testsuite/ld-arm/tls-lib-loc.d | 20 +-
ld/testsuite/ld-arm/tls-longplt-lib.d | 88 +-
ld/testsuite/ld-arm/tls-longplt.d | 2 +-
ld/testsuite/ld-arm/tls-thumb1.d | 110 +-
ld/testsuite/ld-arm/unresolved-1-dyn.d | 2 +-
ld/testsuite/ld-arm/unwind-mix.d | 2 +-
ld/testsuite/ld-arm/unwind-rel.d | 2 +-
ld/testsuite/ld-arm/vxworks1-static.d | 2 +-
ld/testsuite/ld-auto-import/auto-import.exp | 2 +-
ld/testsuite/ld-avr/avr.exp | 2 +-
ld/testsuite/ld-avr/gc-section-debugline.d | 92 +-
ld/testsuite/ld-avr/pr13402.d | 16 +
ld/testsuite/ld-avr/pr13402.s | 9 +
ld/testsuite/ld-avr/pr21404-1.d | 12 +
ld/testsuite/ld-avr/pr21404-1.s | 11 +
ld/testsuite/ld-avr/pr21404-2.d | 16 +
ld/testsuite/ld-avr/pr21404-2.s | 25 +
ld/testsuite/ld-avr/pr21404-3.d | 10 +
ld/testsuite/ld-avr/pr21404-3.s | 10 +
ld/testsuite/ld-avr/pr21404-4.d | 10 +
ld/testsuite/ld-avr/pr21404-4.s | 10 +
ld/testsuite/ld-avr/pr21404-5.d | 11 +
ld/testsuite/ld-avr/pr21404-5.s | 9 +
ld/testsuite/ld-avr/pr21404-6.d | 16 +
ld/testsuite/ld-avr/pr21404-6.s | 19 +
ld/testsuite/ld-avr/pr21404-7.d | 10 +
ld/testsuite/ld-avr/pr21404-7.s | 9 +
ld/testsuite/ld-avr/pr21404-8.d | 10 +
ld/testsuite/ld-avr/pr21404-8.s | 9 +
ld/testsuite/ld-bootstrap/bootstrap.exp | 17 +-
ld/testsuite/ld-cdtest/cdtest.exp | 2 +-
ld/testsuite/ld-checks/checks.exp | 2 +-
ld/testsuite/ld-checks/over2.s | 2 +
ld/testsuite/ld-cris/badgotr1.d | 2 +-
ld/testsuite/ld-cris/cris.exp | 2 +-
ld/testsuite/ld-cris/dso-pltdis1.d | 64 +-
ld/testsuite/ld-cris/dso-pltdis2.d | 66 +-
ld/testsuite/ld-cris/dso12-pltdis.d | 70 +-
ld/testsuite/ld-cris/expdyn1.d | 2 +-
ld/testsuite/ld-cris/expdyn5.d | 2 +-
ld/testsuite/ld-cris/expdyn6.d | 2 +-
ld/testsuite/ld-cris/expdyn7.d | 2 +-
ld/testsuite/ld-cris/gotplt1.d | 40 +-
ld/testsuite/ld-cris/gotplt2.d | 26 +-
ld/testsuite/ld-cris/gotplt3.d | 28 +-
ld/testsuite/ld-cris/hiddef1.d | 8 +-
ld/testsuite/ld-cris/libdso-1.d | 4 +-
ld/testsuite/ld-cris/libdso-10.d | 26 +-
ld/testsuite/ld-cris/libdso-11.d | 20 +-
ld/testsuite/ld-cris/libdso-12.d | 54 +-
ld/testsuite/ld-cris/libdso-12b.d | 54 +-
ld/testsuite/ld-cris/libdso-12c.d | 38 +-
ld/testsuite/ld-cris/libdso-13.d | 8 +-
ld/testsuite/ld-cris/libdso-13b.d | 4 +-
ld/testsuite/ld-cris/libdso-14.d | 10 +-
ld/testsuite/ld-cris/libdso-15.d | 16 +-
ld/testsuite/ld-cris/libdso-15b.d | 22 +-
ld/testsuite/ld-cris/libdso-1b.d | 2 +-
ld/testsuite/ld-cris/libdso-1c.d | 22 +-
ld/testsuite/ld-cris/libdso-1d.d | 28 +-
ld/testsuite/ld-cris/libdso-2.d | 17 +-
ld/testsuite/ld-cris/libdso-4.d | 2 +-
ld/testsuite/ld-cris/pcrelcp-1.d | 3 +-
ld/testsuite/ld-cris/pic-gc-72.d | 10 +-
ld/testsuite/ld-cris/pic-gc-73.d | 9 +-
ld/testsuite/ld-cris/pr16044.d | 15 +-
ld/testsuite/ld-cris/pv32-1.d | 37 +-
ld/testsuite/ld-cris/tls-dso-dtpoffd2.d | 10 +-
ld/testsuite/ld-cris/tls-dso-dtpoffd4.d | 10 +-
ld/testsuite/ld-cris/tls-dso-tpoffgotcomm1.d | 20 +-
ld/testsuite/ld-cris/tls-dso-x1x2-1.d | 2 +-
ld/testsuite/ld-cris/tls-err-20x.d | 2 +-
ld/testsuite/ld-cris/tls-err-24.d | 2 +-
ld/testsuite/ld-cris/tls-err-25.d | 2 +-
ld/testsuite/ld-cris/tls-err-26.d | 2 +-
ld/testsuite/ld-cris/tls-err-27.d | 2 +-
ld/testsuite/ld-cris/tls-err-28.d | 2 +-
ld/testsuite/ld-cris/tls-err-29.d | 2 +-
ld/testsuite/ld-cris/tls-err-31.d | 2 +-
ld/testsuite/ld-cris/tls-err-33.d | 2 +-
ld/testsuite/ld-cris/tls-err-35.d | 2 +-
ld/testsuite/ld-cris/tls-err-37.d | 2 +-
ld/testsuite/ld-cris/tls-err-39.d | 2 +-
ld/testsuite/ld-cris/tls-err-40.d | 2 +-
ld/testsuite/ld-cris/tls-err-41.d | 2 +-
ld/testsuite/ld-cris/tls-err-43.d | 2 +-
ld/testsuite/ld-cris/tls-err-44.d | 2 +-
ld/testsuite/ld-cris/tls-err-45.d | 2 +-
ld/testsuite/ld-cris/tls-err-47.d | 2 +-
ld/testsuite/ld-cris/tls-err-48.d | 2 +-
ld/testsuite/ld-cris/tls-err-49.d | 2 +-
ld/testsuite/ld-cris/tls-err-51.d | 2 +-
ld/testsuite/ld-cris/tls-err-52.d | 2 +-
ld/testsuite/ld-cris/tls-err-53.d | 2 +-
ld/testsuite/ld-cris/tls-err-55.d | 2 +-
ld/testsuite/ld-cris/tls-err-56.d | 2 +-
ld/testsuite/ld-cris/tls-err-62.d | 2 +-
ld/testsuite/ld-cris/tls-err-65.d | 2 +-
ld/testsuite/ld-cris/tls-err-67.d | 2 +-
ld/testsuite/ld-cris/tls-err-77.d | 2 +-
ld/testsuite/ld-cris/tls-gc-68.d | 22 +-
ld/testsuite/ld-cris/tls-gc-69.d | 22 +-
ld/testsuite/ld-cris/tls-gc-70.d | 23 +-
ld/testsuite/ld-cris/tls-gc-71.d | 13 +-
ld/testsuite/ld-cris/tls-gc-75.d | 22 +-
ld/testsuite/ld-cris/tls-gc-79.d | 23 +-
ld/testsuite/ld-cris/tls-gd-1.d | 26 +-
ld/testsuite/ld-cris/tls-gd-1h.d | 26 +-
ld/testsuite/ld-cris/tls-gd-2.d | 26 +-
ld/testsuite/ld-cris/tls-gd-2h.d | 26 +-
ld/testsuite/ld-cris/tls-ie-10.d | 24 +-
ld/testsuite/ld-cris/tls-ie-11.d | 28 +-
ld/testsuite/ld-cris/tls-ie-78.d | 8 +-
ld/testsuite/ld-cris/tls-ie-8.d | 24 +-
ld/testsuite/ld-cris/tls-ie-9.d | 28 +-
ld/testsuite/ld-cris/tls-js1.d | 16 +-
ld/testsuite/ld-cris/tls-ld-4.d | 26 +-
ld/testsuite/ld-cris/tls-ld-5.d | 26 +-
ld/testsuite/ld-cris/tls-ld-6.d | 26 +-
ld/testsuite/ld-cris/tls-ld-7.d | 26 +-
ld/testsuite/ld-cris/tls-ldgd-14.d | 32 +-
ld/testsuite/ld-cris/tls-ldgd-15.d | 34 +-
ld/testsuite/ld-cris/tls-ldgdex-14.d | 16 +-
ld/testsuite/ld-cris/tls-ldgdex-15.d | 16 +-
ld/testsuite/ld-cris/tls-ldgdx-14.d | 16 +-
ld/testsuite/ld-cris/tls-ldgdx-15.d | 18 +-
ld/testsuite/ld-cris/tls-legdx-16.d | 14 +-
ld/testsuite/ld-cris/tls-legdx-17.d | 14 +-
ld/testsuite/ld-cris/tls-local-54.d | 10 +-
ld/testsuite/ld-cris/tls-local-60.d | 14 +-
ld/testsuite/ld-cris/tls-local-61.d | 14 +-
ld/testsuite/ld-cris/tls-local-63.d | 16 +-
ld/testsuite/ld-cris/tls-local-64.d | 20 +-
ld/testsuite/ld-cris/tls-ok-30.d | 20 +-
ld/testsuite/ld-cris/tls-ok-32.d | 14 +-
ld/testsuite/ld-cris/tls-ok-34.d | 18 +-
ld/testsuite/ld-cris/tls-und-38.d | 10 +-
ld/testsuite/ld-cris/tls-und-42.d | 8 +-
ld/testsuite/ld-cris/tls-und-46.d | 10 +-
ld/testsuite/ld-cris/tls-und-50.d | 8 +-
ld/testsuite/ld-cris/weakhiddso.d | 19 +-
ld/testsuite/ld-cris/weakref2.d | 4 +-
ld/testsuite/ld-cris/weakref3.d | 6 +-
ld/testsuite/ld-cris/weakref4.d | 4 +-
ld/testsuite/ld-crx/crx.exp | 2 +-
ld/testsuite/ld-csky/csky.exp | 15 +
ld/testsuite/ld-csky/data.d | 18 +
ld/testsuite/ld-csky/data.s | 10 +
ld/testsuite/ld-csky/data_section.s | 7 +
ld/testsuite/ld-csky/emit-relocs-1.d | 37 +
ld/testsuite/ld-csky/emit-relocs-1.ld | 20 +
ld/testsuite/ld-csky/emit-relocs-1a.s | 24 +
ld/testsuite/ld-csky/emit-relocs-1b.s | 18 +
ld/testsuite/ld-csky/got.d | 29 +
ld/testsuite/ld-csky/got.s | 19 +
ld/testsuite/ld-csky/hilo16.d | 14 +
ld/testsuite/ld-csky/hilo16.s | 7 +
ld/testsuite/ld-csky/hilo16_symbol.s | 2 +
ld/testsuite/ld-csky/tls-gd-v1.d | 30 +
ld/testsuite/ld-csky/tls-gd-v1.s | 26 +
ld/testsuite/ld-csky/tls-gd.d | 29 +
ld/testsuite/ld-csky/tls-gd.s | 20 +
ld/testsuite/ld-csky/tls-ie-v1.d | 25 +
ld/testsuite/ld-csky/tls-ie-v1.s | 29 +
ld/testsuite/ld-csky/tls-ie.d | 24 +
ld/testsuite/ld-csky/tls-ie.s | 27 +
ld/testsuite/ld-csky/tls-ld-v1.d | 29 +
ld/testsuite/ld-csky/tls-ld-v1.s | 34 +
ld/testsuite/ld-csky/tls-ld.d | 28 +
ld/testsuite/ld-csky/tls-ld.s | 28 +
ld/testsuite/ld-csky/tls-le-v1.d | 14 +
ld/testsuite/ld-csky/tls-le-v1.s | 29 +
ld/testsuite/ld-csky/tls-le.d | 13 +
ld/testsuite/ld-csky/tls-le.s | 23 +
ld/testsuite/ld-cygwin/exe-export.exp | 2 +-
ld/testsuite/ld-d10v/d10v.exp | 2 +-
ld/testsuite/ld-d10v/reloc-007.d | 1 -
ld/testsuite/ld-d10v/reloc-008.d | 1 -
ld/testsuite/ld-d10v/reloc-015.d | 1 -
ld/testsuite/ld-d10v/reloc-016.d | 1 -
ld/testsuite/ld-discard/discard.exp | 8 +-
ld/testsuite/ld-discard/extern.d | 3 +-
ld/testsuite/ld-discard/start.d | 3 +-
ld/testsuite/ld-discard/static.d | 3 +-
ld/testsuite/ld-elf/attributes.d | 2 +-
ld/testsuite/ld-elf/audit.exp | 7 +-
ld/testsuite/ld-elf/binutils.exp | 46 +-
ld/testsuite/ld-elf/changelma.d | 12 +
ld/testsuite/ld-elf/changelma.lnk | 11 +
ld/testsuite/ld-elf/changelma.s | 2 +
ld/testsuite/ld-elf/comm-data.exp | 8 +-
ld/testsuite/ld-elf/comm-data1.sd | 4 +-
ld/testsuite/ld-elf/comm-data2.ld | 1 +
ld/testsuite/ld-elf/comm-data2r.rd | 2 +-
ld/testsuite/ld-elf/comm-data4.s | 2 +
ld/testsuite/ld-elf/comm-data5.d | 1 -
ld/testsuite/ld-elf/comm-data5.s | 2 +
ld/testsuite/ld-elf/commonpage1.d | 2 +-
ld/testsuite/ld-elf/compress.exp | 13 +-
ld/testsuite/ld-elf/compress1-alt.s | 12 +
ld/testsuite/ld-elf/compress1.s | 2 +-
ld/testsuite/ld-elf/compress1a.d | 2 +-
ld/testsuite/ld-elf/compress1c.d | 2 +-
ld/testsuite/ld-elf/compressed1a.d | 2 +-
ld/testsuite/ld-elf/compressed1b.d | 2 +-
ld/testsuite/ld-elf/compressed1c.d | 2 +-
ld/testsuite/ld-elf/compressed1d-alt.d | 10 +
ld/testsuite/ld-elf/compressed1d.d | 6 +-
ld/testsuite/ld-elf/compressed1e.d | 4 +-
ld/testsuite/ld-elf/discard1.d | 2 +-
ld/testsuite/ld-elf/discard2.d | 2 +-
ld/testsuite/ld-elf/dummy.s | 1 +
ld/testsuite/ld-elf/dwarf.exp | 2 +-
ld/testsuite/ld-elf/dwarf2.err | 6 +-
ld/testsuite/ld-elf/dwarf3.err | 2 +-
ld/testsuite/ld-elf/dynamic1.d | 2 +-
ld/testsuite/ld-elf/dynsym1.d | 2 +-
ld/testsuite/ld-elf/eh-frame-hdr.d | 4 +-
ld/testsuite/ld-elf/eh-group.exp | 2 +-
ld/testsuite/ld-elf/eh3.d | 12 +-
ld/testsuite/ld-elf/eh4.d | 6 +-
ld/testsuite/ld-elf/eh5.d | 4 +-
ld/testsuite/ld-elf/eh5b.s | 2 +
ld/testsuite/ld-elf/ehdr_start-missing.d | 2 +-
ld/testsuite/ld-elf/ehdr_start-shared.d | 2 +-
ld/testsuite/ld-elf/ehdr_start-userdef.d | 2 +-
ld/testsuite/ld-elf/ehdr_start-weak.d | 2 +-
ld/testsuite/ld-elf/ehdr_start.d | 4 +-
ld/testsuite/ld-elf/elf.exp | 150 +-
ld/testsuite/ld-elf/empty-implib.out | 2 +-
ld/testsuite/ld-elf/empty.s | 3 +
ld/testsuite/ld-elf/empty2.s | 3 +
ld/testsuite/ld-elf/endsym.d | 2 +-
ld/testsuite/ld-elf/exclude.exp | 2 +-
ld/testsuite/ld-elf/exclude3.s | 3 +
ld/testsuite/ld-elf/exclude3b.d | 2 +-
ld/testsuite/ld-elf/export-class.exp | 3 +-
ld/testsuite/ld-elf/fini0.s | 2 +
ld/testsuite/ld-elf/frame.exp | 36 +-
ld/testsuite/ld-elf/global1.d | 2 +-
ld/testsuite/ld-elf/globalaudit.rd | 3 +
ld/testsuite/ld-elf/group1.d | 2 +-
ld/testsuite/ld-elf/group10.d | 3 +-
ld/testsuite/ld-elf/group11.d | 6 +
ld/testsuite/ld-elf/group12.d | 6 +
ld/testsuite/ld-elf/group12.ld | 14 +
ld/testsuite/ld-elf/group2.d | 9 +-
ld/testsuite/ld-elf/group3b.d | 2 +-
ld/testsuite/ld-elf/group4.d | 9 +-
ld/testsuite/ld-elf/group5.d | 9 +-
ld/testsuite/ld-elf/group6.d | 9 +-
ld/testsuite/ld-elf/group7.d | 15 +-
ld/testsuite/ld-elf/group8a.d | 10 +-
ld/testsuite/ld-elf/group8b.d | 10 +-
ld/testsuite/ld-elf/group9a.d | 11 +-
ld/testsuite/ld-elf/group9b.d | 23 +-
ld/testsuite/ld-elf/hash.d | 6 +-
ld/testsuite/ld-elf/header.d | 2 +-
ld/testsuite/ld-elf/indirect.exp | 84 +-
ld/testsuite/ld-elf/indirect5.map | 6 +
ld/testsuite/ld-elf/indirect5.out | 2 +
ld/testsuite/ld-elf/indirect5a.c | 9 +
ld/testsuite/ld-elf/indirect5b.c | 15 +
ld/testsuite/ld-elf/indirect6a.c | 9 +
ld/testsuite/ld-elf/init-fini-arrays.d | 8 +-
ld/testsuite/ld-elf/init-fini-arrays.s | 13 +-
ld/testsuite/ld-elf/init0.s | 2 +
ld/testsuite/ld-elf/interleave-0.d | 12 +
ld/testsuite/ld-elf/interleave-4.d | 12 +
ld/testsuite/ld-elf/interleave.ld | 11 +
ld/testsuite/ld-elf/interleave.s | 18 +
ld/testsuite/ld-elf/linkinfo1a.d | 6 +-
ld/testsuite/ld-elf/linkinfo1b.d | 6 +-
ld/testsuite/ld-elf/linkonce1b.s | 2 +
ld/testsuite/ld-elf/linkonce2.d | 4 +-
ld/testsuite/ld-elf/linux-x86.S | 91 +
ld/testsuite/ld-elf/linux-x86.exp | 92 +
ld/testsuite/ld-elf/loadaddr1.d | 4 +-
ld/testsuite/ld-elf/loadaddr2.d | 4 +-
ld/testsuite/ld-elf/loadaddr3a.d | 2 +-
ld/testsuite/ld-elf/loadaddr3b.d | 2 +-
ld/testsuite/ld-elf/local1.d | 2 +-
ld/testsuite/ld-elf/maxpage1.d | 2 +-
ld/testsuite/ld-elf/maxpage2.d | 2 +-
ld/testsuite/ld-elf/maxpage3a.d | 2 +-
ld/testsuite/ld-elf/mbind1a.d | 2 +-
ld/testsuite/ld-elf/mbind1b.d | 2 +-
ld/testsuite/ld-elf/mbind1c.d | 2 +-
ld/testsuite/ld-elf/mbind2a.s | 8 +-
ld/testsuite/ld-elf/merge.d | 11 +-
ld/testsuite/ld-elf/merge2.d | 3 +-
ld/testsuite/ld-elf/merge3.d | 3 +-
ld/testsuite/ld-elf/multibss1.d | 2 +-
ld/testsuite/ld-elf/noload-2.d | 2 +-
ld/testsuite/ld-elf/note-3.l | 2 +-
ld/testsuite/ld-elf/note-3.t | 2 +
ld/testsuite/ld-elf/note1.r | 6 +
ld/testsuite/ld-elf/note1_1.s | 17 +
ld/testsuite/ld-elf/note1_2.s | 17 +
ld/testsuite/ld-elf/notes.exp | 45 +
ld/testsuite/ld-elf/now-1.d | 2 +-
ld/testsuite/ld-elf/now-2.d | 2 +-
ld/testsuite/ld-elf/now-3.d | 4 +-
ld/testsuite/ld-elf/now-4.d | 4 +-
ld/testsuite/ld-elf/orphan-10.d | 3 +-
ld/testsuite/ld-elf/orphan-11.d | 8 +
ld/testsuite/ld-elf/orphan-11.ld | 16 +
ld/testsuite/ld-elf/orphan-11.s | 11 +
ld/testsuite/ld-elf/orphan-12.d | 8 +
ld/testsuite/ld-elf/orphan-12.s | 8 +
ld/testsuite/ld-elf/orphan-5.l | 4 +-
ld/testsuite/ld-elf/orphan-6.l | 4 +-
ld/testsuite/ld-elf/orphan-9.d | 3 +-
ld/testsuite/ld-elf/orphan-region.d | 4 +-
ld/testsuite/ld-elf/orphan.d | 4 +-
ld/testsuite/ld-elf/orphan3.d | 6 +-
ld/testsuite/ld-elf/orphan3a.s | 2 +
ld/testsuite/ld-elf/overlay.d | 2 -
ld/testsuite/ld-elf/pie.d | 2 +-
ld/testsuite/ld-elf/pr12851.d | 4 +-
ld/testsuite/ld-elf/pr12975.d | 5 +-
ld/testsuite/ld-elf/pr13177.d | 5 +-
ld/testsuite/ld-elf/pr13195.d | 5 +-
ld/testsuite/ld-elf/pr14156a.d | 1 +
ld/testsuite/ld-elf/pr14156b.d | 2 +
ld/testsuite/ld-elf/pr14926.d | 2 +-
ld/testsuite/ld-elf/pr14926.s | 2 +
ld/testsuite/ld-elf/pr16322.d | 4 +-
ld/testsuite/ld-elf/pr16496b.od | 2 +-
ld/testsuite/ld-elf/pr16498a.d | 2 +-
ld/testsuite/ld-elf/pr16498b.d | 2 +-
ld/testsuite/ld-elf/pr17550a.d | 5 +-
ld/testsuite/ld-elf/pr17550b.d | 5 +-
ld/testsuite/ld-elf/pr17550c.d | 6 +-
ld/testsuite/ld-elf/pr17550d.d | 6 +-
ld/testsuite/ld-elf/pr17615.d | 5 +-
ld/testsuite/ld-elf/pr18720b.c | 4 +
ld/testsuite/ld-elf/pr19162.d | 7 +-
ld/testsuite/ld-elf/pr19539.d | 6 +-
ld/testsuite/ld-elf/pr19579a.c | 2 +-
ld/testsuite/ld-elf/pr19617a.d | 4 +-
ld/testsuite/ld-elf/pr19617b.d | 4 +-
ld/testsuite/ld-elf/pr19617c.d | 4 +-
ld/testsuite/ld-elf/pr19698.d | 2 +-
ld/testsuite/ld-elf/pr19789.d | 2 +-
ld/testsuite/ld-elf/pr20513a.s | 3 +
ld/testsuite/ld-elf/pr20513c.d | 2 +-
ld/testsuite/ld-elf/pr20513d.d | 2 +-
ld/testsuite/ld-elf/pr20528a.d | 4 +-
ld/testsuite/ld-elf/pr20528b.d | 4 +-
ld/testsuite/ld-elf/pr20828-v.ld | 1 +
ld/testsuite/ld-elf/pr20828.ld | 1 +
ld/testsuite/ld-elf/pr21086.c | 8 +
ld/testsuite/ld-elf/pr21086.list | 3 +
ld/testsuite/ld-elf/pr21233.ld | 1 +
ld/testsuite/ld-elf/pr21384.d | 12 +
ld/testsuite/ld-elf/pr21384.dl | 4 +
ld/testsuite/ld-elf/pr21384.ld | 23 +
ld/testsuite/ld-elf/pr21384.s | 2 +
ld/testsuite/ld-elf/pr21389.map | 6 +
ld/testsuite/ld-elf/pr21389.s | 5 +
ld/testsuite/ld-elf/pr21389a.d | 10 +
ld/testsuite/ld-elf/pr21389b.d | 8 +
ld/testsuite/ld-elf/pr21389c.d | 8 +
ld/testsuite/ld-elf/pr21562a.d | 11 +
ld/testsuite/ld-elf/pr21562a.s | 12 +
ld/testsuite/ld-elf/pr21562a.t | 3 +
ld/testsuite/ld-elf/pr21562b.d | 11 +
ld/testsuite/ld-elf/pr21562b.s | 12 +
ld/testsuite/ld-elf/pr21562b.t | 5 +
ld/testsuite/ld-elf/pr21562c.d | 12 +
ld/testsuite/ld-elf/pr21562c.t | 9 +
ld/testsuite/ld-elf/pr21562d.d | 12 +
ld/testsuite/ld-elf/pr21562d.t | 7 +
ld/testsuite/ld-elf/pr21562e.d | 10 +
ld/testsuite/ld-elf/pr21562f.d | 10 +
ld/testsuite/ld-elf/pr21562g.d | 10 +
ld/testsuite/ld-elf/pr21562h.d | 10 +
ld/testsuite/ld-elf/pr21562i.d | 12 +
ld/testsuite/ld-elf/pr21562j.d | 12 +
ld/testsuite/ld-elf/pr21562k.d | 12 +
ld/testsuite/ld-elf/pr21562l.d | 12 +
ld/testsuite/ld-elf/pr21562m.d | 12 +
ld/testsuite/ld-elf/pr21562n.d | 12 +
ld/testsuite/ld-elf/pr21703-1.s | 6 +
ld/testsuite/ld-elf/pr21703-2.s | 6 +
ld/testsuite/ld-elf/pr21703-3.s | 15 +
ld/testsuite/ld-elf/pr21703-4.s | 15 +
ld/testsuite/ld-elf/pr21703-r.sd | 14 +
ld/testsuite/ld-elf/pr21703-shared.sd | 11 +
ld/testsuite/ld-elf/pr21703.sd | 4 +
ld/testsuite/ld-elf/pr21703.ver | 4 +
ld/testsuite/ld-elf/pr21884.d | 12 +
ld/testsuite/ld-elf/pr21884.t | 7 +
ld/testsuite/ld-elf/pr21884a.s | 5 +
ld/testsuite/ld-elf/pr21884b.s | 5 +
ld/testsuite/ld-elf/pr21903.s | 11 +
ld/testsuite/ld-elf/pr21903a.d | 8 +
ld/testsuite/ld-elf/pr21903b.d | 8 +
ld/testsuite/ld-elf/pr21903c.d | 3 +
ld/testsuite/ld-elf/pr21903d.d | 4 +
ld/testsuite/ld-elf/pr21903e.d | 3 +
ld/testsuite/ld-elf/pr21904.d | 6 +
ld/testsuite/ld-elf/pr21904.s | 5 +
ld/testsuite/ld-elf/pr21964-1a.c | 12 +
ld/testsuite/ld-elf/pr21964-1b.c | 12 +
ld/testsuite/ld-elf/pr21964-1c.c | 29 +
ld/testsuite/ld-elf/pr21964-2a.c | 12 +
ld/testsuite/ld-elf/pr21964-2b.c | 12 +
ld/testsuite/ld-elf/pr21964-2c.c | 32 +
ld/testsuite/ld-elf/pr21964-3a.c | 11 +
ld/testsuite/ld-elf/pr21964-3c.c | 17 +
ld/testsuite/ld-elf/pr21964-4.c | 22 +
ld/testsuite/ld-elf/pr21964-5.c | 26 +
ld/testsuite/ld-elf/pr21978.od | 7 +
ld/testsuite/ld-elf/pr21978a.c | 1 +
ld/testsuite/ld-elf/pr21978b.c | 1 +
ld/testsuite/ld-elf/pr22150.vd | 2 +
ld/testsuite/ld-elf/pr22150.ver | 6 +
ld/testsuite/ld-elf/pr22150a.s | 6 +
ld/testsuite/ld-elf/pr22150b.s | 13 +
ld/testsuite/ld-elf/pr22263-1.rd | 5 +
ld/testsuite/ld-elf/pr22263-1a.c | 7 +
ld/testsuite/ld-elf/pr22263-1b.c | 12 +
ld/testsuite/ld-elf/pr22269-1.c | 8 +
ld/testsuite/ld-elf/pr22269-1.rd | 5 +
ld/testsuite/ld-elf/pr22269.s | 13 +
ld/testsuite/ld-elf/pr22269a.d | 10 +
ld/testsuite/ld-elf/pr22269b.d | 11 +
ld/testsuite/ld-elf/pr22319.d | 9 +
ld/testsuite/ld-elf/pr22319.s | 2 +
ld/testsuite/ld-elf/pr22374-1.r | 8 +
ld/testsuite/ld-elf/pr22374-2.r | 4 +
ld/testsuite/ld-elf/pr22374a.s | 2 +
ld/testsuite/ld-elf/pr22374b.s | 5 +
ld/testsuite/ld-elf/pr22393-1.s | 21 +
ld/testsuite/ld-elf/pr22393-1a.d | 9 +
ld/testsuite/ld-elf/pr22393-1b.d | 9 +
ld/testsuite/ld-elf/pr22393-1c.d | 9 +
ld/testsuite/ld-elf/pr22393-1d.d | 9 +
ld/testsuite/ld-elf/pr22393-1e.d | 9 +
ld/testsuite/ld-elf/pr22393-1f.d | 9 +
ld/testsuite/ld-elf/pr22393-2a.c | 7 +
ld/testsuite/ld-elf/pr22393-2a.rd | 9 +
ld/testsuite/ld-elf/pr22393-2b.c | 7 +
ld/testsuite/ld-elf/pr22393-2b.rd | 9 +
ld/testsuite/ld-elf/pr22423.d | 8 +
ld/testsuite/ld-elf/pr22450.d | 12 +
ld/testsuite/ld-elf/pr22450.s | 19 +
ld/testsuite/ld-elf/pr22471.t | 1 +
ld/testsuite/ld-elf/pr22471a.s | 1 +
ld/testsuite/ld-elf/pr22471b.s | 17 +
ld/testsuite/ld-elf/pr22649-1.s | 4 +
ld/testsuite/ld-elf/pr22649-2a.s | 8 +
ld/testsuite/ld-elf/pr22649-2ab-mips.msg | 2 +
ld/testsuite/ld-elf/pr22649-2b.s | 7 +
ld/testsuite/ld-elf/pr22649-2cd-mips.msg | 1 +
ld/testsuite/ld-elf/pr22649.msg | 3 +
ld/testsuite/ld-elf/pr22677.d | 14 +
ld/testsuite/ld-elf/pr22677.s | 24 +
ld/testsuite/ld-elf/pr22836-1.s | 4 +
ld/testsuite/ld-elf/pr22836-1a.d | 7 +
ld/testsuite/ld-elf/pr22836-1b.d | 7 +
ld/testsuite/ld-elf/pr22836-2.d | 7 +
ld/testsuite/ld-elf/pr22836-2.s | 7 +
ld/testsuite/ld-elf/pr23161.map | 4 +
ld/testsuite/ld-elf/pr23161a.c | 9 +
ld/testsuite/ld-elf/pr23161a.rd | 16 +
ld/testsuite/ld-elf/pr23161b.c | 23 +
ld/testsuite/ld-elf/pr23161b.rd | 7 +
ld/testsuite/ld-elf/pr23161c.c | 9 +
ld/testsuite/ld-elf/pr23161c.rd | 6 +
ld/testsuite/ld-elf/pr23161d.rd | 8 +
ld/testsuite/ld-elf/pr23162.map | 4 +
ld/testsuite/ld-elf/pr23162.rd | 4 +
ld/testsuite/ld-elf/pr23162a.c | 4 +
ld/testsuite/ld-elf/pr23162b.c | 20 +
ld/testsuite/ld-elf/pr23428.c | 43 +
ld/testsuite/ld-elf/pr23591.d | 12 +
ld/testsuite/ld-elf/pr23591a.s | 14 +
ld/testsuite/ld-elf/pr23591b.s | 11 +
ld/testsuite/ld-elf/pr23591c.s | 26 +
ld/testsuite/ld-elf/pr23648.d | 9 +
ld/testsuite/ld-elf/pr23648.s | 15 +
ld/testsuite/ld-elf/pr23648.t | 10 +
ld/testsuite/ld-elf/pr23658-1a.d | 20 +
ld/testsuite/ld-elf/pr23658-1a.s | 21 +
ld/testsuite/ld-elf/pr23658-1b.d | 16 +
ld/testsuite/ld-elf/pr23658-1b.s | 16 +
ld/testsuite/ld-elf/pr23658-1c.d | 13 +
ld/testsuite/ld-elf/pr23658-1c.s | 16 +
ld/testsuite/ld-elf/pr23658-1d.s | 16 +
ld/testsuite/ld-elf/pr23658-2.rd | 6 +
ld/testsuite/ld-elf/pr23658-3.d | 8 +
ld/testsuite/ld-elf/pr23658-3.s | 4 +
ld/testsuite/ld-elf/pr23658-3.t | 14 +
ld/testsuite/ld-elf/pr2404.out | 4 +-
ld/testsuite/ld-elf/pr2404b.c | 8 +-
ld/testsuite/ld-elf/pr349.d | 4 +-
ld/testsuite/ld-elf/provide-hidden-1.ld | 1 +
ld/testsuite/ld-elf/provide-hidden-2.ld | 1 +
ld/testsuite/ld-elf/provide-hidden-dynabs.nd | 8 -
ld/testsuite/ld-elf/provide-hidden-dynsec.nd | 8 -
ld/testsuite/ld-elf/provide-hidden-s.ld | 1 +
ld/testsuite/ld-elf/provide-hidden.exp | 24 +-
ld/testsuite/ld-elf/readelf.exp | 12 +-
ld/testsuite/ld-elf/reloc-discard-warn.d | 10 +
ld/testsuite/ld-elf/reloc-discard.d | 13 +
ld/testsuite/ld-elf/reloc-discard.ld | 6 +
ld/testsuite/ld-elf/reloc-discard.s | 2 +
ld/testsuite/ld-elf/relocatable.d | 1 +
ld/testsuite/ld-elf/rpath-1.d | 4 +-
ld/testsuite/ld-elf/rpath-2.d | 4 +-
ld/testsuite/ld-elf/runpath-1.d | 2 +-
ld/testsuite/ld-elf/runpath-2.d | 2 +-
ld/testsuite/ld-elf/sec-to-seg.exp | 4 +-
ld/testsuite/ld-elf/sec64k.exp | 8 +-
ld/testsuite/ld-elf/seg.d | 2 +-
ld/testsuite/ld-elf/shared.exp | 735 +-
ld/testsuite/ld-elf/sizeof.s | 15 +
ld/testsuite/ld-elf/sizeofa.d | 12 +
ld/testsuite/ld-elf/sizeofb.d | 11 +
ld/testsuite/ld-elf/sizeofc.d | 12 +
ld/testsuite/ld-elf/stab.d | 6 +-
ld/testsuite/ld-elf/stack-noexec.rd | 3 +
ld/testsuite/ld-elf/start.s | 2 +
ld/testsuite/ld-elf/startof.s | 15 +
ld/testsuite/ld-elf/startofa.d | 12 +
ld/testsuite/ld-elf/startofb.d | 11 +
ld/testsuite/ld-elf/startofc.d | 12 +
ld/testsuite/ld-elf/strtab.d | 2 +-
ld/testsuite/ld-elf/textaddr1.d | 4 +-
ld/testsuite/ld-elf/textaddr2.d | 4 +-
ld/testsuite/ld-elf/textaddr3.d | 2 +-
ld/testsuite/ld-elf/textaddr4.d | 4 +-
ld/testsuite/ld-elf/textaddr5.d | 2 +-
ld/testsuite/ld-elf/textaddr6.d | 4 +-
ld/testsuite/ld-elf/textaddr7.d | 2 +-
ld/testsuite/ld-elf/textrel.map | 3 +
ld/testsuite/ld-elf/textrel.rd | 3 +
ld/testsuite/ld-elf/textrel.s | 5 +
ld/testsuite/ld-elf/textrel.warn | 3 +
ld/testsuite/ld-elf/tls.exp | 53 +
ld/testsuite/ld-elf/tls_common.exp | 12 +-
ld/testsuite/ld-elf/unknown2.d | 2 +-
ld/testsuite/ld-elf/var1.s | 2 +
ld/testsuite/ld-elf/ver_def-tic6x.vd | 20 -
ld/testsuite/ld-elf/warn1.d | 4 +-
ld/testsuite/ld-elf/warn2.d | 6 +-
ld/testsuite/ld-elf/warn3.d | 2 +-
ld/testsuite/ld-elf/wrap.exp | 2 +-
ld/testsuite/ld-elf/x86-feature-1a.rd | 6 +
ld/testsuite/ld-elf/x86-feature-1b.rd | 6 +
ld/testsuite/ld-elf/x86-feature-1c.rd | 6 +
ld/testsuite/ld-elf/x86-feature-1d.rd | 6 +
ld/testsuite/ld-elf/x86-feature-1e.rd | 6 +
ld/testsuite/ld-elfcomm/elfcomm.exp | 38 +-
ld/testsuite/ld-elfvers/vers.exp | 13 +-
ld/testsuite/ld-elfvsb/elfvsb.exp | 44 +-
ld/testsuite/ld-elfvsb/hidden2.d | 2 +-
ld/testsuite/ld-elfweak/alias.c | 3 +
ld/testsuite/ld-elfweak/alias.dat | 1 +
ld/testsuite/ld-elfweak/aliasmain.c | 12 +
ld/testsuite/ld-elfweak/elfweak.exp | 179 +-
ld/testsuite/ld-elfweak/weakref1.c | 2 +
ld/testsuite/ld-elfweak/weakref2.c | 2 +
ld/testsuite/ld-fastcall/fastcall.exp | 2 +-
ld/testsuite/ld-frv/fdpic-pie-1.d | 2 +-
ld/testsuite/ld-frv/fdpic-pie-2.d | 2 +-
ld/testsuite/ld-frv/fdpic-pie-6.d | 2 +-
ld/testsuite/ld-frv/fdpic-pie-7.d | 2 +-
ld/testsuite/ld-frv/fdpic-pie-8.d | 2 +-
ld/testsuite/ld-frv/fdpic-shared-1.d | 6 +-
ld/testsuite/ld-frv/fdpic-shared-2.d | 16 +-
ld/testsuite/ld-frv/fdpic-shared-3.d | 6 +-
ld/testsuite/ld-frv/fdpic-shared-4.d | 6 +-
ld/testsuite/ld-frv/fdpic-shared-5.d | 10 +-
ld/testsuite/ld-frv/fdpic-shared-6.d | 2 +-
ld/testsuite/ld-frv/fdpic-shared-7.d | 6 +-
ld/testsuite/ld-frv/fdpic-shared-8.d | 8 +-
ld/testsuite/ld-frv/fdpic-shared-local-2.d | 2 +-
ld/testsuite/ld-frv/fdpic-shared-local-8.d | 2 +-
ld/testsuite/ld-frv/fdpic.exp | 2 +-
ld/testsuite/ld-frv/frv-elf.exp | 2 +-
ld/testsuite/ld-frv/tls-dynamic-2.d | 20 +-
ld/testsuite/ld-frv/tls.exp | 2 +-
ld/testsuite/ld-gc/abi-note.d | 3 +-
ld/testsuite/ld-gc/all-debug-sections.d | 2 +-
ld/testsuite/ld-gc/gc.exp | 32 +-
ld/testsuite/ld-gc/personality.d | 2 +-
ld/testsuite/ld-gc/pr11218.d | 2 +-
ld/testsuite/ld-gc/pr13683.d | 2 +-
ld/testsuite/ld-gc/pr19161.d | 4 +-
ld/testsuite/ld-gc/pr19167.d | 4 +-
ld/testsuite/ld-gc/pr20022.d | 10 +
ld/testsuite/ld-gc/pr20022a.s | 9 +
ld/testsuite/ld-gc/pr20022b.s | 8 +
ld/testsuite/ld-gc/pr20882.d | 12 +
ld/testsuite/ld-gc/pr20882a.s | 8 +
ld/testsuite/ld-gc/pr20882b.s | 12 +
ld/testsuite/ld-gc/pr20882c.s | 5 +
ld/testsuite/ld-gc/start.d | 4 +-
ld/testsuite/ld-gc/stop.d | 9 +
ld/testsuite/ld-gc/stop.s | 8 +
ld/testsuite/ld-h8300/h8300.exp | 24 +-
ld/testsuite/ld-h8300/relax-3-coff.d | 36 -
ld/testsuite/ld-h8300/relax-4-coff.d | 76 -
ld/testsuite/ld-h8300/relax-5-coff.d | 50 -
ld/testsuite/ld-h8300/relax-6-coff.d | 11 -
ld/testsuite/ld-i386/abs-iamcu.d | 2 +-
ld/testsuite/ld-i386/abs.d | 2 +-
ld/testsuite/ld-i386/call3c.d | 12 +-
ld/testsuite/ld-i386/combreloc.d | 2 +-
ld/testsuite/ld-i386/discarded1.s | 2 +-
ld/testsuite/ld-i386/emit-relocs-nacl.rd | 4 +-
ld/testsuite/ld-i386/emit-relocs.rd | 4 +-
ld/testsuite/ld-i386/export-class.exp | 2 +-
ld/testsuite/ld-i386/i386.exp | 582 +-
ld/testsuite/ld-i386/ibt-plt-1.d | 51 +
ld/testsuite/ld-i386/ibt-plt-1.s | 54 +
ld/testsuite/ld-i386/ibt-plt-2.s | 54 +
ld/testsuite/ld-i386/ibt-plt-2a.d | 52 +
ld/testsuite/ld-i386/ibt-plt-2b.d | 48 +
ld/testsuite/ld-i386/ibt-plt-2c.d | 52 +
ld/testsuite/ld-i386/ibt-plt-2d.d | 54 +
ld/testsuite/ld-i386/ibt-plt-3.s | 38 +
ld/testsuite/ld-i386/ibt-plt-3a.d | 52 +
ld/testsuite/ld-i386/ibt-plt-3b.d | 49 +
ld/testsuite/ld-i386/ibt-plt-3c.d | 52 +
ld/testsuite/ld-i386/ibt-plt-3d.d | 54 +
ld/testsuite/ld-i386/lea1d.d | 2 +-
ld/testsuite/ld-i386/lea1e.d | 2 +-
ld/testsuite/ld-i386/lea1f.d | 2 +-
ld/testsuite/ld-i386/load1-nacl.d | 84 +-
ld/testsuite/ld-i386/load1.d | 86 +-
ld/testsuite/ld-i386/no-plt.exp | 107 +-
ld/testsuite/ld-i386/pie1-nacl.d | 18 +
ld/testsuite/ld-i386/pie1.d | 17 +
ld/testsuite/ld-i386/pie1.s | 5 +
ld/testsuite/ld-i386/plt-main-ibt.dd | 7 +
ld/testsuite/ld-i386/plt-pic2.dd | 33 +
ld/testsuite/ld-i386/plt-pie-ibt.dd | 7 +
ld/testsuite/ld-i386/plt2.dd | 34 +
ld/testsuite/ld-i386/plt2.rd | 9 +
ld/testsuite/ld-i386/plt2.s | 7 +
ld/testsuite/ld-i386/pr12570a.d | 1 +
ld/testsuite/ld-i386/pr12570b.d | 1 +
ld/testsuite/ld-i386/pr12718.d | 2 +-
ld/testsuite/ld-i386/pr12921.d | 2 +-
ld/testsuite/ld-i386/pr13302.d | 2 +-
ld/testsuite/ld-i386/pr17689now.rd | 3 +-
ld/testsuite/ld-i386/pr17709-nacl.rd | 2 +-
ld/testsuite/ld-i386/pr17709.rd | 2 +-
ld/testsuite/ld-i386/pr17935-1.d | 2 +-
ld/testsuite/ld-i386/pr17935-2.d | 2 +-
ld/testsuite/ld-i386/pr19539.d | 2 +-
ld/testsuite/ld-i386/pr19615.d | 2 +-
ld/testsuite/ld-i386/pr19636-1a.d | 4 +-
ld/testsuite/ld-i386/pr19636-1b.d | 2 +-
ld/testsuite/ld-i386/pr19636-1d.d | 6 +-
ld/testsuite/ld-i386/pr19636-1e.d | 2 +-
ld/testsuite/ld-i386/pr19636-1f.d | 2 +-
ld/testsuite/ld-i386/pr19636-1j.d | 13 +
ld/testsuite/ld-i386/pr19636-1k.d | 20 +
ld/testsuite/ld-i386/pr19636-1l.d | 27 +
ld/testsuite/ld-i386/pr19636-2a.d | 4 +-
ld/testsuite/ld-i386/pr19636-2b.d | 6 +-
ld/testsuite/ld-i386/pr19636-2c.d | 10 +-
ld/testsuite/ld-i386/pr19636-2d-nacl.d | 2 +-
ld/testsuite/ld-i386/pr19636-2e-nacl.d | 2 +-
ld/testsuite/ld-i386/pr19636-3a.d | 2 +-
ld/testsuite/ld-i386/pr19636-3d.d | 2 +-
ld/testsuite/ld-i386/pr19636-3e.d | 2 +-
ld/testsuite/ld-i386/pr19636-3h.d | 6 +
ld/testsuite/ld-i386/pr19636-3i.d | 6 +
ld/testsuite/ld-i386/pr19636-4a.d | 2 +-
ld/testsuite/ld-i386/pr19636-4d.d | 2 +-
ld/testsuite/ld-i386/pr19645.d | 2 +-
ld/testsuite/ld-i386/pr19827-nacl.rd | 2 +-
ld/testsuite/ld-i386/pr19827.rd | 2 +-
ld/testsuite/ld-i386/pr20244-1a.d | 2 +-
ld/testsuite/ld-i386/pr20244-1b.d | 2 +-
ld/testsuite/ld-i386/pr20244-2a.d | 2 +-
ld/testsuite/ld-i386/pr20244-2b.d | 2 +-
ld/testsuite/ld-i386/pr20244-2c.d | 2 +-
ld/testsuite/ld-i386/pr20244-4a.d | 2 +-
ld/testsuite/ld-i386/pr20244-4b.d | 2 +-
ld/testsuite/ld-i386/pr20253-4a.d | 2 +-
ld/testsuite/ld-i386/pr20253-4b.d | 2 +-
ld/testsuite/ld-i386/pr20253-5.d | 2 +-
ld/testsuite/ld-i386/pr20830.d | 20 +-
ld/testsuite/ld-i386/pr21884-nacl.d | 10 +
ld/testsuite/ld-i386/pr21884-nacl.t | 11 +
ld/testsuite/ld-i386/pr21884.d | 10 +
ld/testsuite/ld-i386/pr21884.t | 11 +
ld/testsuite/ld-i386/pr21997-1a.S | 35 +
ld/testsuite/ld-i386/pr21997-1b.c | 16 +
ld/testsuite/ld-i386/pr21997-1c.S | 51 +
ld/testsuite/ld-i386/pr22001-1a.c | 13 +
ld/testsuite/ld-i386/pr22001-1b.c | 14 +
ld/testsuite/ld-i386/pr22001-1c.S | 51 +
ld/testsuite/ld-i386/pr22115-1.s | 7 +
ld/testsuite/ld-i386/pr22115-1a.d | 13 +
ld/testsuite/ld-i386/pr22115-1b.d | 6 +
ld/testsuite/ld-i386/pr22115-1c.d | 13 +
ld/testsuite/ld-i386/pr22115-1d.d | 6 +
ld/testsuite/ld-i386/pr22135.d | 12 +
ld/testsuite/ld-i386/pr22135.s | 11 +
ld/testsuite/ld-i386/pr22782.d | 10 +
ld/testsuite/ld-i386/pr22782.s | 15 +
ld/testsuite/ld-i386/pr22842a.c | 20 +
ld/testsuite/ld-i386/pr22842b.S | 41 +
ld/testsuite/ld-i386/pr22929.d | 11 +
ld/testsuite/ld-i386/pr22929.s | 21 +
ld/testsuite/ld-i386/pr23189.d | 5 +
ld/testsuite/ld-i386/pr23189.s | 5 +
ld/testsuite/ld-i386/pr23189.t | 11 +
ld/testsuite/ld-i386/pr23194.d | 7 +
ld/testsuite/ld-i386/pr23194.map | 7 +
ld/testsuite/ld-i386/pr23194.s | 13 +
ld/testsuite/ld-i386/pr23372a.d | 5 +
ld/testsuite/ld-i386/pr23372a.s | 18 +
ld/testsuite/ld-i386/pr23372b.d | 5 +
ld/testsuite/ld-i386/pr23372b.s | 18 +
ld/testsuite/ld-i386/pr23372c.d | 5 +
ld/testsuite/ld-i386/pr23372c.s | 18 +
ld/testsuite/ld-i386/pr23372d.d | 5 +
ld/testsuite/ld-i386/pr23486a.d | 10 +
ld/testsuite/ld-i386/pr23486b.d | 10 +
ld/testsuite/ld-i386/pr23486c.d | 10 +
ld/testsuite/ld-i386/pr23486d.d | 10 +
ld/testsuite/ld-i386/pr23854.d | 28 +
ld/testsuite/ld-i386/pr23854.s | 33 +
ld/testsuite/ld-i386/property-1a.r | 9 +
ld/testsuite/ld-i386/property-2a.r | 9 +
ld/testsuite/ld-i386/property-3.r | 3 +-
ld/testsuite/ld-i386/property-3a.r | 9 +
ld/testsuite/ld-i386/property-4.r | 3 +-
ld/testsuite/ld-i386/property-4a.r | 9 +
ld/testsuite/ld-i386/property-5.r | 3 +-
ld/testsuite/ld-i386/property-5a.r | 9 +
ld/testsuite/ld-i386/property-7a.r | 8 +
ld/testsuite/ld-i386/property-x86-1.S | 4 +-
ld/testsuite/ld-i386/property-x86-2.S | 4 +-
ld/testsuite/ld-i386/property-x86-3.d | 10 +
ld/testsuite/ld-i386/property-x86-3.s | 51 +
ld/testsuite/ld-i386/property-x86-4a.d | 12 +
ld/testsuite/ld-i386/property-x86-4a.s | 5 +
ld/testsuite/ld-i386/property-x86-4b.d | 10 +
ld/testsuite/ld-i386/property-x86-4b.s | 20 +
ld/testsuite/ld-i386/property-x86-5.d | 11 +
ld/testsuite/ld-i386/property-x86-empty.s | 27 +
ld/testsuite/ld-i386/property-x86-ibt.s | 27 +
ld/testsuite/ld-i386/property-x86-ibt1a.d | 11 +
ld/testsuite/ld-i386/property-x86-ibt1b.d | 11 +
ld/testsuite/ld-i386/property-x86-ibt2.d | 11 +
ld/testsuite/ld-i386/property-x86-ibt3a.d | 12 +
ld/testsuite/ld-i386/property-x86-ibt3b.d | 12 +
ld/testsuite/ld-i386/property-x86-ibt4.d | 11 +
ld/testsuite/ld-i386/property-x86-ibt5.d | 11 +
ld/testsuite/ld-i386/property-x86-shstk.s | 27 +
ld/testsuite/ld-i386/property-x86-shstk1a.d | 11 +
ld/testsuite/ld-i386/property-x86-shstk1b.d | 11 +
ld/testsuite/ld-i386/property-x86-shstk2.d | 11 +
ld/testsuite/ld-i386/property-x86-shstk3a.d | 12 +
ld/testsuite/ld-i386/property-x86-shstk3b.d | 12 +
ld/testsuite/ld-i386/property-x86-shstk4.d | 11 +
ld/testsuite/ld-i386/property-x86-shstk5.d | 11 +
ld/testsuite/ld-i386/protected7.d | 13 +
ld/testsuite/ld-i386/protected7.s | 31 +
ld/testsuite/ld-i386/tls.exp | 140 +-
ld/testsuite/ld-i386/tlsbin-nacl.rd | 5 +-
ld/testsuite/ld-i386/tlsbin.rd | 5 +-
ld/testsuite/ld-i386/tlsbin2-nacl.rd | 3 -
ld/testsuite/ld-i386/tlsbin2.rd | 3 -
ld/testsuite/ld-i386/tlsbindesc-nacl.rd | 9 +-
ld/testsuite/ld-i386/tlsbindesc.rd | 9 +-
ld/testsuite/ld-i386/tlsdesc-nacl.rd | 6 -
ld/testsuite/ld-i386/tlsdesc.rd | 6 -
ld/testsuite/ld-i386/tlsdesc1a.c | 19 +
ld/testsuite/ld-i386/tlsdesc1b.c | 8 +
ld/testsuite/ld-i386/tlsdesc2.d | 10 +
ld/testsuite/ld-i386/tlsgdesc-nacl.rd | 6 -
ld/testsuite/ld-i386/tlsgdesc.rd | 6 -
ld/testsuite/ld-i386/tlsnopic-nacl.rd | 14 +-
ld/testsuite/ld-i386/tlsnopic.dd | 12 +-
ld/testsuite/ld-i386/tlsnopic.rd | 6 -
ld/testsuite/ld-i386/tlsnopic.sd | 4 +-
ld/testsuite/ld-i386/tlspic-nacl.rd | 8 +-
ld/testsuite/ld-i386/tlspic.rd | 8 +-
ld/testsuite/ld-i386/tlspic2-nacl.rd | 6 -
ld/testsuite/ld-i386/tlspic2.rd | 6 -
ld/testsuite/ld-i386/tlspie1.d | 2 +-
ld/testsuite/ld-i386/tlspie2.d | 2 +-
ld/testsuite/ld-i386/undefweakb.d | 2 +-
ld/testsuite/ld-i386/vxworks1-static.d | 2 +-
ld/testsuite/ld-i386/vxworks2.sd | 5 -
ld/testsuite/ld-i386/warn1.d | 2 +-
ld/testsuite/ld-i386/weakundef1.c | 16 +
ld/testsuite/ld-ia64/ia64.exp | 7 +-
ld/testsuite/ld-ia64/line.exp | 2 +-
ld/testsuite/ld-ia64/merge1.d | 4 +-
ld/testsuite/ld-ia64/merge2.d | 4 +-
ld/testsuite/ld-ia64/merge3.d | 4 +-
ld/testsuite/ld-ia64/merge4.d | 4 +-
ld/testsuite/ld-ia64/merge5.d | 4 +-
ld/testsuite/ld-ia64/tlsbin.rd | 7 +-
ld/testsuite/ld-ia64/tlspic.rd | 8 +-
ld/testsuite/ld-ifunc/binutils.exp | 8 +-
ld/testsuite/ld-ifunc/ifunc-1-local-x86.d | 5 +-
ld/testsuite/ld-ifunc/ifunc-1-local-x86.map | 3 +
ld/testsuite/ld-ifunc/ifunc-1-x86.d | 5 +-
ld/testsuite/ld-ifunc/ifunc-1-x86.map | 3 +
ld/testsuite/ld-ifunc/ifunc-10-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-10-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-11-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-11-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-12-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-12-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-13-i386.d | 3 +-
ld/testsuite/ld-ifunc/ifunc-13-x86-64.d | 3 +-
ld/testsuite/ld-ifunc/ifunc-14a-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-14a-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-14b-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-14b-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-14c-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-14c-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-14d-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-14d-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-14e-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-14e-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-14f-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-14f-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-15-i386.d | 3 +-
ld/testsuite/ld-ifunc/ifunc-15-x86-64.d | 3 +-
ld/testsuite/ld-ifunc/ifunc-16-i386-now.d | 11 +
ld/testsuite/ld-ifunc/ifunc-16-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-16-x86-64-now.d | 11 +
ld/testsuite/ld-ifunc/ifunc-16-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-17a-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-17a-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-17b-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-17b-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-18a-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-18a-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-18b-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-18b-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-19a-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-19a-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-19b-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-19b-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-2-i386-now.d | 36 +
ld/testsuite/ld-ifunc/ifunc-2-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-2-local-i386-now.d | 36 +
ld/testsuite/ld-ifunc/ifunc-2-local-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-2-local-x86-64-now.d | 32 +
ld/testsuite/ld-ifunc/ifunc-2-local-x86-64.d | 7 +-
ld/testsuite/ld-ifunc/ifunc-2-x86-64-now.d | 32 +
ld/testsuite/ld-ifunc/ifunc-2-x86-64.d | 7 +-
ld/testsuite/ld-ifunc/ifunc-20-i386.d | 5 +-
ld/testsuite/ld-ifunc/ifunc-20-x86-64.d | 5 +-
ld/testsuite/ld-ifunc/ifunc-21-i386.d | 3 +-
ld/testsuite/ld-ifunc/ifunc-21-x86-64.d | 3 +-
ld/testsuite/ld-ifunc/ifunc-22-i386.d | 3 +-
ld/testsuite/ld-ifunc/ifunc-22-x86-64.d | 3 +-
ld/testsuite/ld-ifunc/ifunc-23a-x86.d | 2 +-
ld/testsuite/ld-ifunc/ifunc-23b-x86.d | 2 +-
ld/testsuite/ld-ifunc/ifunc-23c-x86.d | 2 +-
ld/testsuite/ld-ifunc/ifunc-24a-x86.d | 2 +-
ld/testsuite/ld-ifunc/ifunc-24b-x86.d | 4 +-
ld/testsuite/ld-ifunc/ifunc-24c-x86.d | 4 +-
ld/testsuite/ld-ifunc/ifunc-25a-x86.d | 2 +-
ld/testsuite/ld-ifunc/ifunc-25b-x86.d | 4 +-
ld/testsuite/ld-ifunc/ifunc-25c-x86.d | 4 +-
ld/testsuite/ld-ifunc/ifunc-26.d | 7 +
ld/testsuite/ld-ifunc/ifunc-26.s | 8 +
ld/testsuite/ld-ifunc/ifunc-3a-x86.d | 4 +-
ld/testsuite/ld-ifunc/ifunc-5a-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-5a-local-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-5a-local-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-5a-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-5b-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-5b-local-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-5b-local-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-5b-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-5r-local-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-5r-local-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-6a-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-6a-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-6b-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-6b-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-7a-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-7a-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-7b-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-7b-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-8-i386.d | 1 +
ld/testsuite/ld-ifunc/ifunc-8-x86-64.d | 1 +
ld/testsuite/ld-ifunc/ifunc-9-i386.d | 10 +
ld/testsuite/ld-ifunc/ifunc-9-x86-64.d | 10 +
ld/testsuite/ld-ifunc/ifunc-9-x86.d | 3 -
ld/testsuite/ld-ifunc/ifunc.exp | 300 +-
ld/testsuite/ld-ifunc/ifuncmod5.d | 8 +
ld/testsuite/ld-ifunc/ifuncmod5.s | 105 +
ld/testsuite/ld-ifunc/pr17154-i386-now.d | 52 +
ld/testsuite/ld-ifunc/pr17154-i386.d | 37 +-
ld/testsuite/ld-ifunc/pr17154-x86-64-now.d | 51 +
ld/testsuite/ld-ifunc/pr17154-x86-64.d | 67 +-
ld/testsuite/ld-ifunc/pr23169a.c | 9 +
ld/testsuite/ld-ifunc/pr23169a.rd | 3 +
ld/testsuite/ld-ifunc/pr23169b.c | 23 +
ld/testsuite/ld-ifunc/pr23169b.rd | 4 +
ld/testsuite/ld-ifunc/pr23169c.c | 13 +
ld/testsuite/ld-ifunc/pr23169c.rd | 3 +
ld/testsuite/ld-libs/libs.exp | 2 +-
ld/testsuite/ld-linkonce/linkonce.exp | 7 +-
ld/testsuite/ld-linkonce/zeroeh.ld | 1 +
ld/testsuite/ld-m68hc11/m68hc11.exp | 2 +-
ld/testsuite/ld-m68k/got-1.d | 4 +-
.../ld-m68k/got-multigot-12-13-14-34-35-ok.d | 2 +-
ld/testsuite/ld-m68k/got-multigot-14-ok.d | 2 +-
ld/testsuite/ld-m68k/got-multigot-15-er.d | 2 +-
ld/testsuite/ld-m68k/got-negative-12-13-14-34-ok.d | 2 +-
ld/testsuite/ld-m68k/got-negative-12-13-14-35-er.d | 2 +-
ld/testsuite/ld-m68k/got-negative-14-ok.d | 2 +-
ld/testsuite/ld-m68k/got-negative-15-er.d | 2 +-
ld/testsuite/ld-m68k/got-single-12-ok.d | 2 +-
ld/testsuite/ld-m68k/got-single-13-er.d | 2 +-
.../ld-m68k/got-xgot-12-13-14-15-34-35-ok.d | 2 +-
ld/testsuite/ld-m68k/got-xgot-15-ok.d | 2 +-
ld/testsuite/ld-m68k/m68k-got.exp | 2 +-
ld/testsuite/ld-m68k/m68k.exp | 9 +-
ld/testsuite/ld-m68k/tls-def-1.d | 3 -
ld/testsuite/ld-m68k/tls-gd-1.d | 2 +-
ld/testsuite/ld-m68k/tls-gd-1.d2 | 3 -
ld/testsuite/ld-m68k/tls-gd-2.d | 2 +-
ld/testsuite/ld-m68k/tls-gd-ie-1.d | 2 +-
ld/testsuite/ld-m68k/tls-ie-1.d | 2 +-
ld/testsuite/ld-m68k/tls-ld-1.d | 2 +-
ld/testsuite/ld-m68k/tls-ld-2.d | 2 +-
ld/testsuite/ld-mep/mep.exp | 2 +-
ld/testsuite/ld-metag/metag.exp | 10 +-
ld/testsuite/ld-metag/shared.d | 4 +-
ld/testsuite/ld-metag/stub_pic_app.d | 8 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-0-n32-ph.d | 6 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-0-n64-ph.d | 6 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-1-n32-ph.d | 6 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-1-n64-ph.d | 6 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-12.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-13.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-14.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-16.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-17.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-18.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-19.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-2-n32-ph.d | 6 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-2-n64-ph.d | 6 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-21.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-23.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-24.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-25.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-26.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-27.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-28.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-29.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-3-n32-ph.d | 6 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-3-n64-ph.d | 6 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-31.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-32.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-34.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-35.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-36.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-37.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-38.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-39.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-41.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-42.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-43.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-45.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-46.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-47.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-48.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-49.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-52.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-53.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-54.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-58.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-59.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-61.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-62.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-63.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-64.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-68.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-69.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-71.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-72.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-73.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-74.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-78.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-79.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-81.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-4-89.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-8-12.d | 2 +-
ld/testsuite/ld-mips-elf/attr-gnu-8-21.d | 2 +-
.../ld-mips-elf/bal-jalx-addend-micromips-n32.d | 5 +
.../ld-mips-elf/bal-jalx-addend-micromips-n64.d | 5 +
.../ld-mips-elf/bal-jalx-addend-micromips.d | 21 +
ld/testsuite/ld-mips-elf/bal-jalx-addend-n32.d | 3 +-
ld/testsuite/ld-mips-elf/bal-jalx-addend-n64.d | 3 +-
ld/testsuite/ld-mips-elf/bal-jalx-addend.d | 3 +-
.../ld-mips-elf/bal-jalx-local-micromips-n32.d | 5 +
.../ld-mips-elf/bal-jalx-local-micromips-n64.d | 5 +
.../ld-mips-elf/bal-jalx-local-micromips.d | 19 +
ld/testsuite/ld-mips-elf/bal-jalx-local-n32.d | 3 +-
ld/testsuite/ld-mips-elf/bal-jalx-local-n64.d | 3 +-
ld/testsuite/ld-mips-elf/bal-jalx-local.d | 3 +-
.../bal-jalx-pic-ignore-micromips-n32.d | 6 +
.../bal-jalx-pic-ignore-micromips-n64.d | 6 +
.../ld-mips-elf/bal-jalx-pic-ignore-micromips.d | 22 +
ld/testsuite/ld-mips-elf/bal-jalx-pic-ignore-n32.d | 4 +-
ld/testsuite/ld-mips-elf/bal-jalx-pic-ignore-n64.d | 4 +-
ld/testsuite/ld-mips-elf/bal-jalx-pic-ignore.d | 4 +-
.../ld-mips-elf/bal-jalx-pic-micromips-n32.d | 6 +
.../ld-mips-elf/bal-jalx-pic-micromips-n64.d | 6 +
ld/testsuite/ld-mips-elf/bal-jalx-pic-micromips.d | 6 +
ld/testsuite/ld-mips-elf/bal-jalx-pic-n32.d | 8 +-
ld/testsuite/ld-mips-elf/bal-jalx-pic-n64.d | 8 +-
ld/testsuite/ld-mips-elf/bal-jalx-pic.d | 8 +-
ld/testsuite/ld-mips-elf/binary.d | 8 +
ld/testsuite/ld-mips-elf/binary.ld | 5 +
ld/testsuite/ld-mips-elf/binary.s | 2 +
.../ld-mips-elf/branch-absolute-addend-n32.d | 3 +-
.../ld-mips-elf/branch-absolute-addend-n64.d | 3 +-
ld/testsuite/ld-mips-elf/branch-absolute-addend.d | 3 +-
ld/testsuite/ld-mips-elf/branch-absolute-n32.d | 3 +-
ld/testsuite/ld-mips-elf/branch-absolute-n64.d | 3 +-
ld/testsuite/ld-mips-elf/branch-absolute.d | 3 +-
ld/testsuite/ld-mips-elf/comm-data.exp | 92 +-
ld/testsuite/ld-mips-elf/dyn-sec64.d | 4 +-
ld/testsuite/ld-mips-elf/eh-frame1-n32.d | 4 +-
ld/testsuite/ld-mips-elf/eh-frame1-n64.d | 4 +-
ld/testsuite/ld-mips-elf/eh-frame2-n32.d | 4 +-
ld/testsuite/ld-mips-elf/eh-frame2-n64.d | 4 +-
ld/testsuite/ld-mips-elf/elf-rel-got-n32-embed.d | 2 +-
ld/testsuite/ld-mips-elf/elf-rel-got-n32.d | 2 +-
ld/testsuite/ld-mips-elf/elf-rel-got-n64-embed.d | 2 +-
ld/testsuite/ld-mips-elf/elf-rel-got-n64-irix.d | 326 +
ld/testsuite/ld-mips-elf/elf-rel-got-n64-linux.d | 327 -
ld/testsuite/ld-mips-elf/elf-rel-got-n64.d | 594 +-
ld/testsuite/ld-mips-elf/elf-rel-xgot-n32-embed.d | 2 +-
ld/testsuite/ld-mips-elf/elf-rel-xgot-n32.d | 2 +-
ld/testsuite/ld-mips-elf/elf-rel-xgot-n64-embed.d | 2 +-
ld/testsuite/ld-mips-elf/elf-rel-xgot-n64-irix.d | 440 +
ld/testsuite/ld-mips-elf/elf-rel-xgot-n64-linux.d | 445 -
ld/testsuite/ld-mips-elf/elf-rel-xgot-n64.d | 826 +-
ld/testsuite/ld-mips-elf/emit-relocs-1.d | 6 +-
ld/testsuite/ld-mips-elf/export-class.exp | 2 +-
ld/testsuite/ld-mips-elf/got-dump-2.d | 4 +-
ld/testsuite/ld-mips-elf/got-page-2.d | 3 +-
ld/testsuite/ld-mips-elf/gp-disp-sym.d | 9 +
ld/testsuite/ld-mips-elf/gp-disp-sym.s | 5 +
ld/testsuite/ld-mips-elf/hash1a.d | 1 +
ld/testsuite/ld-mips-elf/hash1b.d | 1 +
ld/testsuite/ld-mips-elf/hash1c.d | 1 +
ld/testsuite/ld-mips-elf/jal-global-overflow-0.d | 3 +-
ld/testsuite/ld-mips-elf/jal-global-overflow-1.d | 7 +-
ld/testsuite/ld-mips-elf/jal-local-overflow-0.d | 3 +-
ld/testsuite/ld-mips-elf/jal-local-overflow-1.d | 7 +-
ld/testsuite/ld-mips-elf/jalbal.d | 4 +-
ld/testsuite/ld-mips-elf/jalx-addend-n32.d | 3 +-
ld/testsuite/ld-mips-elf/jalx-addend-n64.d | 3 +-
ld/testsuite/ld-mips-elf/jalx-addend.d | 3 +-
ld/testsuite/ld-mips-elf/jalx-local-n32.d | 3 +-
ld/testsuite/ld-mips-elf/jalx-local-n64.d | 3 +-
ld/testsuite/ld-mips-elf/jalx-local.d | 3 +-
ld/testsuite/ld-mips-elf/jr-to-b-1.d | 4 +-
ld/testsuite/ld-mips-elf/jr-to-b-2.d | 4 +-
ld/testsuite/ld-mips-elf/lsi-4010-isa.d | 23 +
.../micromips-branch-absolute-addend-n32.d | 3 +-
.../micromips-branch-absolute-addend-n64.d | 3 +-
.../ld-mips-elf/micromips-branch-absolute-addend.d | 3 +-
.../ld-mips-elf/micromips-branch-absolute-n32.d | 3 +-
.../ld-mips-elf/micromips-branch-absolute-n64.d | 3 +-
.../ld-mips-elf/micromips-branch-absolute.d | 3 +-
ld/testsuite/ld-mips-elf/mips-abiflags-0.d | 9 +
ld/testsuite/ld-mips-elf/mips-abiflags-0.ld | 5 +
ld/testsuite/ld-mips-elf/mips-abiflags-0r.d | 6 +
ld/testsuite/ld-mips-elf/mips-abiflags-1.d | 6 +
ld/testsuite/ld-mips-elf/mips-abiflags-1.ld | 5 +
ld/testsuite/ld-mips-elf/mips-abiflags-1r.d | 6 +
ld/testsuite/ld-mips-elf/mips-abiflags-2.d | 6 +
ld/testsuite/ld-mips-elf/mips-abiflags-2r.d | 6 +
ld/testsuite/ld-mips-elf/mips-elf-flags.exp | 165 +-
ld/testsuite/ld-mips-elf/mips-elf.exp | 1251 +-
ld/testsuite/ld-mips-elf/mips16-branch-2.d | 3 +-
ld/testsuite/ld-mips-elf/mips16-branch-3.d | 3 +-
.../ld-mips-elf/mips16-branch-absolute-1.d | 5 +
.../ld-mips-elf/mips16-branch-absolute-2.d | 5 +
.../ld-mips-elf/mips16-branch-absolute-addend-1.d | 5 +
.../mips16-branch-absolute-addend-n32-1.d | 5 +
.../mips16-branch-absolute-addend-n32.d | 3 +-
.../mips16-branch-absolute-addend-n64-1.d | 5 +
.../mips16-branch-absolute-addend-n64.d | 3 +-
.../ld-mips-elf/mips16-branch-absolute-addend.d | 3 +-
.../ld-mips-elf/mips16-branch-absolute-n32-1.d | 5 +
.../ld-mips-elf/mips16-branch-absolute-n32-2.d | 5 +
.../ld-mips-elf/mips16-branch-absolute-n32.d | 3 +-
.../ld-mips-elf/mips16-branch-absolute-n64-1.d | 5 +
.../ld-mips-elf/mips16-branch-absolute-n64-2.d | 5 +
.../ld-mips-elf/mips16-branch-absolute-n64.d | 3 +-
ld/testsuite/ld-mips-elf/mips16-branch-absolute.d | 3 +-
ld/testsuite/ld-mips-elf/mips16-branch-addend-2.d | 3 +-
ld/testsuite/ld-mips-elf/mips16-branch-addend-3.d | 3 +-
ld/testsuite/ld-mips-elf/mips16-hilo-n32.d | 3 +-
ld/testsuite/ld-mips-elf/mips16-pcrel-0.d | 40 +
ld/testsuite/ld-mips-elf/mips16-pcrel-1.d | 41 +
ld/testsuite/ld-mips-elf/mips16-pcrel-addend-2.d | 18 +
ld/testsuite/ld-mips-elf/mips16-pcrel-addend-6.d | 19 +
ld/testsuite/ld-mips-elf/mips16-pcrel-n32-0.d | 5 +
ld/testsuite/ld-mips-elf/mips16-pcrel-n32-1.d | 5 +
.../ld-mips-elf/mips16-pcrel-n64-sym32-0.d | 6 +
.../ld-mips-elf/mips16-pcrel-n64-sym32-1.d | 6 +
ld/testsuite/ld-mips-elf/mips16-pic-2.ad | 4 +-
ld/testsuite/ld-mips-elf/mips16-pic-2.nd | 10 +-
ld/testsuite/ld-mips-elf/mips16-pic-4a.nd | 11 +-
ld/testsuite/ld-mips-elf/mips16e2-pcrel-0.d | 37 +
ld/testsuite/ld-mips-elf/mips16e2-pcrel-1.d | 45 +
ld/testsuite/ld-mips-elf/mips16e2-pcrel-addend-2.d | 17 +
ld/testsuite/ld-mips-elf/mips16e2-pcrel-addend-6.d | 17 +
ld/testsuite/ld-mips-elf/mips16e2-pcrel-n32-0.d | 6 +
ld/testsuite/ld-mips-elf/mips16e2-pcrel-n32-1.d | 6 +
.../ld-mips-elf/mips16e2-pcrel-n64-sym32-0.d | 6 +
.../ld-mips-elf/mips16e2-pcrel-n64-sym32-1.d | 6 +
ld/testsuite/ld-mips-elf/mode-change-error-1.d | 6 +-
ld/testsuite/ld-mips-elf/multi-got-1.d | 4 +-
ld/testsuite/ld-mips-elf/multi-got-hidden-1.d | 4 +-
ld/testsuite/ld-mips-elf/multi-got-hidden-2.d | 4 +-
ld/testsuite/ld-mips-elf/multi-got-no-shared.d | 4 +-
ld/testsuite/ld-mips-elf/n64-plt-1.dd | 26 +
ld/testsuite/ld-mips-elf/n64-plt-1.gd | 18 +
ld/testsuite/ld-mips-elf/n64-plt-1.ld | 22 +
ld/testsuite/ld-mips-elf/n64-plt-2.ed | 1 +
ld/testsuite/ld-mips-elf/n64-plt-2.ld | 23 +
ld/testsuite/ld-mips-elf/n64-plt-3.ed | 1 +
ld/testsuite/ld-mips-elf/n64-plt-3.ld | 23 +
ld/testsuite/ld-mips-elf/n64-plt-4.dd | 26 +
ld/testsuite/ld-mips-elf/n64-plt-4.gd | 18 +
ld/testsuite/ld-mips-elf/n64-plt-4.ld | 23 +
ld/testsuite/ld-mips-elf/n64-plt-lib.s | 11 +
ld/testsuite/ld-mips-elf/n64-plt.s | 9 +
ld/testsuite/ld-mips-elf/no-shared-1-n32.d | 3 +-
ld/testsuite/ld-mips-elf/no-shared-1-n64.d | 3 +-
ld/testsuite/ld-mips-elf/no-shared-1-o32.d | 3 +-
ld/testsuite/ld-mips-elf/pic-and-nonpic-2.d | 3 +-
ld/testsuite/ld-mips-elf/pic-and-nonpic-3-error.d | 4 +-
ld/testsuite/ld-mips-elf/pic-and-nonpic-3a.dd | 2 +-
ld/testsuite/ld-mips-elf/pic-and-nonpic-4-error.d | 4 +-
ld/testsuite/ld-mips-elf/pie-n32.d | 15 +-
ld/testsuite/ld-mips-elf/pie-n64.d | 15 +-
ld/testsuite/ld-mips-elf/pie-o32.d | 15 +-
ld/testsuite/ld-mips-elf/pr21334.dd | 10 +
ld/testsuite/ld-mips-elf/pr21334.gd | 11 +
ld/testsuite/ld-mips-elf/pr21334.ld | 9 +
ld/testsuite/ld-mips-elf/pr21334.s | 20 +
ld/testsuite/ld-mips-elf/pr21375-abi.hd | 4 +
ld/testsuite/ld-mips-elf/pr21375-irix.sd | 1 +
ld/testsuite/ld-mips-elf/pr21375-mips16.s | 63 +
ld/testsuite/ld-mips-elf/pr21375-n32.s | 59 +
ld/testsuite/ld-mips-elf/pr21375-n64.s | 59 +
ld/testsuite/ld-mips-elf/pr21375-noabi.hd | 4 +
ld/testsuite/ld-mips-elf/pr21375-xgot.ld | 20 +
ld/testsuite/ld-mips-elf/pr21375-xgot.s | 62 +
ld/testsuite/ld-mips-elf/pr21375.dd | 23 +
ld/testsuite/ld-mips-elf/pr21375.gd | 12 +
ld/testsuite/ld-mips-elf/pr21375.ld | 20 +
ld/testsuite/ld-mips-elf/pr21375.s | 54 +
ld/testsuite/ld-mips-elf/pr21375.sd | 1 +
ld/testsuite/ld-mips-elf/pr21375.ver | 1 +
ld/testsuite/ld-mips-elf/pr21375h-irix.sd | 1 +
ld/testsuite/ld-mips-elf/pr21375h.dd | 23 +
ld/testsuite/ld-mips-elf/pr21375h.gd | 12 +
ld/testsuite/ld-mips-elf/pr21375h.sd | 1 +
ld/testsuite/ld-mips-elf/pr21375p-irix.sd | 10 +
ld/testsuite/ld-mips-elf/pr21375p.dd | 23 +
ld/testsuite/ld-mips-elf/pr21375p.gd | 12 +
ld/testsuite/ld-mips-elf/pr21375p.sd | 7 +
ld/testsuite/ld-mips-elf/pr21375ph-irix.sd | 9 +
ld/testsuite/ld-mips-elf/pr21375ph.dd | 23 +
ld/testsuite/ld-mips-elf/pr21375ph.gd | 16 +
ld/testsuite/ld-mips-elf/pr21375ph.sd | 6 +
ld/testsuite/ld-mips-elf/pr21375s-irix.sd | 9 +
ld/testsuite/ld-mips-elf/pr21375s-n32-irix.sd | 5 +
ld/testsuite/ld-mips-elf/pr21375s-n32.dd | 27 +
ld/testsuite/ld-mips-elf/pr21375s-n32.gd | 11 +
ld/testsuite/ld-mips-elf/pr21375s-n32.sd | 5 +
ld/testsuite/ld-mips-elf/pr21375s-n64-irix.sd | 5 +
ld/testsuite/ld-mips-elf/pr21375s-n64.dd | 27 +
ld/testsuite/ld-mips-elf/pr21375s-n64.gd | 11 +
ld/testsuite/ld-mips-elf/pr21375s-n64.sd | 5 +
ld/testsuite/ld-mips-elf/pr21375s.dd | 23 +
ld/testsuite/ld-mips-elf/pr21375s.gd | 12 +
ld/testsuite/ld-mips-elf/pr21375s.sd | 6 +
ld/testsuite/ld-mips-elf/pr21375sh-irix.sd | 8 +
ld/testsuite/ld-mips-elf/pr21375sh-n32-irix.sd | 5 +
ld/testsuite/ld-mips-elf/pr21375sh-n32.dd | 27 +
ld/testsuite/ld-mips-elf/pr21375sh-n32.gd | 15 +
ld/testsuite/ld-mips-elf/pr21375sh-n32.sd | 5 +
ld/testsuite/ld-mips-elf/pr21375sh-n64-irix.sd | 5 +
ld/testsuite/ld-mips-elf/pr21375sh-n64.dd | 27 +
ld/testsuite/ld-mips-elf/pr21375sh-n64.gd | 15 +
ld/testsuite/ld-mips-elf/pr21375sh-n64.sd | 5 +
ld/testsuite/ld-mips-elf/pr21375sh.dd | 23 +
ld/testsuite/ld-mips-elf/pr21375sh.gd | 16 +
ld/testsuite/ld-mips-elf/pr21375sh.sd | 5 +
ld/testsuite/ld-mips-elf/pr21375shg-irix.sd | 7 +
ld/testsuite/ld-mips-elf/pr21375shg.dd | 13 +
ld/testsuite/ld-mips-elf/pr21375shg.gd | 12 +
ld/testsuite/ld-mips-elf/pr21375shg.sd | 4 +
ld/testsuite/ld-mips-elf/pr21375shl-irix.sd | 5 +
ld/testsuite/ld-mips-elf/pr21375shl.gd | 16 +
ld/testsuite/ld-mips-elf/pr21375shl.sd | 5 +
ld/testsuite/ld-mips-elf/pr21375shv-irix.sd | 6 +
ld/testsuite/ld-mips-elf/pr21375shv.gd | 16 +
ld/testsuite/ld-mips-elf/pr21375shv.sd | 6 +
ld/testsuite/ld-mips-elf/pr21375sm16.dd | 28 +
ld/testsuite/ld-mips-elf/pr21375sm16h.dd | 28 +
ld/testsuite/ld-mips-elf/pr21375su-n32.dd | 29 +
ld/testsuite/ld-mips-elf/pr21375su-n64.dd | 29 +
ld/testsuite/ld-mips-elf/pr21375su.dd | 25 +
ld/testsuite/ld-mips-elf/pr21375suh-n32.dd | 29 +
ld/testsuite/ld-mips-elf/pr21375suh-n64.dd | 29 +
ld/testsuite/ld-mips-elf/pr21375suh.dd | 25 +
ld/testsuite/ld-mips-elf/pr21375sux.dd | 33 +
ld/testsuite/ld-mips-elf/pr21375suxh.dd | 33 +
ld/testsuite/ld-mips-elf/pr21375sx-irix.sd | 9 +
ld/testsuite/ld-mips-elf/pr21375sx.dd | 31 +
ld/testsuite/ld-mips-elf/pr21375sx.gd | 12 +
ld/testsuite/ld-mips-elf/pr21375sx.sd | 6 +
ld/testsuite/ld-mips-elf/pr21375sxh-irix.sd | 8 +
ld/testsuite/ld-mips-elf/pr21375sxh.dd | 31 +
ld/testsuite/ld-mips-elf/pr21375sxh.gd | 16 +
ld/testsuite/ld-mips-elf/pr21375sxh.sd | 5 +
ld/testsuite/ld-mips-elf/pr21375v.ver | 1 +
ld/testsuite/ld-mips-elf/reginfo-0.d | 9 +
ld/testsuite/ld-mips-elf/reginfo-0.ld | 5 +
ld/testsuite/ld-mips-elf/reginfo-0r.d | 9 +
ld/testsuite/ld-mips-elf/reginfo-1.d | 9 +
ld/testsuite/ld-mips-elf/reginfo-1.ld | 5 +
ld/testsuite/ld-mips-elf/reginfo-1.s | 10 +
ld/testsuite/ld-mips-elf/reginfo-1r.d | 9 +
ld/testsuite/ld-mips-elf/reginfo-2.d | 9 +
ld/testsuite/ld-mips-elf/reginfo-2.s | 10 +
ld/testsuite/ld-mips-elf/reginfo-2r.d | 9 +
ld/testsuite/ld-mips-elf/rel32-n32.d | 10 +-
ld/testsuite/ld-mips-elf/rel32-o32.d | 10 +-
ld/testsuite/ld-mips-elf/rel64.d | 10 +-
ld/testsuite/ld-mips-elf/relax-jalr-n32-shared.d | 1 +
ld/testsuite/ld-mips-elf/relax-jalr-n32.d | 4 +-
ld/testsuite/ld-mips-elf/relax-jalr-n64-shared.d | 1 +
ld/testsuite/ld-mips-elf/relax-offset-umips.dd | 15 +
ld/testsuite/ld-mips-elf/relax-offset-umips.gd | 11 +
ld/testsuite/ld-mips-elf/relax-offset.dd | 19 +
ld/testsuite/ld-mips-elf/relax-offset.gd | 11 +
ld/testsuite/ld-mips-elf/relax-offset.ld | 16 +
ld/testsuite/ld-mips-elf/reloc-1-n32.d | 4 +-
ld/testsuite/ld-mips-elf/reloc-1-n64.d | 4 +-
ld/testsuite/ld-mips-elf/reloc-2.d | 6 +-
ld/testsuite/ld-mips-elf/reloc-3-n32.d | 4 +-
ld/testsuite/ld-mips-elf/reloc-local-overflow.d | 3 +-
ld/testsuite/ld-mips-elf/stub-dynsym-2.dd | 17 +
ld/testsuite/ld-mips-elf/stub-dynsym-2.gd | 12 +
ld/testsuite/ld-mips-elf/stub-dynsym-2.ld | 21 +
ld/testsuite/ld-mips-elf/stub-dynsym-2.s | 2 +
ld/testsuite/ld-mips-elf/stub-dynsym-2.sd | 5 +
ld/testsuite/ld-mips-elf/stub-dynsym-discard-2.gd | 12 +
ld/testsuite/ld-mips-elf/stub-dynsym-discard-2.ld | 22 +
ld/testsuite/ld-mips-elf/stub-dynsym-discard-2.sd | 5 +
.../ld-mips-elf/stub-dynsym-micromips-1-10000.d | 17 +
.../ld-mips-elf/stub-dynsym-micromips-1-2fe80.d | 17 +
.../ld-mips-elf/stub-dynsym-micromips-1-7fff.d | 15 +
.../ld-mips-elf/stub-dynsym-micromips-1-8000.d | 15 +
.../ld-mips-elf/stub-dynsym-micromips-1-fff0.d | 15 +
.../ld-mips-elf/stub-dynsym-micromips-2.dd | 16 +
.../ld-mips-elf/stub-dynsym-micromips-2.gd | 12 +
.../ld-mips-elf/stub-dynsym-micromips-2.sd | 5 +
.../stub-dynsym-micromips-insn32-1-10000.d | 18 +
.../stub-dynsym-micromips-insn32-1-2fe80.d | 18 +
.../stub-dynsym-micromips-insn32-1-7fff.d | 16 +
.../stub-dynsym-micromips-insn32-1-8000.d | 16 +
.../stub-dynsym-micromips-insn32-1-fff0.d | 16 +
.../ld-mips-elf/stub-dynsym-micromips-insn32-2.dd | 17 +
.../ld-mips-elf/stub-dynsym-micromips-insn32-2.gd | 12 +
.../ld-mips-elf/stub-dynsym-micromips-insn32-2.sd | 5 +
ld/testsuite/ld-mips-elf/textrel-1.d | 3 +-
ld/testsuite/ld-mips-elf/tlsbin-pie-o32.d | 43 +
ld/testsuite/ld-mips-elf/tlsbin-pie-o32.got | 7 +
ld/testsuite/ld-mips-elf/tlsdyn-o32-1.d | 4 +-
ld/testsuite/ld-mips-elf/tlsdyn-o32-1.got | 7 +-
ld/testsuite/ld-mips-elf/tlsdyn-o32-2.d | 4 +-
ld/testsuite/ld-mips-elf/tlsdyn-o32-2.got | 7 +-
ld/testsuite/ld-mips-elf/tlsdyn-o32-3.d | 4 +-
ld/testsuite/ld-mips-elf/tlsdyn-o32-3.got | 7 +-
ld/testsuite/ld-mips-elf/tlsdyn-o32.d | 2 +-
ld/testsuite/ld-mips-elf/tlsdyn-o32.got | 7 +-
ld/testsuite/ld-mips-elf/tlsdyn-pie-o32.d | 53 +
ld/testsuite/ld-mips-elf/tlsdyn-pie-o32.got | 13 +
ld/testsuite/ld-mips-elf/tlslib-o32-hidden.got | 10 +-
ld/testsuite/ld-mips-elf/tlslib-o32-ver.got | 12 +-
ld/testsuite/ld-mips-elf/tlslib-o32.got | 12 +-
ld/testsuite/ld-mips-elf/unaligned-branch-2.d | 93 +-
.../ld-mips-elf/unaligned-branch-ignore-2.d | 65 +-
.../unaligned-branch-ignore-micromips.d | 85 +-
.../ld-mips-elf/unaligned-branch-ignore-mips16.d | 37 +-
.../ld-mips-elf/unaligned-branch-ignore-r6-1.d | 73 +-
.../ld-mips-elf/unaligned-branch-micromips.d | 157 +-
ld/testsuite/ld-mips-elf/unaligned-branch-mips16.d | 73 +-
ld/testsuite/ld-mips-elf/unaligned-branch-r6-1.d | 115 +-
ld/testsuite/ld-mips-elf/unaligned-branch-r6-2.d | 66 +-
ld/testsuite/ld-mips-elf/unaligned-branch.d | 24 +-
ld/testsuite/ld-mips-elf/unaligned-jalx-1.d | 4 +-
ld/testsuite/ld-mips-elf/unaligned-jalx-3.d | 4 +-
ld/testsuite/ld-mips-elf/unaligned-jalx-addend-0.d | 3 +-
ld/testsuite/ld-mips-elf/unaligned-jalx-addend-1.d | 29 +-
ld/testsuite/ld-mips-elf/unaligned-jalx-addend-2.d | 3 +-
ld/testsuite/ld-mips-elf/unaligned-jalx-addend-3.d | 29 +-
.../unaligned-jalx-addend-micromips-0.d | 3 +-
.../unaligned-jalx-addend-micromips-1.d | 29 +-
.../ld-mips-elf/unaligned-jalx-addend-mips16-0.d | 3 +-
.../ld-mips-elf/unaligned-jalx-addend-mips16-1.d | 29 +-
.../ld-mips-elf/unaligned-jalx-micromips-1.d | 4 +-
ld/testsuite/ld-mips-elf/unaligned-jalx-mips16-1.d | 4 +-
.../ld-mips-elf/unaligned-jump-micromips.d | 119 +-
ld/testsuite/ld-mips-elf/unaligned-jump-mips16.d | 59 +-
ld/testsuite/ld-mips-elf/unaligned-jump.d | 97 +-
ld/testsuite/ld-mips-elf/unaligned-ldpc-0.d | 4 +-
ld/testsuite/ld-mips-elf/unaligned-ldpc-1.d | 6 +-
ld/testsuite/ld-mips-elf/unaligned-lwpc-0.d | 4 +-
ld/testsuite/ld-mips-elf/unaligned-lwpc-1.d | 6 +-
ld/testsuite/ld-mips-elf/undefined-warn.d | 13 +
ld/testsuite/ld-mips-elf/undefined.d | 2 +-
ld/testsuite/ld-mips-elf/undefined.s | 4 +
ld/testsuite/ld-mips-elf/vxworks1-static.d | 2 +-
ld/testsuite/ld-mips-elf/vxworks1.rd | 2 +-
ld/testsuite/ld-misc/defsym.exp | 2 +-
ld/testsuite/ld-misc/defsym1.d | 2 +-
ld/testsuite/ld-mmix/bpo-10.d | 1 -
ld/testsuite/ld-mmix/bpo-20.d | 2 +-
ld/testsuite/ld-mmix/bpo-20m.d | 2 +-
ld/testsuite/ld-mmix/bpo-7.d | 2 +-
ld/testsuite/ld-mmix/bpo-7m.d | 2 +-
ld/testsuite/ld-mmix/bpo-8.d | 2 +-
ld/testsuite/ld-mmix/bpo-8m.d | 2 +-
ld/testsuite/ld-mmix/greg-17.d | 2 +-
ld/testsuite/ld-mmix/greg-18.d | 2 +-
ld/testsuite/ld-mmix/greg-8.d | 2 +-
ld/testsuite/ld-mmix/greg-9.d | 2 +-
ld/testsuite/ld-mmix/mmix.exp | 2 +-
ld/testsuite/ld-mmix/pr20125.d | 21 +
ld/testsuite/ld-mmix/pr20125.s | 2 +
ld/testsuite/ld-mmix/start-2.d | 2 +-
ld/testsuite/ld-mmix/undef-3.d | 17 +-
ld/testsuite/ld-mn10300/mn10300.exp | 5 +-
ld/testsuite/ld-msp430-elf/main-bss-lower.d | 3 +
ld/testsuite/ld-msp430-elf/main-bss-upper.d | 3 +
ld/testsuite/ld-msp430-elf/main-const-lower.d | 3 +
ld/testsuite/ld-msp430-elf/main-const-upper.d | 3 +
ld/testsuite/ld-msp430-elf/main-text-lower.d | 3 +
ld/testsuite/ld-msp430-elf/main-text-upper.d | 6 +
ld/testsuite/ld-msp430-elf/main-var-lower.d | 3 +
ld/testsuite/ld-msp430-elf/main-var-upper.d | 3 +
.../ld-msp430-elf/main-with-data-bss-unique-sec.s | 78 +
ld/testsuite/ld-msp430-elf/main-with-data-bss.s | 74 +
.../main-with-text-rodata-unique-sec.s | 59 +
ld/testsuite/ld-msp430-elf/main-with-text-rodata.s | 59 +
ld/testsuite/ld-msp430-elf/msp430-elf.exp | 141 +
ld/testsuite/ld-msp430-elf/msp430-no-lower.ld | 54 +
ld/testsuite/ld-msp430-elf/msp430-tiny-ram.ld | 49 +
ld/testsuite/ld-msp430-elf/msp430-tiny-rom.ld | 48 +
ld/testsuite/ld-msp430-elf/msp430.ld | 78 +
ld/testsuite/ld-nds32/branch.d | 22 +-
ld/testsuite/ld-nds32/diff.d | 6 +-
ld/testsuite/ld-nds32/gp.d | 18 +-
ld/testsuite/ld-nds32/imm.d | 8 +-
ld/testsuite/ld-nds32/nds32.exp | 2 +-
ld/testsuite/ld-nds32/relax_jmp.d | 6 +-
ld/testsuite/ld-nds32/relax_load_store.d | 6 +-
ld/testsuite/ld-or1k/offsets1.d | 212 +
ld/testsuite/ld-or1k/offsets1.s | 14 +
ld/testsuite/ld-or1k/or1k.exp | 91 +
ld/testsuite/ld-or1k/plt1.dd | 27 +
ld/testsuite/ld-or1k/plt1.s | 11 +
ld/testsuite/ld-or1k/plt1.x.dd | 27 +
ld/testsuite/ld-or1k/plta1.dd | 27 +
ld/testsuite/ld-or1k/plta1.s | 11 +
ld/testsuite/ld-or1k/pltlib.s | 12 +
ld/testsuite/ld-pe/pe-compile.exp | 2 +-
ld/testsuite/ld-pe/pe-run.exp | 2 +-
ld/testsuite/ld-pe/pe-run2.exp | 2 +-
ld/testsuite/ld-pe/pe.exp | 4 +-
ld/testsuite/ld-pe/pr19803.d | 2 +-
ld/testsuite/ld-pe/weakdef-1.d | 8 +
ld/testsuite/ld-pe/weakdef-1.s | 19 +
ld/testsuite/ld-pie/pie.exp | 2 +-
ld/testsuite/ld-plugin/lto-3r.d | 2 +-
ld/testsuite/ld-plugin/lto-5r.d | 2 +-
ld/testsuite/ld-plugin/lto.exp | 162 +-
ld/testsuite/ld-plugin/plugin-14.d | 2 +-
ld/testsuite/ld-plugin/plugin-15.d | 2 +-
ld/testsuite/ld-plugin/plugin-16.d | 2 +-
ld/testsuite/ld-plugin/plugin-20.d | 2 +-
ld/testsuite/ld-plugin/plugin-21.d | 2 +-
ld/testsuite/ld-plugin/plugin-22.d | 2 +-
ld/testsuite/ld-plugin/plugin-23.d | 2 +-
ld/testsuite/ld-plugin/plugin-6.d | 2 +-
ld/testsuite/ld-plugin/plugin-7.d | 2 +-
ld/testsuite/ld-plugin/plugin-8.d | 2 +-
ld/testsuite/ld-plugin/plugin.exp | 2 +-
ld/testsuite/ld-plugin/pr12982.d | 1 +
ld/testsuite/ld-plugin/pr21382a.c | 17 +
ld/testsuite/ld-plugin/pr21382b.c | 7 +
ld/testsuite/ld-plugin/pr22220.h | 8 +
ld/testsuite/ld-plugin/pr22220lib.cc | 6 +
ld/testsuite/ld-plugin/pr22220lib.ver | 1 +
ld/testsuite/ld-plugin/pr22220main.cc | 12 +
ld/testsuite/ld-plugin/pr22502a.c | 16 +
ld/testsuite/ld-plugin/pr22502b.c | 3 +
ld/testsuite/ld-plugin/pr22721.t | 7 +
ld/testsuite/ld-plugin/pr22721a.s | 8 +
ld/testsuite/ld-plugin/pr22721b.c | 7 +
ld/testsuite/ld-plugin/pr22751.c | 17 +
ld/testsuite/ld-plugin/pr22983.1.d | 6 +
ld/testsuite/ld-plugin/pr22983.2.d | 6 +
ld/testsuite/ld-plugin/pr22983.3.d | 6 +
ld/testsuite/ld-plugin/pr22983.4.d | 5 +
ld/testsuite/ld-plugin/pr22983.d | 11 +
ld/testsuite/ld-plugin/pr22983.t | 6 +
ld/testsuite/ld-plugin/pr22983a.c | 14 +
ld/testsuite/ld-plugin/pr22983b.c | 10 +
ld/testsuite/ld-plugin/pr23309.c | 10 +
ld/testsuite/ld-plugin/pr23309.d | 3 +
ld/testsuite/ld-plugin/pr23460a.c | 4 +
ld/testsuite/ld-plugin/pr23460b.c | 4 +
ld/testsuite/ld-plugin/pr23460c.c | 4 +
ld/testsuite/ld-plugin/pr23460d.c | 4 +
ld/testsuite/ld-plugin/pr23460e.c | 4 +
ld/testsuite/ld-plugin/pr23460f.c | 4 +
ld/testsuite/ld-plugin/pr23818.d | 4 +
ld/testsuite/ld-plugin/pr23818.t | 4 +
ld/testsuite/ld-plugin/pr23818a.c | 4 +
ld/testsuite/ld-plugin/pr23818b.c | 7 +
ld/testsuite/ld-powerpc/aix-weak-3-32.d | 2 +-
ld/testsuite/ld-powerpc/aix-weak-3-64.d | 2 +-
ld/testsuite/ld-powerpc/aix52.exp | 2 +-
ld/testsuite/ld-powerpc/ambiguousv1.d | 8 +-
ld/testsuite/ld-powerpc/ambiguousv1b.d | 13 +-
ld/testsuite/ld-powerpc/ambiguousv2.d | 14 +-
ld/testsuite/ld-powerpc/ambiguousv2b.d | 13 +-
ld/testsuite/ld-powerpc/attr-gnu-12-21.d | 2 +-
ld/testsuite/ld-powerpc/attr-gnu-4-12.d | 2 +-
ld/testsuite/ld-powerpc/attr-gnu-4-13.d | 2 +-
ld/testsuite/ld-powerpc/attr-gnu-4-21.d | 2 +-
ld/testsuite/ld-powerpc/attr-gnu-4-23.d | 2 +-
ld/testsuite/ld-powerpc/attr-gnu-4-31.d | 2 +-
ld/testsuite/ld-powerpc/attr-gnu-4-32.d | 2 +-
ld/testsuite/ld-powerpc/attr-gnu-8-23.d | 2 +-
ld/testsuite/ld-powerpc/big.s | 2 +
ld/testsuite/ld-powerpc/elfv2.s | 9 +
ld/testsuite/ld-powerpc/elfv2exe.d | 26 +-
ld/testsuite/ld-powerpc/elfv2so.d | 62 +-
ld/testsuite/ld-powerpc/export-class.exp | 2 +-
ld/testsuite/ld-powerpc/ext.d | 17 +
ld/testsuite/ld-powerpc/ext.lnk | 6 +
ld/testsuite/ld-powerpc/ext.s | 9 +
ld/testsuite/ld-powerpc/notoc.d | 102 +
ld/testsuite/ld-powerpc/notoc.s | 58 +
ld/testsuite/ld-powerpc/notoc.wf | 33 +
ld/testsuite/ld-powerpc/powerpc.exp | 151 +-
ld/testsuite/ld-powerpc/ppc476-shared.d | 6 +-
ld/testsuite/ld-powerpc/ppc476-shared.lnk | 2 +-
ld/testsuite/ld-powerpc/ppc476-shared2.d | 14 +-
ld/testsuite/ld-powerpc/relaxr.d | 26 +-
ld/testsuite/ld-powerpc/relaxrl.d | 27 +
ld/testsuite/ld-powerpc/relbrlt.d | 2 +-
ld/testsuite/ld-powerpc/relocsort.d | 2 +-
ld/testsuite/ld-powerpc/tls.d | 40 +-
ld/testsuite/ld-powerpc/tls.s | 31 +-
ld/testsuite/ld-powerpc/tls32.s | 34 +-
ld/testsuite/ld-powerpc/tlsexe.d | 43 +-
ld/testsuite/ld-powerpc/tlsexe.r | 9 +-
ld/testsuite/ld-powerpc/tlsexe32.d | 18 +-
ld/testsuite/ld-powerpc/tlsexe32.g | 2 +-
ld/testsuite/ld-powerpc/tlsexe32.r | 10 +-
ld/testsuite/ld-powerpc/tlsexetoc.d | 25 +-
ld/testsuite/ld-powerpc/tlsexetoc.r | 9 +-
ld/testsuite/ld-powerpc/tlsld.d | 16 +-
ld/testsuite/ld-powerpc/tlsmark.d | 16 +-
ld/testsuite/ld-powerpc/tlsopt1_32.d | 2 +-
ld/testsuite/ld-powerpc/tlsopt1_32.s | 2 +-
ld/testsuite/ld-powerpc/tlsopt2_32.d | 4 +-
ld/testsuite/ld-powerpc/tlsopt2_32.s | 4 +-
ld/testsuite/ld-powerpc/tlsopt3_32.d | 4 +-
ld/testsuite/ld-powerpc/tlsopt3_32.s | 4 +-
ld/testsuite/ld-powerpc/tlsopt4.d | 20 +-
ld/testsuite/ld-powerpc/tlsopt4_32.s | 10 +-
ld/testsuite/ld-powerpc/tlsopt5.d | 36 +-
ld/testsuite/ld-powerpc/tlsopt5.s | 5 +
ld/testsuite/ld-powerpc/tlsopt5.wf | 27 +
ld/testsuite/ld-powerpc/tlsopt5_32.d | 55 +-
ld/testsuite/ld-powerpc/tlsopt5_32.s | 18 +-
ld/testsuite/ld-powerpc/tlsso.d | 9 +-
ld/testsuite/ld-powerpc/tlsso.r | 12 +-
ld/testsuite/ld-powerpc/tlsso32.g | 2 +-
ld/testsuite/ld-powerpc/tlsso32.r | 16 +-
ld/testsuite/ld-powerpc/tlstoc.d | 24 +-
ld/testsuite/ld-powerpc/tlstocso.d | 9 +-
ld/testsuite/ld-powerpc/tlstocso.g | 2 +-
ld/testsuite/ld-powerpc/tlstocso.r | 14 +-
ld/testsuite/ld-powerpc/tocopt6.d | 8 +-
ld/testsuite/ld-powerpc/tocsave1.s | 24 +
ld/testsuite/ld-powerpc/tocsave1a.d | 15 +
ld/testsuite/ld-powerpc/tocsave1s.d | 9 +
ld/testsuite/ld-powerpc/tocsave2.s | 24 +
ld/testsuite/ld-powerpc/tocsave2a.d | 18 +
ld/testsuite/ld-powerpc/tocsave2s.d | 13 +
ld/testsuite/ld-powerpc/tocsavelib.s | 5 +
ld/testsuite/ld-powerpc/vle-multiseg-1.d | 2 +-
ld/testsuite/ld-powerpc/vle-multiseg-2.d | 2 +-
ld/testsuite/ld-powerpc/vle-multiseg-3.d | 2 +-
ld/testsuite/ld-powerpc/vxworks-relax-2.rd | 5 +-
ld/testsuite/ld-powerpc/vxworks1-static.d | 2 +-
ld/testsuite/ld-powerpc/vxworks2.sd | 5 -
ld/testsuite/ld-pru/ldi32.d | 2 +-
ld/testsuite/ld-pru/norelax_ldi32-data.d | 8 +-
ld/testsuite/ld-pru/norelax_ldi32-dis.d | 28 +-
ld/testsuite/ld-pru/relax_ldi32-data.d | 8 +-
ld/testsuite/ld-pru/relax_ldi32-dis.d | 20 +-
ld/testsuite/ld-riscv-elf/c-lui.d | 17 +
ld/testsuite/ld-riscv-elf/c-lui.s | 7 +
ld/testsuite/ld-riscv-elf/disas-jalr.d | 13 +
ld/testsuite/ld-riscv-elf/disas-jalr.s | 5 +
ld/testsuite/ld-riscv-elf/gp-test-lib.sd | 9 +
ld/testsuite/ld-riscv-elf/gp-test.s | 6 +
ld/testsuite/ld-riscv-elf/gp-test.sd | 5 +
ld/testsuite/ld-riscv-elf/ld-riscv-elf.exp | 61 +
ld/testsuite/ld-riscv-elf/pcrel-lo-addend-2.d | 5 +
ld/testsuite/ld-riscv-elf/pcrel-lo-addend-2.s | 16 +
ld/testsuite/ld-riscv-elf/pcrel-lo-addend.d | 5 +
ld/testsuite/ld-riscv-elf/pcrel-lo-addend.s | 17 +
ld/testsuite/ld-riscv-elf/weakref.ld | 6 +
ld/testsuite/ld-riscv-elf/weakref32.d | 19 +
ld/testsuite/ld-riscv-elf/weakref32.s | 18 +
ld/testsuite/ld-riscv-elf/weakref64.d | 19 +
ld/testsuite/ld-riscv-elf/weakref64.s | 18 +
ld/testsuite/ld-s12z/opr-linking.d | 20 +
ld/testsuite/ld-s12z/opr-linking.s | 7 +
ld/testsuite/ld-s12z/relative-linking.d | 14 +
ld/testsuite/ld-s12z/relative-linking.s | 5 +
ld/testsuite/ld-s12z/reloc-ext18-1.d | 11 +
ld/testsuite/ld-s12z/reloc-ext18-2.d | 11 +
ld/testsuite/ld-s12z/reloc-ext18.d | 11 +
ld/testsuite/ld-s12z/reloc-ext18.s | 11 +
ld/testsuite/ld-s12z/reloc-ext24.d | 15 +
ld/testsuite/ld-s12z/reloc-ext24.s | 12 +
ld/testsuite/ld-s12z/reloc-ext32.d | 8 +
ld/testsuite/ld-s12z/reloc-ext32.s | 12 +
ld/testsuite/ld-s12z/reloc-opr.d | 15 +
ld/testsuite/ld-s12z/reloc-opr.s | 8 +
ld/testsuite/ld-s12z/reloc-pc-rel-7-15.d | 12 +
ld/testsuite/ld-s12z/reloc-pc-rel-7-15.s | 11 +
ld/testsuite/ld-s12z/s12z.exp | 33 +
ld/testsuite/ld-s390/gotreloc-1.s | 12 +-
ld/testsuite/ld-s390/gotreloc-1.ver | 2 +-
ld/testsuite/ld-s390/gotreloc_31-1.dd | 14 +-
ld/testsuite/ld-s390/gotreloc_64-1.dd | 12 -
ld/testsuite/ld-s390/gotreloc_64-norelro-1.dd | 12 +
ld/testsuite/ld-s390/gotreloc_64-relro-1.dd | 12 +
ld/testsuite/ld-s390/s390.exp | 26 +-
ld/testsuite/ld-s390/tlsbin.dd | 2 +-
ld/testsuite/ld-s390/tlsbin.rd | 7 +-
ld/testsuite/ld-s390/tlsbin_64.dd | 2 +-
ld/testsuite/ld-s390/tlsbin_64.rd | 7 +-
ld/testsuite/ld-s390/tlspic.rd | 8 +-
ld/testsuite/ld-s390/tlspic_64.rd | 8 +-
ld/testsuite/ld-scripts/align.exp | 11 +-
ld/testsuite/ld-scripts/align3.d | 3 +
ld/testsuite/ld-scripts/align3.t | 10 +
ld/testsuite/ld-scripts/align4.d | 3 +
ld/testsuite/ld-scripts/align4.t | 10 +
ld/testsuite/ld-scripts/align5.d | 7 +
ld/testsuite/ld-scripts/align5.t | 12 +
ld/testsuite/ld-scripts/alignof.exp | 2 +-
ld/testsuite/ld-scripts/assert.exp | 2 +-
ld/testsuite/ld-scripts/assign-loc.d | 2 +-
ld/testsuite/ld-scripts/cross1.t | 1 +
ld/testsuite/ld-scripts/crossref.exp | 12 +-
ld/testsuite/ld-scripts/data.exp | 3 +-
ld/testsuite/ld-scripts/default-script.exp | 2 +-
ld/testsuite/ld-scripts/defined.exp | 10 +-
ld/testsuite/ld-scripts/defined2.d | 1 -
ld/testsuite/ld-scripts/defined3.d | 2 +-
ld/testsuite/ld-scripts/defined4.d | 4 +-
ld/testsuite/ld-scripts/defined5.d | 2 +-
ld/testsuite/ld-scripts/defined6.d | 2 -
ld/testsuite/ld-scripts/dynamic-sections.exp | 2 +-
ld/testsuite/ld-scripts/empty-address-1.d | 2 +-
ld/testsuite/ld-scripts/empty-address-2a.d | 2 +-
ld/testsuite/ld-scripts/empty-address-2b.d | 2 +-
ld/testsuite/ld-scripts/empty-address-3a.d | 2 +-
ld/testsuite/ld-scripts/empty-address-3b.d | 2 +-
ld/testsuite/ld-scripts/empty-address.exp | 2 +-
ld/testsuite/ld-scripts/empty-aligned.exp | 2 +-
ld/testsuite/ld-scripts/empty-orphan.exp | 2 +-
ld/testsuite/ld-scripts/exclude-file-5.d | 5 +
ld/testsuite/ld-scripts/exclude-file-5.map | 8 +
ld/testsuite/ld-scripts/exclude-file-5.t | 11 +
ld/testsuite/ld-scripts/exclude-file-6.d | 5 +
ld/testsuite/ld-scripts/exclude-file-6.map | 8 +
ld/testsuite/ld-scripts/exclude-file-6.t | 11 +
ld/testsuite/ld-scripts/exclude-file-7.d | 5 +
ld/testsuite/ld-scripts/exclude-file-7.map | 8 +
ld/testsuite/ld-scripts/exclude-file-7.t | 11 +
ld/testsuite/ld-scripts/exclude-file.exp | 2 +-
ld/testsuite/ld-scripts/expr.exp | 3 +-
ld/testsuite/ld-scripts/expr2.d | 2 +-
ld/testsuite/ld-scripts/extern.exp | 2 +-
ld/testsuite/ld-scripts/fill.d | 26 +-
ld/testsuite/ld-scripts/fill16.d | 36 +
ld/testsuite/ld-scripts/fill16_0.s | 6 +
ld/testsuite/ld-scripts/fill16_1.s | 6 +
ld/testsuite/ld-scripts/fill16_2.s | 6 +
ld/testsuite/ld-scripts/include.exp | 2 +-
ld/testsuite/ld-scripts/log2.exp | 2 +-
ld/testsuite/ld-scripts/map-address.exp | 2 +-
ld/testsuite/ld-scripts/overlay-size.exp | 11 +-
ld/testsuite/ld-scripts/phdrs.exp | 2 +-
ld/testsuite/ld-scripts/phdrs2.exp | 8 +-
ld/testsuite/ld-scripts/phdrs3.exp | 2 +-
ld/testsuite/ld-scripts/pr14962-2.d | 2 +-
ld/testsuite/ld-scripts/pr14962.d | 2 +-
ld/testsuite/ld-scripts/pr22267.d | 7 +
ld/testsuite/ld-scripts/pr22267.s | 10 +
ld/testsuite/ld-scripts/pr22267.t | 4 +
ld/testsuite/ld-scripts/pr23571.d | 10 +
ld/testsuite/ld-scripts/pr23571.t | 11 +
ld/testsuite/ld-scripts/print-memory-usage.exp | 2 +-
ld/testsuite/ld-scripts/print-memory-usage.t | 2 +
ld/testsuite/ld-scripts/provide-3.d | 1 +
ld/testsuite/ld-scripts/provide-4-map.d | 13 -
ld/testsuite/ld-scripts/provide-4.d | 4 +-
ld/testsuite/ld-scripts/provide-4.map | 13 +
ld/testsuite/ld-scripts/provide-5-map.d | 6 -
ld/testsuite/ld-scripts/provide-5.d | 4 +-
ld/testsuite/ld-scripts/provide-5.map | 6 +
ld/testsuite/ld-scripts/provide-6.d | 9 +
ld/testsuite/ld-scripts/provide-6.t | 11 +
ld/testsuite/ld-scripts/provide-7.d | 8 +
ld/testsuite/ld-scripts/provide-7.t | 11 +
ld/testsuite/ld-scripts/provide-8.d | 8 +
ld/testsuite/ld-scripts/provide-8.t | 14 +
ld/testsuite/ld-scripts/provide.exp | 16 +-
ld/testsuite/ld-scripts/rgn-at.exp | 2 +-
ld/testsuite/ld-scripts/rgn-at5.d | 2 +-
ld/testsuite/ld-scripts/rgn-over.exp | 2 +-
ld/testsuite/ld-scripts/sane1.d | 2 +-
ld/testsuite/ld-scripts/script.exp | 6 +-
ld/testsuite/ld-scripts/section-flags.exp | 2 +-
ld/testsuite/ld-scripts/section-match-1.d | 4 +-
ld/testsuite/ld-scripts/section-match.exp | 2 +-
ld/testsuite/ld-scripts/segment-start.d | 19 +
ld/testsuite/ld-scripts/segment-start.ld | 12 +
ld/testsuite/ld-scripts/segment-start.s | 2 +
ld/testsuite/ld-scripts/size-2.t | 1 +
ld/testsuite/ld-scripts/size.exp | 4 +-
ld/testsuite/ld-scripts/sizeof.exp | 2 +-
ld/testsuite/ld-scripts/sort.exp | 2 +-
ld/testsuite/ld-scripts/sysroot-prefix.exp | 11 +-
ld/testsuite/ld-scripts/weak.exp | 2 +-
ld/testsuite/ld-selective/sel-dump.exp | 2 +-
ld/testsuite/ld-selective/selective.exp | 12 +-
ld/testsuite/ld-sh/arch/arch.exp | 2 +-
ld/testsuite/ld-sh/ld-r-1.d | 3 +-
ld/testsuite/ld-sh/rd-sh.exp | 13 +-
ld/testsuite/ld-sh/sh-vxworks.exp | 16 +-
ld/testsuite/ld-sh/sh.exp | 7 +-
ld/testsuite/ld-sh/sh64/abi32.sd | 16 -
ld/testsuite/ld-sh/sh64/abi32.xd | 47 -
ld/testsuite/ld-sh/sh64/abi64.sd | 20 -
ld/testsuite/ld-sh/sh64/abi64.xd | 46 -
ld/testsuite/ld-sh/sh64/abixx-noexp.sd | 12 -
ld/testsuite/ld-sh/sh64/cmpct1.sd | 9 -
ld/testsuite/ld-sh/sh64/cmpct1.xd | 37 -
ld/testsuite/ld-sh/sh64/crange-1.s | 8 -
ld/testsuite/ld-sh/sh64/crange-2a.s | 22 -
ld/testsuite/ld-sh/sh64/crange-2b.s | 39 -
ld/testsuite/ld-sh/sh64/crange-2c.s | 16 -
ld/testsuite/ld-sh/sh64/crange-2d.s | 9 -
ld/testsuite/ld-sh/sh64/crange-2e.s | 12 -
ld/testsuite/ld-sh/sh64/crange-2f.s | 21 -
ld/testsuite/ld-sh/sh64/crange-2g.s | 26 -
ld/testsuite/ld-sh/sh64/crange-2h.s | 17 -
ld/testsuite/ld-sh/sh64/crange-2i.s | 8 -
ld/testsuite/ld-sh/sh64/crange1.rd | 47 -
ld/testsuite/ld-sh/sh64/crange2.rd | 56 -
ld/testsuite/ld-sh/sh64/crange3-cmpct.rd | 80 -
ld/testsuite/ld-sh/sh64/crange3-media.rd | 80 -
ld/testsuite/ld-sh/sh64/crange3.dd | 80 -
ld/testsuite/ld-sh/sh64/crange3.rd | 61 -
ld/testsuite/ld-sh/sh64/crangerel1.rd | 45 -
ld/testsuite/ld-sh/sh64/crangerel2.rd | 63 -
ld/testsuite/ld-sh/sh64/dlsection-1.s | 17 -
ld/testsuite/ld-sh/sh64/dlsection.sd | 9 -
ld/testsuite/ld-sh/sh64/endian.dbd | 11 -
ld/testsuite/ld-sh/sh64/endian.dld | 11 -
ld/testsuite/ld-sh/sh64/endian.ld | 6 -
ld/testsuite/ld-sh/sh64/endian.s | 7 -
ld/testsuite/ld-sh/sh64/endian.sbd | 5 -
ld/testsuite/ld-sh/sh64/endian.sld | 6 -
ld/testsuite/ld-sh/sh64/gotplt.d | 12 -
ld/testsuite/ld-sh/sh64/gotplt.map | 4 -
ld/testsuite/ld-sh/sh64/gotplt.s | 8 -
ld/testsuite/ld-sh/sh64/init-cmpct.d | 14 -
ld/testsuite/ld-sh/sh64/init-media.d | 14 -
ld/testsuite/ld-sh/sh64/init.s | 18 -
ld/testsuite/ld-sh/sh64/init64.d | 14 -
ld/testsuite/ld-sh/sh64/mix1-noexp.sd | 14 -
ld/testsuite/ld-sh/sh64/mix1.sd | 16 -
ld/testsuite/ld-sh/sh64/mix1.xd | 43 -
ld/testsuite/ld-sh/sh64/mix2-noexp.sd | 16 -
ld/testsuite/ld-sh/sh64/mix2.sd | 17 -
ld/testsuite/ld-sh/sh64/mix2.xd | 53 -
ld/testsuite/ld-sh/sh64/rd-sh64.exp | 44 -
ld/testsuite/ld-sh/sh64/rel-1.s | 48 -
ld/testsuite/ld-sh/sh64/rel-2.s | 46 -
ld/testsuite/ld-sh/sh64/rel32.xd | 92 -
ld/testsuite/ld-sh/sh64/rel64.xd | 92 -
ld/testsuite/ld-sh/sh64/relax.exp | 155 -
ld/testsuite/ld-sh/sh64/relax1.s | 12 -
ld/testsuite/ld-sh/sh64/relax2.s | 3 -
ld/testsuite/ld-sh/sh64/relax3.s | 8 -
ld/testsuite/ld-sh/sh64/relax4.s | 2 -
ld/testsuite/ld-sh/sh64/reldl-1.s | 171 -
ld/testsuite/ld-sh/sh64/reldl-2.s | 156 -
ld/testsuite/ld-sh/sh64/reldl32.rd | 358 -
ld/testsuite/ld-sh/sh64/reldl64.rd | 360 -
ld/testsuite/ld-sh/sh64/relfail.exp | 219 -
ld/testsuite/ld-sh/sh64/relfail.s | 36 -
ld/testsuite/ld-sh/sh64/sh64-1.s | 20 -
ld/testsuite/ld-sh/sh64/sh64-2.s | 27 -
ld/testsuite/ld-sh/sh64/sh64.exp | 137 -
ld/testsuite/ld-sh/sh64/shcmp-1.s | 15 -
ld/testsuite/ld-sh/sh64/shdl-1.s | 359 -
ld/testsuite/ld-sh/sh64/shdl-2.s | 286 -
ld/testsuite/ld-sh/sh64/shdl32.xd | 124 -
ld/testsuite/ld-sh/sh64/shdl64.sd | 87 -
ld/testsuite/ld-sh/sh64/shdl64.xd | 124 -
ld/testsuite/ld-sh/sh64/shmix-1.s | 33 -
ld/testsuite/ld-sh/sh64/shmix-2.s | 28 -
ld/testsuite/ld-sh/sh64/shmix-3.s | 32 -
ld/testsuite/ld-sh/sh64/stobin-0-dso.d | 9 -
ld/testsuite/ld-sh/sh64/stobin-1.d | 15 -
ld/testsuite/ld-sh/sh64/stobin.s | 5 -
ld/testsuite/ld-sh/sh64/stolib.s | 7 -
ld/testsuite/ld-sh/shared-1.d | 2 +-
ld/testsuite/ld-sh/shared-2.d | 2 +-
ld/testsuite/ld-sh/tlsbin-2.d | 6 +-
ld/testsuite/ld-sh/tlspic-2.d | 6 +-
ld/testsuite/ld-sh/vxworks1-static.d | 2 +-
ld/testsuite/ld-shared/shared.exp | 30 +-
ld/testsuite/ld-size/size.exp | 29 +-
ld/testsuite/ld-sparc/got-hidden32.s | 18 +
ld/testsuite/ld-sparc/got-hidden64.s | 18 +
ld/testsuite/ld-sparc/gotop-hidden.c | 13 +
ld/testsuite/ld-sparc/gotop32.rd | 8 +-
ld/testsuite/ld-sparc/gotop64.rd | 8 +-
ld/testsuite/ld-sparc/pass.out | 1 +
ld/testsuite/ld-sparc/sparc.exp | 80 +-
ld/testsuite/ld-sparc/tlslib.ver | 4 +
ld/testsuite/ld-sparc/tlspie32.dd | 65 +
ld/testsuite/ld-sparc/tlspie32.s | 70 +
ld/testsuite/ld-sparc/tlspie64.dd | 65 +
ld/testsuite/ld-sparc/tlspie64.s | 70 +
ld/testsuite/ld-sparc/tlssunbin32.dd | 4 +-
ld/testsuite/ld-sparc/tlssunbin32.rd | 113 +-
ld/testsuite/ld-sparc/tlssunbin32.sd | 4 +-
ld/testsuite/ld-sparc/tlssunbin64.dd | 6 +-
ld/testsuite/ld-sparc/tlssunbin64.rd | 113 +-
ld/testsuite/ld-sparc/tlssunbin64.sd | 6 +-
ld/testsuite/ld-sparc/tlssunnopic32.rd | 6 -
ld/testsuite/ld-sparc/tlssunnopic64.dd | 2 +-
ld/testsuite/ld-sparc/tlssunnopic64.rd | 6 -
ld/testsuite/ld-sparc/tlssunpic32.rd | 8 +-
ld/testsuite/ld-sparc/tlssunpic64.dd | 2 +-
ld/testsuite/ld-sparc/tlssunpic64.rd | 8 +-
ld/testsuite/ld-sparc/vxworks1-lib.rd | 2 +-
ld/testsuite/ld-sparc/vxworks1-static.d | 2 +-
ld/testsuite/ld-spu/ovl.lnk | 2 +-
ld/testsuite/ld-spu/spu.exp | 2 +-
ld/testsuite/ld-srec/srec.exp | 34 +-
.../ld-tic6x/attr-compatibility-gnu-other.d | 2 +-
.../ld-tic6x/attr-compatibility-other-gnu.d | 2 +-
.../ld-tic6x/attr-compatibility-other-other.d | 2 +-
ld/testsuite/ld-tic6x/dsbt-be.ld | 1 -
ld/testsuite/ld-tic6x/dsbt-inrange.ld | 1 -
ld/testsuite/ld-tic6x/dsbt-overflow.ld | 1 -
ld/testsuite/ld-tic6x/dsbt.ld | 1 -
ld/testsuite/ld-tic6x/shlib-1.rd | 119 +-
ld/testsuite/ld-tic6x/shlib-1b.rd | 119 +-
ld/testsuite/ld-tic6x/shlib-1r.rd | 119 +-
ld/testsuite/ld-tic6x/shlib-1rb.rd | 119 +-
ld/testsuite/ld-tic6x/shlib-app-1.rd | 123 +-
ld/testsuite/ld-tic6x/shlib-app-1b.rd | 123 +-
ld/testsuite/ld-tic6x/shlib-app-1r.rd | 103 +-
ld/testsuite/ld-tic6x/shlib-app-1rb.rd | 103 +-
ld/testsuite/ld-tic6x/shlib-noindex.rd | 127 +-
ld/testsuite/ld-tic6x/static-app-1.rd | 111 +-
ld/testsuite/ld-tic6x/static-app-1b.rd | 111 +-
ld/testsuite/ld-tic6x/static-app-1r.rd | 107 +-
ld/testsuite/ld-tic6x/static-app-1rb.rd | 107 +-
ld/testsuite/ld-tic6x/tic6x.exp | 28 +-
ld/testsuite/ld-tilegx/tilegx.exp | 2 +-
ld/testsuite/ld-tilepro/tilepro.exp | 2 +-
ld/testsuite/ld-undefined/entry-3.d | 2 +-
ld/testsuite/ld-undefined/entry-4.d | 2 +-
ld/testsuite/ld-undefined/entry.exp | 2 +-
ld/testsuite/ld-undefined/fundef.s | 31 +
ld/testsuite/ld-undefined/require-defined.exp | 2 +-
ld/testsuite/ld-undefined/undefined.exp | 277 +-
ld/testsuite/ld-undefined/weak-undef.exp | 105 +-
ld/testsuite/ld-unique/pr21529.d | 6 +
ld/testsuite/ld-unique/pr21529.ld | 5 +
ld/testsuite/ld-unique/pr21529.s | 8 +
ld/testsuite/ld-unique/unique.exp | 13 +-
ld/testsuite/ld-v850/v850.exp | 2 +-
ld/testsuite/ld-vax-elf/export-class-data.rd | 2 +-
ld/testsuite/ld-vax-elf/export-class.exp | 2 +-
ld/testsuite/ld-vax-elf/vax-elf.exp | 10 +-
ld/testsuite/ld-versados/t1-1.ro | Bin 3840 -> 0 bytes
ld/testsuite/ld-versados/t1-2.ro | Bin 256 -> 0 bytes
ld/testsuite/ld-versados/t1.ld | 281 -
ld/testsuite/ld-versados/t1.ook | 133 -
ld/testsuite/ld-versados/t2-1.ro | Bin 256 -> 0 bytes
ld/testsuite/ld-versados/t2-2.ro | Bin 2304 -> 0 bytes
ld/testsuite/ld-versados/t2-3.ro | Bin 1024 -> 0 bytes
ld/testsuite/ld-versados/t2.ld | 281 -
ld/testsuite/ld-versados/t2.ook | 99 -
ld/testsuite/ld-versados/versados.exp | 102 -
ld/testsuite/ld-visium/visium.exp | 2 +-
ld/testsuite/ld-vxworks/vxworks.exp | 2 +-
ld/testsuite/ld-x86-64/abs-k1om.d | 2 +-
ld/testsuite/ld-x86-64/abs-l1om.d | 2 +-
ld/testsuite/ld-x86-64/abs.d | 2 +-
ld/testsuite/ld-x86-64/apic.d | 18 +
ld/testsuite/ld-x86-64/apic.s | 13 +
ld/testsuite/ld-x86-64/bnd-branch-1-now.d | 45 +
ld/testsuite/ld-x86-64/bnd-ifunc-1-now.d | 33 +
ld/testsuite/ld-x86-64/bnd-ifunc-1.d | 4 +-
ld/testsuite/ld-x86-64/bnd-ifunc-2-now.d | 59 +
ld/testsuite/ld-x86-64/bnd-ifunc-2.d | 52 +-
ld/testsuite/ld-x86-64/bnd-plt-1-now.d | 55 +
ld/testsuite/ld-x86-64/bnd-plt-1.d | 50 +-
ld/testsuite/ld-x86-64/call1c.d | 12 +-
ld/testsuite/ld-x86-64/discarded1.s | 2 +-
ld/testsuite/ld-x86-64/dwarfreloc.exp | 2 +-
ld/testsuite/ld-x86-64/export-class.exp | 2 +-
ld/testsuite/ld-x86-64/ibt-plt-1-x32.d | 43 +
ld/testsuite/ld-x86-64/ibt-plt-1.d | 43 +
ld/testsuite/ld-x86-64/ibt-plt-1.s | 45 +
ld/testsuite/ld-x86-64/ibt-plt-2.s | 45 +
ld/testsuite/ld-x86-64/ibt-plt-2a-x32.d | 43 +
ld/testsuite/ld-x86-64/ibt-plt-2a.d | 43 +
ld/testsuite/ld-x86-64/ibt-plt-2b-x32.d | 38 +
ld/testsuite/ld-x86-64/ibt-plt-2b.d | 42 +
ld/testsuite/ld-x86-64/ibt-plt-2c-x32.d | 43 +
ld/testsuite/ld-x86-64/ibt-plt-2c.d | 43 +
ld/testsuite/ld-x86-64/ibt-plt-2d-x32.d | 44 +
ld/testsuite/ld-x86-64/ibt-plt-2d.d | 49 +
ld/testsuite/ld-x86-64/ibt-plt-3.s | 17 +
ld/testsuite/ld-x86-64/ibt-plt-3a-x32.d | 43 +
ld/testsuite/ld-x86-64/ibt-plt-3a.d | 43 +
ld/testsuite/ld-x86-64/ibt-plt-3b-x32.d | 39 +
ld/testsuite/ld-x86-64/ibt-plt-3b.d | 43 +
ld/testsuite/ld-x86-64/ibt-plt-3c-x32.d | 43 +
ld/testsuite/ld-x86-64/ibt-plt-3c.d | 43 +
ld/testsuite/ld-x86-64/ibt-plt-3d-x32.d | 45 +
ld/testsuite/ld-x86-64/ibt-plt-3d.d | 49 +
ld/testsuite/ld-x86-64/ilp32-11.d | 2 +-
ld/testsuite/ld-x86-64/ilp32-4-nacl.d | 18 +-
ld/testsuite/ld-x86-64/ilp32-4.d | 22 +-
ld/testsuite/ld-x86-64/lea1a.d | 2 +-
ld/testsuite/ld-x86-64/lea1b.d | 2 +-
ld/testsuite/ld-x86-64/lea1d.d | 2 +-
ld/testsuite/ld-x86-64/lea1e.d | 2 +-
ld/testsuite/ld-x86-64/lea1g.d | 2 +-
ld/testsuite/ld-x86-64/lea1h.d | 2 +-
ld/testsuite/ld-x86-64/lea1i.d | 2 +-
ld/testsuite/ld-x86-64/lea1j.d | 2 +-
ld/testsuite/ld-x86-64/lea1k.d | 2 +-
ld/testsuite/ld-x86-64/lea1l.d | 2 +-
ld/testsuite/ld-x86-64/line.exp | 2 +-
ld/testsuite/ld-x86-64/load1a-nacl.d | 76 +-
ld/testsuite/ld-x86-64/load1a.d | 78 +-
ld/testsuite/ld-x86-64/load1b-nacl.d | 76 +-
ld/testsuite/ld-x86-64/load1b.d | 79 +-
ld/testsuite/ld-x86-64/load1c-nacl.d | 74 +-
ld/testsuite/ld-x86-64/load1c.d | 74 +-
ld/testsuite/ld-x86-64/load1d-nacl.d | 74 +-
ld/testsuite/ld-x86-64/load1d.d | 74 +-
ld/testsuite/ld-x86-64/mpx.exp | 31 +-
ld/testsuite/ld-x86-64/mpx1c.rd | 2 +-
ld/testsuite/ld-x86-64/mpx3.dd | 2 +-
ld/testsuite/ld-x86-64/mpx3n.dd | 28 +
ld/testsuite/ld-x86-64/mpx4.dd | 28 +-
ld/testsuite/ld-x86-64/mpx4n.dd | 25 +
ld/testsuite/ld-x86-64/no-plt-1e.nd | 7 +
ld/testsuite/ld-x86-64/no-plt.exp | 67 +-
ld/testsuite/ld-x86-64/pie1.d | 2 +-
ld/testsuite/ld-x86-64/pie2.d | 2 +-
ld/testsuite/ld-x86-64/pie3-nacl.d | 14 +
ld/testsuite/ld-x86-64/pie3.d | 13 +
ld/testsuite/ld-x86-64/pie3.s | 5 +
ld/testsuite/ld-x86-64/plt-main-bnd-now.rd | 3 +
ld/testsuite/ld-x86-64/plt-main-bnd.dd | 2 +-
ld/testsuite/ld-x86-64/plt-main-ibt-now.rd | 3 +
ld/testsuite/ld-x86-64/plt-main-ibt-x32.dd | 7 +
ld/testsuite/ld-x86-64/plt-main-ibt.dd | 7 +
ld/testsuite/ld-x86-64/plt2.dd | 33 +
ld/testsuite/ld-x86-64/plt2.rd | 9 +
ld/testsuite/ld-x86-64/plt2.s | 7 +
ld/testsuite/ld-x86-64/pr12718.d | 2 +-
ld/testsuite/ld-x86-64/pr12921.d | 2 +-
ld/testsuite/ld-x86-64/pr13082-1a.d | 2 +-
ld/testsuite/ld-x86-64/pr13082-1b.d | 2 +-
ld/testsuite/ld-x86-64/pr13082-2a.d | 2 +-
ld/testsuite/ld-x86-64/pr13082-2b.d | 2 +-
ld/testsuite/ld-x86-64/pr13082-3a.d | 2 +-
ld/testsuite/ld-x86-64/pr13082-3c.d | 2 +-
ld/testsuite/ld-x86-64/pr13082-4a.d | 2 +-
ld/testsuite/ld-x86-64/pr13082-5a.d | 2 +-
ld/testsuite/ld-x86-64/pr13082-5b.d | 2 +-
ld/testsuite/ld-x86-64/pr13082-6a.d | 2 +-
ld/testsuite/ld-x86-64/pr13082-6b.d | 2 +-
ld/testsuite/ld-x86-64/pr14207.d | 8 +-
ld/testsuite/ld-x86-64/pr17618.d | 3 +-
ld/testsuite/ld-x86-64/pr17689now.rd | 3 +-
ld/testsuite/ld-x86-64/pr17709-nacl.rd | 2 +-
ld/testsuite/ld-x86-64/pr17709.rd | 2 +-
ld/testsuite/ld-x86-64/pr17935-1.d | 2 +-
ld/testsuite/ld-x86-64/pr17935-2.d | 2 +-
ld/testsuite/ld-x86-64/pr19162.d | 4 +-
ld/testsuite/ld-x86-64/pr19539a.d | 2 +-
ld/testsuite/ld-x86-64/pr19539b.d | 2 +-
ld/testsuite/ld-x86-64/pr19609-2a.d | 2 +-
ld/testsuite/ld-x86-64/pr19609-2b.d | 2 +-
ld/testsuite/ld-x86-64/pr19609-4a.d | 3 +-
ld/testsuite/ld-x86-64/pr19609-4c.d | 3 +-
ld/testsuite/ld-x86-64/pr19609-4e.d | 4 +-
ld/testsuite/ld-x86-64/pr19609-5d.d | 2 +-
ld/testsuite/ld-x86-64/pr19609-6a.d | 2 +-
ld/testsuite/ld-x86-64/pr19609-7a.d | 2 +-
ld/testsuite/ld-x86-64/pr19609-7c.d | 2 +-
ld/testsuite/ld-x86-64/pr19615.d | 2 +-
ld/testsuite/ld-x86-64/pr19636-1a.d | 2 +-
ld/testsuite/ld-x86-64/pr19636-1d.d | 2 +-
ld/testsuite/ld-x86-64/pr19636-1e.d | 2 +-
ld/testsuite/ld-x86-64/pr19636-1h.d | 6 +
ld/testsuite/ld-x86-64/pr19636-1i.d | 6 +
ld/testsuite/ld-x86-64/pr19636-1j.d | 6 +
ld/testsuite/ld-x86-64/pr19636-2a.d | 2 +-
ld/testsuite/ld-x86-64/pr19636-2d-nacl.d | 2 +-
ld/testsuite/ld-x86-64/pr19636-2d.d | 2 +-
ld/testsuite/ld-x86-64/pr19636-2e.d | 2 +-
ld/testsuite/ld-x86-64/pr19636-2f.d | 2 +-
ld/testsuite/ld-x86-64/pr19636-2j.d | 14 +
ld/testsuite/ld-x86-64/pr19636-2k.d | 21 +
ld/testsuite/ld-x86-64/pr19636-2l.d | 27 +
ld/testsuite/ld-x86-64/pr19636-2m.d | 14 +
ld/testsuite/ld-x86-64/pr19636-3a.d | 2 +-
ld/testsuite/ld-x86-64/pr19645.d | 2 +-
ld/testsuite/ld-x86-64/pr19719.d | 2 +-
ld/testsuite/ld-x86-64/pr19784c.c | 2 +-
ld/testsuite/ld-x86-64/pr19807-2a.d | 2 +-
ld/testsuite/ld-x86-64/pr19807-2b.d | 2 +-
ld/testsuite/ld-x86-64/pr19807-2d.d | 2 +-
ld/testsuite/ld-x86-64/pr19827-nacl.rd | 2 +-
ld/testsuite/ld-x86-64/pr19827.rd | 2 +-
ld/testsuite/ld-x86-64/pr19969.d | 2 +-
ld/testsuite/ld-x86-64/pr20253-1b.d | 2 +-
ld/testsuite/ld-x86-64/pr20253-1d.d | 2 +-
ld/testsuite/ld-x86-64/pr20253-1f.d | 20 +-
ld/testsuite/ld-x86-64/pr20253-1h.d | 14 +-
ld/testsuite/ld-x86-64/pr20253-1j.d | 2 +-
ld/testsuite/ld-x86-64/pr20253-1l.d | 20 +-
ld/testsuite/ld-x86-64/pr20253-4a.d | 2 +-
ld/testsuite/ld-x86-64/pr20253-4b.d | 2 +-
ld/testsuite/ld-x86-64/pr20253-4d.d | 2 +-
ld/testsuite/ld-x86-64/pr20253-4e.d | 2 +-
ld/testsuite/ld-x86-64/pr20253-5a.d | 2 +-
ld/testsuite/ld-x86-64/pr20253-5b.d | 2 +-
ld/testsuite/ld-x86-64/pr20830a-now.d | 68 +
ld/testsuite/ld-x86-64/pr20830a.d | 28 +-
ld/testsuite/ld-x86-64/pr20830b-now.d | 60 +
ld/testsuite/ld-x86-64/pr20830b.d | 28 +-
ld/testsuite/ld-x86-64/pr21038a-now.d | 68 +
ld/testsuite/ld-x86-64/pr21038a.d | 28 +-
ld/testsuite/ld-x86-64/pr21038b-now.d | 70 +
ld/testsuite/ld-x86-64/pr21038b.d | 32 +-
ld/testsuite/ld-x86-64/pr21038c-now.d | 87 +
ld/testsuite/ld-x86-64/pr21038c.d | 42 +-
ld/testsuite/ld-x86-64/pr21481a.c | 8 +
ld/testsuite/ld-x86-64/pr21481b.S | 60 +
ld/testsuite/ld-x86-64/pr21884-nacl.d | 10 +
ld/testsuite/ld-x86-64/pr21884-nacl.t | 11 +
ld/testsuite/ld-x86-64/pr21884.d | 10 +
ld/testsuite/ld-x86-64/pr21884.t | 11 +
ld/testsuite/ld-x86-64/pr21997-1a.S | 24 +
ld/testsuite/ld-x86-64/pr21997-1a.err | 2 +
ld/testsuite/ld-x86-64/pr21997-1b.c | 13 +
ld/testsuite/ld-x86-64/pr21997-1b.err | 2 +
ld/testsuite/ld-x86-64/pr21997-1c.c | 13 +
ld/testsuite/ld-x86-64/pr22001-1a.c | 13 +
ld/testsuite/ld-x86-64/pr22001-1a.err | 2 +
ld/testsuite/ld-x86-64/pr22001-1b.c | 13 +
ld/testsuite/ld-x86-64/pr22001-1b.err | 2 +
ld/testsuite/ld-x86-64/pr22001-1c.c | 12 +
ld/testsuite/ld-x86-64/pr22048.d | 25 +
ld/testsuite/ld-x86-64/pr22048a.s | 4 +
ld/testsuite/ld-x86-64/pr22048b.s | 8 +
ld/testsuite/ld-x86-64/pr22064a.S | 33 +
ld/testsuite/ld-x86-64/pr22064b.c | 14 +
ld/testsuite/ld-x86-64/pr22071.d | 8 +
ld/testsuite/ld-x86-64/pr22071.s | 78 +
ld/testsuite/ld-x86-64/pr22115-1.s | 7 +
ld/testsuite/ld-x86-64/pr22115-1a-x32.d | 13 +
ld/testsuite/ld-x86-64/pr22115-1a.d | 13 +
ld/testsuite/ld-x86-64/pr22115-1b-x32.d | 6 +
ld/testsuite/ld-x86-64/pr22115-1b.d | 6 +
ld/testsuite/ld-x86-64/pr22115-1c-x32.d | 13 +
ld/testsuite/ld-x86-64/pr22115-1c.d | 13 +
ld/testsuite/ld-x86-64/pr22115-1d-x32.d | 6 +
ld/testsuite/ld-x86-64/pr22115-1d.d | 6 +
ld/testsuite/ld-x86-64/pr22135.d | 12 +
ld/testsuite/ld-x86-64/pr22135.s | 11 +
ld/testsuite/ld-x86-64/pr22393-3a.c | 7 +
ld/testsuite/ld-x86-64/pr22393-3a.rd | 9 +
ld/testsuite/ld-x86-64/pr22393-3b.c | 7 +
ld/testsuite/ld-x86-64/pr22393-3b.rd | 9 +
ld/testsuite/ld-x86-64/pr22782.s | 15 +
ld/testsuite/ld-x86-64/pr22782a.d | 11 +
ld/testsuite/ld-x86-64/pr22782b.d | 11 +
ld/testsuite/ld-x86-64/pr22791-1.err | 2 +
ld/testsuite/ld-x86-64/pr22791-1a.c | 4 +
ld/testsuite/ld-x86-64/pr22791-1b.s | 6 +
ld/testsuite/ld-x86-64/pr22791-2.rd | 6 +
ld/testsuite/ld-x86-64/pr22791-2a.s | 8 +
ld/testsuite/ld-x86-64/pr22791-2b.c | 7 +
ld/testsuite/ld-x86-64/pr22791-2c.s | 12 +
ld/testsuite/ld-x86-64/pr22842a.c | 20 +
ld/testsuite/ld-x86-64/pr22842a.rd | 4 +
ld/testsuite/ld-x86-64/pr22842b.S | 20 +
ld/testsuite/ld-x86-64/pr22842b.rd | 4 +
ld/testsuite/ld-x86-64/pr22929.d | 11 +
ld/testsuite/ld-x86-64/pr22929.s | 21 +
ld/testsuite/ld-x86-64/pr23189.d | 5 +
ld/testsuite/ld-x86-64/pr23189.s | 5 +
ld/testsuite/ld-x86-64/pr23189.t | 11 +
ld/testsuite/ld-x86-64/pr23194.d | 7 +
ld/testsuite/ld-x86-64/pr23194.map | 7 +
ld/testsuite/ld-x86-64/pr23194.s | 13 +
ld/testsuite/ld-x86-64/pr23324.s | 6 +
ld/testsuite/ld-x86-64/pr23324a.d | 8 +
ld/testsuite/ld-x86-64/pr23324b.d | 8 +
ld/testsuite/ld-x86-64/pr23372a-x32.d | 5 +
ld/testsuite/ld-x86-64/pr23372a.d | 5 +
ld/testsuite/ld-x86-64/pr23372a.s | 30 +
ld/testsuite/ld-x86-64/pr23372b-x32.d | 5 +
ld/testsuite/ld-x86-64/pr23372b.d | 5 +
ld/testsuite/ld-x86-64/pr23372b.s | 30 +
ld/testsuite/ld-x86-64/pr23372c-x32.d | 5 +
ld/testsuite/ld-x86-64/pr23372c.d | 5 +
ld/testsuite/ld-x86-64/pr23372c.s | 30 +
ld/testsuite/ld-x86-64/pr23372d-x32.d | 5 +
ld/testsuite/ld-x86-64/pr23372d.d | 5 +
ld/testsuite/ld-x86-64/pr23372d.s | 30 +
ld/testsuite/ld-x86-64/pr23372e.s | 30 +
ld/testsuite/ld-x86-64/pr23372f.s | 30 +
ld/testsuite/ld-x86-64/pr23486a-x32.d | 10 +
ld/testsuite/ld-x86-64/pr23486a.d | 10 +
ld/testsuite/ld-x86-64/pr23486a.s | 30 +
ld/testsuite/ld-x86-64/pr23486b-x32.d | 10 +
ld/testsuite/ld-x86-64/pr23486b.d | 10 +
ld/testsuite/ld-x86-64/pr23486b.s | 30 +
ld/testsuite/ld-x86-64/pr23486c-x32.d | 10 +
ld/testsuite/ld-x86-64/pr23486c.d | 10 +
ld/testsuite/ld-x86-64/pr23486c.s | 30 +
ld/testsuite/ld-x86-64/pr23486d-x32.d | 10 +
ld/testsuite/ld-x86-64/pr23486d.d | 10 +
ld/testsuite/ld-x86-64/pr23486d.s | 30 +
ld/testsuite/ld-x86-64/pr23854.d | 28 +
ld/testsuite/ld-x86-64/pr23854.s | 33 +
ld/testsuite/ld-x86-64/property-1a.r | 9 +
ld/testsuite/ld-x86-64/property-2a.r | 9 +
ld/testsuite/ld-x86-64/property-3.r | 3 +-
ld/testsuite/ld-x86-64/property-3a.r | 9 +
ld/testsuite/ld-x86-64/property-4.r | 3 +-
ld/testsuite/ld-x86-64/property-4a.r | 9 +
ld/testsuite/ld-x86-64/property-5.r | 3 +-
ld/testsuite/ld-x86-64/property-5a.r | 9 +
ld/testsuite/ld-x86-64/property-7a.r | 8 +
ld/testsuite/ld-x86-64/property-x86-1.S | 4 +-
ld/testsuite/ld-x86-64/property-x86-2.S | 4 +-
ld/testsuite/ld-x86-64/property-x86-3-x32.d | 11 +
ld/testsuite/ld-x86-64/property-x86-3.d | 10 +
ld/testsuite/ld-x86-64/property-x86-3.s | 83 +
ld/testsuite/ld-x86-64/property-x86-4a-x32.d | 12 +
ld/testsuite/ld-x86-64/property-x86-4a.d | 12 +
ld/testsuite/ld-x86-64/property-x86-4a.s | 5 +
ld/testsuite/ld-x86-64/property-x86-4b-x32.d | 10 +
ld/testsuite/ld-x86-64/property-x86-4b.d | 10 +
ld/testsuite/ld-x86-64/property-x86-4b.s | 33 +
ld/testsuite/ld-x86-64/property-x86-5-x32.d | 11 +
ld/testsuite/ld-x86-64/property-x86-5.d | 11 +
ld/testsuite/ld-x86-64/property-x86-5a.s | 52 +
ld/testsuite/ld-x86-64/property-x86-5b.s | 31 +
ld/testsuite/ld-x86-64/property-x86-empty.s | 27 +
ld/testsuite/ld-x86-64/property-x86-ibt.s | 27 +
ld/testsuite/ld-x86-64/property-x86-ibt1a-x32.d | 11 +
ld/testsuite/ld-x86-64/property-x86-ibt1a.d | 11 +
ld/testsuite/ld-x86-64/property-x86-ibt1b-x32.d | 11 +
ld/testsuite/ld-x86-64/property-x86-ibt1b.d | 11 +
ld/testsuite/ld-x86-64/property-x86-ibt2-x32.d | 11 +
ld/testsuite/ld-x86-64/property-x86-ibt2.d | 11 +
ld/testsuite/ld-x86-64/property-x86-ibt3a-x32.d | 12 +
ld/testsuite/ld-x86-64/property-x86-ibt3a.d | 12 +
ld/testsuite/ld-x86-64/property-x86-ibt3b-x32.d | 12 +
ld/testsuite/ld-x86-64/property-x86-ibt3b.d | 12 +
ld/testsuite/ld-x86-64/property-x86-ibt4-x32.d | 11 +
ld/testsuite/ld-x86-64/property-x86-ibt4.d | 11 +
ld/testsuite/ld-x86-64/property-x86-ibt5-x32.d | 11 +
ld/testsuite/ld-x86-64/property-x86-ibt5.d | 11 +
ld/testsuite/ld-x86-64/property-x86-shstk.s | 27 +
ld/testsuite/ld-x86-64/property-x86-shstk1a-x32.d | 11 +
ld/testsuite/ld-x86-64/property-x86-shstk1a.d | 11 +
ld/testsuite/ld-x86-64/property-x86-shstk1b-x32.d | 11 +
ld/testsuite/ld-x86-64/property-x86-shstk1b.d | 11 +
ld/testsuite/ld-x86-64/property-x86-shstk2-x32.d | 11 +
ld/testsuite/ld-x86-64/property-x86-shstk2.d | 11 +
ld/testsuite/ld-x86-64/property-x86-shstk3a-x32.d | 12 +
ld/testsuite/ld-x86-64/property-x86-shstk3a.d | 12 +
ld/testsuite/ld-x86-64/property-x86-shstk3b-x32.d | 12 +
ld/testsuite/ld-x86-64/property-x86-shstk3b.d | 12 +
ld/testsuite/ld-x86-64/property-x86-shstk4-x32.d | 11 +
ld/testsuite/ld-x86-64/property-x86-shstk4.d | 11 +
ld/testsuite/ld-x86-64/property-x86-shstk5-x32.d | 11 +
ld/testsuite/ld-x86-64/property-x86-shstk5.d | 11 +
ld/testsuite/ld-x86-64/protected8.d | 13 +
ld/testsuite/ld-x86-64/protected8.s | 31 +
ld/testsuite/ld-x86-64/tls.exp | 148 +-
ld/testsuite/ld-x86-64/tlsbin-nacl.rd | 23 +-
ld/testsuite/ld-x86-64/tlsbin.rd | 5 +-
ld/testsuite/ld-x86-64/tlsbin2-nacl.rd | 21 +-
ld/testsuite/ld-x86-64/tlsbin2.rd | 3 -
ld/testsuite/ld-x86-64/tlsbindesc-nacl.rd | 33 +-
ld/testsuite/ld-x86-64/tlsbindesc.rd | 7 +-
ld/testsuite/ld-x86-64/tlsdesc-nacl.rd | 54 +-
ld/testsuite/ld-x86-64/tlsdesc.pd | 2 +-
ld/testsuite/ld-x86-64/tlsdesc.rd | 10 +-
ld/testsuite/ld-x86-64/tlsdesc1a.c | 19 +
ld/testsuite/ld-x86-64/tlsdesc1b.c | 8 +
ld/testsuite/ld-x86-64/tlsdesc2.d | 10 +
ld/testsuite/ld-x86-64/tlsgdesc-nacl.rd | 14 +-
ld/testsuite/ld-x86-64/tlsgdesc.rd | 14 +-
ld/testsuite/ld-x86-64/tlspic-nacl.rd | 26 +-
ld/testsuite/ld-x86-64/tlspic.rd | 8 +-
ld/testsuite/ld-x86-64/tlspic2-nacl.rd | 26 +-
ld/testsuite/ld-x86-64/tlspic2.rd | 6 -
ld/testsuite/ld-x86-64/tlspie1.d | 2 +-
ld/testsuite/ld-x86-64/x86-64.exp | 913 +-
ld/testsuite/ld-xc16x/xc16x.exp | 2 +-
ld/testsuite/ld-xstormy16/xstormy16.exp | 2 +-
ld/testsuite/ld-xtensa/coalesce.d | 7 +
ld/testsuite/ld-xtensa/coalesce.exp | 99 -
ld/testsuite/ld-xtensa/diff_overflow.d | 6 +
ld/testsuite/ld-xtensa/diff_overflow.exp | 45 -
ld/testsuite/ld-xtensa/lcall.d | 10 +
ld/testsuite/ld-xtensa/lcall.exp | 113 -
ld/testsuite/ld-xtensa/relax-static-defs.s | 33 +
ld/testsuite/ld-xtensa/relax-static-local-pie.d | 17 +
ld/testsuite/ld-xtensa/relax-static-local-shared.d | 17 +
ld/testsuite/ld-xtensa/relax-static-local.s | 19 +
ld/testsuite/ld-xtensa/relax-static-pie.d | 13 +
ld/testsuite/ld-xtensa/relax-static-shared.d | 15 +
ld/testsuite/ld-xtensa/relax-static.s | 9 +
.../ld-xtensa/relax-undef-weak-local-pie.d | 6 +
.../ld-xtensa/relax-undef-weak-local-shared.d | 6 +
ld/testsuite/ld-xtensa/relax-undef-weak-local.s | 31 +
ld/testsuite/ld-xtensa/relax-undef-weak-pie.d | 6 +
ld/testsuite/ld-xtensa/relax-undef-weak-shared.d | 14 +
ld/testsuite/ld-xtensa/relax-undef-weak.s | 12 +
ld/testsuite/ld-xtensa/xtensa-linux.exp | 56 +
ld/testsuite/ld-xtensa/xtensa.exp | 42 +-
ld/testsuite/ld-z8k/z8k.exp | 2 +-
ld/testsuite/lib/ld-lib.exp | 978 +-
libdecnumber/ChangeLog | 60 +
libdecnumber/ChangeLog.jit | 22 +
libdecnumber/Makefile.in | 6 +-
libdecnumber/aclocal.m4 | 7 +-
libdecnumber/bid/bid-dpd.h | 2 +-
libdecnumber/bid/bid2dpd_dpd2bid.c | 275 +-
libdecnumber/bid/bid2dpd_dpd2bid.h | 2 +-
libdecnumber/bid/decimal128.c | 2 +-
libdecnumber/bid/decimal32.c | 2 +-
libdecnumber/bid/decimal64.c | 2 +-
libdecnumber/bid/host-ieee128.c | 2 +-
libdecnumber/bid/host-ieee32.c | 2 +-
libdecnumber/bid/host-ieee64.c | 2 +-
libdecnumber/configure | 957 +-
libdecnumber/configure.ac | 5 +-
libdecnumber/dconfig.h | 2 +-
libdecnumber/decBasic.c | 2 +-
libdecnumber/decCommon.c | 4 +-
libdecnumber/decContext.c | 2 +-
libdecnumber/decContext.h | 2 +-
libdecnumber/decDPD.h | 2 +-
libdecnumber/decDouble.c | 2 +-
libdecnumber/decDouble.h | 2 +-
libdecnumber/decExcept.c | 2 +-
libdecnumber/decExcept.h | 2 +-
libdecnumber/decLibrary.c | 2 +-
libdecnumber/decNumber.c | 10 +-
libdecnumber/decNumber.h | 2 +-
libdecnumber/decNumberLocal.h | 2 +-
libdecnumber/decPacked.c | 2 +-
libdecnumber/decPacked.h | 2 +-
libdecnumber/decQuad.c | 2 +-
libdecnumber/decQuad.h | 2 +-
libdecnumber/decRound.c | 2 +-
libdecnumber/decRound.h | 2 +-
libdecnumber/decSingle.c | 2 +-
libdecnumber/decSingle.h | 2 +-
libdecnumber/dpd/decimal128.c | 2 +-
libdecnumber/dpd/decimal128.h | 2 +-
libdecnumber/dpd/decimal128Local.h | 2 +-
libdecnumber/dpd/decimal32.c | 2 +-
libdecnumber/dpd/decimal32.h | 2 +-
libdecnumber/dpd/decimal64.c | 2 +-
libdecnumber/dpd/decimal64.h | 2 +-
libiberty/ChangeLog | 364 +
libiberty/Makefile.in | 2 +-
libiberty/_doprnt.c | 2 +-
libiberty/argv.c | 10 +-
libiberty/asprintf.c | 2 +-
libiberty/choose-temp.c | 2 +-
libiberty/clock.c | 2 +-
libiberty/concat.c | 2 +-
libiberty/config.in | 9 +
libiberty/configure | 1139 +-
libiberty/configure.ac | 4 +-
libiberty/copying-lib.texi | 2 +-
libiberty/cp-demangle.c | 212 +-
libiberty/cp-demangle.h | 6 +-
libiberty/cp-demint.c | 2 +-
libiberty/cplus-dem.c | 18 +-
libiberty/crc32.c | 2 +-
libiberty/d-demangle.c | 520 +-
libiberty/dwarfnames.c | 15 +-
libiberty/dyn-string.c | 2 +-
libiberty/fdmatch.c | 2 +-
libiberty/fibheap.c | 2 +-
libiberty/filename_cmp.c | 2 +-
libiberty/floatformat.c | 2 +-
libiberty/fnmatch.c | 2 +-
libiberty/fopen_unlocked.c | 2 +-
libiberty/gather-docs | 2 +-
libiberty/getopt.c | 2 +-
libiberty/getopt1.c | 2 +-
libiberty/getruntime.c | 2 +-
libiberty/hashtab.c | 2 +-
libiberty/hex.c | 2 +-
libiberty/lbasename.c | 2 +-
libiberty/libiberty.texi | 4 +-
libiberty/lrealpath.c | 2 +-
libiberty/maint-tool | 2 +-
libiberty/make-relative-prefix.c | 2 +-
libiberty/make-temp-file.c | 26 +-
libiberty/md5.c | 4 +-
libiberty/memmem.c | 2 +-
libiberty/mempcpy.c | 2 +-
libiberty/mkstemps.c | 2 +-
libiberty/objalloc.c | 2 +-
libiberty/obstack.c | 2 +-
libiberty/partition.c | 2 +-
libiberty/pex-common.c | 2 +-
libiberty/pex-common.h | 2 +-
libiberty/pex-djgpp.c | 2 +-
libiberty/pex-msdos.c | 2 +-
libiberty/pex-one.c | 2 +-
libiberty/pex-unix.c | 2 +-
libiberty/pex-win32.c | 2 +-
libiberty/pexecute.c | 2 +-
libiberty/physmem.c | 2 +-
libiberty/putenv.c | 2 +-
libiberty/regex.c | 2 +-
libiberty/rust-demangle.c | 2 +-
libiberty/safe-ctype.c | 2 +-
libiberty/setenv.c | 2 +-
libiberty/setproctitle.c | 2 +-
libiberty/sha1.c | 2 +-
libiberty/simple-object-coff.c | 5 +-
libiberty/simple-object-common.h | 8 +-
libiberty/simple-object-elf.c | 639 +-
libiberty/simple-object-mach-o.c | 5 +-
libiberty/simple-object-xcoff.c | 188 +-
libiberty/simple-object.c | 124 +-
libiberty/snprintf.c | 2 +-
libiberty/sort.c | 2 +-
libiberty/spaces.c | 2 +-
libiberty/splay-tree.c | 21 +-
libiberty/stack-limit.c | 2 +-
libiberty/stpcpy.c | 2 +-
libiberty/stpncpy.c | 2 +-
libiberty/strndup.c | 2 +-
libiberty/strtod.c | 2 +-
libiberty/strverscmp.c | 2 +-
libiberty/testsuite/Makefile.in | 2 +-
libiberty/testsuite/d-demangle-expected | 252 +-
libiberty/testsuite/demangle-expected | 70 +-
libiberty/testsuite/demangler-fuzzer.c | 2 +-
libiberty/testsuite/test-demangle.c | 2 +-
libiberty/testsuite/test-expandargv.c | 2 +-
libiberty/testsuite/test-pexecute.c | 2 +-
libiberty/testsuite/test-strtol.c | 2 +-
libiberty/timeval-utils.c | 2 +-
libiberty/unlink-if-ordinary.c | 2 +-
libiberty/vasprintf.c | 2 +-
libiberty/vfprintf.c | 2 +-
libiberty/vprintf-support.c | 2 +-
libiberty/vprintf-support.h | 2 +-
libiberty/vsnprintf.c | 2 +-
libiberty/vsprintf.c | 2 +-
libiberty/waitpid.c | 5 +
libiberty/xasprintf.c | 2 +-
libiberty/xexit.c | 2 +-
libiberty/xmalloc.c | 2 +-
libiberty/xstrndup.c | 2 +-
libiberty/xvasprintf.c | 2 +-
libtool.m4 | 4 +-
multilib.am | 45 +
opcodes/ChangeLog | 2670 +-
opcodes/ChangeLog-2017 | 1977 +
opcodes/MAINTAINERS | 2 +-
opcodes/Makefile.am | 28 +-
opcodes/Makefile.in | 419 +-
opcodes/aarch64-asm-2.c | 1183 +-
opcodes/aarch64-asm.c | 547 +-
opcodes/aarch64-asm.h | 13 +-
opcodes/aarch64-dis-2.c |12638 ++-
opcodes/aarch64-dis.c | 753 +-
opcodes/aarch64-dis.h | 14 +-
opcodes/aarch64-gen.c | 33 +-
opcodes/aarch64-opc-2.c | 153 +-
opcodes/aarch64-opc.c | 820 +-
opcodes/aarch64-opc.h | 37 +-
opcodes/aarch64-tbl.h | 926 +-
opcodes/aclocal.m4 | 718 +-
opcodes/alpha-dis.c | 4 +-
opcodes/alpha-opc.c | 2 +-
opcodes/arc-dis.c | 264 +-
opcodes/arc-dis.h | 2 +-
opcodes/arc-ext-tbl.h | 12 +-
opcodes/arc-ext.c | 2 +-
opcodes/arc-ext.h | 2 +-
opcodes/arc-fxi.h | 2 +-
opcodes/arc-nps400-tbl.h | 60 +-
opcodes/arc-opc.c | 126 +-
opcodes/arc-regs.h | 762 +-
opcodes/arc-tbl.h | 5084 +-
opcodes/arm-dis.c | 182 +-
opcodes/avr-dis.c | 10 +-
opcodes/bfin-dis.c | 12 +-
opcodes/cgen-asm.c | 2 +-
opcodes/cgen-asm.in | 2 +-
opcodes/cgen-bitset.c | 2 +-
opcodes/cgen-dis.c | 2 +-
opcodes/cgen-dis.in | 4 +-
opcodes/cgen-ibld.in | 2 +-
opcodes/cgen-opc.c | 2 +-
opcodes/cgen.sh | 28 +-
opcodes/configure | 1553 +-
opcodes/configure.ac | 34 +-
opcodes/configure.com | 2 +-
opcodes/cr16-dis.c | 20 +-
opcodes/cr16-opc.c | 4 +-
opcodes/cris-dis.c | 2 +-
opcodes/cris-opc.c | 2 +-
opcodes/crx-dis.c | 24 +-
opcodes/crx-opc.c | 8 +-
opcodes/csky-dis.c | 1068 +
opcodes/csky-opc.h | 8127 ++
opcodes/d10v-dis.c | 4 +-
opcodes/d10v-opc.c | 2 +-
opcodes/d30v-dis.c | 8 +-
opcodes/d30v-opc.c | 2 +-
opcodes/dis-buf.c | 8 +-
opcodes/dis-init.c | 2 +-
opcodes/disassemble.c | 124 +-
opcodes/disassemble.h | 106 +
opcodes/dlx-dis.c | 4 +-
opcodes/epiphany-asm.c | 7 +-
opcodes/epiphany-desc.c | 31 +-
opcodes/epiphany-desc.h | 3 +-
opcodes/epiphany-dis.c | 12 +-
opcodes/epiphany-ibld.c | 33 +-
opcodes/epiphany-opc.c | 3 +-
opcodes/epiphany-opc.h | 3 +-
opcodes/fr30-asm.c | 7 +-
opcodes/fr30-desc.c | 31 +-
opcodes/fr30-desc.h | 3 +-
opcodes/fr30-dis.c | 12 +-
opcodes/fr30-ibld.c | 33 +-
opcodes/fr30-opc.c | 3 +-
opcodes/fr30-opc.h | 3 +-
opcodes/frv-asm.c | 7 +-
opcodes/frv-desc.c | 27 +-
opcodes/frv-desc.h | 3 +-
opcodes/frv-dis.c | 12 +-
opcodes/frv-ibld.c | 33 +-
opcodes/frv-opc.c | 20 +-
opcodes/frv-opc.h | 3 +-
opcodes/ft32-dis.c | 76 +-
opcodes/ft32-opc.c | 12 +-
opcodes/h8300-dis.c | 7 +-
opcodes/h8500-dis.c | 325 -
opcodes/h8500-opc.h | 3858 -
opcodes/hppa-dis.c | 6 +-
opcodes/i370-dis.c | 161 -
opcodes/i370-opc.c | 935 -
opcodes/i386-dis-evex.h | 326 +-
opcodes/i386-dis.c | 2708 +-
opcodes/i386-gen.c | 342 +-
opcodes/i386-init.h | 1270 +-
opcodes/i386-opc.c | 2 +-
opcodes/i386-opc.h | 221 +-
opcodes/i386-opc.tbl | 8875 +-
opcodes/i386-reg.tbl | 30 +-
opcodes/i386-tbl.h |123283 ++++++++------------
opcodes/i860-dis.c | 286 -
opcodes/i960-dis.c | 932 -
opcodes/ia64-asmtab.c | 2 +-
opcodes/ia64-asmtab.h | 2 +-
opcodes/ia64-dis.c | 4 +-
opcodes/ia64-gen.c | 4 +-
opcodes/ia64-opc-a.c | 2 +-
opcodes/ia64-opc-b.c | 2 +-
opcodes/ia64-opc-d.c | 2 +-
opcodes/ia64-opc-f.c | 2 +-
opcodes/ia64-opc-i.c | 2 +-
opcodes/ia64-opc-m.c | 2 +-
opcodes/ia64-opc-x.c | 2 +-
opcodes/ia64-opc.c | 2 +-
opcodes/ia64-opc.h | 2 +-
opcodes/ip2k-asm.c | 7 +-
opcodes/ip2k-desc.c | 31 +-
opcodes/ip2k-desc.h | 3 +-
opcodes/ip2k-dis.c | 12 +-
opcodes/ip2k-ibld.c | 33 +-
opcodes/ip2k-opc.c | 3 +-
opcodes/ip2k-opc.h | 3 +-
opcodes/iq2000-asm.c | 7 +-
opcodes/iq2000-desc.c | 31 +-
opcodes/iq2000-desc.h | 3 +-
opcodes/iq2000-dis.c | 12 +-
opcodes/iq2000-ibld.c | 33 +-
opcodes/iq2000-opc.c | 3 +-
opcodes/iq2000-opc.h | 3 +-
opcodes/lm32-asm.c | 7 +-
opcodes/lm32-desc.c | 31 +-
opcodes/lm32-desc.h | 3 +-
opcodes/lm32-dis.c | 12 +-
opcodes/lm32-ibld.c | 33 +-
opcodes/lm32-opc.c | 3 +-
opcodes/lm32-opc.h | 3 +-
opcodes/lm32-opinst.c | 3 +-
opcodes/m10200-dis.c | 4 +-
opcodes/m10200-opc.c | 2 +-
opcodes/m10300-dis.c | 4 +-
opcodes/m10300-opc.c | 2 +-
opcodes/m32c-asm.c | 7 +-
opcodes/m32c-desc.c | 31 +-
opcodes/m32c-desc.h | 3 +-
opcodes/m32c-dis.c | 12 +-
opcodes/m32c-ibld.c | 33 +-
opcodes/m32c-opc.c | 3 +-
opcodes/m32c-opc.h | 3 +-
opcodes/m32r-asm.c | 7 +-
opcodes/m32r-desc.c | 31 +-
opcodes/m32r-desc.h | 3 +-
opcodes/m32r-dis.c | 12 +-
opcodes/m32r-ibld.c | 33 +-
opcodes/m32r-opc.c | 3 +-
opcodes/m32r-opc.h | 3 +-
opcodes/m32r-opinst.c | 3 +-
opcodes/m68hc11-dis.c | 4 +-
opcodes/m68hc11-opc.c | 2 +-
opcodes/m68k-dis.c | 4 +-
opcodes/m68k-opc.c | 16 +-
opcodes/m88k-dis.c | 762 -
opcodes/makefile.vms | 2 +-
opcodes/mcore-dis.c | 4 +-
opcodes/mcore-opc.h | 2 +-
opcodes/mep-asm.c | 7 +-
opcodes/mep-desc.c | 31 +-
opcodes/mep-desc.h | 3 +-
opcodes/mep-dis.c | 12 +-
opcodes/mep-ibld.c | 33 +-
opcodes/mep-opc.c | 3 +-
opcodes/mep-opc.h | 3 +-
opcodes/metag-dis.c | 14 +-
opcodes/microblaze-dis.c | 4 +-
opcodes/microblaze-dis.h | 2 +-
opcodes/microblaze-opc.h | 2 +-
opcodes/microblaze-opcm.h | 2 +-
opcodes/micromips-opc.c | 26 +-
opcodes/mips-dis.c | 619 +-
opcodes/mips-formats.h | 9 +-
opcodes/mips-opc.c | 391 +-
opcodes/mips16-opc.c | 125 +-
opcodes/mmix-dis.c | 35 +-
opcodes/mmix-opc.c | 2 +-
opcodes/moxie-dis.c | 4 +-
opcodes/moxie-opc.c | 2 +-
opcodes/msp430-decode.c | 210 +-
opcodes/msp430-decode.opc | 11 +-
opcodes/msp430-dis.c | 4 +-
opcodes/mt-asm.c | 7 +-
opcodes/mt-desc.c | 31 +-
opcodes/mt-desc.h | 3 +-
opcodes/mt-dis.c | 12 +-
opcodes/mt-ibld.c | 33 +-
opcodes/mt-opc.c | 3 +-
opcodes/mt-opc.h | 3 +-
opcodes/nds32-asm.c | 733 +-
opcodes/nds32-asm.h | 37 +-
opcodes/nds32-dis.c | 536 +-
opcodes/nds32-opc.h | 2 +-
opcodes/nfp-dis.c | 2982 +
opcodes/nios2-dis.c | 45 +-
opcodes/nios2-opc.c | 2 +-
opcodes/ns32k-dis.c | 4 +-
opcodes/opc2c.c | 12 +-
opcodes/opintl.h | 45 +-
opcodes/or1k-asm.c | 597 +-
opcodes/or1k-desc.c | 65 +-
opcodes/or1k-desc.h | 53 +-
opcodes/or1k-dis.c | 15 +-
opcodes/or1k-ibld.c | 62 +-
opcodes/or1k-opc.c | 47 +-
opcodes/or1k-opc.h | 68 +-
opcodes/or1k-opinst.c | 101 +-
opcodes/pdp11-dis.c | 4 +-
opcodes/pdp11-opc.c | 2 +-
opcodes/pj-dis.c | 4 +-
opcodes/pj-opc.c | 2 +-
opcodes/po/Make-in | 10 +-
opcodes/po/POTFILES.in | 15 +-
opcodes/po/da.po | 1 +
opcodes/po/de.po | 1688 +-
opcodes/po/es.po | 1424 +-
opcodes/po/fi.po | 1 +
opcodes/po/fr.po | 1199 +-
opcodes/po/id.po | 777 +-
opcodes/po/it.po | 1 +
opcodes/po/nl.po | 1 +
opcodes/po/opcodes.pot | 1288 +-
opcodes/po/pt_BR.po | 2330 +-
opcodes/po/ro.po | 1 +
opcodes/po/sv.po | 2297 +-
opcodes/po/tr.po | 1 +
opcodes/po/uk.po | 1771 +-
opcodes/po/vi.po | 661 +-
opcodes/po/zh_CN.po | 1180 +-
opcodes/ppc-dis.c | 338 +-
opcodes/ppc-opc.c | 5221 +-
opcodes/pru-dis.c | 4 +-
opcodes/pru-opc.c | 2 +-
opcodes/riscv-dis.c | 43 +-
opcodes/riscv-opc.c | 1266 +-
opcodes/rl78-decode.c | 831 +-
opcodes/rl78-decode.opc | 16 +-
opcodes/rl78-dis.c | 10 +-
opcodes/rx-decode.c | 1451 +-
opcodes/rx-decode.opc | 26 +-
opcodes/rx-dis.c | 2 +-
opcodes/s12z-dis.c | 2677 +
opcodes/s390-dis.c | 34 +-
opcodes/s390-mkopc.c | 13 +-
opcodes/s390-opc.c | 12 +-
opcodes/s390-opc.txt | 33 +-
opcodes/score-dis.c | 5 +-
opcodes/score-opc.h | 2 +-
opcodes/score7-dis.c | 5 +-
opcodes/sh-dis.c | 18 +-
opcodes/sh-opc.h | 7 +-
opcodes/sh64-dis.c | 619 -
opcodes/sh64-opc.c | 777 -
opcodes/sh64-opc.h | 142 -
opcodes/sparc-dis.c | 50 +-
opcodes/sparc-opc.c | 241 +-
opcodes/spu-dis.c | 4 +-
opcodes/spu-opc.c | 2 +-
opcodes/sysdep.h | 4 +-
opcodes/tic30-dis.c | 4 +-
opcodes/tic4x-dis.c | 4 +-
opcodes/tic54x-dis.c | 4 +-
opcodes/tic54x-opc.c | 2 +-
opcodes/tic6x-dis.c | 4 +-
opcodes/tic80-dis.c | 4 +-
opcodes/tic80-opc.c | 2 +-
opcodes/tilegx-dis.c | 4 +-
opcodes/tilegx-opc.c | 2 +-
opcodes/tilepro-dis.c | 4 +-
opcodes/tilepro-opc.c | 2 +-
opcodes/v850-dis.c | 20 +-
opcodes/v850-opc.c | 2 +-
opcodes/vax-dis.c | 4 +-
opcodes/visium-dis.c | 6 +-
opcodes/visium-opc.c | 2 +-
opcodes/w65-dis.c | 98 -
opcodes/w65-opc.h | 568 -
opcodes/wasm32-dis.c | 15 +-
opcodes/xc16x-asm.c | 7 +-
opcodes/xc16x-desc.c | 31 +-
opcodes/xc16x-desc.h | 3 +-
opcodes/xc16x-dis.c | 12 +-
opcodes/xc16x-ibld.c | 33 +-
opcodes/xc16x-opc.c | 3 +-
opcodes/xc16x-opc.h | 3 +-
opcodes/xgate-dis.c | 4 +-
opcodes/xgate-opc.c | 2 +-
opcodes/xstormy16-asm.c | 7 +-
opcodes/xstormy16-desc.c | 31 +-
opcodes/xstormy16-desc.h | 3 +-
opcodes/xstormy16-dis.c | 12 +-
opcodes/xstormy16-ibld.c | 33 +-
opcodes/xstormy16-opc.c | 3 +-
opcodes/xstormy16-opc.h | 3 +-
opcodes/xtensa-dis.c | 229 +-
opcodes/z80-dis.c | 4 +-
opcodes/z8k-dis.c | 4 +-
opcodes/z8k-opc.h | 2 +-
opcodes/z8kgen.c | 4 +-
readline/ChangeLog.gdb | 5 +
readline/configure | 999 +-
readline/examples/rlfe/configure | 4261 +-
readline/input.c | 1 +
sim/ChangeLog | 88 +
sim/MAINTAINERS | 14 +-
sim/Makefile.in | 2 +-
sim/aarch64/ChangeLog | 24 +
sim/aarch64/Makefile.in | 2 +-
sim/aarch64/aclocal.m4 | 63 +-
sim/aarch64/config.in | 26 +-
sim/aarch64/configure | 1100 +-
sim/aarch64/configure.ac | 3 +-
sim/aarch64/cpustate.c | 2 +-
sim/aarch64/cpustate.h | 2 +-
sim/aarch64/decode.h | 2 +-
sim/aarch64/interp.c | 2 +-
sim/aarch64/memory.c | 2 +-
sim/aarch64/memory.h | 2 +-
sim/aarch64/sim-main.h | 2 +-
sim/aarch64/simulator.c | 485 +-
sim/aarch64/simulator.h | 2 +-
sim/arm/ChangeLog | 15 +
sim/arm/Makefile.in | 2 +-
sim/arm/aclocal.m4 | 50 +-
sim/arm/config.in | 26 +-
sim/arm/configure | 1100 +-
sim/arm/configure.ac | 1 -
sim/arm/iwmmxt.c | 2 +-
sim/arm/iwmmxt.h | 2 +-
sim/arm/maverick.c | 4 +-
sim/arm/sim-main.h | 2 +-
sim/arm/wrapper.c | 6 +-
sim/avr/ChangeLog | 4 +
sim/avr/Makefile.in | 2 +-
sim/avr/aclocal.m4 | 50 +-
sim/avr/config.in | 26 +-
sim/avr/configure | 1100 +-
sim/avr/configure.ac | 1 -
sim/avr/interp.c | 2 +-
sim/avr/sim-main.h | 2 +-
sim/bfin/ChangeLog | 4 +
sim/bfin/Makefile.in | 2 +-
sim/bfin/aclocal.m4 | 339 +-
sim/bfin/arch.h | 2 +-
sim/bfin/bfin-sim.c | 2 +-
sim/bfin/bfin-sim.h | 2 +-
sim/bfin/config.in | 26 +-
sim/bfin/configure | 1124 +-
sim/bfin/configure.ac | 1 -
sim/bfin/devices.c | 2 +-
sim/bfin/devices.h | 2 +-
sim/bfin/dv-bfin_cec.c | 2 +-
sim/bfin/dv-bfin_cec.h | 2 +-
sim/bfin/dv-bfin_ctimer.c | 2 +-
sim/bfin/dv-bfin_ctimer.h | 2 +-
sim/bfin/dv-bfin_dma.c | 2 +-
sim/bfin/dv-bfin_dma.h | 2 +-
sim/bfin/dv-bfin_dmac.c | 2 +-
sim/bfin/dv-bfin_dmac.h | 2 +-
sim/bfin/dv-bfin_ebiu_amc.c | 2 +-
sim/bfin/dv-bfin_ebiu_amc.h | 2 +-
sim/bfin/dv-bfin_ebiu_ddrc.c | 2 +-
sim/bfin/dv-bfin_ebiu_ddrc.h | 2 +-
sim/bfin/dv-bfin_ebiu_sdc.c | 2 +-
sim/bfin/dv-bfin_ebiu_sdc.h | 2 +-
sim/bfin/dv-bfin_emac.c | 2 +-
sim/bfin/dv-bfin_emac.h | 2 +-
sim/bfin/dv-bfin_eppi.c | 2 +-
sim/bfin/dv-bfin_eppi.h | 2 +-
sim/bfin/dv-bfin_evt.c | 2 +-
sim/bfin/dv-bfin_evt.h | 2 +-
sim/bfin/dv-bfin_gpio.c | 2 +-
sim/bfin/dv-bfin_gpio.h | 2 +-
sim/bfin/dv-bfin_gpio2.c | 2 +-
sim/bfin/dv-bfin_gpio2.h | 2 +-
sim/bfin/dv-bfin_gptimer.c | 2 +-
sim/bfin/dv-bfin_gptimer.h | 2 +-
sim/bfin/dv-bfin_jtag.c | 2 +-
sim/bfin/dv-bfin_jtag.h | 2 +-
sim/bfin/dv-bfin_mmu.c | 2 +-
sim/bfin/dv-bfin_mmu.h | 2 +-
sim/bfin/dv-bfin_nfc.c | 2 +-
sim/bfin/dv-bfin_nfc.h | 2 +-
sim/bfin/dv-bfin_otp.c | 2 +-
sim/bfin/dv-bfin_otp.h | 2 +-
sim/bfin/dv-bfin_pfmon.c | 2 +-
sim/bfin/dv-bfin_pfmon.h | 2 +-
sim/bfin/dv-bfin_pint.c | 2 +-
sim/bfin/dv-bfin_pint.h | 2 +-
sim/bfin/dv-bfin_pll.c | 2 +-
sim/bfin/dv-bfin_pll.h | 2 +-
sim/bfin/dv-bfin_ppi.c | 2 +-
sim/bfin/dv-bfin_ppi.h | 2 +-
sim/bfin/dv-bfin_rtc.c | 2 +-
sim/bfin/dv-bfin_rtc.h | 2 +-
sim/bfin/dv-bfin_sic.c | 2 +-
sim/bfin/dv-bfin_sic.h | 2 +-
sim/bfin/dv-bfin_spi.c | 2 +-
sim/bfin/dv-bfin_spi.h | 2 +-
sim/bfin/dv-bfin_trace.c | 2 +-
sim/bfin/dv-bfin_trace.h | 2 +-
sim/bfin/dv-bfin_twi.c | 2 +-
sim/bfin/dv-bfin_twi.h | 2 +-
sim/bfin/dv-bfin_uart.c | 2 +-
sim/bfin/dv-bfin_uart.h | 2 +-
sim/bfin/dv-bfin_uart2.c | 2 +-
sim/bfin/dv-bfin_uart2.h | 2 +-
sim/bfin/dv-bfin_wdog.c | 2 +-
sim/bfin/dv-bfin_wdog.h | 2 +-
sim/bfin/dv-bfin_wp.c | 2 +-
sim/bfin/dv-bfin_wp.h | 2 +-
sim/bfin/dv-eth_phy.c | 2 +-
sim/bfin/gui.c | 2 +-
sim/bfin/gui.h | 2 +-
sim/bfin/insn_list.def | 2 +-
sim/bfin/interp.c | 2 +-
sim/bfin/linux-fixed-code.s | 2 +-
sim/bfin/machs.c | 2 +-
sim/bfin/machs.h | 2 +-
sim/bfin/proc_list.def | 2 +-
sim/bfin/sim-main.h | 2 +-
sim/common/ChangeLog | 42 +
sim/common/Make-common.in | 2 +-
sim/common/Makefile.in | 2 +-
sim/common/acinclude.m4 | 10 +-
sim/common/aclocal.m4 | 7 +-
sim/common/callback.c | 2 +-
sim/common/cgen-accfp.c | 40 +
sim/common/cgen-cpu.h | 2 +-
sim/common/cgen-defs.h | 2 +-
sim/common/cgen-engine.h | 2 +-
sim/common/cgen-fpu.h | 4 +
sim/common/cgen-mem.h | 2 +-
sim/common/cgen-ops.h | 56 +-
sim/common/cgen-par.c | 2 +-
sim/common/cgen-par.h | 2 +-
sim/common/cgen-run.c | 2 +-
sim/common/cgen-scache.c | 2 +-
sim/common/cgen-scache.h | 2 +-
sim/common/cgen-sim.h | 2 +-
sim/common/cgen-trace.c | 2 +-
sim/common/cgen-trace.h | 2 +-
sim/common/cgen-types.h | 2 +-
sim/common/cgen-utils.c | 2 +-
sim/common/configure | 599 +-
sim/common/configure.ac | 1 -
sim/common/dv-cfi.c | 2 +-
sim/common/dv-cfi.h | 2 +-
sim/common/dv-core.c | 2 +-
sim/common/dv-glue.c | 2 +-
sim/common/dv-pal.c | 2 +-
sim/common/dv-sockser.c | 2 +-
sim/common/dv-sockser.h | 2 +-
sim/common/genmloop.sh | 2 +-
sim/common/hw-alloc.c | 2 +-
sim/common/hw-alloc.h | 2 +-
sim/common/hw-base.c | 2 +-
sim/common/hw-base.h | 2 +-
sim/common/hw-device.c | 2 +-
sim/common/hw-device.h | 2 +-
sim/common/hw-events.c | 2 +-
sim/common/hw-events.h | 2 +-
sim/common/hw-handles.c | 2 +-
sim/common/hw-handles.h | 2 +-
sim/common/hw-instances.c | 2 +-
sim/common/hw-instances.h | 2 +-
sim/common/hw-main.h | 2 +-
sim/common/hw-ports.c | 2 +-
sim/common/hw-ports.h | 2 +-
sim/common/hw-properties.c | 2 +-
sim/common/hw-properties.h | 2 +-
sim/common/hw-tree.c | 2 +-
sim/common/hw-tree.h | 2 +-
sim/common/nrun.c | 2 +-
sim/common/run.1 | 2 +-
sim/common/sim-abort.c | 2 +-
sim/common/sim-alu.h | 2 +-
sim/common/sim-arange.c | 2 +-
sim/common/sim-arange.h | 2 +-
sim/common/sim-assert.h | 2 +-
sim/common/sim-base.h | 2 +-
sim/common/sim-basics.h | 2 +-
sim/common/sim-bits.c | 2 +-
sim/common/sim-bits.h | 2 +-
sim/common/sim-close.c | 2 +-
sim/common/sim-command.c | 2 +-
sim/common/sim-config.c | 2 +-
sim/common/sim-config.h | 2 +-
sim/common/sim-core.c | 10 +-
sim/common/sim-core.h | 4 +-
sim/common/sim-cpu.c | 2 +-
sim/common/sim-cpu.h | 2 +-
sim/common/sim-endian.c | 2 +-
sim/common/sim-endian.h | 2 +-
sim/common/sim-engine.c | 2 +-
sim/common/sim-engine.h | 2 +-
sim/common/sim-events.c | 2 +-
sim/common/sim-events.h | 2 +-
sim/common/sim-fpu.c | 88 +-
sim/common/sim-fpu.h | 15 +-
sim/common/sim-hload.c | 2 +-
sim/common/sim-hrw.c | 2 +-
sim/common/sim-hw.c | 2 +-
sim/common/sim-hw.h | 2 +-
sim/common/sim-info.c | 2 +-
sim/common/sim-inline.c | 2 +-
sim/common/sim-inline.h | 2 +-
sim/common/sim-io.c | 2 +-
sim/common/sim-io.h | 2 +-
sim/common/sim-load.c | 2 +-
sim/common/sim-memopt.c | 2 +-
sim/common/sim-memopt.h | 2 +-
sim/common/sim-model.c | 2 +-
sim/common/sim-model.h | 2 +-
sim/common/sim-module.c | 2 +-
sim/common/sim-module.h | 2 +-
sim/common/sim-n-bits.h | 2 +-
sim/common/sim-n-core.h | 2 +-
sim/common/sim-n-endian.h | 2 +-
sim/common/sim-options.c | 2 +-
sim/common/sim-options.h | 2 +-
sim/common/sim-profile.c | 2 +-
sim/common/sim-profile.h | 2 +-
sim/common/sim-reason.c | 2 +-
sim/common/sim-reg.c | 2 +-
sim/common/sim-resume.c | 2 +-
sim/common/sim-run.c | 2 +-
sim/common/sim-signal.c | 2 +-
sim/common/sim-signal.h | 2 +-
sim/common/sim-stop.c | 2 +-
sim/common/sim-syscall.c | 2 +-
sim/common/sim-syscall.h | 2 +-
sim/common/sim-trace.c | 8 +-
sim/common/sim-trace.h | 2 +-
sim/common/sim-types.h | 2 +-
sim/common/sim-utils.c | 2 +-
sim/common/sim-utils.h | 2 +-
sim/common/sim-watch.c | 2 +-
sim/common/sim-watch.h | 2 +-
sim/common/syscall.c | 2 +-
sim/common/version.h | 2 +-
sim/configure | 732 +-
sim/configure.ac | 11 +-
sim/configure.tgt | 3 +
sim/cr16/ChangeLog | 4 +
sim/cr16/Makefile.in | 2 +-
sim/cr16/aclocal.m4 | 50 +-
sim/cr16/config.in | 26 +-
sim/cr16/configure | 1100 +-
sim/cr16/configure.ac | 1 -
sim/cr16/cr16_sim.h | 2 +-
sim/cr16/gencode.c | 2 +-
sim/cr16/interp.c | 2 +-
sim/cr16/sim-main.h | 2 +-
sim/cr16/simops.c | 2 +-
sim/cris/ChangeLog | 4 +
sim/cris/Makefile.in | 2 +-
sim/cris/aclocal.m4 | 50 +-
sim/cris/arch.c | 2 +-
sim/cris/arch.h | 2 +-
sim/cris/config.in | 26 +-
sim/cris/configure | 1111 +-
sim/cris/configure.ac | 1 -
sim/cris/cpuall.h | 2 +-
sim/cris/cpuv10.c | 2 +-
sim/cris/cpuv10.h | 2 +-
sim/cris/cpuv32.c | 2 +-
sim/cris/cpuv32.h | 2 +-
sim/cris/cris-desc.c | 2 +-
sim/cris/cris-desc.h | 2 +-
sim/cris/cris-opc.h | 2 +-
sim/cris/cris-sim.h | 2 +-
sim/cris/cris-tmpl.c | 2 +-
sim/cris/crisv10f.c | 2 +-
sim/cris/crisv32f.c | 2 +-
sim/cris/decodev10.c | 2 +-
sim/cris/decodev10.h | 2 +-
sim/cris/decodev32.c | 2 +-
sim/cris/decodev32.h | 2 +-
sim/cris/dv-cris.c | 2 +-
sim/cris/dv-cris_900000xx.c | 2 +-
sim/cris/dv-rv.c | 2 +-
sim/cris/mloop.in | 2 +-
sim/cris/modelv10.c | 2 +-
sim/cris/modelv32.c | 2 +-
sim/cris/rvdummy.c | 2 +-
sim/cris/semcrisv10f-switch.c | 2 +-
sim/cris/semcrisv32f-switch.c | 2 +-
sim/cris/sim-if.c | 2 +-
sim/cris/sim-main.h | 2 +-
sim/cris/traps.c | 2 +-
sim/d10v/ChangeLog | 4 +
sim/d10v/Makefile.in | 2 +-
sim/d10v/aclocal.m4 | 50 +-
sim/d10v/config.in | 26 +-
sim/d10v/configure | 1100 +-
sim/d10v/configure.ac | 1 -
sim/d10v/sim-main.h | 2 +-
sim/erc32/ChangeLog | 10 +
sim/erc32/Makefile.in | 2 +-
sim/erc32/aclocal.m4 | 50 +-
sim/erc32/config.in | 26 +-
sim/erc32/configure | 1118 +-
sim/erc32/configure.ac | 12 +-
sim/erc32/erc32.c | 2 +-
sim/erc32/exec.c | 2 +-
sim/erc32/float.c | 2 +-
sim/erc32/func.c | 2 +-
sim/erc32/help.c | 2 +-
sim/erc32/interf.c | 2 +-
sim/erc32/sis.c | 2 +-
sim/erc32/sis.h | 2 +-
sim/erc32/startsim | 2 +-
sim/frv/ChangeLog | 4 +
sim/frv/Makefile.in | 2 +-
sim/frv/aclocal.m4 | 50 +-
sim/frv/arch.c | 2 +-
sim/frv/arch.h | 2 +-
sim/frv/cache.c | 2 +-
sim/frv/cache.h | 2 +-
sim/frv/config.in | 26 +-
sim/frv/configure | 1108 +-
sim/frv/configure.ac | 1 -
sim/frv/cpu.c | 2 +-
sim/frv/cpu.h | 2 +-
sim/frv/cpuall.h | 2 +-
sim/frv/decode.c | 2 +-
sim/frv/decode.h | 2 +-
sim/frv/frv-sim.h | 2 +-
sim/frv/frv.c | 2 +-
sim/frv/interrupts.c | 2 +-
sim/frv/memory.c | 2 +-
sim/frv/mloop.in | 2 +-
sim/frv/model.c | 2 +-
sim/frv/options.c | 2 +-
sim/frv/pipeline.c | 2 +-
sim/frv/profile-fr400.c | 2 +-
sim/frv/profile-fr400.h | 2 +-
sim/frv/profile-fr450.c | 2 +-
sim/frv/profile-fr500.c | 2 +-
sim/frv/profile-fr500.h | 2 +-
sim/frv/profile-fr550.c | 2 +-
sim/frv/profile-fr550.h | 2 +-
sim/frv/profile.c | 2 +-
sim/frv/profile.h | 2 +-
sim/frv/registers.c | 2 +-
sim/frv/registers.h | 2 +-
sim/frv/reset.c | 2 +-
sim/frv/sem.c | 2 +-
sim/frv/sim-if.c | 2 +-
sim/frv/sim-main.h | 2 +-
sim/frv/traps.c | 2 +-
sim/ft32/ChangeLog | 4 +
sim/ft32/Makefile.in | 2 +-
sim/ft32/aclocal.m4 | 50 +-
sim/ft32/config.in | 26 +-
sim/ft32/configure | 1100 +-
sim/ft32/configure.ac | 1 -
sim/ft32/ft32-sim.h | 2 +-
sim/ft32/interp.c | 42 +-
sim/ft32/sim-main.h | 2 +-
sim/h8300/ChangeLog | 4 +
sim/h8300/Makefile.in | 2 +-
sim/h8300/aclocal.m4 | 50 +-
sim/h8300/config.in | 26 +-
sim/h8300/configure | 1100 +-
sim/h8300/configure.ac | 1 -
sim/igen/Makefile.in | 2 +-
sim/igen/compare_igen_models | 2 +-
sim/igen/configure | 787 +-
sim/igen/configure.ac | 1 -
sim/igen/filter.c | 2 +-
sim/igen/filter.h | 2 +-
sim/igen/filter_host.c | 2 +-
sim/igen/filter_host.h | 2 +-
sim/igen/gen-engine.c | 2 +-
sim/igen/gen-engine.h | 2 +-
sim/igen/gen-icache.c | 2 +-
sim/igen/gen-icache.h | 2 +-
sim/igen/gen-idecode.c | 2 +-
sim/igen/gen-idecode.h | 2 +-
sim/igen/gen-itable.c | 2 +-
sim/igen/gen-itable.h | 2 +-
sim/igen/gen-model.c | 2 +-
sim/igen/gen-model.h | 2 +-
sim/igen/gen-semantics.c | 2 +-
sim/igen/gen-semantics.h | 2 +-
sim/igen/gen-support.c | 2 +-
sim/igen/gen-support.h | 2 +-
sim/igen/gen.c | 2 +-
sim/igen/gen.h | 2 +-
sim/igen/igen.c | 2 +-
sim/igen/igen.h | 2 +-
sim/igen/ld-cache.c | 2 +-
sim/igen/ld-cache.h | 2 +-
sim/igen/ld-decode.c | 2 +-
sim/igen/ld-decode.h | 2 +-
sim/igen/ld-insn.c | 2 +-
sim/igen/ld-insn.h | 2 +-
sim/igen/lf.c | 2 +-
sim/igen/lf.h | 2 +-
sim/igen/misc.c | 2 +-
sim/igen/misc.h | 2 +-
sim/igen/table.c | 2 +-
sim/igen/table.h | 2 +-
sim/iq2000/ChangeLog | 4 +
sim/iq2000/Makefile.in | 2 +-
sim/iq2000/aclocal.m4 | 50 +-
sim/iq2000/arch.c | 2 +-
sim/iq2000/arch.h | 2 +-
sim/iq2000/config.in | 26 +-
sim/iq2000/configure | 1106 +-
sim/iq2000/configure.ac | 1 -
sim/iq2000/cpu.c | 2 +-
sim/iq2000/cpu.h | 2 +-
sim/iq2000/cpuall.h | 2 +-
sim/iq2000/decode.c | 2 +-
sim/iq2000/decode.h | 2 +-
sim/iq2000/iq2000.c | 2 +-
sim/iq2000/mloop.in | 2 +-
sim/iq2000/model.c | 2 +-
sim/iq2000/sem-switch.c | 2 +-
sim/iq2000/sem.c | 2 +-
sim/iq2000/sim-if.c | 2 +-
sim/lm32/ChangeLog | 4 +
sim/lm32/aclocal.m4 | 50 +-
sim/lm32/arch.c | 2 +-
sim/lm32/arch.h | 2 +-
sim/lm32/config.in | 26 +-
sim/lm32/configure | 1106 +-
sim/lm32/configure.ac | 1 -
sim/lm32/cpu.c | 2 +-
sim/lm32/cpu.h | 2 +-
sim/lm32/cpuall.h | 2 +-
sim/lm32/decode.c | 2 +-
sim/lm32/decode.h | 2 +-
sim/lm32/dv-lm32cpu.c | 2 +-
sim/lm32/dv-lm32timer.c | 2 +-
sim/lm32/dv-lm32uart.c | 2 +-
sim/lm32/lm32-sim.h | 2 +-
sim/lm32/lm32.c | 2 +-
sim/lm32/model.c | 2 +-
sim/lm32/sem-switch.c | 2 +-
sim/lm32/sem.c | 2 +-
sim/lm32/sim-if.c | 2 +-
sim/lm32/sim-main.h | 2 +-
sim/lm32/traps.c | 2 +-
sim/lm32/user.c | 2 +-
sim/m32c/ChangeLog | 4 +
sim/m32c/Makefile.in | 2 +-
sim/m32c/aclocal.m4 | 50 +-
sim/m32c/config.in | 26 +-
sim/m32c/configure | 1099 +-
sim/m32c/configure.ac | 3 +-
sim/m32c/cpu.h | 2 +-
sim/m32c/gdb-if.c | 2 +-
sim/m32c/int.c | 2 +-
sim/m32c/int.h | 2 +-
sim/m32c/load.c | 2 +-
sim/m32c/load.h | 2 +-
sim/m32c/m32c.opc | 2 +-
sim/m32c/main.c | 2 +-
sim/m32c/mem.c | 2 +-
sim/m32c/mem.h | 2 +-
sim/m32c/misc.c | 2 +-
sim/m32c/misc.h | 2 +-
sim/m32c/opc2c.c | 2 +-
sim/m32c/r8c.opc | 2 +-
sim/m32c/reg.c | 2 +-
sim/m32c/safe-fgets.c | 2 +-
sim/m32c/safe-fgets.h | 2 +-
sim/m32c/srcdest.c | 2 +-
sim/m32c/syscalls.c | 2 +-
sim/m32c/syscalls.h | 2 +-
sim/m32c/trace.c | 2 +-
sim/m32c/trace.h | 2 +-
sim/m32r/ChangeLog | 4 +
sim/m32r/Makefile.in | 2 +-
sim/m32r/aclocal.m4 | 50 +-
sim/m32r/arch.c | 2 +-
sim/m32r/arch.h | 2 +-
sim/m32r/config.in | 26 +-
sim/m32r/configure | 1106 +-
sim/m32r/configure.ac | 1 -
sim/m32r/cpu.c | 2 +-
sim/m32r/cpu.h | 2 +-
sim/m32r/cpu2.c | 2 +-
sim/m32r/cpu2.h | 2 +-
sim/m32r/cpuall.h | 2 +-
sim/m32r/cpux.c | 2 +-
sim/m32r/cpux.h | 2 +-
sim/m32r/decode.c | 2 +-
sim/m32r/decode.h | 2 +-
sim/m32r/decode2.c | 2 +-
sim/m32r/decode2.h | 2 +-
sim/m32r/decodex.c | 2 +-
sim/m32r/decodex.h | 2 +-
sim/m32r/dv-m32r_cache.c | 2 +-
sim/m32r/dv-m32r_cache.h | 2 +-
sim/m32r/dv-m32r_uart.c | 2 +-
sim/m32r/dv-m32r_uart.h | 2 +-
sim/m32r/m32r-sim.h | 2 +-
sim/m32r/m32r.c | 2 +-
sim/m32r/m32r2.c | 2 +-
sim/m32r/m32rx.c | 2 +-
sim/m32r/mloop.in | 2 +-
sim/m32r/mloop2.in | 2 +-
sim/m32r/mloopx.in | 2 +-
sim/m32r/model.c | 2 +-
sim/m32r/model2.c | 2 +-
sim/m32r/modelx.c | 2 +-
sim/m32r/sem-switch.c | 2 +-
sim/m32r/sem.c | 2 +-
sim/m32r/sem2-switch.c | 2 +-
sim/m32r/semx-switch.c | 2 +-
sim/m32r/sim-if.c | 2 +-
sim/m32r/traps-linux.c | 2 +-
sim/m32r/traps.c | 2 +-
sim/m68hc11/ChangeLog | 4 +
sim/m68hc11/Makefile.in | 2 +-
sim/m68hc11/aclocal.m4 | 50 +-
sim/m68hc11/config.in | 26 +-
sim/m68hc11/configure | 1104 +-
sim/m68hc11/configure.ac | 1 -
sim/m68hc11/dv-m68hc11.c | 2 +-
sim/m68hc11/dv-m68hc11eepr.c | 2 +-
sim/m68hc11/dv-m68hc11sio.c | 2 +-
sim/m68hc11/dv-m68hc11spi.c | 2 +-
sim/m68hc11/dv-m68hc11tim.c | 2 +-
sim/m68hc11/dv-nvram.c | 2 +-
sim/m68hc11/emulos.c | 2 +-
sim/m68hc11/gencode.c | 2 +-
sim/m68hc11/interp.c | 2 +-
sim/m68hc11/interrupts.c | 2 +-
sim/m68hc11/interrupts.h | 2 +-
sim/m68hc11/m68hc11_sim.c | 2 +-
sim/m68hc11/sim-main.h | 2 +-
sim/mcore/ChangeLog | 4 +
sim/mcore/Makefile.in | 2 +-
sim/mcore/aclocal.m4 | 50 +-
sim/mcore/config.in | 26 +-
sim/mcore/configure | 1100 +-
sim/mcore/configure.ac | 1 -
sim/mcore/interp.c | 2 +-
sim/mcore/sim-main.h | 2 +-
sim/microblaze/ChangeLog | 8 +
sim/microblaze/Makefile.in | 2 +-
sim/microblaze/aclocal.m4 | 50 +-
sim/microblaze/config.in | 26 +-
sim/microblaze/configure | 1100 +-
sim/microblaze/configure.ac | 1 -
sim/microblaze/interp.c | 4 +-
sim/microblaze/microblaze.h | 2 +-
sim/microblaze/microblaze.isa | 2 +-
sim/microblaze/sim-main.h | 2 +-
sim/mips/ChangeLog | 4 +
sim/mips/aclocal.m4 | 50 +-
sim/mips/config.in | 26 +-
sim/mips/configure | 1137 +-
sim/mips/configure.ac | 3 +-
sim/mips/cp1.c | 2 +-
sim/mips/cp1.h | 2 +-
sim/mips/dsp.c | 2 +-
sim/mips/dsp.igen | 2 +-
sim/mips/dsp2.igen | 2 +-
sim/mips/dv-tx3904cpu.c | 2 +-
sim/mips/dv-tx3904irc.c | 2 +-
sim/mips/dv-tx3904sio.c | 2 +-
sim/mips/dv-tx3904tmr.c | 2 +-
sim/mips/m16e.igen | 2 +-
sim/mips/mdmx.c | 2 +-
sim/mips/mdmx.igen | 2 +-
sim/mips/micromips.igen | 2 +-
sim/mips/micromipsdsp.igen | 2 +-
sim/mips/micromipsrun.c | 2 +-
sim/mips/mips3264r2.igen | 2 +-
sim/mips/mips3d.igen | 2 +-
sim/mips/sb1.igen | 2 +-
sim/mips/sim-main.h | 2 +-
sim/mips/smartmips.igen | 2 +-
sim/mn10300/ChangeLog | 4 +
sim/mn10300/Makefile.in | 2 +-
sim/mn10300/aclocal.m4 | 50 +-
sim/mn10300/config.in | 26 +-
sim/mn10300/configure | 1117 +-
sim/mn10300/configure.ac | 1 -
sim/mn10300/dv-mn103cpu.c | 2 +-
sim/mn10300/dv-mn103int.c | 2 +-
sim/mn10300/dv-mn103iop.c | 2 +-
sim/mn10300/dv-mn103ser.c | 2 +-
sim/mn10300/dv-mn103tim.c | 2 +-
sim/mn10300/sim-main.h | 2 +-
sim/moxie/ChangeLog | 9 +
sim/moxie/Makefile.in | 2 +-
sim/moxie/aclocal.m4 | 50 +-
sim/moxie/config.in | 26 +-
sim/moxie/configure | 1108 +-
sim/moxie/configure.ac | 1 -
sim/moxie/interp.c | 20 +-
sim/moxie/sim-main.h | 2 +-
sim/msp430/ChangeLog | 9 +
sim/msp430/Makefile.in | 2 +-
sim/msp430/aclocal.m4 | 50 +-
sim/msp430/config.in | 26 +-
sim/msp430/configure | 1102 +-
sim/msp430/configure.ac | 3 +-
sim/msp430/msp430-sim.c | 37 +-
sim/msp430/msp430-sim.h | 2 +-
sim/msp430/sim-main.h | 2 +-
sim/or1k/Makefile.in | 147 +
sim/or1k/README | 107 +
sim/or1k/aclocal.m4 | 119 +
sim/or1k/arch.c | 38 +
sim/or1k/arch.h | 50 +
sim/or1k/config.in | 248 +
sim/or1k/configure |16049 +++
sim/or1k/configure.ac | 16 +
sim/or1k/cpu.c |10181 ++
sim/or1k/cpu.h | 5056 +
sim/or1k/cpuall.h | 66 +
sim/or1k/decode.c | 2772 +
sim/or1k/decode.h | 96 +
sim/or1k/mloop.in | 241 +
sim/or1k/model.c | 3979 +
sim/or1k/or1k-sim.h | 93 +
sim/or1k/or1k.c | 356 +
sim/or1k/sem-switch.c | 2923 +
sim/or1k/sem.c | 3138 +
sim/or1k/sim-if.c | 279 +
sim/or1k/sim-main.h | 81 +
sim/or1k/traps.c | 299 +
sim/ppc/ChangeLog | 10 +
sim/ppc/altivec.igen | 2 +-
sim/ppc/altivec_expression.h | 2 +-
sim/ppc/altivec_registers.h | 2 +-
sim/ppc/config.in | 8 +-
sim/ppc/configure | 961 +-
sim/ppc/configure.ac | 1 -
sim/ppc/dp-bit.c | 2 +-
sim/ppc/e500.igen | 2 +-
sim/ppc/e500_expression.h | 2 +-
sim/ppc/e500_registers.h | 4 +-
sim/ppc/gdb-sim.c | 2 +-
sim/ppc/ppc-instructions | 2 +-
sim/ppc/psim.texinfo | 2 +-
sim/ppc/sim_calls.c | 10 +
sim/rl78/ChangeLog | 4 +
sim/rl78/Makefile.in | 2 +-
sim/rl78/aclocal.m4 | 50 +-
sim/rl78/config.in | 26 +-
sim/rl78/configure | 1096 +-
sim/rl78/configure.ac | 3 +-
sim/rl78/cpu.c | 2 +-
sim/rl78/cpu.h | 2 +-
sim/rl78/gdb-if.c | 2 +-
sim/rl78/load.c | 2 +-
sim/rl78/load.h | 2 +-
sim/rl78/main.c | 2 +-
sim/rl78/mem.c | 2 +-
sim/rl78/mem.h | 2 +-
sim/rl78/rl78.c | 2 +-
sim/rl78/trace.c | 2 +-
sim/rl78/trace.h | 2 +-
sim/rx/ChangeLog | 4 +
sim/rx/Makefile.in | 2 +-
sim/rx/aclocal.m4 | 50 +-
sim/rx/config.in | 26 +-
sim/rx/configure | 1102 +-
sim/rx/configure.ac | 3 +-
sim/rx/cpu.h | 2 +-
sim/rx/err.c | 2 +-
sim/rx/err.h | 2 +-
sim/rx/fpu.c | 2 +-
sim/rx/fpu.h | 2 +-
sim/rx/gdb-if.c | 2 +-
sim/rx/load.c | 2 +-
sim/rx/load.h | 2 +-
sim/rx/main.c | 2 +-
sim/rx/mem.c | 2 +-
sim/rx/mem.h | 2 +-
sim/rx/misc.c | 2 +-
sim/rx/misc.h | 2 +-
sim/rx/reg.c | 2 +-
sim/rx/rx.c | 2 +-
sim/rx/syscalls.c | 2 +-
sim/rx/syscalls.h | 2 +-
sim/rx/trace.c | 2 +-
sim/rx/trace.h | 2 +-
sim/sh/ChangeLog | 4 +
sim/sh/Makefile.in | 2 +-
sim/sh/aclocal.m4 | 50 +-
sim/sh/config.in | 26 +-
sim/sh/configure | 1100 +-
sim/sh/configure.ac | 1 -
sim/sh/sim-main.h | 2 +-
sim/sh64/ChangeLog | 4 +
sim/sh64/Makefile.in | 2 +-
sim/sh64/aclocal.m4 | 50 +-
sim/sh64/arch.c | 2 +-
sim/sh64/arch.h | 2 +-
sim/sh64/config.in | 26 +-
sim/sh64/configure | 1106 +-
sim/sh64/configure.ac | 1 -
sim/sh64/cpu.c | 2 +-
sim/sh64/cpu.h | 2 +-
sim/sh64/cpuall.h | 2 +-
sim/sh64/decode-compact.c | 2 +-
sim/sh64/decode-compact.h | 2 +-
sim/sh64/decode-media.c | 2 +-
sim/sh64/decode-media.h | 2 +-
sim/sh64/defs-compact.h | 2 +-
sim/sh64/defs-media.h | 2 +-
sim/sh64/eng.h | 2 +-
sim/sh64/sem-compact-switch.c | 2 +-
sim/sh64/sem-compact.c | 2 +-
sim/sh64/sem-media-switch.c | 2 +-
sim/sh64/sem-media.c | 2 +-
sim/sh64/sh-desc.c | 2 +-
sim/sh64/sh-desc.h | 2 +-
sim/sh64/sh-opc.h | 2 +-
sim/sh64/sh64-sim.h | 2 +-
sim/sh64/sh64.c | 2 +-
sim/sh64/sim-if.c | 2 +-
sim/testsuite/ChangeLog | 5 +
sim/testsuite/Makefile.in | 2 +-
sim/testsuite/common/bits-gen.c | 2 +-
sim/testsuite/configure | 466 +-
sim/testsuite/configure.ac | 1 -
sim/testsuite/d10v-elf/Makefile.in | 2 +-
sim/testsuite/d10v-elf/configure | 461 +-
sim/testsuite/d10v-elf/configure.ac | 1 -
sim/testsuite/frv-elf/Makefile.in | 2 +-
sim/testsuite/frv-elf/configure | 461 +-
sim/testsuite/frv-elf/configure.ac | 1 -
sim/testsuite/m32r-elf/Makefile.in | 2 +-
sim/testsuite/m32r-elf/configure | 461 +-
sim/testsuite/m32r-elf/configure.ac | 1 -
sim/testsuite/mips64el-elf/Makefile.in | 2 +-
sim/testsuite/mips64el-elf/configure | 461 +-
sim/testsuite/mips64el-elf/configure.ac | 1 -
sim/testsuite/sim/aarch64/ChangeLog | 15 +
sim/testsuite/sim/aarch64/fcmXX.s | 77 +
sim/testsuite/sim/aarch64/fcvtl.s | 59 +
sim/testsuite/sim/aarch64/fcvtz.s | 1 +
sim/testsuite/sim/aarch64/fstur.s | 1 +
sim/testsuite/sim/aarch64/ldn_multiple.s | 136 +
sim/testsuite/sim/aarch64/ldn_single.s | 2 +
sim/testsuite/sim/aarch64/ldnr.s | 2 +
sim/testsuite/sim/aarch64/mla.s | 2 +
sim/testsuite/sim/aarch64/mls.s | 2 +
sim/testsuite/sim/aarch64/stn_multiple.s | 171 +
sim/testsuite/sim/aarch64/stn_single.s | 24 +-
sim/testsuite/sim/aarch64/sumulh.s | 3 -
sim/testsuite/sim/aarch64/uzp.s | 2 +
sim/testsuite/sim/cris/asm/asm.exp | 2 +-
sim/testsuite/sim/cris/c/c.exp | 2 +-
sim/testsuite/sim/cris/hw/rv-n-cris/rvc.exp | 2 +-
sim/testsuite/sim/m32c/blinky.s | 2 +-
sim/testsuite/sim/m32c/gloss.s | 2 +-
sim/testsuite/sim/m32c/sample.ld | 2 +-
sim/testsuite/sim/m32c/sample.s | 2 +-
sim/testsuite/sim/m32c/sample2.c | 2 +-
sim/testsuite/sim/mips/hilo-hazard-4.s | 2 +-
sim/testsuite/sim/mips/mips32-dsp.s | 2 +-
sim/testsuite/sim/mips/testutils.inc | 2 +-
sim/testsuite/sim/mips/utils-dsp.inc | 2 +-
sim/testsuite/sim/mips/utils-fpu.inc | 2 +-
sim/testsuite/sim/mips/utils-mdmx.inc | 2 +-
sim/testsuite/sim/or1k/ChangeLog | 33 +
sim/testsuite/sim/or1k/add.S | 639 +
sim/testsuite/sim/or1k/alltests.exp | 34 +
sim/testsuite/sim/or1k/and.S | 198 +
sim/testsuite/sim/or1k/basic.S | 522 +
sim/testsuite/sim/or1k/div.S | 291 +
sim/testsuite/sim/or1k/ext.S | 236 +
sim/testsuite/sim/or1k/find.S | 100 +
sim/testsuite/sim/or1k/flag.S | 386 +
sim/testsuite/sim/or1k/fpu.S | 129 +
sim/testsuite/sim/or1k/jump.S | 105 +
sim/testsuite/sim/or1k/load.S | 358 +
sim/testsuite/sim/or1k/mac.S | 778 +
sim/testsuite/sim/or1k/mfspr.S | 171 +
sim/testsuite/sim/or1k/mul.S | 565 +
sim/testsuite/sim/or1k/or.S | 199 +
sim/testsuite/sim/or1k/or1k-asm-test-env.h | 59 +
sim/testsuite/sim/or1k/or1k-asm-test-helpers.h | 121 +
sim/testsuite/sim/or1k/or1k-asm-test.h | 226 +
sim/testsuite/sim/or1k/or1k-asm.h | 37 +
sim/testsuite/sim/or1k/or1k-test.ld | 75 +
sim/testsuite/sim/or1k/ror.S | 159 +
sim/testsuite/sim/or1k/shift.S | 541 +
sim/testsuite/sim/or1k/spr-defs.h | 120 +
sim/testsuite/sim/or1k/sub.S | 215 +
sim/testsuite/sim/or1k/xor.S | 200 +
sim/v850/ChangeLog | 4 +
sim/v850/Makefile.in | 2 +-
sim/v850/aclocal.m4 | 50 +-
sim/v850/config.in | 26 +-
sim/v850/configure | 1113 +-
sim/v850/configure.ac | 1 -
src-release.sh | 44 +-
test-driver | 148 +
zlib/ChangeLog.bin-gdb | 17 +
zlib/ChangeLog.gcj | 7 +
zlib/Makefile.am | 4 +-
zlib/Makefile.in | 785 +-
zlib/aclocal.m4 | 717 +-
zlib/configure | 1398 +-
zlib/configure.ac | 5 +-
zlib/gzguts.h | 2 +-
zlib/win32/zlib.def | 1 -
zlib/zlib.h | 2 +-
14856 files changed, 1078248 insertions(+), 626854 deletions(-)
create mode 100755 ar-lib
create mode 100644 bfd/ChangeLog-2017
delete mode 100644 bfd/aout-adobe.c
delete mode 100644 bfd/aout-arm.c
delete mode 100644 bfd/aout-sparcle.c
delete mode 100644 bfd/aout0.c
delete mode 100644 bfd/aoutf1.h
delete mode 100644 bfd/armnetbsd.c
delete mode 100644 bfd/bout.c
delete mode 100644 bfd/cf-sparclynx.c
delete mode 100644 bfd/coff-apollo.c
delete mode 100644 bfd/coff-aux.c
delete mode 100644 bfd/coff-h8300.c
delete mode 100644 bfd/coff-h8500.c
delete mode 100644 bfd/coff-i860.c
delete mode 100644 bfd/coff-i960.c
delete mode 100644 bfd/coff-m68k.c
delete mode 100644 bfd/coff-m88k.c
delete mode 100644 bfd/coff-sparc.c
delete mode 100644 bfd/coff-svm68k.c
delete mode 100644 bfd/coff-u68k.c
delete mode 100644 bfd/coff-w65.c
delete mode 100644 bfd/coff-we32k.c
create mode 100644 bfd/cpu-csky.c
delete mode 100644 bfd/cpu-h8500.c
delete mode 100644 bfd/cpu-i370.c
delete mode 100644 bfd/cpu-i860.c
delete mode 100644 bfd/cpu-i960.c
delete mode 100644 bfd/cpu-m88k.c
create mode 100644 bfd/cpu-nfp.c
create mode 100644 bfd/cpu-s12z.c
delete mode 100644 bfd/cpu-w65.c
delete mode 100644 bfd/cpu-we32k.c
delete mode 100644 bfd/demo64.c
create mode 100644 bfd/doc/bfd.texi
delete mode 100644 bfd/doc/bfd.texinfo
create mode 100644 bfd/elf-s390.h
create mode 100644 bfd/elf32-csky.c
delete mode 100644 bfd/elf32-i370.c
delete mode 100644 bfd/elf32-i860.c
delete mode 100644 bfd/elf32-i960.c
delete mode 100644 bfd/elf32-m88k.c
create mode 100644 bfd/elf32-s12z.c
delete mode 100644 bfd/elf32-sh-symbian.c
delete mode 100644 bfd/elf32-sh64-com.c
delete mode 100644 bfd/elf32-sh64.c
delete mode 100644 bfd/elf32-sh64.h
delete mode 100644 bfd/elf32-xgate.h
create mode 100755 bfd/elf64-nfp.c
delete mode 100644 bfd/elf64-sh64.c
create mode 100644 bfd/elfxx-x86.c
create mode 100644 bfd/elfxx-x86.h
delete mode 100644 bfd/epoc-pe-arm.c
delete mode 100644 bfd/epoc-pei-arm.c
delete mode 100644 bfd/freebsd.h
delete mode 100644 bfd/hosts/delta68.h
delete mode 100644 bfd/hosts/hp300bsd.h
delete mode 100644 bfd/hosts/i860mach3.h
delete mode 100644 bfd/hosts/m68kaux.h
delete mode 100644 bfd/hosts/m88kmach3.h
delete mode 100644 bfd/hosts/news.h
delete mode 100644 bfd/hosts/tahoe.h
delete mode 100644 bfd/hp300bsd.c
delete mode 100644 bfd/hp300hpux.c
delete mode 100644 bfd/i386dynix.c
delete mode 100644 bfd/i386freebsd.c
delete mode 100644 bfd/i386linux.c
delete mode 100644 bfd/i386mach3.c
delete mode 100644 bfd/i386netbsd.c
delete mode 100644 bfd/i386os9k.c
delete mode 100644 bfd/ieee.c
delete mode 100644 bfd/libieee.h
delete mode 100644 bfd/libnlm.h
delete mode 100644 bfd/liboasys.h
delete mode 100644 bfd/m68k4knetbsd.c
delete mode 100644 bfd/m68klinux.c
delete mode 100644 bfd/m68knetbsd.c
delete mode 100644 bfd/m88kmach3.c
delete mode 100644 bfd/m88kopenbsd.c
delete mode 100644 bfd/mipsbsd.c
delete mode 100644 bfd/newsos3.c
delete mode 100644 bfd/nlm-target.h
delete mode 100644 bfd/nlm.c
delete mode 100644 bfd/nlm32-alpha.c
delete mode 100644 bfd/nlm32-i386.c
delete mode 100644 bfd/nlm32-ppc.c
delete mode 100644 bfd/nlm32-sparc.c
delete mode 100644 bfd/nlm32.c
delete mode 100644 bfd/nlm64.c
delete mode 100644 bfd/nlmcode.h
delete mode 100644 bfd/nlmswap.h
delete mode 100644 bfd/oasys.c
delete mode 100644 bfd/pe-mips.c
delete mode 100644 bfd/pei-mips.c
create mode 100644 bfd/po/hr.po
create mode 100644 bfd/po/pt.po
delete mode 100644 bfd/riscix.c
delete mode 100644 bfd/sparclinux.c
delete mode 100644 bfd/sparclynx.c
delete mode 100644 bfd/sparcnetbsd.c
delete mode 100644 bfd/sunos.c
delete mode 100644 bfd/vaxbsd.c
delete mode 100644 bfd/versados.c
create mode 100644 binutils/ChangeLog-2017
create mode 100644 binutils/README-how-to-make-a-release
create mode 100644 binutils/doc/debug.options.texi
delete mode 100644 binutils/ieee.c
delete mode 100644 binutils/nlmconv.c
delete mode 100644 binutils/nlmconv.h
delete mode 100644 binutils/nlmheader.y
create mode 100644 binutils/po/pt.po
create mode 100644 binutils/testsuite/binutils-all/aarch64/objdump.d
create mode 100644 binutils/testsuite/binutils-all/aarch64/objdump.s
create mode 100644 binutils/testsuite/binutils-all/arc/double_store.s
create mode 100644 binutils/testsuite/binutils-all/arc/hexprint.s
create mode 100644 binutils/testsuite/binutils-all/copy-5.d
create mode 100644 binutils/testsuite/binutils-all/debuglink.s
create mode 100644 binutils/testsuite/binutils-all/dwarf-attributes.S
create mode 100644 binutils/testsuite/binutils-all/dwarf-attributes.W
create mode 100644 binutils/testsuite/binutils-all/dwo.s
create mode 100644 binutils/testsuite/binutils-all/group-7.s
create mode 100644 binutils/testsuite/binutils-all/group-7a.d
create mode 100644 binutils/testsuite/binutils-all/group-7b.d
create mode 100644 binutils/testsuite/binutils-all/group-7c.d
create mode 100644 binutils/testsuite/binutils-all/i386/empty.d
create mode 100644 binutils/testsuite/binutils-all/i386/empty.s
create mode 100644 binutils/testsuite/binutils-all/i386/ibt.d
create mode 100644 binutils/testsuite/binutils-all/i386/ibt.s
create mode 100644 binutils/testsuite/binutils-all/i386/shstk.d
create mode 100644 binutils/testsuite/binutils-all/i386/shstk.s
create mode 100644 binutils/testsuite/binutils-all/linkdebug.s
create mode 100644 binutils/testsuite/binutils-all/locview-1.s
create mode 100644 binutils/testsuite/binutils-all/locview-2.s
create mode 100644 binutils/testsuite/binutils-all/mips/mips-note-2-n32.d
create mode 100644 binutils/testsuite/binutils-all/mips/mips-note-2-n64.d
create mode 100644 binutils/testsuite/binutils-all/mips/mips-note-2.d
create mode 100644 binutils/testsuite/binutils-all/mips/mips-note-2r-n32.d
create mode 100644 binutils/testsuite/binutils-all/mips/mips-note-2r-n64.d
create mode 100644 binutils/testsuite/binutils-all/mips/mips-note-2r.d
create mode 100644 binutils/testsuite/binutils-all/mips/mips-reginfo-n32.d
create mode 100644 binutils/testsuite/binutils-all/mips/mips-reginfo.d
create mode 100644 binutils/testsuite/binutils-all/mips/mips-reginfo.s
create mode 100644 binutils/testsuite/binutils-all/mips/mips-xpa-virt-1.d
create mode 100644 binutils/testsuite/binutils-all/mips/mips-xpa-virt-2.d
create mode 100644 binutils/testsuite/binutils-all/mips/mips-xpa-virt-3.d
create mode 100644 binutils/testsuite/binutils-all/mips/mips-xpa-virt-4.d
create mode 100644 binutils/testsuite/binutils-all/mips/mips-xpa-virt.s
create mode 100644 binutils/testsuite/binutils-all/mips/mips16-alias.d
create mode 100644 binutils/testsuite/binutils-all/mips/mips16-alias.s
create mode 100644 binutils/testsuite/binutils-all/mips/mips16-noalias.d
create mode 100644 binutils/testsuite/binutils-all/mips/mips16e2-extend-insn.d
create mode 100644 binutils/testsuite/binutils-all/mips/mips16e2-undecoded.d
create mode 100644 binutils/testsuite/binutils-all/nfp/objdump.exp
create mode 100644 binutils/testsuite/binutils-all/nfp/test1.d
create mode 100644 binutils/testsuite/binutils-all/nfp/test1_nfp6000.nffw
create mode 100644 binutils/testsuite/binutils-all/nfp/test2_ctx8.d
create mode 100644 binutils/testsuite/binutils-all/nfp/test2_nfp6000.nffw
create mode 100644 binutils/testsuite/binutils-all/nfp/test2_no-pc_ctx4.d
create mode 100644 binutils/testsuite/binutils-all/note-3-32.d
create mode 100644 binutils/testsuite/binutils-all/note-3-32.s
create mode 100644 binutils/testsuite/binutils-all/note-3-64.d
create mode 100644 binutils/testsuite/binutils-all/note-3-64.s
create mode 100644 binutils/testsuite/binutils-all/note-3.32.s
create mode 100644 binutils/testsuite/binutils-all/note-4-32.d
create mode 100644 binutils/testsuite/binutils-all/note-4-32.s
create mode 100644 binutils/testsuite/binutils-all/note-4-64.d
create mode 100644 binutils/testsuite/binutils-all/note-4-64.s
create mode 100644 binutils/testsuite/binutils-all/note-5.d
create mode 100644 binutils/testsuite/binutils-all/note-5.s
create mode 100644 binutils/testsuite/binutils-all/objdump.WK2
create mode 100644 binutils/testsuite/binutils-all/objdump.Wk
create mode 100644 binutils/testsuite/binutils-all/pr23633.d
create mode 100644 binutils/testsuite/binutils-all/pr23633.list
create mode 100644 binutils/testsuite/binutils-all/pr23633.s
create mode 100644 binutils/testsuite/binutils-all/readelf.k
create mode 100644 binutils/testsuite/binutils-all/readelf.k2
create mode 100644 binutils/testsuite/binutils-all/readelf.locview-1
create mode 100644 binutils/testsuite/binutils-all/readelf.locview-2
create mode 100644 binutils/testsuite/binutils-all/remove-relocs-07.d
create mode 100644 binutils/testsuite/binutils-all/remove-relocs-07.s
create mode 100644 binutils/testsuite/binutils-all/remove-relocs-08.d
create mode 100644 binutils/testsuite/binutils-all/strip-13.d
create mode 100644 binutils/testsuite/binutils-all/strip-13mips64.s
create mode 100644 binutils/testsuite/binutils-all/strip-13rel.s
create mode 100644 binutils/testsuite/binutils-all/strip-13rela.s
create mode 100644 binutils/testsuite/binutils-all/strip-14.d
create mode 100644 binutils/testsuite/binutils-all/strip-14mips64.s
create mode 100644 binutils/testsuite/binutils-all/strip-14rel.s
create mode 100644 binutils/testsuite/binutils-all/strip-14rela.s
create mode 100644 binutils/testsuite/binutils-all/strip-15.d
create mode 100644 binutils/testsuite/binutils-all/strip-15mips64.s
create mode 100644 binutils/testsuite/binutils-all/strip-15rel.s
create mode 100644 binutils/testsuite/binutils-all/strip-15rela.s
create mode 100644 binutils/testsuite/binutils-all/x86-64/empty-x32.d
create mode 100644 binutils/testsuite/binutils-all/x86-64/empty.d
create mode 100644 binutils/testsuite/binutils-all/x86-64/empty.s
create mode 100644 binutils/testsuite/binutils-all/x86-64/ibt-x32.d
create mode 100644 binutils/testsuite/binutils-all/x86-64/ibt.d
create mode 100644 binutils/testsuite/binutils-all/x86-64/ibt.s
create mode 100644 binutils/testsuite/binutils-all/x86-64/objects.exp
create mode 100644 binutils/testsuite/binutils-all/x86-64/pr22451.o.bz2
create mode 100644 binutils/testsuite/binutils-all/x86-64/pr23494a-x32.d
create mode 100644 binutils/testsuite/binutils-all/x86-64/pr23494a.d
create mode 100644 binutils/testsuite/binutils-all/x86-64/pr23494a.s
create mode 100644 binutils/testsuite/binutils-all/x86-64/pr23494b-x32.d
create mode 100644 binutils/testsuite/binutils-all/x86-64/pr23494b.d
create mode 100644 binutils/testsuite/binutils-all/x86-64/pr23494b.s
create mode 100644 binutils/testsuite/binutils-all/x86-64/pr23494c-x32.d
create mode 100644 binutils/testsuite/binutils-all/x86-64/pr23494c.d
create mode 100644 binutils/testsuite/binutils-all/x86-64/pr23494c.s
create mode 100644 binutils/testsuite/binutils-all/x86-64/pr23494d-x32.d
create mode 100644 binutils/testsuite/binutils-all/x86-64/pr23494d.d
create mode 100644 binutils/testsuite/binutils-all/x86-64/pr23494e-x32.d
create mode 100644 binutils/testsuite/binutils-all/x86-64/pr23494e.d
create mode 100644 binutils/testsuite/binutils-all/x86-64/shstk-x32.d
create mode 100644 binutils/testsuite/binutils-all/x86-64/shstk.d
create mode 100644 binutils/testsuite/binutils-all/x86-64/shstk.s
create mode 100644 config/ax_check_define.m4
create mode 100644 config/ax_pthread.m4
create mode 100644 config/bootstrap-cet.mk
delete mode 100644 config/bootstrap-mpx.mk
create mode 100644 config/cet.m4
create mode 100644 config/hwcaps.m4
create mode 100644 config/mt-android
create mode 100644 contrib/ChangeLog
create mode 100644 contrib/dg-extract-results.py
create mode 100755 contrib/dg-extract-results.sh
create mode 100644 elfcpp/ChangeLog-2017
create mode 100644 gas/ChangeLog-2017
delete mode 100644 gas/config/aout_gnu.h
create mode 100644 gas/config/tc-csky.c
create mode 100644 gas/config/tc-csky.h
delete mode 100644 gas/config/tc-i370.c
delete mode 100644 gas/config/tc-i370.h
delete mode 100644 gas/config/tc-i860.c
delete mode 100644 gas/config/tc-i860.h
delete mode 100644 gas/config/tc-i960.c
delete mode 100644 gas/config/tc-i960.h
create mode 100644 gas/config/tc-s12z.c
create mode 100644 gas/config/tc-s12z.h
delete mode 100644 gas/config/tc-sh64.c
delete mode 100644 gas/config/tc-sh64.h
create mode 100644 gas/config/te-csky_abiv1.h
create mode 100644 gas/config/te-csky_abiv1_linux.h
create mode 100644 gas/config/te-csky_abiv2.h
create mode 100644 gas/config/te-csky_abiv2_linux.h
delete mode 100644 gas/config/te-dynix.h
delete mode 100644 gas/config/te-epoc-pe.h
delete mode 100644 gas/config/te-i386aix.h
delete mode 100644 gas/config/te-mach.h
delete mode 100644 gas/config/te-netware.h
delete mode 100644 gas/config/te-psos.h
delete mode 100644 gas/config/te-riscix.h
delete mode 100644 gas/config/te-sparcaout.h
delete mode 100644 gas/config/te-sun3.h
create mode 100644 gas/doc/as.texi
delete mode 100644 gas/doc/as.texinfo
create mode 100644 gas/doc/c-csky.texi
delete mode 100644 gas/doc/c-i370.texi
delete mode 100644 gas/doc/c-i860.texi
delete mode 100644 gas/doc/c-i960.texi
create mode 100644 gas/doc/c-or1k.texi
create mode 100644 gas/doc/c-s12z.texi
delete mode 100644 gas/doc/c-sh64.texi
delete mode 100644 gas/struc-symbol.h
create mode 100644 gas/testsuite/gas/aarch64/armv8_2-a-crypto-fp16-illegal.d
create mode 100644 gas/testsuite/gas/aarch64/armv8_2-a-crypto-fp16-illegal.l
create mode 100644 gas/testsuite/gas/aarch64/armv8_2-a-crypto-fp16-illegal.s
create mode 100644 gas/testsuite/gas/aarch64/armv8_2-a-crypto-fp16.d
create mode 100644 gas/testsuite/gas/aarch64/armv8_2-a-crypto-fp16.s
create mode 100644 gas/testsuite/gas/aarch64/armv8_3-a-crypto-fp16.d
create mode 100644 gas/testsuite/gas/aarch64/armv8_4-a-crypto-fp16.d
create mode 100644 gas/testsuite/gas/aarch64/armv8_4-a-illegal.d
create mode 100644 gas/testsuite/gas/aarch64/armv8_4-a-illegal.l
create mode 100644 gas/testsuite/gas/aarch64/armv8_4-a-illegal.s
create mode 100644 gas/testsuite/gas/aarch64/armv8_4-a-registers-illegal.d
create mode 100644 gas/testsuite/gas/aarch64/armv8_4-a-registers-illegal.l
create mode 100644 gas/testsuite/gas/aarch64/armv8_4-a-registers-illegal.s
create mode 100644 gas/testsuite/gas/aarch64/armv8_4-a-registers.d
create mode 100644 gas/testsuite/gas/aarch64/armv8_4-a-registers.s
create mode 100644 gas/testsuite/gas/aarch64/armv8_4-a.d
create mode 100644 gas/testsuite/gas/aarch64/armv8_4-a.s
create mode 100644 gas/testsuite/gas/aarch64/armv8_5-a-dp.d
create mode 100644 gas/testsuite/gas/aarch64/armv8_5-a-dp.s
create mode 100644 gas/testsuite/gas/aarch64/bti.d
create mode 100644 gas/testsuite/gas/aarch64/bti.s
create mode 100644 gas/testsuite/gas/aarch64/dotproduct.d
create mode 100644 gas/testsuite/gas/aarch64/dotproduct.s
create mode 100644 gas/testsuite/gas/aarch64/dotproduct_armv8_4.d
create mode 100644 gas/testsuite/gas/aarch64/dotproduct_armv8_4.s
create mode 100644 gas/testsuite/gas/aarch64/illegal-3.d
create mode 100644 gas/testsuite/gas/aarch64/illegal-3.s
create mode 100644 gas/testsuite/gas/aarch64/illegal-bti.d
create mode 100644 gas/testsuite/gas/aarch64/illegal-bti.l
create mode 100644 gas/testsuite/gas/aarch64/illegal-by-element.d
create mode 100644 gas/testsuite/gas/aarch64/illegal-by-element.l
create mode 100644 gas/testsuite/gas/aarch64/illegal-by-element.s
create mode 100644 gas/testsuite/gas/aarch64/illegal-dotproduct.d
create mode 100644 gas/testsuite/gas/aarch64/illegal-dotproduct.l
create mode 100644 gas/testsuite/gas/aarch64/illegal-dotproduct.s
create mode 100644 gas/testsuite/gas/aarch64/illegal-sysreg-4.d
create mode 100644 gas/testsuite/gas/aarch64/illegal-sysreg-4.l
create mode 100644 gas/testsuite/gas/aarch64/pr22529.d
create mode 100644 gas/testsuite/gas/aarch64/pr22529.l
create mode 100644 gas/testsuite/gas/aarch64/pr22529.s
create mode 100644 gas/testsuite/gas/aarch64/predres.d
create mode 100644 gas/testsuite/gas/aarch64/predres.s
create mode 100644 gas/testsuite/gas/aarch64/register_aliases.d
create mode 100644 gas/testsuite/gas/aarch64/register_aliases.s
create mode 100644 gas/testsuite/gas/aarch64/reloc-prel_g0.d
create mode 100644 gas/testsuite/gas/aarch64/reloc-prel_g0.s
create mode 100644 gas/testsuite/gas/aarch64/reloc-prel_g0_nc.d
create mode 100644 gas/testsuite/gas/aarch64/reloc-prel_g0_nc.s
create mode 100644 gas/testsuite/gas/aarch64/reloc-prel_g1.d
create mode 100644 gas/testsuite/gas/aarch64/reloc-prel_g1.s
create mode 100644 gas/testsuite/gas/aarch64/reloc-prel_g1_nc.d
create mode 100644 gas/testsuite/gas/aarch64/reloc-prel_g1_nc.s
create mode 100644 gas/testsuite/gas/aarch64/reloc-prel_g2.d
create mode 100644 gas/testsuite/gas/aarch64/reloc-prel_g2.s
create mode 100644 gas/testsuite/gas/aarch64/reloc-prel_g2_nc.d
create mode 100644 gas/testsuite/gas/aarch64/reloc-prel_g2_nc.s
create mode 100644 gas/testsuite/gas/aarch64/reloc-prel_g3.d
create mode 100644 gas/testsuite/gas/aarch64/reloc-prel_g3.s
create mode 100644 gas/testsuite/gas/aarch64/reloc-tprel_lo12-ldst16-ilp32.d
create mode 100644 gas/testsuite/gas/aarch64/reloc-tprel_lo12-ldst16.d
create mode 100644 gas/testsuite/gas/aarch64/reloc-tprel_lo12-ldst16.s
create mode 100644 gas/testsuite/gas/aarch64/reloc-tprel_lo12-ldst32-ilp32.d
create mode 100644 gas/testsuite/gas/aarch64/reloc-tprel_lo12-ldst32.d
create mode 100644 gas/testsuite/gas/aarch64/reloc-tprel_lo12-ldst32.s
create mode 100644 gas/testsuite/gas/aarch64/reloc-tprel_lo12-ldst64-ilp32.d
create mode 100644 gas/testsuite/gas/aarch64/reloc-tprel_lo12-ldst64.d
create mode 100644 gas/testsuite/gas/aarch64/reloc-tprel_lo12-ldst64.s
create mode 100644 gas/testsuite/gas/aarch64/reloc-tprel_lo12-ldst8-ilp32.d
create mode 100644 gas/testsuite/gas/aarch64/reloc-tprel_lo12-ldst8.d
create mode 100644 gas/testsuite/gas/aarch64/reloc-tprel_lo12-ldst8.s
create mode 100644 gas/testsuite/gas/aarch64/reloc-tprel_lo12_nc-ldst16-ilp32.d
create mode 100644 gas/testsuite/gas/aarch64/reloc-tprel_lo12_nc-ldst16.d
create mode 100644 gas/testsuite/gas/aarch64/reloc-tprel_lo12_nc-ldst16.s
create mode 100644 gas/testsuite/gas/aarch64/reloc-tprel_lo12_nc-ldst32-ilp32.d
create mode 100644 gas/testsuite/gas/aarch64/reloc-tprel_lo12_nc-ldst32.d
create mode 100644 gas/testsuite/gas/aarch64/reloc-tprel_lo12_nc-ldst32.s
create mode 100644 gas/testsuite/gas/aarch64/reloc-tprel_lo12_nc-ldst64-ilp32.d
create mode 100644 gas/testsuite/gas/aarch64/reloc-tprel_lo12_nc-ldst64.d
create mode 100644 gas/testsuite/gas/aarch64/reloc-tprel_lo12_nc-ldst64.s
create mode 100644 gas/testsuite/gas/aarch64/reloc-tprel_lo12_nc-ldst8-ilp32.d
create mode 100644 gas/testsuite/gas/aarch64/reloc-tprel_lo12_nc-ldst8.d
create mode 100644 gas/testsuite/gas/aarch64/reloc-tprel_lo12_nc-ldst8.s
create mode 100644 gas/testsuite/gas/aarch64/sb.s
create mode 100644 gas/testsuite/gas/aarch64/sb1.d
create mode 100644 gas/testsuite/gas/aarch64/sb2.d
create mode 100644 gas/testsuite/gas/aarch64/ssbs-illegal1.d
create mode 100644 gas/testsuite/gas/aarch64/ssbs-illegal1.l
create mode 100644 gas/testsuite/gas/aarch64/ssbs-illegal2.d
create mode 100644 gas/testsuite/gas/aarch64/ssbs-illegal2.l
create mode 100644 gas/testsuite/gas/aarch64/ssbs.s
create mode 100644 gas/testsuite/gas/aarch64/ssbs1.d
create mode 100644 gas/testsuite/gas/aarch64/ssbs2.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_1.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_1.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_10.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_10.l
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_10.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_11.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_11.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_12.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_12.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_13.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_13.l
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_13.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_14.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_14.l
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_14.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_15.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_15.l
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_15.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_16.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_16.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_17.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_17.l
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_17.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_18.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_18.l
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_18.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_19.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_19.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_2.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_2.l
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_2.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_20.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_20.l
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_20.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_21.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_21.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_22.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_22.l
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_22.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_23.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_23.l
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_23.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_24.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_24.l
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_24.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_25.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_25.l
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_25.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_26.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_26.l
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_26.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_3.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_3.l
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_3.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_4.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_4.l
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_4.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_5.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_5.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_6.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_6.l
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_6.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_7.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_7.l
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_7.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_8.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_8.l
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_8.s
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_9.d
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_9.l
create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_9.s
create mode 100644 gas/testsuite/gas/aarch64/sysreg-4.d
create mode 100644 gas/testsuite/gas/aarch64/sysreg-4.s
create mode 100644 gas/testsuite/gas/aarch64/sysreg-diagnostic.d
create mode 100644 gas/testsuite/gas/aarch64/sysreg-diagnostic.l
create mode 100644 gas/testsuite/gas/aarch64/sysreg-diagnostic.s
create mode 100644 gas/testsuite/gas/all/eqv-dot.d
create mode 100644 gas/testsuite/gas/all/eqv-dot.s
create mode 100644 gas/testsuite/gas/all/err-fakelabel.s
create mode 100644 gas/testsuite/gas/all/fill-1.d
create mode 100644 gas/testsuite/gas/all/fill-1.s
create mode 100644 gas/testsuite/gas/all/simple-forward.d
create mode 100644 gas/testsuite/gas/all/simple-forward.s
create mode 100644 gas/testsuite/gas/all/sleb128-9.d
create mode 100644 gas/testsuite/gas/all/sleb128-9.l
create mode 100644 gas/testsuite/gas/all/sleb128-9.s
create mode 100644 gas/testsuite/gas/arc/asm-errors-3.d
create mode 100644 gas/testsuite/gas/arc/asm-errors-3.err
create mode 100644 gas/testsuite/gas/arc/asm-errors-3.s
create mode 100644 gas/testsuite/gas/arc/attr-arc600.d
create mode 100644 gas/testsuite/gas/arc/attr-arc600_mul32x16.d
create mode 100644 gas/testsuite/gas/arc/attr-arc600_norm.d
create mode 100644 gas/testsuite/gas/arc/attr-arc601.d
create mode 100644 gas/testsuite/gas/arc/attr-arc601_mul32x16.d
create mode 100644 gas/testsuite/gas/arc/attr-arc601_mul64.d
create mode 100644 gas/testsuite/gas/arc/attr-arc601_norm.d
create mode 100644 gas/testsuite/gas/arc/attr-arc700.d
create mode 100644 gas/testsuite/gas/arc/attr-arcem.d
create mode 100644 gas/testsuite/gas/arc/attr-archs.d
create mode 100644 gas/testsuite/gas/arc/attr-autodetect-1.d
create mode 100644 gas/testsuite/gas/arc/attr-autodetect-1.s
create mode 100644 gas/testsuite/gas/arc/attr-cpu-a601.d
create mode 100644 gas/testsuite/gas/arc/attr-cpu-a601.s
create mode 100644 gas/testsuite/gas/arc/attr-cpu-a700.d
create mode 100644 gas/testsuite/gas/arc/attr-cpu-a700.s
create mode 100644 gas/testsuite/gas/arc/attr-cpu-em.d
create mode 100644 gas/testsuite/gas/arc/attr-cpu-em.s
create mode 100644 gas/testsuite/gas/arc/attr-cpu-hs.d
create mode 100644 gas/testsuite/gas/arc/attr-cpu-hs.s
create mode 100644 gas/testsuite/gas/arc/attr-em.d
create mode 100644 gas/testsuite/gas/arc/attr-em4.d
create mode 100644 gas/testsuite/gas/arc/attr-em4_dmips.d
create mode 100644 gas/testsuite/gas/arc/attr-em4_fpuda.d
create mode 100644 gas/testsuite/gas/arc/attr-em4_fpus.d
create mode 100644 gas/testsuite/gas/arc/attr-hs.d
create mode 100644 gas/testsuite/gas/arc/attr-hs34.d
create mode 100644 gas/testsuite/gas/arc/attr-hs38.d
create mode 100644 gas/testsuite/gas/arc/attr-hs38_linux.d
create mode 100644 gas/testsuite/gas/arc/attr-mul64.d
create mode 100644 gas/testsuite/gas/arc/attr-name.d
create mode 100644 gas/testsuite/gas/arc/attr-name.s
create mode 100644 gas/testsuite/gas/arc/attr-nps400.d
create mode 100644 gas/testsuite/gas/arc/attr-override-mcpu.d
create mode 100644 gas/testsuite/gas/arc/attr-override-mcpu.s
create mode 100644 gas/testsuite/gas/arc/attr-quarkse_em.d
create mode 100644 gas/testsuite/gas/arc/attr-rf16.d
create mode 100644 gas/testsuite/gas/arc/attr-rf16.err
create mode 100644 gas/testsuite/gas/arc/attr-rf16.s
create mode 100644 gas/testsuite/gas/arc/blank.s
create mode 100644 gas/testsuite/gas/arc/hregs-err.s
create mode 100644 gas/testsuite/gas/arc/jli-1.d
create mode 100644 gas/testsuite/gas/arc/jli-1.s
create mode 100644 gas/testsuite/gas/arc/pcl-print.d
create mode 100644 gas/testsuite/gas/arc/pcl-print.s
create mode 100644 gas/testsuite/gas/arc/textinsn_case.d
create mode 100644 gas/testsuite/gas/arc/textinsn_case.s
delete mode 100644 gas/testsuite/gas/arm/armv8-a+fp.s
delete mode 100644 gas/testsuite/gas/arm/armv8-a+simd.s
delete mode 100644 gas/testsuite/gas/arm/armv8-a-bad.l
delete mode 100644 gas/testsuite/gas/arm/armv8-a-bad.s
delete mode 100644 gas/testsuite/gas/arm/armv8-a-it-bad.l
delete mode 100644 gas/testsuite/gas/arm/armv8-a-it-bad.s
create mode 100644 gas/testsuite/gas/arm/armv8-ar+fp.s
create mode 100644 gas/testsuite/gas/arm/armv8-ar+simd.s
create mode 100644 gas/testsuite/gas/arm/armv8-ar-bad.l
create mode 100644 gas/testsuite/gas/arm/armv8-ar-bad.s
rename gas/testsuite/gas/arm/{armv8-a-barrier.s => armv8-ar-barrier.s} (100%)
create mode 100644 gas/testsuite/gas/arm/armv8-ar-it-bad.l
create mode 100644 gas/testsuite/gas/arm/armv8-ar-it-bad.s
rename gas/testsuite/gas/arm/{armv8-a.s => armv8-ar.s} (100%)
create mode 100644 gas/testsuite/gas/arm/armv8-r+fp.d
create mode 100644 gas/testsuite/gas/arm/armv8-r+simd.d
create mode 100644 gas/testsuite/gas/arm/armv8-r-bad.d
create mode 100644 gas/testsuite/gas/arm/armv8-r-barrier-arm.d
create mode 100644 gas/testsuite/gas/arm/armv8-r-barrier-thumb.d
create mode 100644 gas/testsuite/gas/arm/armv8-r-it-bad.d
create mode 100644 gas/testsuite/gas/arm/armv8-r.d
create mode 100644 gas/testsuite/gas/arm/armv8_2-a-fp16-illegal.d
create mode 100644 gas/testsuite/gas/arm/armv8_2-a-fp16-illegal.l
create mode 100644 gas/testsuite/gas/arm/armv8_2-a-fp16-illegal.s
create mode 100644 gas/testsuite/gas/arm/armv8_2-a-fp16-thumb2.d
create mode 100644 gas/testsuite/gas/arm/armv8_2-a-fp16.d
create mode 100644 gas/testsuite/gas/arm/armv8_2-a-fp16.s
create mode 100644 gas/testsuite/gas/arm/armv8_3-a-fp16.d
create mode 100644 gas/testsuite/gas/arm/armv8_4-a-fp16.d
create mode 100644 gas/testsuite/gas/arm/attr-march-armv8-r+crypto.d
create mode 100644 gas/testsuite/gas/arm/attr-march-armv8-r+fp.d
create mode 100644 gas/testsuite/gas/arm/attr-march-armv8-r+simd.d
create mode 100644 gas/testsuite/gas/arm/attr-march-armv8-r.d
create mode 100644 gas/testsuite/gas/arm/attr-march-armv8_4-a.d
create mode 100644 gas/testsuite/gas/arm/attr-march-armv8_5-a.d
create mode 100644 gas/testsuite/gas/arm/copro-arm_v2plus-arm_v1.d
create mode 100644 gas/testsuite/gas/arm/copro-arm_v2plus-arm_v2.d
create mode 100644 gas/testsuite/gas/arm/copro-arm_v2plus-thumb_v6t2plus-unavail.l
create mode 100644 gas/testsuite/gas/arm/copro-arm_v2plus-thumb_v6t2plus.s
create mode 100644 gas/testsuite/gas/arm/copro-arm_v5plus-arm_v4.d
create mode 100644 gas/testsuite/gas/arm/copro-arm_v5plus-arm_v5.d
create mode 100644 gas/testsuite/gas/arm/copro-arm_v5plus-thumb_v6t2plus-unavail.l
create mode 100644 gas/testsuite/gas/arm/copro-arm_v5plus-thumb_v6t2plus.s
create mode 100644 gas/testsuite/gas/arm/copro-arm_v5teplus-arm_v5.d
create mode 100644 gas/testsuite/gas/arm/copro-arm_v5teplus-arm_v5te.d
create mode 100644 gas/testsuite/gas/arm/copro-arm_v5teplus-thumb_v6t2plus-unavail.l
create mode 100644 gas/testsuite/gas/arm/copro-arm_v5teplus-thumb_v6t2plus.s
create mode 100644 gas/testsuite/gas/arm/copro-arm_v6plus-arm_v5te.d
create mode 100644 gas/testsuite/gas/arm/copro-arm_v6plus-arm_v6.d
create mode 100644 gas/testsuite/gas/arm/copro-arm_v6plus-thumb_v6t2plus-unavail.l
create mode 100644 gas/testsuite/gas/arm/copro-arm_v6plus-thumb_v6t2plus.s
create mode 100644 gas/testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-1.d
create mode 100644 gas/testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-2.d
create mode 100644 gas/testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-3.d
create mode 100644 gas/testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-4.d
create mode 100644 gas/testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v6t2-1.d
create mode 100644 gas/testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v6t2-2.d
create mode 100644 gas/testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v6t2-3.d
create mode 100644 gas/testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v6t2-4.d
delete mode 100644 gas/testsuite/gas/arm/copro.d
delete mode 100644 gas/testsuite/gas/arm/copro.s
create mode 100644 gas/testsuite/gas/arm/crc32-armv8-a-bad.d
create mode 100644 gas/testsuite/gas/arm/crc32-armv8-a.d
create mode 100644 gas/testsuite/gas/arm/crc32-armv8-ar-bad.s
create mode 100644 gas/testsuite/gas/arm/crc32-armv8-ar.s
create mode 100644 gas/testsuite/gas/arm/crc32-armv8-r-bad.d
create mode 100644 gas/testsuite/gas/arm/crc32-armv8-r.d
delete mode 100644 gas/testsuite/gas/arm/crc32-bad.d
delete mode 100644 gas/testsuite/gas/arm/crc32-bad.s
delete mode 100644 gas/testsuite/gas/arm/crc32.d
delete mode 100644 gas/testsuite/gas/arm/crc32.s
create mode 100644 gas/testsuite/gas/arm/csdb.d
create mode 100644 gas/testsuite/gas/arm/csdb.s
create mode 100644 gas/testsuite/gas/arm/dotprod-illegal.d
create mode 100644 gas/testsuite/gas/arm/dotprod-illegal.l
create mode 100644 gas/testsuite/gas/arm/dotprod-illegal.s
create mode 100644 gas/testsuite/gas/arm/dotprod-legacy-arch.d
create mode 100644 gas/testsuite/gas/arm/dotprod-legacy-arch.l
create mode 100644 gas/testsuite/gas/arm/dotprod-mandatory.d
create mode 100644 gas/testsuite/gas/arm/dotprod-thumb2.d
create mode 100644 gas/testsuite/gas/arm/dotprod.d
create mode 100644 gas/testsuite/gas/arm/dotprod.s
create mode 100644 gas/testsuite/gas/arm/forbid-armv7-idiv-ext.d
create mode 100644 gas/testsuite/gas/arm/forbid-armv7-idiv-ext.l
create mode 100644 gas/testsuite/gas/arm/mask_1-armv8-a.d
rename gas/testsuite/gas/arm/{mask_1.s => mask_1-armv8-ar.s} (100%)
create mode 100644 gas/testsuite/gas/arm/mask_1-armv8-r.d
delete mode 100644 gas/testsuite/gas/arm/mask_1.d
create mode 100644 gas/testsuite/gas/arm/pr21458.d
create mode 100644 gas/testsuite/gas/arm/pr21458.s
create mode 100644 gas/testsuite/gas/arm/pr22773.d
create mode 100644 gas/testsuite/gas/arm/pr22773.l
create mode 100644 gas/testsuite/gas/arm/pr22773.s
create mode 100644 gas/testsuite/gas/arm/predres-bad.d
create mode 100644 gas/testsuite/gas/arm/predres-bad.l
create mode 100644 gas/testsuite/gas/arm/predres.s
create mode 100644 gas/testsuite/gas/arm/predres1.d
create mode 100644 gas/testsuite/gas/arm/predres2.d
create mode 100644 gas/testsuite/gas/arm/reloc-fdpic.d
create mode 100644 gas/testsuite/gas/arm/reloc-fdpic.s
create mode 100644 gas/testsuite/gas/arm/sb-bad.d
create mode 100644 gas/testsuite/gas/arm/sb-bad.l
create mode 100644 gas/testsuite/gas/arm/sb-thumb1.d
create mode 100644 gas/testsuite/gas/arm/sb-thumb2.d
create mode 100644 gas/testsuite/gas/arm/sb.s
create mode 100644 gas/testsuite/gas/arm/sb1.d
create mode 100644 gas/testsuite/gas/arm/sb2.d
create mode 100644 gas/testsuite/gas/arm/sp-pc-validations-bad-t-v8a.d
create mode 100644 gas/testsuite/gas/arm/sp-pc-validations-bad-t-v8a.l
create mode 100644 gas/testsuite/gas/arm/sp-usage-thumb2-relax-on-v7.d
create mode 100644 gas/testsuite/gas/arm/sp-usage-thumb2-relax-on-v7.l
create mode 100644 gas/testsuite/gas/arm/sp-usage-thumb2-relax-on-v8.d
create mode 100644 gas/testsuite/gas/arm/sp-usage-thumb2-relax.s
create mode 100644 gas/testsuite/gas/arm/undefined-insn-arm.d
create mode 100644 gas/testsuite/gas/arm/undefined-insn-thumb.d
create mode 100644 gas/testsuite/gas/arm/undefined-insn.s
create mode 100644 gas/testsuite/gas/arm/vfp-mov-enc.d
create mode 100644 gas/testsuite/gas/arm/vfp-mov-enc.s
create mode 100644 gas/testsuite/gas/avr/gccisr-01.d
create mode 100644 gas/testsuite/gas/avr/gccisr-01.s
create mode 100644 gas/testsuite/gas/avr/gccisr-02.d
create mode 100644 gas/testsuite/gas/avr/gccisr-02.s
create mode 100644 gas/testsuite/gas/avr/gccisr-03.d
create mode 100644 gas/testsuite/gas/avr/gccisr-03.s
create mode 100644 gas/testsuite/gas/avr/pr21621.d
create mode 100644 gas/testsuite/gas/avr/pr21621.l
create mode 100644 gas/testsuite/gas/avr/pr21621.s
create mode 100644 gas/testsuite/gas/csky/801_relax.d
create mode 100644 gas/testsuite/gas/csky/801_relax.s
create mode 100644 gas/testsuite/gas/csky/802j.d
create mode 100644 gas/testsuite/gas/csky/802j.s
create mode 100644 gas/testsuite/gas/csky/all.d
create mode 100644 gas/testsuite/gas/csky/all.s
create mode 100644 gas/testsuite/gas/csky/bsr1.d
create mode 100644 gas/testsuite/gas/csky/bsr1.s
create mode 100644 gas/testsuite/gas/csky/bsr2.d
create mode 100644 gas/testsuite/gas/csky/bsr2.s
create mode 100644 gas/testsuite/gas/csky/csky.exp
create mode 100644 gas/testsuite/gas/csky/csky_vdsp.d
create mode 100644 gas/testsuite/gas/csky/csky_vdsp.s
create mode 100644 gas/testsuite/gas/csky/cskyv2_all.d
create mode 100644 gas/testsuite/gas/csky/cskyv2_all.s
create mode 100644 gas/testsuite/gas/csky/cskyv2_dsp.d
create mode 100644 gas/testsuite/gas/csky/cskyv2_dsp.s
create mode 100644 gas/testsuite/gas/csky/cskyv2_elrw.d
create mode 100644 gas/testsuite/gas/csky/cskyv2_elrw.s
create mode 100644 gas/testsuite/gas/csky/cskyv2_float.d
create mode 100644 gas/testsuite/gas/csky/cskyv2_float.s
create mode 100644 gas/testsuite/gas/csky/cskyv2_lrw.d
create mode 100644 gas/testsuite/gas/csky/cskyv2_lrw.s
create mode 100644 gas/testsuite/gas/csky/cskyv2_mnolrw1.d
create mode 100644 gas/testsuite/gas/csky/cskyv2_mnolrw1.s
create mode 100644 gas/testsuite/gas/csky/cskyv2_mnolrw2.d
create mode 100644 gas/testsuite/gas/csky/cskyv2_mnolrw2.s
create mode 100644 gas/testsuite/gas/csky/enhance_dsp.d
create mode 100644 gas/testsuite/gas/csky/enhance_dsp.s
create mode 100644 gas/testsuite/gas/csky/java.d
create mode 100644 gas/testsuite/gas/csky/java.s
create mode 100644 gas/testsuite/gas/csky/jbsr.d
create mode 100644 gas/testsuite/gas/csky/jbsr.s
create mode 100644 gas/testsuite/gas/csky/jbt.d
create mode 100644 gas/testsuite/gas/csky/jbt.s
create mode 100644 gas/testsuite/gas/csky/jbt_pic.d
create mode 100644 gas/testsuite/gas/csky/jbt_pic.s
create mode 100644 gas/testsuite/gas/csky/jmpi1.d
create mode 100644 gas/testsuite/gas/csky/jmpi1.s
create mode 100644 gas/testsuite/gas/csky/jmpi2.d
create mode 100644 gas/testsuite/gas/csky/jmpi2.s
create mode 100644 gas/testsuite/gas/csky/jmpi3.d
create mode 100644 gas/testsuite/gas/csky/jmpi3.s
create mode 100644 gas/testsuite/gas/csky/jmpiv2_1.d
create mode 100644 gas/testsuite/gas/csky/jmpiv2_1.s
create mode 100644 gas/testsuite/gas/csky/jmpiv2_2.d
create mode 100644 gas/testsuite/gas/csky/jmpiv2_2.s
create mode 100644 gas/testsuite/gas/csky/jsriv2_1.d
create mode 100644 gas/testsuite/gas/csky/jsriv2_1.s
create mode 100644 gas/testsuite/gas/csky/jsriv2_2.d
create mode 100644 gas/testsuite/gas/csky/jsriv2_2.s
create mode 100644 gas/testsuite/gas/csky/jsriv2_3.d
create mode 100644 gas/testsuite/gas/csky/jsriv2_3.s
create mode 100644 gas/testsuite/gas/csky/jsriv2_4.d
create mode 100644 gas/testsuite/gas/csky/jsriv2_4.s
create mode 100644 gas/testsuite/gas/csky/trust.d
create mode 100644 gas/testsuite/gas/csky/trust.s
create mode 100644 gas/testsuite/gas/csky/v1_float.d
create mode 100644 gas/testsuite/gas/csky/v1_float.s
create mode 100644 gas/testsuite/gas/csky/v2_float_part1.d
create mode 100644 gas/testsuite/gas/csky/v2_float_part1.s
create mode 100644 gas/testsuite/gas/csky/v2_float_part2.d
create mode 100644 gas/testsuite/gas/csky/v2_float_part2.s
create mode 100644 gas/testsuite/gas/csky/v2_tls_gd.d
create mode 100644 gas/testsuite/gas/csky/v2_tls_gd.s
create mode 100644 gas/testsuite/gas/csky/v2_tls_ie.d
create mode 100644 gas/testsuite/gas/csky/v2_tls_ie.s
create mode 100644 gas/testsuite/gas/csky/v2_tls_ld.d
create mode 100644 gas/testsuite/gas/csky/v2_tls_ld.s
create mode 100644 gas/testsuite/gas/csky/v2_tls_le.d
create mode 100644 gas/testsuite/gas/csky/v2_tls_le.s
create mode 100644 gas/testsuite/gas/elf/common5a.d
create mode 100644 gas/testsuite/gas/elf/common5a.l
create mode 100644 gas/testsuite/gas/elf/common5a.s
create mode 100644 gas/testsuite/gas/elf/common5b.d
create mode 100644 gas/testsuite/gas/elf/common5b.l
create mode 100644 gas/testsuite/gas/elf/common5b.s
create mode 100644 gas/testsuite/gas/elf/common5c.d
create mode 100644 gas/testsuite/gas/elf/common5c.s
create mode 100644 gas/testsuite/gas/elf/common5d.d
create mode 100644 gas/testsuite/gas/elf/common5d.s
create mode 100644 gas/testsuite/gas/elf/dwarf2-10.d
create mode 100644 gas/testsuite/gas/elf/dwarf2-10.l
create mode 100644 gas/testsuite/gas/elf/dwarf2-10.s
create mode 100644 gas/testsuite/gas/elf/dwarf2-11.d
create mode 100644 gas/testsuite/gas/elf/dwarf2-11.s
create mode 100644 gas/testsuite/gas/elf/dwarf2-12.d
create mode 100644 gas/testsuite/gas/elf/dwarf2-12.s
create mode 100644 gas/testsuite/gas/elf/dwarf2-13.d
create mode 100644 gas/testsuite/gas/elf/dwarf2-13.s
create mode 100644 gas/testsuite/gas/elf/dwarf2-14.d
create mode 100644 gas/testsuite/gas/elf/dwarf2-14.s
create mode 100644 gas/testsuite/gas/elf/dwarf2-15.d
create mode 100644 gas/testsuite/gas/elf/dwarf2-15.s
create mode 100644 gas/testsuite/gas/elf/dwarf2-16.d
create mode 100644 gas/testsuite/gas/elf/dwarf2-16.s
create mode 100644 gas/testsuite/gas/elf/dwarf2-17.d
create mode 100644 gas/testsuite/gas/elf/dwarf2-17.s
create mode 100644 gas/testsuite/gas/elf/dwarf2-18.d
create mode 100644 gas/testsuite/gas/elf/dwarf2-18.s
create mode 100644 gas/testsuite/gas/elf/dwarf2-5.d
create mode 100644 gas/testsuite/gas/elf/dwarf2-5.s
create mode 100644 gas/testsuite/gas/elf/dwarf2-6.d
create mode 100644 gas/testsuite/gas/elf/dwarf2-6.s
create mode 100644 gas/testsuite/gas/elf/dwarf2-7.d
create mode 100644 gas/testsuite/gas/elf/dwarf2-7.s
create mode 100644 gas/testsuite/gas/elf/dwarf2-8.d
create mode 100644 gas/testsuite/gas/elf/dwarf2-8.l
create mode 100644 gas/testsuite/gas/elf/dwarf2-8.s
create mode 100644 gas/testsuite/gas/elf/dwarf2-9.d
create mode 100644 gas/testsuite/gas/elf/dwarf2-9.l
create mode 100644 gas/testsuite/gas/elf/dwarf2-9.s
create mode 100644 gas/testsuite/gas/elf/group3.d
create mode 100644 gas/testsuite/gas/elf/group3.s
create mode 100644 gas/testsuite/gas/elf/missing-build-notes.d
create mode 100644 gas/testsuite/gas/elf/missing-build-notes.s
create mode 100644 gas/testsuite/gas/elf/pr21661.d
create mode 100644 gas/testsuite/gas/elf/pr21661.l
create mode 100644 gas/testsuite/gas/elf/pr21661.s
create mode 100644 gas/testsuite/gas/elf/section14.d
create mode 100644 gas/testsuite/gas/elf/section14.s
create mode 100644 gas/testsuite/gas/elf/section2.e-arc
create mode 100644 gas/testsuite/gas/ft32/insnsc.d
create mode 100644 gas/testsuite/gas/ft32/insnsc.s
delete mode 100644 gas/testsuite/gas/h8300/branch-coff.s
delete mode 100644 gas/testsuite/gas/h8300/branchh-coff.s
delete mode 100644 gas/testsuite/gas/h8300/branchs-coff.s
delete mode 100644 gas/testsuite/gas/h8300/ffxx1-coff.d
delete mode 100644 gas/testsuite/gas/h8300/ffxx1-coff.s
delete mode 100644 gas/testsuite/gas/h8300/h8300-coff.exp
create mode 100644 gas/testsuite/gas/i386/align-1.s
create mode 100644 gas/testsuite/gas/i386/align-1a.d
create mode 100644 gas/testsuite/gas/i386/align-1b.d
create mode 100644 gas/testsuite/gas/i386/arch-13-znver2.d
create mode 100644 gas/testsuite/gas/i386/arch-avx-1-7.l
create mode 100644 gas/testsuite/gas/i386/arch-avx-1-7.s
create mode 100644 gas/testsuite/gas/i386/arch-avx-1-8.l
create mode 100644 gas/testsuite/gas/i386/arch-avx-1-8.s
create mode 100644 gas/testsuite/gas/i386/avx-scalar-2.d
create mode 100644 gas/testsuite/gas/i386/avx-scalar-2.s
create mode 100644 gas/testsuite/gas/i386/avx-wig.d
create mode 100644 gas/testsuite/gas/i386/avx-wig.s
create mode 100644 gas/testsuite/gas/i386/avx2-wig.d
create mode 100644 gas/testsuite/gas/i386/avx2-wig.s
delete mode 100644 gas/testsuite/gas/i386/avx512_4fmaps_vl-intel.d
delete mode 100644 gas/testsuite/gas/i386/avx512_4fmaps_vl-warn.l
delete mode 100644 gas/testsuite/gas/i386/avx512_4fmaps_vl-warn.s
delete mode 100644 gas/testsuite/gas/i386/avx512_4fmaps_vl.d
delete mode 100644 gas/testsuite/gas/i386/avx512_4fmaps_vl.s
delete mode 100644 gas/testsuite/gas/i386/avx512_4vnniw_vl-intel.d
delete mode 100644 gas/testsuite/gas/i386/avx512_4vnniw_vl.d
delete mode 100644 gas/testsuite/gas/i386/avx512_4vnniw_vl.s
create mode 100644 gas/testsuite/gas/i386/avx512bitalg-intel.d
create mode 100644 gas/testsuite/gas/i386/avx512bitalg.d
create mode 100644 gas/testsuite/gas/i386/avx512bitalg.s
create mode 100644 gas/testsuite/gas/i386/avx512bitalg_vl-intel.d
create mode 100644 gas/testsuite/gas/i386/avx512bitalg_vl.d
create mode 100644 gas/testsuite/gas/i386/avx512bitalg_vl.s
create mode 100644 gas/testsuite/gas/i386/avx512f-plain.l
create mode 100644 gas/testsuite/gas/i386/avx512f-plain.s
create mode 100644 gas/testsuite/gas/i386/avx512f-ymm.d
create mode 100644 gas/testsuite/gas/i386/avx512f-ymm.s
create mode 100644 gas/testsuite/gas/i386/avx512f_gfni-intel.d
create mode 100644 gas/testsuite/gas/i386/avx512f_gfni.d
create mode 100644 gas/testsuite/gas/i386/avx512f_gfni.s
create mode 100644 gas/testsuite/gas/i386/avx512f_vaes-intel.d
create mode 100644 gas/testsuite/gas/i386/avx512f_vaes-wig.s
create mode 100644 gas/testsuite/gas/i386/avx512f_vaes-wig1-intel.d
create mode 100644 gas/testsuite/gas/i386/avx512f_vaes-wig1.d
create mode 100644 gas/testsuite/gas/i386/avx512f_vaes.d
create mode 100644 gas/testsuite/gas/i386/avx512f_vaes.s
create mode 100644 gas/testsuite/gas/i386/avx512f_vpclmulqdq-intel.d
create mode 100644 gas/testsuite/gas/i386/avx512f_vpclmulqdq-wig.s
create mode 100644 gas/testsuite/gas/i386/avx512f_vpclmulqdq-wig1-intel.d
create mode 100644 gas/testsuite/gas/i386/avx512f_vpclmulqdq-wig1.d
create mode 100644 gas/testsuite/gas/i386/avx512f_vpclmulqdq.d
create mode 100644 gas/testsuite/gas/i386/avx512f_vpclmulqdq.s
create mode 100644 gas/testsuite/gas/i386/avx512vbmi2-intel.d
create mode 100644 gas/testsuite/gas/i386/avx512vbmi2.d
create mode 100644 gas/testsuite/gas/i386/avx512vbmi2.s
create mode 100644 gas/testsuite/gas/i386/avx512vbmi2_vl-intel.d
create mode 100644 gas/testsuite/gas/i386/avx512vbmi2_vl.d
create mode 100644 gas/testsuite/gas/i386/avx512vbmi2_vl.s
create mode 100644 gas/testsuite/gas/i386/avx512vl-plain.l
create mode 100644 gas/testsuite/gas/i386/avx512vl-plain.s
create mode 100644 gas/testsuite/gas/i386/avx512vl_gfni-intel.d
create mode 100644 gas/testsuite/gas/i386/avx512vl_gfni.d
create mode 100644 gas/testsuite/gas/i386/avx512vl_gfni.s
create mode 100644 gas/testsuite/gas/i386/avx512vl_vaes-intel.d
create mode 100644 gas/testsuite/gas/i386/avx512vl_vaes-wig.s
create mode 100644 gas/testsuite/gas/i386/avx512vl_vaes-wig1-intel.d
create mode 100644 gas/testsuite/gas/i386/avx512vl_vaes-wig1.d
create mode 100644 gas/testsuite/gas/i386/avx512vl_vaes.d
create mode 100644 gas/testsuite/gas/i386/avx512vl_vaes.s
create mode 100644 gas/testsuite/gas/i386/avx512vl_vpclmulqdq-intel.d
create mode 100644 gas/testsuite/gas/i386/avx512vl_vpclmulqdq-wig.s
create mode 100644 gas/testsuite/gas/i386/avx512vl_vpclmulqdq-wig1-intel.d
create mode 100644 gas/testsuite/gas/i386/avx512vl_vpclmulqdq-wig1.d
create mode 100644 gas/testsuite/gas/i386/avx512vl_vpclmulqdq.d
create mode 100644 gas/testsuite/gas/i386/avx512vl_vpclmulqdq.s
create mode 100644 gas/testsuite/gas/i386/avx512vnni-intel.d
create mode 100644 gas/testsuite/gas/i386/avx512vnni.d
create mode 100644 gas/testsuite/gas/i386/avx512vnni.s
create mode 100644 gas/testsuite/gas/i386/avx512vnni_vl-intel.d
create mode 100644 gas/testsuite/gas/i386/avx512vnni_vl.d
create mode 100644 gas/testsuite/gas/i386/avx512vnni_vl.s
create mode 100644 gas/testsuite/gas/i386/bnd.l
create mode 100644 gas/testsuite/gas/i386/bnd.s
create mode 100644 gas/testsuite/gas/i386/cet-ibt-inval.l
create mode 100644 gas/testsuite/gas/i386/cet-ibt-inval.s
create mode 100644 gas/testsuite/gas/i386/cet-shstk-inval.l
create mode 100644 gas/testsuite/gas/i386/cet-shstk-inval.s
create mode 100644 gas/testsuite/gas/i386/cldemote-intel.d
create mode 100644 gas/testsuite/gas/i386/cldemote.d
create mode 100644 gas/testsuite/gas/i386/cldemote.s
create mode 100644 gas/testsuite/gas/i386/code64-inval.l
create mode 100644 gas/testsuite/gas/i386/code64-inval.s
create mode 100644 gas/testsuite/gas/i386/code64.d
create mode 100644 gas/testsuite/gas/i386/code64.s
create mode 100644 gas/testsuite/gas/i386/cvtsi2sX.l
create mode 100644 gas/testsuite/gas/i386/cvtsi2sX.s
create mode 100644 gas/testsuite/gas/i386/evex-lig-2.d
create mode 100644 gas/testsuite/gas/i386/evex-lig-2.s
create mode 100644 gas/testsuite/gas/i386/evex-no-scale-32.d
create mode 100644 gas/testsuite/gas/i386/evex-no-scale-32.s
create mode 100644 gas/testsuite/gas/i386/evex-no-scale-64.d
create mode 100644 gas/testsuite/gas/i386/evex-no-scale-64.s
create mode 100644 gas/testsuite/gas/i386/evex.d
create mode 100644 gas/testsuite/gas/i386/evex.s
create mode 100644 gas/testsuite/gas/i386/fpu.l
create mode 100644 gas/testsuite/gas/i386/fpu.s
create mode 100644 gas/testsuite/gas/i386/gfni-intel.d
create mode 100644 gas/testsuite/gas/i386/gfni.d
create mode 100644 gas/testsuite/gas/i386/gfni.s
create mode 100644 gas/testsuite/gas/i386/intel-intel.d
create mode 100644 gas/testsuite/gas/i386/intelok.e
create mode 100644 gas/testsuite/gas/i386/inval-pseudo.l
create mode 100644 gas/testsuite/gas/i386/inval-pseudo.s
create mode 100644 gas/testsuite/gas/i386/movdir-intel.d
create mode 100644 gas/testsuite/gas/i386/movdir.d
create mode 100644 gas/testsuite/gas/i386/movdir.s
create mode 100644 gas/testsuite/gas/i386/movdir64b-reg.l
create mode 100644 gas/testsuite/gas/i386/movdir64b-reg.s
create mode 100644 gas/testsuite/gas/i386/mpx-add-bnd-prefix.e
create mode 100644 gas/testsuite/gas/i386/noextreg.d
create mode 100644 gas/testsuite/gas/i386/noextreg.s
create mode 100644 gas/testsuite/gas/i386/nop-1.d
create mode 100644 gas/testsuite/gas/i386/nop-1.s
create mode 100644 gas/testsuite/gas/i386/nop-2.d
create mode 100644 gas/testsuite/gas/i386/nop-2.s
create mode 100644 gas/testsuite/gas/i386/nop-3.d
create mode 100644 gas/testsuite/gas/i386/nop-3.s
create mode 100644 gas/testsuite/gas/i386/nop-4.d
create mode 100644 gas/testsuite/gas/i386/nop-4.s
create mode 100644 gas/testsuite/gas/i386/nop-5.d
create mode 100644 gas/testsuite/gas/i386/nop-5.s
create mode 100644 gas/testsuite/gas/i386/nop-6.d
create mode 100644 gas/testsuite/gas/i386/nop-6.s
create mode 100644 gas/testsuite/gas/i386/nop-bad-1.l
create mode 100644 gas/testsuite/gas/i386/nop-bad-1.s
create mode 100644 gas/testsuite/gas/i386/nops-7.d
create mode 100644 gas/testsuite/gas/i386/nops-7.s
create mode 100644 gas/testsuite/gas/i386/notrack-intel.d
create mode 100644 gas/testsuite/gas/i386/notrack.d
create mode 100644 gas/testsuite/gas/i386/notrack.s
create mode 100644 gas/testsuite/gas/i386/notrackbad.l
create mode 100644 gas/testsuite/gas/i386/notrackbad.s
create mode 100644 gas/testsuite/gas/i386/optimize-1.d
create mode 100644 gas/testsuite/gas/i386/optimize-1.s
create mode 100644 gas/testsuite/gas/i386/optimize-2.d
create mode 100644 gas/testsuite/gas/i386/optimize-2.s
create mode 100644 gas/testsuite/gas/i386/optimize-3.d
create mode 100644 gas/testsuite/gas/i386/optimize-3.s
create mode 100644 gas/testsuite/gas/i386/optimize-4.d
create mode 100644 gas/testsuite/gas/i386/optimize-4.s
create mode 100644 gas/testsuite/gas/i386/optimize-5.d
create mode 100644 gas/testsuite/gas/i386/optimize-5.s
create mode 100644 gas/testsuite/gas/i386/pconfig-intel.d
create mode 100644 gas/testsuite/gas/i386/pconfig.d
create mode 100644 gas/testsuite/gas/i386/pconfig.s
create mode 100644 gas/testsuite/gas/i386/prefix32.l
create mode 100644 gas/testsuite/gas/i386/prefix32.s
create mode 100644 gas/testsuite/gas/i386/prefix64.l
create mode 100644 gas/testsuite/gas/i386/prefix64.s
create mode 100644 gas/testsuite/gas/i386/property-1.d
create mode 100644 gas/testsuite/gas/i386/property-1.s
create mode 100644 gas/testsuite/gas/i386/sg.l
create mode 100644 gas/testsuite/gas/i386/sg.s
create mode 100644 gas/testsuite/gas/i386/stN.l
create mode 100644 gas/testsuite/gas/i386/stN.s
create mode 100644 gas/testsuite/gas/i386/unspec.l
create mode 100644 gas/testsuite/gas/i386/unspec.s
create mode 100644 gas/testsuite/gas/i386/unspec64.l
create mode 100644 gas/testsuite/gas/i386/unspec64.s
create mode 100644 gas/testsuite/gas/i386/vaes-intel.d
create mode 100644 gas/testsuite/gas/i386/vaes.d
create mode 100644 gas/testsuite/gas/i386/vaes.s
create mode 100644 gas/testsuite/gas/i386/vex-lig-2.d
create mode 100644 gas/testsuite/gas/i386/vex-lig-2.s
create mode 100644 gas/testsuite/gas/i386/vpclmulqdq-intel.d
create mode 100644 gas/testsuite/gas/i386/vpclmulqdq.d
create mode 100644 gas/testsuite/gas/i386/vpclmulqdq.s
create mode 100644 gas/testsuite/gas/i386/waitpkg-intel.d
create mode 100644 gas/testsuite/gas/i386/waitpkg.d
create mode 100644 gas/testsuite/gas/i386/waitpkg.s
create mode 100644 gas/testsuite/gas/i386/wbnoinvd-intel.d
create mode 100644 gas/testsuite/gas/i386/wbnoinvd.d
create mode 100644 gas/testsuite/gas/i386/wbnoinvd.s
create mode 100644 gas/testsuite/gas/i386/x86-64-arch-3-znver2.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx-scalar-2.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx-scalar-2.s
create mode 100644 gas/testsuite/gas/i386/x86-64-avx-wig.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx-wig.s
create mode 100644 gas/testsuite/gas/i386/x86-64-avx2-wig.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx2-wig.s
delete mode 100644 gas/testsuite/gas/i386/x86-64-avx512_4fmaps_vl-intel.d
delete mode 100644 gas/testsuite/gas/i386/x86-64-avx512_4fmaps_vl-warn.l
delete mode 100644 gas/testsuite/gas/i386/x86-64-avx512_4fmaps_vl-warn.s
delete mode 100644 gas/testsuite/gas/i386/x86-64-avx512_4fmaps_vl.d
delete mode 100644 gas/testsuite/gas/i386/x86-64-avx512_4fmaps_vl.s
delete mode 100644 gas/testsuite/gas/i386/x86-64-avx512_4vnniw_vl-intel.d
delete mode 100644 gas/testsuite/gas/i386/x86-64-avx512_4vnniw_vl.d
delete mode 100644 gas/testsuite/gas/i386/x86-64-avx512_4vnniw_vl.s
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512bitalg-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512bitalg.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512bitalg.s
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512bitalg_vl-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512bitalg_vl.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512bitalg_vl.s
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512f_gfni-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512f_gfni.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512f_gfni.s
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512f_vaes-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512f_vaes-wig.s
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512f_vaes-wig1-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512f_vaes-wig1.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512f_vaes.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512f_vaes.s
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512f_vpclmulqdq-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512f_vpclmulqdq-wig.s
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512f_vpclmulqdq-wig1-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512f_vpclmulqdq-wig1.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512f_vpclmulqdq.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512f_vpclmulqdq.s
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vbmi2-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vbmi2.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vbmi2.s
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vbmi2_vl-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vbmi2_vl.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vbmi2_vl.s
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vl_gfni-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vl_gfni.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vl_gfni.s
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vl_vaes-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vl_vaes-wig.s
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vl_vaes-wig1-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vl_vaes-wig1.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vl_vaes.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vl_vaes.s
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq-wig.s
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq-wig1-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq-wig1.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq.s
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vnni-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vnni.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vnni.s
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vnni_vl-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vnni_vl.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx512vnni_vl.s
create mode 100644 gas/testsuite/gas/i386/x86-64-avx_gfni-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx_gfni.d
create mode 100644 gas/testsuite/gas/i386/x86-64-avx_gfni.s
create mode 100644 gas/testsuite/gas/i386/x86-64-cet-ibt-inval.l
create mode 100644 gas/testsuite/gas/i386/x86-64-cet-ibt-inval.s
create mode 100644 gas/testsuite/gas/i386/x86-64-cet-shstk-inval.l
create mode 100644 gas/testsuite/gas/i386/x86-64-cet-shstk-inval.s
create mode 100644 gas/testsuite/gas/i386/x86-64-cldemote-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-cldemote.d
create mode 100644 gas/testsuite/gas/i386/x86-64-cldemote.s
create mode 100644 gas/testsuite/gas/i386/x86-64-evex-lig-2.d
create mode 100644 gas/testsuite/gas/i386/x86-64-evex-lig-2.s
create mode 100644 gas/testsuite/gas/i386/x86-64-evex-wig2.d
create mode 100644 gas/testsuite/gas/i386/x86-64-evex-wig2.s
create mode 100644 gas/testsuite/gas/i386/x86-64-gfni-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-gfni.d
create mode 100644 gas/testsuite/gas/i386/x86-64-gfni.s
create mode 100644 gas/testsuite/gas/i386/x86-64-movd-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-movd.d
create mode 100644 gas/testsuite/gas/i386/x86-64-movd.s
create mode 100644 gas/testsuite/gas/i386/x86-64-movdir-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-movdir.d
create mode 100644 gas/testsuite/gas/i386/x86-64-movdir.s
create mode 100644 gas/testsuite/gas/i386/x86-64-movdir64b-reg.l
create mode 100644 gas/testsuite/gas/i386/x86-64-movdir64b-reg.s
create mode 100644 gas/testsuite/gas/i386/x86-64-mpx-add-bnd-prefix.e
create mode 100644 gas/testsuite/gas/i386/x86-64-nop-1.d
create mode 100644 gas/testsuite/gas/i386/x86-64-nop-2.d
create mode 100644 gas/testsuite/gas/i386/x86-64-nop-3.d
create mode 100644 gas/testsuite/gas/i386/x86-64-nop-4.d
create mode 100644 gas/testsuite/gas/i386/x86-64-nop-5.d
create mode 100644 gas/testsuite/gas/i386/x86-64-nop-6.d
create mode 100644 gas/testsuite/gas/i386/x86-64-nops-7.d
create mode 100644 gas/testsuite/gas/i386/x86-64-notrack-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-notrack.d
create mode 100644 gas/testsuite/gas/i386/x86-64-notrack.s
create mode 100644 gas/testsuite/gas/i386/x86-64-notrackbad.l
create mode 100644 gas/testsuite/gas/i386/x86-64-notrackbad.s
create mode 100644 gas/testsuite/gas/i386/x86-64-optimize-1.d
create mode 100644 gas/testsuite/gas/i386/x86-64-optimize-1.s
create mode 100644 gas/testsuite/gas/i386/x86-64-optimize-2.d
create mode 100644 gas/testsuite/gas/i386/x86-64-optimize-2.s
create mode 100644 gas/testsuite/gas/i386/x86-64-optimize-3.d
create mode 100644 gas/testsuite/gas/i386/x86-64-optimize-3.s
create mode 100644 gas/testsuite/gas/i386/x86-64-optimize-4.d
create mode 100644 gas/testsuite/gas/i386/x86-64-optimize-4.s
create mode 100644 gas/testsuite/gas/i386/x86-64-optimize-5.d
create mode 100644 gas/testsuite/gas/i386/x86-64-optimize-5.s
create mode 100644 gas/testsuite/gas/i386/x86-64-optimize-6.d
create mode 100644 gas/testsuite/gas/i386/x86-64-optimize-6.s
create mode 100644 gas/testsuite/gas/i386/x86-64-pconfig-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-pconfig.d
create mode 100644 gas/testsuite/gas/i386/x86-64-pconfig.s
create mode 100644 gas/testsuite/gas/i386/x86-64-property-1.d
create mode 100644 gas/testsuite/gas/i386/x86-64-reg-bad.l
create mode 100644 gas/testsuite/gas/i386/x86-64-reg-bad.s
create mode 100644 gas/testsuite/gas/i386/x86-64-vaes-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-vaes.d
create mode 100644 gas/testsuite/gas/i386/x86-64-vaes.s
create mode 100644 gas/testsuite/gas/i386/x86-64-vex-lig-2.d
create mode 100644 gas/testsuite/gas/i386/x86-64-vex-lig-2.s
create mode 100644 gas/testsuite/gas/i386/x86-64-vpclmulqdq-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-vpclmulqdq.d
create mode 100644 gas/testsuite/gas/i386/x86-64-vpclmulqdq.s
create mode 100644 gas/testsuite/gas/i386/x86-64-waitpkg-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-waitpkg.d
create mode 100644 gas/testsuite/gas/i386/x86-64-waitpkg.s
create mode 100644 gas/testsuite/gas/i386/x86-64-wbnoinvd-intel.d
create mode 100644 gas/testsuite/gas/i386/x86-64-wbnoinvd.d
create mode 100644 gas/testsuite/gas/i386/x86-64-wbnoinvd.s
create mode 100644 gas/testsuite/gas/i386/xmmhi32.d
create mode 100644 gas/testsuite/gas/i386/xmmhi32.s
create mode 100644 gas/testsuite/gas/i386/xmmhi64.d
create mode 100644 gas/testsuite/gas/i386/xmmhi64.s
create mode 100644 gas/testsuite/gas/i386/xmmword.l
create mode 100644 gas/testsuite/gas/i386/xmmword.s
delete mode 100644 gas/testsuite/gas/i860/README.i860
delete mode 100644 gas/testsuite/gas/i860/bitwise.d
delete mode 100644 gas/testsuite/gas/i860/bitwise.s
delete mode 100644 gas/testsuite/gas/i860/branch.d
delete mode 100644 gas/testsuite/gas/i860/branch.s
delete mode 100644 gas/testsuite/gas/i860/bte.d
delete mode 100644 gas/testsuite/gas/i860/bte.s
delete mode 100644 gas/testsuite/gas/i860/dir-align01.d
delete mode 100644 gas/testsuite/gas/i860/dir-align01.s
delete mode 100644 gas/testsuite/gas/i860/dir-intel01.d
delete mode 100644 gas/testsuite/gas/i860/dir-intel01.s
delete mode 100644 gas/testsuite/gas/i860/dir-intel02.d
delete mode 100644 gas/testsuite/gas/i860/dir-intel02.s
delete mode 100644 gas/testsuite/gas/i860/dir-intel03-err.l
delete mode 100644 gas/testsuite/gas/i860/dir-intel03-err.s
delete mode 100644 gas/testsuite/gas/i860/dual01.d
delete mode 100644 gas/testsuite/gas/i860/dual01.s
delete mode 100644 gas/testsuite/gas/i860/dual02-err.l
delete mode 100644 gas/testsuite/gas/i860/dual02-err.s
delete mode 100644 gas/testsuite/gas/i860/dual03.d
delete mode 100644 gas/testsuite/gas/i860/dual03.s
delete mode 100644 gas/testsuite/gas/i860/fldst01.d
delete mode 100644 gas/testsuite/gas/i860/fldst01.s
delete mode 100644 gas/testsuite/gas/i860/fldst02.d
delete mode 100644 gas/testsuite/gas/i860/fldst02.s
delete mode 100644 gas/testsuite/gas/i860/fldst03.d
delete mode 100644 gas/testsuite/gas/i860/fldst03.s
delete mode 100644 gas/testsuite/gas/i860/fldst04.d
delete mode 100644 gas/testsuite/gas/i860/fldst04.s
delete mode 100644 gas/testsuite/gas/i860/fldst05.d
delete mode 100644 gas/testsuite/gas/i860/fldst05.s
delete mode 100644 gas/testsuite/gas/i860/fldst06.d
delete mode 100644 gas/testsuite/gas/i860/fldst06.s
delete mode 100644 gas/testsuite/gas/i860/fldst07.d
delete mode 100644 gas/testsuite/gas/i860/fldst07.s
delete mode 100644 gas/testsuite/gas/i860/fldst08.d
delete mode 100644 gas/testsuite/gas/i860/fldst08.s
delete mode 100644 gas/testsuite/gas/i860/float01.d
delete mode 100644 gas/testsuite/gas/i860/float01.s
delete mode 100644 gas/testsuite/gas/i860/float02.d
delete mode 100644 gas/testsuite/gas/i860/float02.s
delete mode 100644 gas/testsuite/gas/i860/float03.d
delete mode 100644 gas/testsuite/gas/i860/float03.s
delete mode 100644 gas/testsuite/gas/i860/float04.d
delete mode 100644 gas/testsuite/gas/i860/float04.s
delete mode 100644 gas/testsuite/gas/i860/form.d
delete mode 100644 gas/testsuite/gas/i860/form.s
delete mode 100644 gas/testsuite/gas/i860/i860.exp
delete mode 100644 gas/testsuite/gas/i860/iarith.d
delete mode 100644 gas/testsuite/gas/i860/iarith.s
delete mode 100644 gas/testsuite/gas/i860/ldst01.d
delete mode 100644 gas/testsuite/gas/i860/ldst01.s
delete mode 100644 gas/testsuite/gas/i860/ldst02.d
delete mode 100644 gas/testsuite/gas/i860/ldst02.s
delete mode 100644 gas/testsuite/gas/i860/ldst03.d
delete mode 100644 gas/testsuite/gas/i860/ldst03.s
delete mode 100644 gas/testsuite/gas/i860/ldst04.d
delete mode 100644 gas/testsuite/gas/i860/ldst04.s
delete mode 100644 gas/testsuite/gas/i860/ldst05.d
delete mode 100644 gas/testsuite/gas/i860/ldst05.s
delete mode 100644 gas/testsuite/gas/i860/ldst06.d
delete mode 100644 gas/testsuite/gas/i860/ldst06.s
delete mode 100644 gas/testsuite/gas/i860/pfam.d
delete mode 100644 gas/testsuite/gas/i860/pfam.s
delete mode 100644 gas/testsuite/gas/i860/pfmam.d
delete mode 100644 gas/testsuite/gas/i860/pfmam.s
delete mode 100644 gas/testsuite/gas/i860/pfmsm.d
delete mode 100644 gas/testsuite/gas/i860/pfmsm.s
delete mode 100644 gas/testsuite/gas/i860/pfsm.d
delete mode 100644 gas/testsuite/gas/i860/pfsm.s
delete mode 100644 gas/testsuite/gas/i860/pseudo-ops01.d
delete mode 100644 gas/testsuite/gas/i860/pseudo-ops01.s
delete mode 100644 gas/testsuite/gas/i860/regress01.d
delete mode 100644 gas/testsuite/gas/i860/regress01.s
delete mode 100644 gas/testsuite/gas/i860/shift.d
delete mode 100644 gas/testsuite/gas/i860/shift.s
delete mode 100644 gas/testsuite/gas/i860/simd.d
delete mode 100644 gas/testsuite/gas/i860/simd.s
delete mode 100644 gas/testsuite/gas/i860/system.d
delete mode 100644 gas/testsuite/gas/i860/system.s
delete mode 100644 gas/testsuite/gas/i860/xp.d
delete mode 100644 gas/testsuite/gas/i860/xp.s
delete mode 100644 gas/testsuite/gas/m68k-coff/gas.exp
delete mode 100644 gas/testsuite/gas/m68k-coff/p2389.s
delete mode 100644 gas/testsuite/gas/m68k-coff/p2389a.s
delete mode 100644 gas/testsuite/gas/m68k-coff/p2430.s
delete mode 100644 gas/testsuite/gas/m68k-coff/p2430a.s
delete mode 100644 gas/testsuite/gas/m68k-coff/t1.s
delete mode 100644 gas/testsuite/gas/m68k/p3041.d
delete mode 100644 gas/testsuite/gas/m68k/p3041.s
delete mode 100644 gas/testsuite/gas/m68k/p3041data.d
delete mode 100644 gas/testsuite/gas/m68k/p3041data.s
delete mode 100644 gas/testsuite/gas/m68k/p3041pcrel.d
delete mode 100644 gas/testsuite/gas/m68k/p3041pcrel.s
delete mode 100644 gas/testsuite/gas/m68k/t2.d
create mode 100644 gas/testsuite/gas/mips/addiu-error.d
create mode 100644 gas/testsuite/gas/mips/addiu-error.l
create mode 100644 gas/testsuite/gas/mips/addiu-error.s
create mode 100644 gas/testsuite/gas/mips/branch-addend-micromips-n32.d
create mode 100644 gas/testsuite/gas/mips/branch-addend-micromips-n64.d
create mode 100644 gas/testsuite/gas/mips/branch-addend-micromips.d
create mode 100644 gas/testsuite/gas/mips/branch-addend-micromips.s
create mode 100644 gas/testsuite/gas/mips/branch-local-5.d
create mode 100644 gas/testsuite/gas/mips/branch-local-5.l
create mode 100644 gas/testsuite/gas/mips/branch-local-5.s
create mode 100644 gas/testsuite/gas/mips/branch-local-6.d
create mode 100644 gas/testsuite/gas/mips/branch-local-6.l
create mode 100644 gas/testsuite/gas/mips/branch-local-6.s
create mode 100644 gas/testsuite/gas/mips/branch-local-7.d
create mode 100644 gas/testsuite/gas/mips/branch-local-7.s
create mode 100644 gas/testsuite/gas/mips/branch-local-ignore-5.d
create mode 100644 gas/testsuite/gas/mips/branch-local-ignore-6.d
create mode 100644 gas/testsuite/gas/mips/branch-local-ignore-n32-5.d
create mode 100644 gas/testsuite/gas/mips/branch-local-ignore-n32-6.d
create mode 100644 gas/testsuite/gas/mips/branch-local-ignore-n64-5.d
create mode 100644 gas/testsuite/gas/mips/branch-local-ignore-n64-6.d
delete mode 100644 gas/testsuite/gas/mips/branch-local-n32-2.l
delete mode 100644 gas/testsuite/gas/mips/branch-local-n32-3.l
create mode 100644 gas/testsuite/gas/mips/branch-local-n32-5.d
create mode 100644 gas/testsuite/gas/mips/branch-local-n32-6.d
create mode 100644 gas/testsuite/gas/mips/branch-local-n32-7.d
delete mode 100644 gas/testsuite/gas/mips/branch-local-n64-2.l
delete mode 100644 gas/testsuite/gas/mips/branch-local-n64-3.l
create mode 100644 gas/testsuite/gas/mips/branch-local-n64-5.d
create mode 100644 gas/testsuite/gas/mips/branch-local-n64-6.d
create mode 100644 gas/testsuite/gas/mips/branch-local-n64-7.d
create mode 100644 gas/testsuite/gas/mips/break-error.d
create mode 100644 gas/testsuite/gas/mips/break-error.l
create mode 100644 gas/testsuite/gas/mips/break-error.s
create mode 100644 gas/testsuite/gas/mips/crc-err.d
create mode 100644 gas/testsuite/gas/mips/crc-err.l
create mode 100644 gas/testsuite/gas/mips/crc-err.s
create mode 100644 gas/testsuite/gas/mips/crc.d
create mode 100644 gas/testsuite/gas/mips/crc.s
create mode 100644 gas/testsuite/gas/mips/crc64-err.d
create mode 100644 gas/testsuite/gas/mips/crc64-err.l
create mode 100644 gas/testsuite/gas/mips/crc64-err.s
create mode 100644 gas/testsuite/gas/mips/crc64.d
create mode 100644 gas/testsuite/gas/mips/crc64.s
create mode 100644 gas/testsuite/gas/mips/elf-rel28-lldscd-micromips-n32.d
create mode 100644 gas/testsuite/gas/mips/elf-rel28-lldscd-micromips-n64.d
create mode 100644 gas/testsuite/gas/mips/elf-rel28-lldscd-n32.d
create mode 100644 gas/testsuite/gas/mips/elf-rel28-lldscd-n64.d
create mode 100644 gas/testsuite/gas/mips/elf-rel28-micromips-n32.d
create mode 100644 gas/testsuite/gas/mips/elf-rel28-micromips-n64.d
create mode 100644 gas/testsuite/gas/mips/elf-rel9-mips16e2.d
create mode 100644 gas/testsuite/gas/mips/elf-rel9-mips16e2.s
create mode 100644 gas/testsuite/gas/mips/elf_ase_mips16e2-2.d
create mode 100644 gas/testsuite/gas/mips/elf_ase_mips16e2.d
create mode 100644 gas/testsuite/gas/mips/elf_mach_5900.d
create mode 100644 gas/testsuite/gas/mips/elf_mach_interaptiv-mr2.d
create mode 100644 gas/testsuite/gas/mips/ginv-err.d
create mode 100644 gas/testsuite/gas/mips/ginv-err.l
create mode 100644 gas/testsuite/gas/mips/ginv-err.s
create mode 100644 gas/testsuite/gas/mips/ginv.d
create mode 100644 gas/testsuite/gas/mips/ginv.s
create mode 100644 gas/testsuite/gas/mips/interaptiv-mr2@isa-override-1.d
create mode 100644 gas/testsuite/gas/mips/interaptiv-mr2@isa-override-1.l
create mode 100644 gas/testsuite/gas/mips/interaptiv-mr2@isa-override-2.d
create mode 100644 gas/testsuite/gas/mips/interaptiv-mr2@isa-override-2.l
create mode 100644 gas/testsuite/gas/mips/interaptiv-mr2@mcu.d
create mode 100644 gas/testsuite/gas/mips/interaptiv-mr2@save-sub.d
create mode 100644 gas/testsuite/gas/mips/interaptiv-mr2@save.d
create mode 100644 gas/testsuite/gas/mips/isa-override-2.d
create mode 100644 gas/testsuite/gas/mips/loongson-2f-mmi.d
create mode 100644 gas/testsuite/gas/mips/loongson-2f-mmi.s
create mode 100644 gas/testsuite/gas/mips/loongson-3a-mmi.d
create mode 100644 gas/testsuite/gas/mips/loongson-3a-mmi.s
create mode 100644 gas/testsuite/gas/mips/loongson-cam.d
create mode 100644 gas/testsuite/gas/mips/loongson-cam.s
create mode 100644 gas/testsuite/gas/mips/loongson-ext2.d
create mode 100644 gas/testsuite/gas/mips/loongson-ext2.s
create mode 100644 gas/testsuite/gas/mips/lui-1.d
create mode 100644 gas/testsuite/gas/mips/lui-2.d
create mode 100644 gas/testsuite/gas/mips/micromips@addiu-error.d
create mode 100644 gas/testsuite/gas/mips/micromips@addiu-error.l
create mode 100644 gas/testsuite/gas/mips/micromips@mips32r2-sync-1.d
create mode 100644 gas/testsuite/gas/mips/micromips@r5.d
create mode 100644 gas/testsuite/gas/mips/micromips@relax-offset.d
create mode 100644 gas/testsuite/gas/mips/micromips@stabs-symbol-type.d
create mode 100644 gas/testsuite/gas/mips/micromips@xpa.d
create mode 100644 gas/testsuite/gas/mips/mips16-32@mips16-asmacro.s
create mode 100644 gas/testsuite/gas/mips/mips16-64@mips16-asmacro.s
create mode 100644 gas/testsuite/gas/mips/mips16-branch-absolute-1.d
create mode 100644 gas/testsuite/gas/mips/mips16-branch-absolute-1.s
create mode 100644 gas/testsuite/gas/mips/mips16-branch-absolute-2.d
create mode 100644 gas/testsuite/gas/mips/mips16-branch-absolute-2.s
create mode 100644 gas/testsuite/gas/mips/mips16-branch-absolute-addend-1.d
create mode 100644 gas/testsuite/gas/mips/mips16-branch-absolute-addend-1.s
create mode 100644 gas/testsuite/gas/mips/mips16-branch-absolute-addend-n32-1.d
create mode 100644 gas/testsuite/gas/mips/mips16-branch-absolute-addend-n64-1.d
create mode 100644 gas/testsuite/gas/mips/mips16-branch-absolute-n32-1.d
create mode 100644 gas/testsuite/gas/mips/mips16-branch-absolute-n32-2.d
create mode 100644 gas/testsuite/gas/mips/mips16-branch-absolute-n64-1.d
create mode 100644 gas/testsuite/gas/mips/mips16-branch-absolute-n64-2.d
create mode 100644 gas/testsuite/gas/mips/mips16-branch-addend-4.d
create mode 100644 gas/testsuite/gas/mips/mips16-branch-addend-4.s
create mode 100644 gas/testsuite/gas/mips/mips16-branch-addend-5.d
create mode 100644 gas/testsuite/gas/mips/mips16-branch-addend-5.l
create mode 100644 gas/testsuite/gas/mips/mips16-branch-addend-5.s
create mode 100644 gas/testsuite/gas/mips/mips16-branch-reloc-4.d
create mode 100644 gas/testsuite/gas/mips/mips16-branch-reloc-4.s
create mode 100644 gas/testsuite/gas/mips/mips16-branch-reloc-5.d
create mode 100644 gas/testsuite/gas/mips/mips16-branch-reloc-5.s
delete mode 100644 gas/testsuite/gas/mips/mips16-macro.l
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-0.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-0.l
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-0.s
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-1.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-1.l
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-1.s
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-2.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-2.l
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-2.s
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-3.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-3.l
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-3.s
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-4.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-4.l
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-4.s
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-5.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-5.l
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-5.s
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-1.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-1.s
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-2.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-2.s
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-3.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-3.s
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-4.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-4.l
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-4.s
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-5.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-5.s
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-6.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-6.l
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-6.s
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-7.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-7.s
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-n32-4.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-n32-6.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-n64-4.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-n64-6.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-n64-sym32-4.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-n64-sym32-6.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-pic-4.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-pic-6.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-pic-n32-4.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-pic-n32-6.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-4.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-6.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-sym32-4.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-sym32-6.d
delete mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute.l
delete mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-2.l
delete mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-3.l
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-4.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-4.s
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-5.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-5.s
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-6.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-6.s
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-7.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-7.s
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-8.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-8.l
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-8.s
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-9.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-9.l
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-9.s
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-n32-8.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-n32-9.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-n64-8.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-n64-9.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-n64-sym32-8.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-n64-sym32-9.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-pic-8.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-pic-9.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-delay-0.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-delay-0.l
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-delay-0.s
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-delay-1.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-delay-1.l
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-delay-1.s
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-n32-0.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-n32-1.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-n64-0.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-n64-1.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-n64-sym32-0.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-n64-sym32-1.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-pic-0.d
create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-pic-1.d
delete mode 100644 gas/testsuite/gas/mips/mips16-pcrel-reloc-2.l
delete mode 100644 gas/testsuite/gas/mips/mips16-pcrel-reloc-3.l
delete mode 100644 gas/testsuite/gas/mips/mips16-pcrel-reloc-6.l
delete mode 100644 gas/testsuite/gas/mips/mips16-pcrel-reloc-7.l
create mode 100644 gas/testsuite/gas/mips/mips16-reg-error.d
create mode 100644 gas/testsuite/gas/mips/mips16-reg-error.l
create mode 100644 gas/testsuite/gas/mips/mips16-reg-error.s
create mode 100644 gas/testsuite/gas/mips/mips16-reloc-error.d
create mode 100644 gas/testsuite/gas/mips/mips16-reloc-error.l
create mode 100644 gas/testsuite/gas/mips/mips16-reloc-error.s
create mode 100644 gas/testsuite/gas/mips/mips16@addiu-error.d
create mode 100644 gas/testsuite/gas/mips/mips16@addiu-error.l
delete mode 100644 gas/testsuite/gas/mips/mips16@relax-swap3.l
create mode 100644 gas/testsuite/gas/mips/mips16@save-sub.d
create mode 100644 gas/testsuite/gas/mips/mips16@stabs-symbol-type.d
delete mode 100644 gas/testsuite/gas/mips/mips16e-save-err.s
delete mode 100644 gas/testsuite/gas/mips/mips16e-save.d
delete mode 100644 gas/testsuite/gas/mips/mips16e-save.s
create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16-insn-e.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16-insn-e.l
create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16-insn-t.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16-insn-t.l
create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16-macro-e.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16-macro-e.l
create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16-macro-t.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16-macro-t.l
create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16-macro.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16-macro.l
create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16-sub.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16e-64-sub.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16e-64.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-copy-err.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-copy-err.l
create mode 100644 gas/testsuite/gas/mips/mips16e2-copy-err.s
create mode 100644 gas/testsuite/gas/mips/mips16e2-copy.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-copy.s
create mode 100644 gas/testsuite/gas/mips/mips16e2-hilo-n32.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-hilo.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-hilo.s
create mode 100644 gas/testsuite/gas/mips/mips16e2-imm-error.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-imm-error.l
create mode 100644 gas/testsuite/gas/mips/mips16e2-imm-error.s
create mode 100644 gas/testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-asmacro.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-insn-e.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-insn-e.l
create mode 100644 gas/testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-insn-t.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-insn-t.l
create mode 100644 gas/testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro-e.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro-e.l
create mode 100644 gas/testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro-t.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro-t.l
create mode 100644 gas/testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro.l
create mode 100644 gas/testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-sub.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-sub.l
create mode 100644 gas/testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e-64-sub.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e-64-sub.l
create mode 100644 gas/testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e-64.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e-sub.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e-sub.l
create mode 100644 gas/testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e2-mt-sub.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-lui.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-lui.s
create mode 100644 gas/testsuite/gas/mips/mips16e2-mt-err.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-mt-err.l
create mode 100644 gas/testsuite/gas/mips/mips16e2-mt-err.s
create mode 100644 gas/testsuite/gas/mips/mips16e2-mt-sub.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-mt-sub.s
create mode 100644 gas/testsuite/gas/mips/mips16e2-mt.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-mt.s
create mode 100644 gas/testsuite/gas/mips/mips16e2-reloc-error.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-reloc-error.l
create mode 100644 gas/testsuite/gas/mips/mips16e2-reloc-error.s
create mode 100644 gas/testsuite/gas/mips/mips16e2-sub.d
create mode 100644 gas/testsuite/gas/mips/mips16e2-sub.s
create mode 100644 gas/testsuite/gas/mips/mips16e2.d
create mode 100644 gas/testsuite/gas/mips/mips16e2.s
create mode 100644 gas/testsuite/gas/mips/mips16e2@lui-2.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@lui-2.l
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-0.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-1.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-2.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-1.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-2.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-3.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-4.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-5.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-6.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-7.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-n32-4.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-n32-6.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-n64-sym32-4.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-n64-sym32-6.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-4.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-6.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-n32-4.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-n32-6.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-n64-sym32-4.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-n64-sym32-6.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-addend-2.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-addend-3.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-addend-6.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-addend-7.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-addend-8.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-addend-9.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-addend-n32-8.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-addend-n32-9.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-addend-n64-sym32-8.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-addend-n64-sym32-9.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-delay-0.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-delay-1.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-n32-0.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-n32-1.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-0.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-1.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-reloc-2.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-reloc-3.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-reloc-6.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-reloc-7.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16e2-mt-sub.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16e2-sub.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips32r2-sync-1.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@mips32r2-sync.d
create mode 100644 gas/testsuite/gas/mips/mips16e2@relax-swap3.d
create mode 100644 gas/testsuite/gas/mips/mips16e@relax-swap3.d
create mode 100644 gas/testsuite/gas/mips/mips16e@save-sub.d
delete mode 100644 gas/testsuite/gas/mips/mips1@ecoff@sd-forward.d
delete mode 100644 gas/testsuite/gas/mips/mips1@ecoff@sd.d
create mode 100644 gas/testsuite/gas/mips/mips1@isa-override-2.d
delete mode 100644 gas/testsuite/gas/mips/mips1@isa-override-2.s
create mode 100644 gas/testsuite/gas/mips/mips1@relax-offset.d
create mode 100644 gas/testsuite/gas/mips/mips1@save-sub.d
delete mode 100644 gas/testsuite/gas/mips/mips2@ecoff@ld-forward.d
delete mode 100644 gas/testsuite/gas/mips/mips2@ecoff@ld.d
delete mode 100644 gas/testsuite/gas/mips/mips2@ecoff@sd-forward.d
delete mode 100644 gas/testsuite/gas/mips/mips2@ecoff@sd.d
create mode 100644 gas/testsuite/gas/mips/mips2@isa-override-2.d
delete mode 100644 gas/testsuite/gas/mips/mips2@isa-override-2.s
create mode 100644 gas/testsuite/gas/mips/mips2@save-sub.d
delete mode 100644 gas/testsuite/gas/mips/mips32@ecoff@ld-forward.d
delete mode 100644 gas/testsuite/gas/mips/mips32@ecoff@ld.d
delete mode 100644 gas/testsuite/gas/mips/mips32@ecoff@sd-forward.d
delete mode 100644 gas/testsuite/gas/mips/mips32@ecoff@sd.d
create mode 100644 gas/testsuite/gas/mips/mips32@isa-override-2.d
delete mode 100644 gas/testsuite/gas/mips/mips32@isa-override-2.s
create mode 100644 gas/testsuite/gas/mips/mips32@save-sub.d
create mode 100644 gas/testsuite/gas/mips/mips32r2-sync-1.d
delete mode 100644 gas/testsuite/gas/mips/mips32r2@ecoff@ld-forward.d
delete mode 100644 gas/testsuite/gas/mips/mips32r2@ecoff@ld.d
delete mode 100644 gas/testsuite/gas/mips/mips32r2@ecoff@sd-forward.d
delete mode 100644 gas/testsuite/gas/mips/mips32r2@ecoff@sd.d
create mode 100644 gas/testsuite/gas/mips/mips32r2@isa-override-2.d
delete mode 100644 gas/testsuite/gas/mips/mips32r2@isa-override-2.s
create mode 100644 gas/testsuite/gas/mips/mips32r3@isa-override-2.d
delete mode 100644 gas/testsuite/gas/mips/mips32r3@isa-override-2.s
create mode 100644 gas/testsuite/gas/mips/mips32r5@isa-override-2.d
delete mode 100644 gas/testsuite/gas/mips/mips32r5@isa-override-2.s
create mode 100644 gas/testsuite/gas/mips/mips32r6@isa-override-2.d
delete mode 100644 gas/testsuite/gas/mips/mips32r6@isa-override-2.s
create mode 100644 gas/testsuite/gas/mips/mips3@save-sub.d
create mode 100644 gas/testsuite/gas/mips/mips4@save-sub.d
create mode 100644 gas/testsuite/gas/mips/mips5@save-sub.d
create mode 100644 gas/testsuite/gas/mips/mips64@save-sub.d
create mode 100644 gas/testsuite/gas/mips/octeon2@save-sub.d
create mode 100644 gas/testsuite/gas/mips/octeon3@isa-override-2.d
delete mode 100644 gas/testsuite/gas/mips/octeon3@isa-override-2.s
create mode 100644 gas/testsuite/gas/mips/octeon3@save-sub.d
create mode 100644 gas/testsuite/gas/mips/option-pic-relax-0.d
create mode 100644 gas/testsuite/gas/mips/option-pic-relax-0.s
create mode 100644 gas/testsuite/gas/mips/option-pic-relax-1.d
create mode 100644 gas/testsuite/gas/mips/option-pic-relax-1.s
create mode 100644 gas/testsuite/gas/mips/option-pic-relax-2.d
create mode 100644 gas/testsuite/gas/mips/option-pic-relax-2.l
create mode 100644 gas/testsuite/gas/mips/option-pic-relax-2.s
create mode 100644 gas/testsuite/gas/mips/option-pic-relax-3.d
create mode 100644 gas/testsuite/gas/mips/option-pic-relax-3.l
create mode 100644 gas/testsuite/gas/mips/option-pic-relax-3.s
create mode 100644 gas/testsuite/gas/mips/option-pic-relax-3a.d
create mode 100644 gas/testsuite/gas/mips/option-pic-relax-4.d
create mode 100644 gas/testsuite/gas/mips/option-pic-relax-4.l
create mode 100644 gas/testsuite/gas/mips/option-pic-relax-4.s
create mode 100644 gas/testsuite/gas/mips/option-pic-relax-5.d
create mode 100644 gas/testsuite/gas/mips/option-pic-relax-5.l
create mode 100644 gas/testsuite/gas/mips/option-pic-relax-5.s
delete mode 100644 gas/testsuite/gas/mips/r3000@ecoff@sd-forward.d
delete mode 100644 gas/testsuite/gas/mips/r3000@ecoff@sd.d
create mode 100644 gas/testsuite/gas/mips/r3000@isa-override-2.d
delete mode 100644 gas/testsuite/gas/mips/r3000@isa-override-2.l
delete mode 100644 gas/testsuite/gas/mips/r3000@isa-override-2.s
create mode 100644 gas/testsuite/gas/mips/r3000@relax-offset.d
create mode 100644 gas/testsuite/gas/mips/r3000@save-sub.d
delete mode 100644 gas/testsuite/gas/mips/r3900@ecoff@ld-forward.d
delete mode 100644 gas/testsuite/gas/mips/r3900@ecoff@ld.d
delete mode 100644 gas/testsuite/gas/mips/r3900@ecoff@sd-forward.d
delete mode 100644 gas/testsuite/gas/mips/r3900@ecoff@sd.d
create mode 100644 gas/testsuite/gas/mips/r3900@isa-override-2.d
delete mode 100644 gas/testsuite/gas/mips/r3900@isa-override-2.s
create mode 100644 gas/testsuite/gas/mips/r3900@relax-offset.d
create mode 100644 gas/testsuite/gas/mips/r3900@save-sub.d
create mode 100644 gas/testsuite/gas/mips/r4000@save-sub.d
create mode 100644 gas/testsuite/gas/mips/r5900@save-sub.d
create mode 100644 gas/testsuite/gas/mips/reginfo-2-n32.d
create mode 100644 gas/testsuite/gas/mips/reginfo-2.d
create mode 100644 gas/testsuite/gas/mips/reginfo-2.l
create mode 100644 gas/testsuite/gas/mips/reginfo-2.s
create mode 100644 gas/testsuite/gas/mips/relax-offset.d
create mode 100644 gas/testsuite/gas/mips/relax-offset.l
create mode 100644 gas/testsuite/gas/mips/relax-offset.s
create mode 100644 gas/testsuite/gas/mips/save-err.d
rename gas/testsuite/gas/mips/{mips16e-save-err.l => save-err.l} (100%)
create mode 100644 gas/testsuite/gas/mips/save-err.s
create mode 100644 gas/testsuite/gas/mips/save-sub.d
create mode 100644 gas/testsuite/gas/mips/save-sub.s
create mode 100644 gas/testsuite/gas/mips/save.d
create mode 100644 gas/testsuite/gas/mips/save.s
create mode 100644 gas/testsuite/gas/mips/sb1@save-sub.d
create mode 100644 gas/testsuite/gas/mips/stabs-symbol-type.d
create mode 100644 gas/testsuite/gas/mips/stabs-symbol-type.s
create mode 100644 gas/testsuite/gas/mips/vr5400@save-sub.d
create mode 100644 gas/testsuite/gas/mips/xlr@save-sub.d
create mode 100644 gas/testsuite/gas/mips/xpa-err.d
create mode 100644 gas/testsuite/gas/mips/xpa-err.l
create mode 100644 gas/testsuite/gas/mips/xpa-err.s
create mode 100644 gas/testsuite/gas/mips/xpa-virt-err.d
create mode 100644 gas/testsuite/gas/mips/xpa-virt-err.l
create mode 100644 gas/testsuite/gas/mips/xpa-virt-err.s
create mode 100644 gas/testsuite/gas/msp430/high-data-bss-sym.d
create mode 100644 gas/testsuite/gas/msp430/high-data-bss-sym.s
create mode 100644 gas/testsuite/gas/msp430/pr22133.d
create mode 100644 gas/testsuite/gas/msp430/pr22133.l
create mode 100644 gas/testsuite/gas/msp430/pr22133.s
create mode 100644 gas/testsuite/gas/nios2/illegal_pseudoinst.l
create mode 100644 gas/testsuite/gas/nios2/illegal_pseudoinst.s
delete mode 100644 gas/testsuite/gas/or1k/allinsn.exp
create mode 100644 gas/testsuite/gas/or1k/or1k.exp
create mode 100644 gas/testsuite/gas/or1k/reloc-1.d
create mode 100644 gas/testsuite/gas/or1k/reloc-1.s
create mode 100644 gas/testsuite/gas/or1k/reloc-2.l
create mode 100644 gas/testsuite/gas/or1k/reloc-2.s
create mode 100644 gas/testsuite/gas/pdp11/pr14480.d
create mode 100644 gas/testsuite/gas/pdp11/pr14480.s
create mode 100644 gas/testsuite/gas/pdp11/pr23481.d
create mode 100644 gas/testsuite/gas/pdp11/pr23481.s
create mode 100644 gas/testsuite/gas/pe/seh-x64-err-2.l
create mode 100644 gas/testsuite/gas/pe/seh-x64-err-2.s
create mode 100644 gas/testsuite/gas/ppc/broadway.d
create mode 100644 gas/testsuite/gas/ppc/broadway.s
create mode 100644 gas/testsuite/gas/ppc/efs.d
create mode 100644 gas/testsuite/gas/ppc/efs.s
create mode 100644 gas/testsuite/gas/ppc/efs2.d
create mode 100644 gas/testsuite/gas/ppc/efs2.s
create mode 100644 gas/testsuite/gas/ppc/lsp-checks.d
create mode 100644 gas/testsuite/gas/ppc/lsp-checks.l
create mode 100644 gas/testsuite/gas/ppc/lsp-checks.s
create mode 100644 gas/testsuite/gas/ppc/lsp.d
create mode 100644 gas/testsuite/gas/ppc/lsp.s
create mode 100644 gas/testsuite/gas/ppc/misalign.d
create mode 100644 gas/testsuite/gas/ppc/misalign.l
create mode 100644 gas/testsuite/gas/ppc/misalign.s
create mode 100644 gas/testsuite/gas/ppc/misalign2.d
create mode 100644 gas/testsuite/gas/ppc/misalign2.s
create mode 100644 gas/testsuite/gas/ppc/spe.d
create mode 100644 gas/testsuite/gas/ppc/spe.s
create mode 100644 gas/testsuite/gas/ppc/spe2-checks.d
create mode 100644 gas/testsuite/gas/ppc/spe2-checks.l
create mode 100644 gas/testsuite/gas/ppc/spe2-checks.s
create mode 100644 gas/testsuite/gas/ppc/spe2.d
create mode 100644 gas/testsuite/gas/ppc/spe2.s
create mode 100644 gas/testsuite/gas/ppc/spe_ambiguous.d
create mode 100644 gas/testsuite/gas/ppc/spe_ambiguous.s
create mode 100644 gas/testsuite/gas/ppc/vle-mult-ld-st-insns.d
create mode 100644 gas/testsuite/gas/ppc/vle-mult-ld-st-insns.s
create mode 100644 gas/testsuite/gas/pru/extern.d
create mode 100644 gas/testsuite/gas/pru/extern.s
create mode 100644 gas/testsuite/gas/pru/illegal2.l
create mode 100644 gas/testsuite/gas/pru/illegal2.s
create mode 100644 gas/testsuite/gas/riscv/align-1.l
create mode 100644 gas/testsuite/gas/riscv/align-1.s
create mode 100644 gas/testsuite/gas/riscv/auipc-x0.d
create mode 100644 gas/testsuite/gas/riscv/auipc-x0.s
create mode 100644 gas/testsuite/gas/riscv/bad-csr.d
create mode 100644 gas/testsuite/gas/riscv/bad-csr.l
create mode 100644 gas/testsuite/gas/riscv/bad-csr.s
create mode 100644 gas/testsuite/gas/riscv/bge.d
create mode 100644 gas/testsuite/gas/riscv/bge.s
create mode 100644 gas/testsuite/gas/riscv/c-addi16sp-fail.d
create mode 100644 gas/testsuite/gas/riscv/c-addi16sp-fail.l
create mode 100644 gas/testsuite/gas/riscv/c-addi16sp-fail.s
create mode 100644 gas/testsuite/gas/riscv/c-addi4spn-fail.d
create mode 100644 gas/testsuite/gas/riscv/c-addi4spn-fail.l
create mode 100644 gas/testsuite/gas/riscv/c-addi4spn-fail.s
create mode 100644 gas/testsuite/gas/riscv/c-fld-fsd-fail.d
create mode 100644 gas/testsuite/gas/riscv/c-fld-fsd-fail.l
create mode 100644 gas/testsuite/gas/riscv/c-fld-fsd-fail.s
create mode 100644 gas/testsuite/gas/riscv/c-ld.d
create mode 100644 gas/testsuite/gas/riscv/c-ld.s
create mode 100644 gas/testsuite/gas/riscv/c-lui-fail.d
create mode 100644 gas/testsuite/gas/riscv/c-lui-fail.l
create mode 100644 gas/testsuite/gas/riscv/c-lui-fail.s
create mode 100644 gas/testsuite/gas/riscv/c-lw.d
create mode 100644 gas/testsuite/gas/riscv/c-lw.s
create mode 100644 gas/testsuite/gas/riscv/c-nonzero-imm.d
create mode 100644 gas/testsuite/gas/riscv/c-nonzero-imm.l
create mode 100644 gas/testsuite/gas/riscv/c-nonzero-imm.s
create mode 100644 gas/testsuite/gas/riscv/c-nonzero-reg.d
create mode 100644 gas/testsuite/gas/riscv/c-nonzero-reg.l
create mode 100644 gas/testsuite/gas/riscv/c-nonzero-reg.s
create mode 100644 gas/testsuite/gas/riscv/c-zero-imm-64.d
create mode 100644 gas/testsuite/gas/riscv/c-zero-imm-64.s
create mode 100644 gas/testsuite/gas/riscv/c-zero-imm.d
create mode 100644 gas/testsuite/gas/riscv/c-zero-imm.s
create mode 100644 gas/testsuite/gas/riscv/c-zero-reg.d
create mode 100644 gas/testsuite/gas/riscv/c-zero-reg.s
create mode 100644 gas/testsuite/gas/riscv/eh-relocs.d
create mode 100644 gas/testsuite/gas/riscv/eh-relocs.s
create mode 100644 gas/testsuite/gas/riscv/fence-fail.d
create mode 100644 gas/testsuite/gas/riscv/fence-fail.l
create mode 100644 gas/testsuite/gas/riscv/fence-fail.s
create mode 100644 gas/testsuite/gas/riscv/fence-tso.d
create mode 100644 gas/testsuite/gas/riscv/fence-tso.s
create mode 100644 gas/testsuite/gas/riscv/fmv.x.d
create mode 100644 gas/testsuite/gas/riscv/fmv.x.s
create mode 100644 gas/testsuite/gas/riscv/fsxxi.d
create mode 100644 gas/testsuite/gas/riscv/fsxxi.s
create mode 100644 gas/testsuite/gas/riscv/insn.d
create mode 100644 gas/testsuite/gas/riscv/insn.s
create mode 100644 gas/testsuite/gas/riscv/lla32.d
create mode 100644 gas/testsuite/gas/riscv/lla32.s
create mode 100644 gas/testsuite/gas/riscv/lla64-fail.d
create mode 100644 gas/testsuite/gas/riscv/lla64-fail.l
create mode 100644 gas/testsuite/gas/riscv/lla64-fail.s
create mode 100644 gas/testsuite/gas/riscv/lla64.d
create mode 100644 gas/testsuite/gas/riscv/lla64.s
create mode 100644 gas/testsuite/gas/riscv/no-relax-align-2.d
create mode 100644 gas/testsuite/gas/riscv/no-relax-align-2.s
create mode 100644 gas/testsuite/gas/riscv/no-relax-align.d
create mode 100644 gas/testsuite/gas/riscv/no-relax-align.s
create mode 100644 gas/testsuite/gas/riscv/no-relax-reloc.d
create mode 100644 gas/testsuite/gas/riscv/no-relax-reloc.s
create mode 100644 gas/testsuite/gas/riscv/priv-reg.d
create mode 100644 gas/testsuite/gas/riscv/priv-reg.s
create mode 100644 gas/testsuite/gas/riscv/relax-reloc.d
create mode 100644 gas/testsuite/gas/riscv/relax-reloc.s
create mode 100644 gas/testsuite/gas/riscv/rouding-fail.d
create mode 100644 gas/testsuite/gas/riscv/rouding-fail.l
create mode 100644 gas/testsuite/gas/riscv/rouding-fail.s
create mode 100644 gas/testsuite/gas/riscv/satp.d
create mode 100644 gas/testsuite/gas/riscv/satp.s
create mode 100644 gas/testsuite/gas/rx/pr22737.d
create mode 100644 gas/testsuite/gas/rx/pr22737.s
create mode 100644 gas/testsuite/gas/s12z/abs.d
create mode 100644 gas/testsuite/gas/s12z/abs.s
create mode 100644 gas/testsuite/gas/s12z/adc-imm.d
create mode 100644 gas/testsuite/gas/s12z/adc-imm.s
create mode 100644 gas/testsuite/gas/s12z/adc-opr.d
create mode 100644 gas/testsuite/gas/s12z/adc-opr.s
create mode 100644 gas/testsuite/gas/s12z/add-imm.d
create mode 100644 gas/testsuite/gas/s12z/add-imm.s
create mode 100644 gas/testsuite/gas/s12z/add-opr.d
create mode 100644 gas/testsuite/gas/s12z/add-opr.s
create mode 100644 gas/testsuite/gas/s12z/and-imm.d
create mode 100644 gas/testsuite/gas/s12z/and-imm.s
create mode 100644 gas/testsuite/gas/s12z/and-opr.d
create mode 100644 gas/testsuite/gas/s12z/and-opr.s
create mode 100644 gas/testsuite/gas/s12z/and-or-cc.d
create mode 100644 gas/testsuite/gas/s12z/and-or-cc.s
create mode 100644 gas/testsuite/gas/s12z/bfext-special.d
create mode 100644 gas/testsuite/gas/s12z/bfext-special.s
create mode 100644 gas/testsuite/gas/s12z/bfext.d
create mode 100644 gas/testsuite/gas/s12z/bfext.s
create mode 100644 gas/testsuite/gas/s12z/bit-manip-invalid.d
create mode 100644 gas/testsuite/gas/s12z/bit-manip-invalid.s
create mode 100644 gas/testsuite/gas/s12z/bit-manip.d
create mode 100644 gas/testsuite/gas/s12z/bit-manip.s
create mode 100644 gas/testsuite/gas/s12z/bit.d
create mode 100644 gas/testsuite/gas/s12z/bit.s
create mode 100644 gas/testsuite/gas/s12z/bra-expression-defined.d
create mode 100644 gas/testsuite/gas/s12z/bra-expression-defined.s
create mode 100644 gas/testsuite/gas/s12z/bra-expression-undef.d
create mode 100644 gas/testsuite/gas/s12z/bra-expression-undef.s
create mode 100644 gas/testsuite/gas/s12z/bra.d
create mode 100644 gas/testsuite/gas/s12z/bra.s
create mode 100644 gas/testsuite/gas/s12z/brclr-symbols.d
create mode 100644 gas/testsuite/gas/s12z/brclr-symbols.s
create mode 100644 gas/testsuite/gas/s12z/brset-clr-opr-imm-rel.d
create mode 100644 gas/testsuite/gas/s12z/brset-clr-opr-imm-rel.s
create mode 100644 gas/testsuite/gas/s12z/brset-clr-opr-reg-rel.d
create mode 100644 gas/testsuite/gas/s12z/brset-clr-opr-reg-rel.s
create mode 100644 gas/testsuite/gas/s12z/brset-clr-reg-imm-rel.d
create mode 100644 gas/testsuite/gas/s12z/brset-clr-reg-imm-rel.s
create mode 100644 gas/testsuite/gas/s12z/brset-clr-reg-reg-rel.d
create mode 100644 gas/testsuite/gas/s12z/brset-clr-reg-reg-rel.s
create mode 100644 gas/testsuite/gas/s12z/clb.d
create mode 100644 gas/testsuite/gas/s12z/clb.s
create mode 100644 gas/testsuite/gas/s12z/clr-opr.d
create mode 100644 gas/testsuite/gas/s12z/clr-opr.s
create mode 100644 gas/testsuite/gas/s12z/clr.d
create mode 100644 gas/testsuite/gas/s12z/clr.s
create mode 100644 gas/testsuite/gas/s12z/cmp-imm.d
create mode 100644 gas/testsuite/gas/s12z/cmp-imm.s
create mode 100644 gas/testsuite/gas/s12z/cmp-opr-inc.d
create mode 100644 gas/testsuite/gas/s12z/cmp-opr-inc.s
create mode 100644 gas/testsuite/gas/s12z/cmp-opr-rdirect.d
create mode 100644 gas/testsuite/gas/s12z/cmp-opr-rdirect.s
create mode 100644 gas/testsuite/gas/s12z/cmp-opr-reg.d
create mode 100644 gas/testsuite/gas/s12z/cmp-opr-reg.s
create mode 100644 gas/testsuite/gas/s12z/cmp-opr-rindirect.d
create mode 100644 gas/testsuite/gas/s12z/cmp-opr-rindirect.s
create mode 100644 gas/testsuite/gas/s12z/cmp-opr-sxe4.d
create mode 100644 gas/testsuite/gas/s12z/cmp-opr-sxe4.s
create mode 100644 gas/testsuite/gas/s12z/cmp-opr-xys.d
create mode 100644 gas/testsuite/gas/s12z/cmp-opr-xys.s
create mode 100644 gas/testsuite/gas/s12z/cmp-s-imm.d
create mode 100644 gas/testsuite/gas/s12z/cmp-s-imm.s
create mode 100644 gas/testsuite/gas/s12z/cmp-s-opr.d
create mode 100644 gas/testsuite/gas/s12z/cmp-s-opr.s
create mode 100644 gas/testsuite/gas/s12z/cmp-xy.d
create mode 100644 gas/testsuite/gas/s12z/cmp-xy.s
create mode 100644 gas/testsuite/gas/s12z/com-opr.d
create mode 100644 gas/testsuite/gas/s12z/com-opr.s
create mode 100644 gas/testsuite/gas/s12z/complex-shifts.d
create mode 100644 gas/testsuite/gas/s12z/complex-shifts.s
create mode 100644 gas/testsuite/gas/s12z/db-tb-cc-opr.d
create mode 100644 gas/testsuite/gas/s12z/db-tb-cc-opr.s
create mode 100644 gas/testsuite/gas/s12z/db-tb-cc-reg.d
create mode 100644 gas/testsuite/gas/s12z/db-tb-cc-reg.s
create mode 100644 gas/testsuite/gas/s12z/dbCC.d
create mode 100644 gas/testsuite/gas/s12z/dbCC.s
create mode 100644 gas/testsuite/gas/s12z/dec-opr.d
create mode 100644 gas/testsuite/gas/s12z/dec-opr.s
create mode 100644 gas/testsuite/gas/s12z/dec.d
create mode 100644 gas/testsuite/gas/s12z/dec.s
create mode 100644 gas/testsuite/gas/s12z/div.d
create mode 100644 gas/testsuite/gas/s12z/div.s
create mode 100644 gas/testsuite/gas/s12z/eor.d
create mode 100644 gas/testsuite/gas/s12z/eor.s
create mode 100644 gas/testsuite/gas/s12z/exg.d
create mode 100644 gas/testsuite/gas/s12z/exg.s
create mode 100644 gas/testsuite/gas/s12z/ext24-ld-xy.d
create mode 100644 gas/testsuite/gas/s12z/ext24-ld-xy.s
create mode 100644 gas/testsuite/gas/s12z/inc-opr.d
create mode 100644 gas/testsuite/gas/s12z/inc-opr.s
create mode 100644 gas/testsuite/gas/s12z/inc.d
create mode 100644 gas/testsuite/gas/s12z/inc.s
create mode 100644 gas/testsuite/gas/s12z/inh.d
create mode 100644 gas/testsuite/gas/s12z/inh.s
create mode 100644 gas/testsuite/gas/s12z/jmp.d
create mode 100644 gas/testsuite/gas/s12z/jmp.s
create mode 100644 gas/testsuite/gas/s12z/jsr.d
create mode 100644 gas/testsuite/gas/s12z/jsr.s
create mode 100644 gas/testsuite/gas/s12z/ld-imm-page2.d
create mode 100644 gas/testsuite/gas/s12z/ld-imm-page2.s
create mode 100644 gas/testsuite/gas/s12z/ld-imm.d
create mode 100644 gas/testsuite/gas/s12z/ld-imm.s
create mode 100644 gas/testsuite/gas/s12z/ld-immu18.d
create mode 100644 gas/testsuite/gas/s12z/ld-immu18.s
create mode 100644 gas/testsuite/gas/s12z/ld-large-direct.d
create mode 100644 gas/testsuite/gas/s12z/ld-large-direct.s
create mode 100644 gas/testsuite/gas/s12z/ld-opr.d
create mode 100644 gas/testsuite/gas/s12z/ld-opr.s
create mode 100644 gas/testsuite/gas/s12z/ld-s-opr.d
create mode 100644 gas/testsuite/gas/s12z/ld-s-opr.s
create mode 100644 gas/testsuite/gas/s12z/ld-small-direct.d
create mode 100644 gas/testsuite/gas/s12z/ld-small-direct.s
create mode 100644 gas/testsuite/gas/s12z/lea-immu18.d
create mode 100644 gas/testsuite/gas/s12z/lea-immu18.s
create mode 100644 gas/testsuite/gas/s12z/lea.d
create mode 100644 gas/testsuite/gas/s12z/lea.s
create mode 100644 gas/testsuite/gas/s12z/mac.d
create mode 100644 gas/testsuite/gas/s12z/mac.s
create mode 100644 gas/testsuite/gas/s12z/min-max.d
create mode 100644 gas/testsuite/gas/s12z/min-max.s
create mode 100644 gas/testsuite/gas/s12z/mod.d
create mode 100644 gas/testsuite/gas/s12z/mod.s
create mode 100644 gas/testsuite/gas/s12z/mov.d
create mode 100644 gas/testsuite/gas/s12z/mov.s
create mode 100644 gas/testsuite/gas/s12z/mul-imm.d
create mode 100644 gas/testsuite/gas/s12z/mul-imm.s
create mode 100644 gas/testsuite/gas/s12z/mul-opr-opr.d
create mode 100644 gas/testsuite/gas/s12z/mul-opr-opr.s
create mode 100644 gas/testsuite/gas/s12z/mul-opr.d
create mode 100644 gas/testsuite/gas/s12z/mul-opr.s
create mode 100644 gas/testsuite/gas/s12z/mul-reg.d
create mode 100644 gas/testsuite/gas/s12z/mul-reg.s
create mode 100644 gas/testsuite/gas/s12z/mul.d
create mode 100644 gas/testsuite/gas/s12z/mul.s
create mode 100644 gas/testsuite/gas/s12z/neg-opr.d
create mode 100644 gas/testsuite/gas/s12z/neg-opr.s
create mode 100644 gas/testsuite/gas/s12z/not-so-simple-shifts.d
create mode 100644 gas/testsuite/gas/s12z/not-so-simple-shifts.s
create mode 100644 gas/testsuite/gas/s12z/opr-18u.d
create mode 100644 gas/testsuite/gas/s12z/opr-18u.s
create mode 100644 gas/testsuite/gas/s12z/opr-expr.d
create mode 100644 gas/testsuite/gas/s12z/opr-expr.s
create mode 100644 gas/testsuite/gas/s12z/opr-ext-18.d
create mode 100644 gas/testsuite/gas/s12z/opr-ext-18.s
create mode 100644 gas/testsuite/gas/s12z/opr-idx-24-reg.d
create mode 100644 gas/testsuite/gas/s12z/opr-idx-24-reg.s
create mode 100644 gas/testsuite/gas/s12z/opr-idx3-reg.d
create mode 100644 gas/testsuite/gas/s12z/opr-idx3-reg.s
create mode 100644 gas/testsuite/gas/s12z/opr-idx3-xysp-24.d
create mode 100644 gas/testsuite/gas/s12z/opr-idx3-xysp-24.s
create mode 100644 gas/testsuite/gas/s12z/opr-indirect-expr.d
create mode 100644 gas/testsuite/gas/s12z/opr-indirect-expr.s
create mode 100644 gas/testsuite/gas/s12z/opr-symbol.d
create mode 100644 gas/testsuite/gas/s12z/opr-symbol.s
create mode 100644 gas/testsuite/gas/s12z/or-imm.d
create mode 100644 gas/testsuite/gas/s12z/or-imm.s
create mode 100644 gas/testsuite/gas/s12z/or-opr.d
create mode 100644 gas/testsuite/gas/s12z/or-opr.s
create mode 100644 gas/testsuite/gas/s12z/p2-mul.d
create mode 100644 gas/testsuite/gas/s12z/p2-mul.s
create mode 100644 gas/testsuite/gas/s12z/page2-inh.d
create mode 100644 gas/testsuite/gas/s12z/page2-inh.s
create mode 100644 gas/testsuite/gas/s12z/psh-pul.d
create mode 100644 gas/testsuite/gas/s12z/psh-pul.s
create mode 100644 gas/testsuite/gas/s12z/qmul.d
create mode 100644 gas/testsuite/gas/s12z/qmul.s
create mode 100644 gas/testsuite/gas/s12z/rotate.d
create mode 100644 gas/testsuite/gas/s12z/rotate.s
create mode 100644 gas/testsuite/gas/s12z/s12z.exp
create mode 100644 gas/testsuite/gas/s12z/sat.d
create mode 100644 gas/testsuite/gas/s12z/sat.s
create mode 100644 gas/testsuite/gas/s12z/sbc-imm.d
create mode 100644 gas/testsuite/gas/s12z/sbc-imm.s
create mode 100644 gas/testsuite/gas/s12z/sbc-opr.d
create mode 100644 gas/testsuite/gas/s12z/sbc-opr.s
create mode 100644 gas/testsuite/gas/s12z/shift.d
create mode 100644 gas/testsuite/gas/s12z/shift.s
create mode 100644 gas/testsuite/gas/s12z/simple-shift.d
create mode 100644 gas/testsuite/gas/s12z/simple-shift.s
create mode 100644 gas/testsuite/gas/s12z/single-ops.d
create mode 100644 gas/testsuite/gas/s12z/single-ops.s
create mode 100644 gas/testsuite/gas/s12z/specd6.d
create mode 100644 gas/testsuite/gas/s12z/specd6.s
create mode 100644 gas/testsuite/gas/s12z/st-large-direct.d
create mode 100644 gas/testsuite/gas/s12z/st-large-direct.s
create mode 100644 gas/testsuite/gas/s12z/st-opr.d
create mode 100644 gas/testsuite/gas/s12z/st-opr.s
create mode 100644 gas/testsuite/gas/s12z/st-s-opr.d
create mode 100644 gas/testsuite/gas/s12z/st-s-opr.s
create mode 100644 gas/testsuite/gas/s12z/st-small-direct.d
create mode 100644 gas/testsuite/gas/s12z/st-small-direct.s
create mode 100644 gas/testsuite/gas/s12z/st-xy.d
create mode 100644 gas/testsuite/gas/s12z/st-xy.s
create mode 100644 gas/testsuite/gas/s12z/sub-imm.d
create mode 100644 gas/testsuite/gas/s12z/sub-imm.s
create mode 100644 gas/testsuite/gas/s12z/sub-opr.d
create mode 100644 gas/testsuite/gas/s12z/sub-opr.s
create mode 100644 gas/testsuite/gas/s12z/tfr.d
create mode 100644 gas/testsuite/gas/s12z/tfr.s
create mode 100644 gas/testsuite/gas/s12z/trap.d
create mode 100644 gas/testsuite/gas/s12z/trap.s
create mode 100644 gas/testsuite/gas/s390/zarch-z990-symbol-lay.l
create mode 100644 gas/testsuite/gas/s390/zarch-z990-symbol-lay.s
delete mode 100644 gas/testsuite/gas/sh/sh64/abi-32.d
delete mode 100644 gas/testsuite/gas/sh/sh64/abi-32.s
delete mode 100644 gas/testsuite/gas/sh/sh64/abi-64.d
delete mode 100644 gas/testsuite/gas/sh/sh64/abi-64.s
delete mode 100644 gas/testsuite/gas/sh/sh64/basic-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/basic-1.s
delete mode 100644 gas/testsuite/gas/sh/sh64/case-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/case-1.s
delete mode 100644 gas/testsuite/gas/sh/sh64/case-noexp-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/crange1-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/crange1-2.d
delete mode 100644 gas/testsuite/gas/sh/sh64/crange1.s
delete mode 100644 gas/testsuite/gas/sh/sh64/crange2-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/crange2-2.d
delete mode 100644 gas/testsuite/gas/sh/sh64/crange2-noexp-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/crange2.s
delete mode 100644 gas/testsuite/gas/sh/sh64/crange3-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/crange3.s
delete mode 100644 gas/testsuite/gas/sh/sh64/crange4-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/crange4.s
delete mode 100644 gas/testsuite/gas/sh/sh64/crange5-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/crange5.s
delete mode 100644 gas/testsuite/gas/sh/sh64/creg-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/creg-1.s
delete mode 100644 gas/testsuite/gas/sh/sh64/creg-2.d
delete mode 100644 gas/testsuite/gas/sh/sh64/creg-2.s
delete mode 100644 gas/testsuite/gas/sh/sh64/datal-1.s
delete mode 100644 gas/testsuite/gas/sh/sh64/datal-2.d
delete mode 100644 gas/testsuite/gas/sh/sh64/datal-2.s
delete mode 100644 gas/testsuite/gas/sh/sh64/datal-3.s
delete mode 100644 gas/testsuite/gas/sh/sh64/datal32-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/datal32-3.d
delete mode 100644 gas/testsuite/gas/sh/sh64/datal64-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/datal64-3.d
delete mode 100644 gas/testsuite/gas/sh/sh64/eh-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/eh-1.s
delete mode 100644 gas/testsuite/gas/sh/sh64/endian-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/endian-1.s
delete mode 100644 gas/testsuite/gas/sh/sh64/endian-2.d
delete mode 100644 gas/testsuite/gas/sh/sh64/endian-2.s
delete mode 100644 gas/testsuite/gas/sh/sh64/err-1.s
delete mode 100644 gas/testsuite/gas/sh/sh64/err-2.s
delete mode 100644 gas/testsuite/gas/sh/sh64/err-3.s
delete mode 100644 gas/testsuite/gas/sh/sh64/err-4.s
delete mode 100644 gas/testsuite/gas/sh/sh64/err-abi-32.s
delete mode 100644 gas/testsuite/gas/sh/sh64/err-abi-64.s
delete mode 100644 gas/testsuite/gas/sh/sh64/err-dsp.s
delete mode 100644 gas/testsuite/gas/sh/sh64/err-movi-noexp-1.s
delete mode 100644 gas/testsuite/gas/sh/sh64/err-noexp-cmd1.s
delete mode 100644 gas/testsuite/gas/sh/sh64/err-pt-1.s
delete mode 100644 gas/testsuite/gas/sh/sh64/err-pt32-cmd1.s
delete mode 100644 gas/testsuite/gas/sh/sh64/err-pt32-cmd2.s
delete mode 100644 gas/testsuite/gas/sh/sh64/err-pt32-cmd3.s
delete mode 100644 gas/testsuite/gas/sh/sh64/err-ptb-1.s
delete mode 100644 gas/testsuite/gas/sh/sh64/err-ptb-2.s
delete mode 100644 gas/testsuite/gas/sh/sh64/err.exp
delete mode 100644 gas/testsuite/gas/sh/sh64/immexpr1.s
delete mode 100644 gas/testsuite/gas/sh/sh64/immexpr2.s
delete mode 100644 gas/testsuite/gas/sh/sh64/immexpr32-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/immexpr32-2.d
delete mode 100644 gas/testsuite/gas/sh/sh64/immexpr64-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/immexpr64-2.d
delete mode 100644 gas/testsuite/gas/sh/sh64/lineno.d
delete mode 100644 gas/testsuite/gas/sh/sh64/lineno.s
delete mode 100644 gas/testsuite/gas/sh/sh64/localcom-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/localcom-1.s
delete mode 100644 gas/testsuite/gas/sh/sh64/mix-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/mix-1.s
delete mode 100644 gas/testsuite/gas/sh/sh64/mix-noexp-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/movi-1.s
delete mode 100644 gas/testsuite/gas/sh/sh64/movi-2.s
delete mode 100644 gas/testsuite/gas/sh/sh64/movi-3.d
delete mode 100644 gas/testsuite/gas/sh/sh64/movi-3.s
delete mode 100644 gas/testsuite/gas/sh/sh64/movi32-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/movi32-2.d
delete mode 100644 gas/testsuite/gas/sh/sh64/movi32-noexp-2.d
delete mode 100644 gas/testsuite/gas/sh/sh64/movi64-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/movi64-2.d
delete mode 100644 gas/testsuite/gas/sh/sh64/movi64-2.s
delete mode 100644 gas/testsuite/gas/sh/sh64/movi64-3.d
delete mode 100644 gas/testsuite/gas/sh/sh64/movi64-noexp-2.d
delete mode 100644 gas/testsuite/gas/sh/sh64/pt-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/pt-1.s
delete mode 100644 gas/testsuite/gas/sh/sh64/pt-2.s
delete mode 100644 gas/testsuite/gas/sh/sh64/pt-noexp-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/pt32-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/pt32-noexp-2.d
delete mode 100644 gas/testsuite/gas/sh/sh64/pt64-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/pt64-32-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/pt64-32-2.d
delete mode 100644 gas/testsuite/gas/sh/sh64/pt64-noexp-2.d
delete mode 100644 gas/testsuite/gas/sh/sh64/ptc-1.s
delete mode 100644 gas/testsuite/gas/sh/sh64/ptc32-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/ptc32-noexp-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/ptc64-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/ptc64-32-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/ptc64-noexp-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/ptext-1.s
delete mode 100644 gas/testsuite/gas/sh/sh64/ptext32-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/ptext32-noexp-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/ptext64-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/ptext64-32-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/ptext64-noexp-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/rel-1.s
delete mode 100644 gas/testsuite/gas/sh/sh64/rel-2.s
delete mode 100644 gas/testsuite/gas/sh/sh64/rel-3.s
delete mode 100644 gas/testsuite/gas/sh/sh64/rel-4.s
delete mode 100644 gas/testsuite/gas/sh/sh64/rel-5.s
delete mode 100644 gas/testsuite/gas/sh/sh64/rel32-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/rel32-2.d
delete mode 100644 gas/testsuite/gas/sh/sh64/rel32-3.d
delete mode 100644 gas/testsuite/gas/sh/sh64/rel32-4.d
delete mode 100644 gas/testsuite/gas/sh/sh64/rel32-5.d
delete mode 100644 gas/testsuite/gas/sh/sh64/rel64-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/rel64-2.d
delete mode 100644 gas/testsuite/gas/sh/sh64/rel64-3.d
delete mode 100644 gas/testsuite/gas/sh/sh64/rel64-4.d
delete mode 100644 gas/testsuite/gas/sh/sh64/rel64-5.d
delete mode 100644 gas/testsuite/gas/sh/sh64/relax-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/relax-1.s
delete mode 100644 gas/testsuite/gas/sh/sh64/relax-2.d
delete mode 100644 gas/testsuite/gas/sh/sh64/relax-2.s
delete mode 100644 gas/testsuite/gas/sh/sh64/relax-3.d
delete mode 100644 gas/testsuite/gas/sh/sh64/relax-3.s
delete mode 100644 gas/testsuite/gas/sh/sh64/sh64.exp
delete mode 100644 gas/testsuite/gas/sh/sh64/shift-1.s
delete mode 100644 gas/testsuite/gas/sh/sh64/shift-2.s
delete mode 100644 gas/testsuite/gas/sh/sh64/shift-3.s
delete mode 100644 gas/testsuite/gas/sh/sh64/shift32-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/shift32-3.d
delete mode 100644 gas/testsuite/gas/sh/sh64/shift32-noexp-3.d
delete mode 100644 gas/testsuite/gas/sh/sh64/shift64-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/shift64-2.d
delete mode 100644 gas/testsuite/gas/sh/sh64/shift64-3.d
delete mode 100644 gas/testsuite/gas/sh/sh64/shift64-noexp-3.d
delete mode 100644 gas/testsuite/gas/sh/sh64/syntax-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/syntax-1.s
delete mode 100644 gas/testsuite/gas/sh/sh64/syntax-2.d
delete mode 100644 gas/testsuite/gas/sh/sh64/syntax-2.s
delete mode 100644 gas/testsuite/gas/sh/sh64/ua-1.s
delete mode 100644 gas/testsuite/gas/sh/sh64/ua32-1.d
delete mode 100644 gas/testsuite/gas/sh/sh64/ua64-1.d
create mode 100644 gas/testsuite/gas/sparc/call-relax-aout.d
create mode 100644 gas/testsuite/gas/sparc/call-relax.d
create mode 100644 gas/testsuite/gas/sparc/call-relax.s
create mode 100644 gas/testsuite/gas/sparc/fpcmpshl-diag.l
create mode 100644 gas/testsuite/gas/sparc/fpcmpshl-diag.s
create mode 100644 gas/testsuite/gas/sparc/fpcmpshl.d
create mode 100644 gas/testsuite/gas/sparc/fpcmpshl.s
create mode 100644 gas/testsuite/gas/sparc/ldm-stm-diag.l
create mode 100644 gas/testsuite/gas/sparc/ldm-stm-diag.s
create mode 100644 gas/testsuite/gas/sparc/ldm-stm.d
create mode 100644 gas/testsuite/gas/sparc/ldm-stm.s
create mode 100644 gas/testsuite/gas/sparc/ldmf-stmf-diag.l
create mode 100644 gas/testsuite/gas/sparc/ldmf-stmf-diag.s
create mode 100644 gas/testsuite/gas/sparc/ldmf-stmf.d
create mode 100644 gas/testsuite/gas/sparc/ldmf-stmf.s
create mode 100644 gas/testsuite/gas/sparc/leon.d
create mode 100644 gas/testsuite/gas/sparc/leon.s
create mode 100644 gas/testsuite/gas/sparc/on-diag.l
create mode 100644 gas/testsuite/gas/sparc/on-diag.s
create mode 100644 gas/testsuite/gas/sparc/on.d
create mode 100644 gas/testsuite/gas/sparc/on.s
create mode 100644 gas/testsuite/gas/sparc/rle.d
create mode 100644 gas/testsuite/gas/sparc/rle.s
create mode 100644 gas/testsuite/gas/sparc/sparc6-diag.l
create mode 100644 gas/testsuite/gas/sparc/sparc6-diag.s
create mode 100644 gas/testsuite/gas/sparc/sparc6.d
create mode 100644 gas/testsuite/gas/sparc/sparc6.s
create mode 100644 gas/testsuite/gas/sparc/v8branch.d
create mode 100644 gas/testsuite/gas/sparc/v8branch.s
delete mode 100644 gas/testsuite/gas/sun4/addend.d
delete mode 100644 gas/testsuite/gas/sun4/addend.exp
delete mode 100644 gas/testsuite/gas/sun4/addend.s
create mode 100644 gas/testsuite/gas/xtensa/auto-litpools-2.d
create mode 100644 gas/testsuite/gas/xtensa/auto-litpools-2.s
create mode 100644 gas/testsuite/gas/xtensa/auto-litpools-3.d
create mode 100644 gas/testsuite/gas/xtensa/auto-litpools-3.s
create mode 100644 gas/testsuite/gas/xtensa/auto-litpools-4.d
create mode 100644 gas/testsuite/gas/xtensa/auto-litpools-4.s
create mode 100644 gas/testsuite/gas/xtensa/auto-litpools-first1.d
create mode 100644 gas/testsuite/gas/xtensa/auto-litpools-first1.s
create mode 100644 gas/testsuite/gas/xtensa/auto-litpools-first2.d
create mode 100644 gas/testsuite/gas/xtensa/auto-litpools-first2.s
create mode 100644 gas/testsuite/gas/xtensa/text-section-literals-1.d
create mode 100644 gas/testsuite/gas/xtensa/text-section-literals-1.s
create mode 100644 gas/testsuite/gas/xtensa/trampoline-2.l
create mode 100644 gas/testsuite/gas/xtensa/trampoline-2.s
create mode 100644 gdb/ChangeLog-2017
create mode 100644 gdb/aarch64-fbsd-nat.c
create mode 100644 gdb/aarch64-fbsd-tdep.c
create mode 100644 gdb/aarch64-fbsd-tdep.h
create mode 100644 gdb/aarch64-ravenscar-thread.c
create mode 100644 gdb/aarch64-ravenscar-thread.h
create mode 100644 gdb/amd64-bsd-nat.h
create mode 100644 gdb/arch/aarch64.c
create mode 100644 gdb/arch/aarch64.h
create mode 100644 gdb/arch/amd64.c
create mode 100644 gdb/arch/amd64.h
create mode 100644 gdb/arch/i386.c
create mode 100644 gdb/arch/i386.h
create mode 100644 gdb/arch/ppc-linux-common.c
create mode 100644 gdb/arch/ppc-linux-common.h
create mode 100644 gdb/arch/ppc-linux-tdesc.h
create mode 100644 gdb/arch/tic6x.c
create mode 100644 gdb/arch/tic6x.h
create mode 100644 gdb/arm-fbsd-nat.c
create mode 100644 gdb/arm-fbsd-tdep.c
create mode 100644 gdb/arm-fbsd-tdep.h
create mode 100644 gdb/arm-pikeos-tdep.c
create mode 100644 gdb/buildsym-legacy.c
create mode 100644 gdb/buildsym-legacy.h
create mode 100644 gdb/c-support.h
create mode 100644 gdb/common/array-view.h
create mode 100644 gdb/common/byte-vector.h
create mode 100644 gdb/common/common-gdbthread.h
create mode 100644 gdb/common/common-inferior.h
create mode 100644 gdb/common/def-vector.h
create mode 100644 gdb/common/default-init-alloc.h
create mode 100644 gdb/common/gdb_proc_service.h
create mode 100644 gdb/common/gdb_splay_tree.h
create mode 100644 gdb/common/gdb_string_view.h
create mode 100644 gdb/common/gdb_string_view.tcc
create mode 100644 gdb/common/gdb_tilde_expand.c
create mode 100644 gdb/common/gdb_tilde_expand.h
create mode 100644 gdb/common/hash_enum.h
create mode 100644 gdb/common/job-control.c
create mode 100644 gdb/common/job-control.h
create mode 100644 gdb/common/netstuff.c
create mode 100644 gdb/common/netstuff.h
create mode 100644 gdb/common/observable.h
create mode 100644 gdb/common/pathstuff.c
create mode 100644 gdb/common/pathstuff.h
create mode 100644 gdb/common/poison.h
create mode 100644 gdb/common/refcounted-object.h
create mode 100644 gdb/common/scoped_fd.h
create mode 100644 gdb/common/scoped_mmap.c
create mode 100644 gdb/common/scoped_mmap.h
create mode 100644 gdb/common/selftest.c
create mode 100644 gdb/common/selftest.h
create mode 100644 gdb/common/tdesc.c
create mode 100644 gdb/common/tdesc.h
create mode 100644 gdb/compile/compile-c.h
create mode 100644 gdb/compile/compile-cplus-symbols.c
create mode 100644 gdb/compile/compile-cplus-types.c
create mode 100644 gdb/compile/compile-cplus.h
create mode 100644 gdb/compile/gcc-c-plugin.h
create mode 100644 gdb/compile/gcc-cp-plugin.h
delete mode 100644 gdb/config/aarch64/linux.mh
delete mode 100644 gdb/config/alpha/alpha-linux.mh
delete mode 100644 gdb/config/alpha/nbsd.mh
delete mode 100644 gdb/config/arm/linux.mh
delete mode 100644 gdb/config/arm/nbsdelf.mh
delete mode 100644 gdb/config/i386/cygwin.mh
delete mode 100644 gdb/config/i386/cygwin64.mh
delete mode 100644 gdb/config/i386/darwin.mh
delete mode 100644 gdb/config/i386/fbsd.mh
delete mode 100644 gdb/config/i386/fbsd64.mh
delete mode 100644 gdb/config/i386/go32.mh
delete mode 100644 gdb/config/i386/i386gnu.mh
create mode 100644 gdb/config/i386/i386gnu.mn
delete mode 100644 gdb/config/i386/i386sol2.mh
delete mode 100644 gdb/config/i386/linux.mh
delete mode 100644 gdb/config/i386/linux64.mh
delete mode 100644 gdb/config/i386/mingw.mh
delete mode 100644 gdb/config/i386/mingw64.mh
delete mode 100644 gdb/config/i386/nbsd64.mh
delete mode 100644 gdb/config/i386/nbsdelf.mh
delete mode 100644 gdb/config/i386/nto.mh
delete mode 100644 gdb/config/i386/obsd.mh
delete mode 100644 gdb/config/i386/obsd64.mh
delete mode 100644 gdb/config/i386/sol2-64.mh
delete mode 100644 gdb/config/ia64/linux.mh
delete mode 100644 gdb/config/m32r/linux.mh
delete mode 100644 gdb/config/m68k/linux.mh
delete mode 100644 gdb/config/m68k/nbsdelf.mh
delete mode 100644 gdb/config/m68k/obsd.mh
delete mode 100644 gdb/config/m88k/obsd.mh
delete mode 100644 gdb/config/mips/fbsd.mh
delete mode 100644 gdb/config/mips/linux.mh
delete mode 100644 gdb/config/mips/nbsd.mh
delete mode 100644 gdb/config/mips/obsd64.mh
delete mode 100644 gdb/config/pa/linux.mh
delete mode 100644 gdb/config/pa/nbsd.mh
delete mode 100644 gdb/config/pa/obsd.mh
delete mode 100644 gdb/config/powerpc/aix.mh
delete mode 100644 gdb/config/powerpc/fbsd.mh
delete mode 100644 gdb/config/powerpc/linux.mh
delete mode 100644 gdb/config/powerpc/nbsd.mh
delete mode 100644 gdb/config/powerpc/obsd.mh
delete mode 100644 gdb/config/powerpc/ppc64-linux.mh
delete mode 100644 gdb/config/powerpc/spu-linux.mh
delete mode 100644 gdb/config/s390/linux.mh
delete mode 100644 gdb/config/sh/nbsd.mh
delete mode 100644 gdb/config/sparc/fbsd.mh
delete mode 100644 gdb/config/sparc/linux.mh
delete mode 100644 gdb/config/sparc/linux64.mh
delete mode 100644 gdb/config/sparc/nbsd64.mh
delete mode 100644 gdb/config/sparc/nbsdelf.mh
delete mode 100644 gdb/config/sparc/obsd64.mh
delete mode 100644 gdb/config/sparc/sol2.mh
delete mode 100644 gdb/config/tilegx/linux.mh
delete mode 100644 gdb/config/vax/nbsdelf.mh
delete mode 100644 gdb/config/vax/obsd.mh
delete mode 100644 gdb/config/xtensa/linux.mh
create mode 100644 gdb/configure.nat
delete mode 100644 gdb/core-regset.c
create mode 100644 gdb/csky-linux-tdep.c
create mode 100644 gdb/csky-tdep.c
create mode 100644 gdb/csky-tdep.h
delete mode 100644 gdb/dfp.c
delete mode 100644 gdb/dfp.h
delete mode 100644 gdb/doc/observer.texi
delete mode 100644 gdb/doublest.c
delete mode 100644 gdb/doublest.h
create mode 100644 gdb/dwarf-index-cache.c
create mode 100644 gdb/dwarf-index-cache.h
create mode 100644 gdb/dwarf-index-common.c
create mode 100644 gdb/dwarf-index-common.h
create mode 100644 gdb/dwarf-index-write.c
create mode 100644 gdb/dwarf-index-write.h
create mode 100644 gdb/dwarf2read.h
create mode 100644 gdb/features/aarch64-core.c
create mode 100644 gdb/features/aarch64-fpu.c
create mode 100644 gdb/features/aarch64-sve.c
delete mode 100644 gdb/features/aarch64.c
create mode 100644 gdb/features/i386/32bit-avx.c
create mode 100644 gdb/features/i386/32bit-avx512.c
create mode 100644 gdb/features/i386/32bit-core.c
create mode 100644 gdb/features/i386/32bit-linux.c
create mode 100644 gdb/features/i386/32bit-mpx.c
create mode 100644 gdb/features/i386/32bit-pkeys.c
create mode 100644 gdb/features/i386/32bit-sse.c
create mode 100644 gdb/features/i386/64bit-avx.c
create mode 100644 gdb/features/i386/64bit-avx512.c
create mode 100644 gdb/features/i386/64bit-core.c
create mode 100644 gdb/features/i386/64bit-linux.c
create mode 100644 gdb/features/i386/64bit-mpx.c
create mode 100644 gdb/features/i386/64bit-pkeys.c
create mode 100644 gdb/features/i386/64bit-segments.c
create mode 100644 gdb/features/i386/64bit-sse.c
delete mode 100644 gdb/features/i386/amd64-avx-avx512-linux.c
delete mode 100644 gdb/features/i386/amd64-avx-avx512.c
delete mode 100644 gdb/features/i386/amd64-avx-linux.c
delete mode 100644 gdb/features/i386/amd64-avx-mpx-avx512-pku-linux.c
delete mode 100644 gdb/features/i386/amd64-avx-mpx-avx512-pku.c
delete mode 100644 gdb/features/i386/amd64-avx-mpx-linux.c
delete mode 100644 gdb/features/i386/amd64-avx-mpx.c
delete mode 100644 gdb/features/i386/amd64-avx.c
delete mode 100644 gdb/features/i386/amd64-linux.c
delete mode 100644 gdb/features/i386/amd64-mpx-linux.c
delete mode 100644 gdb/features/i386/amd64-mpx.c
delete mode 100644 gdb/features/i386/amd64.c
delete mode 100644 gdb/features/i386/i386-avx-avx512-linux.c
delete mode 100644 gdb/features/i386/i386-avx-avx512.c
delete mode 100644 gdb/features/i386/i386-avx-linux.c
delete mode 100644 gdb/features/i386/i386-avx-mpx-avx512-pku-linux.c
delete mode 100644 gdb/features/i386/i386-avx-mpx-avx512-pku.c
delete mode 100644 gdb/features/i386/i386-avx-mpx-linux.c
delete mode 100644 gdb/features/i386/i386-avx-mpx.c
delete mode 100644 gdb/features/i386/i386-avx.c
delete mode 100644 gdb/features/i386/i386-linux.c
delete mode 100644 gdb/features/i386/i386-mmx-linux.c
delete mode 100644 gdb/features/i386/i386-mmx.c
delete mode 100644 gdb/features/i386/i386-mpx-linux.c
delete mode 100644 gdb/features/i386/i386-mpx.c
delete mode 100644 gdb/features/i386/i386.c
delete mode 100644 gdb/features/i386/x32-avx-avx512-linux.c
delete mode 100644 gdb/features/i386/x32-avx-avx512.c
delete mode 100644 gdb/features/i386/x32-avx-avx512.xml
delete mode 100644 gdb/features/i386/x32-avx-linux.c
delete mode 100644 gdb/features/i386/x32-avx.c
delete mode 100644 gdb/features/i386/x32-avx.xml
create mode 100644 gdb/features/i386/x32-core.c
delete mode 100644 gdb/features/i386/x32-linux.c
delete mode 100644 gdb/features/i386/x32.c
delete mode 100644 gdb/features/i386/x32.xml
delete mode 100644 gdb/features/nios2-linux.c
create mode 100644 gdb/features/or1k-core.xml
create mode 100644 gdb/features/or1k.c
create mode 100644 gdb/features/or1k.xml
create mode 100644 gdb/features/rs6000/power-dscr.xml
create mode 100644 gdb/features/rs6000/power-ebb.xml
create mode 100644 gdb/features/rs6000/power-htm-altivec.xml
create mode 100644 gdb/features/rs6000/power-htm-core.xml
create mode 100644 gdb/features/rs6000/power-htm-dscr.xml
create mode 100644 gdb/features/rs6000/power-htm-fpu.xml
create mode 100644 gdb/features/rs6000/power-htm-ppr.xml
create mode 100644 gdb/features/rs6000/power-htm-spr.xml
create mode 100644 gdb/features/rs6000/power-htm-tar.xml
create mode 100644 gdb/features/rs6000/power-htm-vsx.xml
create mode 100644 gdb/features/rs6000/power-linux-pmu.xml
create mode 100644 gdb/features/rs6000/power-ppr.xml
create mode 100644 gdb/features/rs6000/power-tar.xml
create mode 100644 gdb/features/rs6000/power64-htm-core.xml
create mode 100644 gdb/features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c
create mode 100644 gdb/features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml
create mode 100644 gdb/features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c
create mode 100644 gdb/features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml
create mode 100644 gdb/features/rs6000/powerpc-isa207-htm-vsx32l.c
create mode 100644 gdb/features/rs6000/powerpc-isa207-htm-vsx32l.xml
create mode 100644 gdb/features/rs6000/powerpc-isa207-htm-vsx64l.c
create mode 100644 gdb/features/rs6000/powerpc-isa207-htm-vsx64l.xml
create mode 100644 gdb/features/rs6000/powerpc-isa207-vsx32l.c
create mode 100644 gdb/features/rs6000/powerpc-isa207-vsx32l.xml
create mode 100644 gdb/features/rs6000/powerpc-isa207-vsx64l.c
create mode 100644 gdb/features/rs6000/powerpc-isa207-vsx64l.xml
create mode 100644 gdb/features/s390-gs-linux64.c
create mode 100644 gdb/features/s390-gs-linux64.xml
create mode 100644 gdb/features/s390-gs.xml
create mode 100644 gdb/features/s390-gsbc.xml
create mode 100644 gdb/features/s390x-gs-linux64.c
create mode 100644 gdb/features/s390x-gs-linux64.xml
delete mode 100644 gdb/features/tic6x-c62x-linux.c
delete mode 100644 gdb/features/tic6x-c62x.c
delete mode 100644 gdb/features/tic6x-c62x.xml
delete mode 100644 gdb/features/tic6x-c64x-linux.c
delete mode 100644 gdb/features/tic6x-c64x.c
delete mode 100644 gdb/features/tic6x-c64x.xml
delete mode 100644 gdb/features/tic6x-c64xp-linux.c
delete mode 100644 gdb/features/tic6x-c64xp.c
delete mode 100644 gdb/features/tic6x-c64xp.xml
create mode 100644 gdb/features/tic6x-c6xp.c
create mode 100644 gdb/features/tic6x-core.c
create mode 100644 gdb/features/tic6x-gp.c
create mode 100644 gdb/filename-seen-cache.c
create mode 100644 gdb/filename-seen-cache.h
delete mode 100644 gdb/gdb-gdb.py
create mode 100644 gdb/gdb-gdb.py.in
delete mode 100644 gdb/gdb.h
create mode 100644 gdb/gdb_regex.c
create mode 100644 gdb/gdbarch-selftests.c
create mode 100644 gdb/gdbserver/fork-child.c
create mode 100644 gdb/gdbserver/linux-aarch64-tdesc-selftest.c
create mode 100644 gdb/gdbserver/linux-aarch64-tdesc.c
create mode 100644 gdb/gdbserver/linux-aarch64-tdesc.h
create mode 100644 gdb/gdbserver/linux-ppc-tdesc-init.h
delete mode 100644 gdb/gdbserver/linux-ppc-tdesc.h
create mode 100644 gdb/gdbserver/linux-x86-tdesc-selftest.c
create mode 100644 gdb/gdbserver/linux-x86-tdesc.c
delete mode 100644 gdb/gdbserver/terminal.h
create mode 100644 gdb/gdbserver/x86-tdesc.h
create mode 100644 gdb/gnulib/aclocal-m4-deps.mk
create mode 100644 gdb/gnulib/import/arpa_inet.in.h
create mode 100644 gdb/gnulib/import/assure.h
create mode 100644 gdb/gnulib/import/at-func.c
create mode 100644 gdb/gnulib/import/chdir-long.c
create mode 100644 gdb/gnulib/import/chdir-long.h
create mode 100644 gdb/gnulib/import/cloexec.c
create mode 100644 gdb/gnulib/import/cloexec.h
create mode 100644 gdb/gnulib/import/close.c
create mode 100644 gdb/gnulib/import/closedir.c
create mode 100644 gdb/gnulib/import/dirent-private.h
create mode 100644 gdb/gnulib/import/dup-safer.c
create mode 100644 gdb/gnulib/import/dup.c
create mode 100644 gdb/gnulib/import/dup2.c
create mode 100644 gdb/gnulib/import/error.c
create mode 100644 gdb/gnulib/import/error.h
create mode 100644 gdb/gnulib/import/exitfail.c
create mode 100644 gdb/gnulib/import/exitfail.h
create mode 100644 gdb/gnulib/import/fchdir.c
create mode 100644 gdb/gnulib/import/fcntl.c
create mode 100644 gdb/gnulib/import/fcntl.in.h
create mode 100644 gdb/gnulib/import/fd-hook.c
create mode 100644 gdb/gnulib/import/fd-hook.h
create mode 100644 gdb/gnulib/import/fd-safer.c
create mode 100644 gdb/gnulib/import/fdopendir.c
create mode 100644 gdb/gnulib/import/filename.h
create mode 100644 gdb/gnulib/import/filenamecat-lgpl.c
create mode 100644 gdb/gnulib/import/filenamecat.h
create mode 100644 gdb/gnulib/import/fstat.c
create mode 100644 gdb/gnulib/import/fstatat.c
create mode 100644 gdb/gnulib/import/getcwd-lgpl.c
create mode 100644 gdb/gnulib/import/getcwd.c
create mode 100644 gdb/gnulib/import/getdtablesize.c
create mode 100644 gdb/gnulib/import/getlogin_r.c
create mode 100644 gdb/gnulib/import/getprogname.c
create mode 100644 gdb/gnulib/import/getprogname.h
create mode 100644 gdb/gnulib/import/gettext.h
create mode 100644 gdb/gnulib/import/glob-libc.h
create mode 100644 gdb/gnulib/import/glob.c
create mode 100644 gdb/gnulib/import/glob.in.h
create mode 100644 gdb/gnulib/import/inet_ntop.c
create mode 100644 gdb/gnulib/import/intprops.h
create mode 100644 gdb/gnulib/import/m4/arpa_inet_h.m4
create mode 100644 gdb/gnulib/import/m4/chdir-long.m4
create mode 100644 gdb/gnulib/import/m4/close.m4
create mode 100644 gdb/gnulib/import/m4/closedir.m4
create mode 100644 gdb/gnulib/import/m4/d-ino.m4
create mode 100644 gdb/gnulib/import/m4/d-type.m4
create mode 100644 gdb/gnulib/import/m4/dup.m4
create mode 100644 gdb/gnulib/import/m4/dup2.m4
create mode 100644 gdb/gnulib/import/m4/environ.m4
create mode 100644 gdb/gnulib/import/m4/error.m4
create mode 100644 gdb/gnulib/import/m4/fchdir.m4
create mode 100644 gdb/gnulib/import/m4/fcntl.m4
create mode 100644 gdb/gnulib/import/m4/fcntl_h.m4
create mode 100644 gdb/gnulib/import/m4/fdopendir.m4
create mode 100644 gdb/gnulib/import/m4/filenamecat.m4
create mode 100644 gdb/gnulib/import/m4/fstat.m4
create mode 100644 gdb/gnulib/import/m4/fstatat.m4
create mode 100644 gdb/gnulib/import/m4/getcwd-abort-bug.m4
create mode 100644 gdb/gnulib/import/m4/getcwd-path-max.m4
create mode 100644 gdb/gnulib/import/m4/getcwd.m4
create mode 100644 gdb/gnulib/import/m4/getdtablesize.m4
create mode 100644 gdb/gnulib/import/m4/getlogin_r.m4
create mode 100644 gdb/gnulib/import/m4/getprogname.m4
create mode 100644 gdb/gnulib/import/m4/glob.m4
create mode 100644 gdb/gnulib/import/m4/inet_ntop.m4
create mode 100644 gdb/gnulib/import/m4/mempcpy.m4
create mode 100644 gdb/gnulib/import/m4/memrchr.m4
create mode 100644 gdb/gnulib/import/m4/mkdir.m4
create mode 100644 gdb/gnulib/import/m4/mkdtemp.m4
create mode 100644 gdb/gnulib/import/m4/mkostemp.m4
create mode 100644 gdb/gnulib/import/m4/mode_t.m4
create mode 100644 gdb/gnulib/import/m4/msvc-inval.m4
create mode 100644 gdb/gnulib/import/m4/msvc-nothrow.m4
create mode 100644 gdb/gnulib/import/m4/netinet_in_h.m4
create mode 100644 gdb/gnulib/import/m4/onceonly.m4
create mode 100644 gdb/gnulib/import/m4/open.m4
create mode 100644 gdb/gnulib/import/m4/openat.m4
create mode 100644 gdb/gnulib/import/m4/opendir.m4
create mode 100644 gdb/gnulib/import/m4/readdir.m4
create mode 100644 gdb/gnulib/import/m4/realloc.m4
create mode 100644 gdb/gnulib/import/m4/rewinddir.m4
create mode 100644 gdb/gnulib/import/m4/save-cwd.m4
create mode 100644 gdb/gnulib/import/m4/secure_getenv.m4
create mode 100644 gdb/gnulib/import/m4/setenv.m4
create mode 100644 gdb/gnulib/import/m4/socklen.m4
create mode 100644 gdb/gnulib/import/m4/sockpfaf.m4
create mode 100644 gdb/gnulib/import/m4/stdalign.m4
create mode 100644 gdb/gnulib/import/m4/strdup.m4
create mode 100644 gdb/gnulib/import/m4/strerror.m4
create mode 100644 gdb/gnulib/import/m4/sys_uio_h.m4
create mode 100644 gdb/gnulib/import/m4/tempname.m4
create mode 100644 gdb/gnulib/import/m4/unistd-safer.m4
create mode 100644 gdb/gnulib/import/mempcpy.c
create mode 100644 gdb/gnulib/import/memrchr.c
create mode 100644 gdb/gnulib/import/mkdir.c
create mode 100644 gdb/gnulib/import/mkdtemp.c
create mode 100644 gdb/gnulib/import/mkostemp.c
create mode 100644 gdb/gnulib/import/msvc-inval.c
create mode 100644 gdb/gnulib/import/msvc-inval.h
create mode 100644 gdb/gnulib/import/msvc-nothrow.c
create mode 100644 gdb/gnulib/import/msvc-nothrow.h
create mode 100644 gdb/gnulib/import/netinet_in.in.h
create mode 100644 gdb/gnulib/import/open.c
create mode 100644 gdb/gnulib/import/openat-die.c
create mode 100644 gdb/gnulib/import/openat-priv.h
create mode 100644 gdb/gnulib/import/openat-proc.c
create mode 100644 gdb/gnulib/import/openat.c
create mode 100644 gdb/gnulib/import/openat.h
create mode 100644 gdb/gnulib/import/opendir.c
create mode 100644 gdb/gnulib/import/pipe-safer.c
create mode 100644 gdb/gnulib/import/readdir.c
create mode 100644 gdb/gnulib/import/realloc.c
create mode 100644 gdb/gnulib/import/rewinddir.c
create mode 100644 gdb/gnulib/import/save-cwd.c
create mode 100644 gdb/gnulib/import/save-cwd.h
create mode 100644 gdb/gnulib/import/secure_getenv.c
create mode 100644 gdb/gnulib/import/setenv.c
create mode 100644 gdb/gnulib/import/stdalign.in.h
create mode 100644 gdb/gnulib/import/strdup.c
create mode 100644 gdb/gnulib/import/strerror-override.c
create mode 100644 gdb/gnulib/import/strerror-override.h
create mode 100644 gdb/gnulib/import/strerror.c
create mode 100644 gdb/gnulib/import/sys_socket.c
create mode 100644 gdb/gnulib/import/sys_socket.in.h
create mode 100644 gdb/gnulib/import/sys_uio.in.h
create mode 100644 gdb/gnulib/import/tempname.c
create mode 100644 gdb/gnulib/import/tempname.h
create mode 100644 gdb/gnulib/import/unistd--.h
create mode 100644 gdb/gnulib/import/unistd-safer.h
create mode 100644 gdb/gnulib/import/unsetenv.c
create mode 100644 gdb/gnulib/patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch
create mode 100644 gdb/gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch
create mode 100644 gdb/i386-go32-tdep.c
delete mode 100644 gdb/i386-v4-nat.c
create mode 100644 gdb/linux-nat-trad.c
create mode 100644 gdb/linux-nat-trad.h
delete mode 100644 gdb/m88k-bsd-nat.c
delete mode 100644 gdb/m88k-tdep.c
delete mode 100644 gdb/m88k-tdep.h
delete mode 100644 gdb/mt-tdep.c
create mode 100644 gdb/nat/aarch64-sve-linux-ptrace.c
create mode 100644 gdb/nat/aarch64-sve-linux-ptrace.h
create mode 100644 gdb/nat/aarch64-sve-linux-sigcontext.h
create mode 100644 gdb/nat/fork-inferior.c
create mode 100644 gdb/nat/fork-inferior.h
create mode 100644 gdb/observable.c
create mode 100644 gdb/observable.h
delete mode 100644 gdb/observer.c
delete mode 100755 gdb/observer.sh
create mode 100644 gdb/or1k-tdep.c
create mode 100644 gdb/or1k-tdep.h
create mode 100644 gdb/producer.c
create mode 100644 gdb/producer.h
create mode 100644 gdb/progspace-and-thread.c
create mode 100644 gdb/progspace-and-thread.h
create mode 100644 gdb/python/py-all-events.def
create mode 100644 gdb/python/py-event-types.def
create mode 100644 gdb/python/py-instruction.c
create mode 100644 gdb/python/py-instruction.h
create mode 100644 gdb/python/py-record.h
create mode 100644 gdb/regcache-dump.c
delete mode 100644 gdb/regformats/i386/amd64-avx-avx512.dat
delete mode 100644 gdb/regformats/i386/amd64-avx-mpx-avx512-pku.dat
delete mode 100644 gdb/regformats/i386/amd64-avx-mpx.dat
delete mode 100644 gdb/regformats/i386/amd64-avx.dat
delete mode 100644 gdb/regformats/i386/amd64-mpx.dat
delete mode 100644 gdb/regformats/i386/i386-avx-avx512.dat
delete mode 100644 gdb/regformats/i386/i386-avx-mpx-avx512-pku.dat
delete mode 100644 gdb/regformats/i386/i386-avx-mpx.dat
delete mode 100644 gdb/regformats/i386/i386-avx.dat
delete mode 100644 gdb/regformats/i386/i386-mmx.dat
delete mode 100644 gdb/regformats/i386/i386-mpx.dat
delete mode 100644 gdb/regformats/i386/x32-avx-avx512.dat
delete mode 100644 gdb/regformats/i386/x32-avx.dat
delete mode 100644 gdb/regformats/i386/x32.dat
create mode 100644 gdb/regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat
create mode 100644 gdb/regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat
create mode 100644 gdb/regformats/rs6000/powerpc-isa207-htm-vsx32l.dat
create mode 100644 gdb/regformats/rs6000/powerpc-isa207-htm-vsx64l.dat
create mode 100644 gdb/regformats/rs6000/powerpc-isa207-vsx32l.dat
create mode 100644 gdb/regformats/rs6000/powerpc-isa207-vsx64l.dat
create mode 100644 gdb/regformats/s390-gs-linux64.dat
create mode 100644 gdb/regformats/s390x-gs-linux64.dat
delete mode 100644 gdb/regformats/tic6x-c62x.dat
delete mode 100644 gdb/regformats/tic6x-c64x.dat
delete mode 100644 gdb/regformats/tic6x-c64xp.dat
create mode 100644 gdb/riscv-fbsd-nat.c
create mode 100644 gdb/riscv-fbsd-tdep.c
create mode 100644 gdb/riscv-fbsd-tdep.h
create mode 100644 gdb/riscv-linux-nat.c
create mode 100644 gdb/riscv-linux-tdep.c
create mode 100644 gdb/riscv-tdep.c
create mode 100644 gdb/riscv-tdep.h
create mode 100644 gdb/s12z-tdep.c
create mode 100644 gdb/s390-tdep.c
create mode 100644 gdb/s390-tdep.h
create mode 100644 gdb/sanitize.m4
delete mode 100644 gdb/selftest.c
delete mode 100644 gdb/selftest.h
create mode 100644 gdb/selftest.m4
create mode 100644 gdb/ser-uds.c
delete mode 100644 gdb/sh64-tdep.c
delete mode 100644 gdb/sh64-tdep.h
create mode 100644 gdb/silent-rules.mk
create mode 100644 gdb/target-float.c
create mode 100644 gdb/target-float.h
create mode 100644 gdb/testsuite/boards/local-board.exp
create mode 100644 gdb/testsuite/boards/stdio-gdbserver-base.exp
delete mode 100755 gdb/testsuite/dg-extract-results.sh
create mode 100644 gdb/testsuite/gdb.ada/access_tagged_param.exp
create mode 100644 gdb/testsuite/gdb.ada/access_tagged_param/foo.adb
create mode 100644 gdb/testsuite/gdb.ada/access_tagged_param/pck.adb
create mode 100644 gdb/testsuite/gdb.ada/access_tagged_param/pck.ads
create mode 100644 gdb/testsuite/gdb.ada/access_to_unbounded_array.exp
create mode 100644 gdb/testsuite/gdb.ada/access_to_unbounded_array/foo.adb
create mode 100644 gdb/testsuite/gdb.ada/access_to_unbounded_array/pack.adb
create mode 100644 gdb/testsuite/gdb.ada/access_to_unbounded_array/pack.ads
create mode 100644 gdb/testsuite/gdb.ada/arr_acc_idx_w_gap.exp
create mode 100644 gdb/testsuite/gdb.ada/arr_acc_idx_w_gap/enum_with_gap.adb
create mode 100644 gdb/testsuite/gdb.ada/arr_acc_idx_w_gap/enum_with_gap.ads
create mode 100644 gdb/testsuite/gdb.ada/arr_acc_idx_w_gap/enum_with_gap_main.adb
create mode 100644 gdb/testsuite/gdb.ada/arr_enum_idx_w_gap.exp
create mode 100644 gdb/testsuite/gdb.ada/arr_enum_idx_w_gap/foo_q418_043.adb
create mode 100644 gdb/testsuite/gdb.ada/assign_arr.exp
create mode 100644 gdb/testsuite/gdb.ada/assign_arr/main_p324_051.adb
create mode 100644 gdb/testsuite/gdb.ada/assign_arr/target_wrapper.ads
create mode 100644 gdb/testsuite/gdb.ada/bp_c_mixed_case.exp
create mode 100644 gdb/testsuite/gdb.ada/bp_c_mixed_case/bar.c
create mode 100644 gdb/testsuite/gdb.ada/bp_c_mixed_case/foo_h731_021.adb
create mode 100644 gdb/testsuite/gdb.ada/bp_c_mixed_case/qux.c
create mode 100644 gdb/testsuite/gdb.ada/bp_fun_addr.exp
create mode 100644 gdb/testsuite/gdb.ada/bp_fun_addr/a.adb
create mode 100644 gdb/testsuite/gdb.ada/bp_inlined_func.exp
create mode 100644 gdb/testsuite/gdb.ada/bp_inlined_func/b.adb
create mode 100644 gdb/testsuite/gdb.ada/bp_inlined_func/b.ads
create mode 100644 gdb/testsuite/gdb.ada/bp_inlined_func/c.adb
create mode 100644 gdb/testsuite/gdb.ada/bp_inlined_func/c.ads
create mode 100644 gdb/testsuite/gdb.ada/bp_inlined_func/foo.adb
create mode 100644 gdb/testsuite/gdb.ada/catch_assert_if.exp
create mode 100644 gdb/testsuite/gdb.ada/catch_assert_if/bla.adb
create mode 100644 gdb/testsuite/gdb.ada/catch_assert_if/pck.ads
create mode 100644 gdb/testsuite/gdb.ada/convvar_comp.exp
create mode 100644 gdb/testsuite/gdb.ada/convvar_comp/pb16_063.adb
create mode 100644 gdb/testsuite/gdb.ada/convvar_comp/pck.adb
create mode 100644 gdb/testsuite/gdb.ada/convvar_comp/pck.ads
create mode 100644 gdb/testsuite/gdb.ada/dyn_stride.exp
create mode 100644 gdb/testsuite/gdb.ada/dyn_stride/foo.adb
create mode 100644 gdb/testsuite/gdb.ada/excep_handle.exp
create mode 100644 gdb/testsuite/gdb.ada/excep_handle/foo.adb
create mode 100644 gdb/testsuite/gdb.ada/excep_handle/pck.ads
create mode 100644 gdb/testsuite/gdb.ada/expr_with_funcall.exp
create mode 100644 gdb/testsuite/gdb.ada/expr_with_funcall/expr_r821_013.adb
create mode 100644 gdb/testsuite/gdb.ada/expr_with_funcall/pck.adb
create mode 100644 gdb/testsuite/gdb.ada/expr_with_funcall/pck.ads
create mode 100644 gdb/testsuite/gdb.ada/funcall_ptr.exp
create mode 100644 gdb/testsuite/gdb.ada/funcall_ptr/foo.adb
create mode 100644 gdb/testsuite/gdb.ada/funcall_ptr/pck.adb
create mode 100644 gdb/testsuite/gdb.ada/funcall_ptr/pck.ads
create mode 100644 gdb/testsuite/gdb.ada/info_addr_mixed_case.exp
create mode 100644 gdb/testsuite/gdb.ada/info_addr_mixed_case/foo.adb
create mode 100644 gdb/testsuite/gdb.ada/info_addr_mixed_case/pck.adb
create mode 100644 gdb/testsuite/gdb.ada/info_addr_mixed_case/pck.ads
create mode 100644 gdb/testsuite/gdb.ada/maint_with_ada.exp
copy gdb/testsuite/gdb.ada/{var_arr_typedef => maint_with_ada}/pack.adb (100%)
copy gdb/testsuite/gdb.ada/{var_arr_typedef => maint_with_ada}/pack.ads (100%)
copy gdb/testsuite/gdb.ada/{var_arr_typedef => maint_with_ada}/var_arr_typedef.adb (100%)
create mode 100644 gdb/testsuite/gdb.ada/mi_catch_assert.exp
create mode 100644 gdb/testsuite/gdb.ada/mi_catch_assert/bla.adb
create mode 100644 gdb/testsuite/gdb.ada/mi_catch_assert/pck.ads
create mode 100644 gdb/testsuite/gdb.ada/mi_catch_ex_hand.exp
create mode 100644 gdb/testsuite/gdb.ada/mi_catch_ex_hand/foo.adb
create mode 100644 gdb/testsuite/gdb.ada/mi_string_access.exp
create mode 100644 gdb/testsuite/gdb.ada/mi_string_access/bar.adb
create mode 100644 gdb/testsuite/gdb.ada/mi_string_access/pck.adb
create mode 100644 gdb/testsuite/gdb.ada/mi_string_access/pck.ads
create mode 100644 gdb/testsuite/gdb.ada/mi_var_union.exp
create mode 100644 gdb/testsuite/gdb.ada/mi_var_union/bar.adb
create mode 100644 gdb/testsuite/gdb.ada/mi_var_union/pck.adb
create mode 100644 gdb/testsuite/gdb.ada/mi_var_union/pck.ads
create mode 100644 gdb/testsuite/gdb.ada/minsyms.exp
create mode 100644 gdb/testsuite/gdb.ada/minsyms/foo_qb07_057.adb
create mode 100644 gdb/testsuite/gdb.ada/minsyms/pck.adb
create mode 100644 gdb/testsuite/gdb.ada/minsyms/pck.ads
create mode 100644 gdb/testsuite/gdb.ada/notcplusplus.exp
create mode 100644 gdb/testsuite/gdb.ada/notcplusplus/foo.adb
create mode 100644 gdb/testsuite/gdb.ada/notcplusplus/pck.adb
create mode 100644 gdb/testsuite/gdb.ada/notcplusplus/pck.ads
create mode 100644 gdb/testsuite/gdb.ada/notcplusplus/ver.ads
create mode 100644 gdb/testsuite/gdb.ada/packed_array_assign.exp
create mode 100644 gdb/testsuite/gdb.ada/packed_array_assign/aggregates.adb
create mode 100644 gdb/testsuite/gdb.ada/packed_array_assign/aggregates.ads
create mode 100644 gdb/testsuite/gdb.ada/packed_array_assign/pck.adb
create mode 100644 gdb/testsuite/gdb.ada/packed_array_assign/pck.ads
create mode 100644 gdb/testsuite/gdb.ada/packed_array_assign/tester.adb
create mode 100644 gdb/testsuite/gdb.ada/rename_subscript_param.exp
create mode 100644 gdb/testsuite/gdb.ada/rename_subscript_param/pb30_012.adb
create mode 100644 gdb/testsuite/gdb.ada/rename_subscript_param/pck.adb
create mode 100644 gdb/testsuite/gdb.ada/rename_subscript_param/pck.ads
create mode 100644 gdb/testsuite/gdb.ada/rename_subscript_param/pkg.adb
create mode 100644 gdb/testsuite/gdb.ada/rename_subscript_param/pkg.ads
create mode 100644 gdb/testsuite/gdb.ada/repeat_dyn.exp
create mode 100644 gdb/testsuite/gdb.ada/repeat_dyn/foo_oc22_002.adb
create mode 100644 gdb/testsuite/gdb.ada/repeat_dyn/pck.adb
create mode 100644 gdb/testsuite/gdb.ada/repeat_dyn/pck.ads
create mode 100644 gdb/testsuite/gdb.ada/same_component_name.exp
create mode 100644 gdb/testsuite/gdb.ada/same_component_name/foo.adb
create mode 100644 gdb/testsuite/gdb.ada/same_component_name/pck.adb
create mode 100644 gdb/testsuite/gdb.ada/same_component_name/pck.ads
create mode 100644 gdb/testsuite/gdb.ada/scoped_watch.exp
create mode 100644 gdb/testsuite/gdb.ada/scoped_watch/foo_p708_025.adb
create mode 100644 gdb/testsuite/gdb.ada/scoped_watch/pck.adb
create mode 100644 gdb/testsuite/gdb.ada/scoped_watch/pck.ads
create mode 100644 gdb/testsuite/gdb.ada/str_binop_equal.exp
create mode 100644 gdb/testsuite/gdb.ada/str_binop_equal/foo_p211_061.adb
create mode 100644 gdb/testsuite/gdb.ada/str_binop_equal/pck.adb
create mode 100644 gdb/testsuite/gdb.ada/str_binop_equal/pck.ads
create mode 100644 gdb/testsuite/gdb.ada/task_switch_in_core.exp
create mode 100644 gdb/testsuite/gdb.ada/task_switch_in_core/crash.adb
create mode 100644 gdb/testsuite/gdb.ada/varsize_limit.exp
create mode 100644 gdb/testsuite/gdb.ada/varsize_limit/pck.adb
create mode 100644 gdb/testsuite/gdb.ada/varsize_limit/pck.ads
create mode 100644 gdb/testsuite/gdb.ada/varsize_limit/vsizelim.adb
create mode 100644 gdb/testsuite/gdb.ada/watch_minus_l.exp
create mode 100644 gdb/testsuite/gdb.ada/watch_minus_l/foo_ra10_006.adb
create mode 100644 gdb/testsuite/gdb.ada/watch_minus_l/pck.adb
create mode 100644 gdb/testsuite/gdb.ada/watch_minus_l/pck.ads
create mode 100644 gdb/testsuite/gdb.arch/aarch64-sighandler-regs.c
create mode 100644 gdb/testsuite/gdb.arch/aarch64-sighandler-regs.exp
create mode 100644 gdb/testsuite/gdb.arch/aarch64-tagged-pointer.c
create mode 100644 gdb/testsuite/gdb.arch/aarch64-tagged-pointer.exp
create mode 100644 gdb/testsuite/gdb.arch/aix-sighandle.c
create mode 100644 gdb/testsuite/gdb.arch/aix-sighandle.exp
create mode 100644 gdb/testsuite/gdb.arch/amd64-disp-step-avx.S
create mode 100644 gdb/testsuite/gdb.arch/amd64-disp-step-avx.exp
create mode 100644 gdb/testsuite/gdb.arch/amd64-init-x87-values.S
create mode 100644 gdb/testsuite/gdb.arch/amd64-init-x87-values.exp
create mode 100644 gdb/testsuite/gdb.arch/amd64-osabi.exp
create mode 100644 gdb/testsuite/gdb.arch/arc-tdesc-cpu.exp
create mode 100644 gdb/testsuite/gdb.arch/arc-tdesc-cpu.xml
create mode 100644 gdb/testsuite/gdb.arch/mips-disassembler-options.exp
create mode 100644 gdb/testsuite/gdb.arch/mips-disassembler-options.s
create mode 100644 gdb/testsuite/gdb.arch/mips-fpregset-core.c
create mode 100644 gdb/testsuite/gdb.arch/mips-fpregset-core.exp
create mode 100644 gdb/testsuite/gdb.arch/powerpc-fpscr-gcore.exp
create mode 100644 gdb/testsuite/gdb.arch/powerpc-htm-regs.c
create mode 100644 gdb/testsuite/gdb.arch/powerpc-htm-regs.exp
create mode 100644 gdb/testsuite/gdb.arch/powerpc-ppr-dscr.c
create mode 100644 gdb/testsuite/gdb.arch/powerpc-ppr-dscr.exp
create mode 100644 gdb/testsuite/gdb.arch/powerpc-prologue-frame.S
create mode 100644 gdb/testsuite/gdb.arch/powerpc-prologue-frame.c
create mode 100644 gdb/testsuite/gdb.arch/powerpc-prologue-frame.exp
create mode 100644 gdb/testsuite/gdb.arch/powerpc-tar.c
create mode 100644 gdb/testsuite/gdb.arch/powerpc-tar.exp
create mode 100644 gdb/testsuite/gdb.arch/powerpc-vsx-gcore.exp
create mode 100644 gdb/testsuite/gdb.arch/ppc-longdouble.c
create mode 100644 gdb/testsuite/gdb.arch/ppc-longdouble.exp
create mode 100644 gdb/testsuite/gdb.arch/riscv-reg-aliases.c
create mode 100644 gdb/testsuite/gdb.arch/riscv-reg-aliases.exp
create mode 100644 gdb/testsuite/gdb.arch/sparc64-adi.c
create mode 100644 gdb/testsuite/gdb.arch/sparc64-adi.exp
create mode 100644 gdb/testsuite/gdb.base/align.exp
create mode 100644 gdb/testsuite/gdb.base/attach-non-pgrp-leader.c
create mode 100644 gdb/testsuite/gdb.base/attach-non-pgrp-leader.exp
create mode 100644 gdb/testsuite/gdb.base/batch-exit-status.bad-commands
create mode 100644 gdb/testsuite/gdb.base/batch-exit-status.exp
create mode 100644 gdb/testsuite/gdb.base/batch-exit-status.good-commands
create mode 100644 gdb/testsuite/gdb.base/bp-cmds-continue-ctrl-c.c
create mode 100644 gdb/testsuite/gdb.base/bp-cmds-continue-ctrl-c.exp
create mode 100644 gdb/testsuite/gdb.base/break-include.c
create mode 100644 gdb/testsuite/gdb.base/break-include.exp
create mode 100644 gdb/testsuite/gdb.base/break-include.inc
create mode 100644 gdb/testsuite/gdb.base/bt-selected-frame.c
create mode 100644 gdb/testsuite/gdb.base/bt-selected-frame.exp
create mode 100644 gdb/testsuite/gdb.base/c-linkage-name.c
create mode 100644 gdb/testsuite/gdb.base/c-linkage-name.exp
create mode 100644 gdb/testsuite/gdb.base/catch-follow-exec.c
create mode 100644 gdb/testsuite/gdb.base/catch-follow-exec.exp
create mode 100644 gdb/testsuite/gdb.base/complete-empty.exp
create mode 100644 gdb/testsuite/gdb.base/continue-after-aborted-step-over.c
create mode 100644 gdb/testsuite/gdb.base/continue-after-aborted-step-over.exp
create mode 100644 gdb/testsuite/gdb.base/endian.c
create mode 100644 gdb/testsuite/gdb.base/endian.exp
create mode 100644 gdb/testsuite/gdb.base/finish-pretty.c
create mode 100644 gdb/testsuite/gdb.base/finish-pretty.exp
create mode 100644 gdb/testsuite/gdb.base/fork-print-inferior-events.c
create mode 100644 gdb/testsuite/gdb.base/fork-print-inferior-events.exp
create mode 100644 gdb/testsuite/gdb.base/frame-selection.c
create mode 100644 gdb/testsuite/gdb.base/frame-selection.exp
create mode 100644 gdb/testsuite/gdb.base/frameapply.c
create mode 100644 gdb/testsuite/gdb.base/frameapply.exp
create mode 100644 gdb/testsuite/gdb.base/gcore-tls-pie.c
create mode 100644 gdb/testsuite/gdb.base/gcore-tls-pie.exp
create mode 100644 gdb/testsuite/gdb.base/gnu-ifunc-final.c
create mode 100644 gdb/testsuite/gdb.base/index-cache.c
create mode 100644 gdb/testsuite/gdb.base/index-cache.exp
create mode 100644 gdb/testsuite/gdb.base/infcall-nested-structs.c
create mode 100644 gdb/testsuite/gdb.base/infcall-nested-structs.exp
create mode 100644 gdb/testsuite/gdb.base/info-program.exp
create mode 100644 gdb/testsuite/gdb.base/info_qt.c
create mode 100644 gdb/testsuite/gdb.base/info_qt.exp
create mode 100644 gdb/testsuite/gdb.base/infoline-reloc-main-from-zero.c
create mode 100644 gdb/testsuite/gdb.base/infoline-reloc-main-from-zero.exp
create mode 100644 gdb/testsuite/gdb.base/interrupt-daemon.c
create mode 100644 gdb/testsuite/gdb.base/interrupt-daemon.exp
create mode 100644 gdb/testsuite/gdb.base/large-frame-1.c
create mode 100644 gdb/testsuite/gdb.base/large-frame-2.c
create mode 100644 gdb/testsuite/gdb.base/large-frame.exp
create mode 100644 gdb/testsuite/gdb.base/large-frame.h
create mode 100644 gdb/testsuite/gdb.base/libsegfault.exp
create mode 100644 gdb/testsuite/gdb.base/list-ambiguous.exp
create mode 100644 gdb/testsuite/gdb.base/list-ambiguous0.c
create mode 100644 gdb/testsuite/gdb.base/list-ambiguous1.c
create mode 100644 gdb/testsuite/gdb.base/load-command.c
create mode 100644 gdb/testsuite/gdb.base/load-command.exp
create mode 100644 gdb/testsuite/gdb.base/long-inferior-output.c
create mode 100644 gdb/testsuite/gdb.base/long-inferior-output.exp
create mode 100644 gdb/testsuite/gdb.base/many-headers.c
create mode 100644 gdb/testsuite/gdb.base/many-headers.exp
create mode 100644 gdb/testsuite/gdb.base/osabi.exp
create mode 100644 gdb/testsuite/gdb.base/pie-fork.c
create mode 100644 gdb/testsuite/gdb.base/pie-fork.exp
create mode 100644 gdb/testsuite/gdb.base/ptype-offsets.cc
create mode 100644 gdb/testsuite/gdb.base/ptype-offsets.exp
create mode 100644 gdb/testsuite/gdb.base/quit-live.c
create mode 100644 gdb/testsuite/gdb.base/quit-live.exp
create mode 100644 gdb/testsuite/gdb.base/readnever.c
create mode 100644 gdb/testsuite/gdb.base/readnever.exp
create mode 100644 gdb/testsuite/gdb.base/reggroups.c
create mode 100644 gdb/testsuite/gdb.base/reggroups.exp
create mode 100644 gdb/testsuite/gdb.base/reread-readsym.c
create mode 100644 gdb/testsuite/gdb.base/reread-readsym.exp
create mode 100644 gdb/testsuite/gdb.base/server-del-break.c
create mode 100644 gdb/testsuite/gdb.base/server-del-break.exp
create mode 100644 gdb/testsuite/gdb.base/set-cwd.c
create mode 100644 gdb/testsuite/gdb.base/set-cwd.exp
create mode 100644 gdb/testsuite/gdb.base/share-env-with-gdbserver.c
create mode 100644 gdb/testsuite/gdb.base/share-env-with-gdbserver.exp
create mode 100644 gdb/testsuite/gdb.base/solib-vanish-lib1.c
create mode 100644 gdb/testsuite/gdb.base/solib-vanish-lib2.c
create mode 100644 gdb/testsuite/gdb.base/solib-vanish-main.c
create mode 100644 gdb/testsuite/gdb.base/solib-vanish.exp
create mode 100644 gdb/testsuite/gdb.base/starti.c
create mode 100644 gdb/testsuite/gdb.base/starti.exp
create mode 100644 gdb/testsuite/gdb.base/startup-with-shell.c
create mode 100644 gdb/testsuite/gdb.base/startup-with-shell.exp
create mode 100644 gdb/testsuite/gdb.base/step-indirect-call-thunk.c
create mode 100644 gdb/testsuite/gdb.base/step-indirect-call-thunk.exp
create mode 100644 gdb/testsuite/gdb.base/symbol-alias.c
create mode 100644 gdb/testsuite/gdb.base/symbol-alias.exp
create mode 100644 gdb/testsuite/gdb.base/symbol-alias2.c
create mode 100644 gdb/testsuite/gdb.base/utf8-identifiers.c
create mode 100644 gdb/testsuite/gdb.base/utf8-identifiers.exp
create mode 100644 gdb/testsuite/gdb.base/valgrind-bt.c
create mode 100644 gdb/testsuite/gdb.base/valgrind-bt.exp
delete mode 100644 gdb/testsuite/gdb.base/valgrind-db-attach.c
delete mode 100644 gdb/testsuite/gdb.base/valgrind-db-attach.exp
create mode 100644 gdb/testsuite/gdb.base/vla-optimized-out.c
create mode 100644 gdb/testsuite/gdb.base/vla-optimized-out.exp
create mode 100644 gdb/testsuite/gdb.base/watchpoint-hw-attach.c
create mode 100644 gdb/testsuite/gdb.base/watchpoint-hw-attach.exp
create mode 100644 gdb/testsuite/gdb.base/watchpoint-unaligned.c
create mode 100644 gdb/testsuite/gdb.base/watchpoint-unaligned.exp
create mode 100644 gdb/testsuite/gdb.base/whatis-ptype-typedefs.c
create mode 100644 gdb/testsuite/gdb.base/whatis-ptype-typedefs.exp
create mode 100644 gdb/testsuite/gdb.base/write_mem.c
create mode 100644 gdb/testsuite/gdb.base/write_mem.exp
create mode 100644 gdb/testsuite/gdb.btrace/cpu.exp
create mode 100644 gdb/testsuite/gdb.compile/compile-cplus-anonymous.cc
create mode 100644 gdb/testsuite/gdb.compile/compile-cplus-anonymous.exp
create mode 100644 gdb/testsuite/gdb.compile/compile-cplus-array-decay.cc
create mode 100644 gdb/testsuite/gdb.compile/compile-cplus-array-decay.exp
create mode 100644 gdb/testsuite/gdb.compile/compile-cplus-inherit.cc
create mode 100644 gdb/testsuite/gdb.compile/compile-cplus-inherit.exp
create mode 100644 gdb/testsuite/gdb.compile/compile-cplus-member.cc
create mode 100644 gdb/testsuite/gdb.compile/compile-cplus-member.exp
create mode 100644 gdb/testsuite/gdb.compile/compile-cplus-method.cc
create mode 100644 gdb/testsuite/gdb.compile/compile-cplus-method.exp
create mode 100644 gdb/testsuite/gdb.compile/compile-cplus-mod.c
create mode 100644 gdb/testsuite/gdb.compile/compile-cplus-namespace.cc
create mode 100644 gdb/testsuite/gdb.compile/compile-cplus-namespace.exp
create mode 100644 gdb/testsuite/gdb.compile/compile-cplus-nested.cc
create mode 100644 gdb/testsuite/gdb.compile/compile-cplus-nested.exp
create mode 100644 gdb/testsuite/gdb.compile/compile-cplus-print.c
create mode 100644 gdb/testsuite/gdb.compile/compile-cplus-print.exp
create mode 100644 gdb/testsuite/gdb.compile/compile-cplus-virtual.cc
create mode 100644 gdb/testsuite/gdb.compile/compile-cplus-virtual.exp
create mode 100644 gdb/testsuite/gdb.compile/compile-cplus.c
create mode 100644 gdb/testsuite/gdb.compile/compile-cplus.exp
create mode 100644 gdb/testsuite/gdb.cp/align.exp
create mode 100644 gdb/testsuite/gdb.cp/ena-dis-br-range.cc
create mode 100644 gdb/testsuite/gdb.cp/ena-dis-br-range.exp
create mode 100644 gdb/testsuite/gdb.cp/local-static.c
create mode 100644 gdb/testsuite/gdb.cp/local-static.cc
create mode 100644 gdb/testsuite/gdb.cp/local-static.exp
create mode 100644 gdb/testsuite/gdb.cp/nested-types.cc
create mode 100644 gdb/testsuite/gdb.cp/nested-types.exp
create mode 100644 gdb/testsuite/gdb.cp/save-bp-qualified.cc
create mode 100644 gdb/testsuite/gdb.cp/save-bp-qualified.exp
create mode 100644 gdb/testsuite/gdb.cp/static-typedef-print.cc
create mode 100644 gdb/testsuite/gdb.cp/static-typedef-print.exp
create mode 100644 gdb/testsuite/gdb.cp/subtypes-2.cc
create mode 100644 gdb/testsuite/gdb.cp/subtypes.cc
create mode 100644 gdb/testsuite/gdb.cp/subtypes.exp
create mode 100644 gdb/testsuite/gdb.cp/subtypes.h
create mode 100644 gdb/testsuite/gdb.cp/typedef-base.cc
create mode 100644 gdb/testsuite/gdb.cp/typedef-base.exp
create mode 100644 gdb/testsuite/gdb.cp/virtbase2.cc
create mode 100644 gdb/testsuite/gdb.cp/virtbase2.exp
create mode 100644 gdb/testsuite/gdb.cp/watch-cp.cc
create mode 100644 gdb/testsuite/gdb.cp/watch-cp.exp
create mode 100644 gdb/testsuite/gdb.cp/wide_char_types.c
create mode 100644 gdb/testsuite/gdb.cp/wide_char_types.exp
create mode 100644 gdb/testsuite/gdb.dwarf2/ada-valprint-error.c
create mode 100644 gdb/testsuite/gdb.dwarf2/ada-valprint-error.exp
create mode 100644 gdb/testsuite/gdb.dwarf2/dw2-align.exp
create mode 100644 gdb/testsuite/gdb.dwarf2/dw2-ranges-func.c
create mode 100644 gdb/testsuite/gdb.dwarf2/dw2-ranges-func.exp
create mode 100644 gdb/testsuite/gdb.dwarf2/fission-multi-cu.S
create mode 100644 gdb/testsuite/gdb.dwarf2/fission-multi-cu.exp
create mode 100644 gdb/testsuite/gdb.dwarf2/fission-multi-cu1.c
create mode 100644 gdb/testsuite/gdb.dwarf2/fission-multi-cu2.c
create mode 100644 gdb/testsuite/gdb.dwarf2/info-locals-optimized-out.c
create mode 100644 gdb/testsuite/gdb.dwarf2/info-locals-optimized-out.exp
create mode 100644 gdb/testsuite/gdb.dwarf2/shortpiece.exp
create mode 100644 gdb/testsuite/gdb.dwarf2/var-access.c
create mode 100644 gdb/testsuite/gdb.dwarf2/var-access.exp
create mode 100644 gdb/testsuite/gdb.dwarf2/variant.c
create mode 100644 gdb/testsuite/gdb.dwarf2/variant.exp
create mode 100644 gdb/testsuite/gdb.dwarf2/varval.c
create mode 100644 gdb/testsuite/gdb.dwarf2/varval.exp
create mode 100644 gdb/testsuite/gdb.dwarf2/void-type.c
create mode 100644 gdb/testsuite/gdb.dwarf2/void-type.exp
create mode 100644 gdb/testsuite/gdb.fortran/printing-types.exp
create mode 100644 gdb/testsuite/gdb.fortran/printing-types.f90
create mode 100644 gdb/testsuite/gdb.fortran/ptr-indentation.exp
create mode 100644 gdb/testsuite/gdb.fortran/ptr-indentation.f90
create mode 100644 gdb/testsuite/gdb.fortran/short-circuit-argument-list.exp
create mode 100644 gdb/testsuite/gdb.fortran/short-circuit-argument-list.f90
delete mode 100644 gdb/testsuite/gdb.gdb/observer.exp
delete mode 100644 gdb/testsuite/gdb.gdb/xfullpath.exp
create mode 100644 gdb/testsuite/gdb.linespec/cpcompletion.exp
create mode 100644 gdb/testsuite/gdb.linespec/cpls-abi-tag.cc
create mode 100644 gdb/testsuite/gdb.linespec/cpls-abi-tag.exp
create mode 100644 gdb/testsuite/gdb.linespec/cpls-hyphen.cc
create mode 100644 gdb/testsuite/gdb.linespec/cpls-ops.cc
create mode 100644 gdb/testsuite/gdb.linespec/cpls-ops.exp
create mode 100644 gdb/testsuite/gdb.linespec/cpls.cc
create mode 100644 gdb/testsuite/gdb.linespec/cpls2.cc
create mode 100644 gdb/testsuite/gdb.mi/list-thread-groups-available.c
create mode 100644 gdb/testsuite/gdb.mi/list-thread-groups-available.exp
create mode 100644 gdb/testsuite/gdb.mi/list-thread-groups-no-inferior.exp
create mode 100644 gdb/testsuite/gdb.mi/mi-breakpoint-location-ena-dis.cc
create mode 100644 gdb/testsuite/gdb.mi/mi-breakpoint-location-ena-dis.exp
create mode 100644 gdb/testsuite/gdb.mi/mi-frame-regs.exp
create mode 100644 gdb/testsuite/gdb.multi/multi-term-settings.c
create mode 100644 gdb/testsuite/gdb.multi/multi-term-settings.exp
create mode 100644 gdb/testsuite/gdb.perf/template-breakpoints.cc
create mode 100644 gdb/testsuite/gdb.perf/template-breakpoints.exp
create mode 100644 gdb/testsuite/gdb.perf/template-breakpoints.py
create mode 100644 gdb/testsuite/gdb.python/py-mi-var-info-path-expression.c
create mode 100644 gdb/testsuite/gdb.python/py-mi-var-info-path-expression.exp
create mode 100644 gdb/testsuite/gdb.python/py-mi-var-info-path-expression.py
create mode 100644 gdb/testsuite/gdb.python/py-rbreak-func2.c
create mode 100644 gdb/testsuite/gdb.python/py-rbreak.c
create mode 100644 gdb/testsuite/gdb.python/py-rbreak.exp
create mode 100644 gdb/testsuite/gdb.python/py-record-btrace-threads.c
create mode 100644 gdb/testsuite/gdb.python/py-record-btrace-threads.exp
create mode 100644 gdb/testsuite/gdb.python/py-thrhandle.c
create mode 100644 gdb/testsuite/gdb.python/py-thrhandle.exp
create mode 100644 gdb/testsuite/gdb.reverse/step-indirect-call-thunk.c
create mode 100644 gdb/testsuite/gdb.reverse/step-indirect-call-thunk.exp
create mode 100644 gdb/testsuite/gdb.rust/traits.exp
create mode 100644 gdb/testsuite/gdb.rust/traits.rs
create mode 100644 gdb/testsuite/gdb.rust/unsized.exp
create mode 100644 gdb/testsuite/gdb.rust/unsized.rs
create mode 100644 gdb/testsuite/gdb.rust/watch.exp
create mode 100644 gdb/testsuite/gdb.rust/watch.rs
create mode 100644 gdb/testsuite/gdb.server/abspath.exp
create mode 100644 gdb/testsuite/gdb.server/extended-remote-restart.c
create mode 100644 gdb/testsuite/gdb.server/extended-remote-restart.exp
create mode 100644 gdb/testsuite/gdb.server/normal.c
create mode 100644 gdb/testsuite/gdb.server/reconnect-ctrl-c.c
create mode 100644 gdb/testsuite/gdb.server/reconnect-ctrl-c.exp
create mode 100644 gdb/testsuite/gdb.server/run-without-local-binary.exp
create mode 100644 gdb/testsuite/gdb.server/server-connect.exp
create mode 100644 gdb/testsuite/gdb.server/stop-reply-no-thread.c
create mode 100644 gdb/testsuite/gdb.server/stop-reply-no-thread.exp
create mode 100644 gdb/testsuite/gdb.server/unittest.exp
create mode 100644 gdb/testsuite/gdb.threads/attach-slow-waitpid.c
create mode 100644 gdb/testsuite/gdb.threads/attach-slow-waitpid.exp
create mode 100644 gdb/testsuite/gdb.threads/check-libthread-db.c
create mode 100644 gdb/testsuite/gdb.threads/check-libthread-db.exp
create mode 100644 gdb/testsuite/gdb.threads/multiple-successive-infcall.c
create mode 100644 gdb/testsuite/gdb.threads/multiple-successive-infcall.exp
create mode 100644 gdb/testsuite/gdb.threads/slow-waitpid.c
create mode 100644 gdb/testsuite/gdb.threads/tls-core.c
create mode 100644 gdb/testsuite/gdb.threads/tls-core.exp
create mode 100644 gdb/testsuite/gdb.threads/tls-nodebug-pie.c
create mode 100644 gdb/testsuite/gdb.threads/tls-nodebug-pie.exp
create mode 100644 gdb/testsuite/lib/compile-support.exp
mode change 100755 => 100644 gdb/testsuite/lib/compiler.c
create mode 100644 gdb/testsuite/lib/completion-support.exp
create mode 100644 gdb/testsuite/lib/data-structures.exp
create mode 100644 gdb/testsuite/lib/valgrind.exp
create mode 100644 gdb/unittests/array-view-selftests.c
create mode 100644 gdb/unittests/basic_string_view/capacity/1.cc
create mode 100644 gdb/unittests/basic_string_view/capacity/empty_neg.cc
create mode 100644 gdb/unittests/basic_string_view/cons/char/1.cc
create mode 100644 gdb/unittests/basic_string_view/cons/char/2.cc
create mode 100644 gdb/unittests/basic_string_view/cons/char/3.cc
create mode 100644 gdb/unittests/basic_string_view/cons/wchar_t/1.cc
create mode 100644 gdb/unittests/basic_string_view/cons/wchar_t/2.cc
create mode 100644 gdb/unittests/basic_string_view/cons/wchar_t/3.cc
create mode 100644 gdb/unittests/basic_string_view/element_access/char/1.cc
create mode 100644 gdb/unittests/basic_string_view/element_access/char/2.cc
create mode 100644 gdb/unittests/basic_string_view/element_access/char/empty.cc
create mode 100644 gdb/unittests/basic_string_view/element_access/char/front_back.cc
create mode 100644 gdb/unittests/basic_string_view/element_access/wchar_t/1.cc
create mode 100644 gdb/unittests/basic_string_view/element_access/wchar_t/2.cc
create mode 100644 gdb/unittests/basic_string_view/element_access/wchar_t/empty.cc
create mode 100644 gdb/unittests/basic_string_view/element_access/wchar_t/front_back.cc
create mode 100644 gdb/unittests/basic_string_view/include.cc
create mode 100644 gdb/unittests/basic_string_view/inserters/char/1.cc
create mode 100644 gdb/unittests/basic_string_view/inserters/char/2.cc
create mode 100644 gdb/unittests/basic_string_view/inserters/char/3.cc
create mode 100644 gdb/unittests/basic_string_view/inserters/pod/10081-out.cc
create mode 100644 gdb/unittests/basic_string_view/inserters/wchar_t/1.cc
create mode 100644 gdb/unittests/basic_string_view/inserters/wchar_t/2.cc
create mode 100644 gdb/unittests/basic_string_view/inserters/wchar_t/3.cc
create mode 100644 gdb/unittests/basic_string_view/literals/types.cc
create mode 100644 gdb/unittests/basic_string_view/literals/values.cc
create mode 100644 gdb/unittests/basic_string_view/modifiers/remove_prefix/char/1.cc
create mode 100644 gdb/unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc
create mode 100644 gdb/unittests/basic_string_view/modifiers/remove_suffix/char/1.cc
create mode 100644 gdb/unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc
create mode 100644 gdb/unittests/basic_string_view/modifiers/swap/char/1.cc
create mode 100644 gdb/unittests/basic_string_view/modifiers/swap/wchar_t/1.cc
create mode 100644 gdb/unittests/basic_string_view/operations/compare/char/1.cc
create mode 100644 gdb/unittests/basic_string_view/operations/compare/char/13650.cc
create mode 100644 gdb/unittests/basic_string_view/operations/compare/char/2.cc
create mode 100644 gdb/unittests/basic_string_view/operations/compare/char/70483.cc
create mode 100644 gdb/unittests/basic_string_view/operations/compare/wchar_t/1.cc
create mode 100644 gdb/unittests/basic_string_view/operations/compare/wchar_t/13650.cc
create mode 100644 gdb/unittests/basic_string_view/operations/compare/wchar_t/2.cc
create mode 100644 gdb/unittests/basic_string_view/operations/copy/char/1.cc
create mode 100644 gdb/unittests/basic_string_view/operations/copy/wchar_t/1.cc
create mode 100644 gdb/unittests/basic_string_view/operations/data/char/1.cc
create mode 100644 gdb/unittests/basic_string_view/operations/data/wchar_t/1.cc
create mode 100644 gdb/unittests/basic_string_view/operations/find/char/1.cc
create mode 100644 gdb/unittests/basic_string_view/operations/find/char/2.cc
create mode 100644 gdb/unittests/basic_string_view/operations/find/char/3.cc
create mode 100644 gdb/unittests/basic_string_view/operations/find/char/4.cc
create mode 100644 gdb/unittests/basic_string_view/operations/find/wchar_t/1.cc
create mode 100644 gdb/unittests/basic_string_view/operations/find/wchar_t/2.cc
create mode 100644 gdb/unittests/basic_string_view/operations/find/wchar_t/3.cc
create mode 100644 gdb/unittests/basic_string_view/operations/find/wchar_t/4.cc
create mode 100644 gdb/unittests/basic_string_view/operations/rfind/char/1.cc
create mode 100644 gdb/unittests/basic_string_view/operations/rfind/char/2.cc
create mode 100644 gdb/unittests/basic_string_view/operations/rfind/char/3.cc
create mode 100644 gdb/unittests/basic_string_view/operations/rfind/wchar_t/1.cc
create mode 100644 gdb/unittests/basic_string_view/operations/rfind/wchar_t/2.cc
create mode 100644 gdb/unittests/basic_string_view/operations/rfind/wchar_t/3.cc
create mode 100644 gdb/unittests/basic_string_view/operations/string_conversion/1.cc
create mode 100644 gdb/unittests/basic_string_view/operations/substr/char/1.cc
create mode 100644 gdb/unittests/basic_string_view/operations/substr/wchar_t/1.cc
create mode 100644 gdb/unittests/basic_string_view/operators/char/2.cc
create mode 100644 gdb/unittests/basic_string_view/operators/wchar_t/2.cc
create mode 100644 gdb/unittests/basic_string_view/range_access/char/1.cc
create mode 100644 gdb/unittests/basic_string_view/range_access/wchar_t/1.cc
create mode 100644 gdb/unittests/basic_string_view/requirements/explicit_instantiation/1.cc
create mode 100644 gdb/unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc
create mode 100644 gdb/unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc
create mode 100644 gdb/unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc
create mode 100644 gdb/unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc
create mode 100644 gdb/unittests/basic_string_view/requirements/typedefs.cc
create mode 100644 gdb/unittests/basic_string_view/typedefs.cc
create mode 100644 gdb/unittests/basic_string_view/types/1.cc
create mode 100644 gdb/unittests/cli-utils-selftests.c
create mode 100644 gdb/unittests/common-utils-selftests.c
create mode 100644 gdb/unittests/environ-selftests.c
create mode 100644 gdb/unittests/format_pieces-selftests.c
create mode 100644 gdb/unittests/lookup_name_info-selftests.c
create mode 100644 gdb/unittests/memory-map-selftests.c
create mode 100644 gdb/unittests/memrange-selftests.c
create mode 100644 gdb/unittests/mkdir-recursive-selftests.c
create mode 100644 gdb/unittests/observable-selftests.c
create mode 100644 gdb/unittests/optional-selftests.c
create mode 100644 gdb/unittests/optional/assignment/1.cc
create mode 100644 gdb/unittests/optional/assignment/2.cc
create mode 100644 gdb/unittests/optional/assignment/3.cc
create mode 100644 gdb/unittests/optional/assignment/4.cc
create mode 100644 gdb/unittests/optional/assignment/5.cc
create mode 100644 gdb/unittests/optional/assignment/6.cc
create mode 100644 gdb/unittests/optional/assignment/7.cc
create mode 100644 gdb/unittests/optional/cons/copy.cc
create mode 100644 gdb/unittests/optional/cons/default.cc
create mode 100644 gdb/unittests/optional/cons/move.cc
create mode 100644 gdb/unittests/optional/cons/value.cc
create mode 100644 gdb/unittests/optional/in_place.cc
create mode 100644 gdb/unittests/optional/observers/1.cc
create mode 100644 gdb/unittests/optional/observers/2.cc
create mode 100644 gdb/unittests/parse-connection-spec-selftests.c
create mode 100644 gdb/unittests/rsp-low-selftests.c
create mode 100644 gdb/unittests/scoped_fd-selftests.c
create mode 100644 gdb/unittests/scoped_mmap-selftests.c
create mode 100644 gdb/unittests/scoped_restore-selftests.c
create mode 100644 gdb/unittests/string_view-selftests.c
create mode 100644 gdb/unittests/tracepoint-selftests.c
create mode 100644 gdb/unittests/unpack-selftests.c
create mode 100644 gdb/unittests/utils-selftests.c
create mode 100644 gdb/unittests/xml-utils-selftests.c
delete mode 100644 gdb/utils-selftests.c
create mode 100644 gdb/x86-tdep.c
create mode 100644 gdb/x86-tdep.h
create mode 100644 gold/ChangeLog-2017
create mode 100644 gold/po/ja.po
create mode 100644 gold/po/sv.po
create mode 100644 gold/po/uk.po
create mode 100644 gold/testsuite/aarch64_tlsdesc.s
create mode 100755 gold/testsuite/aarch64_tlsdesc.sh
create mode 100644 gold/testsuite/aarch64_tlsdesc.t
create mode 100755 gold/testsuite/arm_farcall_arm_arm_be8.sh
create mode 100755 gold/testsuite/arm_farcall_thumb_thumb_be8.sh
create mode 100755 gold/testsuite/empty_command_line_test.sh
create mode 100644 gold/testsuite/export_dynamic_plugin.cc
create mode 100644 gold/testsuite/gnu_property_a.S
create mode 100644 gold/testsuite/gnu_property_b.S
create mode 100644 gold/testsuite/gnu_property_c.S
create mode 100644 gold/testsuite/gnu_property_main.c
create mode 100755 gold/testsuite/gnu_property_test.sh
create mode 100644 gold/testsuite/keep_text_section_prefix.cc
create mode 100755 gold/testsuite/keep_text_section_prefix.sh
create mode 100644 gold/testsuite/plugin_new_section_layout.c
create mode 100755 gold/testsuite/plugin_pr22868.sh
create mode 100644 gold/testsuite/plugin_pr22868_a.c
create mode 100644 gold/testsuite/plugin_pr22868_b.c
create mode 100755 gold/testsuite/plugin_test_12.sh
create mode 100644 gold/testsuite/plugin_test_defsym.c
create mode 100755 gold/testsuite/plugin_test_defsym.sh
create mode 100755 gold/testsuite/plugin_test_wrap_symbols.sh
create mode 100644 gold/testsuite/plugin_test_wrap_symbols_1.cc
create mode 100644 gold/testsuite/plugin_test_wrap_symbols_2.cc
create mode 100644 gold/testsuite/pr21430.s
create mode 100755 gold/testsuite/pr21430.sh
create mode 100644 gold/testsuite/pr22266_a.c
create mode 100644 gold/testsuite/pr22266_main.c
create mode 100644 gold/testsuite/pr22266_script.t
create mode 100755 gold/testsuite/pr23016_1.sh
create mode 100644 gold/testsuite/pr23016_1a.s
create mode 100644 gold/testsuite/pr23016_1b.s
create mode 100755 gold/testsuite/pr23016_2.sh
create mode 100644 gold/testsuite/pr23016_2a.s
create mode 100644 gold/testsuite/pr23016_2b.s
create mode 100644 gold/testsuite/text_unlikely_segment.cc
create mode 100755 gold/testsuite/text_unlikely_segment.sh
create mode 100644 gold/testsuite/ver_test_14.script
create mode 100755 gold/testsuite/ver_test_14.sh
create mode 100755 gold/testsuite/ver_test_pr16504.sh
create mode 100644 gold/testsuite/ver_test_pr16504_a.c
create mode 100644 gold/testsuite/ver_test_pr16504_a.script
create mode 100644 gold/testsuite/ver_test_pr16504_b.c
create mode 100644 gold/testsuite/ver_test_pr16504_b.script
create mode 100755 gold/testsuite/ver_test_pr23409.sh
create mode 100644 gold/testsuite/ver_test_pr23409_1.script
create mode 100644 gold/testsuite/ver_test_pr23409_2.script
create mode 100755 gold/testsuite/weak_as_needed.sh
create mode 100644 gold/testsuite/weak_as_needed_a.c
create mode 100644 gold/testsuite/weak_as_needed_b.c
create mode 100644 gold/testsuite/weak_as_needed_b.script
create mode 100644 gold/testsuite/weak_as_needed_c.c
create mode 100644 gold/testsuite/weak_as_needed_c.script
create mode 100644 gprof/ChangeLog-2017
delete mode 100644 gprof/tahoe.c
create mode 100644 include/ChangeLog-2017
delete mode 100644 include/aout/adobe.h
delete mode 100644 include/aout/dynix3.h
delete mode 100644 include/aout/hp300hpux.h
delete mode 100644 include/aout/reloc.h
delete mode 100644 include/coff/apollo.h
delete mode 100644 include/coff/aux-coff.h
delete mode 100644 include/coff/h8300.h
delete mode 100644 include/coff/h8500.h
delete mode 100644 include/coff/i860.h
delete mode 100644 include/coff/i960.h
delete mode 100644 include/coff/m68k.h
delete mode 100644 include/coff/m88k.h
delete mode 100644 include/coff/mipspe.h
create mode 100644 include/coff/msdos.h
delete mode 100644 include/coff/sparc.h
delete mode 100644 include/coff/w65.h
delete mode 100644 include/coff/we32k.h
create mode 100644 include/diagnostics.h
create mode 100644 include/elf/arc-cpu.def
create mode 100644 include/elf/csky.h
create mode 100755 include/elf/nfp.h
create mode 100644 include/elf/s12z.h
create mode 100644 include/gcc-cp-fe.def
create mode 100644 include/gcc-cp-interface.h
delete mode 100644 include/ieee.h
delete mode 100644 include/nlm/ChangeLog-9315
delete mode 100644 include/nlm/alpha-ext.h
delete mode 100644 include/nlm/common.h
delete mode 100644 include/nlm/external.h
delete mode 100644 include/nlm/i386-ext.h
delete mode 100644 include/nlm/internal.h
delete mode 100644 include/nlm/ppc-ext.h
delete mode 100644 include/nlm/sparc32-ext.h
create mode 100644 include/opcode/arc-attrs.h
create mode 100644 include/opcode/csky.h
delete mode 100644 include/opcode/i370.h
delete mode 100644 include/opcode/i860.h
delete mode 100644 include/opcode/i960.h
delete mode 100644 include/opcode/m88k.h
create mode 100644 include/opcode/nfp.h
create mode 100644 include/opcode/s12z.h
delete mode 100644 include/opcode/tahoe.h
create mode 100644 ld/ChangeLog-2017
delete mode 100644 ld/emulparams/arm_epoc_pe.sh
delete mode 100644 ld/emulparams/armaoutb.sh
delete mode 100644 ld/emulparams/armaoutl.sh
delete mode 100644 ld/emulparams/armcoff.sh
create mode 100644 ld/emulparams/armelf_linux_fdpiceabi.sh
create mode 100644 ld/emulparams/armelfb_linux_fdpiceabi.sh
delete mode 100644 ld/emulparams/armnbsd.sh
create mode 100644 ld/emulparams/cet.sh
delete mode 100644 ld/emulparams/coff_i860.sh
delete mode 100644 ld/emulparams/coff_sparc.sh
create mode 100644 ld/emulparams/cskyelf.sh
create mode 100644 ld/emulparams/cskyelf_linux.sh
delete mode 100644 ld/emulparams/delta68.sh
delete mode 100644 ld/emulparams/elf32_i860.sh
delete mode 100644 ld/emulparams/elf32_i960.sh
delete mode 100644 ld/emulparams/elf32i370.sh
create mode 100644 ld/emulparams/elf32lriscv_ilp32.sh
create mode 100644 ld/emulparams/elf32lriscv_ilp32f.sh
create mode 100644 ld/emulparams/elf64lriscv_lp64.sh
create mode 100644 ld/emulparams/elf64lriscv_lp64f.sh
delete mode 100644 ld/emulparams/gld960.sh
delete mode 100644 ld/emulparams/gld960coff.sh
delete mode 100644 ld/emulparams/h8300.sh
delete mode 100644 ld/emulparams/h8300h.sh
delete mode 100644 ld/emulparams/h8300hn.sh
delete mode 100644 ld/emulparams/h8300s.sh
delete mode 100644 ld/emulparams/h8300sn.sh
delete mode 100644 ld/emulparams/h8300sx.sh
delete mode 100644 ld/emulparams/h8300sxn.sh
delete mode 100644 ld/emulparams/h8500.sh
delete mode 100644 ld/emulparams/h8500b.sh
delete mode 100644 ld/emulparams/h8500c.sh
delete mode 100644 ld/emulparams/h8500m.sh
delete mode 100644 ld/emulparams/h8500s.sh
delete mode 100644 ld/emulparams/hp300bsd.sh
delete mode 100644 ld/emulparams/hp3hpux.sh
delete mode 100644 ld/emulparams/i386coff.sh
delete mode 100644 ld/emulparams/i386linux.sh
delete mode 100644 ld/emulparams/i386mach.sh
delete mode 100644 ld/emulparams/i386nbsd.sh
delete mode 100644 ld/emulparams/i386nw.sh
delete mode 100644 ld/emulparams/lnk960.sh
delete mode 100644 ld/emulparams/m68k4knbsd.sh
delete mode 100644 ld/emulparams/m68kaout.sh
delete mode 100644 ld/emulparams/m68kaux.sh
delete mode 100644 ld/emulparams/m68kcoff.sh
delete mode 100644 ld/emulparams/m68klinux.sh
delete mode 100644 ld/emulparams/m68knbsd.sh
delete mode 100644 ld/emulparams/m68kpsos.sh
delete mode 100644 ld/emulparams/m88kbcs.sh
create mode 100644 ld/emulparams/m9s12zelf.sh
delete mode 100644 ld/emulparams/news.sh
delete mode 100644 ld/emulparams/ppcnw.sh
delete mode 100644 ld/emulparams/riscix.sh
delete mode 100644 ld/emulparams/shelf32.sh
delete mode 100644 ld/emulparams/shelf32_linux.sh
delete mode 100644 ld/emulparams/shelf32_nbsd.sh
delete mode 100644 ld/emulparams/shelf64.sh
delete mode 100644 ld/emulparams/shelf64_nbsd.sh
delete mode 100644 ld/emulparams/shlelf32.sh
delete mode 100644 ld/emulparams/shlelf32_linux.sh
delete mode 100644 ld/emulparams/shlelf32_nbsd.sh
delete mode 100644 ld/emulparams/shlelf64.sh
delete mode 100644 ld/emulparams/shlelf64_nbsd.sh
delete mode 100644 ld/emulparams/shlsymbian.sh
delete mode 100644 ld/emulparams/sparcaout.sh
delete mode 100644 ld/emulparams/sparclinux.sh
delete mode 100644 ld/emulparams/sparcnbsd.sh
delete mode 100644 ld/emulparams/st2000.sh
delete mode 100644 ld/emulparams/sun3.sh
delete mode 100644 ld/emulparams/sun4.sh
delete mode 100644 ld/emulparams/vax.sh
delete mode 100644 ld/emulparams/vsta.sh
delete mode 100644 ld/emulparams/w65.sh
create mode 100644 ld/emultempl/cskyelf.em
delete mode 100644 ld/emultempl/gld960.em
delete mode 100644 ld/emultempl/gld960c.em
delete mode 100644 ld/emultempl/lnk960.em
delete mode 100644 ld/emultempl/m68kcoff.em
create mode 100644 ld/emultempl/s390.em
delete mode 100644 ld/emultempl/sh64elf.em
delete mode 100644 ld/emultempl/sunos.em
create mode 100644 ld/ld.texi
delete mode 100644 ld/ld.texinfo
create mode 100644 ld/ldint.texi
delete mode 100644 ld/ldint.texinfo
create mode 100644 ld/po/BLD-POTFILES.in
delete mode 100644 ld/po/POTFILES.in
create mode 100644 ld/po/SRC-POTFILES.in
create mode 100644 ld/po/de.po
create mode 100644 ld/po/pt_BR.po
create mode 100644 ld/po/ru.po
delete mode 100644 ld/scripttempl/armaout.sc
delete mode 100644 ld/scripttempl/armcoff.sc
delete mode 100644 ld/scripttempl/avrtiny.sc
delete mode 100644 ld/scripttempl/delta68.sc
delete mode 100644 ld/scripttempl/elf32sh-symbian.sc
delete mode 100644 ld/scripttempl/elfi370.sc
create mode 100644 ld/scripttempl/elfm9s12z.sc
delete mode 100644 ld/scripttempl/epocpe.sc
delete mode 100644 ld/scripttempl/h8300.sc
delete mode 100644 ld/scripttempl/h8300h.sc
delete mode 100644 ld/scripttempl/h8300hn.sc
delete mode 100644 ld/scripttempl/h8300s.sc
delete mode 100644 ld/scripttempl/h8300sn.sc
delete mode 100644 ld/scripttempl/h8300sx.sc
delete mode 100644 ld/scripttempl/h8300sxn.sc
delete mode 100644 ld/scripttempl/h8500.sc
delete mode 100644 ld/scripttempl/h8500b.sc
delete mode 100644 ld/scripttempl/h8500c.sc
delete mode 100644 ld/scripttempl/h8500m.sc
delete mode 100644 ld/scripttempl/h8500s.sc
delete mode 100644 ld/scripttempl/i386coff.sc
delete mode 100644 ld/scripttempl/i860coff.sc
delete mode 100644 ld/scripttempl/i960.sc
delete mode 100644 ld/scripttempl/m68kaux.sc
delete mode 100644 ld/scripttempl/m68kcoff.sc
delete mode 100644 ld/scripttempl/m88kbcs.sc
delete mode 100644 ld/scripttempl/nw.sc
delete mode 100644 ld/scripttempl/psos.sc
delete mode 100644 ld/scripttempl/riscix.sc
delete mode 100644 ld/scripttempl/sparccoff.sc
delete mode 100644 ld/scripttempl/st2000.sc
delete mode 100644 ld/scripttempl/w65.sc
create mode 100644 ld/testsuite/ld-aarch64/copy-reloc-2.d
create mode 100644 ld/testsuite/ld-aarch64/copy-reloc-eliminate.d
create mode 100644 ld/testsuite/ld-aarch64/copy-reloc-exe-2.s
create mode 100644 ld/testsuite/ld-aarch64/copy-reloc-exe-eliminate.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-112-overflow.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-112-overflow.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-112.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-112.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-113.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-113.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-114-overflow.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-114-overflow.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-114.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-114.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-115.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-115.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-116-overflow.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-116-overflow.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-116.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-116.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-117.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-117.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-118-overflow.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-118-overflow.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-118.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-118.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-119.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-119.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-258-dyn-bad.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-258.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-259-dyn-bad.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-259.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-287-overflow.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-287-overflow.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-288.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-288.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-289-overflow.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-289-overflow.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-289.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-289.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-290.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-290.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-291-overflow.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-291-overflow.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-291.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-291.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-292.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-292.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-293.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-293.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-552-overflow.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-552-overflow.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-552.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-552.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-553.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-553.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-554-overflow.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-554-overflow.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-554.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-554.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-555.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-555.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-556-overflow.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-556-overflow.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-556.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-556.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-557.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-557.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-558-overflow.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-558-overflow.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-558.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-558.s
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-559.d
create mode 100644 ld/testsuite/ld-aarch64/emit-relocs-559.s
create mode 100644 ld/testsuite/ld-aarch64/pcrel_pic_defined.d
delete mode 100644 ld/testsuite/ld-aarch64/pcrel_pic_defined_local.d
create mode 100644 ld/testsuite/ld-aarch64/pr20402.d
create mode 100644 ld/testsuite/ld-aarch64/pr20402.s
create mode 100644 ld/testsuite/ld-aarch64/pr22764.d
create mode 100644 ld/testsuite/ld-aarch64/pr22764.s
create mode 100644 ld/testsuite/ld-arc/attr-merge-0.d
create mode 100644 ld/testsuite/ld-arc/attr-merge-0.s
create mode 100644 ld/testsuite/ld-arc/attr-merge-0e.s
create mode 100644 ld/testsuite/ld-arc/attr-merge-1.d
create mode 100644 ld/testsuite/ld-arc/attr-merge-1.s
create mode 100644 ld/testsuite/ld-arc/attr-merge-1e.s
create mode 100644 ld/testsuite/ld-arc/attr-merge-2.d
create mode 100644 ld/testsuite/ld-arc/attr-merge-2.s
create mode 100644 ld/testsuite/ld-arc/attr-merge-3.d
create mode 100644 ld/testsuite/ld-arc/attr-merge-3.s
create mode 100644 ld/testsuite/ld-arc/attr-merge-3e.s
create mode 100644 ld/testsuite/ld-arc/attr-merge-4.s
create mode 100644 ld/testsuite/ld-arc/attr-merge-5.d
create mode 100644 ld/testsuite/ld-arc/attr-merge-5a.s
create mode 100644 ld/testsuite/ld-arc/attr-merge-5b.s
create mode 100644 ld/testsuite/ld-arc/attr-merge-6.d
create mode 100644 ld/testsuite/ld-arc/attr-merge-6a.s
create mode 100644 ld/testsuite/ld-arc/attr-merge-6b.s
create mode 100644 ld/testsuite/ld-arc/attr-merge-6bis.d
create mode 100644 ld/testsuite/ld-arc/attr-merge-conflict-isa.d
create mode 100644 ld/testsuite/ld-arc/attr-merge-err-isa.d
create mode 100644 ld/testsuite/ld-arc/attr-merge-err-quarkse.d
create mode 100644 ld/testsuite/ld-arc/attr-merge-incompatible-cpu.d
create mode 100644 ld/testsuite/ld-arc/attr-quarkse.s
create mode 100644 ld/testsuite/ld-arc/attr-quarkse2.s
create mode 100644 ld/testsuite/ld-arc/jli-overflow.d
create mode 100644 ld/testsuite/ld-arc/jli-overflow.err
create mode 100644 ld/testsuite/ld-arc/jli-overflow.s
create mode 100644 ld/testsuite/ld-arc/jli-script.ld
create mode 100644 ld/testsuite/ld-arc/jli-simple.dd
create mode 100644 ld/testsuite/ld-arc/jli-simple.rd
create mode 100644 ld/testsuite/ld-arc/jli-simple.s
create mode 100644 ld/testsuite/ld-arm/attr-merge-11.attr
create mode 100644 ld/testsuite/ld-arm/attr-merge-11a.s
create mode 100644 ld/testsuite/ld-arm/attr-merge-11b.s
create mode 100644 ld/testsuite/ld-arm/attr-merge-12.attr
create mode 100644 ld/testsuite/ld-arm/attr-merge-12a.s
create mode 100644 ld/testsuite/ld-arm/attr-merge-12b.s
create mode 100644 ld/testsuite/ld-arm/cmse-implib.type
create mode 100644 ld/testsuite/ld-arm/fdpic-main-m.d
create mode 100644 ld/testsuite/ld-arm/fdpic-main-m.s
create mode 100644 ld/testsuite/ld-arm/fdpic-main-m.sym
create mode 100644 ld/testsuite/ld-arm/fdpic-main.d
create mode 100644 ld/testsuite/ld-arm/fdpic-main.ld
create mode 100644 ld/testsuite/ld-arm/fdpic-main.r
create mode 100644 ld/testsuite/ld-arm/fdpic-main.s
create mode 100644 ld/testsuite/ld-arm/fdpic-main.sym
create mode 100644 ld/testsuite/ld-arm/fdpic-shared-m.d
create mode 100644 ld/testsuite/ld-arm/fdpic-shared-m.s
create mode 100644 ld/testsuite/ld-arm/fdpic-shared-m.sym
create mode 100644 ld/testsuite/ld-arm/fdpic-shared.d
create mode 100644 ld/testsuite/ld-arm/fdpic-shared.ld
create mode 100644 ld/testsuite/ld-arm/fdpic-shared.r
create mode 100644 ld/testsuite/ld-arm/fdpic-shared.s
create mode 100644 ld/testsuite/ld-arm/fdpic-shared.sym
create mode 100644 ld/testsuite/ld-avr/pr13402.d
create mode 100644 ld/testsuite/ld-avr/pr13402.s
create mode 100644 ld/testsuite/ld-avr/pr21404-1.d
create mode 100644 ld/testsuite/ld-avr/pr21404-1.s
create mode 100644 ld/testsuite/ld-avr/pr21404-2.d
create mode 100644 ld/testsuite/ld-avr/pr21404-2.s
create mode 100644 ld/testsuite/ld-avr/pr21404-3.d
create mode 100644 ld/testsuite/ld-avr/pr21404-3.s
create mode 100644 ld/testsuite/ld-avr/pr21404-4.d
create mode 100644 ld/testsuite/ld-avr/pr21404-4.s
create mode 100644 ld/testsuite/ld-avr/pr21404-5.d
create mode 100644 ld/testsuite/ld-avr/pr21404-5.s
create mode 100644 ld/testsuite/ld-avr/pr21404-6.d
create mode 100644 ld/testsuite/ld-avr/pr21404-6.s
create mode 100644 ld/testsuite/ld-avr/pr21404-7.d
create mode 100644 ld/testsuite/ld-avr/pr21404-7.s
create mode 100644 ld/testsuite/ld-avr/pr21404-8.d
create mode 100644 ld/testsuite/ld-avr/pr21404-8.s
create mode 100644 ld/testsuite/ld-csky/csky.exp
create mode 100644 ld/testsuite/ld-csky/data.d
create mode 100644 ld/testsuite/ld-csky/data.s
create mode 100644 ld/testsuite/ld-csky/data_section.s
create mode 100644 ld/testsuite/ld-csky/emit-relocs-1.d
create mode 100644 ld/testsuite/ld-csky/emit-relocs-1.ld
create mode 100644 ld/testsuite/ld-csky/emit-relocs-1a.s
create mode 100644 ld/testsuite/ld-csky/emit-relocs-1b.s
create mode 100644 ld/testsuite/ld-csky/got.d
create mode 100644 ld/testsuite/ld-csky/got.s
create mode 100644 ld/testsuite/ld-csky/hilo16.d
create mode 100644 ld/testsuite/ld-csky/hilo16.s
create mode 100644 ld/testsuite/ld-csky/hilo16_symbol.s
create mode 100644 ld/testsuite/ld-csky/tls-gd-v1.d
create mode 100644 ld/testsuite/ld-csky/tls-gd-v1.s
create mode 100644 ld/testsuite/ld-csky/tls-gd.d
create mode 100644 ld/testsuite/ld-csky/tls-gd.s
create mode 100644 ld/testsuite/ld-csky/tls-ie-v1.d
create mode 100644 ld/testsuite/ld-csky/tls-ie-v1.s
create mode 100644 ld/testsuite/ld-csky/tls-ie.d
create mode 100644 ld/testsuite/ld-csky/tls-ie.s
create mode 100644 ld/testsuite/ld-csky/tls-ld-v1.d
create mode 100644 ld/testsuite/ld-csky/tls-ld-v1.s
create mode 100644 ld/testsuite/ld-csky/tls-ld.d
create mode 100644 ld/testsuite/ld-csky/tls-ld.s
create mode 100644 ld/testsuite/ld-csky/tls-le-v1.d
create mode 100644 ld/testsuite/ld-csky/tls-le-v1.s
create mode 100644 ld/testsuite/ld-csky/tls-le.d
create mode 100644 ld/testsuite/ld-csky/tls-le.s
create mode 100644 ld/testsuite/ld-elf/changelma.d
create mode 100644 ld/testsuite/ld-elf/changelma.lnk
create mode 100644 ld/testsuite/ld-elf/changelma.s
create mode 100644 ld/testsuite/ld-elf/compress1-alt.s
create mode 100644 ld/testsuite/ld-elf/compressed1d-alt.d
create mode 100644 ld/testsuite/ld-elf/dummy.s
create mode 100644 ld/testsuite/ld-elf/globalaudit.rd
create mode 100644 ld/testsuite/ld-elf/group11.d
create mode 100644 ld/testsuite/ld-elf/group12.d
create mode 100644 ld/testsuite/ld-elf/group12.ld
create mode 100644 ld/testsuite/ld-elf/indirect5.map
create mode 100644 ld/testsuite/ld-elf/indirect5.out
create mode 100644 ld/testsuite/ld-elf/indirect5a.c
create mode 100644 ld/testsuite/ld-elf/indirect5b.c
create mode 100644 ld/testsuite/ld-elf/indirect6a.c
create mode 100644 ld/testsuite/ld-elf/interleave-0.d
create mode 100644 ld/testsuite/ld-elf/interleave-4.d
create mode 100644 ld/testsuite/ld-elf/interleave.ld
create mode 100644 ld/testsuite/ld-elf/interleave.s
create mode 100644 ld/testsuite/ld-elf/linux-x86.S
create mode 100644 ld/testsuite/ld-elf/linux-x86.exp
create mode 100644 ld/testsuite/ld-elf/note1.r
create mode 100644 ld/testsuite/ld-elf/note1_1.s
create mode 100644 ld/testsuite/ld-elf/note1_2.s
create mode 100644 ld/testsuite/ld-elf/notes.exp
create mode 100644 ld/testsuite/ld-elf/orphan-11.d
create mode 100644 ld/testsuite/ld-elf/orphan-11.ld
create mode 100644 ld/testsuite/ld-elf/orphan-11.s
create mode 100644 ld/testsuite/ld-elf/orphan-12.d
create mode 100644 ld/testsuite/ld-elf/orphan-12.s
create mode 100644 ld/testsuite/ld-elf/pr21086.c
create mode 100644 ld/testsuite/ld-elf/pr21086.list
create mode 100644 ld/testsuite/ld-elf/pr21384.d
create mode 100644 ld/testsuite/ld-elf/pr21384.dl
create mode 100644 ld/testsuite/ld-elf/pr21384.ld
create mode 100644 ld/testsuite/ld-elf/pr21384.s
create mode 100644 ld/testsuite/ld-elf/pr21389.map
create mode 100644 ld/testsuite/ld-elf/pr21389.s
create mode 100644 ld/testsuite/ld-elf/pr21389a.d
create mode 100644 ld/testsuite/ld-elf/pr21389b.d
create mode 100644 ld/testsuite/ld-elf/pr21389c.d
create mode 100644 ld/testsuite/ld-elf/pr21562a.d
create mode 100644 ld/testsuite/ld-elf/pr21562a.s
create mode 100644 ld/testsuite/ld-elf/pr21562a.t
create mode 100644 ld/testsuite/ld-elf/pr21562b.d
create mode 100644 ld/testsuite/ld-elf/pr21562b.s
create mode 100644 ld/testsuite/ld-elf/pr21562b.t
create mode 100644 ld/testsuite/ld-elf/pr21562c.d
create mode 100644 ld/testsuite/ld-elf/pr21562c.t
create mode 100644 ld/testsuite/ld-elf/pr21562d.d
create mode 100644 ld/testsuite/ld-elf/pr21562d.t
create mode 100644 ld/testsuite/ld-elf/pr21562e.d
create mode 100644 ld/testsuite/ld-elf/pr21562f.d
create mode 100644 ld/testsuite/ld-elf/pr21562g.d
create mode 100644 ld/testsuite/ld-elf/pr21562h.d
create mode 100644 ld/testsuite/ld-elf/pr21562i.d
create mode 100644 ld/testsuite/ld-elf/pr21562j.d
create mode 100644 ld/testsuite/ld-elf/pr21562k.d
create mode 100644 ld/testsuite/ld-elf/pr21562l.d
create mode 100644 ld/testsuite/ld-elf/pr21562m.d
create mode 100644 ld/testsuite/ld-elf/pr21562n.d
create mode 100644 ld/testsuite/ld-elf/pr21703-1.s
create mode 100644 ld/testsuite/ld-elf/pr21703-2.s
create mode 100644 ld/testsuite/ld-elf/pr21703-3.s
create mode 100644 ld/testsuite/ld-elf/pr21703-4.s
create mode 100644 ld/testsuite/ld-elf/pr21703-r.sd
create mode 100644 ld/testsuite/ld-elf/pr21703-shared.sd
create mode 100644 ld/testsuite/ld-elf/pr21703.sd
create mode 100644 ld/testsuite/ld-elf/pr21703.ver
create mode 100644 ld/testsuite/ld-elf/pr21884.d
create mode 100644 ld/testsuite/ld-elf/pr21884.t
create mode 100644 ld/testsuite/ld-elf/pr21884a.s
create mode 100644 ld/testsuite/ld-elf/pr21884b.s
create mode 100644 ld/testsuite/ld-elf/pr21903.s
create mode 100644 ld/testsuite/ld-elf/pr21903a.d
create mode 100644 ld/testsuite/ld-elf/pr21903b.d
create mode 100644 ld/testsuite/ld-elf/pr21903c.d
create mode 100644 ld/testsuite/ld-elf/pr21903d.d
create mode 100644 ld/testsuite/ld-elf/pr21903e.d
create mode 100644 ld/testsuite/ld-elf/pr21904.d
create mode 100644 ld/testsuite/ld-elf/pr21904.s
create mode 100644 ld/testsuite/ld-elf/pr21964-1a.c
create mode 100644 ld/testsuite/ld-elf/pr21964-1b.c
create mode 100644 ld/testsuite/ld-elf/pr21964-1c.c
create mode 100644 ld/testsuite/ld-elf/pr21964-2a.c
create mode 100644 ld/testsuite/ld-elf/pr21964-2b.c
create mode 100644 ld/testsuite/ld-elf/pr21964-2c.c
create mode 100644 ld/testsuite/ld-elf/pr21964-3a.c
create mode 100644 ld/testsuite/ld-elf/pr21964-3c.c
create mode 100644 ld/testsuite/ld-elf/pr21964-4.c
create mode 100644 ld/testsuite/ld-elf/pr21964-5.c
create mode 100644 ld/testsuite/ld-elf/pr21978.od
create mode 100644 ld/testsuite/ld-elf/pr21978a.c
create mode 100644 ld/testsuite/ld-elf/pr21978b.c
create mode 100644 ld/testsuite/ld-elf/pr22150.vd
create mode 100644 ld/testsuite/ld-elf/pr22150.ver
create mode 100644 ld/testsuite/ld-elf/pr22150a.s
create mode 100644 ld/testsuite/ld-elf/pr22150b.s
create mode 100644 ld/testsuite/ld-elf/pr22263-1.rd
create mode 100644 ld/testsuite/ld-elf/pr22263-1a.c
create mode 100644 ld/testsuite/ld-elf/pr22263-1b.c
create mode 100644 ld/testsuite/ld-elf/pr22269-1.c
create mode 100644 ld/testsuite/ld-elf/pr22269-1.rd
create mode 100644 ld/testsuite/ld-elf/pr22269.s
create mode 100644 ld/testsuite/ld-elf/pr22269a.d
create mode 100644 ld/testsuite/ld-elf/pr22269b.d
create mode 100644 ld/testsuite/ld-elf/pr22319.d
create mode 100644 ld/testsuite/ld-elf/pr22319.s
create mode 100644 ld/testsuite/ld-elf/pr22374-1.r
create mode 100644 ld/testsuite/ld-elf/pr22374-2.r
create mode 100644 ld/testsuite/ld-elf/pr22374a.s
create mode 100644 ld/testsuite/ld-elf/pr22374b.s
create mode 100644 ld/testsuite/ld-elf/pr22393-1.s
create mode 100644 ld/testsuite/ld-elf/pr22393-1a.d
create mode 100644 ld/testsuite/ld-elf/pr22393-1b.d
create mode 100644 ld/testsuite/ld-elf/pr22393-1c.d
create mode 100644 ld/testsuite/ld-elf/pr22393-1d.d
create mode 100644 ld/testsuite/ld-elf/pr22393-1e.d
create mode 100644 ld/testsuite/ld-elf/pr22393-1f.d
create mode 100644 ld/testsuite/ld-elf/pr22393-2a.c
create mode 100644 ld/testsuite/ld-elf/pr22393-2a.rd
create mode 100644 ld/testsuite/ld-elf/pr22393-2b.c
create mode 100644 ld/testsuite/ld-elf/pr22393-2b.rd
create mode 100644 ld/testsuite/ld-elf/pr22423.d
create mode 100644 ld/testsuite/ld-elf/pr22450.d
create mode 100644 ld/testsuite/ld-elf/pr22450.s
create mode 100644 ld/testsuite/ld-elf/pr22471.t
create mode 100644 ld/testsuite/ld-elf/pr22471a.s
create mode 100644 ld/testsuite/ld-elf/pr22471b.s
create mode 100644 ld/testsuite/ld-elf/pr22649-1.s
create mode 100644 ld/testsuite/ld-elf/pr22649-2a.s
create mode 100644 ld/testsuite/ld-elf/pr22649-2ab-mips.msg
create mode 100644 ld/testsuite/ld-elf/pr22649-2b.s
create mode 100644 ld/testsuite/ld-elf/pr22649-2cd-mips.msg
create mode 100644 ld/testsuite/ld-elf/pr22649.msg
create mode 100644 ld/testsuite/ld-elf/pr22677.d
create mode 100644 ld/testsuite/ld-elf/pr22677.s
create mode 100644 ld/testsuite/ld-elf/pr22836-1.s
create mode 100644 ld/testsuite/ld-elf/pr22836-1a.d
create mode 100644 ld/testsuite/ld-elf/pr22836-1b.d
create mode 100644 ld/testsuite/ld-elf/pr22836-2.d
create mode 100644 ld/testsuite/ld-elf/pr22836-2.s
create mode 100644 ld/testsuite/ld-elf/pr23161.map
create mode 100644 ld/testsuite/ld-elf/pr23161a.c
create mode 100644 ld/testsuite/ld-elf/pr23161a.rd
create mode 100644 ld/testsuite/ld-elf/pr23161b.c
create mode 100644 ld/testsuite/ld-elf/pr23161b.rd
create mode 100644 ld/testsuite/ld-elf/pr23161c.c
create mode 100644 ld/testsuite/ld-elf/pr23161c.rd
create mode 100644 ld/testsuite/ld-elf/pr23161d.rd
create mode 100644 ld/testsuite/ld-elf/pr23162.map
create mode 100644 ld/testsuite/ld-elf/pr23162.rd
create mode 100644 ld/testsuite/ld-elf/pr23162a.c
create mode 100644 ld/testsuite/ld-elf/pr23162b.c
create mode 100644 ld/testsuite/ld-elf/pr23428.c
create mode 100644 ld/testsuite/ld-elf/pr23591.d
create mode 100644 ld/testsuite/ld-elf/pr23591a.s
create mode 100644 ld/testsuite/ld-elf/pr23591b.s
create mode 100644 ld/testsuite/ld-elf/pr23591c.s
create mode 100644 ld/testsuite/ld-elf/pr23648.d
create mode 100644 ld/testsuite/ld-elf/pr23648.s
create mode 100644 ld/testsuite/ld-elf/pr23648.t
create mode 100644 ld/testsuite/ld-elf/pr23658-1a.d
create mode 100644 ld/testsuite/ld-elf/pr23658-1a.s
create mode 100644 ld/testsuite/ld-elf/pr23658-1b.d
create mode 100644 ld/testsuite/ld-elf/pr23658-1b.s
create mode 100644 ld/testsuite/ld-elf/pr23658-1c.d
create mode 100644 ld/testsuite/ld-elf/pr23658-1c.s
create mode 100644 ld/testsuite/ld-elf/pr23658-1d.s
create mode 100644 ld/testsuite/ld-elf/pr23658-2.rd
create mode 100644 ld/testsuite/ld-elf/pr23658-3.d
create mode 100644 ld/testsuite/ld-elf/pr23658-3.s
create mode 100644 ld/testsuite/ld-elf/pr23658-3.t
delete mode 100644 ld/testsuite/ld-elf/provide-hidden-dynabs.nd
delete mode 100644 ld/testsuite/ld-elf/provide-hidden-dynsec.nd
create mode 100644 ld/testsuite/ld-elf/reloc-discard-warn.d
create mode 100644 ld/testsuite/ld-elf/reloc-discard.d
create mode 100644 ld/testsuite/ld-elf/reloc-discard.ld
create mode 100644 ld/testsuite/ld-elf/reloc-discard.s
create mode 100644 ld/testsuite/ld-elf/sizeof.s
create mode 100644 ld/testsuite/ld-elf/sizeofa.d
create mode 100644 ld/testsuite/ld-elf/sizeofb.d
create mode 100644 ld/testsuite/ld-elf/sizeofc.d
create mode 100644 ld/testsuite/ld-elf/stack-noexec.rd
create mode 100644 ld/testsuite/ld-elf/startof.s
create mode 100644 ld/testsuite/ld-elf/startofa.d
create mode 100644 ld/testsuite/ld-elf/startofb.d
create mode 100644 ld/testsuite/ld-elf/startofc.d
create mode 100644 ld/testsuite/ld-elf/textrel.map
create mode 100644 ld/testsuite/ld-elf/textrel.rd
create mode 100644 ld/testsuite/ld-elf/textrel.s
create mode 100644 ld/testsuite/ld-elf/textrel.warn
create mode 100644 ld/testsuite/ld-elf/tls.exp
delete mode 100644 ld/testsuite/ld-elf/ver_def-tic6x.vd
create mode 100644 ld/testsuite/ld-elf/x86-feature-1a.rd
create mode 100644 ld/testsuite/ld-elf/x86-feature-1b.rd
create mode 100644 ld/testsuite/ld-elf/x86-feature-1c.rd
create mode 100644 ld/testsuite/ld-elf/x86-feature-1d.rd
create mode 100644 ld/testsuite/ld-elf/x86-feature-1e.rd
create mode 100644 ld/testsuite/ld-elfweak/alias.c
create mode 100644 ld/testsuite/ld-elfweak/alias.dat
create mode 100644 ld/testsuite/ld-elfweak/aliasmain.c
create mode 100644 ld/testsuite/ld-elfweak/weakref1.c
create mode 100644 ld/testsuite/ld-elfweak/weakref2.c
create mode 100644 ld/testsuite/ld-gc/pr20022.d
create mode 100644 ld/testsuite/ld-gc/pr20022a.s
create mode 100644 ld/testsuite/ld-gc/pr20022b.s
create mode 100644 ld/testsuite/ld-gc/pr20882.d
create mode 100644 ld/testsuite/ld-gc/pr20882a.s
create mode 100644 ld/testsuite/ld-gc/pr20882b.s
create mode 100644 ld/testsuite/ld-gc/pr20882c.s
create mode 100644 ld/testsuite/ld-gc/stop.d
create mode 100644 ld/testsuite/ld-gc/stop.s
delete mode 100644 ld/testsuite/ld-h8300/relax-3-coff.d
delete mode 100644 ld/testsuite/ld-h8300/relax-4-coff.d
delete mode 100644 ld/testsuite/ld-h8300/relax-5-coff.d
delete mode 100644 ld/testsuite/ld-h8300/relax-6-coff.d
create mode 100644 ld/testsuite/ld-i386/ibt-plt-1.d
create mode 100644 ld/testsuite/ld-i386/ibt-plt-1.s
create mode 100644 ld/testsuite/ld-i386/ibt-plt-2.s
create mode 100644 ld/testsuite/ld-i386/ibt-plt-2a.d
create mode 100644 ld/testsuite/ld-i386/ibt-plt-2b.d
create mode 100644 ld/testsuite/ld-i386/ibt-plt-2c.d
create mode 100644 ld/testsuite/ld-i386/ibt-plt-2d.d
create mode 100644 ld/testsuite/ld-i386/ibt-plt-3.s
create mode 100644 ld/testsuite/ld-i386/ibt-plt-3a.d
create mode 100644 ld/testsuite/ld-i386/ibt-plt-3b.d
create mode 100644 ld/testsuite/ld-i386/ibt-plt-3c.d
create mode 100644 ld/testsuite/ld-i386/ibt-plt-3d.d
create mode 100644 ld/testsuite/ld-i386/pie1-nacl.d
create mode 100644 ld/testsuite/ld-i386/pie1.d
create mode 100644 ld/testsuite/ld-i386/pie1.s
create mode 100644 ld/testsuite/ld-i386/plt-main-ibt.dd
create mode 100644 ld/testsuite/ld-i386/plt-pic2.dd
create mode 100644 ld/testsuite/ld-i386/plt-pie-ibt.dd
create mode 100644 ld/testsuite/ld-i386/plt2.dd
create mode 100644 ld/testsuite/ld-i386/plt2.rd
create mode 100644 ld/testsuite/ld-i386/plt2.s
create mode 100644 ld/testsuite/ld-i386/pr19636-1j.d
create mode 100644 ld/testsuite/ld-i386/pr19636-1k.d
create mode 100644 ld/testsuite/ld-i386/pr19636-1l.d
create mode 100644 ld/testsuite/ld-i386/pr19636-3h.d
create mode 100644 ld/testsuite/ld-i386/pr19636-3i.d
create mode 100644 ld/testsuite/ld-i386/pr21884-nacl.d
create mode 100644 ld/testsuite/ld-i386/pr21884-nacl.t
create mode 100644 ld/testsuite/ld-i386/pr21884.d
create mode 100644 ld/testsuite/ld-i386/pr21884.t
create mode 100644 ld/testsuite/ld-i386/pr21997-1a.S
create mode 100644 ld/testsuite/ld-i386/pr21997-1b.c
create mode 100644 ld/testsuite/ld-i386/pr21997-1c.S
create mode 100644 ld/testsuite/ld-i386/pr22001-1a.c
create mode 100644 ld/testsuite/ld-i386/pr22001-1b.c
create mode 100644 ld/testsuite/ld-i386/pr22001-1c.S
create mode 100644 ld/testsuite/ld-i386/pr22115-1.s
create mode 100644 ld/testsuite/ld-i386/pr22115-1a.d
create mode 100644 ld/testsuite/ld-i386/pr22115-1b.d
create mode 100644 ld/testsuite/ld-i386/pr22115-1c.d
create mode 100644 ld/testsuite/ld-i386/pr22115-1d.d
create mode 100644 ld/testsuite/ld-i386/pr22135.d
create mode 100644 ld/testsuite/ld-i386/pr22135.s
create mode 100644 ld/testsuite/ld-i386/pr22782.d
create mode 100644 ld/testsuite/ld-i386/pr22782.s
create mode 100644 ld/testsuite/ld-i386/pr22842a.c
create mode 100644 ld/testsuite/ld-i386/pr22842b.S
create mode 100644 ld/testsuite/ld-i386/pr22929.d
create mode 100644 ld/testsuite/ld-i386/pr22929.s
create mode 100644 ld/testsuite/ld-i386/pr23189.d
create mode 100644 ld/testsuite/ld-i386/pr23189.s
create mode 100644 ld/testsuite/ld-i386/pr23189.t
create mode 100644 ld/testsuite/ld-i386/pr23194.d
create mode 100644 ld/testsuite/ld-i386/pr23194.map
create mode 100644 ld/testsuite/ld-i386/pr23194.s
create mode 100644 ld/testsuite/ld-i386/pr23372a.d
create mode 100644 ld/testsuite/ld-i386/pr23372a.s
create mode 100644 ld/testsuite/ld-i386/pr23372b.d
create mode 100644 ld/testsuite/ld-i386/pr23372b.s
create mode 100644 ld/testsuite/ld-i386/pr23372c.d
create mode 100644 ld/testsuite/ld-i386/pr23372c.s
create mode 100644 ld/testsuite/ld-i386/pr23372d.d
create mode 100644 ld/testsuite/ld-i386/pr23486a.d
create mode 100644 ld/testsuite/ld-i386/pr23486b.d
create mode 100644 ld/testsuite/ld-i386/pr23486c.d
create mode 100644 ld/testsuite/ld-i386/pr23486d.d
create mode 100644 ld/testsuite/ld-i386/pr23854.d
create mode 100644 ld/testsuite/ld-i386/pr23854.s
create mode 100644 ld/testsuite/ld-i386/property-1a.r
create mode 100644 ld/testsuite/ld-i386/property-2a.r
create mode 100644 ld/testsuite/ld-i386/property-3a.r
create mode 100644 ld/testsuite/ld-i386/property-4a.r
create mode 100644 ld/testsuite/ld-i386/property-5a.r
create mode 100644 ld/testsuite/ld-i386/property-7a.r
create mode 100644 ld/testsuite/ld-i386/property-x86-3.d
create mode 100644 ld/testsuite/ld-i386/property-x86-3.s
create mode 100644 ld/testsuite/ld-i386/property-x86-4a.d
create mode 100644 ld/testsuite/ld-i386/property-x86-4a.s
create mode 100644 ld/testsuite/ld-i386/property-x86-4b.d
create mode 100644 ld/testsuite/ld-i386/property-x86-4b.s
create mode 100644 ld/testsuite/ld-i386/property-x86-5.d
create mode 100644 ld/testsuite/ld-i386/property-x86-empty.s
create mode 100644 ld/testsuite/ld-i386/property-x86-ibt.s
create mode 100644 ld/testsuite/ld-i386/property-x86-ibt1a.d
create mode 100644 ld/testsuite/ld-i386/property-x86-ibt1b.d
create mode 100644 ld/testsuite/ld-i386/property-x86-ibt2.d
create mode 100644 ld/testsuite/ld-i386/property-x86-ibt3a.d
create mode 100644 ld/testsuite/ld-i386/property-x86-ibt3b.d
create mode 100644 ld/testsuite/ld-i386/property-x86-ibt4.d
create mode 100644 ld/testsuite/ld-i386/property-x86-ibt5.d
create mode 100644 ld/testsuite/ld-i386/property-x86-shstk.s
create mode 100644 ld/testsuite/ld-i386/property-x86-shstk1a.d
create mode 100644 ld/testsuite/ld-i386/property-x86-shstk1b.d
create mode 100644 ld/testsuite/ld-i386/property-x86-shstk2.d
create mode 100644 ld/testsuite/ld-i386/property-x86-shstk3a.d
create mode 100644 ld/testsuite/ld-i386/property-x86-shstk3b.d
create mode 100644 ld/testsuite/ld-i386/property-x86-shstk4.d
create mode 100644 ld/testsuite/ld-i386/property-x86-shstk5.d
create mode 100644 ld/testsuite/ld-i386/protected7.d
create mode 100644 ld/testsuite/ld-i386/protected7.s
create mode 100644 ld/testsuite/ld-i386/tlsdesc1a.c
create mode 100644 ld/testsuite/ld-i386/tlsdesc1b.c
create mode 100644 ld/testsuite/ld-i386/tlsdesc2.d
create mode 100644 ld/testsuite/ld-i386/weakundef1.c
create mode 100644 ld/testsuite/ld-ifunc/ifunc-1-local-x86.map
create mode 100644 ld/testsuite/ld-ifunc/ifunc-1-x86.map
create mode 100644 ld/testsuite/ld-ifunc/ifunc-16-i386-now.d
create mode 100644 ld/testsuite/ld-ifunc/ifunc-16-x86-64-now.d
create mode 100644 ld/testsuite/ld-ifunc/ifunc-2-i386-now.d
create mode 100644 ld/testsuite/ld-ifunc/ifunc-2-local-i386-now.d
create mode 100644 ld/testsuite/ld-ifunc/ifunc-2-local-x86-64-now.d
create mode 100644 ld/testsuite/ld-ifunc/ifunc-2-x86-64-now.d
create mode 100644 ld/testsuite/ld-ifunc/ifunc-26.d
create mode 100644 ld/testsuite/ld-ifunc/ifunc-26.s
create mode 100644 ld/testsuite/ld-ifunc/ifunc-9-i386.d
create mode 100644 ld/testsuite/ld-ifunc/ifunc-9-x86-64.d
delete mode 100644 ld/testsuite/ld-ifunc/ifunc-9-x86.d
create mode 100644 ld/testsuite/ld-ifunc/ifuncmod5.d
create mode 100644 ld/testsuite/ld-ifunc/ifuncmod5.s
create mode 100644 ld/testsuite/ld-ifunc/pr17154-i386-now.d
create mode 100644 ld/testsuite/ld-ifunc/pr17154-x86-64-now.d
create mode 100644 ld/testsuite/ld-ifunc/pr23169a.c
create mode 100644 ld/testsuite/ld-ifunc/pr23169a.rd
create mode 100644 ld/testsuite/ld-ifunc/pr23169b.c
create mode 100644 ld/testsuite/ld-ifunc/pr23169b.rd
create mode 100644 ld/testsuite/ld-ifunc/pr23169c.c
create mode 100644 ld/testsuite/ld-ifunc/pr23169c.rd
create mode 100644 ld/testsuite/ld-mips-elf/bal-jalx-addend-micromips-n32.d
create mode 100644 ld/testsuite/ld-mips-elf/bal-jalx-addend-micromips-n64.d
create mode 100644 ld/testsuite/ld-mips-elf/bal-jalx-addend-micromips.d
create mode 100644 ld/testsuite/ld-mips-elf/bal-jalx-local-micromips-n32.d
create mode 100644 ld/testsuite/ld-mips-elf/bal-jalx-local-micromips-n64.d
create mode 100644 ld/testsuite/ld-mips-elf/bal-jalx-local-micromips.d
create mode 100644 ld/testsuite/ld-mips-elf/bal-jalx-pic-ignore-micromips-n32.d
create mode 100644 ld/testsuite/ld-mips-elf/bal-jalx-pic-ignore-micromips-n64.d
create mode 100644 ld/testsuite/ld-mips-elf/bal-jalx-pic-ignore-micromips.d
create mode 100644 ld/testsuite/ld-mips-elf/bal-jalx-pic-micromips-n32.d
create mode 100644 ld/testsuite/ld-mips-elf/bal-jalx-pic-micromips-n64.d
create mode 100644 ld/testsuite/ld-mips-elf/bal-jalx-pic-micromips.d
create mode 100644 ld/testsuite/ld-mips-elf/binary.d
create mode 100644 ld/testsuite/ld-mips-elf/binary.ld
create mode 100644 ld/testsuite/ld-mips-elf/binary.s
create mode 100644 ld/testsuite/ld-mips-elf/elf-rel-got-n64-irix.d
delete mode 100644 ld/testsuite/ld-mips-elf/elf-rel-got-n64-linux.d
create mode 100644 ld/testsuite/ld-mips-elf/elf-rel-xgot-n64-irix.d
delete mode 100644 ld/testsuite/ld-mips-elf/elf-rel-xgot-n64-linux.d
create mode 100644 ld/testsuite/ld-mips-elf/gp-disp-sym.d
create mode 100644 ld/testsuite/ld-mips-elf/gp-disp-sym.s
create mode 100644 ld/testsuite/ld-mips-elf/lsi-4010-isa.d
create mode 100644 ld/testsuite/ld-mips-elf/mips-abiflags-0.d
create mode 100644 ld/testsuite/ld-mips-elf/mips-abiflags-0.ld
create mode 100644 ld/testsuite/ld-mips-elf/mips-abiflags-0r.d
create mode 100644 ld/testsuite/ld-mips-elf/mips-abiflags-1.d
create mode 100644 ld/testsuite/ld-mips-elf/mips-abiflags-1.ld
create mode 100644 ld/testsuite/ld-mips-elf/mips-abiflags-1r.d
create mode 100644 ld/testsuite/ld-mips-elf/mips-abiflags-2.d
create mode 100644 ld/testsuite/ld-mips-elf/mips-abiflags-2r.d
create mode 100644 ld/testsuite/ld-mips-elf/mips16-branch-absolute-1.d
create mode 100644 ld/testsuite/ld-mips-elf/mips16-branch-absolute-2.d
create mode 100644 ld/testsuite/ld-mips-elf/mips16-branch-absolute-addend-1.d
create mode 100644 ld/testsuite/ld-mips-elf/mips16-branch-absolute-addend-n32-1.d
create mode 100644 ld/testsuite/ld-mips-elf/mips16-branch-absolute-addend-n64-1.d
create mode 100644 ld/testsuite/ld-mips-elf/mips16-branch-absolute-n32-1.d
create mode 100644 ld/testsuite/ld-mips-elf/mips16-branch-absolute-n32-2.d
create mode 100644 ld/testsuite/ld-mips-elf/mips16-branch-absolute-n64-1.d
create mode 100644 ld/testsuite/ld-mips-elf/mips16-branch-absolute-n64-2.d
create mode 100644 ld/testsuite/ld-mips-elf/mips16-pcrel-0.d
create mode 100644 ld/testsuite/ld-mips-elf/mips16-pcrel-1.d
create mode 100644 ld/testsuite/ld-mips-elf/mips16-pcrel-addend-2.d
create mode 100644 ld/testsuite/ld-mips-elf/mips16-pcrel-addend-6.d
create mode 100644 ld/testsuite/ld-mips-elf/mips16-pcrel-n32-0.d
create mode 100644 ld/testsuite/ld-mips-elf/mips16-pcrel-n32-1.d
create mode 100644 ld/testsuite/ld-mips-elf/mips16-pcrel-n64-sym32-0.d
create mode 100644 ld/testsuite/ld-mips-elf/mips16-pcrel-n64-sym32-1.d
create mode 100644 ld/testsuite/ld-mips-elf/mips16e2-pcrel-0.d
create mode 100644 ld/testsuite/ld-mips-elf/mips16e2-pcrel-1.d
create mode 100644 ld/testsuite/ld-mips-elf/mips16e2-pcrel-addend-2.d
create mode 100644 ld/testsuite/ld-mips-elf/mips16e2-pcrel-addend-6.d
create mode 100644 ld/testsuite/ld-mips-elf/mips16e2-pcrel-n32-0.d
create mode 100644 ld/testsuite/ld-mips-elf/mips16e2-pcrel-n32-1.d
create mode 100644 ld/testsuite/ld-mips-elf/mips16e2-pcrel-n64-sym32-0.d
create mode 100644 ld/testsuite/ld-mips-elf/mips16e2-pcrel-n64-sym32-1.d
create mode 100644 ld/testsuite/ld-mips-elf/n64-plt-1.dd
create mode 100644 ld/testsuite/ld-mips-elf/n64-plt-1.gd
create mode 100644 ld/testsuite/ld-mips-elf/n64-plt-1.ld
create mode 100644 ld/testsuite/ld-mips-elf/n64-plt-2.ed
create mode 100644 ld/testsuite/ld-mips-elf/n64-plt-2.ld
create mode 100644 ld/testsuite/ld-mips-elf/n64-plt-3.ed
create mode 100644 ld/testsuite/ld-mips-elf/n64-plt-3.ld
create mode 100644 ld/testsuite/ld-mips-elf/n64-plt-4.dd
create mode 100644 ld/testsuite/ld-mips-elf/n64-plt-4.gd
create mode 100644 ld/testsuite/ld-mips-elf/n64-plt-4.ld
create mode 100644 ld/testsuite/ld-mips-elf/n64-plt-lib.s
create mode 100644 ld/testsuite/ld-mips-elf/n64-plt.s
create mode 100644 ld/testsuite/ld-mips-elf/pr21334.dd
create mode 100644 ld/testsuite/ld-mips-elf/pr21334.gd
create mode 100644 ld/testsuite/ld-mips-elf/pr21334.ld
create mode 100644 ld/testsuite/ld-mips-elf/pr21334.s
create mode 100644 ld/testsuite/ld-mips-elf/pr21375-abi.hd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375-irix.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375-mips16.s
create mode 100644 ld/testsuite/ld-mips-elf/pr21375-n32.s
create mode 100644 ld/testsuite/ld-mips-elf/pr21375-n64.s
create mode 100644 ld/testsuite/ld-mips-elf/pr21375-noabi.hd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375-xgot.ld
create mode 100644 ld/testsuite/ld-mips-elf/pr21375-xgot.s
create mode 100644 ld/testsuite/ld-mips-elf/pr21375.dd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375.gd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375.ld
create mode 100644 ld/testsuite/ld-mips-elf/pr21375.s
create mode 100644 ld/testsuite/ld-mips-elf/pr21375.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375.ver
create mode 100644 ld/testsuite/ld-mips-elf/pr21375h-irix.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375h.dd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375h.gd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375h.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375p-irix.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375p.dd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375p.gd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375p.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375ph-irix.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375ph.dd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375ph.gd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375ph.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375s-irix.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375s-n32-irix.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375s-n32.dd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375s-n32.gd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375s-n32.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375s-n64-irix.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375s-n64.dd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375s-n64.gd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375s-n64.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375s.dd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375s.gd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375s.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375sh-irix.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375sh-n32-irix.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375sh-n32.dd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375sh-n32.gd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375sh-n32.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375sh-n64-irix.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375sh-n64.dd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375sh-n64.gd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375sh-n64.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375sh.dd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375sh.gd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375sh.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375shg-irix.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375shg.dd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375shg.gd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375shg.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375shl-irix.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375shl.gd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375shl.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375shv-irix.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375shv.gd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375shv.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375sm16.dd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375sm16h.dd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375su-n32.dd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375su-n64.dd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375su.dd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375suh-n32.dd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375suh-n64.dd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375suh.dd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375sux.dd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375suxh.dd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375sx-irix.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375sx.dd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375sx.gd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375sx.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375sxh-irix.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375sxh.dd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375sxh.gd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375sxh.sd
create mode 100644 ld/testsuite/ld-mips-elf/pr21375v.ver
create mode 100644 ld/testsuite/ld-mips-elf/reginfo-0.d
create mode 100644 ld/testsuite/ld-mips-elf/reginfo-0.ld
create mode 100644 ld/testsuite/ld-mips-elf/reginfo-0r.d
create mode 100644 ld/testsuite/ld-mips-elf/reginfo-1.d
create mode 100644 ld/testsuite/ld-mips-elf/reginfo-1.ld
create mode 100644 ld/testsuite/ld-mips-elf/reginfo-1.s
create mode 100644 ld/testsuite/ld-mips-elf/reginfo-1r.d
create mode 100644 ld/testsuite/ld-mips-elf/reginfo-2.d
create mode 100644 ld/testsuite/ld-mips-elf/reginfo-2.s
create mode 100644 ld/testsuite/ld-mips-elf/reginfo-2r.d
create mode 100644 ld/testsuite/ld-mips-elf/relax-offset-umips.dd
create mode 100644 ld/testsuite/ld-mips-elf/relax-offset-umips.gd
create mode 100644 ld/testsuite/ld-mips-elf/relax-offset.dd
create mode 100644 ld/testsuite/ld-mips-elf/relax-offset.gd
create mode 100644 ld/testsuite/ld-mips-elf/relax-offset.ld
create mode 100644 ld/testsuite/ld-mips-elf/stub-dynsym-2.dd
create mode 100644 ld/testsuite/ld-mips-elf/stub-dynsym-2.gd
create mode 100644 ld/testsuite/ld-mips-elf/stub-dynsym-2.ld
create mode 100644 ld/testsuite/ld-mips-elf/stub-dynsym-2.s
create mode 100644 ld/testsuite/ld-mips-elf/stub-dynsym-2.sd
create mode 100644 ld/testsuite/ld-mips-elf/stub-dynsym-discard-2.gd
create mode 100644 ld/testsuite/ld-mips-elf/stub-dynsym-discard-2.ld
create mode 100644 ld/testsuite/ld-mips-elf/stub-dynsym-discard-2.sd
create mode 100644 ld/testsuite/ld-mips-elf/stub-dynsym-micromips-1-10000.d
create mode 100644 ld/testsuite/ld-mips-elf/stub-dynsym-micromips-1-2fe80.d
create mode 100644 ld/testsuite/ld-mips-elf/stub-dynsym-micromips-1-7fff.d
create mode 100644 ld/testsuite/ld-mips-elf/stub-dynsym-micromips-1-8000.d
create mode 100644 ld/testsuite/ld-mips-elf/stub-dynsym-micromips-1-fff0.d
create mode 100644 ld/testsuite/ld-mips-elf/stub-dynsym-micromips-2.dd
create mode 100644 ld/testsuite/ld-mips-elf/stub-dynsym-micromips-2.gd
create mode 100644 ld/testsuite/ld-mips-elf/stub-dynsym-micromips-2.sd
create mode 100644 ld/testsuite/ld-mips-elf/stub-dynsym-micromips-insn32-1-10000.d
create mode 100644 ld/testsuite/ld-mips-elf/stub-dynsym-micromips-insn32-1-2fe80.d
create mode 100644 ld/testsuite/ld-mips-elf/stub-dynsym-micromips-insn32-1-7fff.d
create mode 100644 ld/testsuite/ld-mips-elf/stub-dynsym-micromips-insn32-1-8000.d
create mode 100644 ld/testsuite/ld-mips-elf/stub-dynsym-micromips-insn32-1-fff0.d
create mode 100644 ld/testsuite/ld-mips-elf/stub-dynsym-micromips-insn32-2.dd
create mode 100644 ld/testsuite/ld-mips-elf/stub-dynsym-micromips-insn32-2.gd
create mode 100644 ld/testsuite/ld-mips-elf/stub-dynsym-micromips-insn32-2.sd
create mode 100644 ld/testsuite/ld-mips-elf/tlsbin-pie-o32.d
create mode 100644 ld/testsuite/ld-mips-elf/tlsbin-pie-o32.got
create mode 100644 ld/testsuite/ld-mips-elf/tlsdyn-pie-o32.d
create mode 100644 ld/testsuite/ld-mips-elf/tlsdyn-pie-o32.got
create mode 100644 ld/testsuite/ld-mips-elf/undefined-warn.d
create mode 100644 ld/testsuite/ld-mmix/pr20125.d
create mode 100644 ld/testsuite/ld-mmix/pr20125.s
create mode 100644 ld/testsuite/ld-msp430-elf/main-bss-lower.d
create mode 100644 ld/testsuite/ld-msp430-elf/main-bss-upper.d
create mode 100644 ld/testsuite/ld-msp430-elf/main-const-lower.d
create mode 100644 ld/testsuite/ld-msp430-elf/main-const-upper.d
create mode 100644 ld/testsuite/ld-msp430-elf/main-text-lower.d
create mode 100644 ld/testsuite/ld-msp430-elf/main-text-upper.d
create mode 100644 ld/testsuite/ld-msp430-elf/main-var-lower.d
create mode 100644 ld/testsuite/ld-msp430-elf/main-var-upper.d
create mode 100644 ld/testsuite/ld-msp430-elf/main-with-data-bss-unique-sec.s
create mode 100644 ld/testsuite/ld-msp430-elf/main-with-data-bss.s
create mode 100644 ld/testsuite/ld-msp430-elf/main-with-text-rodata-unique-sec.s
create mode 100644 ld/testsuite/ld-msp430-elf/main-with-text-rodata.s
create mode 100644 ld/testsuite/ld-msp430-elf/msp430-elf.exp
create mode 100644 ld/testsuite/ld-msp430-elf/msp430-no-lower.ld
create mode 100644 ld/testsuite/ld-msp430-elf/msp430-tiny-ram.ld
create mode 100644 ld/testsuite/ld-msp430-elf/msp430-tiny-rom.ld
create mode 100644 ld/testsuite/ld-msp430-elf/msp430.ld
create mode 100644 ld/testsuite/ld-or1k/offsets1.d
create mode 100644 ld/testsuite/ld-or1k/offsets1.s
create mode 100644 ld/testsuite/ld-or1k/or1k.exp
create mode 100644 ld/testsuite/ld-or1k/plt1.dd
create mode 100644 ld/testsuite/ld-or1k/plt1.s
create mode 100644 ld/testsuite/ld-or1k/plt1.x.dd
create mode 100644 ld/testsuite/ld-or1k/plta1.dd
create mode 100644 ld/testsuite/ld-or1k/plta1.s
create mode 100644 ld/testsuite/ld-or1k/pltlib.s
create mode 100644 ld/testsuite/ld-pe/weakdef-1.d
create mode 100644 ld/testsuite/ld-pe/weakdef-1.s
create mode 100644 ld/testsuite/ld-plugin/pr21382a.c
create mode 100644 ld/testsuite/ld-plugin/pr21382b.c
create mode 100644 ld/testsuite/ld-plugin/pr22220.h
create mode 100644 ld/testsuite/ld-plugin/pr22220lib.cc
create mode 100644 ld/testsuite/ld-plugin/pr22220lib.ver
create mode 100644 ld/testsuite/ld-plugin/pr22220main.cc
create mode 100644 ld/testsuite/ld-plugin/pr22502a.c
create mode 100644 ld/testsuite/ld-plugin/pr22502b.c
create mode 100644 ld/testsuite/ld-plugin/pr22721.t
create mode 100644 ld/testsuite/ld-plugin/pr22721a.s
create mode 100644 ld/testsuite/ld-plugin/pr22721b.c
create mode 100644 ld/testsuite/ld-plugin/pr22751.c
create mode 100644 ld/testsuite/ld-plugin/pr22983.1.d
create mode 100644 ld/testsuite/ld-plugin/pr22983.2.d
create mode 100644 ld/testsuite/ld-plugin/pr22983.3.d
create mode 100644 ld/testsuite/ld-plugin/pr22983.4.d
create mode 100644 ld/testsuite/ld-plugin/pr22983.d
create mode 100644 ld/testsuite/ld-plugin/pr22983.t
create mode 100644 ld/testsuite/ld-plugin/pr22983a.c
create mode 100644 ld/testsuite/ld-plugin/pr22983b.c
create mode 100644 ld/testsuite/ld-plugin/pr23309.c
create mode 100644 ld/testsuite/ld-plugin/pr23309.d
create mode 100644 ld/testsuite/ld-plugin/pr23460a.c
create mode 100644 ld/testsuite/ld-plugin/pr23460b.c
create mode 100644 ld/testsuite/ld-plugin/pr23460c.c
create mode 100644 ld/testsuite/ld-plugin/pr23460d.c
create mode 100644 ld/testsuite/ld-plugin/pr23460e.c
create mode 100644 ld/testsuite/ld-plugin/pr23460f.c
create mode 100644 ld/testsuite/ld-plugin/pr23818.d
create mode 100644 ld/testsuite/ld-plugin/pr23818.t
create mode 100644 ld/testsuite/ld-plugin/pr23818a.c
create mode 100644 ld/testsuite/ld-plugin/pr23818b.c
create mode 100644 ld/testsuite/ld-powerpc/big.s
create mode 100644 ld/testsuite/ld-powerpc/ext.d
create mode 100644 ld/testsuite/ld-powerpc/ext.lnk
create mode 100644 ld/testsuite/ld-powerpc/ext.s
create mode 100644 ld/testsuite/ld-powerpc/notoc.d
create mode 100644 ld/testsuite/ld-powerpc/notoc.s
create mode 100644 ld/testsuite/ld-powerpc/notoc.wf
create mode 100644 ld/testsuite/ld-powerpc/relaxrl.d
create mode 100644 ld/testsuite/ld-powerpc/tlsopt5.wf
create mode 100644 ld/testsuite/ld-powerpc/tocsave1.s
create mode 100644 ld/testsuite/ld-powerpc/tocsave1a.d
create mode 100644 ld/testsuite/ld-powerpc/tocsave1s.d
create mode 100644 ld/testsuite/ld-powerpc/tocsave2.s
create mode 100644 ld/testsuite/ld-powerpc/tocsave2a.d
create mode 100644 ld/testsuite/ld-powerpc/tocsave2s.d
create mode 100644 ld/testsuite/ld-powerpc/tocsavelib.s
create mode 100644 ld/testsuite/ld-riscv-elf/c-lui.d
create mode 100644 ld/testsuite/ld-riscv-elf/c-lui.s
create mode 100644 ld/testsuite/ld-riscv-elf/disas-jalr.d
create mode 100644 ld/testsuite/ld-riscv-elf/disas-jalr.s
create mode 100644 ld/testsuite/ld-riscv-elf/gp-test-lib.sd
create mode 100644 ld/testsuite/ld-riscv-elf/gp-test.s
create mode 100644 ld/testsuite/ld-riscv-elf/gp-test.sd
create mode 100644 ld/testsuite/ld-riscv-elf/ld-riscv-elf.exp
create mode 100644 ld/testsuite/ld-riscv-elf/pcrel-lo-addend-2.d
create mode 100644 ld/testsuite/ld-riscv-elf/pcrel-lo-addend-2.s
create mode 100644 ld/testsuite/ld-riscv-elf/pcrel-lo-addend.d
create mode 100644 ld/testsuite/ld-riscv-elf/pcrel-lo-addend.s
create mode 100644 ld/testsuite/ld-riscv-elf/weakref.ld
create mode 100644 ld/testsuite/ld-riscv-elf/weakref32.d
create mode 100644 ld/testsuite/ld-riscv-elf/weakref32.s
create mode 100644 ld/testsuite/ld-riscv-elf/weakref64.d
create mode 100644 ld/testsuite/ld-riscv-elf/weakref64.s
create mode 100644 ld/testsuite/ld-s12z/opr-linking.d
create mode 100644 ld/testsuite/ld-s12z/opr-linking.s
create mode 100644 ld/testsuite/ld-s12z/relative-linking.d
create mode 100644 ld/testsuite/ld-s12z/relative-linking.s
create mode 100644 ld/testsuite/ld-s12z/reloc-ext18-1.d
create mode 100644 ld/testsuite/ld-s12z/reloc-ext18-2.d
create mode 100644 ld/testsuite/ld-s12z/reloc-ext18.d
create mode 100644 ld/testsuite/ld-s12z/reloc-ext18.s
create mode 100644 ld/testsuite/ld-s12z/reloc-ext24.d
create mode 100644 ld/testsuite/ld-s12z/reloc-ext24.s
create mode 100644 ld/testsuite/ld-s12z/reloc-ext32.d
create mode 100644 ld/testsuite/ld-s12z/reloc-ext32.s
create mode 100644 ld/testsuite/ld-s12z/reloc-opr.d
create mode 100644 ld/testsuite/ld-s12z/reloc-opr.s
create mode 100644 ld/testsuite/ld-s12z/reloc-pc-rel-7-15.d
create mode 100644 ld/testsuite/ld-s12z/reloc-pc-rel-7-15.s
create mode 100644 ld/testsuite/ld-s12z/s12z.exp
delete mode 100644 ld/testsuite/ld-s390/gotreloc_64-1.dd
create mode 100644 ld/testsuite/ld-s390/gotreloc_64-norelro-1.dd
create mode 100644 ld/testsuite/ld-s390/gotreloc_64-relro-1.dd
create mode 100644 ld/testsuite/ld-scripts/align3.d
create mode 100644 ld/testsuite/ld-scripts/align3.t
create mode 100644 ld/testsuite/ld-scripts/align4.d
create mode 100644 ld/testsuite/ld-scripts/align4.t
create mode 100644 ld/testsuite/ld-scripts/align5.d
create mode 100644 ld/testsuite/ld-scripts/align5.t
create mode 100644 ld/testsuite/ld-scripts/exclude-file-5.d
create mode 100644 ld/testsuite/ld-scripts/exclude-file-5.map
create mode 100644 ld/testsuite/ld-scripts/exclude-file-5.t
create mode 100644 ld/testsuite/ld-scripts/exclude-file-6.d
create mode 100644 ld/testsuite/ld-scripts/exclude-file-6.map
create mode 100644 ld/testsuite/ld-scripts/exclude-file-6.t
create mode 100644 ld/testsuite/ld-scripts/exclude-file-7.d
create mode 100644 ld/testsuite/ld-scripts/exclude-file-7.map
create mode 100644 ld/testsuite/ld-scripts/exclude-file-7.t
create mode 100644 ld/testsuite/ld-scripts/fill16.d
create mode 100644 ld/testsuite/ld-scripts/fill16_0.s
create mode 100644 ld/testsuite/ld-scripts/fill16_1.s
create mode 100644 ld/testsuite/ld-scripts/fill16_2.s
create mode 100644 ld/testsuite/ld-scripts/pr22267.d
create mode 100644 ld/testsuite/ld-scripts/pr22267.s
create mode 100644 ld/testsuite/ld-scripts/pr22267.t
create mode 100644 ld/testsuite/ld-scripts/pr23571.d
create mode 100644 ld/testsuite/ld-scripts/pr23571.t
delete mode 100644 ld/testsuite/ld-scripts/provide-4-map.d
create mode 100644 ld/testsuite/ld-scripts/provide-4.map
delete mode 100644 ld/testsuite/ld-scripts/provide-5-map.d
create mode 100644 ld/testsuite/ld-scripts/provide-5.map
create mode 100644 ld/testsuite/ld-scripts/provide-6.d
create mode 100644 ld/testsuite/ld-scripts/provide-6.t
create mode 100644 ld/testsuite/ld-scripts/provide-7.d
create mode 100644 ld/testsuite/ld-scripts/provide-7.t
create mode 100644 ld/testsuite/ld-scripts/provide-8.d
create mode 100644 ld/testsuite/ld-scripts/provide-8.t
create mode 100644 ld/testsuite/ld-scripts/segment-start.d
create mode 100644 ld/testsuite/ld-scripts/segment-start.ld
create mode 100644 ld/testsuite/ld-scripts/segment-start.s
delete mode 100644 ld/testsuite/ld-sh/sh64/abi32.sd
delete mode 100644 ld/testsuite/ld-sh/sh64/abi32.xd
delete mode 100644 ld/testsuite/ld-sh/sh64/abi64.sd
delete mode 100644 ld/testsuite/ld-sh/sh64/abi64.xd
delete mode 100644 ld/testsuite/ld-sh/sh64/abixx-noexp.sd
delete mode 100644 ld/testsuite/ld-sh/sh64/cmpct1.sd
delete mode 100644 ld/testsuite/ld-sh/sh64/cmpct1.xd
delete mode 100644 ld/testsuite/ld-sh/sh64/crange-1.s
delete mode 100644 ld/testsuite/ld-sh/sh64/crange-2a.s
delete mode 100644 ld/testsuite/ld-sh/sh64/crange-2b.s
delete mode 100644 ld/testsuite/ld-sh/sh64/crange-2c.s
delete mode 100644 ld/testsuite/ld-sh/sh64/crange-2d.s
delete mode 100644 ld/testsuite/ld-sh/sh64/crange-2e.s
delete mode 100644 ld/testsuite/ld-sh/sh64/crange-2f.s
delete mode 100644 ld/testsuite/ld-sh/sh64/crange-2g.s
delete mode 100644 ld/testsuite/ld-sh/sh64/crange-2h.s
delete mode 100644 ld/testsuite/ld-sh/sh64/crange-2i.s
delete mode 100644 ld/testsuite/ld-sh/sh64/crange1.rd
delete mode 100644 ld/testsuite/ld-sh/sh64/crange2.rd
delete mode 100644 ld/testsuite/ld-sh/sh64/crange3-cmpct.rd
delete mode 100644 ld/testsuite/ld-sh/sh64/crange3-media.rd
delete mode 100644 ld/testsuite/ld-sh/sh64/crange3.dd
delete mode 100644 ld/testsuite/ld-sh/sh64/crange3.rd
delete mode 100644 ld/testsuite/ld-sh/sh64/crangerel1.rd
delete mode 100644 ld/testsuite/ld-sh/sh64/crangerel2.rd
delete mode 100644 ld/testsuite/ld-sh/sh64/dlsection-1.s
delete mode 100644 ld/testsuite/ld-sh/sh64/dlsection.sd
delete mode 100644 ld/testsuite/ld-sh/sh64/endian.dbd
delete mode 100644 ld/testsuite/ld-sh/sh64/endian.dld
delete mode 100644 ld/testsuite/ld-sh/sh64/endian.ld
delete mode 100644 ld/testsuite/ld-sh/sh64/endian.s
delete mode 100644 ld/testsuite/ld-sh/sh64/endian.sbd
delete mode 100644 ld/testsuite/ld-sh/sh64/endian.sld
delete mode 100644 ld/testsuite/ld-sh/sh64/gotplt.d
delete mode 100644 ld/testsuite/ld-sh/sh64/gotplt.map
delete mode 100644 ld/testsuite/ld-sh/sh64/gotplt.s
delete mode 100644 ld/testsuite/ld-sh/sh64/init-cmpct.d
delete mode 100644 ld/testsuite/ld-sh/sh64/init-media.d
delete mode 100644 ld/testsuite/ld-sh/sh64/init.s
delete mode 100644 ld/testsuite/ld-sh/sh64/init64.d
delete mode 100644 ld/testsuite/ld-sh/sh64/mix1-noexp.sd
delete mode 100644 ld/testsuite/ld-sh/sh64/mix1.sd
delete mode 100644 ld/testsuite/ld-sh/sh64/mix1.xd
delete mode 100644 ld/testsuite/ld-sh/sh64/mix2-noexp.sd
delete mode 100644 ld/testsuite/ld-sh/sh64/mix2.sd
delete mode 100644 ld/testsuite/ld-sh/sh64/mix2.xd
delete mode 100644 ld/testsuite/ld-sh/sh64/rd-sh64.exp
delete mode 100644 ld/testsuite/ld-sh/sh64/rel-1.s
delete mode 100644 ld/testsuite/ld-sh/sh64/rel-2.s
delete mode 100644 ld/testsuite/ld-sh/sh64/rel32.xd
delete mode 100644 ld/testsuite/ld-sh/sh64/rel64.xd
delete mode 100644 ld/testsuite/ld-sh/sh64/relax.exp
delete mode 100644 ld/testsuite/ld-sh/sh64/relax1.s
delete mode 100644 ld/testsuite/ld-sh/sh64/relax2.s
delete mode 100644 ld/testsuite/ld-sh/sh64/relax3.s
delete mode 100644 ld/testsuite/ld-sh/sh64/relax4.s
delete mode 100644 ld/testsuite/ld-sh/sh64/reldl-1.s
delete mode 100644 ld/testsuite/ld-sh/sh64/reldl-2.s
delete mode 100644 ld/testsuite/ld-sh/sh64/reldl32.rd
delete mode 100644 ld/testsuite/ld-sh/sh64/reldl64.rd
delete mode 100644 ld/testsuite/ld-sh/sh64/relfail.exp
delete mode 100644 ld/testsuite/ld-sh/sh64/relfail.s
delete mode 100644 ld/testsuite/ld-sh/sh64/sh64-1.s
delete mode 100644 ld/testsuite/ld-sh/sh64/sh64-2.s
delete mode 100644 ld/testsuite/ld-sh/sh64/sh64.exp
delete mode 100644 ld/testsuite/ld-sh/sh64/shcmp-1.s
delete mode 100644 ld/testsuite/ld-sh/sh64/shdl-1.s
delete mode 100644 ld/testsuite/ld-sh/sh64/shdl-2.s
delete mode 100644 ld/testsuite/ld-sh/sh64/shdl32.xd
delete mode 100644 ld/testsuite/ld-sh/sh64/shdl64.sd
delete mode 100644 ld/testsuite/ld-sh/sh64/shdl64.xd
delete mode 100644 ld/testsuite/ld-sh/sh64/shmix-1.s
delete mode 100644 ld/testsuite/ld-sh/sh64/shmix-2.s
delete mode 100644 ld/testsuite/ld-sh/sh64/shmix-3.s
delete mode 100644 ld/testsuite/ld-sh/sh64/stobin-0-dso.d
delete mode 100644 ld/testsuite/ld-sh/sh64/stobin-1.d
delete mode 100644 ld/testsuite/ld-sh/sh64/stobin.s
delete mode 100644 ld/testsuite/ld-sh/sh64/stolib.s
create mode 100644 ld/testsuite/ld-sparc/got-hidden32.s
create mode 100644 ld/testsuite/ld-sparc/got-hidden64.s
create mode 100644 ld/testsuite/ld-sparc/gotop-hidden.c
create mode 100644 ld/testsuite/ld-sparc/pass.out
create mode 100644 ld/testsuite/ld-sparc/tlslib.ver
create mode 100644 ld/testsuite/ld-sparc/tlspie32.dd
create mode 100644 ld/testsuite/ld-sparc/tlspie32.s
create mode 100644 ld/testsuite/ld-sparc/tlspie64.dd
create mode 100644 ld/testsuite/ld-sparc/tlspie64.s
create mode 100644 ld/testsuite/ld-undefined/fundef.s
create mode 100644 ld/testsuite/ld-unique/pr21529.d
create mode 100644 ld/testsuite/ld-unique/pr21529.ld
create mode 100644 ld/testsuite/ld-unique/pr21529.s
delete mode 100644 ld/testsuite/ld-versados/t1-1.ro
delete mode 100644 ld/testsuite/ld-versados/t1-2.ro
delete mode 100644 ld/testsuite/ld-versados/t1.ld
delete mode 100644 ld/testsuite/ld-versados/t1.ook
delete mode 100644 ld/testsuite/ld-versados/t2-1.ro
delete mode 100644 ld/testsuite/ld-versados/t2-2.ro
delete mode 100644 ld/testsuite/ld-versados/t2-3.ro
delete mode 100644 ld/testsuite/ld-versados/t2.ld
delete mode 100644 ld/testsuite/ld-versados/t2.ook
delete mode 100644 ld/testsuite/ld-versados/versados.exp
create mode 100644 ld/testsuite/ld-x86-64/apic.d
create mode 100644 ld/testsuite/ld-x86-64/apic.s
create mode 100644 ld/testsuite/ld-x86-64/bnd-branch-1-now.d
create mode 100644 ld/testsuite/ld-x86-64/bnd-ifunc-1-now.d
create mode 100644 ld/testsuite/ld-x86-64/bnd-ifunc-2-now.d
create mode 100644 ld/testsuite/ld-x86-64/bnd-plt-1-now.d
create mode 100644 ld/testsuite/ld-x86-64/ibt-plt-1-x32.d
create mode 100644 ld/testsuite/ld-x86-64/ibt-plt-1.d
create mode 100644 ld/testsuite/ld-x86-64/ibt-plt-1.s
create mode 100644 ld/testsuite/ld-x86-64/ibt-plt-2.s
create mode 100644 ld/testsuite/ld-x86-64/ibt-plt-2a-x32.d
create mode 100644 ld/testsuite/ld-x86-64/ibt-plt-2a.d
create mode 100644 ld/testsuite/ld-x86-64/ibt-plt-2b-x32.d
create mode 100644 ld/testsuite/ld-x86-64/ibt-plt-2b.d
create mode 100644 ld/testsuite/ld-x86-64/ibt-plt-2c-x32.d
create mode 100644 ld/testsuite/ld-x86-64/ibt-plt-2c.d
create mode 100644 ld/testsuite/ld-x86-64/ibt-plt-2d-x32.d
create mode 100644 ld/testsuite/ld-x86-64/ibt-plt-2d.d
create mode 100644 ld/testsuite/ld-x86-64/ibt-plt-3.s
create mode 100644 ld/testsuite/ld-x86-64/ibt-plt-3a-x32.d
create mode 100644 ld/testsuite/ld-x86-64/ibt-plt-3a.d
create mode 100644 ld/testsuite/ld-x86-64/ibt-plt-3b-x32.d
create mode 100644 ld/testsuite/ld-x86-64/ibt-plt-3b.d
create mode 100644 ld/testsuite/ld-x86-64/ibt-plt-3c-x32.d
create mode 100644 ld/testsuite/ld-x86-64/ibt-plt-3c.d
create mode 100644 ld/testsuite/ld-x86-64/ibt-plt-3d-x32.d
create mode 100644 ld/testsuite/ld-x86-64/ibt-plt-3d.d
create mode 100644 ld/testsuite/ld-x86-64/mpx3n.dd
create mode 100644 ld/testsuite/ld-x86-64/mpx4n.dd
create mode 100644 ld/testsuite/ld-x86-64/no-plt-1e.nd
create mode 100644 ld/testsuite/ld-x86-64/pie3-nacl.d
create mode 100644 ld/testsuite/ld-x86-64/pie3.d
create mode 100644 ld/testsuite/ld-x86-64/pie3.s
create mode 100644 ld/testsuite/ld-x86-64/plt-main-bnd-now.rd
create mode 100644 ld/testsuite/ld-x86-64/plt-main-ibt-now.rd
create mode 100644 ld/testsuite/ld-x86-64/plt-main-ibt-x32.dd
create mode 100644 ld/testsuite/ld-x86-64/plt-main-ibt.dd
create mode 100644 ld/testsuite/ld-x86-64/plt2.dd
create mode 100644 ld/testsuite/ld-x86-64/plt2.rd
create mode 100644 ld/testsuite/ld-x86-64/plt2.s
create mode 100644 ld/testsuite/ld-x86-64/pr19636-1h.d
create mode 100644 ld/testsuite/ld-x86-64/pr19636-1i.d
create mode 100644 ld/testsuite/ld-x86-64/pr19636-1j.d
create mode 100644 ld/testsuite/ld-x86-64/pr19636-2j.d
create mode 100644 ld/testsuite/ld-x86-64/pr19636-2k.d
create mode 100644 ld/testsuite/ld-x86-64/pr19636-2l.d
create mode 100644 ld/testsuite/ld-x86-64/pr19636-2m.d
create mode 100644 ld/testsuite/ld-x86-64/pr20830a-now.d
create mode 100644 ld/testsuite/ld-x86-64/pr20830b-now.d
create mode 100644 ld/testsuite/ld-x86-64/pr21038a-now.d
create mode 100644 ld/testsuite/ld-x86-64/pr21038b-now.d
create mode 100644 ld/testsuite/ld-x86-64/pr21038c-now.d
create mode 100644 ld/testsuite/ld-x86-64/pr21481a.c
create mode 100644 ld/testsuite/ld-x86-64/pr21481b.S
create mode 100644 ld/testsuite/ld-x86-64/pr21884-nacl.d
create mode 100644 ld/testsuite/ld-x86-64/pr21884-nacl.t
create mode 100644 ld/testsuite/ld-x86-64/pr21884.d
create mode 100644 ld/testsuite/ld-x86-64/pr21884.t
create mode 100644 ld/testsuite/ld-x86-64/pr21997-1a.S
create mode 100644 ld/testsuite/ld-x86-64/pr21997-1a.err
create mode 100644 ld/testsuite/ld-x86-64/pr21997-1b.c
create mode 100644 ld/testsuite/ld-x86-64/pr21997-1b.err
create mode 100644 ld/testsuite/ld-x86-64/pr21997-1c.c
create mode 100644 ld/testsuite/ld-x86-64/pr22001-1a.c
create mode 100644 ld/testsuite/ld-x86-64/pr22001-1a.err
create mode 100644 ld/testsuite/ld-x86-64/pr22001-1b.c
create mode 100644 ld/testsuite/ld-x86-64/pr22001-1b.err
create mode 100644 ld/testsuite/ld-x86-64/pr22001-1c.c
create mode 100644 ld/testsuite/ld-x86-64/pr22048.d
create mode 100644 ld/testsuite/ld-x86-64/pr22048a.s
create mode 100644 ld/testsuite/ld-x86-64/pr22048b.s
create mode 100644 ld/testsuite/ld-x86-64/pr22064a.S
create mode 100644 ld/testsuite/ld-x86-64/pr22064b.c
create mode 100644 ld/testsuite/ld-x86-64/pr22071.d
create mode 100644 ld/testsuite/ld-x86-64/pr22071.s
create mode 100644 ld/testsuite/ld-x86-64/pr22115-1.s
create mode 100644 ld/testsuite/ld-x86-64/pr22115-1a-x32.d
create mode 100644 ld/testsuite/ld-x86-64/pr22115-1a.d
create mode 100644 ld/testsuite/ld-x86-64/pr22115-1b-x32.d
create mode 100644 ld/testsuite/ld-x86-64/pr22115-1b.d
create mode 100644 ld/testsuite/ld-x86-64/pr22115-1c-x32.d
create mode 100644 ld/testsuite/ld-x86-64/pr22115-1c.d
create mode 100644 ld/testsuite/ld-x86-64/pr22115-1d-x32.d
create mode 100644 ld/testsuite/ld-x86-64/pr22115-1d.d
create mode 100644 ld/testsuite/ld-x86-64/pr22135.d
create mode 100644 ld/testsuite/ld-x86-64/pr22135.s
create mode 100644 ld/testsuite/ld-x86-64/pr22393-3a.c
create mode 100644 ld/testsuite/ld-x86-64/pr22393-3a.rd
create mode 100644 ld/testsuite/ld-x86-64/pr22393-3b.c
create mode 100644 ld/testsuite/ld-x86-64/pr22393-3b.rd
create mode 100644 ld/testsuite/ld-x86-64/pr22782.s
create mode 100644 ld/testsuite/ld-x86-64/pr22782a.d
create mode 100644 ld/testsuite/ld-x86-64/pr22782b.d
create mode 100644 ld/testsuite/ld-x86-64/pr22791-1.err
create mode 100644 ld/testsuite/ld-x86-64/pr22791-1a.c
create mode 100644 ld/testsuite/ld-x86-64/pr22791-1b.s
create mode 100644 ld/testsuite/ld-x86-64/pr22791-2.rd
create mode 100644 ld/testsuite/ld-x86-64/pr22791-2a.s
create mode 100644 ld/testsuite/ld-x86-64/pr22791-2b.c
create mode 100644 ld/testsuite/ld-x86-64/pr22791-2c.s
create mode 100644 ld/testsuite/ld-x86-64/pr22842a.c
create mode 100644 ld/testsuite/ld-x86-64/pr22842a.rd
create mode 100644 ld/testsuite/ld-x86-64/pr22842b.S
create mode 100644 ld/testsuite/ld-x86-64/pr22842b.rd
create mode 100644 ld/testsuite/ld-x86-64/pr22929.d
create mode 100644 ld/testsuite/ld-x86-64/pr22929.s
create mode 100644 ld/testsuite/ld-x86-64/pr23189.d
create mode 100644 ld/testsuite/ld-x86-64/pr23189.s
create mode 100644 ld/testsuite/ld-x86-64/pr23189.t
create mode 100644 ld/testsuite/ld-x86-64/pr23194.d
create mode 100644 ld/testsuite/ld-x86-64/pr23194.map
create mode 100644 ld/testsuite/ld-x86-64/pr23194.s
create mode 100644 ld/testsuite/ld-x86-64/pr23324.s
create mode 100644 ld/testsuite/ld-x86-64/pr23324a.d
create mode 100644 ld/testsuite/ld-x86-64/pr23324b.d
create mode 100644 ld/testsuite/ld-x86-64/pr23372a-x32.d
create mode 100644 ld/testsuite/ld-x86-64/pr23372a.d
create mode 100644 ld/testsuite/ld-x86-64/pr23372a.s
create mode 100644 ld/testsuite/ld-x86-64/pr23372b-x32.d
create mode 100644 ld/testsuite/ld-x86-64/pr23372b.d
create mode 100644 ld/testsuite/ld-x86-64/pr23372b.s
create mode 100644 ld/testsuite/ld-x86-64/pr23372c-x32.d
create mode 100644 ld/testsuite/ld-x86-64/pr23372c.d
create mode 100644 ld/testsuite/ld-x86-64/pr23372c.s
create mode 100644 ld/testsuite/ld-x86-64/pr23372d-x32.d
create mode 100644 ld/testsuite/ld-x86-64/pr23372d.d
create mode 100644 ld/testsuite/ld-x86-64/pr23372d.s
create mode 100644 ld/testsuite/ld-x86-64/pr23372e.s
create mode 100644 ld/testsuite/ld-x86-64/pr23372f.s
create mode 100644 ld/testsuite/ld-x86-64/pr23486a-x32.d
create mode 100644 ld/testsuite/ld-x86-64/pr23486a.d
create mode 100644 ld/testsuite/ld-x86-64/pr23486a.s
create mode 100644 ld/testsuite/ld-x86-64/pr23486b-x32.d
create mode 100644 ld/testsuite/ld-x86-64/pr23486b.d
create mode 100644 ld/testsuite/ld-x86-64/pr23486b.s
create mode 100644 ld/testsuite/ld-x86-64/pr23486c-x32.d
create mode 100644 ld/testsuite/ld-x86-64/pr23486c.d
create mode 100644 ld/testsuite/ld-x86-64/pr23486c.s
create mode 100644 ld/testsuite/ld-x86-64/pr23486d-x32.d
create mode 100644 ld/testsuite/ld-x86-64/pr23486d.d
create mode 100644 ld/testsuite/ld-x86-64/pr23486d.s
create mode 100644 ld/testsuite/ld-x86-64/pr23854.d
create mode 100644 ld/testsuite/ld-x86-64/pr23854.s
create mode 100644 ld/testsuite/ld-x86-64/property-1a.r
create mode 100644 ld/testsuite/ld-x86-64/property-2a.r
create mode 100644 ld/testsuite/ld-x86-64/property-3a.r
create mode 100644 ld/testsuite/ld-x86-64/property-4a.r
create mode 100644 ld/testsuite/ld-x86-64/property-5a.r
create mode 100644 ld/testsuite/ld-x86-64/property-7a.r
create mode 100644 ld/testsuite/ld-x86-64/property-x86-3-x32.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-3.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-3.s
create mode 100644 ld/testsuite/ld-x86-64/property-x86-4a-x32.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-4a.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-4a.s
create mode 100644 ld/testsuite/ld-x86-64/property-x86-4b-x32.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-4b.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-4b.s
create mode 100644 ld/testsuite/ld-x86-64/property-x86-5-x32.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-5.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-5a.s
create mode 100644 ld/testsuite/ld-x86-64/property-x86-5b.s
create mode 100644 ld/testsuite/ld-x86-64/property-x86-empty.s
create mode 100644 ld/testsuite/ld-x86-64/property-x86-ibt.s
create mode 100644 ld/testsuite/ld-x86-64/property-x86-ibt1a-x32.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-ibt1a.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-ibt1b-x32.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-ibt1b.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-ibt2-x32.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-ibt2.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-ibt3a-x32.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-ibt3a.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-ibt3b-x32.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-ibt3b.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-ibt4-x32.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-ibt4.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-ibt5-x32.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-ibt5.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-shstk.s
create mode 100644 ld/testsuite/ld-x86-64/property-x86-shstk1a-x32.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-shstk1a.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-shstk1b-x32.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-shstk1b.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-shstk2-x32.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-shstk2.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-shstk3a-x32.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-shstk3a.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-shstk3b-x32.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-shstk3b.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-shstk4-x32.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-shstk4.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-shstk5-x32.d
create mode 100644 ld/testsuite/ld-x86-64/property-x86-shstk5.d
create mode 100644 ld/testsuite/ld-x86-64/protected8.d
create mode 100644 ld/testsuite/ld-x86-64/protected8.s
create mode 100644 ld/testsuite/ld-x86-64/tlsdesc1a.c
create mode 100644 ld/testsuite/ld-x86-64/tlsdesc1b.c
create mode 100644 ld/testsuite/ld-x86-64/tlsdesc2.d
create mode 100644 ld/testsuite/ld-xtensa/coalesce.d
delete mode 100644 ld/testsuite/ld-xtensa/coalesce.exp
create mode 100644 ld/testsuite/ld-xtensa/diff_overflow.d
delete mode 100644 ld/testsuite/ld-xtensa/diff_overflow.exp
create mode 100644 ld/testsuite/ld-xtensa/lcall.d
delete mode 100644 ld/testsuite/ld-xtensa/lcall.exp
create mode 100644 ld/testsuite/ld-xtensa/relax-static-defs.s
create mode 100644 ld/testsuite/ld-xtensa/relax-static-local-pie.d
create mode 100644 ld/testsuite/ld-xtensa/relax-static-local-shared.d
create mode 100644 ld/testsuite/ld-xtensa/relax-static-local.s
create mode 100644 ld/testsuite/ld-xtensa/relax-static-pie.d
create mode 100644 ld/testsuite/ld-xtensa/relax-static-shared.d
create mode 100644 ld/testsuite/ld-xtensa/relax-static.s
create mode 100644 ld/testsuite/ld-xtensa/relax-undef-weak-local-pie.d
create mode 100644 ld/testsuite/ld-xtensa/relax-undef-weak-local-shared.d
create mode 100644 ld/testsuite/ld-xtensa/relax-undef-weak-local.s
create mode 100644 ld/testsuite/ld-xtensa/relax-undef-weak-pie.d
create mode 100644 ld/testsuite/ld-xtensa/relax-undef-weak-shared.d
create mode 100644 ld/testsuite/ld-xtensa/relax-undef-weak.s
create mode 100644 ld/testsuite/ld-xtensa/xtensa-linux.exp
create mode 100644 libdecnumber/ChangeLog.jit
create mode 100644 multilib.am
create mode 100644 opcodes/ChangeLog-2017
create mode 100644 opcodes/csky-dis.c
create mode 100644 opcodes/csky-opc.h
create mode 100644 opcodes/disassemble.h
delete mode 100644 opcodes/h8500-dis.c
delete mode 100644 opcodes/h8500-opc.h
delete mode 100644 opcodes/i370-dis.c
delete mode 100644 opcodes/i370-opc.c
delete mode 100644 opcodes/i860-dis.c
delete mode 100644 opcodes/i960-dis.c
delete mode 100644 opcodes/m88k-dis.c
create mode 100644 opcodes/nfp-dis.c
create mode 100644 opcodes/s12z-dis.c
delete mode 100644 opcodes/sh64-dis.c
delete mode 100644 opcodes/sh64-opc.c
delete mode 100644 opcodes/sh64-opc.h
delete mode 100644 opcodes/w65-dis.c
delete mode 100644 opcodes/w65-opc.h
create mode 100644 sim/or1k/Makefile.in
create mode 100644 sim/or1k/README
create mode 100644 sim/or1k/aclocal.m4
create mode 100644 sim/or1k/arch.c
create mode 100644 sim/or1k/arch.h
create mode 100644 sim/or1k/config.in
create mode 100755 sim/or1k/configure
create mode 100644 sim/or1k/configure.ac
create mode 100644 sim/or1k/cpu.c
create mode 100644 sim/or1k/cpu.h
create mode 100644 sim/or1k/cpuall.h
create mode 100644 sim/or1k/decode.c
create mode 100644 sim/or1k/decode.h
create mode 100644 sim/or1k/mloop.in
create mode 100644 sim/or1k/model.c
create mode 100644 sim/or1k/or1k-sim.h
create mode 100644 sim/or1k/or1k.c
create mode 100644 sim/or1k/sem-switch.c
create mode 100644 sim/or1k/sem.c
create mode 100644 sim/or1k/sim-if.c
create mode 100644 sim/or1k/sim-main.h
create mode 100644 sim/or1k/traps.c
create mode 100644 sim/testsuite/sim/aarch64/fcmXX.s
create mode 100644 sim/testsuite/sim/aarch64/fcvtl.s
create mode 100644 sim/testsuite/sim/aarch64/ldn_multiple.s
create mode 100644 sim/testsuite/sim/aarch64/stn_multiple.s
create mode 100644 sim/testsuite/sim/or1k/ChangeLog
create mode 100644 sim/testsuite/sim/or1k/add.S
create mode 100644 sim/testsuite/sim/or1k/alltests.exp
create mode 100644 sim/testsuite/sim/or1k/and.S
create mode 100644 sim/testsuite/sim/or1k/basic.S
create mode 100644 sim/testsuite/sim/or1k/div.S
create mode 100644 sim/testsuite/sim/or1k/ext.S
create mode 100644 sim/testsuite/sim/or1k/find.S
create mode 100644 sim/testsuite/sim/or1k/flag.S
create mode 100644 sim/testsuite/sim/or1k/fpu.S
create mode 100644 sim/testsuite/sim/or1k/jump.S
create mode 100644 sim/testsuite/sim/or1k/load.S
create mode 100644 sim/testsuite/sim/or1k/mac.S
create mode 100644 sim/testsuite/sim/or1k/mfspr.S
create mode 100644 sim/testsuite/sim/or1k/mul.S
create mode 100644 sim/testsuite/sim/or1k/or.S
create mode 100644 sim/testsuite/sim/or1k/or1k-asm-test-env.h
create mode 100644 sim/testsuite/sim/or1k/or1k-asm-test-helpers.h
create mode 100644 sim/testsuite/sim/or1k/or1k-asm-test.h
create mode 100644 sim/testsuite/sim/or1k/or1k-asm.h
create mode 100644 sim/testsuite/sim/or1k/or1k-test.ld
create mode 100644 sim/testsuite/sim/or1k/ror.S
create mode 100644 sim/testsuite/sim/or1k/shift.S
create mode 100644 sim/testsuite/sim/or1k/spr-defs.h
create mode 100644 sim/testsuite/sim/or1k/sub.S
create mode 100644 sim/testsuite/sim/or1k/xor.S
create mode 100755 test-driver
First 500 lines of diff:
diff --git a/COPYING.LIBGLOSS b/COPYING.LIBGLOSS
index d813065..ee3ef9f 100644
--- a/COPYING.LIBGLOSS
+++ b/COPYING.LIBGLOSS
@@ -313,10 +313,10 @@ WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
-You should have received a copy of the GNU General Public License
-along with this program; see the file COPYING. If not, write to
-the Free Software Foundation, 59 Temple Place - Suite 330,
-Boston, MA 02111-1307, USA.
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
+ MA 02110-1301, USA.
As a special exception, if you link this library with files
compiled with GCC to produce an executable, this does not cause
diff --git a/ChangeLog b/ChangeLog
index bb87497..60b19fd 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,134 @@
+2018-10-31 Joseph Myers <joseph@codesourcery.com>
+
+ Merge from GCC:
+ PR bootstrap/82856
+ * multilib.am: New file. From automake.
+
+2018-09-12 Sergio Durigan Junior <sergiodj@redhat.com>
+
+ * src-release.sh (GDB_SUPPORT_DIRS): Add "contrib".
+
+2018-07-16 Nick Clifton <nickc@redhat.com>
+
+ * src-release.sh (DEVO_SUPPORT): Add test-driver and ar-lib.
+
+2018-07-06 Sebastian Huber <sebastian.huber@embedded-brains.de>
+
+ * config.sub: Sync with upstream version 2018-07-03.
+
+2018-07-05 Sebastian Huber <sebastian.huber@embedded-brains.de>
+
+ * config.guess: Sync with upstream version 2018-06-26.
+ * config.sub: Sync with upstream version 2018-07-02.
+
+2018-06-29 Alexandre Oliva <oliva@adacore.com>
+
+ * configure.ac: Introduce support for @unless/@endunless.
+ * Makefile.tpl (dep-kind): Rewrite with cond; return
+ postbootstrap in some cases.
+ (make-postboot-dep, postboot-targets): New.
+ (dependencies): Do not output postbootstrap dependencies at
+ first. Output non-target ones changed for configure to depend
+ on stage_last @if gcc-bootstrap, and the original deps @unless
+ gcc-bootstrap.
+ * configure.in, Makefile.in: Rebuilt.
+
+2018-06-24 Nick Clifton <nickc@redhat.com>
+
+ * configure: Regenerate.
+
+2018-06-19 Simon Marchi <simon.marchi@ericsson.com>
+
+ * libtool.m4: Use AC_LANG_SOURCE.
+ * configure.ac: Remove AC_PREREQ, use AC_LANG_SOURCE.
+ * README-maintainer-mode: Update version requirements.
+ * ar-lib: New file.
+ * test-driver: New file.
+ * configure: Re-generate.
+
+2018-06-18 Eric Botcazou <ebotcazou@adacore.com>
+
+ * Makefile.def (fortran): Add check-target-libgomp-fortran.
+ * Makefile.tpl (check-target-libgomp-fortran): New phony target.
+ * Makefile.in: Regenerate.
+
+ * configure: Regenerate.
+
+2018-06-18 Simon Marchi <simon.marchi@ericsson.com>
+
+ * configure.ac: Sync with GCC, remove MPX-related things.
+
+2018-05-01 Nick Clifton <nickc@redhat.com>
+
+ * config.guess: Synchronize with config project master sources.
+ * config.sub: Likewise.
+
+2018-05-01 Francois H. Theron <francois.theron@netronome.com>
+
+ * configure.ac: Added "nfp" target.
+ * configure: Regenerate.
+
+2018-02-13 Maciej W. Rozycki <macro@mips.com>
+
+ * configure.ac <wasm32-*-*> (noconfigdirs): Add `ld'.
+ * configure: Regenerate.
+
+2018-01-30 Nick Clifton <nickc@redhat.com>
+
+ * src-release.sh (do_proto_toplev): Add patterns for more junk files
+ to delete before creating the tarball.
+
+2018-01-29 Nick Clifton <nickc@redhat.com>
+
+ * src-release.sh (do_proto_toplev): Strip patch remnant files from
+ the sources before creating the tarball.
+
+2018-01-13 Nick Clifton <nickc@redhat.com>
+
+ * src-release.sh: Update copyright notice. Change reference to devo
+ to be a reference to root.
+
+2018-01-10 Nick Clifton <nickc@redhat.com>
+
+ * config-ml.in: Sync with gcc sources.
+ * config.guess: Likewise.
+ * config.sub: Likewise.
+ * configure.ac: Likewise.
+ * configure: Regenerate.
+
+2017-12-14 Nick Clifton <nickc@redhat.com>
+
+ * COPYING.LIBGLOSS: Update address of FSF in copyright notice.
+
+2017-12-12 Stafford Horne <shorne@gmail.com>
+
+ * configure.ac: Remove logic adding gdb to noconfigsdirs for or1k.
+ * configure: Regenerate.
+
+2017-09-15 Nick Clifton <nickc@redhat.com>
+
+ * src-release.sh (LZIPPROG): New define. Provides the name of the
+ lzip program.
+ (do_lz): New function. Compresses a tarball using the lzip
+ program.
+ (do_compress): Add support for lzip compression.
+ (usage): Mention -l option.
+ (build_release): Support -l option to invoke lzip compression.
+
+2017-09-15 Alan Modra <amodra@gmail.com>
+
+ * src-release.sh (do_proto_toplev): Revert last patch. Enable or
+ disable binutils, gas, gdb, gold, gprof, ld, libdecnumber, readline,
+ and sim depending on $tool and $support_files. Echo configure line.
+
+2017-09-14 Matt Rice <ratmice@gmail.com>
+
+ * src-release.sh (do_proto_toplev): Enable gold during release process.
+
+2017-04-13 Andrew Jenner <andrew@codesourcery.com>
+
+ * config.sub: Sync with master version in config project.
+
2017-04-03 Andrew Jenner <andrew@codesourcery.com>
* config.sub: Handle ia16 in $basic_machine.
diff --git a/Makefile.def b/Makefile.def
index 0d13f03..75063b6 100644
--- a/Makefile.def
+++ b/Makefile.def
@@ -593,7 +593,8 @@ languages = { language=c++; gcc-check-target=check-c++;
lib-check-target=check-target-libgomp-c++; };
languages = { language=fortran; gcc-check-target=check-fortran;
lib-check-target=check-target-libquadmath;
- lib-check-target=check-target-libgfortran; };
+ lib-check-target=check-target-libgfortran;
+ lib-check-target=check-target-libgomp-fortran; };
languages = { language=ada; gcc-check-target=check-ada;
lib-check-target=check-target-libada; };
languages = { language=objc; gcc-check-target=check-objc;
diff --git a/Makefile.in b/Makefile.in
index 3acb83b..7814fe7 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -46908,6 +46908,10 @@ maintainer-clean-target-libatomic:
check-target-libgomp-c++:
$(MAKE) RUNTESTFLAGS="$(RUNTESTFLAGS) c++.exp" check-target-libgomp
+.PHONY: check-target-libgomp-fortran
+check-target-libgomp-fortran:
+ $(MAKE) RUNTESTFLAGS="$(RUNTESTFLAGS) fortran.exp" check-target-libgomp
+
@endif target-libgomp
@if target-libitm
@@ -46959,7 +46963,7 @@ check-gcc-fortran:
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check-fortran);
-check-fortran: check-gcc-fortran check-target-libquadmath check-target-libgfortran
+check-fortran: check-gcc-fortran check-target-libquadmath check-target-libgfortran check-target-libgomp-fortran
.PHONY: check-gcc-ada check-ada
check-gcc-ada:
@@ -49270,7 +49274,6 @@ all-build-m4: maybe-all-build-texinfo
all-build-fixincludes: maybe-all-build-libiberty
all-build-libcpp: maybe-all-build-libiberty
configure-gcc: maybe-configure-intl
-
configure-stage1-gcc: maybe-configure-stage1-intl
configure-stage2-gcc: maybe-configure-stage2-intl
configure-stage3-gcc: maybe-configure-stage3-intl
@@ -49278,7 +49281,6 @@ configure-stage4-gcc: maybe-configure-stage4-intl
configure-stageprofile-gcc: maybe-configure-stageprofile-intl
configure-stagefeedback-gcc: maybe-configure-stagefeedback-intl
configure-gcc: maybe-all-gmp
-
configure-stage1-gcc: maybe-all-stage1-gmp
configure-stage2-gcc: maybe-all-stage2-gmp
configure-stage3-gcc: maybe-all-stage3-gmp
@@ -49286,7 +49288,6 @@ configure-stage4-gcc: maybe-all-stage4-gmp
configure-stageprofile-gcc: maybe-all-stageprofile-gmp
configure-stagefeedback-gcc: maybe-all-stagefeedback-gmp
configure-gcc: maybe-all-mpfr
-
configure-stage1-gcc: maybe-all-stage1-mpfr
configure-stage2-gcc: maybe-all-stage2-mpfr
configure-stage3-gcc: maybe-all-stage3-mpfr
@@ -49294,7 +49295,6 @@ configure-stage4-gcc: maybe-all-stage4-mpfr
configure-stageprofile-gcc: maybe-all-stageprofile-mpfr
configure-stagefeedback-gcc: maybe-all-stagefeedback-mpfr
configure-gcc: maybe-all-mpc
-
configure-stage1-gcc: maybe-all-stage1-mpc
configure-stage2-gcc: maybe-all-stage2-mpc
configure-stage3-gcc: maybe-all-stage3-mpc
@@ -49302,7 +49302,6 @@ configure-stage4-gcc: maybe-all-stage4-mpc
configure-stageprofile-gcc: maybe-all-stageprofile-mpc
configure-stagefeedback-gcc: maybe-all-stagefeedback-mpc
configure-gcc: maybe-all-isl
-
configure-stage1-gcc: maybe-all-stage1-isl
configure-stage2-gcc: maybe-all-stage2-isl
configure-stage3-gcc: maybe-all-stage3-isl
@@ -49310,7 +49309,6 @@ configure-stage4-gcc: maybe-all-stage4-isl
configure-stageprofile-gcc: maybe-all-stageprofile-isl
configure-stagefeedback-gcc: maybe-all-stagefeedback-isl
configure-gcc: maybe-all-lto-plugin
-
configure-stage1-gcc: maybe-all-stage1-lto-plugin
configure-stage2-gcc: maybe-all-stage2-lto-plugin
configure-stage3-gcc: maybe-all-stage3-lto-plugin
@@ -49318,7 +49316,6 @@ configure-stage4-gcc: maybe-all-stage4-lto-plugin
configure-stageprofile-gcc: maybe-all-stageprofile-lto-plugin
configure-stagefeedback-gcc: maybe-all-stagefeedback-lto-plugin
configure-gcc: maybe-all-binutils
-
configure-stage1-gcc: maybe-all-stage1-binutils
configure-stage2-gcc: maybe-all-stage2-binutils
configure-stage3-gcc: maybe-all-stage3-binutils
@@ -49326,7 +49323,6 @@ configure-stage4-gcc: maybe-all-stage4-binutils
configure-stageprofile-gcc: maybe-all-stageprofile-binutils
configure-stagefeedback-gcc: maybe-all-stagefeedback-binutils
configure-gcc: maybe-all-gas
-
configure-stage1-gcc: maybe-all-stage1-gas
configure-stage2-gcc: maybe-all-stage2-gas
configure-stage3-gcc: maybe-all-stage3-gas
@@ -49334,7 +49330,6 @@ configure-stage4-gcc: maybe-all-stage4-gas
configure-stageprofile-gcc: maybe-all-stageprofile-gas
configure-stagefeedback-gcc: maybe-all-stagefeedback-gas
configure-gcc: maybe-all-ld
-
configure-stage1-gcc: maybe-all-stage1-ld
configure-stage2-gcc: maybe-all-stage2-ld
configure-stage3-gcc: maybe-all-stage3-ld
@@ -49342,7 +49337,6 @@ configure-stage4-gcc: maybe-all-stage4-ld
configure-stageprofile-gcc: maybe-all-stageprofile-ld
configure-stagefeedback-gcc: maybe-all-stagefeedback-ld
configure-gcc: maybe-all-gold
-
configure-stage1-gcc: maybe-all-stage1-gold
configure-stage2-gcc: maybe-all-stage2-gold
configure-stage3-gcc: maybe-all-stage3-gold
@@ -49350,7 +49344,6 @@ configure-stage4-gcc: maybe-all-stage4-gold
configure-stageprofile-gcc: maybe-all-stageprofile-gold
configure-stagefeedback-gcc: maybe-all-stagefeedback-gold
configure-gcc: maybe-all-libelf
-
configure-stage1-gcc: maybe-all-stage1-libelf
configure-stage2-gcc: maybe-all-stage2-libelf
configure-stage3-gcc: maybe-all-stage3-libelf
@@ -49358,7 +49351,6 @@ configure-stage4-gcc: maybe-all-stage4-libelf
configure-stageprofile-gcc: maybe-all-stageprofile-libelf
configure-stagefeedback-gcc: maybe-all-stagefeedback-libelf
configure-gcc: maybe-all-libiconv
-
configure-stage1-gcc: maybe-all-stage1-libiconv
configure-stage2-gcc: maybe-all-stage2-libiconv
configure-stage3-gcc: maybe-all-stage3-libiconv
@@ -49366,7 +49358,6 @@ configure-stage4-gcc: maybe-all-stage4-libiconv
configure-stageprofile-gcc: maybe-all-stageprofile-libiconv
configure-stagefeedback-gcc: maybe-all-stagefeedback-libiconv
all-gcc: all-libiberty
-
all-stage1-gcc: all-stage1-libiberty
all-stage2-gcc: all-stage2-libiberty
all-stage3-gcc: all-stage3-libiberty
@@ -49374,7 +49365,6 @@ all-stage4-gcc: all-stage4-libiberty
all-stageprofile-gcc: all-stageprofile-libiberty
all-stagefeedback-gcc: all-stagefeedback-libiberty
all-gcc: maybe-all-intl
-
all-stage1-gcc: maybe-all-stage1-intl
all-stage2-gcc: maybe-all-stage2-intl
all-stage3-gcc: maybe-all-stage3-intl
@@ -49382,7 +49372,6 @@ all-stage4-gcc: maybe-all-stage4-intl
all-stageprofile-gcc: maybe-all-stageprofile-intl
all-stagefeedback-gcc: maybe-all-stagefeedback-intl
all-gcc: maybe-all-mpfr
-
all-stage1-gcc: maybe-all-stage1-mpfr
all-stage2-gcc: maybe-all-stage2-mpfr
all-stage3-gcc: maybe-all-stage3-mpfr
@@ -49390,7 +49379,6 @@ all-stage4-gcc: maybe-all-stage4-mpfr
all-stageprofile-gcc: maybe-all-stageprofile-mpfr
all-stagefeedback-gcc: maybe-all-stagefeedback-mpfr
all-gcc: maybe-all-mpc
-
all-stage1-gcc: maybe-all-stage1-mpc
all-stage2-gcc: maybe-all-stage2-mpc
all-stage3-gcc: maybe-all-stage3-mpc
@@ -49398,7 +49386,6 @@ all-stage4-gcc: maybe-all-stage4-mpc
all-stageprofile-gcc: maybe-all-stageprofile-mpc
all-stagefeedback-gcc: maybe-all-stagefeedback-mpc
all-gcc: maybe-all-isl
-
all-stage1-gcc: maybe-all-stage1-isl
all-stage2-gcc: maybe-all-stage2-isl
all-stage3-gcc: maybe-all-stage3-isl
@@ -49406,7 +49393,6 @@ all-stage4-gcc: maybe-all-stage4-isl
all-stageprofile-gcc: maybe-all-stageprofile-isl
all-stagefeedback-gcc: maybe-all-stagefeedback-isl
all-gcc: maybe-all-build-texinfo
-
all-stage1-gcc: maybe-all-build-texinfo
all-stage2-gcc: maybe-all-build-texinfo
all-stage3-gcc: maybe-all-build-texinfo
@@ -49414,7 +49400,6 @@ all-stage4-gcc: maybe-all-build-texinfo
all-stageprofile-gcc: maybe-all-build-texinfo
all-stagefeedback-gcc: maybe-all-build-texinfo
all-gcc: maybe-all-build-bison
-
all-stage1-gcc: maybe-all-build-bison
all-stage2-gcc: maybe-all-build-bison
all-stage3-gcc: maybe-all-build-bison
@@ -49422,7 +49407,6 @@ all-stage4-gcc: maybe-all-build-bison
all-stageprofile-gcc: maybe-all-build-bison
all-stagefeedback-gcc: maybe-all-build-bison
all-gcc: maybe-all-build-flex
-
all-stage1-gcc: maybe-all-build-flex
all-stage2-gcc: maybe-all-build-flex
all-stage3-gcc: maybe-all-build-flex
@@ -49430,7 +49414,6 @@ all-stage4-gcc: maybe-all-build-flex
all-stageprofile-gcc: maybe-all-build-flex
all-stagefeedback-gcc: maybe-all-build-flex
all-gcc: maybe-all-build-libiberty
-
all-stage1-gcc: maybe-all-build-libiberty
all-stage2-gcc: maybe-all-build-libiberty
all-stage3-gcc: maybe-all-build-libiberty
@@ -49438,7 +49421,6 @@ all-stage4-gcc: maybe-all-build-libiberty
all-stageprofile-gcc: maybe-all-build-libiberty
all-stagefeedback-gcc: maybe-all-build-libiberty
all-gcc: maybe-all-build-fixincludes
-
all-stage1-gcc: maybe-all-build-fixincludes
all-stage2-gcc: maybe-all-build-fixincludes
all-stage3-gcc: maybe-all-build-fixincludes
@@ -49446,7 +49428,6 @@ all-stage4-gcc: maybe-all-build-fixincludes
all-stageprofile-gcc: maybe-all-build-fixincludes
all-stagefeedback-gcc: maybe-all-build-fixincludes
all-gcc: maybe-all-build-libcpp
-
all-stage1-gcc: maybe-all-build-libcpp
all-stage2-gcc: maybe-all-build-libcpp
all-stage3-gcc: maybe-all-build-libcpp
@@ -49454,7 +49435,6 @@ all-stage4-gcc: maybe-all-build-libcpp
all-stageprofile-gcc: maybe-all-build-libcpp
all-stagefeedback-gcc: maybe-all-build-libcpp
all-gcc: maybe-all-zlib
-
all-stage1-gcc: maybe-all-stage1-zlib
all-stage2-gcc: maybe-all-stage2-zlib
all-stage3-gcc: maybe-all-stage3-zlib
@@ -49462,7 +49442,6 @@ all-stage4-gcc: maybe-all-stage4-zlib
all-stageprofile-gcc: maybe-all-stageprofile-zlib
all-stagefeedback-gcc: maybe-all-stagefeedback-zlib
all-gcc: all-libbacktrace
-
all-stage1-gcc: all-stage1-libbacktrace
all-stage2-gcc: all-stage2-libbacktrace
all-stage3-gcc: all-stage3-libbacktrace
@@ -49470,7 +49449,6 @@ all-stage4-gcc: all-stage4-libbacktrace
all-stageprofile-gcc: all-stageprofile-libbacktrace
all-stagefeedback-gcc: all-stagefeedback-libbacktrace
all-gcc: all-libcpp
-
all-stage1-gcc: all-stage1-libcpp
all-stage2-gcc: all-stage2-libcpp
all-stage3-gcc: all-stage3-libcpp
@@ -49478,7 +49456,6 @@ all-stage4-gcc: all-stage4-libcpp
all-stageprofile-gcc: all-stageprofile-libcpp
all-stagefeedback-gcc: all-stagefeedback-libcpp
all-gcc: all-libdecnumber
-
all-stage1-gcc: all-stage1-libdecnumber
all-stage2-gcc: all-stage2-libdecnumber
all-stage3-gcc: all-stage3-libdecnumber
@@ -49486,7 +49463,6 @@ all-stage4-gcc: all-stage4-libdecnumber
all-stageprofile-gcc: all-stageprofile-libdecnumber
all-stagefeedback-gcc: all-stagefeedback-libdecnumber
all-gcc: maybe-all-libiberty
-
all-stage1-gcc: maybe-all-stage1-libiberty
all-stage2-gcc: maybe-all-stage2-libiberty
all-stage3-gcc: maybe-all-stage3-libiberty
@@ -49494,7 +49470,6 @@ all-stage4-gcc: maybe-all-stage4-libiberty
all-stageprofile-gcc: maybe-all-stageprofile-libiberty
all-stagefeedback-gcc: maybe-all-stagefeedback-libiberty
all-gcc: maybe-all-fixincludes
-
all-stage1-gcc: maybe-all-stage1-fixincludes
all-stage2-gcc: maybe-all-stage2-fixincludes
all-stage3-gcc: maybe-all-stage3-fixincludes
@@ -49502,7 +49477,6 @@ all-stage4-gcc: maybe-all-stage4-fixincludes
all-stageprofile-gcc: maybe-all-stageprofile-fixincludes
all-stagefeedback-gcc: maybe-all-stagefeedback-fixincludes
all-gcc: maybe-all-lto-plugin
-
all-stage1-gcc: maybe-all-stage1-lto-plugin
all-stage2-gcc: maybe-all-stage2-lto-plugin
all-stage3-gcc: maybe-all-stage3-lto-plugin
@@ -49510,7 +49484,6 @@ all-stage4-gcc: maybe-all-stage4-lto-plugin
all-stageprofile-gcc: maybe-all-stageprofile-lto-plugin
all-stagefeedback-gcc: maybe-all-stagefeedback-lto-plugin
all-gcc: maybe-all-libiconv
-
all-stage1-gcc: maybe-all-stage1-libiconv
all-stage2-gcc: maybe-all-stage2-libiconv
all-stage3-gcc: maybe-all-stage3-libiconv
@@ -49518,7 +49491,6 @@ all-stage4-gcc: maybe-all-stage4-libiconv
all-stageprofile-gcc: maybe-all-stageprofile-libiconv
all-stagefeedback-gcc: maybe-all-stagefeedback-libiconv
info-gcc: maybe-all-build-libiberty
-
info-stage1-gcc: maybe-all-build-libiberty
info-stage2-gcc: maybe-all-build-libiberty
info-stage3-gcc: maybe-all-build-libiberty
@@ -49526,7 +49498,6 @@ info-stage4-gcc: maybe-all-build-libiberty
info-stageprofile-gcc: maybe-all-build-libiberty
info-stagefeedback-gcc: maybe-all-build-libiberty
dvi-gcc: maybe-all-build-libiberty
-
dvi-stage1-gcc: maybe-all-build-libiberty
dvi-stage2-gcc: maybe-all-build-libiberty
dvi-stage3-gcc: maybe-all-build-libiberty
@@ -49534,7 +49505,6 @@ dvi-stage4-gcc: maybe-all-build-libiberty
dvi-stageprofile-gcc: maybe-all-build-libiberty
dvi-stagefeedback-gcc: maybe-all-build-libiberty
pdf-gcc: maybe-all-build-libiberty
-
pdf-stage1-gcc: maybe-all-build-libiberty
pdf-stage2-gcc: maybe-all-build-libiberty
pdf-stage3-gcc: maybe-all-build-libiberty
@@ -49542,7 +49512,6 @@ pdf-stage4-gcc: maybe-all-build-libiberty
pdf-stageprofile-gcc: maybe-all-build-libiberty
pdf-stagefeedback-gcc: maybe-all-build-libiberty
html-gcc: maybe-all-build-libiberty
-
html-stage1-gcc: maybe-all-build-libiberty
html-stage2-gcc: maybe-all-build-libiberty
html-stage3-gcc: maybe-all-build-libiberty
@@ -49554,7 +49523,6 @@ install-gcc: maybe-install-lto-plugin
install-strip-gcc: maybe-install-strip-fixincludes
install-strip-gcc: maybe-install-strip-lto-plugin
configure-libcpp: configure-libiberty
-
configure-stage1-libcpp: configure-stage1-libiberty
configure-stage2-libcpp: configure-stage2-libiberty
configure-stage3-libcpp: configure-stage3-libiberty
@@ -49562,7 +49530,6 @@ configure-stage4-libcpp: configure-stage4-libiberty
configure-stageprofile-libcpp: configure-stageprofile-libiberty
configure-stagefeedback-libcpp: configure-stagefeedback-libiberty
configure-libcpp: maybe-configure-intl
-
configure-stage1-libcpp: maybe-configure-stage1-intl
configure-stage2-libcpp: maybe-configure-stage2-intl
configure-stage3-libcpp: maybe-configure-stage3-intl
@@ -49570,7 +49537,6 @@ configure-stage4-libcpp: maybe-configure-stage4-intl
configure-stageprofile-libcpp: maybe-configure-stageprofile-intl
configure-stagefeedback-libcpp: maybe-configure-stagefeedback-intl
configure-libcpp: maybe-all-libiconv
-
configure-stage1-libcpp: maybe-all-stage1-libiconv
configure-stage2-libcpp: maybe-all-stage2-libiconv
configure-stage3-libcpp: maybe-all-stage3-libiconv
hooks/post-receive
--
Repository for Project Archer.
^ permalink raw reply [flat|nested] 2+ messages in thread
* [SCM] scox/strace: Handle T packets and all signal types.
@ 2019-04-01 14:31 scox
0 siblings, 0 replies; 2+ messages in thread
From: scox @ 2019-04-01 14:31 UTC (permalink / raw)
To: archer-commits
The branch, scox/strace has been updated
via 451fedd097d72653b034d236d5e23e0b98152845 (commit)
from 9e8f1a71428e1266d47d8cf4a809257c363b1933 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email.
- Log -----------------------------------------------------------------
commit 451fedd097d72653b034d236d5e23e0b98152845
Author: Stan Cox <scox@redhat.com>
Date: Mon Apr 1 10:29:08 2019 -0400
Handle T packets and all signal types.
-----------------------------------------------------------------------
Summary of changes:
gdb/contrib/gdbrp-dump.py | 44 ++++++++++++++++++++++++++------------------
1 files changed, 26 insertions(+), 18 deletions(-)
First 500 lines of diff:
diff --git a/gdb/contrib/gdbrp-dump.py b/gdb/contrib/gdbrp-dump.py
index 32b07a0..a95f6af 100755
--- a/gdb/contrib/gdbrp-dump.py
+++ b/gdb/contrib/gdbrp-dump.py
@@ -1,6 +1,6 @@
#! /usr/bin/env python
-# Copyright (C) 2016 Free Software Foundation, Inc.
+# Copyright (C) 2016, 2019 Free Software Foundation, Inc.
#
# This file is part of GDB.
#
@@ -62,7 +62,13 @@ def big_endian(arg, s, e):
return be_str
def signal(sig):
- signals = {3:"SIGQUIT", 4:"SIGILL", 5:"SIGTRAP", 17:"SIGCHLD", 18:"SIGCONT", 19:"SIGSTOP"}
+ signals = {1:"SIGHUP", 2:"SIGINT", 3:"SIGQUIT", 4:"SIGILL", 5:"SIGTRAP", \
+ 6:"SIGABRT", 7:"SIGBUS", 8:"SIGFPE", 9:"SIGKILL", 10:"SIGUSR1", \
+ 11:"SIGSEGV", 12:"SIGUSR2", 13:"SIGPIPE", 14:"SIGALRM", 15:"SIGTERM", \
+ 16:"SIGSTKFLT", 17:"SIGCHLD", 18:"SIGCONT", 19:"SIGSTOP", 20:"SIGTSTP", \
+ 21:"SIGTTIN", 22:"SIGTTOU", 23:"SIGURG", 24:"SIGXCPU", 25:"SIGXFSZ", \
+ 26:"SIGVTALRM", 27:"SIGPROF", 28:"SIGWINCH", 29:"SIGIO", 30:"SIGPWR", \
+ 31:"SIGSYS"}
try:
return signals[sig]
except KeyError:
@@ -187,6 +193,7 @@ def dump_client_packet(line):
# [ packet id, brief description, packet layout ]
# The packet layout keywords are expanded below
packets = [
+ ["$qSymbol:", "symbol lookup", ["symbol-name"]],
["$q", "general query", ["name params"]],
["$vAttach", "attach", ["pid"]],
["$vCont?", 'query resume actions', ["action:thread-id"]],
@@ -254,7 +261,6 @@ def dump_client_packet(line):
["$qSearch:memory:address;length;search-pattern", "", [""]],
["$QStartNoAckMode", "packet acknowledgment", [""]],
["$BreakpointCommands", "", [""]],
- ["$qSymbol::", "symbol lookup", ["symbol-name"]],
["$qThreadExtraInfo,thread-id", "", [""]],
["$qXfer:object:read:annex:offset,length", "", [""]],
["$qAttached", "remote attach state", ["pid"]],
@@ -403,13 +409,13 @@ def dump_client_packet(line):
idx = len(arg)
if idx % 2 > 0:
idx -= 3
- if request == "vRun":
- try:
- executable = binascii.unhexlify(args[argidx][:idx])
- print executable,
- except TypeError:
- print "Unable to print vRun argument",
- pass
+# if request == "vRun":
+ try:
+ executable = binascii.unhexlify(args[argidx][:idx])
+ print executable,
+ except TypeError:
+ print "Unable to print vRun argument",
+ pass
elif a == "registers":
dump_registers(arg)
else:
@@ -450,28 +456,30 @@ def dump_server_packet(line, last_request):
start = 0
else:
start = 1
- dump_registers(decode_packet(args[0][start:]))
+ dump_registers(decode_packet(args[0][start:]))
elif last_request == "m":
dump_memory(decode_packet(args[0][1:]))
if len(args) == 0:
return
if args[0][0] == 'T' or args[0][0] == 'S':
- if args[0][0] == 'S':
+ if args[0][0] == 'T':
+ this_sig = signal(int(args[0][1:3],16))
+ elif args[0][0] == 'S':
args[0] = args[0][5:]
try:
- print dsp_prefix, "packet reply: signal=", signal(int(args[0][1:3], 16)),
+ this_sig = signal(int(args[0][1:3], 16))
except ValueError:
pass
subargs = args[0].split(':')
- print
- print dsp_prefix,
+# print dsp_prefix,
try:
if args[0][3:5] == "sy":
status, text = getstatusoutput('grep "_NR_.* ' + str(int(subargs[1], 16)) + '$" /usr/include/asm/unistd_64.h')
- print text[text.find("#define ")+8:],
+ print dsp_prefix, text[text.find("#define ")+8:], this_sig,
elif args[0][3:5] == "wa":
- print "watch =", subargs[1],
+ print dsp_prefix, "watch =", subargs[1],
else:
+ print dsp_prefix, this_sig,
print_register(args[0][3:5], subargs[1], 0, 0)
print
except IndexError:
@@ -506,7 +514,7 @@ def dump_server_packet(line, last_request):
idx = len(args[0])
suffix = ""
x = 0
- print args[0][8:idx]
+# print args[0][8:idx]
print dsp_prefix, " server:", binascii.unhexlify(args[0][8:idx]) + suffix
# Depending on verbosity, we may or may not wish to print a line
hooks/post-receive
--
Repository for Project Archer.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2019-04-01 14:31 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-04-01 14:18 [SCM] scox/strace: Handle T packets and all signal types scox
2019-04-01 14:31 scox
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).