From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 99233 invoked by alias); 23 Jul 2015 17:19:13 -0000 Mailing-List: contact archer-commits-help@sourceware.org; run by ezmlm Sender: Precedence: bulk List-Post: List-Help: List-Subscribe: Received: (qmail 99212 invoked by uid 9674); 23 Jul 2015 17:19:13 -0000 Date: Thu, 23 Jul 2015 17:19:00 -0000 Message-ID: <20150723171910.98839.qmail@sourceware.org> From: jkratoch@sourceware.org To: archer-commits@sourceware.org Subject: [SCM] jankratochvil/gdbserverbuildid: Tests for validate symbol file using build-id X-Git-Refname: refs/heads/jankratochvil/gdbserverbuildid X-Git-Reftype: branch X-Git-Oldrev: 9dd28e86b67a3aa55c973fabf32719d6d055c646 X-Git-Newrev: b3a8be5ab9d1bb342a71339dff68262bbddd6a9d X-SW-Source: 2015-q3/txt/msg00001.txt.bz2 List-Id: The branch, jankratochvil/gdbserverbuildid has been updated discards 9dd28e86b67a3aa55c973fabf32719d6d055c646 (commit) discards b3f1ed8156d4f736335fc92ae29027bf890fd56c (commit) discards 79c03cbb287878d3e5fcfb8104bdd21aa712f013 (commit) discards 6d40ae1db39bdabb415a05aa909178d61cb519ed (commit) discards 3be039f17b9eba6e91726477ea85ba35f3ba9643 (commit) discards 54d4369e81bc3e7beed9d2ace779802ef7963c96 (commit) discards e27ef350d86557c5f0e7e7c25552c23cae56c264 (commit) discards 8ac504f352ad74008efbc4bb52ab1bebd191fb2a (commit) discards b1c33d49e13ebb4341ce70666aa4c9ef8f2cea06 (commit) discards 216adcf57f7b70456078bf1614b33f3862f3c33c (commit) discards 0185cb50d9177bff135c98c05ae65768a7ad19a6 (commit) discards 7bb07e11b2b2d1d87c7c4729ecaf44626ba54fe5 (commit) discards 10cd4b5ed84dc62aea3857e1a2a72dc83f9403e8 (commit) discards b6c4d1bab02b75800599a47058160c4120c7f506 (commit) discards 09212ccbd0c9dcd6708be2238516f7a1f6eb0515 (commit) via b3a8be5ab9d1bb342a71339dff68262bbddd6a9d (commit) via f181d87f731067e3177e0b54e68d4fd71eb9f44c (commit) via bd1d5c1647863a0ec69b4fdaad8712bb35c90ca4 (commit) via f267a89c0f494a74036e1e57110f618d939a18c3 (commit) via a2aa9e81f85e5cdccad64bfeb2e4099710010226 (commit) via 32d42528a019c6bcb48bbcfdd5a3f6a5e4eb7597 (commit) via 0837d8a80bf9d02d2f2a0211b76ea73b8b62b8e9 (commit) via 7b849db4f213d6734b4121ca5e5cab3341a5140c (commit) via d0d8478068ae7c01b1a504ca2fba90c1d36c5566 (commit) via c2fbdc5901a9220d0953f14c27760c3d3ae13074 (commit) via 070fe95d07c78349f0c8f0fa90aeb92d05248483 (commit) via 510fac86d7a8855fc680466f07ae266802c5fb40 (commit) via 20c2a615876bdf0d5dc8e2db86eea1312d9dc9b8 (commit) via 7360e63f80782cf34a195eb1c6149760c3da7f14 (commit) via 511b1657d2b251e529a7a0634325bb7d8f3af80d (commit) via 5b2af7dd40a4f3b570aef71daf11b9dfce9a5d13 (commit) via cd78ea777c35c497fcc0f20d162789296dc0a44d (commit) via bb854a36d192bfa6609da9e3b1342e33da445598 (commit) via f945ba50bb7e11c03d850d1680b15da758300ad7 (commit) via 6dca8d51d523adc1a8ba7ea22c4b27d86a57da56 (commit) via 5417c94d1a944d1a27f99240e5d62a6d7cd324f1 (commit) via b8c6c5ef99ef8f07fcea1c777d5084dc6f7232e5 (commit) via cb5cf5e26ea2e42937a2ce1b662e61e4772ba6f9 (commit) via af1b22f3004774f8c5c570abe7fab629026032f7 (commit) via 40e050d242199ac67803c155ac2062169e5cf53d (commit) via f33026a96558ba9231ad91eb989ea6f347a15899 (commit) via 391538482ede7161fdd88187596426eb6d9ae44d (commit) via 8b558f797a3a63aaa8de119ddf53c8afdd1dc6eb (commit) via 0ef3814fe1b5579890a7758e6e52d12b8a96fdf2 (commit) via 45972d00747459a447f7e84891ed6a3367565f24 (commit) via 2bca03770d4d219b4e29d43754a9d95a4152255a (commit) via f54f5e31ce1270a1e9441348d6f2ea2426352478 (commit) via a3b5281eb93f986e9865a099c554156c40e4a686 (commit) via c20ceeb226168ffd84078ef74d890c2b7f69a435 (commit) via 3675a06a823132663f7c2376796c5345032fddad (commit) via 7ac018954bd9c2d964204a451ecabdd7d8a11945 (commit) via f2d7e0f45023ef1b469c627aff02ead3697b1240 (commit) via d9d11c361cc29bdac2d2d6c38bce329d25abf7af (commit) via e474ab13ec653d5d78489467f90669689191b31a (commit) via 5e63e4525526ddf01fcbde7d7517560c492a0884 (commit) via 0bda1f8819c4c0aed25c78fadac545d8334dd0c1 (commit) via b4e1fd615ae6582170a6bb62d6519d586bd5347e (commit) via ce62125ee9797bc5b23745fe140506b0d64f4220 (commit) via 554717a3edce7e266d409cd2c9c76d92584ac156 (commit) via c67ca4de63fb3018a7e21ec4afe709d4c0dd52c4 (commit) via 25abf97969e50190cb5532b25b8e1deef3ab3bde (commit) via 2ecd81c23cd070cb66073f726bddf2a7083bdaf1 (commit) via e53b69389a7d743fe888926475d46167e91b1157 (commit) via 4c0a9a6fa1c43e727e8de9ede87df7c21bd8500f (commit) via 6a49a997b406fba3a389d9d8a6ff72042606c69d (commit) via 4f9b735feac07e013e9f63d50d9da7a91d58cdfe (commit) via 6bcb1f97b19a749ddec7c0d80d10282fcd3f4fb3 (commit) via 775a3298dca48e76e29045912e08025abacafa94 (commit) via 6f1c2142595b1ec203a7da998b2155403a433e89 (commit) via 53c3012ccc25ecfc4fa1f52e341e19b30d1e57db (commit) via 77a69ff840d60cca73624e16e5b2dd5217a6037e (commit) via 6c37fedc41b028905cc828c0eccd3a8720512e4e (commit) via 53e8fd0f07cec1eb36149a64e4ed45923967453c (commit) via 081e4c7d6714c62ae0e53842013e360f97618ba4 (commit) via 84b52b66511b99c8cb5cc2074d3dbabf4ffcf826 (commit) via 4bcddaceb01a5ece549b2d807166b5e050801f5a (commit) via bb20bd8373e9880ec9bf0df357c5836519ca1048 (commit) via db1ff28b60f8886b8d7c634f1db2f939ba47a13c (commit) via 0a94970d663a053c523f23ac0d71deb25a77f709 (commit) via ca5268b6be265580b91ef75c1a1a9815f581ae42 (commit) via 700ca40f6fc1addd7238f4ab57f76c095ad3c99f (commit) via 9904185cfde13d6c6849f1f042c8e3b74974cf08 (commit) via f7af1fcd759fa126612018a5916cf808df7bb8bc (commit) via 6e5b4429db0d66e2d0b27e1bcfe4709f3dae73ed (commit) via ddc98fbf2fd9e244a215a4d09e559180dc573a14 (commit) via 03346981fe6c11ab63b54a8d1919d6357e659684 (commit) via 189ebcf9150ee935fd5f9718a3abf02084dde02d (commit) via e57bb7a0313b66f8be8b380f5328bbb45fbc2fbf (commit) via d1d0aea1ea3572451ed04dc22a31ec1c50c606de (commit) via 42422cc7d6c2e816ef1c4d268f41b58c031344f2 (commit) via e7b01ce03de85cfbbddb6ed755486db528abf1d1 (commit) via 210187848791f50ee7dd8eaae8fc4bd371b3550b (commit) via f168693bc9d109c387e442119354bd57ecec8267 (commit) via 452802827f0870df0c8ece81a7e098d94cee4536 (commit) via cfa68bae4271a51a4402f8ca7ccdc014be95d79d (commit) via 19a7fe52ae3d0971e67a134bcb1648899e21ae1c (commit) via 22121df01ff9247b3cb272f52632848f9631f80f (commit) via dc2edb520a534fd0c2af169d46b4d892208e8f42 (commit) via d0270d8cb92123b55d2bf735e59ee9450a9893f9 (commit) via 1d83d382dea9b98d4aa4aa0083713447b83e0ba5 (commit) via 4d6404f01d38b1f34bd9bba4d78276e8154f3312 (commit) via 49d00f48e8e3c1331d367785f19c69867a47b4cd (commit) via 99fe86f7999afd2743b08c550b10f083ae4bd9bd (commit) via 8a643cc36cf121de3a9131f95547eba927413710 (commit) via 969b1713b7c5bc0a5fb90d85f82c7f0fd27de34f (commit) via ce6c656dcb8257b7c05975039700e3c9f4c3af3b (commit) via 454de2ee151958e0c45d4ed0f3e496156e29d3a2 (commit) via 1f0d470a6699abe442982df22168c002d16bb714 (commit) via 8ffdba260ca757521c815782a0fe01fedc84849a (commit) via 586b02a96f744497c8921a558f1c386287849ab0 (commit) via 05e83eb1b6a69c34b2fc5ab5e2dc14119145e49d (commit) via d5131498a57d1789ff0fea2cfeb1af90802c8dad (commit) via 97605e61a14518b1a0ac2a576f4f3c843743e4d5 (commit) via c576455ba70871d7f93218f995b02bbd0a098d85 (commit) via fb8b9dbc147d37129e5a366a395302f532f5d190 (commit) via 480586639d6b814b2e87f6f106b8635cf7442b20 (commit) via 8d6dbeb44ca93b836e3af8f8d3993997bf347112 (commit) via 9394ff46fba5a989d94782db817cc248dac736e9 (commit) via e571fc2b054422f2e236f614a5276c416ffb9e44 (commit) via 889884731e09b46e4c2ecb051dfde1e2f69d2b47 (commit) via a0e28e54675fd92e73df71fed5d4f6c718f40102 (commit) via 58c1b36c673c88f13fe0cf3844fef643c35e8318 (commit) via 813dabb9f0413c3391035300e9af083513ce83fb (commit) via 209ce4c2de420e5d55649eecdcb3e8a837fa546f (commit) via be0496857f9f11559681ebaafd3462ebc8df351d (commit) via 218a5a11a07268228484af88666739852ba36552 (commit) via 421530db90312b605ce05d7cf883123a084f9af3 (commit) via c101f28fea4fc8621bdf864bc6e2132244dbe6a7 (commit) via 150375dc7ac877d1dc6e8aaf73a23479b720306c (commit) via 6dce28e413375aa878cf43853d32657d1fc26c6f (commit) via a2c59f280dda14a2f68d0175c8879238be1aa200 (commit) via 40f77f827b91ab9665ce27950c30c688f8fde983 (commit) via e03ed3c64a048522ba4bc12092f8a75bcfab6ea8 (commit) via 485668e5b3987456b44588c1f2fd8a0723909866 (commit) via 73854cdd438dc8858290231ebcb682377d71fec2 (commit) via f250f5c6ddedd25e81a66cddfcfe93ed79018e8d (commit) via 61163dfaaedb90d78e11c1d79ad1e469daf3da47 (commit) via 58d2eda55ca5aea4fa2dcaf3bb2fff4525b236d0 (commit) via 7671bf47fc6233087ec8b2ac2698f48a1d3f35f3 (commit) via 7890fb45667484d99488b047551bc9dd6d1c9889 (commit) via ea873d8ea64281250434e198b57373f308c3bddb (commit) via 02a2a705aa71646a47c955388491523a989516c5 (commit) via 7dfa3edc033c443036d9f2a3e01120f7fb54f498 (commit) via db634143224dc7cb985d996bed15257f5cb86b25 (commit) via 8b61f75db53877215c7cb15b901a094bf1fb916e (commit) via 7c8edfae86385f922dca6ef1ab7c7d378d4fd30f (commit) via 3350cc01deccb8289c1c26938628f996df3e390c (commit) via 938c69a11897acea85275b93b5bb376b589564fa (commit) via 49f7fe2880dc08ae701d9cdb84c8217642ef637a (commit) via 9e4f353ca9d4f4ae70ce76ae704e5686d47e2f63 (commit) via 1c67f0326351d9c521692ceca92f93cb0de9bf2e (commit) via 0b6ef777bd0b7918590da1bdbeab1ca97d753ba2 (commit) via 1033c33c36c5f3d0b89d58aaaa374c76562583f3 (commit) via f6b93c346364866f96529fb03557eb43e0434fa5 (commit) via de231f2015ec537df22c60822c9adb1f2205c13e (commit) via 0f4576e3582f097cd257339d9395e88d07031002 (commit) via c2d65f389a2f213d74bd78df6a75dca6eedb3bae (commit) via 37fdfe4c0083c2a6c8558c76e2bc4fbc77df7d91 (commit) via 80a2b330f7e719cd851242d6f976719586fb9295 (commit) via de0ef285459ec1b4330b9eaede88a229380aefa0 (commit) via 4ab31498e400c89ba9dcea2444c65aa020ab53fc (commit) via 7a41607e01b505db895fcebcad618606cfab1ecf (commit) via 7e3023528162de7760a0e7e487aa81bbf44cb6a9 (commit) via a9bd710f8777b5f4d6cbb9f5f14d6eb16f60c690 (commit) via 328e7bfdde7267f5e4b971bc6dca7b82aef77661 (commit) via 7c7f93f6e5ce31223acbe871fe0c7e4daf0d8bbc (commit) via ef3f321b39c3e31fc49f034257a944d515af182a (commit) via 0560c645c02eba2828a053039dcfdf676cdd1d00 (commit) via 084641963dba63283bf2eca227f4f77c2598b172 (commit) via bcf5c1d96b3b5493041002eb2b6d27288d9d160a (commit) via e8643a4533a92e011dad97ea53c99d314c06513d (commit) via 76fb6829cd9cc53c3eefa98ce6c99bacaa52f491 (commit) via 501f83eb1837e89f8a4060b46d68d155156b41eb (commit) via b91deca94e36b9f18156909e4c615fe7af8e3ae8 (commit) via 4931af25b8ab8f9db77c40142d52e4513762ca97 (commit) via 9fcf688e800e089217ecc8a47b228be180866df8 (commit) via fbd8d50de232dcc7efa5ac4531adb72af2439977 (commit) via 71be1fdc3655a170f4b14d795e5c9e81fcea06ef (commit) via 82c40d4b1deb252f2d17ff74f3fae6ae8cdd0383 (commit) via 607685ecee1015d6c37e0d800d40453dc0aadc8c (commit) via f1b6788884b2e95105475c95b7f22f6ceba2271e (commit) via 179bfe826ba62ca8aa43f3d20cc1b21dfc41b1d0 (commit) via 3e221d361f5647b56b7cc3ebf5ff487f417ceed0 (commit) via d441430b752a617fe476e745b95f544fe4463fec (commit) via fa446e20d980f2fa225c57e452849dc7d5f615d6 (commit) via 15162befa3ac493c781c126ad49cb20eac053618 (commit) via 6008fc5fcd34e3f1cde89c86e3b62bcc7ad7ea7c (commit) via 7c79d316af486c456f6f092d0841a9e16527bfd6 (commit) via f2232bea3284b80fcf0ed19ee6b940bcc6ebeb3d (commit) via 66c4b3e8a628a207bc6aafef6af0c4128195f56e (commit) via 1a617dc351fe55ad18dee9759a6f3286c2df2cf8 (commit) via bcd8537ce10dd72b053fa54e87525defa26f3fd0 (commit) via 10e9aaa3b8554f997db993c8158493a96030d4d5 (commit) via 8a13d42d99390c36d5e7884b509e6bb92ec72e3c (commit) via a844296a982bdff7c14dab355de0fca75486add6 (commit) via f41cbf58f4af65e8612585c45208f3690a39ea28 (commit) via 118ca22445afc728069ca80be2f30dae6913059e (commit) via 0d3a523baa86b53238c658d2b290b151eac072dd (commit) via 92a9c616e496f41c3d1da949078d5739add79161 (commit) via 533edc14b87398bbf4cbf3083bd6deaa5b89d5ab (commit) via e7ba597a2e537e1e77bff5d8a26ab8fbe6369afc (commit) via 0f088b2a9417b1d4ed597849ffa671eba25f5051 (commit) via b6b3dd8f31c96b6f7ba26de1508c3c1b2fd437f9 (commit) via ef5a96d564a22a25d31533c7377eede42c12b25c (commit) via 1b485e67784d7b4c212a936edc79f43bdd7d09cd (commit) via 69ae7f4d16a0fd2548211a37aa5dc8482050bd70 (commit) via 0561fea48c107b271308a013c485c29cbd5c13b5 (commit) via decf8d9a5f91912768d52cd075b6a25617a90d1c (commit) via 2fd0f80d57e8437d70ba79921efd3ce02e755755 (commit) via db49d3d0414173fe8907dcae1cab0067d46c44cd (commit) via b0627500e819fcaaa42538046b0bf069a7c2edc5 (commit) via 9be54cae43929ab989fcd44dfcf8d3313a55f7a0 (commit) via 010a18a1b12ec6d5219b7e602aa6abe12344dd1a (commit) via b20a652466ea6e62e7d056188b79a0677a29f46e (commit) via 58bfce93438e1f936d4547bb9659b7d096e2823f (commit) via b0fd6b3037669534962b1ffe860db178ea7e1239 (commit) via 78ab7e9d38585cb939c473812e6a472b8f4fd5b9 (commit) via e62803699d1a722460e8aaa63ef5c99f5580761a (commit) via 7d8d1bd943e28623cd188725aa994edf045e54fb (commit) via 0cb5a38a5be39be9e18a1090418d3be97d6b8678 (commit) via c8c8175b623c597cf18442ff1e13456beb41931d (commit) via 8c163c5a87f3e16f34ea9a0565767a23dccd5983 (commit) via 965b1d80832fde9ba17a8b5f11b578a8f9e10581 (commit) via dfc87947b5ac6d6382c225449d4fdce411c7ee66 (commit) via bbcbf914a6ad801bfa7d4e56150217a1d53e07af (commit) via 7a53c6c9c7b85f92480370d29c8a70635f6744b3 (commit) via 06f810bd8ee52d2485c180d45c635c25c9a15108 (commit) via 5e61e7c0390b390bd07c019ade5e42d7a6d77e10 (commit) via 0986c744dfecb8177de90020646090e9ed23cfe7 (commit) via b5fca6d7284b2cd2e90efc556eb6a29a1b177476 (commit) via c45613e33dbdc646b6fd7f02f86635639e852bfb (commit) via d0bf44cb88be21ea009a4fe0e59a3d3e6e545aed (commit) via a2efc14b81515aebd2b7e1f47fe4768e432493a9 (commit) via 16beab3db6f347a00b18c0d6bcc3c48feff58dca (commit) via 5ee4a1ca16364c79f8717752ee9a9bd562580907 (commit) via 9916071f8df180400e39d1783d4a878cf57c61fe (commit) via 54f66250d79ec304ea427915bfd8b535ec249c3b (commit) via 7b9be803fed8f500b512d5685773c84fffcdf63f (commit) via fd6e021d8c989905bbb234fdf993799db5a18cb9 (commit) via 56b06706ebe6bb3decc674b788b6f5b243b8610d (commit) via 06b3fd23bfe2f0f76a590e89ac7378c13153e165 (commit) via 28bf096c62d7da6b349605f3940f4c586a850f78 (commit) via 2880b51c25b055013c2f4939a5d0c0779b972bb3 (commit) via 96c97461222f9cb1a16b3b90fb7316c9c3d8732a (commit) via 37d669427f8b90f3c9d17a6e04d72c731d3abdbc (commit) via 1451ea7da40a82e8cf6a39fa8d0fc74ff230600a (commit) via bb0eef66f82c97b863951eddd0c47e28faf716a8 (commit) via 73cb0348b296656e971c4d428aa63781e656a1c4 (commit) via ee0c0c503deffb7baf900ac8e092b18bf8c1528a (commit) via e44fbadbede56bf42896c2b3214a056cf20f131e (commit) via 216cb5839a931d3d61aff8e0de9e49183e3d69c1 (commit) via a2a55a40071096faef218f34dad3adf34db9b1ed (commit) via 98090c0be30fb626aed09a7f9973b9c9980cce56 (commit) via ee93cd5e1e61e5739a1a44e0d1d166ae09d04dc2 (commit) via fc637f04c741b08726cc1631428bf094235ecb4e (commit) via 2e52ae68e7cedc3a1f9908c98ee60a8602705835 (commit) via 6e22494e5076e4d3c0b2c2785883162f83db499e (commit) via c742574f825fe43d1e7203fca8690c008b525e97 (commit) via a5499fa4649e4325cf46edfff2f24dae2fe2afef (commit) via 920d644c6377a0bf7419ae8a24bac6e101beb847 (commit) via 3f3070745b78c25d7b16c913c15496b296802505 (commit) via 946748d5ed1d218adfccd523be9fdf280adfe434 (commit) via bf7b9cd9aa4645119792e9d1689e0f014f43934f (commit) via 06e78fc77dfcb8a63e44a790c9731db0eaebe87d (commit) via 4a677ba7249d61afc58b761c997cf1a743279e02 (commit) via ef10c3ace00674e8c3599c3bf95f06c87d68898b (commit) via f8773be1be076f828b93ac3bebeab3f782e191e4 (commit) via a3be80c3c54e9e2c0d8e9a1ff77c931cd8ebeb60 (commit) via 53f7371c77f50aea587cf06bf4cc79273ee1382e (commit) via 68c3545dc3bf31e41572a3e9ada3e189dc704b0c (commit) via 7cc152be3e6f24f2bdb9740157426dc115cdaa54 (commit) via 32fad71f9e6cdf73fe3c10123b23f42397b83e7d (commit) via 7c1e8d3ed5e48b3339d60450fdb5b29ae54edebe (commit) via f91ca6bc00c1e3c70c1d2f4527d4297b76e2eaca (commit) via 59cab532835904f368b0aa99267afba5fda5ded2 (commit) via 602a67cbeaf6b42bc513a873aec82e53235b8754 (commit) via 9b6025d1691e83eb5e85805df88a67083972ecca (commit) via fa8f87e53b68881c5e3aab296b517203407c4378 (commit) via cf304b56ca48631836bdc4035134b5b5ec3b9d49 (commit) via 87d1b30944783ae0efb49236c6d872d775a37417 (commit) via 8371bf0cd99635c9eabed28481b34ea8934a948e (commit) via 201e8dfdc8926c0b15bd9bebc762612ce196fd00 (commit) via 23bf70af12aa0c14e79c02b6098117bdba8c8a3a (commit) via 5cd867b414fe3609dbf596c373343474132775a8 (commit) via 4d7be0075acd2083772944209c765a7c332a1727 (commit) via dc06243f6f87aa52222dab0ef45bb9a5119724da (commit) via 44d51e2c27f2154970c046089be768f503b996b1 (commit) via 0fc26cafacfff9f53d898bb73495b384b80d6d31 (commit) via e750549018d67d545bdaf90cc058f97b954600cc (commit) via 8d0978fb4bf62e760e7b50e59d5c58d30c059183 (commit) via a38fe4feddd68b9c0aa082dd078c668ca9f06aae (commit) via 8e6500c55ef0b9413ab16e384dbfcaa238bcd420 (commit) via 4953dc20941a48eed02b575cec29d8de419f87eb (commit) via b50a153264dae2267e3846772819515c648e3c97 (commit) via 7564fe458c2fe1a77eecfaf5e2f99bec8961d457 (commit) via 0bdb2f78497a1b3be65d1428cc02f7d4e1d3a888 (commit) via c217058957a45a93481da35e1531ed120750d739 (commit) via e5ee3fe285c698f1ce3d9bbb596bcda6219f5f3a (commit) via 7b9341139a693eac8d316275004b2d752b1f0cb8 (commit) via bdc4de1b24353c4213e404029252ec75065499de (commit) via 07fcd30112bb071e8dda0a2229a860f2874a7816 (commit) via 52042a003f3e9200c992bc5cf4607dc7655b1f7b (commit) via cb5d172ca44e20200b96b5276c4198095d7b6516 (commit) via ccd4b2953bb039e91b301a616c5f7c6f542b6b10 (commit) via f55b33d51b056c665568c6204bd3ced7f1ec15c8 (commit) via 618b526e31d3df71e9526a0753271624a568564e (commit) from 9dd28e86b67a3aa55c973fabf32719d6d055c646 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email. - Log ----------------------------------------------------------------- commit b3a8be5ab9d1bb342a71339dff68262bbddd6a9d Author: Jan Kratochvil Date: Sun Jul 12 20:59:03 2015 +0200 Tests for validate symbol file using build-id New testcase. gdb/testsuite/ChangeLog 2015-07-15 Aleksandar Ristovski Date: Wed Jul 15 17:37:28 2015 +0200 Validate symbol file using build-id Consumer part of the "build-id" attribute. gdb/ChangeLog 2015-07-15 Aleksandar Ristovski Validate symbol file using build-id. * NEWS (Changes since GDB 7.10): Add 'set validate-build-id' and 'show validate-build-id'. Add build-id attribute. * solib-darwin.c (_initialize_darwin_solib): Assign validate value. * solib-dsbt.c (_initialize_dsbt_solib): Ditto. * solib-frv.c (_initialize_frv_solib): Ditto. * solib-spu.c (set_spu_solib_ops): Ditto. * solib-svr4.c: Include rsp-low.h. (NOTE_GNU_BUILD_ID_NAME): New define. (svr4_validate): New function. (svr4_copy_library_list): Duplicate field build_id. (library_list_start_library): Parse 'build-id' attribute. (svr4_library_attributes): Add 'build-id' attribute. (_initialize_svr4_solib): Assign validate value. * solib-target.c (solib.h): Include. (_initialize_solib_target): Assign validate value. * solib.c (validate_build_id, show_validate_build_id): New. (solib_map_sections): Use ops->validate. (clear_so): Free build_id. (default_solib_validate): New function. (_initialize_solib): Add "validate-build-id". * solib.h (default_solib_validate): New declaration. * solist.h (struct so_list): New fields 'build_idsz' and 'build_id'. (target_so_ops): New field 'validate'. gdb/doc/ChangeLog 2015-07-15 Jan Kratochvil * gdb.texinfo (Files): Add 'set validate-build-id' and 'show validate-build-id'. commit bd1d5c1647863a0ec69b4fdaad8712bb35c90ca4 Author: Jan Kratochvil Date: Wed Jul 15 17:37:28 2015 +0200 gdbserver build-id attribute generator Producer part of the new "build-id" XML attribute. gdb/ChangeLog 2015-07-15 Aleksandar Ristovski gdbserver build-id attribute generator. * features/library-list-svr4.dtd (library-list-svr4): New 'build-id' attribute. gdb/doc/ChangeLog 2015-07-15 Aleksandar Ristovski gdbserver build-id attribute generator. * gdb.texinfo (Library List Format for SVR4 Targets): Add 'build-id' in description, example, new attribute in dtd. gdb/gdbserver/ChangeLog 2015-07-15 Aleksandar Ristovski gdbserver build-id attribute generator. * linux-low.c (linux-maps.h, search.h, rsp-low.h): Include. (ElfXX_Ehdr, ElfXX_Phdr, ElfXX_Nhdr): New. (ELFXX_FLD, ELFXX_SIZEOF, ELFXX_ROUNDUP, BUILD_ID_INVALID): New. (find_phdr): New. (get_dynamic): Use find_pdhr to traverse program headers. (struct mapping_entry, mapping_entry_s, free_mapping_entry_vec) (compare_mapping_entry_range, struct find_memory_region_callback_data) (read_build_id, find_memory_region_callback, lrfind_mapping_entry) (get_hex_build_id): New. (linux_qxfer_libraries_svr4): Add optional build-id attribute to reply XML document. commit f267a89c0f494a74036e1e57110f618d939a18c3 Author: Jan Kratochvil Date: Wed Jul 15 17:37:27 2015 +0200 Move linux_find_memory_regions_full & co. This should be just a move with no changes. gdb/ChangeLog 2015-07-15 Aleksandar Ristovski Move linux_find_memory_regions_full & co. * linux-tdep.c (linux-maps.h): Include. (gdb_regex.h): Remove the include. (enum filterflags, struct smaps_vmflags, read_mapping, decode_vmflags) (mapping_is_anonymous_p, dump_mapping_p): Moved to common/linux-maps.c. (linux_find_memory_region_ftype): Moved typedef to common/linux-maps.h. (linux_find_memory_regions_full): Moved definition to common/linux-maps.c. * common/linux-maps.c: Include ctype.h, target/target-utils.h, gdb_regex.h and target/target.h. (struct smaps_vmflags, read_mapping, decode_vmflags) (mapping_is_anonymous_p, dump_mapping_p): Move from linux-tdep.c. (linux_find_memory_regions_full): Move from linux-tdep.c. * common/linux-maps.h (read_mapping): New declaration. (linux_find_memory_region_ftype, enum filterflags): Moved from linux-tdep.c. (linux_find_memory_regions_full): New declaration. * target.c (target/target-utils.h): Include. (read_alloc_pread_ftype): Moved typedef to target/target-utils.h. (read_alloc, read_stralloc_func_ftype, read_stralloc): Moved definitions to target/target-utils.c. * target.h (target_fileio_read_stralloc): Move it to target/target.h. * target/target-utils.c (read_alloc, read_stralloc): Move definitions from target.c. * target/target-utils.h (read_alloc_pread_ftype): New typedef. (read_alloc): New declaration. (read_stralloc_func_ftype): New typedef. (read_stralloc): New declaration. * target/target.h (target_fileio_read_stralloc): Move it from target.h. gdb/gdbserver/ChangeLog 2015-07-15 Aleksandar Ristovski * target.c: Include target/target-utils.h and fcntl.h. (target_fileio_read_stralloc_1_pread, target_fileio_read_stralloc_1) (target_fileio_read_stralloc): New functions. commit a2aa9e81f85e5cdccad64bfeb2e4099710010226 Author: Jan Kratochvil Date: Wed Jul 15 17:37:27 2015 +0200 Prepare linux_find_memory_regions_full & co. for move Prepare code for move into gdb/common/. gdb/ChangeLog 2015-07-15 Aleksandar Ristovski Prepare linux_find_memory_regions_full & co. for move. * linux-tdep.c (linux_find_memory_region_ftype): Comment. (linux_find_memory_regions_full): Change signature and prepare for moving to linux-maps. (linux_find_memory_regions_data): Rename field 'obfd' to 'data'. (linux_find_memory_regions_thunk): New. (linux_find_memory_regions_thunk): Use 'data' field instead of 'obfd'. (linux_find_memory_regions_gdb): New. (linux_find_memory_regions): Rename argument 'obfd' to 'func_data'. (linux_make_mappings_corefile_notes): Use linux_find_memory_regions_gdb. * target.c (read_alloc_pread_ftype): New typedef. (target_fileio_read_alloc_1_pread): New function. (read_alloc): Refactor from target_fileio_read_alloc_1. (read_stralloc_func_ftype): New typedef. (target_fileio_read_alloc_1): New implementation. Use read_alloc. (read_stralloc): Refactored from target_fileio_read_stralloc. (target_fileio_read_stralloc): New implementation, use read_stralloc. commit 32d42528a019c6bcb48bbcfdd5a3f6a5e4eb7597 Author: Jan Kratochvil Date: Wed Jul 15 17:37:27 2015 +0200 Move gdb_regex* to common/ Later patches need regex support also in gdbserver. gdb/ChangeLog 2015-07-15 Jan Kratochvil * Makefile.in (HFILES_NO_SRCDIR): Change gdb_regex.h to common/gdb_regex.h. (COMMON_OBS): Add gdb_regex.o. (gdb_regex.o): New. * common/common.m4 (GDB_AC_COMMON): Add gdb_use_included_regex, --without-included-regex and USE_INCLUDED_REGEX. * common/gdb_regex.c: New file from utils.c functions. * common/gdb_regex.h: Move it here from gdb_regex.h, update include file wrapping define name. * configure: Rebuilt. * configure.ac (gdb_use_included_regex, --without-included-regex) (USE_INCLUDED_REGEX): Move them to common/common.m4. * gdb_regex.h: Move it to common/gdb_regex.h. * utils.c: Remove include gdb_regex.h. (do_regfree_cleanup, make_regfree_cleanup, get_regcomp_error) (compile_rx_or_error): Move them to common/gdb_regex.c. gdb/gdbserver/ChangeLog 2015-07-15 Jan Kratochvil * Makefile.in (OBS): Add gdb_regex.o. (gdb_regex.o): New. * config.in: Rebuilt. * configure: Rebuilt. commit 0837d8a80bf9d02d2f2a0211b76ea73b8b62b8e9 Author: Jan Kratochvil Date: Thu Jul 23 18:27:55 2015 +0200 Create empty common/linux-maps.[ch] and common/target-utils.[ch] Prepare new files for later move. gdb/ChangeLog 2015-07-15 Aleksandar Ristovski Create empty common/linux-maps.[ch] and common/target-utils.[ch]. * Makefile.in (ALL_TARGET_OBS): Add linux-maps.o. (HFILES_NO_SRCDIR); Add common/linux-maps.h, common/target-utils.h. (COMMON_OBS): Add target-utils.o. (linux-maps.o, target-utils.o): New. * target/target-utils.c: New file. * target/target-utils.h: New file. * common/linux-maps.c: New file. * common/linux-maps.h: New file. * configure.tgt (aarch64*-*-linux*, alpha*-*-linux*) (am33_2.0*-*-linux*, arm*-*-linux*, bfin-*-*linux*, cris*, frv-*-*) (hppa*-*-linux*, i[34567]86-*-linux*, ia64-*-linux*, m32r*-*-linux*) (m68*-*-linux*, microblaze*-linux-*, microblaze*-*-linux*) (mips*-*-linux*, nios2*-*-linux*, powerpc*-*-linux*, s390*-*-linux*) (sh*-*-linux*, sparc-*-linux*, sparc64-*-linux*, tic6x-*-*linux) (tilegx-*-linux*, x86_64-*-linux*, xtensa*-*-linux*): Add linux-maps.o to gdb_target_obs. gdb/gdbserver/ChangeLog 2015-07-15 Aleksandar Ristovski Create empty common/linux-maps.[ch] and common/target-utils.[ch]. * Makefile.in (OBS): Add target-utils.o. (linux-maps.o, target-utils.o): New. * configure.srv (srv_linux_obj): Add linux-maps.o. commit 7b849db4f213d6734b4121ca5e5cab3341a5140c Author: Ciro Santilli Date: Thu Jul 23 06:36:25 2015 -0700 py-linetable.c: Fix doc of LineTable.source_lines' return type The ltpy_get_all_source_lines function, use to implement the gdb.LineTable.source_lines method, returns a list: source_list = PyDict_Keys (source_dict); return source_list; This patch fixes the function's documentation as well as its docstring to say that it returns a list rather than a FrozenSet. gdb/ChangeLog: * py-linetable.c (ltpy_get_all_source_lines): Adjust function documentation to say that it returns a list rather than a FrozenSet. (linetable_object_methods): Update the docstring of the "source_line" entry. Tested on x86_64-linux. commit d0d8478068ae7c01b1a504ca2fba90c1d36c5566 Author: Pierre-Marie de Rodat Date: Wed Jul 22 12:25:14 2015 +0200 gdb/gdbtypes: fix handling of typedef layers between array types When a dynamic array type contains a typedef-wrapped array, an assertion failure occurs during type resolution. This is what happens in the following Ada case: type Rec_Type is record I : Integer; B : Boolean; end record; type Vec_Type is array (1 .. 4) of Rec_Type; type Array_Type is array (Positive range <>) of Vec_Type; If users try to print or even pass to an inferior call a variable A of type Array_Type, GDB will raise an error: (gdb) print a ../../src/gdb/gdbtypes.c:1807: internal-error: resolve_dynamic_array: Assertion `TYPE_CODE (type) == TYPE_CODE_ARRAY' failed. A problem internal to GDB has been detected, further debugging may prove unreliable. Quit this debugging session? (y or n) What happens is that during dynamic array type resolution, we first peel TYPE_CODE_TYPEDEF layers wrapping the array element type and check if its type is itself TYPE_CODE_ARRAY. If it is, we pass the typedef-wrapped type to a recursive call to resolve_dynamic_array whereas this function expects only TYPE_CODE_ARRAY types. This patch makes it pass the peeled type to the recursive call so that type resolution can continue smoothly. gdb/ChangeLog: * gdbtypes.c (resolve_dynamic_array): Pass the peeled element type to the recursive call instead of the original (maybe TYPE_CODE_TYPEDEF) type. gdb/testsuite/ChangeLog: * gdb.ada/var_arr_typedef.exp: New testcase. * gdb.ada/var_arr_typedef/pack.adb: New file. * gdb.ada/var_arr_typedef/pack.ads: New file. * gdb.ada/var_arr_typedef/var_arr_typedef.adb: New file. commit c2fbdc5901a9220d0953f14c27760c3d3ae13074 Author: Yao Qi Date: Thu Jul 23 11:22:34 2015 +0100 Return zero in aarch64_linux_can_use_hw_breakpoint if target doesn't support HW watchpoint/breakpoint Nowadays aarch64_linux_can_use_hw_breakpoint always return one, but it can be smarter, say, if GDB knows target doesn't support HW watchpoint or breakpoint because HW watchpoint/breakpoint is disabled in linux kernel, for example, it can safely return zero. gdb: 2015-07-23 Yao Qi * aarch64-linux-nat.c (aarch64_linux_can_use_hw_breakpoint): If TYPE is watchpoint, return zero if aarch64_num_wp_regs is zero. If TYPE is breakpoint, return zero if arch64_num_bp_regs is zero. commit 070fe95d07c78349f0c8f0fa90aeb92d05248483 Author: Alan Modra Date: Thu Jul 23 12:41:38 2015 +0930 Fix ubsan signed integer overflow IMO a fairly useless warning in this case, but technically correct. PR 18708 * i386-dis.c (get64): Avoid signed integer overflow. commit 510fac86d7a8855fc680466f07ae266802c5fb40 Author: GDB Administrator Date: Thu Jul 23 00:00:07 2015 +0000 Automatic date update in version.in commit 20c2a615876bdf0d5dc8e2db86eea1312d9dc9b8 Author: H.J. Lu Date: Wed Jul 22 13:24:20 2015 -0700 Fix memory operand size for vcvtt?ps2u?qq instructions When disassembling AVX512 vcvtt?ps2u?q instructions with data broadcasting enabled, memory operand size should be DWORD. gas/testsuite/ PR binutils/18631 * gas/i386avx512dq-intel.d: Replace "QWORD" with "DWORD" in vcvtt?ps2u?qq instructions disassembly regexes. Add disassembly regex for new test. * gas/i386/avx512dq.d: Likewise. * gas/i386/avx512dq_vl-intel.d: Likewise. * gas/i386/avx512dq_vl.d: Likewise. * gas/i386/x86-64-avx512dq-intel.d: Likewise. * gas/i386/x86-64-avx512dq.d: Likewise. * gas/i386/x86-64-avx512dq_vl-intel.d: Likewise. * gas/i386/x86-64-avx512dq_vl.d: Likewise. * gas/i386/avx512dq.s: Add new test for Intel syntax with memory operand and broadcasting enabled. * gas/i386/avx512dq_vl.s: Likewise. * gas/i386/x86-64-avx512dq.s: Likewise. * gas/i386/x86-64-avx512dq_vl.s: Likewise. opcodes/ PR binutils/18631 * i386-dis-evex.h (EVEX_W_0F78_P_2): Replace "EXxmmq" with "EXEvexHalfBcstXmmq" for the second operand. (EVEX_W_0F79_P_2): Likewise. (EVEX_W_0F7A_P_2): Likewise. (EVEX_W_0F7B_P_2): Likewise. commit 7360e63f80782cf34a195eb1c6149760c3da7f14 Author: Alan Modra Date: Wed Jul 22 10:26:29 2015 +0930 readelf display of 0x800...000 addend * readelf.c (dump_relocations): Show MIN_INT addends as negative. commit 511b1657d2b251e529a7a0634325bb7d8f3af80d Author: Alan Modra Date: Wed Jul 22 21:58:50 2015 +0930 gas line buffer handling This fixes a segfault when macro definitions end on the last line of a file, and that line isn't properly terminated with a newline. gas used to throw away the last line in cases like this, whereas in other cases gas added the missing newline. So I've also made gas consistently provide a missing newline. PR gas/18687 * input-scrub.c (input_scrub_next_buffer): Rearrange and simplify loop. Don't drop lines at end of file lacking a newline, add a newline instead. Ensure partial_size is zero whenever partial_where is NULL. Adjust buffer size for extra char. (input_scrub_push, input_scrub_begin): Adjust buffer size here too. commit 5b2af7dd40a4f3b570aef71daf11b9dfce9a5d13 Author: H.J. Lu Date: Wed Jul 22 03:36:42 2015 -0700 Don't compare symbol addresses directly GCC 5 will fold symbol address comparison, assuming each symbol has a different address, which leads to abort. We should use separate functions to compare symbol address. PR gold/18663 * testsuite/Makefile.am (script_test_1_SOURCES): Set to script_test_1a.cc script_test_1b.cc. (script_test_11_r.o): Replace script_test_11.o with script_test_11a.o script_test_11b.o. (script_test_11.o): Removed. (script_test_11a.o): New. (script_test_11b.o): Likewise. * testsuite/Makefile.in: Regenerated. * testsuite/script_test_1.h: New file. * testsuite/script_test_1b.cc: Likewise. * testsuite/script_test_11.h: Likewise. * testsuite/script_test_11b.c: Likewise. * testsuite/script_test_1.cc: Renamed to ... * testsuite/script_test_1a.cc: This. Include "script_test_1.h". (main): Call check_int and check_ptr. * testsuite/script_test_11.c: Renamed to ... * testsuite/script_test_11a.c: This. Include "script_test_11.h". (main): Call ptr_equal. commit cd78ea777c35c497fcc0f20d162789296dc0a44d Author: H.J. Lu Date: Wed Jul 22 03:35:47 2015 -0700 Mark global with hidden attribute GCC 5 will generate a relocation for protected symbol: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65248 when compiling for a shared library. It is undefined to access protected symbol in IFUNC selector function inside a shared library. PR gold/18628 * testsuite/ifuncdep2.c (global): Change protected to hidden. * testsuite/ifuncmod1.c (global): Likewise. * testsuite/ifuncmod5.c (global): Likewise. commit bb854a36d192bfa6609da9e3b1342e33da445598 Author: Alan Modra Date: Wed Jul 22 19:11:22 2015 +0930 Fix ppc64 ELFv1 assertion failure Bogus assembly can hit an assertion in opd_entry_value when the symbol referenced by a function descriptor is undefined. Worse, the code after the assert copies unitialised memory to return the code section. This uninitialised pointer can later be dereferencd, possibly causing a linker segmentation fault. * elf64-ppc.c (opd_entry_value): Remove assertion. Instead, return -1 if symbol referenced is not defined. Tidy. commit f945ba50bb7e11c03d850d1680b15da758300ad7 Author: Alan Modra Date: Tue Jul 21 12:10:27 2015 +0930 GOLD aarch64 warning fix aarch64.cc:2026:50: error: integer overflow in expression [-Werror=overflow] Insntype adr_insn = adrp_insn & ((1 << 31) - 1); * aarch64.cc (try_fix_erratum_843419_optimized): Warning fix. commit 6dca8d51d523adc1a8ba7ea22c4b27d86a57da56 Author: GDB Administrator Date: Wed Jul 22 00:00:08 2015 +0000 Automatic date update in version.in commit 5417c94d1a944d1a27f99240e5d62a6d7cd324f1 Author: Cary Coutant Date: Tue Jul 21 16:10:05 2015 -0700 Fix problem where __start_ and __stop_ section symbols do not honor version script. When creating the special __start_ and __stop_ section symbols, gold does not check the version script to see if they should be local instead of global. 2015-07-21 Cary Coutant gold/ PR gold/18548 * symtab.cc (Symbol_table::do_define_in_output_data): Check for forced local symbol even when oldsym != NULL. (Symbol_table::do_define_in_output_segment): Likewise. (Symbol_table::do_define_as_constant): Likewise. commit b8c6c5ef99ef8f07fcea1c777d5084dc6f7232e5 Author: Cary Coutant Date: Tue Jul 21 12:50:45 2015 -0700 Fix typo in PR number. Fix internal error when linking an archive library with no preceding objects. gold/ PR gold/18698 * archive.cc (Library_base::should_include_member): Don't use entry point for relocatable links, or if target is not yet valid. * parameters.cc (Parameters::entry): Check target_valid(). commit cb5cf5e26ea2e42937a2ce1b662e61e4772ba6f9 Author: Cary Coutant Date: Tue Jul 21 12:42:07 2015 -0700 Fix internal error when linking an archive library with no preceding objects. gold/ PR gold/18696 * archive.cc (Library_base::should_include_member): Don't use entry point for relocatable links, or if target is not yet valid. * parameters.cc (Parameters::entry): Check target_valid(). commit af1b22f3004774f8c5c570abe7fab629026032f7 Author: Yao Qi Date: Tue Jul 21 16:33:41 2015 +0100 Move aarch64_linux_get_debug_reg_capacity to nat/aarch64-linux-hw-point.c There are also some duplication on getting HW watchpoint/breakpoint registers info between GDB and GDBserver. This patch moves them to nat/aarch64-linux-hw-point.c. Note that ENABLE_NLS is not defined in GDBserver, so it should be OK to use _( markup. gdb: 2015-07-21 Yao Qi * aarch64-linux-nat.c (aarch64_linux_get_debug_reg_capacity): Move it to nat/aarch64-linux-hw-point.c. (aarch64_linux_child_post_startup_inferior): Update. * nat/aarch64-linux-hw-point.c (aarch64_linux_get_debug_reg_capacity): New function. * nat/aarch64-linux-hw-point.h (aarch64_linux_get_debug_reg_capacity): Declare it. gdb/gdbserver: 2015-07-21 Yao Qi * linux-aarch64-low.c (aarch64_arch_setup): Remove code and call aarch64_linux_get_debug_reg_capacity. commit 40e050d242199ac67803c155ac2062169e5cf53d Author: Markus Metzger Date: Wed Jul 15 08:43:09 2015 +0200 btrace: fix case label in btrace_data_append gdb/ * common/btrace-common.c (btrace_data_append): Change case label. commit f33026a96558ba9231ad91eb989ea6f347a15899 Author: Matthew Wahab Date: Tue Jul 21 09:43:35 2015 +0100 [ARM] Support correctly spelled ARMv6KZ architecture names 2015-07-20 Matthew Wahab gas/ * NEWS: Mention corrected spelling of armv6kz. * config/tc-arm.c (arm_cpus): Replace ARM_ARCH_V6ZK with ARM_ARCH_V6KZ. (arm_archs): Likewise. Also add "armv6kz" and "armv6kzt2". * doc/c-arm.texi: Replace "armv6zk" with "armv6kz". gas/testsuite * gas/arm/attr-march-armv6kz.d: New. * gas/arm/attr-march-armv6kzt2.d: New. include/opcode * arm.h (ARM_AEXT_V6ZK): Rename to ARM_AEXT_V6KZ. (ARM_AEXT_V6ZKT2): Rename to ARM_AEXT_V6KZT2. (ARM_ARCH_V6ZK): Rename to ARM_ARCH_V6KZ. (ARM_ARCH_V6ZKT2): Rename to ARM_ARCH_V6KZT2. commit 391538482ede7161fdd88187596426eb6d9ae44d Author: GDB Administrator Date: Tue Jul 21 00:00:07 2015 +0000 Automatic date update in version.in commit 8b558f797a3a63aaa8de119ddf53c8afdd1dc6eb Author: Joel Brobecker Date: Mon Jul 20 15:09:44 2015 -0700 gdb.ada/info_exc.exp: Adjust expected output in "info exception" test. Since multi_line was moved to gdb.exp in a slightly stricter form, The gdb.ada/info_exc.exp:info exceptions test has been failing. This is because it now expects a new-line sequence at the end of each argument given to multi_line, including ".*". But the intent when writing the test was to signify "could-be-nothing-at-all". As a result, the test fails on x86_64-linux with a runtime built as recommended, because of that extra new-line sequence. gdb/testsuite/ChangeLog: * gdb.ada/info_exc.exp: Adjust "info exceptions" expected output. commit 0ef3814fe1b5579890a7758e6e52d12b8a96fdf2 Author: Han Shen Date: Mon Jul 20 13:04:06 2015 -0700 Optimize erratum 843419 fix. gold/ChangeLog: * aarch64.cc (AArch64_insn_utilities::is_adr): New method. (AArch64_insn_utilities::aarch64_adr_encode_imm): New method. (AArch64_insn_utilities::aarch64_adrp_decode_imm): New method. (E843419_stub): New sub-class of Erratum_stub. (AArch64_relobj::try_fix_erratum_843419_optimized): New method. (AArch64_relobj::section_needs_reloc_stub_scanning): Try optimized fix. (AArch64_relobj::create_erratum_stub): Add 1 argument. (Target_aarch64::scan_erratum_843419_span): Pass in adrp insn offset. commit 45972d00747459a447f7e84891ed6a3367565f24 Author: H.J. Lu Date: Mon Jul 20 12:18:06 2015 -0700 Update testsuite/pr18689.sh for older GCC Older GCC, like 4.2, generates .debug_macinfo section instead of .debug_macro section. This patch updates testsuite/pr18689.sh to support it. commit 2bca03770d4d219b4e29d43754a9d95a4152255a Author: Han Shen Date: Thu Jul 16 15:59:16 2015 -0700 Properly set arm-specific elf flags wrt hardfp. gold/ChangeLog: * arm.cc (Target_arm::do_adjust_elf_header): Set flags into view. commit f54f5e31ce1270a1e9441348d6f2ea2426352478 Author: H.J. Lu Date: Mon Jul 20 10:14:26 2015 -0700 Clear SHF_COMPRESSED flag bit from input to output For relocatable link, we should clear the SHF_COMPRESSED flag bit from input group section. PR gold/18689 * layout.cc (Layout::layout): Clear the SHF_COMPRESSED flag bit from input group section for relocatable link. * testsuite/Makefile.am (check_SCRIPTS): Add pr18689.sh. (check_DATA): Add pr18689.stdout. (MOSTLYCLEANFILES): Add pr18689a.o pr18689b.o. (pr18689.stdout): New rule. (pr18689a.o): Likewise. (pr18689b.o): Likewise. (pr18689.o): Likewise. * testsuite/pr18689.c: New file. * testsuite/pr18689.sh: Likewise. * testsuite/Makefile.in: Regenerated. commit a3b5281eb93f986e9865a099c554156c40e4a686 Author: Doug Evans Date: Mon Jul 20 09:21:51 2015 -0700 Makefile.in (STABS_DOC_BUILD_INCLUDES): Add gdb-cfg.texi, GDBvn.texi. gdb/doc/ChangeLog: * Makefile.in (STABS_DOC_BUILD_INCLUDES): Add gdb-cfg.texi, GDBvn.texi. commit c20ceeb226168ffd84078ef74d890c2b7f69a435 Author: Yiran Wang Date: Mon Jul 20 08:47:57 2015 -0700 Remove warning about references from shared objects to hidden symbols. gold/ PR gold/15574 * resolve.cc (Symbol_table): Remove warning about references from shared objects to hidden symbols. * testsuite/Makefile.am (hidden_test): Add hidden_test.syms. * testsuite/Makefile.in: Regenerate. * testsuite/hidden_test.sh: Check dynamic symbol table; update expected error messages. commit 3675a06a823132663f7c2376796c5345032fddad Author: Yao Qi Date: Mon Jul 20 16:29:16 2015 +0100 Fix ARI warnings to nat/aarch64-linux-hw-point.{c,h} This patch is to fix two ARI warnings for nat/aarch64-linux-hw-point.{c,h}. gdb: 2015-07-20 Yao Qi * nat/aarch64-linux-hw-point.c (aarch64_handle_unaligned_watchpoint): Re-indent the code. * nat/aarch64-linux-hw-point.h: Use ULONGEST rather than "unsigned long long". commit 7ac018954bd9c2d964204a451ecabdd7d8a11945 Author: H.J. Lu Date: Fri Jul 17 08:29:26 2015 -0700 Make binutils abort message GDB friendly We used to generate abort messages like: internal error, aborting at .../bfd/elf64-x86-64.c line 1554 in elf_x86_64_check_relocs We can't cut and paste "file line ???" to GDB. This patch changes those abort messages to internal error, aborting at .../bfd/elf64-x86-64.c:1554 in elf_x86_64_check_relocs so that we can cut and paste "file:???" to GDB. bfd/ * bfd.c (_bfd_abort): Replace " line " with ":" in output message. gas/ * messages.c (as_assert): Replace " line " with ":" in output message. (as_abort): Likewise. ld/ * ldmisc.c (ld_abort): Replace " line " with ":" in output message. commit f2d7e0f45023ef1b469c627aff02ead3697b1240 Author: Alan Modra Date: Mon Jul 20 14:31:23 2015 +0930 Regen two files bfd/ * po/SRC-POTFILES.in: Regenerate. binutils/ * doc/Makefile.in: Regenerate. commit d9d11c361cc29bdac2d2d6c38bce329d25abf7af Author: Alan Modra Date: Mon Jul 20 14:29:37 2015 +0930 ALIGN change affects cris scripts More fallout from a2c59f28. This one could have been fixed by simply using ". = ALIGN (ABSOLUTE (.), 2);" but it's nicer to align the section. * emulparams/criself.sh (INIT_ADDR, FINI_ADDR): Define. (INIT_START, FINI_START): Don't ALIGN. * scriptempl/elf.sc (.init, .fini): Apply INIT_ADDR/FINI_ADDR. commit e474ab13ec653d5d78489467f90669689191b31a Author: Alan Modra Date: Mon Jul 20 14:29:21 2015 +0930 ALIGN change affects standard scripts a2c59f28 changed the way the unary ALIGN behaved inside output sections, resulting in cris-elf testsuite regressions. This patch pads out .bss in the same manner as it was prior to the ALIGN change. * scripttempl/elf.sc (.ldata, .bss): Align absolute value of dot. * ldexp.c (is_align_conditional): Handle binary ALIGN. (exp_fold_tree_1): Move code setting SEC_KEEP for assignments to dot inside output sections. Handle absolute expressions. commit 5e63e4525526ddf01fcbde7d7517560c492a0884 Author: GDB Administrator Date: Mon Jul 20 00:00:07 2015 +0000 Automatic date update in version.in commit 0bda1f8819c4c0aed25c78fadac545d8334dd0c1 Author: GDB Administrator Date: Sun Jul 19 00:00:08 2015 +0000 Automatic date update in version.in commit b4e1fd615ae6582170a6bb62d6519d586bd5347e Author: Kevin Buettner Date: Fri Jul 10 17:41:55 2015 -0700 dwarf2read: Allow SEC_ALLOC sections to be located at address 0. GDB already allows statically initialized variables, located in SEC_LOAD sections, to be placed at address 0. This change allows uninitialized variables (which are in SEC_ALLOC sections) to be placed address 0 as well. gdb/ChangeLog: * dwarf2read.c (dwarf2_locate_sections): Allow has_section_at_zero to be set for SEC_ALLOC sections too. commit ce62125ee9797bc5b23745fe140506b0d64f4220 Author: GDB Administrator Date: Sat Jul 18 00:00:08 2015 +0000 Automatic date update in version.in commit 554717a3edce7e266d409cd2c9c76d92584ac156 Author: Yao Qi Date: Fri Jul 17 14:32:40 2015 +0100 Move common aarch64 HW breakpoint/watchpoint code to nat/ When I look at test fails related to watchpoint on aarch64-linux, I find there are some code duplicates between GDB and GDBserver. This patch is to move some of them to a nat/aarch64-linux-hw-point.{h,c}. The only change I do is about the dr_changed_t typedef, which was ULONGEST in GDB and 'unsigned long long' in GDBserver. Each bit of dr_changed_t represents a status of each HW breakpoint or watchpoint register, and the max number of HW breakpoint or watchpoint registers is 16, so the width of 'unsigned long long' is sufficient. gdb: 2015-07-17 Yao Qi * Makefile.in (HFILES_NO_SRCDIR): Add nat/aarch64-linux-hw-point.h. (aarch64-linux-hw-point.o): New rule. * nat/aarch64-linux-hw-point.h: New file. * nat/aarch64-linux-hw-point.c: New file. * aarch64-linux-nat.c: Include nat/aarch64-linux-hw-point.h. (AARCH64_HBP_MAX_NUM): Move to nat/aarch64-linux-hw-point.h. (AARCH64_HWP_MAX_NUM, AARCH64_HBP_ALIGNMENT): Likewise. (AARCH64_HWP_ALIGNMENT): Likewise. (AARCH64_HWP_MAX_LEN_PER_REG): Likewise. (AARCH64_DEBUG_NUM_SLOTS, AARCH64_DEBUG_ARCH): Likewise. (AARCH64_DEBUG_ARCH_V8, DR_MARK_ALL_CHANGED): Likewise. (DR_MARK_N_CHANGED, DR_CLEAR_CHANGED): Likewise. (DR_HAS_CHANGED, DR_N_HAS_CHANGE): Likewise. (aarch64_num_bp_regs, aarch64_num_wp_regs): Likewise. (struct aarch64_debug_reg_state): Likewise. (struct arch_lwp_info): Likewise. (aarch64_linux_set_debug_regs): Likewise. (aarch64_notify_debug_reg_change): Remove static. (aarch64_align_watchpoint): Likewise. (DR_CONTROL_ENABLED, DR_CONTROL_LENGTH): Likewise. (aarch64_watchpoint_length): Likewise. (aarch64_point_encode_ctrl_reg): Likewise (aarch64_point_is_aligned): Likewise. (aarch64_dr_state_insert_one_point): Likewise. (aarch64_dr_state_remove_one_point): Likewise. (aarch64_handle_breakpoint): Likewise. (aarch64_handle_aligned_watchpoint): Likewise. (aarch64_handle_unaligned_watchpoint): Likewise. (aarch64_handle_watchpoint): Likewise. * config/aarch64/linux.mh (NAT_FILE): Add aarch64-linux-hw-point.o. gdb/gdbserver: 2015-07-17 Yao Qi * Makefile.in (aarch64-linux-hw-point.o): New rule. * configure.srv (srv_tgtobj): Append aarch64-linux-hw-point.o. * linux-aarch64-low.c: Include nat/aarch64-linux-hw-point.h. (AARCH64_HBP_MAX_NUM): Move to nat/aarch64-linux-hw-point.h. (AARCH64_HWP_MAX_NUM, AARCH64_HBP_ALIGNMENT): Likewise. (AARCH64_HWP_ALIGNMENT): Likewise. (AARCH64_HWP_MAX_LEN_PER_REG): Likewise. (AARCH64_DEBUG_NUM_SLOTS, AARCH64_DEBUG_ARCH): Likewise. (aarch64_num_bp_regs, aarch64_num_wp_regs): Likewise. (AARCH64_DEBUG_ARCH_V8, DR_MARK_ALL_CHANGED): Likewise. (DR_MARK_N_CHANGED, DR_CLEAR_CHANGED): Likewise. (DR_HAS_CHANGED, DR_N_HAS_CHANGE): Likewise. (struct aarch64_debug_reg_state): Likewise. (struct arch_lwp_info): Likewise. (aarch64_align_watchpoint): Likewise. (DR_CONTROL_ENABLED, DR_CONTROL_LENGTH): Likewise. (aarch64_watchpoint_length): Likewise. (aarch64_point_encode_ctrl_reg): Likewise (aarch64_point_is_aligned): Likewise. (aarch64_align_watchpoint): Likewise. (aarch64_linux_set_debug_regs): (aarch64_dr_state_insert_one_point): Likewise. (aarch64_dr_state_remove_one_point): Likewise. (aarch64_handle_breakpoint): Likewise. (aarch64_handle_aligned_watchpoint): Likewise. (aarch64_handle_unaligned_watchpoint): Likewise. (aarch64_handle_watchpoint): Likewise. commit c67ca4de63fb3018a7e21ec4afe709d4c0dd52c4 Author: Yao Qi Date: Fri Jul 17 14:32:40 2015 +0100 Pass aarch64_debug_reg_state to functions Some functions on handling HW watchpoint in GDB and GDBserver looks the same except the code getting debug register state from current inferior. In GDB, we get debug register state like this: state = aarch64_get_debug_reg_state (ptid_get_pid (inferior_ptid)); while in GDBserver, we get debug register state like this: state = aarch64_get_debug_reg_state (); This patch is to move two lines above out of some functions, and pass aarch64_debug_reg_state to these functions, in this way, these functions are the same, and can be moved to a common place. gdb: 2015-07-17 Yao Qi * aarch64-linux-nat.c (aarch64_handle_breakpoint): Add argument state and don't call aarch64_get_debug_reg_state. All callers update. (aarch64_linux_insert_hw_breakpoint): Call aarch64_get_debug_reg_state earlier. (aarch64_linux_remove_hw_breakpoint): Likewise. (aarch64_handle_aligned_watchpoint): Add argument state and don't call aarch64_get_debug_reg_state. All callers update. (aarch64_handle_unaligned_watchpoint): Likewise. (aarch64_handle_watchpoint): Add argument state. (aarch64_linux_insert_watchpoint): Call aarch64_get_debug_reg_state earlier. (aarch64_linux_remove_watchpoint): Likewise. gdb/gdbserver: 2015-07-17 Yao Qi * linux-aarch64-low.c (aarch64_handle_breakpoint): Add argument state and don't aarch64_get_debug_reg_state. All callers update. (aarch64_handle_aligned_watchpoint): Likewise. (aarch64_handle_unaligned_watchpoint): Likewise. (aarch64_handle_watchpoint): Likewise. (aarch64_insert_point): Call aarch64_get_debug_reg_state earlier. (aarch64_remove_point): Likewise. commit 25abf97969e50190cb5532b25b8e1deef3ab3bde Author: Yao Qi Date: Fri Jul 17 14:32:40 2015 +0100 Use debug_printf to print debug message Some functions in aarch64-linux-nat.c and linux-aarch64-low.c looks the same except for the code printing debug message. In GDB, we use fprintf_unfiltered (gdb_stdlog, ...) while in GDBserver, we use fprintf (stderr, ...). This patch is to change them to use debug_printf so that these functions are the same, and I can move them to a common place in the following patch. gdb: 2015-07-17 Yao Qi * aarch64-linux-nat.c (aarch64_show_debug_reg_state): Use debug_printf. (aarch64_handle_unaligned_watchpoint): Likewise. gdb/gdbserver: 2015-07-17 Yao Qi * linux-aarch64-low.c (aarch64_show_debug_reg_state): Use debug_printf. (aarch64_handle_unaligned_watchpoint): Likewise. commit 2ecd81c23cd070cb66073f726bddf2a7083bdaf1 Author: Yao Qi Date: Fri Jul 17 14:32:40 2015 +0100 int -> enum target_hw_bp_type in aarch64-linux-nat.c This patch is to use 'enum target_hw_bp_type' instead of int for breakpoint type, in order to make some functions in GDB and GDBserver looks similar. gdb: 2015-07-17 Yao Qi * aarch64-linux-nat.c (aarch64_dr_state_insert_one_point): Change argument type's type to 'enum target_hw_bp_type'. (aarch64_dr_state_remove_one_point): Likewise. (aarch64_handle_breakpoint): Likewise. (aarch64_linux_insert_hw_breakpoint): Likewise. (aarch64_linux_remove_hw_breakpoint): Likewise. (aarch64_handle_aligned_watchpoint): Likewise. commit e53b69389a7d743fe888926475d46167e91b1157 Author: Yao Qi Date: Fri Jul 17 14:06:34 2015 +0100 Call ptid_get_pid instead of get_thread_id in aarch64_linux_get_debug_reg_capacity aarch64_linux_get_debug_reg_capacity is called by aarch64_linux_child_post_startup_inferior, and argument ptid is created in inf-ptrace.c:inf_ptrace_create_inferior, /* On some targets, there must be some explicit actions taken after the inferior has been started up. */ target_post_startup_inferior (pid_to_ptid (pid)); so in aarch64_linux_get_debug_reg_capacity, we can get pid by ptid_get_pid, and don't need to use get_thread_id. gdb: 2015-07-17 Yao Qi * aarch64-linux-nat.c (aarch64_linux_get_debug_reg_capacity): Call ptid_get_pid instead of get_thread_id. commit 4c0a9a6fa1c43e727e8de9ede87df7c21bd8500f Author: Jiong Wang Date: Fri Jul 17 13:03:26 2015 +0100 [AArch64] Sort TLS reloc types alphabetically commit 6a49a997b406fba3a389d9d8a6ff72042606c69d Author: Yao Qi Date: Fri Jul 17 12:14:59 2015 +0100 Fix using uninitialised values We did a code refacotr here https://sourceware.org/ml/gdb-patches/2013-11/msg00063.html > (get_current_thread): New function, factored out from ... > (add_current_inferior_and_thread): ... this. Adjust. > >@@ -3332,18 +3371,8 @@ add_current_inferior_and_thread (char *wait_status) > > inferior_ptid = null_ptid; > >- /* Now, if we have thread information, update inferior_ptid. First >- if we have a stop reply handy, maybe it's a T stop reply with a >- "thread" register we can extract the current thread from. If >- not, ask the remote which is the current thread, with qC. The >- former method avoids a roundtrip. Note we don't use >- remote_parse_stop_reply as that makes use of the target >- architecture, which we haven't yet fully determined at this >- point. */ >- if (wait_status != NULL) >- ptid = stop_reply_extract_thread (wait_status); >- if (ptid_equal (ptid, null_ptid)) >- ptid = remote_current_thread (inferior_ptid); >+ /* Now, if we have thread information, update inferior_ptid. */ >+ ptid = get_current_thread (wait_status); but after the refactor, local variable ptid is used without initialisation. However, before this change, ptid is initialised to null_ptid. This error can be found by valgrind too... ==3298== at 0x6B99BA: ptid_equal (ptid.c:80) ==3298== by 0x4C67FF: get_current_thread (remote.c:3484) ==3298== by 0x4C6951: add_current_inferior_and_thread (remote.c:3511) ==3298== by 0x4C762C: extended_remote_create_inferior (remote.c:8506) ==3298== by 0x5A5312: run_command_1 (infcmd.c:606) ==3298== by 0x68B4FB: execute_command (top.c:463) ==3298== by 0x5C7214: command_handler (event-top.c:494) ==3298== by 0x5C78A3: command_line_handler (event-top.c:692) ==3298== by 0x6DEB57: rl_callback_read_char (callback.c:220) ==3298== by 0x5C7278: rl_callback_read_char_wrapper (event-top.c:171) ==3298== by 0x5C72C2: stdin_event_handler (event-top.c:432) ==3298== by 0x5C6194: gdb_wait_for_event (event-loop.c:834) This patch initialises local variable ptid to null in get_current_thread. We don't need to initialise ptid in add_current_inferior_and_thread, so this patch also removes the ptid initialisation. gdb: 2015-07-17 Yao Qi * remote.c (get_current_thread): Initialise ptid to null_ptid. (add_current_inferior_and_thread): Don't initialise ptid. commit 4f9b735feac07e013e9f63d50d9da7a91d58cdfe Author: GDB Administrator Date: Fri Jul 17 00:00:08 2015 +0000 Automatic date update in version.in commit 6bcb1f97b19a749ddec7c0d80d10282fcd3f4fb3 Author: Doug Evans Date: Thu Jul 16 09:48:03 2015 -0700 stabs.texinfo: @include gdb-cfg.texi. gdb/doc/ChangeLog: * stabs.texinfo: @include gdb-cfg.texi. commit 775a3298dca48e76e29045912e08025abacafa94 Author: Jan Kratochvil Date: Thu Jul 16 18:01:22 2015 +0200 Fix gdb.arch/i386-biarch-core.exp FAIL on i386. This new test fails on i686 buildbot slaves, (gdb) core-file /home/gdb-buildbot-2/fedora-x86-64-2/fedora-i686/build/gdb/testsuite/gdb.arch/i386-biarch-core.core "/home/gdb-buildbot-2/fedora-x86-64-2/fedora-i686/build/gdb/testsuite/gdb.arch/i386-biarch-core.core" is not a core dump: File format not recognized (gdb) FAIL: gdb.arch/i386-biarch-core.exp: core-file There are two problems: (1) The testcase did not really test if elf64-i386 is supported by GDB (BFD). That was OK for a Fedora testcase but I forgot about it when submitting it upstream. I haven't really verified if the GNU target is elf64-little but it seems so, no other one seems suitable from: elf32-x86-64 elf64-big elf64-k1om elf64-l1om elf64-little elf64-x86-64 pei-x86-64 (2) The output of the "core-file" command itself can be arbitrary as the elf64-i386 file with x86_64 registers is really broken; but that does not matter much, important is the following test whether core file memory is readable. ./configure --enable-64-bit-bfd (gdb) core-file /home/jkratoch/redhat/gdb-test-build32-plus64/gdb/testsuite/gdb.arch/i386-biarch-core.core^M warning: Couldn't find general-purpose registers in core file.^M Failed to read a valid object file image from memory.^M warning: Couldn't find general-purpose registers in core file.^M #0 in ?? ()^M (gdb) FAIL: gdb.arch/i386-biarch-core.exp: core-file x/i 0x400078^M 0x400078: hlt ^M (gdb) PASS: gdb.arch/i386-biarch-core.exp: .text is readable I do not know much dejagnu but I expect 'istarget' tests against the site.exp 'target_triplet' content which is set to the primary GDB target (--target=...). GDB is normally never configured for primary target elf64-i386, I think BFD does not know such explicit target, it gets recognized as elf64-little. In fact many testfiles of the GDB testsuite are wrong as they require 'istarget' (therefore primary GDB target) even for just loading arch specific files which would be sufficient with secondary target (--enable-targets=...) support. This my new patch removes this 'istarget' check as it is IMO unrelated to what we need to test. Although you are right we do 'x/i' and test for 'hlt' so I think we should test also for available 'set architecture i386'. We could also test by 'x/bx' instead of 'x/i' to avoid such additional test/requirement. This testcase comes from a different bug from 2009: https://bugzilla.redhat.com/show_bug.cgi?id=457187 http://pkgs.fedoraproject.org/cgit/gdb.git/commit/?id=94cd124608bf0dd359cb48a710800d72c21b30c3 That bug has been fixed in the meantime but the same testcase was reproducing this new different bug - internal error regression - so I submitted it. We can remove the "x/bx $address" test but it was useful for the previous bug from 2009 as that time the internal error regression did not happen, just the core file was not recognized (which would not be detected by the proposed ignoring of the "core-file" command output) and so the core file was not available. That can be tested by the "x/bx $address" test. gdb/testsuite/ChangeLog 2015-07-16 Jan Kratochvil * gdb.arch/i386-biarch-core.exp: Replace istarget by "complete set gnutarget". Remove expectation for the "core-file" command. commit 6f1c2142595b1ec203a7da998b2155403a433e89 Author: Alessandro Marzocchi Date: Thu Jul 16 16:38:48 2015 +0100 Updates the ARM disassembler's output of floating point constants to include the actual floating point value. opcodes * arm-dis.c (print_insn_coprocessor): Added support for quarter float bitfield format. (coprocessor_opcodes): Changed VFP vmov reg,immediate to use new quarter float bitfield format. tests * gas/arm/vfpv3-const-conv.d: Update expected result due to change of comment for vmov reg,immediate with VFP coprocessor. commit 53c3012ccc25ecfc4fa1f52e341e19b30d1e57db Author: Alan Modra Date: Fri Jul 17 00:13:22 2015 +0930 Correct readelf dynamic section buffer overlow test PR binutils/18672 * readelf.c (get_32bit_dynamic_section): Correct buffer limit test. (get_64bit_dynamic_section): Likewise. commit 77a69ff840d60cca73624e16e5b2dd5217a6037e Author: Jiong Wang Date: Thu Jul 16 15:46:21 2015 +0100 [AArch64][3/3] LD support BFD_RELOC_AARCH64_TLSLD_ADR_PREL21 commit 6c37fedc41b028905cc828c0eccd3a8720512e4e Author: Jiong Wang Date: Thu Jul 16 15:43:21 2015 +0100 [AArch64][2/3] GAS support BFD_RELOC_AARCH64_TLSLD_ADR_PREL21 commit 53e8fd0f07cec1eb36149a64e4ed45923967453c Author: Jiong Wang Date: Thu Jul 16 15:38:32 2015 +0100 [AArch64][1/3] Add R_AARCH64_P32_TLSLD_ADR_PREL21 in elf header commit 081e4c7d6714c62ae0e53842013e360f97618ba4 Author: Matthew Wahab Date: Thu Jul 16 15:11:30 2015 +0100 [ARM] Add crypto-neon-fp-armv8.1 as an fpu option 2015-07-16 Matthew Wahab gas/ * config/tc-arm.c (arm_fpus): Add crypto-neon-fp-armv8.1. * doc/c-arm.texi (-mfpu=): Likewise. Correct the entry for neon-fp-armv8.1. commit 84b52b66511b99c8cb5cc2074d3dbabf4ffcf826 Author: James Greenhalgh Date: Thu Jul 16 14:43:00 2015 +0100 [ARM] Make human parsing of "processor does not support instruction in mode" error messages easier 2015-07-16 James Greenhalgh gas/ * config/tc-arm.c (md_assemble): Rephrase the "selected processor does not support ARM mode" error messages. gas/testsuite/ * gas/arm/arch7em-bad.l: Update expected errors. * gas/arm/arch7m-bad.l: Likewise. * gas/arm/arm-idiv-bad.l: Likewise. * gas/arm/arm7-bad.l: Likewise. * gas/arm/armv1-bad.l: Likewise. * gas/arm/thumb-w-bad.l: Likewise. commit 4bcddaceb01a5ece549b2d807166b5e050801f5a Author: Pierre Langlois Date: Thu Jul 16 10:16:14 2015 +0100 [AArch64] Mark single precision pseudo registers unavailable if invalid I noticed two failure in gdb.trace/mi-trace-frame-collected.exp: FAIL: gdb.trace/mi-trace-frame-collected.exp: live: -trace-frame-collected (register) FAIL: gdb.trace/mi-trace-frame-collected.exp: tfile: -trace-frame-collected (register) In these cases, we are not collecting registers so the MI command -trace-frame-collected should only give us the value of the PC. However, it also gives us all of the single precision pseudo registers, initialized with 0x0. We can reproduce this error by simply issuing the 'maint print cooked-register' when no inferior is connected: ~~~ ... (gdb) maint print cooked-register Name Nr Rel Offset Size Type Cooked value x0 0 0 0 8 long x1 1 1 8 8 long ... d30 130 62 1540 8 *1 d31 131 63 1548 8 *1 s0 132 64 1556 4 *1 0x00000000 s1 133 65 1560 4 *1 0x00000000 s2 134 66 1564 4 *1 0x00000000 ... s28 160 92 1668 4 *1 0x00000000 s29 161 93 1672 4 *1 0x00000000 s30 162 94 1676 4 *1 0x00000000 s31 163 95 1680 4 *1 0x00000000 h0 164 96 1684 2 *1 h1 165 97 1686 2 *1 h2 166 98 1688 2 *1 ... ~~~ It turns out GDB does not check if S registers are valid before returning a value for them. It should return in this case. gdb/ChangeLog: * aarch64-tdep.c (aarch64_pseudo_read_value): Mark S register as unavailable if invalid. commit bb20bd8373e9880ec9bf0df357c5836519ca1048 Author: GDB Administrator Date: Thu Jul 16 00:00:07 2015 +0000 Automatic date update in version.in commit db1ff28b60f8886b8d7c634f1db2f939ba47a13c Author: Jan Kratochvil Date: Wed Jul 15 20:27:32 2015 +0200 Revert the previous 7 commits of: Validate binary before use ddc98fbf2fd9e244a215a4d09e559180dc573a14 Create empty nat/linux-maps.[ch] and common/target-utils.[ch] 6e5b4429db0d66e2d0b27e1bcfe4709f3dae73ed Move gdb_regex* to common/ f7af1fcd759fa126612018a5916cf808df7bb8bc Prepare linux_find_memory_regions_full & co. for move 9904185cfde13d6c6849f1f042c8e3b74974cf08 Move linux_find_memory_regions_full & co. 700ca40f6fc1addd7238f4ab57f76c095ad3c99f gdbserver build-id attribute generator ca5268b6be265580b91ef75c1a1a9815f581ae42 Validate symbol file using build-id 0a94970d663a053c523f23ac0d71deb25a77f709 Tests for validate symbol file using build-id gdb/ChangeLog 2015-07-15 Jan Kratochvil Revert the previous 6 commits: Create empty nat/linux-maps.[ch] and common/target-utils.[ch]. Move gdb_regex* to common/ Prepare linux_find_memory_regions_full & co. for move Move linux_find_memory_regions_full & co. gdbserver build-id attribute generator Validate symbol file using build-id gdb/gdbserver/ChangeLog 2015-07-15 Jan Kratochvil Revert the previous 3 commits: Move gdb_regex* to common/ Move linux_find_memory_regions_full & co. gdbserver build-id attribute generator gdb/doc/ChangeLog 2015-07-15 Jan Kratochvil Revert the previous 2 commits: gdbserver build-id attribute generator Validate symbol file using build-id gdb/testsuite/ChangeLog 2015-07-15 Jan Kratochvil Revert the previous commit: Tests for validate symbol file using build-id. commit 0a94970d663a053c523f23ac0d71deb25a77f709 Author: Jan Kratochvil Date: Sun Jul 12 20:59:03 2015 +0200 Tests for validate symbol file using build-id New testcase. gdb/testsuite/ChangeLog 2015-07-15 Aleksandar Ristovski Date: Wed Jul 15 17:37:28 2015 +0200 Validate symbol file using build-id Consumer part of the "build-id" attribute. gdb/ChangeLog 2015-07-15 Aleksandar Ristovski Validate symbol file using build-id. * NEWS (Changes since GDB 7.10): Add 'set validate-build-id' and 'show validate-build-id'. Add build-id attribute. * solib-darwin.c (_initialize_darwin_solib): Assign validate value. * solib-dsbt.c (_initialize_dsbt_solib): Ditto. * solib-frv.c (_initialize_frv_solib): Ditto. * solib-spu.c (set_spu_solib_ops): Ditto. * solib-svr4.c: Include rsp-low.h. (NOTE_GNU_BUILD_ID_NAME): New define. (svr4_validate): New function. (svr4_copy_library_list): Duplicate field build_id. (library_list_start_library): Parse 'build-id' attribute. (svr4_library_attributes): Add 'build-id' attribute. (_initialize_svr4_solib): Assign validate value. * solib-target.c (solib.h): Include. (_initialize_solib_target): Assign validate value. * solib.c (validate_build_id, show_validate_build_id): New. (solib_map_sections): Use ops->validate. (clear_so): Free build_id. (default_solib_validate): New function. (_initialize_solib): Add "validate-build-id". * solib.h (default_solib_validate): New declaration. * solist.h (struct so_list): New fields 'build_idsz' and 'build_id'. (target_so_ops): New field 'validate'. gdb/doc/ChangeLog 2015-07-15 Jan Kratochvil * gdb.texinfo (Files): Add 'set validate-build-id' and 'show validate-build-id'. commit 700ca40f6fc1addd7238f4ab57f76c095ad3c99f Author: Jan Kratochvil Date: Wed Jul 15 17:37:28 2015 +0200 gdbserver build-id attribute generator Producer part of the new "build-id" XML attribute. gdb/ChangeLog 2015-07-15 Aleksandar Ristovski gdbserver build-id attribute generator. * features/library-list-svr4.dtd (library-list-svr4): New 'build-id' attribute. gdb/doc/ChangeLog 2015-07-15 Aleksandar Ristovski gdbserver build-id attribute generator. * gdb.texinfo (Library List Format for SVR4 Targets): Add 'build-id' in description, example, new attribute in dtd. gdb/gdbserver/ChangeLog 2015-07-15 Aleksandar Ristovski gdbserver build-id attribute generator. * linux-low.c (nat/linux-maps.h, search.h, rsp-low.h): Include. (ElfXX_Ehdr, ElfXX_Phdr, ElfXX_Nhdr): New. (ELFXX_FLD, ELFXX_SIZEOF, ELFXX_ROUNDUP, BUILD_ID_INVALID): New. (find_phdr): New. (get_dynamic): Use find_pdhr to traverse program headers. (struct mapping_entry, mapping_entry_s, free_mapping_entry_vec) (compare_mapping_entry_range, struct find_memory_region_callback_data) (read_build_id, find_memory_region_callback, lrfind_mapping_entry) (get_hex_build_id): New. (linux_qxfer_libraries_svr4): Add optional build-id attribute to reply XML document. commit 9904185cfde13d6c6849f1f042c8e3b74974cf08 Author: Jan Kratochvil Date: Wed Jul 15 17:37:27 2015 +0200 Move linux_find_memory_regions_full & co. This should be just a move with no changes. gdb/ChangeLog 2015-07-15 Aleksandar Ristovski Move linux_find_memory_regions_full & co. * linux-tdep.c (nat/linux-maps.h): Include. (gdb_regex.h): Remove the include. (enum filterflags, struct smaps_vmflags, read_mapping, decode_vmflags) (mapping_is_anonymous_p, dump_mapping_p): Moved to nat/linux-maps.c. (linux_find_memory_region_ftype): Moved typedef to nat/linux-maps.h. (linux_find_memory_regions_full): Moved definition to nat/linux-maps.c. * nat/linux-maps.c: Include ctype.h, target/target-utils.h, gdb_regex.h and target/target.h. (struct smaps_vmflags, read_mapping, decode_vmflags) (mapping_is_anonymous_p, dump_mapping_p): Move from linux-tdep.c. (linux_find_memory_regions_full): Move from linux-tdep.c. * nat/linux-maps.h (read_mapping): New declaration. (linux_find_memory_region_ftype, enum filterflags): Moved from linux-tdep.c. (linux_find_memory_regions_full): New declaration. * target.c (target/target-utils.h): Include. (read_alloc_pread_ftype): Moved typedef to target/target-utils.h. (read_alloc, read_stralloc_func_ftype, read_stralloc): Moved definitions to target/target-utils.c. * target.h (target_fileio_read_stralloc): Move it to target/target.h. * target/target-utils.c (read_alloc, read_stralloc): Move definitions from target.c. * target/target-utils.h (read_alloc_pread_ftype): New typedef. (read_alloc): New declaration. (read_stralloc_func_ftype): New typedef. (read_stralloc): New declaration. * target/target.h (target_fileio_read_stralloc): Move it from target.h. gdb/gdbserver/ChangeLog 2015-07-15 Aleksandar Ristovski * target.c: Include target/target-utils.h and fcntl.h. (target_fileio_read_stralloc_1_pread, target_fileio_read_stralloc_1) (target_fileio_read_stralloc): New functions. commit f7af1fcd759fa126612018a5916cf808df7bb8bc Author: Jan Kratochvil Date: Wed Jul 15 17:37:27 2015 +0200 Prepare linux_find_memory_regions_full & co. for move Prepare code for move into gdb/common/. gdb/ChangeLog 2015-07-15 Aleksandar Ristovski Prepare linux_find_memory_regions_full & co. for move. * linux-tdep.c (linux_find_memory_region_ftype): Comment. (linux_find_memory_regions_full): Change signature and prepare for moving to linux-maps. (linux_find_memory_regions_data): Rename field 'obfd' to 'data'. (linux_find_memory_regions_thunk): New. (linux_find_memory_regions_thunk): Use 'data' field instead of 'obfd'. (linux_find_memory_regions_gdb): New. (linux_find_memory_regions): Rename argument 'obfd' to 'func_data'. (linux_make_mappings_corefile_notes): Use linux_find_memory_regions_gdb. * target.c (read_alloc_pread_ftype): New typedef. (target_fileio_read_alloc_1_pread): New function. (read_alloc): Refactor from target_fileio_read_alloc_1. (read_stralloc_func_ftype): New typedef. (target_fileio_read_alloc_1): New implementation. Use read_alloc. (read_stralloc): Refactored from target_fileio_read_stralloc. (target_fileio_read_stralloc): New implementation, use read_stralloc. commit 6e5b4429db0d66e2d0b27e1bcfe4709f3dae73ed Author: Jan Kratochvil Date: Wed Jul 15 17:37:27 2015 +0200 Move gdb_regex* to common/ Later patches need regex support also in gdbserver. gdb/ChangeLog 2015-07-15 Jan Kratochvil * Makefile.in (HFILES_NO_SRCDIR): Change gdb_regex.h to common/gdb_regex.h. (COMMON_OBS): Add gdb_regex.o. (gdb_regex.o): New. * common/common.m4 (GDB_AC_COMMON): Add gdb_use_included_regex, --without-included-regex and USE_INCLUDED_REGEX. * common/gdb_regex.c: New file from utils.c functions. * common/gdb_regex.h: Move it here from gdb_regex.h, update include file wrapping define name. * configure: Rebuilt. * configure.ac (gdb_use_included_regex, --without-included-regex) (USE_INCLUDED_REGEX): Move them to common/common.m4. * gdb_regex.h: Move it to common/gdb_regex.h. * utils.c: Remove include gdb_regex.h. (do_regfree_cleanup, make_regfree_cleanup, get_regcomp_error) (compile_rx_or_error): Move them to common/gdb_regex.c. gdb/gdbserver/ChangeLog 2015-07-15 Jan Kratochvil * Makefile.in (OBS): Add gdb_regex.o. (gdb_regex.o): New. * config.in: Rebuilt. * configure: Rebuilt. commit ddc98fbf2fd9e244a215a4d09e559180dc573a14 Author: Jan Kratochvil Date: Wed Jul 15 17:37:27 2015 +0200 Create empty nat/linux-maps.[ch] and common/target-utils.[ch] Prepare new files for later move. gdb/ChangeLog 2015-07-15 Aleksandar Ristovski Create empty nat/linux-maps.[ch] and common/target-utils.[ch]. * Makefile.in (HFILES_NO_SRCDIR); Add nat/linux-maps.h, common/target-utils.h. (COMMON_OBS): Add target-utils.o. (linux-maps.o, target-utils.o): New. * target/target-utils.c: New file. * target/target-utils.h: New file. * config/i386/linux.mh (NATDEPFILES): Add linux-maps.o. * config/i386/linux64.mh (NATDEPFILES): Ditto. * nat/linux-maps.c: New file. * nat/linux-maps.h: New file. gdb/gdbserver/ChangeLog 2015-07-15 Aleksandar Ristovski Create empty nat/linux-maps.[ch] and common/target-utils.[ch]. * Makefile.in (OBS): Add target-utils.o. (linux-maps.o, target-utils.o): New. * configure.srv (srv_linux_obj): Add linux-maps.o. commit 03346981fe6c11ab63b54a8d1919d6357e659684 Author: Sandra Loosemore Date: Wed Jul 15 08:30:14 2015 -0700 Unbreak nios2-*-linux* GDB testing. 2015-07-15 Sandra Loosemore gdb/testsuite/ * gdb.base/sigaltstack.exp (finish_test): Add kfail for nios2-*-linux*. * gdb.base/sigbpt.exp (stepi_out): Likewise. * gdb.base/siginfo.exp: Likewise. * gdb.base/sigstep.exp (advance, advancei): Likewise. commit 189ebcf9150ee935fd5f9718a3abf02084dde02d Author: H.J. Lu Date: Wed Jul 15 07:31:55 2015 -0700 Make x86 Linux assembler default to gABI compliant The default compression is gABI compliant now. This patch makes the x86 Linux assembler default to gABI compliant. * config/tc-i386.c (flag_compress_debug): Replace COMPRESS_DEBUG_GNU_ZLIB with COMPRESS_DEBUG_GABI_ZLIB. commit e57bb7a0313b66f8be8b380f5328bbb45fbc2fbf Author: Pierre Langlois Date: Wed Jul 15 15:03:01 2015 +0100 Move ChangeLog entry to gdbserver gdb/gdbserver/ChangeLog: * linux-aarch64-low.c (aarch64_supports_range_stepping): New function, return 1. (the_low_target): Install it. commit d1d0aea1ea3572451ed04dc22a31ec1c50c606de Author: Pierre Langlois Date: Wed Jul 15 14:58:32 2015 +0100 [GDBserver][AArch64] Enable support for range stepping gdb/gdbserver/Changelog: * linux-aarch64-low.c (aarch64_supports_range_stepping): New function, return 1. (the_low_target): Install it. commit 42422cc7d6c2e816ef1c4d268f41b58c031344f2 Author: Pierre Langlois Date: Wed Jul 15 14:33:32 2015 +0100 [testsuite] Skip gdb.trace/range-stepping.exp test case if not supported Tracepoints and range stepping are independent features. This patch skips the gdb.trace/range-stepping.exp test case if the target does not support range stepping. gdb/testsuite/ChangeLog: * gdb.base/range-stepping.exp (gdb_range_stepping_enabled): Move it to ... * lib/range-stepping-support.exp (gdb_range_stepping_enabled): ... here. * gdb.trace/range-stepping.exp: Check that the target supports range stepping. commit e7b01ce03de85cfbbddb6ed755486db528abf1d1 Author: Markus Metzger Date: Wed Jul 8 09:38:16 2015 +0200 ari, btrace: avoid unsigned long long Fix the ARI warning about the use of unsigned long long. We can't use ULONGEST as this is defined unsigned long on 64-bit systems. This will result in a compile error when storing a pointer to an unsigned long long structure field (declared in perf_event.h as __u64) in a ULONGEST * variable. Use size_t to hold the buffer size inside GDB and __u64 when interfacing the Linux kernel. gdb/ * nat/linux-btrace.c (perf_event_read): Change the type of DATA_HEAD. (perf_event_read_all): Change the type of SIZE and DATA_HEAD. (perf_event_read_bts): Change the type of SIZE and READ. (linux_enable_bts): Change the type of SIZE, PAGES, DATA_SIZE, and DATA_OFFSET. Move DATA_SIZE declaration. Restrict the buffer size to UINT_MAX. Check for overflows when using DATA_HEAD from the perf mmap page. (linux_enable_pt): Change the type of PAGES and SIZE. Restrict the buffer size to UINT_MAX. (linux_read_bts): Change the type of BUFFER_SIZE, SIZE, DATA_HEAD, and DATA_TAIL. * nat/linux-btrace.h (struct perf_event_buffer) : Change type. * common/btrace-common.h (struct btrace_dat_pt) : Change type. * common/btrace-common.c (btrace_data_append): Change the type of SIZE. * btrace.c (parse_xml_raw): Change the type of SIZE. Change oddness check. commit 210187848791f50ee7dd8eaae8fc4bd371b3550b Author: GDB Administrator Date: Wed Jul 15 00:00:08 2015 +0000 Automatic date update in version.in commit f168693bc9d109c387e442119354bd57ecec8267 Author: Simon Marchi Date: Mon Jul 6 16:05:06 2015 -0400 Remove CHECK_TYPEDEF, use check_typedef instead I think that the CHECK_TYPEDEF macro is not necessary, and even a bit annoying. It makes unclear the fact that the "type" variables gets overwritten. It has actually bitten me a few times. I think the following, explicit form, is better. type = check_typedef (type); This patches changes all instances of CHECK_TYPEDEF for an equivalent call to check_typedef. The bulk of the change was done with this sed: sed -i 's/CHECK_TYPEDEF (\([^)]*\));/\1 = check_typedef (\1);/' .c The ChangeLog was generated using David Malcom's generate_changelog.py. I manually fixed those places where it gets the wrong function name, hopefully all of them. The patch was built-tested, and I ran a few smoke tests. gdb/ChangeLog: * gdbtypes.h (CHECK_TYPEDEF): Remove. * aarch64-tdep.c (aarch64_return_in_memory): Replace CHECK_TYPEDEF with check_typedef. * ada-lang.c (decode_constrained_packed_array_type): Likewise. (ada_array_length): Likewise. (find_parallel_type_by_descriptive_type): Likewise. (ada_check_typedef): Likewise. * arm-tdep.c (arm_return_in_memory): Likewise. * ax-gdb.c (gen_trace_static_fields): Likewise. (gen_struct_ref_recursive): Likewise. * c-exp.y (exp : SIZEOF '(' type ')' %prec UNARY): Likewise. (variable: block COLONCOLON name): Likewise. (qualified_name: TYPENAME COLONCOLON name): Likewise. * c-lang.c (classify_type): Likewise. * c-typeprint.c (c_print_type): Likewise. (c_print_typedef): Likewise. (c_type_print_base): Likewise. * c-valprint.c (c_val_print): Likewise. * compile/compile-c-types.c (convert_type): Likewise. * compile/compile-object-load.c (get_out_value_type): Likewise. * completer.c (add_struct_fields): Likewise. (expression_completer): Likewise. * cp-namespace.c (cp_find_type_baseclass_by_name): Likewise. (cp_lookup_nested_symbol_1): Likewise. (cp_lookup_nested_symbol): Likewise. * cp-valprint.c (cp_print_value_fields): Likewise. (cp_print_static_field): Likewise. * d-valprint.c (d_val_print): Likewise. * eval.c (evaluate_subexp_standard): Likewise. (evaluate_subexp_for_sizeof): Likewise. * f-exp.y (exp : SIZEOF '(' type ')' %prec UNARY): Likewise. * f-typeprint.c (f_type_print_base): Likewise. * f-valprint.c (f_val_print): Likewise. * gdbtypes.c (get_discrete_bounds): Likewise. (create_array_type_with_stride): Likewise. (type_name_no_tag_or_error): Likewise. (lookup_struct_elt_type): Likewise. (get_unsigned_type_max): Likewise. (internal_type_vptr_fieldno): Likewise. (set_type_vptr_fieldno): Likewise. (internal_type_vptr_basetype): Likewise. (set_type_vptr_basetype): Likewise. (get_vptr_fieldno): Likewise. (is_integral_type): Likewise. (is_scalar_type): Likewise. (is_scalar_type_recursive): Likewise. (distance_to_ancestor): Likewise. (is_unique_ancestor_worker): Likewise. (check_types_equal): Likewise. * gnu-v2-abi.c (gnuv2_value_rtti_type): Likewise. * gnu-v3-abi.c (gnuv3_dynamic_class): Likewise. (gnuv3_get_vtable): Likewise. (gnuv3_pass_by_reference): Likewise. * go-exp.y (exp : SIZEOF_KEYWORD '(' type ')' %prec UNARY): Likewise. * go-lang.c (gccgo_string_p): Likewise. (go_classify_struct_type): Likewise. * go-typeprint.c (go_print_type): Likewise. * go-valprint.c (go_val_print): Likewise. * guile/scm-math.c (vlscm_binop): Likewise. * guile/scm-value.c (gdbscm_value_dynamic_type): Likewise. (gdbscm_value_to_bytevector): Likewise. (gdbscm_value_to_bool): Likewise. (gdbscm_value_to_integer): Likewise. (gdbscm_value_to_real): Likewise. * infcall.c (call_function_by_hand_dummy): Likewise. * infcmd.c (get_return_value): Likewise. * jv-lang.c (is_object_type): Likewise. * jv-typeprint.c (java_type_print_base): Likewise. * jv-valprint.c (java_print_value_fields): Likewise. (java_val_print): Likewise. * linespec.c (find_methods): Likewise. (collect_one_symbol): Likewise. * m2-typeprint.c (m2_print_type): Likewise. (m2_print_typedef): Likewise. (m2_get_discrete_bounds): Likewise. * m2-valprint.c (m2_print_long_set): Likewise. (m2_print_unbounded_array): Likewise. (m2_print_array_contents): Likewise. (m2_val_print): Likewise. * opencl-lang.c (opencl_print_type): Likewise. * p-exp.y (exp : SIZEOF '(' type ')' %prec UNARY): Likewise. * p-typeprint.c (pascal_print_type): Likewise. (pascal_print_typedef): Likewise. (pascal_type_print_base): Likewise. * p-valprint.c (pascal_val_print): Likewise. (pascal_object_print_value_fields): Likewise. (pascal_object_print_static_field): Likewise. * python/py-type.c (typy_fields_items): Likewise. (typy_get_composite): Likewise. * python/py-value.c (valpy_get_dynamic_type): Likewise. (valpy_binop): Likewise. (valpy_long): Likewise. (valpy_float): Likewise. * stack.c (return_command): Likewise. * symtab.c (check_field): Likewise. (lookup_symbol_aux): Likewise. * tic6x-tdep.c (tic6x_return_value): Likewise. * typeprint.c (print_type_scalar): Likewise. * valarith.c (value_vector_widen): Likewise. * valops.c (value_cast): Likewise. (value_assign): Likewise. (do_search_struct_field): Likewise. (search_struct_method): Likewise. (find_method_list): Likewise. * valprint.c (val_print_scalar_type_p): Likewise. (valprint_check_validity): Likewise. (generic_val_print): Likewise. * value.c (unpack_double): Likewise. (value_primitive_field): Likewise. (unpack_bits_as_long): Likewise. commit 452802827f0870df0c8ece81a7e098d94cee4536 Author: Iain Buclaw Date: Tue Jul 14 20:31:21 2015 +0200 Add support reading D modules from DWARF Extends existing support for namespaces/modules in C++/Fortran/Java to include language_d too. However unlike Fortran/C++, the separator for qualified names is a single dot. 2015-07-14 Iain Buclaw * dwarf2read.c (find_slot_in_mapped_hash): Extend language support to also test for language_d. (dwarf2_compute_name): Likewise. (read_func_scope): Likewise. (read_structure_type): Likewise. (determine_prefix): Likewise. (read_import_statement): Use dot as the separator for language_d. (typename_concat): Likewise, but don't prefix the D main function. commit cfa68bae4271a51a4402f8ca7ccdc014be95d79d Author: Jan Kratochvil Date: Tue Jul 14 19:50:20 2015 +0200 i386-biarch-core.exp: Fix comment typo gdb/testsuite/ChangeLog 2015-07-14 Jan Kratochvil * gdb.arch/i386-biarch-core.exp: Fix comment typo. commit 19a7fe52ae3d0971e67a134bcb1648899e21ae1c Author: H.J. Lu Date: Tue Jul 14 10:25:52 2015 -0700 Make default compression gABI compliant All programs in binutils+gdb git repo now support gABI compression with the SHF_COMPRESSED bit. This patch makes the zlib-gabi option as compression default for gas, gold, ld and objcopy, instead of the zlib-gnu option whose outputs are incompatible with gABI. binutils/ * objcopy.c (copy_file): Set BFD_COMPRESS_GABI if not zlib-gnu. * doc/binutils.texi: Change --compress-debug-sections and --compress-debug-sections=zlib to zlib-gabi. binutils/testsuite/ * binutils-all/compress.exp: Update. gas/ * as.c (parse_args): Make --compress-debug-sections and --compress-debug-sections=zlib the same as --compress-debug-sections=zlib-gabi. * doc/as.texinfo: Change --compress-debug-sections and --compress-debug-sections=zlib to zlib-gabi. gold/ * compressed_output.cc (Output_compressed_section::set_final_data_size): Make --compress-debug-sections=zlib the same as --compress-debug-sections=zlib-gabi. * testsuite/Makefile.am (flagstest_compress_debug_sections.check): Expect ".debug_.*" with the SHF_COMPRESSED bit, instead of ".zdebug_". * testsuite/Makefile.in: Regenerated. ld/ * emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Make --compress-debug-sections=zlib the same as --compress-debug-sections=zlib-gabi. * ld.texinfo: Change --compress-debug-sections=zlib to zlib-gabi. ld/testsuite/ * ld-elf/zlibbegin.rS: Updated to .debug_.* with the SHF_COMPRESSED bit. * ld-elf/zlibnormal.rS: Likewise. commit 22121df01ff9247b3cb272f52632848f9631f80f Author: H.J. Lu Date: Tue Jul 14 09:52:36 2015 -0700 Sync Makefile.tpl with GCC * Makefile.in: Regenerated. Sync with GCC 2015-05-21 Jason Merrill * Makefile.tpl: Update comments. 2015-04-22 Bernhard Reutner-Fischer * Makefile.tpl: Remove surplus whitespace throughout. 2015-03-25 Martin Liska Yury Gribov * Makefile.tpl: Fix ln source location for vimrc file. commit dc2edb520a534fd0c2af169d46b4d892208e8f42 Author: H.J. Lu Date: Tue Jul 14 09:17:41 2015 -0700 Sync longlong.h with GCC Sync with GCC 2014-10-28 Richard Henderson * longlong.h [__alpha] (umul_ppmm): Disable for c++. commit d0270d8cb92123b55d2bf735e59ee9450a9893f9 Author: H.J. Lu Date: Tue Jul 14 09:16:33 2015 -0700 Sync hashtab.h, splay-tree.h with GCC Sync with GCC 2014-12-09 Trevor Saunders * hashtab.h, splay-tree.h: Remove GTY markers. commit 1d83d382dea9b98d4aa4aa0083713447b83e0ba5 Author: H.J. Lu Date: Tue Jul 14 09:14:50 2015 -0700 Remove trailing spaces in demangle.h commit 4d6404f01d38b1f34bd9bba4d78276e8154f3312 Author: H.J. Lu Date: Tue Jul 14 09:10:59 2015 -0700 Sync ansidecl.h with GCC Sync with GCC 2015-03-02 Markus Trippelsdorf PR target/65261 * ansidecl.h (ATTRIBUTE_NO_SANITIZE_UNDEFINED): New macro. commit 49d00f48e8e3c1331d367785f19c69867a47b4cd Author: H.J. Lu Date: Tue Jul 14 08:43:24 2015 -0700 Sync config files with GCC Sync with GCC 2015-05-13 Eric Botcazou * sjlj.m4: New file. 2015-05-04 Trevor Saunders * bitfields.m4: Change int to long long, and use bitfields of width 1 instead of 0. 2015-05-01 Trevor Saunders * bitfields.m4: New file. 2015-04-14 H.J. Lu * bootstrap-mpx.mk: New file. 2015-03-25 Uros Bizjak PR bootstrap/65537 * bootstrap-lto-noplugin.mk: New build configuration. 2014-11-13 Kirill Yukhin * target-posix: New file. 2014-10-27 Tom Tromey * gcc-plugin.m4: New file. commit 99fe86f7999afd2743b08c550b10f083ae4bd9bd Author: Peter Bergner Date: Tue Jul 14 10:46:16 2015 -0500 Fix build issue with nat/linux-namespaces.c. * nat/linux-namespaces.c (setns): Rename from this ... (do_setns): ... to this. Support calling setns if it exists. (mnsh_handle_setns): Call do_setns. commit 8a643cc36cf121de3a9131f95547eba927413710 Author: H.J. Lu Date: Tue Jul 14 08:39:12 2015 -0700 Sync config/warnings.m4 with GCC config/ Sync with GCC 2015-05-27 Jason Merrill PR bootstrap/66304 * warnings.m4 (ACX_PROG_CXX_WARNING_OPTS) (ACX_PROG_CXX_WARNINGS_ARE_ERRORS) (ACX_PROG_CXX_WARNING_ALMOST_PEDANTIC): New. (ACX_PROG_CC_WARNING_OPTS, ACX_PROG_CC_WARNING_ALMOST_PEDANTIC) (ACX_PROG_CC_WARNINGS_ARE_ERRORS): Push into C language context. libdecnumber/ * configure: Regenerated. libiberty/ * configure: Regenerated. opcodes/ * configure: Regenerated. commit 969b1713b7c5bc0a5fb90d85f82c7f0fd27de34f Author: H.J. Lu Date: Tue Jul 14 08:17:27 2015 -0700 Sync toplevel configure with GCC Sync with GCC 2015-05-16 James Bowman * configure.ac: FT32 target added. * configure: Regenerate. commit ce6c656dcb8257b7c05975039700e3c9f4c3af3b Author: H.J. Lu Date: Tue Jul 14 07:49:50 2015 -0700 Sync toplevel configure.ac with GCC Sync with GCC 2015-06-02 Jason Merrill PR bootstrap/66319 * configure.ac: Use -std=gnu++98. 2015-05-28 Mike Frysinger * configure.ac (--vtable-verify): Use AS_HELP_STRING for help. * configure: Regenerate. 2015-05-11 Paulo Matos * configure.ac: Fix typo. * configure: Regenerate. 2015-05-03 Matthias Klose * configure.ac: Match $host configured with triplets. * configure: Regenerate. 2015-04-17 Jakub Jelinek PR bootstrap/62077 * configure.ac (--enable-stage1-checking): Default to release,misc,gimple,rtlflag,tree,types if --disable-checking or --enable-checking is not specified and DEV-PHASE is not experimental. * configure: Regenerated. 2015-03-27 Uros Bizjak Install back PR target/47230 fix (Revert the revert). config/ Sync with GCC * mh-alpha-linux: Restored. commit 454de2ee151958e0c45d4ed0f3e496156e29d3a2 Author: Nick Clifton Date: Tue Jul 14 12:06:33 2015 +0100 Remove extraneous whitespace from ARM sim sources. * armcopro.c: Remove extraneous whitespace. * armdefs.h: Likewise. * armfpe.h: Likewise. * arminit.c: Likewise. * armopts.h: Likewise. * armos.c: Likewise. * armos.h: Likewise. * armrdi.c: Likewise. * armsupp.c: Likewise. * armvirt.c: Likewise. * bag.c: Likewise. * bag.h: Likewise. * communicate.c: Likewise. * communicate.h: Likewise. * dbg_conf.h: Likewise. * dbg_cp.h: Likewise. * dbg_hif.h: Likewise. * dbg_rdi.h: Likewise. * gdbhost.c: Likewise. * gdbhost.h: Likewise. * iwmmxt.c: Likewise. * iwmmxt.h: Likewise. * kid.c: Likewise. * main.c: Likewise. * maverick.c: Likewise. * parent.c: Likewise. * thumbemu.c: Likewise. * wrapper.c: Likewise. commit 1f0d470a6699abe442982df22168c002d16bb714 Author: Nick Clifton Date: Tue Jul 14 11:31:42 2015 +0100 Fix texinfo problem by adding the required period after an @xref. * ld.texinfo (Options): Add missing period after @xref. commit 8ffdba260ca757521c815782a0fe01fedc84849a Author: Pedro Alves Date: Wed Mar 11 15:20:31 2015 +0000 Add test that exercises the inferior being killed while stopped under GDB This exercises the case of the inferior disappearing while GDB is debugging it, such as something doing "kill -9 PID" while the program is stopped under GDB or GDBserver. This triggered a set of internal errors, fixed by previous patches. gdb/testsuite/ChangeLog: 2015-07-14 Pedro Alves * gdb.base/killed-outside.exp: New file. * gdb.base/killed-outside.c: New file. commit 586b02a96f744497c8921a558f1c386287849ab0 Author: Pedro Alves Date: Tue Jul 14 10:10:50 2015 +0100 gdbserver/Linux: internal error when killing a process that is already gone If the process disappears (e.g., killed with "kill -9" from the shell) while it was stopped under GDBserver's control, and the GDBserver tries to kill it, GDBserver asserts: (gdb) shell kill -9 23084 (gdb) kill ... Killing process(es): 23084 /home/pedro/gdb/mygit/src/gdb/gdbserver/linux-low.c:972: A problem internal to GDBserver has been detected. kill_wait_lwp: Assertion `res > 0' failed. ... gdb/gdbserver/ChangeLog: 2015-07-14 Pedro Alves * linux-low.c (kill_wait_lwp): Don't assert if waitpid fails. Instead, ignore ECHILD, and throw an error for other errnos. commit 05e83eb1b6a69c34b2fc5ab5e2dc14119145e49d Author: GDB Administrator Date: Tue Jul 14 00:00:08 2015 +0000 Automatic date update in version.in commit d5131498a57d1789ff0fea2cfeb1af90802c8dad Author: Yao Qi Date: Mon Jul 13 17:14:13 2015 +0100 Fix attach-pie-noexec.exp fail on native-extended-gdbserver When I examine the buildbot fails, I see this fail on native-extended-gdbserver, Attaching to process 13529^M "target:/scratch/yao/gdb/build-git/x86_64/gdb/testsuite/gdb.base/attach-pie-noexec (deleted)": could not open as an executable file: No such file or directory^M (gdb) FAIL: gdb.base/attach-pie-noexec.exp: attach if I run tests with board file unix, it doesn't exist, Attaching to process 13869^M /scratch/yao/gdb/build-git/x86_64/gdb/testsuite/gdb.base/attach-pie-noexec (deleted): No such file or directory.^M (gdb) PASS: gdb.base/attach-pie-noexec.exp: attach the test expects to see the period at the end of the error message, gdb_test "attach $testpid" "Attaching to process $testpid\r\n.*: No such file or directory\\." "attach" however the period is missing when running with native-extended-gdbserver. in exec.c:exec_file_attach, GDB has two places may throw errors [1] and [2], if (load_via_target) { ... } else { ... if (scratch_chan < 0) perror_with_name (filename); <--- [1] } ... if (!exec_bfd) { error (_("\"%s\": could not open as an executable file: %s"), <-- [2] scratch_pathname, bfd_errmsg (bfd_get_error ())); } perror_with_name [1] append a period at the end of error message, but error [2] doesn't. This fix is to add a period at the end of the error message. Note that this fail is shown up on 7.9 release as well. gdb: 2015-07-13 Yao Qi * exec.c (exec_file_attach): Add period at the end of error message. commit 97605e61a14518b1a0ac2a576f4f3c843743e4d5 Author: Andrew Burgess Date: Fri Jul 10 14:06:28 2015 +0100 gdb/tui: Add command completion to winheight command. Share the window name completion code from the focus command with the winheight command, providing window name completion for the winheight command. gdb/ChangeLog: * tui/tui-win.c (window_name_completer): New function. (focus_completer): Call window_name_completer. All old content moved into window_name_completer. (winheight_completer): New function. (_initialize_tui_win): Rename variable. Add completer to winheight command. Update doc string on winheight. commit c576455ba70871d7f93218f995b02bbd0a098d85 Author: GDB Administrator Date: Mon Jul 13 00:00:08 2015 +0000 Automatic date update in version.in commit fb8b9dbc147d37129e5a366a395302f532f5d190 Author: H.J. Lu Date: Sun Jul 12 10:56:41 2015 -0700 Extend --compress-debug-sections in gold This patch extends --compress-debug-sections= with [zlib-gnu|zlib-gabi] in gold. PR gold/18322 * compressed_output.cc (zlib_compress): Add argument for compression header size. Set header size to compression header size if it isn't 0. Don't write out the zlib header here. (Output_compressed_section::set_final_data_size): Support zlib-gnu and zlib-gabi compressions. Pass compression header size to zlib_compress and write out compression header. Set the SHF_COMPRESSED bit for zlib-gabi compression. Otherwise clear the SHF_COMPRESSED bit * options.h (compress_debug_sections): Add zlib-gnu and zlib-gabi. * output.h (Output_section::set_flags): New. * testsuite/Makefile.am (check_PROGRAMS): Add flagstest_compress_debug_sections_none, flagstest_compress_debug_sections_gnu and flagstest_compress_debug_sections_gabi. (check_DATA): Add flagstest_compress_debug_sections_none.stdout. flagstest_compress_debug_sections.stdout, flagstest_compress_debug_sections.cmp, flagstest_compress_debug_sections.check, flagstest_compress_debug_sections_gnu.stdout, flagstest_compress_debug_sections_gnu.cmp, flagstest_compress_debug_sections_gnu.check, flagstest_compress_debug_sections_gabi.stdout, flagstest_compress_debug_sections_gabi.cmp and flagstest_compress_debug_sections_gabi.check. (flagstest_compress_debug_sections_none): New. (flagstest_compress_debug_sections_none.stdout): Likewise. (flagstest_compress_debug_sections.stdout): Likewise. (flagstest_compress_debug_sections.check): Likewise. (flagstest_compress_debug_sections.cmp): Likewise. (flagstest_compress_debug_sections_gnu): Likewise. (flagstest_compress_debug_sections_gnu.stdout): Likewise. (flagstest_compress_debug_sections_gnu.check): Likewise. (flagstest_compress_debug_sections_gnu.cmp): Likewise. (flagstest_compress_debug_sections_gabi): Likewise. (flagstest_compress_debug_sections_gabi.stdout): Likewise. (flagstest_compress_debug_sections_gnu.check): Likewise. (flagstest_compress_debug_sections_gnu.cmp): Likewise. * testsuite/Makefile.in: Regenerated. commit 480586639d6b814b2e87f6f106b8635cf7442b20 Author: H.J. Lu Date: Sun Jul 12 10:50:25 2015 -0700 Add SHF_COMPRESSED section decompression to gold This patch adds SHF_COMPRESSED section decompression to gold. PR gold/18321 * compressed_output.h (decompress_input_section): Add arguments for ELF class, big endian and sh_flags. * compressed_output.cc (decompress_input_section): Likewise. Support the SHF_COMPRESSED section. * dynobj.h (Dynobj): Add elfsize and is_big_endian member functions. * plugin.h (Pluginobj): Likewise. * layout.cc (Layout::get_output_section_flags): Also clear the SHF_COMPRESSED bit. * object.h (Compressed_section_info): Add flag to store sh_flags. (Object): Add pure virtual elfsize and is_big_endian member functions. * object.cc (need_decompressed_section): Don't skip the ".zdebug" prefix here. (build_compressed_section_map): Check SHF_COMPRESSED for uncompressed size. Store sh_flags in Compressed_section_info. Pass size, big_endian and sh_flags to decompress_input_section. Skip the ".debug"/".zdebug" prefix when passing section name to need_decompressed_section. (Sized_relobj_file::do_find_special_section): Don't check ".zdebug_*" sections. (Object::decompressed_section_contents): Pass ELF class, big endian and sh_flags to decompress_input_section. * reloc.cc (Sized_relobj_file::write_sections): Likewise. * testsuite/Makefile.am (check_DATA): Add debug_msg_cdebug_gabi.err and gdb_index_test_2_gabi.stdout. (MOSTLYCLEANFILES): Add debug_msg_cdebug_gabi.err and gdb_index_test_2_gabi.stdout. (debug_msg_cdebug_gabi.o): New. (odr_violation1_cdebug_gabi.o): Likewise. (odr_violation2_cdebug_gabi.o): Likewise. (debug_msg_cdebug_gabi.err): Likewise. (check_SCRIPTS): Add gdb_index_test_2_gabi.sh. (gdb_index_test_cdebug_gabi.o): Likewise. (gdb_index_test_2_gabi): Likewise. (gdb_index_test_2_gabi.stdout): Likewise. * testsuite/gdb_index_test_2_gabi.sh: New file. * testsuite/Makefile.in: Regenerated. commit 8d6dbeb44ca93b836e3af8f8d3993997bf347112 Author: Sandra Loosemore Date: Sun Jul 12 07:13:12 2015 -0700 Fix GDB breakage due to addition of new nios2 mach types in BFD. 2015-07-12 Sandra Loosemore gdb/ * nios2-linux-tdep.c (_initialize_nios2_linux_tdep): Register all nios2 mach variants. commit 9394ff46fba5a989d94782db817cc248dac736e9 Author: GDB Administrator Date: Sun Jul 12 00:00:08 2015 +0000 Automatic date update in version.in commit e571fc2b054422f2e236f614a5276c416ffb9e44 Author: GDB Administrator Date: Sat Jul 11 00:00:08 2015 +0000 Automatic date update in version.in commit 889884731e09b46e4c2ecb051dfde1e2f69d2b47 Author: H.J. Lu Date: Fri Jul 10 14:20:20 2015 -0700 Properly convert objects between different ELF classes The output SHF_COMPRESSED section size is different from input if ELF classes of input and output aren't the same. We must adjust the section sizes as well as the compression headers in SHF_COMPRESSED sections when converting objects between different ELF classes. bfd/ PR binutils/18656 * bfd.c (bfd_convert_section_size): New function. (bfd_convert_section_contents): Likewise. * bfd-in2.h: Regenerated. binutils/ 2015-07-10 H.J. Lu PR binutils/18656 * objcopy.c (setup_section): Call bfd_convert_section_size to get the output section size. (copy_section): Get the section size from the output section and call bfd_get_full_section_contents to convert section contents for output. binutils/testsuite/ PR binutils/18656 * binutils-all/compress.exp (convert_test): New proc. Run conversion tests between x86-64 and x32. commit a0e28e54675fd92e73df71fed5d4f6c718f40102 Author: Kevin Buettner Date: Thu Jul 9 16:05:31 2015 -0700 rx-tdep.c: Use target_read_code instead of target_read_memory. This change causes the prologue scanner and the frame type scanner in rx-tdep.c to use target_read_code() instead of target_read_memory(). This change allows these instruction scanners to operate much more quickly due to the fact that target_read_code() can potentially read from a cache maintained by GDB. gdb/ChangeLog: * rx-tdep.c (rx_get_opcode_byte): Use target_read_code instead of target_read_memory. commit 58c1b36c673c88f13fe0cf3844fef643c35e8318 Author: Pedro Alves Date: Fri Jul 10 19:47:17 2015 +0100 gdbserver/event-loop.c: type mismatch Building with C++ catches a buglet here: ../../../src/gdb/gdbserver/event-loop.c:205:19: warning: invalid conversion from ‘gdb_client_data {aka void*}’ to ‘void**’ [-fpermissive] event_ptr->data = data; ^ This works in practice because gdb_client_data is a pointer already (hence in C we get an implicit conversion), and nothing deferences the pointer. It's passed from client at event registration/creation time, only to pass straight back to client callback. Well, that and nothing in gdbserver uses the event data anyway. gdb/gdbserver/ChangeLog: 2015-07-10 Pedro Alves * event-loop.c (struct callback_event) : Change type to gdb_client_data instance instead of gdb_client_data pointer. (append_callback_event): Adjust. commit 813dabb9f0413c3391035300e9af083513ce83fb Author: H.J. Lu Date: Fri Jul 10 10:23:12 2015 -0700 Warn unsupported compress type and corrupted compressed section * readelf.c (dump_section_as_strings): Warn unsupported compress type and corrupted compressed section. (dump_section_as_bytes): Likewise. (load_specific_debug_section): Likewise. commit 209ce4c2de420e5d55649eecdcb3e8a837fa546f Author: H.J. Lu Date: Fri Jul 10 08:41:10 2015 -0700 Updated to accept .debug_* sections * gas/i386/dw2-compress-1.d: Updated to accept .debug_* sections. commit be0496857f9f11559681ebaafd3462ebc8df351d Author: H.J. Lu Date: Fri Jul 10 08:14:59 2015 -0700 Updated to accept .debug_* sections * binutils-all/dw2-3.W: Updated to accept .debug_* sections. commit 218a5a11a07268228484af88666739852ba36552 Author: Jan Kratochvil Date: Fri Jul 10 15:04:51 2015 +0200 Fix testsuite regression by: Do not skip prologue for asm (.S) files I have somehow missed gdb.asm/asm-source.exp PASS->FAIL even on x86_64. It has no longer valid assumption that "break" breaks after the prologue even in assembler. So I have changed this assumption of the testfile. gdb/testsuite/ChangeLog 2015-07-10 Jan Kratochvil * gdb.asm/asm-source.exp (f at main): Stop at gdbasm_enter. (n at main): New. * gdb.asm/asmsrc1.s: Add comment "mark: main enter". commit 421530db90312b605ce05d7cf883123a084f9af3 Author: Pierre Langlois Date: Thu Jul 2 12:11:47 2015 +0100 [GDBserver][AArch64] Cleanup comments for each linux_target_ops method This patch cleans up the comments for each linux_target_ops methods. We should mention which method each function implements but there is no need to duplicate information already mentionned in the base target_ops or linux_target_ops definitions. gdb/gdbserver/ChangeLog: * linux-aarch64-low.c: Add comments for each linux_target_ops method. Remove comments already covered in target_ops and linux_target_ops definitions. (the_low_target): Add comments for each unimplemented method. commit c101f28fea4fc8621bdf864bc6e2132244dbe6a7 Author: Andrew Burgess Date: Mon Jul 6 18:16:24 2015 +0100 gdb/tui: Use cleanups to free string copies. In parse_scrolling_args it is possible for a string copy to leak if an error occurs. Switching to using a cleanup fixes this leak. In tui_set_win_height the string can't be leaked, but switching to using a cleanup guards against the possibility that a leak could be introduced in the future (by adding an error somewhere in the call stack). gdb/ChangeLog: * tui/tui-win.c (tui_set_win_height): Use a cleanup to free the string copy. (parse_scrolling_args): Likewise. commit 150375dc7ac877d1dc6e8aaf73a23479b720306c Author: Andrew Burgess Date: Mon Jul 6 17:50:28 2015 +0100 gdb/tui: Define tui window names once. Don't duplicate the window names inside the completion function. Instead make use of the existing defines, and the tui_win_name function to obtain the window names. gdb/ChangeLog: * tui/tui-win.c (focus_completer): Don't duplicate the tui window names in this function. commit 6dce28e413375aa878cf43853d32657d1fc26c6f Author: Andrew Burgess Date: Mon Jul 6 11:09:05 2015 +0100 gdb: Convert TUI windows names to lower case. This commit converts the window names for the TUI windows to lower case. The windows names are already lower case in the documentation, and are shown as lower case in some of the command completion results. Given that all the commands that take a window name currently accept upper or lower case, this commit just changes the window names to lower case in the remaining places they are displayed by gdb. gdb/ChangeLog: * tui/tui-data.h (SRC_NAME): Convert to lower case. (CMD_NAME): Likewise. (DATA_NAME): Likewise. (DISASSEM_NAME): Likewise. * tui/tui-win.c (tui_set_focus): Window names are now lower case. (tui_set_win_height): Likewise. (parse_scrolling_args): Likewise. commit a2c59f280dda14a2f68d0175c8879238be1aa200 Author: Alan Modra Date: Wed Jul 8 22:18:34 2015 +0930 Make ALIGN(x) behave as ALIGN(.,x) Inside output sections, ALIGN(.,x) uses a section-relative value for dot. The unary ALIGN always used the absolute value of dot. * ldexp.c (align_dot_val): New function. (fold_unary ): Use it. commit 40f77f827b91ab9665ce27950c30c688f8fde983 Author: Alan Modra Date: Fri Jul 10 20:06:25 2015 +0930 Add missing changelog entries commit e03ed3c64a048522ba4bc12092f8a75bcfab6ea8 Author: Andreas Arnez Date: Fri Jul 10 10:36:02 2015 +0200 gnu_vector.exp: Skip infcall tests on x86/x86_64 Since the new KFAILs/KPASSs for the infcall tests on x86 and x86_64 targets generated unnecessary noise, this change skips them with UNSUPPORTED instead. gdb/testsuite/ChangeLog: * gdb.base/gnu_vector.exp: On x86 and x86_64 targets, skip the infcall tests instead of setting up for KFAIL. commit 485668e5b3987456b44588c1f2fd8a0723909866 Author: Markus Metzger Date: Mon Jul 6 16:36:45 2015 +0200 record: set stop_pc in "record goto" command When navigating in the recorded execution trace via "record goto", we do not set stop_pc. This may trigger an internal error in infrun.c when stepping from that location. Set it. (gdb) rec full (gdb) c Continuing. Breakpoint 1, foo (void) at foo.c:42 42 x = y (gdb) rn foo (void) at foo.c:41 41 y = x (gdb) rec go end Go forward to insn number 98724 at foo.c:42 42 x = y (gdb) n infrun.c:2382: internal-error: resume: Assertion `sig != GDB_SIGNAL_0' failed. A problem internal to GDB has been detected, further debugging may prove unreliable. Quit this debugging session? (y or n) This happens because there's a breakpoint at PC when the "next" is issued, so that breapoint should be immediately stepped over. That should have been detected/done by proceed, here: if (addr == (CORE_ADDR) -1) { if (pc == stop_pc && breakpoint_here_p (aspace, pc) == ordinary_breakpoint_here && execution_direction != EXEC_REVERSE) /* There is a breakpoint at the address we will resume at, step one instruction before inserting breakpoints so that we do not stop right away (and report a second hit at this breakpoint). Note, we don't do this in reverse, because we won't actually be executing the breakpoint insn anyway. We'll be (un-)executing the previous instruction. */ tp->stepping_over_breakpoint = 1; But since stop_pc was stale, the pc == stop_pc check failed, and left the breakpont at PC inserted. gdb/ * record-btrace.c (record_btrace_goto_begin, record_btrace_goto_end) record_btrace_goto): Move call to print_stack_frame ... (record_btrace_set_replay): ... here. Set stop_pc. * record-full.c (record_full_goto_entry): Set stop_pc. testsuite/ * gdb.btrace/record_goto-step.exp: New. commit 73854cdd438dc8858290231ebcb682377d71fec2 Author: Han Shen Date: Thu Jul 9 15:55:55 2015 -0700 Use "gold_info" instead of "gold_warning" for erratum fix. gold/ChangeLog: * aarch64.cc (Target_aarch64::scan_erratum_843419_span): Use 'gold_info'. (Target_aarch64::scan_erratum_835769_span): USe 'gold_info'. commit f250f5c6ddedd25e81a66cddfcfe93ed79018e8d Author: GDB Administrator Date: Fri Jul 10 00:00:08 2015 +0000 Automatic date update in version.in commit 61163dfaaedb90d78e11c1d79ad1e469daf3da47 Author: Han Shen Date: Thu Jul 9 15:38:12 2015 -0700 Drop 'missing mapping symbols' warning for arm and aarch64. The psABI (AAELF) says this about mapping symbols: 4.6.5.1 Section-relative mapping symbols Mapping symbols defined in a section define a sequence of half-open address intervals that cover the address range of the section. Each interval starts at the address defined by the mapping symbol, and continues up to, but not including, the address defined by the next (in address order) mapping symbol or the end of the section. A section must have a mapping symbol defined at the beginning of the section; however, if the section contains only data then the mapping symbol may be omitted. That makes it pretty clear that, in the absence of a mapping symbol, the entire section can be treated as data. gold/ChangeLog: * aarch64.cc (AArch64_relobj::scan_errata): Drop missing symbol warning. * arm.cc (Arm_relobj::scan_section_for_cortex_a8_erratum): Drop missing symbol warning. commit 58d2eda55ca5aea4fa2dcaf3bb2fff4525b236d0 Author: Pierre Langlois Date: Thu Jul 9 16:35:11 2015 +0100 Add NEWS entry for tracepoints support on aarch64-linux gdb/ChangeLog: * NEWS: Mention support for tracepoints on aarch64-linux. commit 7671bf47fc6233087ec8b2ac2698f48a1d3f35f3 Author: Pierre Langlois Date: Thu Jul 9 16:35:11 2015 +0100 [GDBServer][AArch64] Enable support for tracepoints gdb/gdbserver/ChangeLog: * linux-aarch64-low.c (aarch64_supports_tracepoints): New function. Return 1. (the_low_target): Install it. commit 7890fb45667484d99488b047551bc9dd6d1c9889 Author: Pierre Langlois Date: Thu Jul 9 16:35:11 2015 +0100 [testsuite][AArch64] Port gdb.trace This patch adds support for AArch64 to the gdb.trace testsuite. Note that it does not add support for testing fast tracepoint as it isn't supported. Therefore the test cases with inline assembly are not ported in this patch, as we do not know what the conditions for inserting a fast tracepoint on AArch64 would be. gdb/testsuite/ChangeLog: * gdb.trace/backtrace.exp: Set registers for aarch64 target. * gdb.trace/collection.exp: Likewise. * gdb.trace/mi-trace-frame-collected.exp: Likewise. * gdb.trace/mi-trace-unavailable.exp: Likewise. * gdb.trace/report.exp: Likewise. * gdb.trace/trace-break.exp: Likewise. * gdb.trace/unavailable.exp: Likewise. * gdb.trace/while-dyn.exp: Likewise. commit ea873d8ea64281250434e198b57373f308c3bddb Author: Pierre Langlois Date: Thu Jul 9 16:35:11 2015 +0100 [AArch64] Implement gdbarch_gen_return_address gdbarch method This patch implements the 'collect $_ret' command to collect the return address of a function in a tracepoint. It marks the LR register for collection. gdb/ChangeLog: * aarch64-tdep.c: Add ax.h and ax-gdb.h includes. (aarch64_gen_return_address): New function. (aarch64_gdbarch_init): Hook it. commit 02a2a705aa71646a47c955388491523a989516c5 Author: Pierre Langlois Date: Thu Jul 9 16:35:11 2015 +0100 [AArch64] Teach stub unwinder to terminate gracefully The stub unwinder is used on AArch64 if the target's memory is not readable at the current PC. For example, the user could try to call at an invalid address such as 0x0, as covered in the gdb.base/signull.exp test case. Many GDB ports use a similar unwinder to handle this case too. If we purposely kill the inferior before examining the trace then we get the following issue: ~~~ ... (gdb) trace f Tracepoint 3 at 0x7fb7fc28c0 (gdb) tstart (gdb) continue ... (gdb) tstop (gdb) tsave /tmp/trace (gdb) kill ... (gdb) target tfile /tmp/trace ... (gdb) tfind Register 31 is not available. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Found trace frame 0, tracepoint 3 #-1 0x0000007fb7fc28c0 in f () ... ^^^ ~~~ This patch teaches the stub unwinder to report to the core frame code with UNWIND_UNAVAILABLE when either the stack pointer of the return address are unavailable to read from the target. gdb/ChangeLog: * aarch64-tdep.c (aarch64_make_stub_cache): Set available_p and swallow NOT_AVAILABLE_ERROR. (aarch64_stub_this_id): Call frame_id_build_unavailable_stack if available_p is not set. (aarch64_stub_frame_unwind_stop_reason): New function. (aarch64_stub_unwind): Install it. commit 7dfa3edc033c443036d9f2a3e01120f7fb54f498 Author: Pierre Langlois Date: Thu Jul 9 16:35:11 2015 +0100 [AArch64] Teach prologue unwinder to terminate gracefully Without debugging information, we have the following issue when examining a trace buffer: ~~~ ... (gdb) trace f Tracepoint 3 at 0x7fb7fc28c0 (gdb) tstart (gdb) continue ... (gdb) tstop (gdb) tfind start Register 31 is not available. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Found trace frame 0, tracepoint 3 #-1 0x0000007fb7fc28c0 in f () ... ^^^ ~~~ The reason for this is that the target's stack pointer is unavailable when examining the trace buffer. What we are seeing is due to the 'tfind' command creating a sentinel frame and unwinding it. If an exception is thrown, we are left with the sentinel frame being displayed at level #-1. The exception is thrown when the prologue unwinder tries to read the stack pointer to construct an ID for the frame. This patch fixes this by making the prologue unwinder catch NOT_AVAILABLE_ERROR exceptions when either registers or memory is unreadable and report back to the frame core code with UNWIND_UNAVAILABLE. gdb/ChangeLog: * aarch64-tdep.c (aarch64_prologue_cache) : New field. (aarch64_make_prologue_cache_1): New function, factored out from aarch64_make_prologue_cache. Do not allocate cache. Set available_p. (aarch64_make_prologue_cache): Reimplement wrapping aarch64_make_prologue_cache_1, and swallowing NOT_AVAILABLE_ERROR. (aarch64_prologue_frame_unwind_stop_reason): New function. Return UNWIND_UNAVAILABLE if available_p is not set. (aarch64_prologue_unwind): Install it. (aarch64_prologue_this_id): Move prev_pc and prev_sp limit checks into aarch64_prologue_frame_unwind_stop_reason. Call frame_id_build_unavailable_stack if available_p is not set. commit db634143224dc7cb985d996bed15257f5cb86b25 Author: Pierre Langlois Date: Thu Jul 9 16:35:11 2015 +0100 [AArch64] Only access inferior registers when creating a frame cache This patch moves the address of the start of a function (func) and the address from which it was called (prev_pc) into aarch64_prologue_cache. The idea is to keep accesses to the inferior's registers into aarch64_make_prologue_cache and aarch64_make_stub_cache. gdb/ChangeLog: * aarch64-tdep.c (aarch64_prologue_cache) : New fields. (aarch64_scan_prologue): Set prev_pc. (aarch64_make_prologue_cache): Set func. (aarch64_make_stub_cache): Set prev_pc. (aarch64_prologue_this_id): Remove local variables id, pc and func. Read prev_pc and func from cache. (aarch64_stub_this_id): Read prev_pc from cache. commit 8b61f75db53877215c7cb15b901a094bf1fb916e Author: Pierre Langlois Date: Thu Jul 9 16:35:10 2015 +0100 [AArch64] Refactor aarch64_make_stub_cache We would previously have to make sure the frame cache was not already created before calling aarch64_make_stub_cache. This patch makes this function check it so the caller does not need to do so. gdb/ChangeLog: * aarch64-tdep.c (aarch64_make_stub_cache): Update comment. New argument this_cache. Remove unused local variables reg and unwound_fp. Return early if this_cache is already set. Set this_cache. (aarch64_stub_this_id): Update call to aarch64_make_stub_cache. commit 7c8edfae86385f922dca6ef1ab7c7d378d4fd30f Author: Pierre Langlois Date: Thu Jul 9 16:35:10 2015 +0100 [AArch64] Refactor aarch64_make_prologue_cache We would previously have to make sure the frame cache was not already created before calling aarch64_make_prologue_cache. This patch makes this function check it so that the caller does not need to do so. gdb/ChangeLog: * aarch64-tdep.c (aarch64_make_prologue_cache): Update comment. New argument this_cache. Return early if this_cache is already set. Set this_cache. (aarch64_prologue_this_id): Update call to aarch64_make_prologue_cache. (aarch64_prologue_prev_register): Likewise. (aarch64_normal_frame_base): Likewise. commit 3350cc01deccb8289c1c26938628f996df3e390c Author: Catherine Moore Date: Thu Jul 9 08:24:54 2015 -0700 2015-07-09 Catherine Moore include/ * elf/mips/mips.h (Val_GNU_MIPS_ABI_FP_NAN2008): New. gas/ * config/tc-mips.c (check_fpabi): Handle VAL_GNU_MIPS_ABI_FP_NAN2008. binutils/ * readelf.c (print_mips_fp_abi_value): Handle Val_GNU_MIPS_ABI_FP_NAN2008. ld/testsuite/ * ld-mips-elf/attr-gnu-4-08.d: Update expected output. * ld-mips-elf/attr-gnu-4-09.d: New. * ld-mips-elf/attr-gnu-4-19.d: New. * ld-mips-elf/attr-gnu-4-29.d: New. * ld-mips-elf/attr-gnu-4-39.d: New. * ld-mips-elf/attr-gnu-4-49.d: New. * ld-mips-elf/attr-gnu-4-59.d: New. * ld-mips-elf/attr-gnu-4-69.d: New. * ld-mips-elf/attr-gnu-4-79.d: New. * ld-mips-elf/attr-gnu-4-89.d: New. * ld-mips-elf/attr-gnu-4-9.s: New. * ld-mips-elf/mips-elf.exp: Run new tests. commit 938c69a11897acea85275b93b5bb376b589564fa Author: Simon Marchi Date: Thu Jul 9 11:19:25 2015 -0400 Factor out memberptr printing code from c_val_print gdb/ChangeLog: * c-valprint.c (c_val_print): Factor out memberptr printing code from c_val_print to ... (c_val_print_memberptr): ... this new function. commit 49f7fe2880dc08ae701d9cdb84c8217642ef637a Author: Simon Marchi Date: Thu Jul 9 11:18:59 2015 -0400 Factor out int printing code from c_val_print gdb/ChangeLog: * c-valprint.c (c_val_print): Factor out int printing code to ... (c_val_print_int): ... this new function. commit 9e4f353ca9d4f4ae70ce76ae704e5686d47e2f63 Author: Simon Marchi Date: Thu Jul 9 11:18:39 2015 -0400 Factor out struct and union printing code from c_val_print gdb/ChangeLog: * c-valprint.c (c_val_print): Factor out struct and union printing code to ... (c_val_print_struct): ... this new function ... (c_val_print_union): ... and this new function. commit 1c67f0326351d9c521692ceca92f93cb0de9bf2e Author: Simon Marchi Date: Thu Jul 9 11:18:12 2015 -0400 Factor out pointer printing code from c_val_print gdb/ChangeLog: * c-valprint.c (c_val_print): Factor out pointer printing code to ... (c_val_print_ptr): ... this new function. commit 0b6ef777bd0b7918590da1bdbeab1ca97d753ba2 Author: Simon Marchi Date: Thu Jul 9 11:17:20 2015 -0400 Factor out array printing code from c_val_print gdb/ChangeLog: * c-valprint.c (c_valprint): Factor our array printing code from c_val_print to ... (c_val_print_array): ... this new function. commit 1033c33c36c5f3d0b89d58aaaa374c76562583f3 Author: Simon Marchi Date: Thu Jul 9 11:16:22 2015 -0400 Factor out print_unpacked_pointer from c_val_print Turn this code into a function, instead of a goto. gdb/ChangeLog: * c-valprint.c (c_val_print): Factor out pointer printing code to ... (print_unpacked_pointer): ... this new function. commit f6b93c346364866f96529fb03557eb43e0434fa5 Author: Simon Marchi Date: Thu Jul 9 11:15:40 2015 -0400 Remove unneeded variable assignment The assignment to i in the TYPE_CODE_PTR section is not useful. Removing it allows to move i in a narrower scope, which will help things somewhere in the next patches. gdb/ChangeLog: * c-valprint.c (c_val_print): Remove an assignment to i and move its declaration. commit de231f2015ec537df22c60822c9adb1f2205c13e Author: Catherine Moore Date: Thu Jul 9 08:07:47 2015 -0700 2015-07-09 Catherine Moore * elflink.c (bfd_elf_size_dynamic_sections): Call to _bfd_elf_maybe_strip_eh_frame_hdr should be before bed->elf_backend_size_dynamic_sections. commit 0f4576e3582f097cd257339d9395e88d07031002 Author: Yao Qi Date: Thu Jul 9 12:55:45 2015 +0100 Pass ptid to aarch64_linux_get_debug_reg_capacity This patch is to pass ptid to aarch64_linux_get_debug_reg_capacity, and stop using global variable inferior_ptid. gdb: 2015-07-09 Yao Qi * aarch64-linux-nat.c (aarch64_linux_get_debug_reg_capacity): Add argument ptid. Update comments. Caller update. commit c2d65f389a2f213d74bd78df6a75dca6eedb3bae Author: Yao Qi Date: Thu Jul 9 12:47:06 2015 +0100 [gdbserver, aarch64] Set usrregs to NULL in regs_info Hi, I happen to read the comments in regs_info below, struct regs_info { ... /* Info used when accessing registers with PTRACE_PEEKUSER / PTRACE_POKEUSER. This can be NULL if all registers are transferred with regsets .*/ struct usrregs_info *usrregs; that usrregs can be NULL if all registers are transferred with regsets, which is exactly what aarch64-linux does. This patch is to set usrregs to NULL in regs_info and remove aarch64_usrregs_info and aarch64_regmap. gdb/gdbserver: 2015-07-09 Yao Qi * linux-aarch64-low.c (aarch64_regmap): Remove. (aarch64_usrregs_info): Remove. (regs_info): Set field usrregs to NULL. commit 37fdfe4c0083c2a6c8558c76e2bc4fbc77df7d91 Author: Markus Metzger Date: Thu Jul 2 15:16:09 2015 +0200 btrace, pt: support new packets Add support for dumping new Intel(R) Processor Trace packets in the "maint btrace packet-history" command. gdb/ * btrace.c (pt_print_packet): Print stop, vmcs, tma, mtc, cyc, and mnt packets. commit 80a2b330f7e719cd851242d6f976719586fb9295 Author: Markus Metzger Date: Tue Jul 7 13:54:34 2015 +0200 btrace: fix build fail with 32-bit BFD When compiling GDB with 32-bit BFD, the build fails with: In file included from btrace.h:33:0, from btrace.c:23: /usr/include/intel-pt.h:1643:51: note: expected 'int (*)(uint8_t *, size_t, const struct pt_asid *, uint64_t, void *)' but argument is of type 'int (*)(gdb_byte *, size_t, const struct pt_asid *, CORE_ADDR, void *)' extern pt_export int pt_image_set_callback(struct pt_image *image, ^ gdb/ * btrace.c (btrace_pt_readmem_callback): Change type of PC argument. commit de0ef285459ec1b4330b9eaede88a229380aefa0 Author: GDB Administrator Date: Thu Jul 9 00:00:07 2015 +0000 Automatic date update in version.in commit 4ab31498e400c89ba9dcea2444c65aa020ab53fc Author: Simon Marchi Date: Wed Jul 8 15:48:02 2015 -0400 Add missing spaces in previous patch gdb/ChangeLog: * progspace.c (delete_program_space): Add missing spaces. commit 7a41607e01b505db895fcebcad618606cfab1ecf Author: Simon Marchi Date: Wed Jul 8 15:41:01 2015 -0400 Delete program spaces directly when removing inferiors When deleting an inferior, delete the associated program space as well if it becomes unused. This replaces the "pruning" approach, with which you could forget to call prune_program_spaces (as seen, with the -remove-inferior command, see [1]). This allows to remove the prune_program_spaces function. At the same time, I was able to clean up the delete_inferior* family: - delete_inferior is unused - delete_inferior_silent is only used in monitor_close, but is replaced with discard_all_inferiors [2], so it becomes unused - All remaining calls to delete_inferior_1 are with silent=1, so the parameter is removed - delete_inferior_1 is renamed to delete_inferior I renamed pspace_empty_p to program_space_empty_p. I prefer if the "exported" functions have a more explicit and standard name. Tested on Ubuntu 14.10. [1] https://sourceware.org/ml/gdb-patches/2014-09/msg00717.html [2] See https://sourceware.org/ml/gdb-patches/2015-07/msg00228.html and follow-ups for details. gdb/Changelog: * inferior.c (delete_inferior_1): Rename to ... (delete_inferior): ..., remove 'silent' parameter, delete program space when unused and remove call to prune_program_spaces. Remove the old, unused, delete_inferior. (delete_inferior_silent): Remove. (prune_inferiors): Change call from delete_inferior_1 to delete_inferior and remove 'silent' parameter. Remove call to prune_program_spaces. (remove_inferior_command): Idem. * inferior.h (delete_inferior_1): Rename to... (delete_inferior): ..., remove 'silent' parameter and remove the original delete_inferior. (delete_inferior_silent): Remove. * mi/mi-main.c (mi_cmd_remove_inferior): Change call from delete_inferior_1 to delete_inferior and remove 'silent' parameter. * progspace.c (prune_program_spaces): Remove. (pspace_empty_p): Rename to... (program_space_empty_p): ... and make non-static. (delete_program_space): New. * progspace.h (prune_program_spaces): Remove declaration. (program_space_empty_p): New declaration. (delete_program_space): New declaration. * monitor.c (monitor_close): Replace call to delete_thread_silent and delete_inferior_silent with discard_all_inferiors. commit 7e3023528162de7760a0e7e487aa81bbf44cb6a9 Author: Richard Sandiford Date: Wed Jul 8 20:11:03 2015 +0100 Clarify case requirements for gas pseudo-ops gas/ 2015-07-08 Ciro Santilli * doc/as.texinfo: Clarify case requirements for pseudo ops. commit a9bd710f8777b5f4d6cbb9f5f14d6eb16f60c690 Author: Patrick Palka Date: Thu Jul 2 12:27:50 2015 -0400 tui: replace deprecated_register_changed_hook with observer This is a straightforward replacement of the TUI's use of the aforementioned hook with the register_changed observer. Since this was the only user of the hook, this patch also removes the hook. gdb/ChangeLog: * defs.h (deprecated_register_changed_hook): Remove prototype. * interps.c (clear_iterpreter_hooks): Remove reference to deprecated_register_changed_hook. * top.c (deprecated_register_changed_hook): Remove prototype. * valops.c (value_assign): Remove reference to deprecated_register_changed_hook. * tui/tui-hooks.c (tui_register_changed): Add parameter "frame". Add comment documenting the function. (tui_register_changed_observer): Define. (tui_install_hooks): Remove reference to deprecated_register_changed_hook. Set tui_register_changed_observer. (tui_remove_hooks): Remove reference to deprecated_register_changed_hook. Unset tui_register_changed_observer. commit 328e7bfdde7267f5e4b971bc6dca7b82aef77661 Author: Denis Chertykov Date: Wed Jul 8 21:35:19 2015 +0300 Define DIFF_EXPR_OK for avr target to allow PC relative difference relocation. When generating relocation (tc_gen_reloc) 32 bit relocation fixup is changed to new 32 bit PC relative relocation if the fixup has pc-relative flag set. bfd/ChangeLog 2015-07-06 Pitchumani Sivanupandi * elf32-avr.c: Add 32 bit PC relative relocation for AVR target. gas/ChangeLog 2015-07-06 Pitchumani Sivanupandi * config/tc-avr.c (tc_gen_reloc): Change 32 bit relocation to 32 bit PC relative and update offset if the fixup is pc-relative. * config/tc-avr.h (DIFF_EXPR_OK): Define to enable PC relative diff relocs. gas/testsuite/ChangeLog 2015-07-06 Pitchumani Sivanupandi * gas/avr/pc-relative-reloc.d: New test for 32 bit pc relative reloc. * gas/avr/per-function-debugline.s: New test source. include/ChangeLog 2015-07-06 Pitchumani Sivanupandi * elf/avr.h: Add new 32 bit PC relative relocation. ld/testsuite/ChangeLog 2015-07-06 Pitchumani Sivanupandi * ld-avr/gc-section-debugline.d: New test. * ld-avr/per-function-debugline.s: Source for new test. commit 7c7f93f6e5ce31223acbe871fe0c7e4daf0d8bbc Author: Andrew Burgess Date: Wed Jul 8 15:02:32 2015 +0100 gdb/doc: Update 'frame' command documentation. The documentation for the 'frame' command has gotten a little out of date, it still mentions architecturally specific details that are no longer relevant. This commit removes the old details that no longer apply, and tries to expand the existing text a little to make the usage clearer for some cases. gdb/doc/ChangeLog: * gdb.texinfo (Selection): Update documentation for 'frame' command. commit ef3f321b39c3e31fc49f034257a944d515af182a Author: Simon Marchi Date: Wed Jul 8 11:40:35 2015 -0400 Revert "Delete program spaces directly when removing inferiors" Reverted, since it causes a build failure. It turns out that delete_inferior_silent wasn't actually unused. This reverts commit 0560c645c02eba2828a053039dcfdf676cdd1d00. commit 0560c645c02eba2828a053039dcfdf676cdd1d00 Author: Simon Marchi Date: Mon Sep 29 16:33:10 2014 -0400 Delete program spaces directly when removing inferiors When deleting an inferior, delete the associated program space as well if it becomes unused. This replaces the "pruning" approach, with which you could forget to call prune_program_spaces (as seen, with the -remove-inferior command, see [1]). This allows to remove the prune_program_spaces function. At the same time, I was able to clean up the delete_inferior* family. delete_inferior_silent and delete_inferior were unused, which allowed renaming delete_inferior_1 to delete_inferior. Also, since all calls to it were with silent=1, I removed that parameter completely. I renamed pspace_empty_p to program_space_empty_p. I prefer if the "exported" functions have a more explicit and standard name. Tested on Ubuntu 14.10. This obsoletes my previous patch "Add call to prune_program_spaces in mi_cmd_remove_inferior" [1]. [1] https://sourceware.org/ml/gdb-patches/2014-09/msg00717.html gdb/Changelog: * inferior.c (delete_inferior_1): Rename to ... (delete_inferior): ..., remove 'silent' parameter, delete program space when unused and remove call to prune_program_spaces. Remove the old, unused, delete_inferior. (delete_inferior_silent): Remove. (prune_inferiors): Change call from delete_inferior_1 to delete_inferior and remove 'silent' parameter. Remove call to prune_program_spaces. (remove_inferior_command): Idem. * inferior.h (delete_inferior_1): Rename to... (delete_inferior): ..., remove 'silent' parameter and remove the original delete_inferior. (delete_inferior_silent): Remove. * mi/mi-main.c (mi_cmd_remove_inferior): Change call from delete_inferior_1 to delete_inferior and remove 'silent' parameter. * progspace.c (prune_program_spaces): Remove. (pspace_empty_p): Rename to... (program_space_empty_p): ... and make non-static. (delete_program_space): New. * progspace.h (prune_program_spaces): Remove declaration. (program_space_empty_p): New declaration. (delete_program_space): New declaration. commit 084641963dba63283bf2eca227f4f77c2598b172 Author: Jan Kratochvil Date: Wed Jul 8 14:42:19 2015 +0200 compile: Warn for old GCC on cv-qualified self-reference GDB could: compile code struct_object.selffield = &struct_object ./compile/compile-c-types.c:83: internal-error: insert_type: Assertion `add == NULL || add->gcc_type == gcc_type' failed. A problem internal to GDB has been detected, further debugging may prove unreliable. Quit this debugging session? (y or n) FAIL: gdb.compile/compile.exp: compile code struct_object.selffield = &struct_object (GDB internal error) The bug was not in GDB but in the GCC part interfacing with GDB. Alexandre Oliva has fixed it the right way: https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;a=commitdiff;h=072dfdba0ea62abb65514cb3a90cdf3868efe286 git://gcc.gnu.org/git/gcc.git aoliva/libcp1 Attaching this GDB testsuite update + info to user s/he should upgrade GCC. After Alex upstreams the fix I can update the message to contain the specific GCC release. gdb/ChangeLog 2015-07-08 Jan Kratochvil PR compile/18484 * compile/compile-c-types.c (insert_type): Change gdb_assert to error. gdb/testsuite/ChangeLog 2015-07-08 Jan Kratochvil PR compile/18484 * gdb.compile/compile.c (struct struct_type): Add volatile to selffield's type. * gdb.compile/compile.exp (compile code struct_object.selffield = &struct_object): Skip further struct_object tests if this one xfails. commit bcf5c1d96b3b5493041002eb2b6d27288d9d160a Author: Robert O'Callahan Date: Wed Jul 8 10:53:36 2015 +0100 PR18617 - Incorrect expression bytecode generated for narrowing conversions The existing code preserves 'from' bits, which is incorrect. E.g. (gdb) maint agent-eval (char)255L Scope: 0x4008d6 Reg mask: 00 0 const16 255 3 ext 64 5 end 'ext 64' should be 'ext 8'; this bytecode evaluates to 255 instead of the correct result of -1. The fix is simple. I ran the entire test suite on x86-64 and there were no new test failures. gdb/ChangeLog: 2015-07-08 Robert O'Callahan PR exp/18617 * ax-gdb.c (gen_conversion): Extend to 'to' bits, not 'from'. gdb/testsuite/ChangeLog: 2015-07-08 Robert O'Callahan PR exp/18617 * gdb.trace/ax.exp: Add test. commit e8643a4533a92e011dad97ea53c99d314c06513d Author: Markus Metzger Date: Mon Jul 6 15:40:45 2015 +0200 add myself to write-after-approval list gdb/ * MAINTAINERS (Write After Approval): Add Markus T. Metzger. commit 76fb6829cd9cc53c3eefa98ce6c99bacaa52f491 Author: Markus Metzger Date: Mon Jul 6 15:21:37 2015 +0200 ari: fix strerror() use Do not use strerror(), instead use safe_strerror(). gdb/ * nat/linux-btrace.c (kernel_supports_bts, kernel_supports_pt): Use safe_strerror() instead of strerror(). commit 501f83eb1837e89f8a4060b46d68d155156b41eb Author: GDB Administrator Date: Wed Jul 8 00:00:07 2015 +0000 Automatic date update in version.in commit b91deca94e36b9f18156909e4c615fe7af8e3ae8 Author: Han Shen Date: Mon Jul 6 15:17:25 2015 -0700 Make gold aarch64 accept long form of mapping symbols. 2015-07-07 Han Shen gold/ChangeLog: 2015-07-06 Han Shen * aarch64.cc (AArch64_relobj::do_count_local_symbols): Make legal of mapping symbols. commit 4931af25b8ab8f9db77c40142d52e4513762ca97 Author: Yao Qi Date: Tue Jul 7 16:58:20 2015 +0100 New proc is_aarch64_target Some tests expect the the target is aarch64, but checking target triplet is not accurate, because target triplet can be aarch64 but the program is in arm (or aarch32) state. This patch addes a new proc is_aarch64_target which returns true if the target is on aarch64 state. gdb/testsuite: 2015-07-07 Yao Qi * gdb.arch/aarch64-atomic-inst.exp: Check is_aarch64_target instead of istarget "aarch64*-*-*". * gdb.arch/aarch64-fp.exp: Likewise. * gdb.base/float.exp: Likewise. * gdb.reverse/aarch64.exp: Likewise. * lib/gdb.exp (is_aarch64_target): New proc. commit 9fcf688e800e089217ecc8a47b228be180866df8 Author: Yao Qi Date: Tue Jul 7 16:58:19 2015 +0100 New proc is_aarch32_target GDB tests running on arm target should be also run on aarch32 (32-bit mode on aarch64). There should be no difference. It is not precise to check target triplet to decide which tests should be run, because if I compiler all the test binary in 32-bit (arm program), but target triplet is still aarch64, so that these arm specific tests are skipped. This patch is to add a new proc is_aarch32_target which return true if target triplet is arm or the test binary is compiled for arm. gdb/testsuite: 2015-07-07 Yao Qi * lib/gdb.exp (is_aarch32_target): New proc. * gdb.arch/arm-bl-branch-dest.exp: Check is_aarch32_target instead of "istarget "arm*-*-*"". * gdb.arch/arm-disp-step.exp: Likewise. * gdb.arch/thumb-bx-pc.exp: Likewise. * gdb.arch/thumb-prologue.exp: Likewise. * gdb.arch/thumb-singlestep.exp: Likewise. * gdb.base/disp-step-syscall.exp: Likewise. * gdb.base/float.exp: Likewise. commit fbd8d50de232dcc7efa5ac4531adb72af2439977 Author: Yao Qi Date: Tue Jul 7 16:58:19 2015 +0100 Enable multi-arch test in catch-syscall.exp on aarch64 This patch is to enable test_catch_syscall_multi_arch on aarch64. gdb/testsuite: 2015-07-07 Yao Qi * gdb.base/catch-syscall.exp (test_catch_syscall_multi_arch): Set arch1, arch2, syscall1_name, syscall2_name and syscall_number. commit 71be1fdc3655a170f4b14d795e5c9e81fcea06ef Author: Yao Qi Date: Tue Jul 7 16:58:19 2015 +0100 Adjust gdb.multi tests for aarch64 Multi-arch related tests under gdb.multi are to compile programs with the same compiler but different compiler options (-m64 vs -m32). However, different compilers are needed to compile both aarch64 program and arm (aarch32) program. This patch is to adjust these test cases to compile programs in different modes with different compiler. When we use gcc for arm-linux target, its file name can be different, arm-linux-gnueabihf-gcc, arm-linux-gnueabi-gcc, or arm-none-linux-gnueabi-gcc, so I add a variable ARM_CC_FOR_TARGET, so that user can set the name of gcc for arm-linux target on aarch64, like: $ make check RUNTESTFLAGS='ARM_CC_FOR_TARGET=arm-linux-gnueabihf-gcc multi-arch.exp' gdb/testsuite: 2015-07-07 Yao Qi * gdb.multi/multi-arch-exec.exp: Set march1 and march2 to "" if target is aarch64. If target is aarch64, set compiler=${ARM_CC_FOR_TARGET} if it exists. * gdb.multi/multi-arch.exp: Likewise. commit 82c40d4b1deb252f2d17ff74f3fae6ae8cdd0383 Author: Yao Qi Date: Tue Jul 7 16:58:19 2015 +0100 Set architecture to arm in arm-*.xml files This patch is to add the following line to various arm target description xml files, arm in order to fix problems I've seen on aarch64 multi-arch debugging, detach^M Detaching from program: build-gdb/gdb/testsuite/gdb.base/attach, process 17145^M (gdb) PASS: gdb.base/attach.exp: attach1 detach file^M No executable file now.^M Architecture of file not recognized.^M (gdb) FAIL: gdb.base/attach.exp: attach1, purging symbols after detach Without this patch, struct target_desc *tdesc_* are not initialised properly, that is, fields arch and osabi in 'struct target_desc' are not set properly. This doesn't cause any problems on single arch debugging, because arch-utils.c:gdbarch_info_fill will guess correctly. However, in multi-arch debugging, gdbarch_info_fill gets the aarch64 arch, but the target description is for arm (because the current inferior is 32-bit arm). It is a surprise to me we didn't set architecture to "arm" before in *.xml files, and I didn't find out why didn't do so. AFAICS, gdb/features/arm-with-iwmmxt.xml was added firstly (in patch https://sourceware.org/ml/gdb-patches/2007-01/msg00593.html) which had iwmmxt, however, afterwards, architecture isn't set anymore in features/arm-*.xml files (in patches https://sourceware.org/ml/gdb-patches/2009-07/msg00689.html and https://sourceware.org/ml/gdb-patches/2010-08/msg00225.html). gdb: 2015-07-07 Yao Qi * features/arm-with-m-fpa-layout.xml: Set architecture to arm. * features/arm-with-m-fpa-layout.c: Regenerated. * features/arm-with-m-vfp-d16.xml: Likewise. * features/arm-with-m-vfp-d16.c: Regenerated. * features/arm-with-m.xml: Likewise. * features/arm-with-m.c: Regenerated. * features/arm-with-neon.xml: Likewise. * features/arm-with-neon.c: Regenerated. * features/arm-with-vfpv2.xml: Likewise. * features/arm-with-vfpv2.c: Regenerated. * features/arm-with-vfpv3.xml: Likewise. * features/arm-with-vfpv3.c: Regenerated. commit 607685ecee1015d6c37e0d800d40453dc0aadc8c Author: Yao Qi Date: Tue Jul 7 16:58:19 2015 +0100 Native debug arm program by aarch64 GDB This patch is to let aarch64 GDB debug 32-bit arm program natively. In each function for fetching and storing registers, GDB will check gdbarch_bfd_arch_info (gdbarch)->bits_per_word, if it is 32, call the corresponding aarch32 functions in aarch32-linux-nat.c, otherwise fall back to aarch64 code to fetch and store registers. aarch64_linux_read_description has to return the right target description, but we don't have gdbarch available there, so GDB fetches auxv and gets AT_PHENT, in order to determine whether the target is 32-bit or 64-bit. I learned this trick from solib-svr4.c. gdb: 2015-07-07 Yao Qi * aarch32-linux-nat.h (VFP_REGS_SIZE): New macro, moved from arm-linux-nat.c. * aarch64-linux-nat.c: Include aarch32-linux-nat.h and elf/external.h. (fetch_gregs_from_thread): Call aarch32_gp_regcache_supply if target is 32-bit. (store_gregs_to_thread): Call aarch32_gp_regcache_collect if target is 32-bit. (fetch_fpregs_from_thread): Call aarch32_vfp_regcache_supply if target is 32-bit. (store_fpregs_to_thread): Call aarch32_vfp_regcache_collect if target is 32-bit. (tdesc_arm_with_vfpv3, tdesc_arm_with_neon): Declare. (aarch64_linux_read_description): Return the right target description. * arm-linux-nat.c (VFP_REGS_SIZE): Moved to aarch32-linux-nat.h. * config/aarch64/linux.mh (NATDEPFILES): Add aarch32-linux-nat.o. * configure.tgt (aarch64*-*-linux*): Add arm-tdep.o and arm-linux-tdep.o commit f1b6788884b2e95105475c95b7f22f6ceba2271e Author: Yao Qi Date: Tue Jul 7 16:58:19 2015 +0100 New aarch32-linux-nat.c This patch is to move all the code about transferring regcache <-> byte buffer for arm (aarch32) to a separate file aarch32-linux-nat.c. Then, in the following patch, aarch64 code can use it to do multi-arch debugging. This is a refactory patch. gdb: 2015-07-07 Yao Qi * aarch32-linux-nat.c: New file. * aarch32-linux-nat.h: New file. * arm-linux-nat.c: Include aarch32-linux-nat.h. (fetch_regs): Move code to aarch32-linux-nat.c. Call aarch32_gp_regcache_supply. (store_regs): Move code to aarch32-linux-nat.c. Call aarch32_gp_regcache_collect. (fetch_vfp_regs): Move code to aarch32-linux-nat.c. Call aarch32_vfp_regcache_supply. (store_vfp_regs): Move code to aarch32-linux-nat.c. Call aarch32_vfp_regcache_collect. * config/arm/linux.mh (NATDEPFILES): Add aarch32-linux-nat.o. commit 179bfe826ba62ca8aa43f3d20cc1b21dfc41b1d0 Author: Yao Qi Date: Tue Jul 7 16:58:19 2015 +0100 Remove {fetch,store}_fpregister and {fetch,store}_register This patch is to remove fetch_fpregister, fech_register, store_fpregister and store_register, and use fetch_fpregs, fetch_regs, store_regs, and store_fpregs instead. gdb: 2015-07-07 Yao Qi * arm-linux-nat.c (store_fpregister): Remove. (store_register): Likewise. (fetch_fpregister): Likewise. (fetch_register): Likewise. (arm_linux_store_inferior_registers): Call store_regs and store_fpregs instead. (arm_linux_fetch_inferior_registers): Call fetch_fpregs and fetch_regs instead. commit 3e221d361f5647b56b7cc3ebf5ff487f417ceed0 Author: Simon Marchi Date: Tue Jul 7 11:39:06 2015 -0400 Fix test for Python 3 gdb/testsuite/ChangeLog: * gdb.python/py-lazy-string.exp: Add missing parentheses to print. commit d441430b752a617fe476e745b95f544fe4463fec Author: Yao Qi Date: Tue Jul 7 10:37:28 2015 +0100 [arm] Fix regression by Do not skip prologue for asm (.S) files Patch "Do not skip prologue for asm (.S) files" [1] changes GDB's behaviour on which test gdb.arch/thumb-singlestep.exp depends, so it causes the fail below: (gdb) si^M 37 blx foo^M (gdb) FAIL: gdb.arch/thumb-singlestep.exp: step into foo the test assumes the program will stop at the instruction after "push" but it doesn't. The fix to this fail is to do one more single step. [1] https://sourceware.org/ml/gdb-patches/2015-06/msg00561.html gdb/testsuite: 2015-07-07 Yao Qi * gdb.arch/thumb-singlestep.exp: Do one more single step. commit fa446e20d980f2fa225c57e452849dc7d5f615d6 Author: GDB Administrator Date: Tue Jul 7 00:00:08 2015 +0000 Automatic date update in version.in commit 15162befa3ac493c781c126ad49cb20eac053618 Author: Doug Kwan Date: Mon Jul 6 15:02:40 2015 -0700 Align text section ends so that stub tables appears at expected addresses. commit 6008fc5fcd34e3f1cde89c86e3b62bcc7ad7ea7c Author: Andrew Burgess Date: Mon Jul 6 11:33:31 2015 +0100 gdb: Rewrite documentation for layout and focus commands. Changes the documentation for the layout and focus commands. Instead of documenting each layout (or focus) sub-command as a separate command, document a single layout (and focus) command which takes a parameter, then list the possible parameters in a table nested under each command. The documentation for the layout command has been extended little to make it clearer which windows are shown in each layout. gdb/ChangeLog: * doc/gdb.texinfo (TUI): Restructure documentation on TUI layout and focus commands. commit 7c79d316af486c456f6f092d0841a9e16527bfd6 Author: Joel Brobecker Date: Mon Jul 6 13:02:47 2015 -0700 Update NEWS post GDB 7.10 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 f2232bea3284b80fcf0ed19ee6b940bcc6ebeb3d Author: Joel Brobecker Date: Mon Jul 6 12:58:29 2015 -0700 Bump version to 7.10.50.DATE-cvs. Now that the GDB 7.10 branch has been created, we can bump the version number. gdb/ChangeLog: GDB 7.10 branch created (66c4b3e8a628a207bc6aafef6af0c4128195f56e): * version.in: Bump version to 7.10.50.DATE-cvs. commit 66c4b3e8a628a207bc6aafef6af0c4128195f56e Author: Luis Machado Date: Mon Jul 6 16:09:21 2015 -0300 Fix problems with finishing a dummy function call on simulators. This fixes regressions introduced with the original change to not consider permanent breakpoints always inserted: 6ae8866180bf90e9ec76c2dd34c07fd826d11a83 is the first bad commit commit 6ae8866180bf90e9ec76c2dd34c07fd826d11a83 Author: Luis Machado Date: Wed Jun 17 16:50:57 2015 -0300 Fix problems with finishing a dummy function call on simulators. Some checks were mistakenly left out of the original patch, which caused the following failures: -PASS: gdb.base/shlib-call.exp: print mainshr1(1) -PASS: gdb.base/shlib-call.exp: step into mainshr1 +FAIL: gdb.base/shlib-call.exp: print mainshr1(1) +FAIL: gdb.base/shlib-call.exp: step into mainshr1 -PASS: gdb.cp/chained-calls.exp: q(p()) +FAIL: gdb.cp/chained-calls.exp: q(p()) -PASS: gdb.cp/chained-calls.exp: q(p() + r()) +FAIL: gdb.cp/chained-calls.exp: q(p() + r()) -PASS: gdb.cp/chained-calls.exp: g(f(g(f() + f())) + f()) +FAIL: gdb.cp/chained-calls.exp: g(f(g(f() + f())) + f()) -PASS: gdb.cp/chained-calls.exp: *c -PASS: gdb.cp/chained-calls.exp: *c + *c -PASS: gdb.cp/chained-calls.exp: q(*c + *c) +FAIL: gdb.cp/chained-calls.exp: *c +FAIL: gdb.cp/chained-calls.exp: *c + *c +FAIL: gdb.cp/chained-calls.exp: q(*c + *c) -PASS: gdb.cp/classes.exp: calling method for small class +FAIL: gdb.cp/classes.exp: calling method for small class The above is likely caused by GDB not removing the permanent breakpoints from the target, leading to the inferior executing the breakpoint instruction and tripping on a SIGSEGV. gdb/ChangeLog: 2015-07-06 Luis Machado * breakpoint.c (remove_breakpoint_1): Don't handle permanent breakpoints in a special way. (remove_breakpoint): Likewise. (mark_breakpoints_out): Likewise. commit 1a617dc351fe55ad18dee9759a6f3286c2df2cf8 Author: H.J. Lu Date: Mon Jul 6 12:00:45 2015 -0700 Remove the merge conflict introduced by commit 2f0c68f23bb3132cd5ac466ca8775c0d9e4960cd Author: Catherine Moore Date: Thu May 28 14:50:36 2015 -0700 Compact EH Support commit bcd8537ce10dd72b053fa54e87525defa26f3fd0 Author: Andrew Burgess Date: Mon Jul 6 11:37:24 2015 +0100 gdb/doc: Fix incorrect use of @xref. All uses of @xref must be followed by either '.' or ','. In commit a4ea0946c an incorrect use of @xref was introduced. This commit adds a comma after the use of @xref. gdb/ChangeLog: * doc/gdb.texinfo (TUI): Add comma after @xref. commit 10e9aaa3b8554f997db993c8158493a96030d4d5 Author: Andrew Burgess Date: Mon Jul 6 16:56:42 2015 +0100 gdb/tui: Don't cast between window types. Instead of casting between structure types to get the 'tui_gen_win_info' info from a 'tui_win_info' access the generic member variable. This is inline with what is done throughout the rest of the tui code. gdb/ChangeLog: * tui/tui-win.c (tui_set_focus): Use structure member 'generic' instead of casting the structure type. commit 8a13d42d99390c36d5e7884b509e6bb92ec72e3c Author: Simon Marchi Date: Mon Jul 6 13:10:56 2015 -0400 search_struct_field: remove OFFSET parameter I was trying to understand what the OFFSET parameter was for, and realized it was set to 0 in every call to search_struct_field. I assume that it was used at some point, but some subsequent changes made it useless. gdb/ChangeLog: * valops.c (search_struct_field): Remove OFFSET parameter. (value_cast_structs): Adjust calls to search_struct_field. (value_struct_elt): Same. (find_overload_match): Same. commit a844296a982bdff7c14dab355de0fca75486add6 Author: Simon Marchi Date: Mon Jul 6 13:04:11 2015 -0400 Cleanup value_fetch_lazy's comment and return value The comment for value_fetch_lazy seems outdated. It says that it's only called from the value_contents and value_contents_all (macros!), which is not true. Also, the return value seems useless now, despite what the comment says. gdb/ChangeLog: * value.c (value_fetch_lazy): Update comment, change return value to void. * value.h (value_fetch_lazy): Change return value to void. commit f41cbf58f4af65e8612585c45208f3690a39ea28 Author: Andrew Burgess Date: Mon Jul 6 15:32:11 2015 +0100 gdb: tui_win_name: Make parameter and result const. This commit makes the parameter and the result for 'tui_win_name' constant. There's one place in the code that is then updated as a result of this change. gdb/ChangeLog: * tui/tui-data.c (tui_partial_win_by_name): Window name is const. (tui_win_name): Make parameter and result const. * tui/tui-data.h (tui_win_name): Make parameter and result const. commit 118ca22445afc728069ca80be2f30dae6913059e Author: Patrick Palka Date: Thu Jul 2 11:55:01 2015 -0400 Don't throw an error in "show mpx bound" implementation "show" functions should not throw an exception in part because it causes the output of the commands "info set" and "show" to get truncated. This fixes the following fails: FAIL: gdb.base/default.exp: info set FAIL: gdb.base/default.exp: show gdb/ChangeLog: * i386-tdep.c (i386_mpx_info_bounds): Don't call error, instead use printf_unfiltered. (set_mpx_cmd): Add missing trailing space to command string literal. (_initialize_i386_tdep): Give the "mpx" prefix command its correct name. commit 0d3a523baa86b53238c658d2b290b151eac072dd Author: GDB Administrator Date: Mon Jul 6 00:00:07 2015 +0000 Automatic date update in version.in commit 92a9c616e496f41c3d1da949078d5739add79161 Author: Richard Sandiford Date: Sun Jul 5 19:56:59 2015 +0100 Fix an opd->append index in elf64-ppc.c bfd/ * elf64-ppc.c (toc_adjusting_stub_needed): Use the symbol value plus addend rather than the original st_value when looking up entries in opd->adjust. ld/testsuite/ * ld-powerpc/tocopt6-inc.s, ld-powerpc/tocopt6a.s, ld-powerpc/tocopt6b.s, ld-powerpc/tocopt6c.s, ld-powerpc/tocopt6.d: New test. * ld-powerpc/powerpc.exp (ppc64elftests): Add it. commit 533edc14b87398bbf4cbf3083bd6deaa5b89d5ab Author: GDB Administrator Date: Sun Jul 5 00:00:07 2015 +0000 Automatic date update in version.in commit e7ba597a2e537e1e77bff5d8a26ab8fbe6369afc Author: GDB Administrator Date: Sat Jul 4 00:00:08 2015 +0000 Automatic date update in version.in commit 0f088b2a9417b1d4ed597849ffa671eba25f5051 Author: Kai Tietz Date: Fri Jul 3 15:50:29 2015 +0100 Add experimental support for --gc-sections with COFF and PE based targets. PR ld/11539 bfd * coffcode.h (coff_bfd_gc_sections): Define default to bfd_coff_gc_sections function. * cofflink.c (init_reloc_cookie): Copy and adjust coff related code about gc-sections from elflink.c to here. (fini_reloc_cookie): Likewise. (init_reloc_cookie_rels): Likewise. (fini_reloc_cookie_rels): Likewise. (init_reloc_cookie_for_section): Likewise. (fini_reloc_cookie_for_section): Likewise. (_bfd_coff_gc_mark_hook): Likewise. (_bfd_coff_gc_mark_rsec): Likewise. (_bfd_coff_gc_mark_reloc): Likewise. (_bfd_coff_gc_mark): Likewise. (_bfd_coff_gc_mark_extra_sections): Likewise. (coff_gc_sweep_symbol_info): Likewise. (coff_gc_sweep_symbol): Likewise. (gc_sweep_hook_fn): Likewise. (coff_gc_sweep): Likewise. (bfd_coff_gc_sections): Likewise. (_bfd_coff_gc_keep): Likewise. * libcoff.h (coff_reloc_cookie): New struct. (bfd_coff_gc_sections): New prototype. (coff_gc_mark_hook_fn): New type. ld * scripttempl/pep.sc: Mark .idata*, .CRT*, .tls*, .rsrc*, .init, .ctor*, .dtor*, .fini, .jcr, .eh_frame, .pdata. .xdata, and .gcc_except_table sections as KEEP. * scripttempl/pe.sc: Likewise. commit b6b3dd8f31c96b6f7ba26de1508c3c1b2fd437f9 Author: Alan Modra Date: Fri Jul 3 10:58:22 2015 +0930 Correct ld Makefile dependendcy for or1k * Makefile.am (eelf32or1k.c, eelf32or1k_linux.c): Depend on ELF_DEPS. * Makefile.in: Regenerate. commit ef5a96d564a22a25d31533c7377eede42c12b25c Author: Alan Modra Date: Fri Jul 3 10:56:26 2015 +0930 Remove ppc860, ppc750cl, ppc7450 insns from common ppc. Back in the day support for these processors was added, we probably didn't want to waste PPC_OPCODE bits on minor variations. I've had a complaint that disassembly of mfspr/mtspr was wrong for power8. This patch fixes that problem. Note that since -m860/-m850/-m821 are new gas options enabling the mpc8xx specific mfspr/mtspr variants it is possible that this change will break some mpc8xx assembly code. ie. you might need to modify makefiles to pass -m860 to gas. include/opcode/ * ppc.h (PPC_OPCODE_750, PPC_OPCODE_7450, PPC_OPCODE_860): Define. opcodes/ * ppc-opc.c (PPC750, PPC7450, PPC860): Define using PPC_OPCODE_*. * ppc-dis.c (ppc_opts): Add 821, 850 and 860 entries. Add PPC_OPCODE_7450 to 7450 entry. Add PPC_OPCODE_750 to 750cl entry. gas/ * config/tc-ppc.c (md_show_usage): Add -m821, -m850, -m860. * doc/c-ppc.texi (PowerPC-Opts): Likewise. gas/testsuite/ * gas/ppc/titan.d: Correct mfmcsrr0 disassembly. commit 1b485e67784d7b4c212a936edc79f43bdd7d09cd Author: Kevin Buettner Date: Thu Jul 2 16:46:31 2015 -0700 Add support for backtracing through Renesas RX exception frames. This change adds support for backtracing through Renesas RX exception frames. Determination about the type of frame is made by scanning the remainder of the function for a return instruction and then looking at which, if any, return instruction is found. A normal RTS instruction indicates that the frame is a normal frame. An RTFI instruction indicates that it's a fast interrupt, and an RTE instruction indicates that the frame is a (normal) exception frame. If no return instruction is found within the scanned region - which can happen when the end of the function cannot be found - it is assumed to be a normal frame. I was able to test that normal prologue scanning still works by disabling the dwarf2 sniffer. I've tested this code for normal interrupts. The fast interrupt case has not been tested. gdb/ChangeLog: * rx-tdep.c (RX_USP_REGNUM, RX_BPC_REGNUM): New constants. (enum rx_frame_type): New. (struct rx_prologue): Add new field `frame_type'. (rx_analyze_prologue): Add `frame_type' parameter. Cache this parameter in the prologue struct. Add code for recording locations of PC and PSW for fast interrupt and exception frames. (rx_skip_prologue): Adjust call to rx_analyze_prologue. (rx_analyze_frame_prologue): Add `frame_type' parameter. (rx_frame_type): New function. (rx_frame_base): Fetch frame type and pass it to rx_analyze_prologue. (rx_frame_this_id): Rename parameter `this_prologue_cache' to `this_cache'. (rx_frame_prev_register): Rename parameter `this_prologue_cache' to `this_cache'. Add cases for RX_FRAME_TYPE_EXCEPTION and RX_FRAME_TYPE_FAST_INTERRUPT. (normal_frame_p, exception_frame_p, rx_frame_sniffer_common) (rx_frame_sniffer, rx_exception_sniffer): New functions. (rx_frame_unwind): Use rx_frame_sniffer instead of default_frame_sniffer. (rx_frame_unwind): New unwinder. (rx_gdbarch_init): Register new unwinder. commit 69ae7f4d16a0fd2548211a37aa5dc8482050bd70 Author: GDB Administrator Date: Fri Jul 3 00:00:08 2015 +0000 Automatic date update in version.in commit 0561fea48c107b271308a013c485c29cbd5c13b5 Author: Kevin Buettner Date: Thu Jul 2 15:02:56 2015 -0700 rx: Create and use flags types for psw, bpsw, and fpsw registers. This change adds two flags types for the (Renesas RX) psw, bpsw, and fpsw registers. As a result, symbolic flags are displayed for these registers in the output of GDB's "info registers" command as well as in output from other commands, such as "print". gdb/ChangeLog: * rx-tdep.c (RX_BPSW_REGNUM, RX_FPSW_REGNUM): New constants. (struct gdbarch_tdep): Add fields rx_psw_type and rx_fpsw_type. (rx_register_type): Add cases for RX_PSW_REGNUM, RX_BPSW_REGNUM, and RX_FPSW_REGNUM. (rx_gdbarch_init): Initialize PSW, BPSW, and FPSW flags types. commit decf8d9a5f91912768d52cd075b6a25617a90d1c Author: Jan Kratochvil Date: Thu Jul 2 22:39:57 2015 +0200 Fix GCC false warning At least on gcc-4.4.7-11.el6.i686 ./configure --enable-64-bit-bfd --enable-targets=all GDB does not build due to: cc1: warnings being treated as errors s390-linux-tdep.c: In function ‘s390_handle_arg’: s390-linux-tdep.c:2575: error: ‘val’ may be used uninitialized in this function gdb/ChangeLog 2015-07-02 Jan Kratochvil Fix GCC false warning. * s390-linux-tdep.c (s390_handle_arg): Initialize VAL. commit 2fd0f80d57e8437d70ba79921efd3ce02e755755 Author: Yao Qi Date: Thu Jul 2 14:03:54 2015 +0100 Fix typo in aarch64_linux_insert_hw_breakpoint It should be "insert_hw_breakpoint" rather than "insert_hw_watchpoint". gdb: 2015-07-02 Yao Qi * aarch64-linux-nat.c (aarch64_linux_insert_hw_breakpoint): Fix typo in the debugging message. commit db49d3d0414173fe8907dcae1cab0067d46c44cd Author: Nick Clifton Date: Thu Jul 2 16:19:09 2015 +0100 Fix snafu with latest addition to the ARM sim. * Makefile.in (SIM_EXTRA_CFLAGS): Revert previous delta. (SIM_EXTRA_LIBS): Add -lm. commit b0627500e819fcaaa42538046b0bf069a7c2edc5 Author: Markus Metzger Date: Mon Feb 3 14:35:28 2014 +0100 btrace: maintenance commands Add maintenance commands that help debugging the btrace record target. The following new commands are added: maint info btrace Print information about branch tracing internals. maint btrace packet-history Print the raw branch tracing data. maint btrace clear-packet-history Discard the stored raw branch tracing data. maint btrace clear Discard all branch tracing data. It will be fetched and processed anew by the next "record" command. maint set|show btrace pt skip-pad Set and show whether PAD packets are skipped when computing the packet history. gdb/ * btrace.c: Include gdbcmd.h, cli/cli-utils.h, and ctype.h. (maint_btrace_cmdlist, maint_btrace_set_cmdlist) (maint_btrace_show_cmdlist, maint_btrace_pt_set_cmdlist) (maint_btrace_pt_show_cmdlist, maint_btrace_pt_skip_pad) (btrace_maint_clear): New. (btrace_fetch, btrace_clear): Call btrace_maint_clear. (pt_print_packet, btrace_maint_decode_pt) (btrace_maint_update_pt_packets, btrace_maint_update_packets) (btrace_maint_print_packets, get_uint, get_context_size, no_chunk) (maint_btrace_packet_history_cmd) (maint_btrace_clear_packet_history_cmd, maint_btrace_clear_cmd) (maint_btrace_cmd, maint_btrace_set_cmd, maint_btrace_show_cmd) (maint_btrace_pt_set_cmd, maint_btrace_pt_show_cmd) (maint_info_btrace_cmd, _initialize_btrace): New. * btrace.h (btrace_pt_packet, btrace_pt_packet_s) (btrace_maint_packet_history, btrace_maint_info): New. (btrace_thread_info) : New. * NEWS: Announce it. doc/ * gdb.texinfo (Maintenance Commands): Document "maint btrace" commands. commit 9be54cae43929ab989fcd44dfcf8d3313a55f7a0 Author: Markus Metzger Date: Mon Feb 3 11:40:50 2014 +0100 btrace: store raw btrace data Store the raw branch trace data that has been read from the target. This data can be used for maintenance commands as well as for generating a core file for the "record save" command. gdb/ * btrace.c (btrace_fetch): Append the new trace data. (btrace_clear): Clear the stored trace data. * btrace.h (btrace_thread_info) : New. * common/btrace-common.h (btrace_data_clear) (btrace_data_append): New. * common/btrace-common.c (btrace_data_clear) (btrace_data_append): New. commit 010a18a1b12ec6d5219b7e602aa6abe12344dd1a Author: Markus Metzger Date: Mon Nov 17 11:18:05 2014 +0100 btrace, linux: use data_size and data_offset In struct perf_event_mmap_page there are new fields data_size and data_offset that give the location of the perf_event data buffer relative to the mmap page. Use them if they are present. gdb/ * nat/linux-btrace.c (linux_enable_bts): Check for PERF_ATTR_SIZE_VER5. Check for data_offset and data_size fields. Use them. commit b20a652466ea6e62e7d056188b79a0677a29f46e Author: Markus Metzger Date: Fri Jan 24 13:45:47 2014 +0100 btrace: support Intel(R) Processor Trace Adds a new command "record btrace pt" to configure the kernel to use Intel(R) Processor Trace instead of Branch Trace Strore. The "record btrace" command chooses the tracing format automatically. Intel(R) Processor Trace support requires Linux 4.1 and libipt. gdb/ * NEWS: Announce new commands "record btrace pt" and "record pt". Announce new options "set|show record btrace pt buffer-size". * btrace.c: Include "rsp-low.h". Include "inttypes.h". (btrace_add_pc): Add forward declaration. (pt_reclassify_insn, ftrace_add_pt, btrace_pt_readmem_callback) (pt_translate_cpu_vendor, btrace_finalize_ftrace_pt) (btrace_compute_ftrace_pt): New. (btrace_compute_ftrace): Support BTRACE_FORMAT_PT. (check_xml_btrace_version): Update version check. (parse_xml_raw, parse_xml_btrace_pt_config_cpu) (parse_xml_btrace_pt_raw, parse_xml_btrace_pt) (btrace_pt_config_cpu_attributes, btrace_pt_config_children) (btrace_pt_children): New. (btrace_children): Add support for "pt". (parse_xml_btrace_conf_pt, btrace_conf_pt_attributes): New. (btrace_conf_children): Add support for "pt". * btrace.h: Include "intel-pt.h". (btrace_pt_error): New. * common/btrace-common.c (btrace_format_string, btrace_data_fini) (btrace_data_empty): Support BTRACE_FORMAT_PT. * common/btrace-common.h (btrace_format): Add BTRACE_FORMAT_PT. (struct btrace_config_pt): New. (struct btrace_config): New. (struct btrace_data_pt_config, struct btrace_data_pt): New. (struct btrace_data): New. * features/btrace-conf.dtd (btrace-conf): New. (pt): New. * features/btrace.dtd (btrace): New. (pt, pt-config, cpu): New. * nat/linux-btrace.c (perf_event_read, perf_event_read_all) (perf_event_pt_event_type, kernel_supports_pt) (linux_supports_pt): New. (linux_supports_btrace): Support BTRACE_FORMAT_PT. (linux_enable_bts): Free tinfo on error. (linux_enable_pt): New. (linux_enable_btrace): Support BTRACE_FORMAT_PT. (linux_disable_pt): New. (linux_disable_btrace): Support BTRACE_FORMAT_PT. (linux_fill_btrace_pt_config, linux_read_pt): New. (linux_read_btrace): Support BTRACE_FORMAT_PT. * nat/linux-btrace.h (struct btrace_tinfo_pt): New. (struct btrace_target_info): New. * record-btrace.c (set_record_btrace_pt_cmdlist) (show_record_btrace_pt_cmdlist): New. (record_btrace_print_pt_conf): New. (record_btrace_print_conf): Support BTRACE_FORMAT_PT. (btrace_ui_out_decode_error): Support BTRACE_FORMAT_PT. (cmd_record_btrace_pt_start): New. (cmd_record_btrace_start): Support BTRACE_FORMAT_PT. (cmd_set_record_btrace_pt, cmd_show_record_btrace_pt): New. (_initialize_record_btrace): Add new commands. * remote.c (PACKET_Qbtrace_pt, PACKET_Qbtrace_conf_pt_size): New. (remote_protocol_features): Add "Qbtrace:pt". Add "Qbtrace-conf:pt:size". (remote_supports_btrace): Support BTRACE_FORMAT_PT. (btrace_sync_conf): Support PACKET_Qbtrace_conf_pt_size. (remote_enable_btrace): Support BTRACE_FORMAT_PT. (_initialize_remote): Add new commands. gdbserver/ * linux-low.c: Include "rsp-low.h" (linux_low_encode_pt_config, linux_low_encode_raw): New. (linux_low_read_btrace): Support BTRACE_FORMAT_PT. (linux_low_btrace_conf): Support BTRACE_FORMAT_PT. (handle_btrace_enable_pt): New. (handle_btrace_general_set): Support "pt". (handle_btrace_conf_general_set): Support "pt:size". doc/ * gdb.texinfo (Process Record and Replay): Spell out that variables and registers are not available during btrace replay. Describe the new "record btrace pt" command. Describe the new "set|show record btrace pt buffer-size" options. (General Query Packets): Describe the new Qbtrace:pt and Qbtrace-conf:pt:size packets. Expand "bts" to "Branch Trace Store". Update the branch trace DTD. commit 58bfce93438e1f936d4547bb9659b7d096e2823f Author: Markus Metzger Date: Tue Nov 12 16:58:45 2013 +0100 configure: check for libipt Check for libipt, an Intel(R) Processor Trace decoder library. The sources can be found on github at: https://github.com/01org/processor-trace gdb/ * configure.ac: Check for libipt * configure: Regenerate. * config.in: Regenerate. * Makefile.in (LIBIPT): New. (CLIBS): Add $LIBIPT. * NEWS: document new configure options commit b0fd6b3037669534962b1ffe860db178ea7e1239 Author: Jan Kratochvil Date: Thu Jul 2 08:01:35 2015 +0200 debug compile: Replace confusing debug message It was found that from (gdb) set debug compile 1 (gdb) compile code 1 [...] allocated 0x7f bytes at 0x7ffff7ff9000 prot 5 allocated 0x38 bytes at 0x7ffff7ff8000 prot 1 lookup undefined ELF symbol "_GLOBAL_OFFSET_TABLE_" allocated 0x10 bytes at 0x7ffff7ff7000 for registers (gdb) _ the message 'lookup undefined ELF symbol' looks as an error to people, including to myself once. Change it to: allocated 0x7f bytes at 0x7ffff7ff9000 prot 5 allocated 0x38 bytes at 0x7ffff7ff8000 prot 1 ELF symbol "_GLOBAL_OFFSET_TABLE_" relocated to zero allocated 0x10 bytes at 0x7ffff7ff7000 for registers (gdb) _ gdb/ChangeLog 2015-07-02 Jan Kratochvil * compile/compile-object-load.c (compile_object_load): Replace debug message "lookup undefined ELF symbol" by 3 more specific messages. commit 78ab7e9d38585cb939c473812e6a472b8f4fd5b9 Author: Kevin Buettner Date: Wed Jul 1 17:46:23 2015 -0700 Tabify my ChangeLog entry for 2015-06-29. commit e62803699d1a722460e8aaa63ef5c99f5580761a Author: Kevin Buettner Date: Wed Jul 1 16:18:35 2015 -0700 rl78: Create a flags type for the psw register. For the Renesas rl78 architecture, associate a flags type with the PSW register. This will cause symbolic flags to be printed when using the "info registers" command. gdb/ChangeLog: * rl78-tdep.c (struct gdbarch_tdep): Add new field, rl78_psw_type. (rl78_register_type): Add case for RL78_PSW_REGNUM. (rl78_gdbarch_init): Initialize rl78_psw_type. commit 7d8d1bd943e28623cd188725aa994edf045e54fb Author: GDB Administrator Date: Thu Jul 2 00:00:08 2015 +0000 Automatic date update in version.in commit 0cb5a38a5be39be9e18a1090418d3be97d6b8678 Author: Sandra Loosemore Date: Wed Jul 1 16:11:47 2015 -0700 Assembler tests for Nios II R2 2015-07-01 Sandra Loosemore Cesar Philippidis gas/testsuite/ * gas/nios2/add-r2.d: New. * gas/nios2/align_fill-r2.d: New. * gas/nios2/align_text-r2.d: New. * gas/nios2/aligned_text-r2.d: New. * gas/nios2/and-r2.d: New. * gas/nios2/andc.d: New. * gas/nios2/andc.s: New. * gas/nios2/bmx.d: New. * gas/nios2/bmx.s: New. * gas/nios2/branch-r2.d: New. * gas/nios2/break-r2.d: New. * gas/nios2/bret-r2.d: New. * gas/nios2/cache-r2.d: New. * gas/nios2/cache-r2.s: New. * gas/nios2/call-r2.d: New. * gas/nios2/call26-r2.d: New. * gas/nios2/call26_noat-r2.d: New. * gas/nios2/call_noat-r2.d: New. * gas/nios2/cdx_add.d: New. * gas/nios2/cdx_add.s: New. * gas/nios2/cdx_and.d: New. * gas/nios2/cdx_and.s: New. * gas/nios2/cdx_break.d: New. * gas/nios2/cdx_break.s: New. * gas/nios2/cdx_callr.d: New. * gas/nios2/cdx_callr.s: New. * gas/nios2/cdx_jmpr.d: New. * gas/nios2/cdx_jmpr.s: New. * gas/nios2/cdx_ldbu.d: New. * gas/nios2/cdx_ldbu.s: New. * gas/nios2/cdx_ldhu.d: New. * gas/nios2/cdx_ldhu.s: New. * gas/nios2/cdx_ldw.d: New. * gas/nios2/cdx_ldw.s: New. * gas/nios2/cdx_ldwsp.d: New. * gas/nios2/cdx_ldwsp.s: New. * gas/nios2/cdx_mov.d: New. * gas/nios2/cdx_mov.s: New. * gas/nios2/cdx_neg.d: New. * gas/nios2/cdx_neg.s: New. * gas/nios2/cdx_not.d: New. * gas/nios2/cdx_not.s: New. * gas/nios2/cdx_or.d: New. * gas/nios2/cdx_or.s: New. * gas/nios2/cdx_pop.d: New. * gas/nios2/cdx_pop.s: New. * gas/nios2/cdx_push.d: New. * gas/nios2/cdx_push.s: New. * gas/nios2/cdx_relax.d: New. * gas/nios2/cdx_relax.s: New. * gas/nios2/cdx_ret.d: New. * gas/nios2/cdx_ret.s: New. * gas/nios2/cdx_sll.d: New. * gas/nios2/cdx_sll.s: New. * gas/nios2/cdx_spaddi.d: New. * gas/nios2/cdx_spaddi.s: New. * gas/nios2/cdx_spdeci.d: New. * gas/nios2/cdx_spdeci.s: New. * gas/nios2/cdx_srl.d: New. * gas/nios2/cdx_srl.s: New. * gas/nios2/cdx_stb.d: New. * gas/nios2/cdx_stb.s: New. * gas/nios2/cdx_sth.d: New. * gas/nios2/cdx_sth.s: New. * gas/nios2/cdx_stw.d: New. * gas/nios2/cdx_stw.s: New. * gas/nios2/cdx_stwsp.d: New. * gas/nios2/cdx_stwsp.s: New. * gas/nios2/cdx_sub.d: New. * gas/nios2/cdx_sub.s: New. * gas/nios2/cdx_trap.d: New. * gas/nios2/cdx_trap.s: New. * gas/nios2/cdx_xor.d: New. * gas/nios2/cdx_xor.s: New. * gas/nios2/cmp-r2.d: New. * gas/nios2/comments-r2.d: New. * gas/nios2/complex-r2.d: New. * gas/nios2/ctl-r2.d: New. * gas/nios2/custom-r2.d: New. * gas/nios2/eni.d: New. * gas/nios2/eni.s: New. * gas/nios2/etbt-r2.d: New. * gas/nios2/flushda-r2.d: New. * gas/nios2/jmp-r2.d: New. * gas/nios2/ldb-r2.d: New. * gas/nios2/ldb-r2.s: New. * gas/nios2/ldh-r2.d: New. * gas/nios2/ldh-r2.s: New. * gas/nios2/ldw-r2.d: New. * gas/nios2/ldw-r2.s: New. * gas/nios2/ldwm.d: New. * gas/nios2/ldwm.s: New. * gas/nios2/lineseparator-r2.d: New. * gas/nios2/movia-r2.d: New. * gas/nios2/mpx.d: New. * gas/nios2/mpx.s: New. * gas/nios2/mul-r2.d: New. * gas/nios2/nop-r2.d: New. * gas/nios2/nop-r2.s: New. * gas/nios2/nor-r2.d: New. * gas/nios2/or-r2.d: New. * gas/nios2/rdprs-r2.d: New. * gas/nios2/rdprs-r2.s: New. * gas/nios2/registers-r2.d: New. * gas/nios2/ret-r2.d: New. * gas/nios2/rotate-r2.d: New. * gas/nios2/stb-r2.d: New. * gas/nios2/stb-r2.s: New. * gas/nios2/sth-r2.d: New. * gas/nios2/sth-r2.s: New. * gas/nios2/stw-r2.d: New. * gas/nios2/stw-r2.s: New. * gas/nios2/stwm.d: New. * gas/nios2/stwm.s: New. * gas/nios2/sub-r2.d: New. * gas/nios2/sync-r2.d: New. * gas/nios2/trap-r2.d: New. * gas/nios2/tret-r2.d: New. * gas/nios2/wrpie.d: New. * gas/nios2/wrpie.s: New. * gas/nios2/wrprs-r2.d: New. * gas/nios2/xor-r2.d: New. commit c8c8175b623c597cf18442ff1e13456beb41931d Author: Sandra Loosemore Date: Wed Jul 1 16:08:03 2015 -0700 Opcodes and assembler support for Nios II R2 2015-07-01 Sandra Loosemore Cesar Philippidis gas/ * config/tc-nios2.c (nios2_min_align): New. (nop): Replace with.... (nop_r1, nop_r2, nop_r2_cdx, nop32, nop16): New. (nios2_align): Handle alignment on 2-byte boundaries when CDX instructions may be present. (s_nios2_align): Adjust reference to nop. (CDXBRANCH, IS_CDXBRANCH): New. (CDX_UBRANCH_SUBTYPE, CDX_CBRANCH_SUBTYPE): New. (nios2_relax_subtype_size): Handle 2-byte CDX branches. (nios2_relax_frag): Likewise. (md_convert_frag): Handle R2 encodings. (nios2_check_overflow): Check that low-order bits are zero before applying rightshift from howto. (nios2_check_overflow): Correct negative overflow calculation. (nios2_diagnose_overflow): Handle signed_immed12_overflow. Issue generic overflow messages for miscellaneous instruction formats. (md_apply_fix): Recognize new R2 relocations. For pc_relative relocations, store fixup in *valP. (nios2_reglist_mask, nios2_reglist_dir): New. (nios2_parse_reglist): New. (nios2_parse_base_register): New. (nios2_assemble_expression): Handle constant expressions designated by BFD_RELOC_NONE. (nios2_assemble_reg3): New. (nios2_assemble_arg_c): Handle R2 instruction formats. (nios2_assemble_arg_d): Likewise. (nios2_assemble_arg_s): Likewise. (nios2_assemble_arg_t): Likewise. (nios2_assemble_arg_D): New. (nios2_assemble_arg_S): New. (nios2_assemble_arg_T): New. (nios2_assemble_arg_i): Handle R2 instruction formats. (nios2_assemble_arg_I): New. (nios2_assemble_arg_u): Handle R2 instruction formats. (nios2_assemble_arg_U): New. (nios2_assemble_arg_V): New. (nios2_assemble_arg_W): New. (nios2_assemble_arg_X): New. (nios2_assemble_arg_Y): New. (nios2_assemble_arg_o): Handle R2 instruction formats. (nios2_assemble_arg_O): New. (nios2_assemble_arg_P): New. (nios2_assemble_arg_j): Handle R2 instruction formats. (nios2_assemble_arg_k): New. (nios2_assemble_arg_l): Handle R2 instruction formats. (nios2_assemble_arg_m): Likewise. (nios2_assemble_arg_M): New. (nios2_assemble_arg_N): New. (nios2_assemble_arg_e): New. (nios2_assemble_arg_f): New. (nios2_assemble_arg_g): New. (nios2_assemble_arg_h): New. (nios2_assemble_arg_R): New. (nios2_assemble_arg_B): New. (nios2_assemble_args): Handle new argument letters. (nios2_consume_arg): Likewise. (nios2_translate_pseudo_insn): Avoid dereferencing null pointer in error message. (nios2_ps_insn_info_structs): Add nop.n. (output_ubranch): Handle CDX branches. (output_cbranch): Likewise. (output_call): Handle R2 encodings. (output_movia): Likewise. (md_begin): Initialize nios2_min_align. (md_assemble): Align to nios2_min_align. Adjust nios2_min_align if a 16-bit instruction is seen. (nios2_cons_align): Use appropriate nop pattern. include/opcode/ * nios2.h (enum iw_format_type): Add R2 formats. (enum overflow_type): Add signed_immed12_overflow and enumeration_overflow for R2. (struct nios2_opcode): Document new argument letters for R2. (REG_3BIT, REG_LDWM, REG_POP): Define. (includes): Include nios2r2.h. (nios2_r2_opcodes, nios2_num_r2_opcodes): Declare. (nios2_r2_asi_n_mappings, nios2_num_r2_asi_n_mappings): Declare. (nios2_r2_shi_n_mappings, nios2_num_r2_shi_n_mappings): Declare. (nios2_r2_andi_n_mappings, nios2_num_r2_andi_n_mappings): Declare. (nios2_r2_reg3_mappings, nios2_num_r2_reg3_mappings): Declare. (nios2_r2_reg_range_mappings, nios2_num_r2_reg_range_mappings): Declare. * nios2r2.h: New file. opcodes/ * nios2-dis.c (nios2_extract_opcode): New. (nios2_disassembler_state): New. (nios2_find_opcode_hash): Use mach parameter to select correct disassembler state. (nios2_print_insn_arg): Extend to support new R2 argument letters and formats. (print_insn_nios2): Check for 16-bit instruction at end of memory. * nios2-opc.c (nios2_builtin_regs): Add R2 register attributes. (NIOS2_NUM_OPCODES): Rename to... (NIOS2_NUM_R1_OPCODES): This. (nios2_r2_opcodes): New. (NIOS2_NUM_R2_OPCODES): New. (nios2_num_r2_opcodes): New. (nios2_r2_asi_n_mappings, nios2_num_r2_asi_n_mappings): New. (nios2_r2_shi_n_mappings, nios2_num_r2_shi_n_mappings): New. (nios2_r2_andi_n_mappings, nios2_num_r2_andi_n_mappings): New. (nios2_r2_reg3_mappings, nios2_num_r2_reg3_mappings): New. (nios2_r2_reg_range_mappings, nios2_num_r2_reg_range_mappings): New. commit 8c163c5a87f3e16f34ea9a0565767a23dccd5983 Author: Sandra Loosemore Date: Wed Jul 1 16:02:09 2015 -0700 Relocations for Nios II R2 2015-07-01 Sandra Loosemore Cesar Philippidis bfd/ * bfd-in2.h: Regenerated. * elf32-nios2.c (elf_nios2_howto_table_rel): Rename to... (elf_nios2_r1_howto_table_rel): This. (elf_nios2_r2_howto_table_rel): New. (BFD_IS_R2): New. (lookup_howto): Add ABFD parameter. Adjust to look up in either the R1 or R2 relocation table, as determined by ABFD. (nios2_reloc_map): Add R2 relocations. (nios2_elf32_bfd_reloc_type_lookup): Do lookup using lookup_howto. Pass it the ABFD parameter. (nios2_elf32_bfd_reloc_name_lookup): Use ABFD to decide whether to return an R1 or R2 relocation. (nios2_elf32_info_to_howto): Do lookup using lookup_howto. Pass it the ABFD parameter. (nios2_elf32_do_call26_relocate): Check for alignment on a 4-byte boundary. (nios2_elf32_relocate_section): Adjust call to lookup_howto. * libbfd.h: Regenerated. * reloc.c (BFD_RELOC_NIOS2_R2_S12): New. (BFD_RELOC_NIOS2_R2_I10_1_PCREL): New. (BFD_RELOC_NIOS2_R2_T1I7_1_PCREL): New. (BFD_RELOC_NIOS2_R2_T1I7_2): New. (BFD_RELOC_NIOS2_R2_T2I4): New. (BFD_RELOC_NIOS2_R2_T2I4_1): New. (BFD_RELOC_NIOS2_R2_T2I4_2): New. (BFD_RELOC_NIOS2_R2_X1I7_2): New. (BFD_RELOC_NIOS2_R2_X2L5): New. (BFD_RELOC_NIOS2_R2_F1I5_2): New. (BFD_RELOC_NIOS2_R2_L5I4X1): New. (BFD_RELOC_NIOS2_R2_T1X1I6): New. (BFD_RELOC_NIOS2_R2_T1X1I6_2): New. include/elf/ * nios2.h (R_NIOS2_R2_S12): New. (R_NIOS2_R2_I10_1_PCREL): New. (R_NIOS2_R2_T1I7_1_PCREL): New. (R_NIOS2_R2_T1I7_2): New. (R_NIOS2_R2_T2I4): New. (R_NIOS2_R2_T2I4_1): New. (R_NIOS2_R2_T2I4_2): New. (R_NIOS2_R2_X1I7_2): New. (R_NIOS2_R2_X2L5): New. (R_NIOS2_R2_F1I5_2): New. (R_NIOS2_R2_L5I4X1): New. (R_NIOS2_R2_T1X1I6): New. (R_NIOS2_R2_T1X1I6_2): New. (R_NIOS2_ILLEGAL): Renumber. commit 965b1d80832fde9ba17a8b5f11b578a8f9e10581 Author: Sandra Loosemore Date: Wed Jul 1 15:55:28 2015 -0700 Add Nios II arch flags and compatibility tests 2015-07-01 Sandra Loosemore Cesar Philippidis bfd/ * archures.c (bfd_mach_nios2r1, bfd_mach_nios2r2): New. * bfd-in2.h: Regenerated. * cpu-nios2.c (nios2_compatible): New. (N): Use nios2_compatible instead of bfd_default_compatible. (NIOS2R1_NEXT, NIOS2R2_NEXT): Define. (arch_info_struct): New. (bfd_nios2_arch): Chain to NIOS2R1_NEXT. * elf32-nios2.c (is_nios2_elf): New. (nios2_elf32_merge_private_bfd_data): New. (nios2_elf32_object_p): New. (bfd_elf32_bfd_merge_private_bfd_data): Define. (elf_backend_object_p): Define. gas/ * config/tc-nios2.c: Adjust includes. (OPTION_MARCH): Define. (md_longopts): Add -march option. (nios2_architecture): New. (nios2_use_arch): New. (md_parse_option): Handle OPTION_MARCH. (md_show_usage): Document -march. (md_begin): Set arch in BFD. (nios2_elf_final_processing): New. * config/tc-nios2.h (elf_tc_final_processing): Define. (nios2_elf_final_processing): New. * doc/c-nios2.texi (-march): Add documentation. include/elf/ * nios2.h (EF_NIOS2_ARCH_R1, EF_NIOS2_ARCH_R2): Define. ld/testsuite/ * ld-nios2/mixed1a.d: New. * ld-nios2/mixed1a.s: New. * ld-nios2/mixed1b.d: New. * ld-nios2/mixed1b.s: New. * ld-nios2/nios2.exp: Build the new compatibility tests. commit dfc87947b5ac6d6382c225449d4fdce411c7ee66 Author: H.J. Lu Date: Wed Jul 1 09:32:47 2015 -0700 Refactor elf_x86_64_convert_mov_to_lea * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): Refactor. commit bbcbf914a6ad801bfa7d4e56150217a1d53e07af Author: Patrick Palka Date: Wed Jul 1 08:02:09 2015 -0400 TUI: Make sure to update registers if frame information has changed When I replaced TUI's frame_changed hook to fix PR tui/13378 I assumed that there's no reason to refresh register information following a call to "up", "down" or "frame". This assumption was made to fix the problem of refreshing frame information twice following a sync-execution normal stop (once in tui_normal_stop and then in tui_before_prompt) -- the second refresh removing any highlights made by the first. I was wrong about that -- GDB's snapshot of register information is per-frame, and when the frame changes, registers do too (most prominently the %rip and %rsp registers). So e.g. GDB 7.8 would highlight such register changes after invoking "up", "down" or "frame", and current GDB does not. To fix this regression, this patch adds another (sufficient) condition for refreshing register information: in tui_refresh_frame_and_register_information, always refresh register information if frame information has changed. This makes register information get refreshed following a call to "up", "down" or "frame" while still avoiding the "double refresh" issue following a normal stop. This condition may seem to obsolete the existing registers_too_p parameter, but it does not: following a normal stop, it is possible that registers may have changed while frame information had not. We could be on the exact same PC with different register values. The new condition would not catch such a case, but the registers_too_p condition will. So both conditions seem necessary (and either one is sufficient). gdb/ChangeLog: * tui/tui-hooks.c (tui_refresh_frame_and_register_information): Update commentary. Always refresh the registers when frame information has changed. * tui/tui-stack.c (tui_show_frame_info): Update commentary. Change return type to int. Return 1 if frame information has changed, 1 otherwise. (tui_before_prompt): Update commentary. * tui/tui-stack.h (tui_show_frame_info): Change return type to int. commit 7a53c6c9c7b85f92480370d29c8a70635f6744b3 Author: GDB Administrator Date: Wed Jul 1 00:00:08 2015 +0000 Automatic date update in version.in commit 06f810bd8ee52d2485c180d45c635c25c9a15108 Author: Martin Galvan Date: Tue Jun 30 18:20:47 2015 -0300 Remove the unneeded escaping of '[' and ']' characters in test_class_help As these characters don't need to be escaped for strings wrapped inside {} braces, we can remove the unneeded backslashes. gdb/testsuite/ChangeLog: * lib/gdb.exp (test_class_help): Remove the unneeded escaping of '[' and ']' characters. commit 5e61e7c0390b390bd07c019ade5e42d7a6d77e10 Author: Iain Buclaw Date: Tue Jun 30 20:09:16 2015 +0200 Sync dlang demangling tests from upstream libiberty testsuite gdb/testsuite/ChangeLog: * gdb.dlang/demangle.exp: Sync tests from libiberty testsuite. commit 0986c744dfecb8177de90020646090e9ed23cfe7 Author: Patrick Palka Date: Tue Jun 30 13:56:49 2015 -0400 Replace TUI's select_frame hook (PR tui/13378) The select_frame hook is used by TUI to update TUI's frame and register information following changes to the selected frame. The problem with this hook is that it gets called after every single frame change, even if the frame change is only temporary or internal. This is the primary cause of flickering and slowdown when running the inferior under TUI with conditional breakpoints set. Internal GDB events are the source of many calls to select_frame and these internal events are triggered frequently, especially when a few conditional breakpoints are set. This patch removes the select_frame hook altogether and instead makes the frame and register information get updated in two key places (using observers): after an inferior stops, and right before displaying a prompt. The latter hook covers the case when frame information must be updated following a call to "up", "down" or "frame", and the former covers the case when frame and register information must be updated after a call to "continue", "step", etc. or after the inferior stops in async execution mode. Together these hooks should cover all the cases when frame information ought to be refreshed (and when the relevant windows ought to be subsequently updated). The print_frame_info_listing hook is also effectively obsolete now, but it still must be set while the TUI is active because its caller print_frame_info will otherwise assume that the CLI is active, and will print the frame informaion accordingly. So this patch also sets the print_frame_info_listing hook to a dummy callback, in lieu of outright removing it yet. Effectively, with this patch, frame/PC changes that do not immediately precede an inferior-stop event or a prompt display event no longer cause TUI's frame and register information to be updated. And as a result of this change and of the previous change to tui_show_frame_info, the TUI is much more disciplined about updating the screen, and so the flicker as described in the PR is totally gone. gdb/ChangeLog: PR tui/13378 * frame.c (select_frame): Remove reference to deprecated_selected_frame_level_changed_hook. * frame.h (deprecated_selected_frame_level_changed_hook): Remove declaration. * stack.c (deprecated_selected_frame_level_changed_hook): Likewise. * tui/tui-hooks.c (tui_selected_frame_level_changed_hook): Rename to ... (tui_refresh_frame_and_register_information): ... this. Bail out if there is no stack. Don't update register information unless registers_too_p is true. (tui_print_frame_info_listing_hook): Rename to ... (tui_dummy_print_frame_info_listing_hook): ... this. (tui_before_prompt): New function. (tui_normal_stop): New function. (tui_before_prompt_observer): New observer. (tui_normal_stop_observer): New observer. (tui_install_hooks): Set deprecated_print_frame_info_listing_hook to tui_dummy_print_frame_info_listing_hook. Register tui_before_prompt_observer to call tui_before_prompt and tui_normal_stop_observer to call tui_normal_stop. Remove reference to deprecated_selected_frame_level_changed_hook. (tui_remove_hooks): Detach and unset tui_before_prompt_observer and tui_normal_stop_observer. Remove reference to deprecated_selected_frame_level_changed_hook. commit b5fca6d7284b2cd2e90efc556eb6a29a1b177476 Author: Patrick Palka Date: Fri Jun 26 20:38:30 2015 -0400 Be lazy about refreshing the windows in tui_show_frame_info (PR tui/13378) tui_show_frame_info is responsible for updating the visible windows following a change in frame information (that being the currently selected frame, PC, line number, etc). Currently it always redraws and refreshes each window even if frame information has not changed. This behavior is inefficient and helps contribute to the occassional flickering of the TUI as described in the mentioned PR. This patch makes tui_show_frame_info refresh the windows only if frame information has changed. Determining whether frame information has changed is done indirectly by determining whether the locator has changed. This approach is convenient and yet sensible because the locator contains all the relevant info we need to check anyway: the current PC, the line number, the name of the executable and the name of the current function. Probably only the PC is really necessary to check, but it doesn't hurt to check every field. Effectively, with this patch, consecutive calls to select_frame with the same frame/PC no longer cause TUI's frame information to be updated multiple times. gdb/ChangeLog: PR tui/13378 * tui/tui-stack.c (tui_set_locator_info): Change prototype to return an int instead of void. Return whether the locator window has changed. (tui_show_frame_info): If the locator info has not changed, then bail out early to avoid refreshing the windows. commit c45613e33dbdc646b6fd7f02f86635639e852bfb Author: Patrick Palka Date: Fri Jun 26 20:17:56 2015 -0400 Correctly initialize the TUI locator window The call to tui_alloc_content in tui_set_locator_info passes locator->type as the type of the window whose content is being allocated. This may seem correct but it's actually not because when this code path actually get executed locator->type has not yet been to set LOCATOR_WIN so it defaults to 0 i.e. SRC_WIN. Thus we allocate the content of the locator window as if it was the source window. This oversight turns out not to be a big deal in practice but the patch that follows depends on the locator's proc_name and full_name arrays to be initialized to the empty string which is done by tui_alloc_content if we pass to it LOCATOR_WIN. This patch fixes this bug by explicitly passing LOCATOR_WIN to tui_alloc_content. gdb/ChangeLog: * tui/tui-stack.c (tui_set_locator_info): Explicitly pass LOCATOR_WIN to tui_alloc_content. commit d0bf44cb88be21ea009a4fe0e59a3d3e6e545aed Author: H.J. Lu Date: Tue Jun 30 10:22:36 2015 -0700 Sync libdecnumber with gcc * configure: Regenerated. commit a2efc14b81515aebd2b7e1f47fe4768e432493a9 Author: H.J. Lu Date: Tue Jun 30 10:20:19 2015 -0700 Sync dfp.m4 with gcc * dfp.m4 (enable_decimal_float): Also set to yes for i?86*-*-elfiamcu target. commit 16beab3db6f347a00b18c0d6bcc3c48feff58dca Author: H.J. Lu Date: Tue Jun 30 10:15:57 2015 -0700 Sync toplevel configure with gcc * configure.ac (ospace_frag): Enable for i?86*-*-elfiamcu target. * configure: Regenerate. commit 5ee4a1ca16364c79f8717752ee9a9bd562580907 Author: Nick Clifton Date: Tue Jun 30 17:12:47 2015 +0100 This fixes parsing a file containing ELF attributes with very large tag values. PR binutils/18570 * elf-attrs.c (obj_attr_size): Use an unsigned int type for the tag. (write_obj_attribute): Likewise. (elf_new_obj_attr): Likewise. (bfd_elf_get_obj_attr_int): Likewise. (bfd_elf_add_obj_attr_int): Likewise. (bfd_elf_add_obj_attr_string): Likewise. (bfd_elf_add_obj_attr_int_string): Likewise. (gnu_obj_attrs_arg_type): Likewise. (_bfd_elf_obj_attrs_arg_type): Likewise. (_bfd_elf_parse_attributes): Likewise. (_bfd_elf_merge_unknown_attribute_list): Likewise. * elf-bfd.h (struct obj_attribute_list): Likewise. Update prototypes. commit 9916071f8df180400e39d1783d4a878cf57c61fe Author: Amit Pawar Date: Tue Jun 30 12:11:52 2015 +0530 Add support for monitorx/mwaitx instructions gas/ * config/tc-i386.c (cpu_arch): Add .mwaitx. (process_immext): Check operands for monitorx/mwaitx instructions. * doc/c-i386.texi: Document mwaitx. gas/testsuite/ * gas/i386/i386.exp: Add new mwaitx test cases. * gas/i386/mwaitx.s: New. * gas/i386/mwaitx-bdver4.d: New. * gas/i386/x86-64-mwaitx.s: New. * gas/i386/x86-64-mwaitx-bdver4.d: New. * gas/i386/mwaitx-reg.s: New. * gas/i386/mwaitx-reg.l: New. * gas/i386/x86-64-mwaitx-reg.l: New. * gas/i386/x86-64-mwaitx-reg.s: New. * gas/i386/arch-13.s: Updated. * gas/i386/arch-13.d: Updated. * gas/i386/arch-13-znver1.d: Updated. * gas/i386/x86-64-arch-3.s: Updated. * gas/i386/x86-64-arch-3.d: Updated. * gas/i386/x86-64-arch-3-znver1.d: Updated. opcodes/ * i386-dis.c (OP_Mwaitx): New. (rm_table): Add monitorx/mwaitx. * i386-gen.c (cpu_flag_init): Add CpuMWAITX to CPU_BDVER4_FLAGS and CPU_ZNVER1_FLAGS. Add CPU_MWAITX_FLAGS. (operand_type_init): Add CpuMWAITX. * i386-opc.h (CpuMWAITX): New. (i386_cpu_flags): Add cpumwaitx. * i386-opc.tbl: Add monitorx and mwaitx. * i386-init.h: Regenerated. * i386-tbl.h: Likewise. commit 54f66250d79ec304ea427915bfd8b535ec249c3b Author: Nick Clifton Date: Tue Jun 30 11:25:18 2015 +0100 Add support for SADDR addressing to the RL78 port. gas * config/rl78-parse.y: Tag all saddr expressions throughout. (SET_SA): New. (expr_is_saddr): Allow symbolic expressions. * config/tc-rl78.c (md_apply_fix): Handle SADDR. bfd * elf32-rl78.c (rl78_elf_howto_table): Add RH_SADDR. (rl78_reloc_map): Add R_RL78_RH_SADDR. * reloc.c: Add BFD_RELOC_RL78_SADDR. * libbfd.h: Regenerate. * bfd-in2.h: Regenerate. commit 7b9be803fed8f500b512d5685773c84fffcdf63f Author: Yao Qi Date: Tue Jun 30 09:24:43 2015 +0100 Handle media instructions in arm software single step. This patch fixes PR 18605 which is about incorrectly decoding media instructions in software single step. gdb: 2015-06-30 Yao Qi PR tdep/18605 * arm-tdep.c (arm_get_next_pc_raw): Break for media instructions. commit fd6e021d8c989905bbb234fdf993799db5a18cb9 Author: Kevin Buettner Date: Mon Jun 29 08:08:12 2015 -0700 Turn on dwarf2 unwinding for Renesas RX architecture This change turns on dwarf2 unwinding in rx-tdep.c. I found it necessary to add rx_dwarf_reg_to_regnum in order to cause PC to be mapped correctly. gdb/ChangeLog: * rx-tdep.c (RX_PSW_REGNUM): New enum constant. (rx_dwarf_reg_to_regnum): New function. (rx_gdbarch_init): Register rx_dwarf_reg_to_regnum. Use dwarf2 unwinding. commit 56b06706ebe6bb3decc674b788b6f5b243b8610d Author: Han Shen Date: Tue Jun 16 15:00:58 2015 -0700 Patch for gold internal error while fixing erratum 843419. The crash reason is that the insn to be moved to stub may be a relocation spot, so instead of placing the origin insn (that is insn before-relocation) to the stub, I have to place the relocated one. Note the relocation involved is non-pc-relative, so it is safe to move the relocated insn. gold/ChangeLog: 2015-06-29 Han Shen * AArch64.cc (Erratum_stub::Insn_utilities): New typedef. (Erratum_stub::update_erratum_insn): New method. (Stub_table::relocate_stubs): Modified to place relocated insn. (AArch64_relobj::fix_errata): Modified gold_assert. commit 06b3fd23bfe2f0f76a590e89ac7378c13153e165 Author: GDB Administrator Date: Tue Jun 30 00:00:08 2015 +0000 Automatic date update in version.in commit 28bf096c62d7da6b349605f3940f4c586a850f78 Author: Pedro Alves Date: Mon Jun 29 16:07:57 2015 +0100 PR threads/18127 - threads spawned by infcall end up stuck in "running" state Refs: https://sourceware.org/ml/gdb/2015-03/msg00024.html https://sourceware.org/ml/gdb/2015-06/msg00005.html On GNU/Linux, if an infcall spawns a thread, that thread ends up with stuck running state. This happens because: - when linux-nat.c detects a new thread, it marks them as running, and does not report anything to the core. - we skip finish_thread_state when the thread that is running the infcall stops. As result, that new thread ends up with stuck "running" state, even though it really is stopped. On Windows, _all_ threads end up stuck in running state, not just the one that was spawned. That happens because when a new thread is detected, unlike linux-nat.c, windows-nat.c reports TARGET_WAITKIND_SPURIOUS to infrun. It's the fact that that event does not cause a user-visible stop that triggers the problem. When the target is re-resumed, we call set_running with a wildcard ptid, which marks all thread as running. That set_running is not suppressed because the (leader) thread being resumed does not have in_infcall set. Later, when the infcall finally finishes successfully, nothing marks all threads back to stopped. We can trigger the same problem on all targets by having a thread other than the one that is running the infcall report a breakpoint hit to infrun, and then have that breakpoint not cause a stop. That's what the included test does. The fix is to stop GDB from suppressing the set_running calls while doing an infcall, and then set the threads back to stopped when the call finishes, iff they were originally stopped before the infcall started. (Note the MI *running/*stopped event suppression isn't affected.) Tested on x86_64 GNU/Linux. gdb/ChangeLog: 2015-06-29 Pedro Alves PR threads/18127 * infcall.c (run_inferior_call): On infcall success, if the thread was marked stopped before, reset it back to stopped. * infrun.c (resume): Don't suppress the set_running calls when doing an infcall. (normal_stop): Only discard the finish_thread_state cleanup if the infcall succeeded. gdb/testsuite/ChangeLog: 2015-06-29 Pedro Alves PR threads/18127 * gdb.threads/hand-call-new-thread.c: New file. * gdb.threads/hand-call-new-thread.c: New file. commit 2880b51c25b055013c2f4939a5d0c0779b972bb3 Author: Pierre Langlois Date: Mon Jun 29 10:47:51 2015 +0100 Fix email in ChangeLog entry. commit 96c97461222f9cb1a16b3b90fb7316c9c3d8732a Author: Pierre Langlois Date: Mon Jun 29 10:36:55 2015 +0100 [GDBServer][AArch64] Enable support for Z0 packets This patch lets GDBServer handle software breakpoints instead of relying on GDB. gdb/gdbserver/ChangeLog: * linux-aarch64-low.c (aarch64_supports_z_point_type): Enable for Z_PACKET_SW_BP. commit 37d669427f8b90f3c9d17a6e04d72c731d3abdbc Author: Pierre Langlois Date: Mon Jun 29 10:34:42 2015 +0100 [GDBServer][AArch64] Use the same break instruction as GDB GDB uses a "brk #0" instruction to perform a software breakpoint while GDBServer uses an illegal instruction. Both instructions should match. When enabling support for the 'Z0' packet, we let GDBServer insert the breakpoint instruction instead of GDB. And in case of permanent breakpoints for example, GDB will check if a breakpoint is inserted in the inferior with `program_breakpoint_here_p (gdbarch, address)', and compare the instruction read from the inferior with the breakpoint instruction. On AArch64, instructions are always little endian so we need to represent it as an array of bytes, as done in aarch64-tdep.c. gdb/gdbserver/ChangeLog: * linux-aarch64-low.c: Remove comment about endianness. (aarch64_breakpoint): Change type to gdb_byte[]. Set to "brk #0". (aarch64_breakpoint_at): Change type of insn to gdb_byte[]. Use memcmp. commit 1451ea7da40a82e8cf6a39fa8d0fc74ff230600a Author: Pierre Langlois Date: Mon Jun 29 10:23:48 2015 +0100 Update my email address gdb/ChangeLog: * MAINTAINERS (Write After Approval): Update my email address. commit bb0eef66f82c97b863951eddd0c47e28faf716a8 Author: GDB Administrator Date: Mon Jun 29 00:00:07 2015 +0000 Automatic date update in version.in commit 73cb0348b296656e971c4d428aa63781e656a1c4 Author: Nick Clifton Date: Sun Jun 28 19:14:36 2015 +0100 Add support for ARM v6 instructions. * Makefile.in (SIM_EXTRA_CFLAGS): Add -lm. * armdefs.h (ARMdval, ARMfval): New types. (ARM_VFP_reg): New union. (struct ARMul_State): Add VFP_Reg and FPSCR fields. (VFP_fval, VFP_uword, VFP_sword, VFP_dval, VFP_dword): Accessor macros for the new VFP_Reg field. * armemu.c (handle_v6_insn): Add code to handle MOVW, MOVT, QADD16, QASX, QSAX, QSUB16, QADD8, QSUB8, UADD16, USUB16, UADD8, USUB8, SEL, REV, REV16, RBIT, BFC, BFI, SBFX and UBFX instructions. (handle_VFP_move): New function. (ARMul_Emulate16): Add checks for newly supported v6 instructions. Add support for VMRS, VMOV and MRC instructions. (Multiply64): Allow nRdHi == nRm and/or nRdLo == nRm when operating in v6 mode. * armemu.h (t_resolved): Define. * armsupp.c: Include math.h. (handle_VFP_xfer): New function. Handles VMOV, VSTM, VSTR, VPUSH, VSTM, VLDM and VPOP instructions. (ARMul_LDC): Test for co-processor 10 or 11 and pass call to the new handle_VFP_xfer function. (ARMul_STC): Likewise. (handle_VFP_op): New function. Handles VMLA, VMLS, VNMLA, VNMLS, VNMUL, VMUL, VADD, VSUB, VDIV, VMOV, VABS, VNEG, VSQRT, VCMP, VCMPE and VCVT instructions. (ARMul_CDP): Test for co-processor 10 or 11 and pass call to the new handle_VFP_op function. * thumbemu.c (tBIT, tBITS, ntBIT, ntBITS): New macros. (test_cond): New function. Tests a condition and returns non-zero if the condition has been met. (handle_IT_block): New function. (in_IT_block): New function. (IT_block_allow): New function. (ThumbExpandImm): New function. (handle_T2_insn): New function. Handles T2 thumb instructions. (handle_v6_thumb_insn): Add next_instr and pc parameters. (ARMul_ThumbDecode): Add support for IT blocks. Add support for v6 instructions. * wrapper.c (sim_create_inferior): Detect a thumb address and call SETT appropriately. commit ee0c0c503deffb7baf900ac8e092b18bf8c1528a Author: H.J. Lu Date: Sun Jun 28 06:30:10 2015 -0700 Remove COMPRESS_DEBUG_ZLIB COMPRESS_DEBUG_ZLIB isn't needed. This patch removes COMPRESS_DEBUG_ZLIB and replace COMPRESS_DEBUG_ZLIB with COMPRESS_DEBUG_GNU_ZLIB. bfd/ * bfd-in.h (compressed_debug_section_type): Remove COMPRESS_DEBUG_ZLIB. * bfd-in2.h : Regenerated. gas/ * as.c (parse_args): Replace COMPRESS_DEBUG_ZLIB with COMPRESS_DEBUG_GNU_ZLIB. * config/tc-i386.c (flag_compress_debug): Likewise. ld/ * emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Replace COMPRESS_DEBUG_ZLIB with COMPRESS_DEBUG_GNU_ZLIB. commit e44fbadbede56bf42896c2b3214a056cf20f131e Author: GDB Administrator Date: Sun Jun 28 00:00:08 2015 +0000 Automatic date update in version.in commit 216cb5839a931d3d61aff8e0de9e49183e3d69c1 Author: H.J. Lu Date: Sat Jun 27 16:43:43 2015 -0700 Update ia64 gas tests * gas/ia64/psn.d: Updated. * gas/ia64/xdata-ilp32.d: Likewise. commit a2a55a40071096faef218f34dad3adf34db9b1ed Author: H.J. Lu Date: Sat Jun 27 16:24:50 2015 -0700 Update xtensa linker tests * ld-xtensa/tlsbin.rd: Updated. * ld-xtensa/tlspic.rd: Likewise. commit 98090c0be30fb626aed09a7f9973b9c9980cce56 Author: GDB Administrator Date: Sat Jun 27 00:00:07 2015 +0000 Automatic date update in version.in commit ee93cd5e1e61e5739a1a44e0d1d166ae09d04dc2 Author: Keith Seitz Date: Fri Jun 26 10:27:45 2015 -0700 PR 16253 revisited Last year a patch was submitted/approved/commited to eliminate symbol_matches_domain which was causing this problem. It was later reverted because it introduced a (severe) performance regression. Recap: (gdb) list 1 enum e {A,B,C} e; 2 int main (void) { return 0; } 3 (gdb) p e Attempt to use a type name as an expression The parser attempts to find a symbol named "e" of VAR_DOMAIN. This gets passed down through lookup_symbol and (eventually) into block_lookup_symbol_primary, which iterates over the block's dictionary of symbols: for (sym = dict_iter_name_first (block->dict, name, &dict_iter); sym != NULL; sym = dict_iter_name_next (name, &dict_iter)) { if (symbol_matches_domain (SYMBOL_LANGUAGE (sym), SYMBOL_DOMAIN (sym), domain)) return sym; } The problem here is that we have a symbol named "e" in both STRUCT_DOMAIN and VAR_DOMAIN, and for languages like C++, Java, and Ada, where a tag name may be used as an implicit typedef of the type, symbol_matches_domain ignores the difference between VAR_DOMAIN and STRUCT_DOMAIN. As it happens, the STRUCT_DOMAIN symbol is found first, considered a match, and that symbol is returned to the parser, eliciting the (now dreaded) error message. Since this bug exists specifically because we have both STRUCT and VAR_DOMAIN symbols in a given block/CU, this patch rather simply/naively changes block_lookup_symbol_primary so that it continues to search for an exact domain match on the symbol if symbol_matches_domain returns a symbol which does not exactly match the requested domain. This "fixes" the immediate problem, but admittedly might uncover other, related bugs. [Paranoia?] However, it causes no regressions (functional or performance) in the test suite. A similar change has been made to block_lookup_symbol for other cases in which this bug might appear. The tests from the previous submission have been resurrected and updated. However since we can still be given a matching symbol with a different domain than requested, we cannot say that a symbol "was not found." The error messages today will still be the (dreaded) "Attempt to use a type name..." ChangeLog PR 16253 * block.c (block_lookup_symbol): For non-function blocks, continue to search for a symbol with an exact domain match Otherwise, return any previously found "best domain" symbol. (block_lookup_symbol_primary): Likewise. testsuite/ChangeLog PR 16253 * gdb.cp/var-tag-2.cc: New file. * gdb.cp/var-tag-3.cc: New file. * gdb.cp/var-tag-4.cc: New file. * gdb.cp/var-tag.cc: New file. * gdb.cp/var-tag.exp: New file. commit fc637f04c741b08726cc1631428bf094235ecb4e Author: Patrick Palka Date: Tue Jun 2 22:49:15 2015 -0400 Add option to remove duplicate command history entries This patch implements the new option "history remove-duplicates", which controls the removal of duplicate history entries ("off" by default). The motivation for this option is to be able to reduce the prevalence of basic commands such as "up" and "down" in the history file. These common commands crowd out more unique commands in the history file (when the history file has a fixed size), and they make navigation of the history file via ^P, ^N and ^R more inconvenient. The option takes an integer denoting the number of history entries to look back at for a history entry that is a duplicate of the latest one. "history remove-duplicates 1" is equivalent to bash's ignoredups option, and "history remove-duplicates unlimited" is equivalent to bash's erasedups option. [ I decided to go with this integer approach instead of a tri-state enum because it's slightly more flexible and seemingly more intuitive than leave/erase/ignore. ] gdb/ChangeLog: * NEWS: Mention the new option "history remove-duplicates". * top.c (history_remove_duplicates): New static variable. (show_history_remove_duplicates): New static function. (gdb_add_history): Conditionally remove duplicate history entries. (init_main): Add "history remove-duplicates" option. gdb/doc/ChangeLog: * gdb.texinfo (Command History): Document the new option "history remove-duplicates". gdb/testsuite/ChangeLog: * gdb.base/history-duplicates.exp: New test. commit 2e52ae68e7cedc3a1f9908c98ee60a8602705835 Author: Patrick Palka Date: Sun Jun 21 22:54:10 2015 -0400 Add tab completion for TUI's "focus" command The implementation is pretty straightforward, with the only caveat being that the "src", "cmd", "next" and "prev" entries get delibrately added to the completion list even when the TUI has not yet been initialized (i.e. has never been enabled during the session), since invoking the "focus" command with these arguments already works when the TUI has not yet been initialized. gdb/ChangeLog: * tui/tui-win.c (focus_completer): New static function. (_initialize_tui_win): Set the completion function of the "focus" command to focus_completer. gdb/testsuite/ChangeLog: * gdb.base/completion.exp: Test the completion of the "focus" command. commit 6e22494e5076e4d3c0b2c2785883162f83db499e Author: Jan Kratochvil Date: Fri Jun 26 15:11:14 2015 +0200 Do not skip prologue for asm (.S) files GDB tries to skip prologue for .S files according to .debug_line but it then places the breakpoint to a location where it is never hit. This is because #defines in .S files cause prologue skipping which is completely inappropriate, for s390x: glibc/sysdeps/unix/syscall-template.S 78:/* This is a "normal" system call stub: if there is an error, 79: it returns -1 and sets errno. */ 80: 81:T_PSEUDO (SYSCALL_SYMBOL, SYSCALL_NAME, SYSCALL_NARGS) 82: ret 00000000000f4210 T __select Line Number Statements: Extended opcode 2: set Address to 0xf41c8 Advance Line by 80 to 81 Copy Advance PC by 102 to 0xf422e Special opcode 6: advance Address by 0 to 0xf422e and Line by 1 to 82 Special opcode 34: advance Address by 2 to 0xf4230 and Line by 1 to 83 Advance PC by 38 to 0xf4256 Extended opcode 1: End of Sequence Compilation Unit @ offset 0x28b3e0: <0><28b3eb>: Abbrev Number: 1 (DW_TAG_compile_unit) <28b3ec> DW_AT_stmt_list : 0x7b439 <28b3f0> DW_AT_low_pc : 0xf41c8 <28b3f8> DW_AT_high_pc : 0xf4256 <28b400> DW_AT_name : ../sysdeps/unix/syscall-template.S <28b423> DW_AT_comp_dir : /usr/src/debug////////glibc-2.17-c758a686/misc <28b452> DW_AT_producer : GNU AS 2.23.52.0.1 <28b465> DW_AT_language : 32769 (MIPS assembler) without debuginfo or with debuginfo and the fix - correct address: (gdb) b select Breakpoint 1 at 0xf4210 It is also where .dynsym+.symtab point to: 00000000000f4210 T __select 00000000000f4210 W select with debuginfo, without the fix: (gdb) b select Breakpoint 1 at 0xf41c8: file ../sysdeps/unix/syscall-template.S, line 81. One part is to behave for asm files similar way like for 'locations_valid': /* Symtab has been compiled with both optimizations and debug info so that GDB may stop skipping prologues as variables locations are valid already at function entry points. */ unsigned int locations_valid : 1; The other part is to extend the 'locations_valid'-like functionality more. Both minsym_found and find_function_start_sal need to be patched, otherwise their addresses do not match and GDB regresses on ppc64: gdb/ChangeLog 2015-06-26 Jan Kratochvil * linespec.c (minsym_found): Reset sal.PC for COMPUNIT_LOCATIONS_VALID and language_asm.. * symtab.c (find_function_start_sal): Likewise. gdb/testsuite/ChangeLog 2015-06-26 Jan Kratochvil * gdb.arch/amd64-prologue-skip.S: New file. * gdb.arch/amd64-prologue-skip.exp: New file. commit c742574f825fe43d1e7203fca8690c008b525e97 Author: H.J. Lu Date: Fri Jun 26 05:39:45 2015 -0700 Compile-in IAMCU linker scripts * emulparams/elf_iamcu.sh (COMPILE_IN): New. commit a5499fa4649e4325cf46edfff2f24dae2fe2afef Author: Matthew Fortune Date: Thu Jun 11 10:16:19 2015 +0100 Add support for DT_MIPS_RLD_MAP_REL. This tag makes it possible to access the debug map when debugging position independent executables. bfd/ * elfxx-mips.c (_bfd_mips_elf_create_dynamic_sections): Use executable instead of !shared to indicate an application vs shared library. (_bfd_mips_elf_size_dynamic_sections): Likewise. (_bfd_mips_elf_finish_dynamic_sections): Handle DT_MIPS_RLD_MAP_REL. (_bfd_mips_elf_get_target_dtag): Likewise. binutils/ * readelf.c (get_mips_dynamic_type): Handle DT_MIPS_RLD_MAP_REL. include/ * elf/mips.h (DT_MIPS_RLD_MAP_REL): New macro. ld/testsuite/ * ld-mips-elf/pic-and-nonpic-3b.ad: Adjust for extra dynamic tag. * ld-mips-elf/pic-and-nonpic-4b.ad: Likewise. * ld-mips-elf/pic-and-nonpic-5b.ad: Likewise. * ld-mips-elf/pic-and-nonpic-6-n32.ad: Likewise. * ld-mips-elf/pic-and-nonpic-6-n64.ad: Likewise. * ld-mips-elf/pic-and-nonpic-6-o32.ad: Likewise. * ld-mips-elf/tlsdyn-o32-1.d: Likewise. * ld-mips-elf/tlsdyn-o32-1.got: Likewise. * ld-mips-elf/tlsdyn-o32-2.d: Likewise. * ld-mips-elf/tlsdyn-o32-2.got: Likewise. * ld-mips-elf/tlsdyn-o32-3.d: Likewise. * ld-mips-elf/tlsdyn-o32-3.got: Likewise. * ld-mips-elf/tlsdyn-o32.d: Likewise. * ld-mips-elf/tlsdyn-o32.got: Likewise. * ld-mips-elf/pie-n32.d: New file. * ld-mips-elf/pie-n64.d: Likewise. * ld-mips-elf/pie-o32.d: Likewise. * ld-mips-elf/pie.s: Likewise. * ld-mips-elf/mips-elf.exp: Add new tests. commit 920d644c6377a0bf7419ae8a24bac6e101beb847 Author: GDB Administrator Date: Fri Jun 26 00:00:07 2015 +0000 Automatic date update in version.in commit 3f3070745b78c25d7b16c913c15496b296802505 Author: DJ Delorie Date: Thu Jun 25 17:20:15 2015 -0400 Fix REL handling for MSP430 * elf32-msp430.c (msp430_final_link_relocate): Fix comments. Fix REL loads to match RELA stores. commit 946748d5ed1d218adfccd523be9fdf280adfe434 Author: H.J. Lu Date: Thu Jun 25 12:12:43 2015 -0700 Don't set sh_size for .shstrtab twice _bfd_elf_assign_file_positions_for_non_load will set the sh_size field for .shstrtab section. There is need to initialize it in _bfd_elf_compute_section_file_positions. * elf.c (_bfd_elf_compute_section_file_positions): Don't initialize sh_size for .shstrtab here. commit bf7b9cd9aa4645119792e9d1689e0f014f43934f Author: Simon Marchi Date: Thu Jun 25 13:33:14 2015 -0400 py-prettyprint.exp: Add is_address_zero_readable check gdb/testsuite/ChangeLog: * gdb.python/py-prettyprint.exp (run_lang_tests): Add is_address_zero_readable check. commit 06e78fc77dfcb8a63e44a790c9731db0eaebe87d Author: H.J. Lu Date: Thu Jun 25 10:14:13 2015 -0700 Run ld-elf/strtab only on linux/gnu targets Since not all ELF targets support -shared, we limit ld-elf/strtab to linux and gnu targets. * ld-elf/strtab.d: Only run on *-*-linux* and *-*-gnu* targets. commit 4a677ba7249d61afc58b761c997cf1a743279e02 Author: H.J. Lu Date: Thu Jun 25 10:05:10 2015 -0700 Update .strtab section sizes in mmix tests Since commit ef10c3ace00674e8c3599c3bf95f06c87d68898b may reduce .strtab section size, we need to adjust expected .strtab section sizes in mmix tests. gas/testsuite/ * gas/mmix/loc-3.d: Updated. * gas/mmix/loc-5.d: Likewise. ld/testsuite/ * ld-mmix/bspec1.d: Updated. * ld-mmix/bspec2.d: Likewise. * ld-mmix/undef-3.d: Likewise. commit ef10c3ace00674e8c3599c3bf95f06c87d68898b Author: H.J. Lu Date: Thu Jun 25 08:16:00 2015 -0700 Use strtab with GC and suffix merging for .strtab This patch uses ELF strtab with GC and suffix merging support to create ELF .strtab section. There is some small memory overhead to use ELF strtab: ==14928== HEAP SUMMARY: ==14928== in use at exit: 3,276,318 bytes in 679 blocks ==14928== total heap usage: 1,544 allocs, 865 frees, 15,259,146 bytes allocated vs. ==14936== HEAP SUMMARY: ==14936== in use at exit: 3,276,318 bytes in 679 blocks ==14936== total heap usage: 1,532 allocs, 853 frees, 15,026,402 bytes allocated when running: ./ld-new -m elf_x86_64 -o tmpdir/ld-partial.o -r ldgram.o ldlex-wrapper.o lexsup.o ldlang.o mri.o ldctor.o ldmain.o plugin.o ldwrite.o ldexp.o ldemul.o ldver.o ldmisc.o ldfile.o ldcref.o eelf_x86_64.o eelf32_x86_64.o eelf_i386.o eelf_iamcu.o ei386linux.o eelf_l1om.o eelf_k1om.o ldbuildid.o The results are [32] .strtab STRTAB 0+ 3beff8 00407a 00 0 0 1 vs [32] .strtab STRTAB 0+ 3beff8 0041d8 00 0 0 1 It reduces the .strtab size by 350 bytes, about 2% Saving on libc.so from glibc is much more since libc.so has many alias symbols with the same suffix. For x32 glibc, [82] .strtab STRTAB 0+ 81b348 0159e7 00 0 0 1 vs [82] .strtab STRTAB 0+ 81b8bc 019e72 00 0 0 1 It reduces the .strtab size by 17547 bytes, about 16%. bfd/ PR gas/18451 * elf-bfd.h (elf_sym_strtab): New. (elf_link_hash_table): Add strtabcount, strtabsize and strtab. (_bfd_elf_stringtab_init): Removed. * elf.c (_bfd_elf_stringtab_init): Removed. (_bfd_elf_compute_section_file_positions): Replace bfd_strtab_hash/_bfd_elf_stringtab_init/_bfd_stringtab_free/ _bfd_stringtab_size with elf_strtab_hash/_bfd_elf_strtab_init/_bfd_elf_strtab_free/ _bfd_elf_strtab_size. Use _bfd_elf_strtab_add, _bfd_elf_strtab_finalize and _bfd_elf_strtab_offset to get st_name. (swap_out_syms): Likewise. * elflink.c (elf_final_link_info): Replace bfd_strtab_hash with elf_strtab_hash. Remove symbuf, symbuf_count, symbuf_size and shndxbuf_size. (elf_link_flush_output_syms): Removed. (elf_link_output_sym): Renamed to ... (elf_link_output_symstrtab): This. Replace _bfd_stringtab_add with _bfd_elf_strtab_add. Don't flush symbols to the file nor swap out symbols. (elf_link_swap_symbols_out): New. (elf_link_output_extsym): Replace elf_link_output_sym with elf_link_output_symstrtab. (elf_link_input_bfd): Likewise. (elf_final_link_free): Replace _bfd_stringtab_free with _bfd_elf_strtab_free. Remove symbuf. (bfd_elf_final_link): Replace _bfd_elf_stringtab_init with _bfd_elf_strtab_init. Don't set symbuf, symbuf_count, symbuf_size nor shndxbuf_size. Initialize strtabsize and strtab. Initialize symshndxbuf to -1 when number of sections >= 64K. Replace elf_link_output_sym/elf_link_output_sym with elf_link_output_symstrtab/elf_link_output_symstrtab. Don't call elf_link_flush_output_syms. Call _bfd_elf_strtab_finalize and elf_link_swap_symbols_out. Replace _bfd_stringtab_size and _bfd_stringtab_emit with _bfd_elf_strtab_size and _bfd_elf_strtab_emit. gas/testsuite/ PR gas/18451 * gas/elf/elf.exp: Run strtab. * gas/elf/strtab.d: New file. * gas/elf/strtab.s: Likewise. ld/testsuite/ PR gas/18451 * ld-elf/strtab.d: New file. * ld-elf/strtab.s: Likewise. commit f8773be1be076f828b93ac3bebeab3f782e191e4 Author: Gary Benson Date: Thu Jun 25 09:54:12 2015 +0100 Correctly notice empty sysroots in solib_find_1 Some parts of solib_find_1 should only operate if the sysroot is nonempty after processing, but the logic that checked this happened before trailing slashes were stripped so empty but non-NULL sysroots were possible. This commit moves the logic so it correctly notices all empty sysroots. gdb/ChangeLog: * solib.c (solib_find_1): Set local variable sysroot to NULL if it is the empty string after trailing slashes have been stripped. commit a3be80c3c54e9e2c0d8e9a1ff77c931cd8ebeb60 Author: Gary Benson Date: Wed Jun 24 16:06:49 2015 +0100 Remove gdb_sysroot NULL checks Since fed040c6a50399617d8265cbddc7fd21b3f134ef gdb_sysroot is never NULL. This commit removes all gdb_sysroot NULL checks. gdb/ChangeLog: * exec.c (exec_file_locate_attach): Remove gdb_sysroot NULL check. * infrun.c (follow_exec): Likewise. * remote.c (remote_filesystem_is_local): Likewise. * solib.c (solib_find_1): Likewise. commit 53f7371c77f50aea587cf06bf4cc79273ee1382e Author: GDB Administrator Date: Thu Jun 25 00:00:16 2015 +0000 Automatic date update in version.in commit 68c3545dc3bf31e41572a3e9ada3e189dc704b0c Author: H.J. Lu Date: Wed Jun 24 15:27:44 2015 -0700 Remove the extra @section .cfi_lsda Commit 2f0c68f23bb3132cd5ac466ca8775c0d9e4960cd added an extra @section .cfi_lsda: @subsection @code{.cfi_lsda @var{encoding} [, @var{exp}]} +@section @code{.cfi_lsda @var{encoding} [, @var{exp}]} @code{.cfi_lsda} defines LSDA and its encoding. It shouldn't be there. * doc/as.texinfo (.cfi_lsda): Remove the extra @section. commit 7cc152be3e6f24f2bdb9740157426dc115cdaa54 Author: H.J. Lu Date: Wed Jun 24 14:12:15 2015 -0700 Silence older GCC warning * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): Silence older GCC warning. commit 32fad71f9e6cdf73fe3c10123b23f42397b83e7d Author: Keith Seitz Date: Thu Jun 4 10:13:50 2015 -0700 Fix lrealpath memory leak in build_id_to_debug_bfd Valgrind reports memory leaking from build_id_to_debug_bfd: ==7261== 88 bytes in 2 blocks are definitely lost in loss record 31,319 of 35,132 ==7261== at 0x4A06BCF: malloc (vg_replace_malloc.c:296) ==7261== by 0x32CA88A9B9: strdup (strdup.c:42) ==7261== by 0xFE62AB: lrealpath (lrealpath.c:88) ==7261== by 0x7F7AD6: build_id_to_debug_bfd (build-id.c:116) ==7261== by 0x7F7BB5: find_separate_debug_file_by_buildid (build-id.c:149) ==7261== by 0x6D9382: elf_symfile_read (elfread.c:1348) ==7261== by 0x777F02: read_symbols (symfile.c:875) ==7261== by 0x778505: syms_from_objfile_1 (symfile.c:1078) ==7261== by 0x778548: syms_from_objfile (symfile.c:1094) ==7261== by 0x778746: symbol_file_add_with_addrs (symfile.c:1191) ==7261== by 0x77893B: symbol_file_add_from_bfd (symfile.c:1280) ==7261== by 0x8E51E3: solib_read_symbols (solib.c:706) ==7261== by 0x8E58AF: solib_add (solib.c:1029) This occurs because commit 1be5090b in bfd, addressing PR 11983, started taking a copy of the input filename instead of directly caching it. It appears that this code was never updated to reflect that API change. This simple patch creates a cleanup to free the return value for lrealpath. gdb/ChangeLog * build-id.c (build_id_to_debug_bfd): Add cleanup to free return value from lrealpath. commit 7c1e8d3ed5e48b3339d60450fdb5b29ae54edebe Author: H.J. Lu Date: Wed Jun 24 13:37:05 2015 -0700 Keep .plt section and DT_PLTGOT for prelink Since the .plt section and DT_PLTGOT are used by prelink to undo prelinking for dynamic relocations, we must keep them even if there is no PLT relocation. This patch reverted commit a3747075a. bfd/ * elf32-i386.c (elf_i386_allocate_dynrelocs): Always allocate space for the first .plt entry. (elf_i386_size_dynamic_sections): Always add DT_PLTGOT for .plt section. Add DT_PLTRELSZ, DT_PLTREL and DT_JMPREL only if there are PLT relocations. * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Always allocate space for the first .plt entry. (elf_x86_64_size_dynamic_sections): Always add DT_PLTGOT for .plt section. Add DT_PLTRELSZ, DT_PLTREL and DT_JMPREL only if there are PLT relocations. ld/testsuite/ * ld-i386/i386.exp: Run pltgot-2 for Linux targets. * ld-x86-64/x86-64.exp: Likewise. * ld-i386/pltgot-1.d: Updated. * ld-x86-64/pltgot-1.d: Likewise. * ld-i386/pltgot-2.d: New file. * ld-x86-64/pltgot-2.d: Likewise. commit f91ca6bc00c1e3c70c1d2f4527d4297b76e2eaca Author: Iain Buclaw Date: Wed Jun 24 21:43:02 2015 +0200 Sync libiberty from GCC, replaying updates to configure scripts commit 59cab532835904f368b0aa99267afba5fda5ded2 Author: H.J. Lu Date: Wed Jun 24 10:13:55 2015 -0700 Don't convert R_X86_64_GOTPCREL if it will overflow When converting "mov foo@GOTPCREL(%rip), %reg" to "lea foo(%rip), %reg" with R_X86_64_PC32 relocation, it may overflow if the target section is more than 2GB away. This patch estimates distance between mov instruction and the target section. We convert R_X86_64_GOTPCREL to R_X86_64_PC32 only if their distance is less than 2GB. PR ld/18591 * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): Don't convert R_X86_64_GOTPCREL to R_X86_64_PC32 if it will cause relocation overflow. commit 602a67cbeaf6b42bc513a873aec82e53235b8754 Author: Mike Frysinger Date: Wed Jun 24 22:09:07 2015 +0700 sim: trace: drop unused trace_one_insn Everyone has migrated to the split functions (trace_prefix + trace_generic) a while ago, so we can drop this one now. commit 9b6025d1691e83eb5e85805df88a67083972ecca Author: Mike Frysinger Date: Wed Jun 24 21:59:26 2015 +0700 sim: trace: rename debug_printf fully Rather than redirect using a define, just rename the symbol fully. commit fa8f87e53b68881c5e3aab296b517203407c4378 Author: Mike Frysinger Date: Wed Jun 24 19:37:21 2015 +0545 sim: trace: add a basic cpu register class The bfin/msp430 ports already had trace logic set up for reading/writing cpu registers, albeit using different unrelated levels (core & vpu). Add a proper register class for these and for other ports. commit cf304b56ca48631836bdc4035134b5b5ec3b9d49 Author: Mike Frysinger Date: Wed Jun 24 01:00:16 2015 +0545 sim: trace: add set of system helpers Some code paths trace on a system instance and not a cpu instance (like the events code), so add some helpers for those cases. commit 87d1b30944783ae0efb49236c6d872d775a37417 Author: Mike Frysinger Date: Wed Jun 24 21:23:12 2015 +0700 gdb: sim: merge the sysroot update logic together Initialize the local sysroot fully before we start using it. This keeps it all a bit simpler. commit 8371bf0cd99635c9eabed28481b34ea8934a948e Author: Mike Frysinger Date: Wed Jun 24 19:06:38 2015 +0545 sim: trace: document alu/fpu/vpu trace options better Make the acronyms clear for people. commit 201e8dfdc8926c0b15bd9bebc762612ce196fd00 Author: Peter Bergner Date: Wed Jun 24 09:15:29 2015 -0500 Add missing ChangeLog entries for yesterday's commmit below. gdb/testsuite/ * gdb.arch/powerpc-power.exp : Fixup test results. * gdb.arch/powerpc-power.s : Likewise. commit 23bf70af12aa0c14e79c02b6098117bdba8c8a3a Author: Mike Frysinger Date: Tue Jun 23 11:29:39 2015 -0400 gdb: sim: handle target sysroot prefix The default gdb sysroot now sets itself to "target:". This works for most remote targets, but when using the simulator, this causes problems as the sim will attempt to search for that path. Update the remote-sim logic to skip this leading prefix when it is found so that the sysroot isn't passed in as an invalid value. commit 5cd867b414fe3609dbf596c373343474132775a8 Author: Yao Qi Date: Wed Jun 24 14:53:03 2015 +0100 Call set_gdbarch_get_siginfo_type in linux_init_abi linux_get_siginfo_type is installed to many linux gdbarch. This patch is to move this to a common area linux-tdep.c:linux_init_abi, so that linux_get_siginfo_type is installed to every linux gdbarch. If some linux gdbarch needs its own version, please override it in $ARCH_linux_init_abi. In the testsuite, we enable siginfo related tests for all linux targets. gdb: 2015-06-24 Yao Qi * aarch64-linux-tdep.c (aarch64_linux_init_abi): Don't call set_gdbarch_get_siginfo_type. * amd64-linux-tdep.c (amd64_linux_init_abi_common): Likewise. * arm-linux-tdep.c (arm_linux_init_abi): Likewise. * i386-linux-tdep.c (i386_linux_init_abi): Likewise. * m68klinux-tdep.c (m68k_linux_init_abi): Likewise. * ppc-linux-tdep.c (ppc_linux_init_abi): Likewise. * s390-linux-tdep.c (s390_gdbarch_init): Likewise. * tilegx-linux-tdep.c (tilegx_linux_init_abi): Likewise. * linux-tdep.c (linux_get_siginfo_type): Change it to static. (linux_init_abi): Call set_gdbarch_get_siginfo_type. * linux-tdep.h (linux_get_siginfo_type): Remove the declaration. gdb/testsuite: 2015-06-24 Yao Qi * lib/gdb.exp (supports_get_siginfo_type): Return 1 for all linux targets. commit 4d7be0075acd2083772944209c765a7c332a1727 Author: Yao Qi Date: Wed Jun 24 14:53:03 2015 +0100 New proc supports_get_siginfo_type Both siginfo-obj.exp and siginfo-thread.exp have the same code checking the support of geting a type of siginfo for a given arch. This patch is to move these code into a proc supports_get_siginfo_type. gdb/testsuite: 2015-06-24 Yao Qi * lib/gdb.exp (supports_get_siginfo_type): New proc. * gdb.base/siginfo-obj.exp: Invoke supports_get_siginfo_type. * gdb.base/siginfo-thread.exp: Likewise. commit dc06243f6f87aa52222dab0ef45bb9a5119724da Author: Gary Benson Date: Wed Jun 24 11:59:03 2015 +0100 Remove redundant include directives. stdint.h was added to common-defs.h some months ago and should no longer be included directly by any file. gdb_assert.h was added to common-defs.h nearly a year ago, but three includes have crept in since then. This commit removes all such redundant include directives. gdb/ChangeLog: * common/buffer.c (stdint.h): Do not include. * common/print-utils.c (stdint.h): Likewise. * compile/compile-c-symbols.c (gdb_assert.h): Likewise. * compile/compile-c-types.c (gdb_assert.h): Likewise. * ft32-tdep.c (gdb_assert.h): Likewise. * guile/scm-utils.c (stdint.h): Likewise. * i386-linux-tdep.c (stdint.h): Likewise. * i386-tdep.c (stdint.h): Likewise. * nat/linux-btrace.c (stdint.h): Likewise. * nat/linux-btrace.h (stdint.h): Likewise. * nat/linux-ptrace.c (stdint.h): Likewise. * nat/mips-linux-watch.h (stdint.h): Likewise. * ppc-linux-nat.c (stdint.h): Likewise. * python/python-internal.h (stdint.h): Likewise. * stub-termcap.c (stdlib.h): Likewise. * target/target.h (stdint.h): Likewise. * xtensa-linux-nat.c (stdint.h): Likewise. gdb/gdbserver/ChangeLog: * linux-i386-ipa.c (stdint.h): Do not include. * lynx-i386-low.c (stdint.h): Likewise. * lynx-ppc-low.c (stdint.h): Likewise. * mem-break.c (stdint.h): Likewise. * thread-db.c (stdint.h): Likewise. * tracepoint.c (stdint.h): Likewise. * win32-low.c (stdint.h): Likewise. commit 44d51e2c27f2154970c046089be768f503b996b1 Author: GDB Administrator Date: Wed Jun 24 00:00:08 2015 +0000 Automatic date update in version.in commit 0fc26cafacfff9f53d898bb73495b384b80d6d31 Author: Patrick Palka Date: Tue Jun 23 10:01:38 2015 -0400 Fix GDBHISTSIZE test failure on i686 The test test_histsize_history_setting "99999999999999999999999999999999999" "unlimited" was failing on i686 because the condition in init_history() for determining whether to map a large GDBHISTSIZE value to infinity was long var = strtol (tmpenv); if (var > INT_MAX) history_size = unlimited; but this condition is never true on i686 because INT_MAX == LONG_MAX. So in order to properly map large out-of-range values of GDBHISTSIZE to infinity on targets where LONG_MAX > INT_MAX as well as on i686, we have to instead change the above condition to if (var > INT_MAX || (var == INT_MAX && errno == ERANGE)) history_size = unlimited; gdb/ChangeLog: * top.c (init_history): Look at errno after calling strtol to properly map large GDBHISTSIZE values to infinity. commit e750549018d67d545bdaf90cc058f97b954600cc Author: Mike Frysinger Date: Wed Jun 24 00:36:06 2015 +0545 sim: common: replace SIM_FILTER_PATH with lbasename This helper macro has largely the same behavior as libiberty's lbasename. There is a slight nuance related to colons, but it's not clear what the point of that is, and the code implies that it just wants the basename. commit 8d0978fb4bf62e760e7b50e59d5c58d30c059183 Author: Mike Frysinger Date: Tue Jun 23 23:43:48 2015 +0545 sim: use AS_HELP_STRING everywhere This helps standardize the configure --help output. commit a38fe4feddd68b9c0aa082dd078c668ca9f06aae Author: Doug Evans Date: Tue Jun 23 11:36:49 2015 -0700 inferior.h (struct inferior_suspend_state): Delete, unused. gdb/ChangeLog: * inferior.h (struct inferior_suspend_state): Delete, unused. All references deleted. commit 8e6500c55ef0b9413ab16e384dbfcaa238bcd420 Author: Peter Bergner Date: Tue Jun 23 13:33:05 2015 -0500 Fix rfebb gdb test cases. The following patch fixed the assembly / disassembly of the rfebb instruction: https://sourceware.org/ml/binutils/2015-06/msg00190.html This patch updates the gdb testsuite to match the new disassembly behavior. gdb/testsuite/ * gdb.arch/powerpc-power.exp : Fixup test results. * gdb.arch/powerpc-power.s : Likewise. commit 4953dc20941a48eed02b575cec29d8de419f87eb Author: Mike Frysinger Date: Tue Jun 23 23:42:29 2015 +0545 sim: trace: do not enable internal debug by default Since --trace-debug is for people hacking on the sim sources rather than people just using the sim, default it to off. This matches the behavior of other debug knobs we have. commit b50a153264dae2267e3846772819515c648e3c97 Author: Mike Frysinger Date: Tue Jun 23 23:39:52 2015 +0545 sim: assume recentish compiler/systems Assume the build system supports stdint.h/stdarg.h as those have been around long enough and we don't care about pre-stdc compilers anymore. commit 7564fe458c2fe1a77eecfaf5e2f99bec8961d457 Author: Mike Frysinger Date: Sun Jun 21 14:13:03 2015 -0400 gdb: microblaze: delete useless stubs These don't accomplish anything the common core doesn't already, so punt them as they purely waste code. commit 0bdb2f78497a1b3be65d1428cc02f7d4e1d3a888 Author: Yao Qi Date: Tue Jun 23 14:03:11 2015 +0100 Convert have_ptrace_getregset to a tri-state boolean have_ptrace_getregset is a tri-state variable (-1, 0, 1), and we have some conditions like "if (have_ptrace_getregset)", which is not correct. I'll explain why it is not correct in the following example. This fix to this problem to replace the test (have_ptrace_getregset) to test (have_ptrace_getregset == 1) or (have_ptrace_getregset == -1) etc. However Doug thinks it hinders readability https://sourceware.org/ml/gdb-patches/2015-05/msg00692.html so I decide to add a new enum tribool and change have_ptrace_getregset to it, in order to make these tests more readable. have_ptrace_getregset is initialised to -1, and is adjusted to 0 or 1 in $ARCH_linux_read_description according to the capability of the kernel. However, it is possible that have_ptrace_getregset is used before it is set to 0 or 1, which means it is still -1. This is shown below. (gdb) run Starting program: gdb/testsuite/gdb.base/break Breakpoint 2, amd64_linux_fetch_inferior_registers (ops=0xceaa80, regcache=0xe72000, regnum=16) at git/gdb/amd64-linux-nat.c:128 128 { top?p have_ptrace_getregset $1 = TRIBOOL_UNKNOWN top?c Continuing. Breakpoint 2, amd64_linux_fetch_inferior_registers (ops=0xceaa80, regcache=0xe72000, regnum=16) at git/gdb/amd64-linux-nat.c:128 128 { top?c Continuing. Breakpoint 1, x86_linux_read_description (ops=0xceaa80) at git/gdb/x86-linux-nat.c:117 117 { PTRACE_GETREGSET command is used even GDB doesn't know whether PTRACE_GETREGSET is supported or not. It is wrong, but works on x86. However it doesn't work on arm-linux if the kernel doesn't support PTRACE_GETREGSET at all. We'll get: (gdb) run Starting program: gdb/testsuite/gdb.base/break warning: Unable to fetch general register. PC register is not available gdb: 2015-06-23 Yao Qi * amd64-linux-nat.c (amd64_linux_fetch_inferior_registers): Check whether have_ptrace_getregset is TRIBOOL_TRUE explicitly. (amd64_linux_store_inferior_registers): Likewise. * arm-linux-nat.c (fetch_fpregister): Likewise. (fetch_fpregs, store_fpregister): Likewise. (store_fpregister, store_fpregs): Likewise. (fetch_register, fetch_regs): Likewise. (store_register, store_regs): Likewise. (fetch_vfp_regs, store_vfp_regs): Likewise. (arm_linux_read_description): Check have_ptrace_getregset is TRIBOOL_UNKNOWN. Set have_ptrace_getregset to TRIBOOL_TRUE or TRIBOOL_FALSE. * i386-linux-nat.c (fetch_xstateregs): Check have_ptrace_getregset is not TRIBOOL_TRUE. (store_xstateregs): Likewise. * linux-nat.c (have_ptrace_getregset): Change its type to enum tribool. * linux-nat.h (tribool): New enum. * x86-linux-nat.c (x86_linux_read_description): Use enum tribool. Check whether have_ptrace_getregset is TRIBOOL_TRUE. commit c217058957a45a93481da35e1531ed120750d739 Author: Jiong Wang Date: Tue Jun 23 12:12:06 2015 +0100 [AArch64] Generate DT_TEXTREL for relocation against read-only section 2015-06-23 Jiong Wang bfd/ * elfnn-aarch64.c (aarch64_readonly_dynrelocs): New function. (elfNN_aarch64_size_dynamic_sections): Traverse hash table to check relocations against read-only sections. ld/testsuite/ * ld-aarch64/dt_textrel.s: New testcase. * ld-aarch64/dt_textrel.d: New expectation file. * ld-aarch64/aarch64-elf.exp: Run new testcase. commit e5ee3fe285c698f1ce3d9bbb596bcda6219f5f3a Author: GDB Administrator Date: Tue Jun 23 00:00:08 2015 +0000 Automatic date update in version.in commit 7b9341139a693eac8d316275004b2d752b1f0cb8 Author: Peter Bergner Date: Mon Jun 22 14:55:24 2015 -0500 PPC sync instruction accepts invalid and incompatible operands ISA 2.07 added a new category called Elemental Memory Barriers that modifies the sync instruction to accept an additional operand ESYNC. Edmar added support for this insruction varient here: https://sourceware.org/ml/binutils/2012-02/msg00221.html Looking at this closer, I see that the insert_ls() function is misnamed (since it's attached to the ESYNC operand, not the LS operand) but more importantly, it is silently modifying the LS operand value behind the users back when the LS operand is either invalid or is incompatible with the new ESYNC operand. The ISA 2.07 doc has an Assembler Note that clearly states that assemblers that support the ESYNC operand should report all invalid uses of LS and ESYNC. This patch changes the assembler to error out on invalid and incompatible operand usage. opcodes/ * ppc-opc.c (insert_ls): Test for invalid LS operands. (insert_esync): New function. (LS, WC): Use insert_ls. (ESYNC): Use insert_esync. gas/testsuite/ * gas/ppc/e6500.s : Fix invalid test. * gas/ppc/e6500.d: Likewise. commit bdc4de1b24353c4213e404029252ec75065499de Author: Nick Clifton Date: Mon Jun 22 16:53:27 2015 +0100 Stop "objdump -d" from disassembling past a symbolic address. include * dis-asm.h (struct disassemble_info): Add stop_vma field. binuti * objdump.c (disassemble_bytes): Set the stop_vma field in the disassemble_info structure when disassembling code sections with -d. * doc/binutils.texi (objdump): Document the discrepancy between -d and -D. opcodes * dis-buf.c (buffer_read_memory): Fail is stop_vma is set and the requested region lies beyond it. * bfin-dis.c (print_insn_bfin): Ignore sysop instructions when looking for 32-bit insns. * mcore-dis.c (print_insn_mcore): Disable stop_vma when reading data. * sh-dis.c (print_insn_sh): Likewise. * tic6x-dis.c (print_insn_tic6x): Disable stop_vma when reading blocks of instructions. * vax-dis.c (print_insn_vax): Check that the requested address does not clash with the stop_vma. tests * gas/arm/backslash-at.s: Add extra .byte directives so that the foo symbol does not appear to point half way through an instruction. * gas/arm/backslash-at.d: Update expected disassembly. * gas/i386/ilp32/x86-64-opcode-inval-intel.d: Likewise. * gas/i386/ilp32/x86-64-opcode-inval.d: Likewise. * gas/i386/x86-64-opcode-inval-intel.d: Likewise. * gas/i386/x86-64-opcode-inval.d: Likewise. commit 07fcd30112bb071e8dda0a2229a860f2874a7816 Author: Yao Qi Date: Tue Apr 28 10:59:04 2015 +0100 Add comments on using board file remote-gdbserver-on-localhost.exp This commit is to add comments on using this board file and the requirements on localhost. gdb/testsuite: 2015-06-22 Yao Qi * boards/remote-gdbserver-on-localhost.exp: Add comments. commit 52042a003f3e9200c992bc5cf4607dc7655b1f7b Author: Yao Qi Date: Mon Jun 22 13:41:33 2015 +0100 Don't skip hw breakpoint/watchpoint tests for aarch64 target This patch is to let skip_hw_breakpoint_tests and skip_hw_watchpoint_tests return 0 for aarch64 target, since aarch64 has HW watchpoint and breakpoint registers. With this patch applied, about 1560 watchpoint/breakpoint related tests become enabled on aarch64-linux native testing. gdb/testsuite: 2015-06-22 Yao Qi * lib/gdb.exp (skip_hw_breakpoint_tests): Return 0 for target aarch64*-*-*. (skip_hw_watchpoint_tests): Likewise. commit cb5d172ca44e20200b96b5276c4198095d7b6516 Author: GDB Administrator Date: Mon Jun 22 00:00:07 2015 +0000 Automatic date update in version.in commit ccd4b2953bb039e91b301a616c5f7c6f542b6b10 Author: Mike Frysinger Date: Sat Jun 20 15:21:26 2015 +0545 sim: common: add basic model assert If the configured in default doesn't match a known value, throw an assertion failure rather than segfaulting deeper down. commit f55b33d51b056c665568c6204bd3ced7f1ec15c8 Author: Mike Frysinger Date: Sat Jun 20 09:33:04 2015 +0545 sim: common: use standard intXX_t types for signedXX Let's assume that the system supports the POSIX int8/16/32/64_t types as this collapses the logic significantly. commit 618b526e31d3df71e9526a0753271624a568564e Author: Mike Frysinger Date: Sat Jun 20 09:31:10 2015 +0545 sim: common: standardize multiple include defines We use SIM_xxx_H in most headers, so convert _SIM_xxx_H_ over to it. ----------------------------------------------------------------------- Summary of changes: ChangeLog | 75 + Makefile.in | 5058 +++++----- Makefile.tpl | 138 +- bfd/ChangeLog | 325 +- bfd/archures.c | 6 +- bfd/bfd-in.h | 5 +- bfd/bfd-in2.h | 34 +- bfd/bfd.c | 159 +- bfd/coffcode.h | 6 +- bfd/coffgen.c | 428 + bfd/cpu-nios2.c | 34 +- bfd/elf-attrs.c | 25 +- bfd/elf-bfd.h | 34 +- bfd/elf.c | 124 +- bfd/elf32-avr.c | 20 +- bfd/elf32-i386.c | 29 +- bfd/elf32-msp430.c | 40 +- bfd/elf32-nios2.c | 1029 ++- bfd/elf32-rl78.c | 3 +- bfd/elf64-ppc.c | 15 +- bfd/elf64-x86-64.c | 212 +- bfd/elflink.c | 274 +- bfd/elfnn-aarch64.c | 96 +- bfd/elfxx-aarch64.c | 2 + bfd/elfxx-mips.c | 38 +- bfd/libbfd.h | 15 + bfd/libcoff-in.h | 12 + bfd/libcoff.h | 16 + bfd/po/SRC-POTFILES.in | 1 + bfd/reloc.c | 32 + bfd/version.h | 2 +- binutils/ChangeLog | 54 + binutils/doc/Makefile.in | 6 +- binutils/doc/binutils.texi | 25 +- binutils/objcopy.c | 13 +- binutils/objdump.c | 25 +- binutils/readelf.c | 75 +- binutils/testsuite/ChangeLog | 14 + binutils/testsuite/binutils-all/compress.exp | 116 +- binutils/testsuite/binutils-all/dw2-3.W | 4 +- config/ChangeLog | 70 + config/bitfields.m4 | 25 + config/bootstrap-lto-noplugin.mk | 6 + config/bootstrap-mpx.mk | 9 + config/dfp.m4 | 2 +- config/gcc-plugin.m4 | 113 + config/mh-alpha-linux | 3 + config/mh-darwin | 31 +- config/picflag.m4 | 12 +- config/sjlj.m4 | 12 + config/target-posix | 12 + config/warnings.m4 | 112 +- configure | 34 +- configure.ac | 35 +- gas/ChangeLog | 171 + gas/NEWS | 3 + gas/as.c | 4 +- gas/config/rl78-parse.y | 52 +- gas/config/tc-aarch64.c | 15 + gas/config/tc-arm.c | 22 +- gas/config/tc-avr.c | 18 +- gas/config/tc-avr.h | 2 + gas/config/tc-i386.c | 32 +- gas/config/tc-mips.c | 4 + gas/config/tc-nios2.c | 1579 +++- gas/config/tc-nios2.h | 3 + gas/config/tc-ppc.c | 3 +- gas/config/tc-rl78.c | 5 +- gas/doc/as.texinfo | 21 +- gas/doc/c-arm.texi | 7 +- gas/doc/c-i386.texi | 3 +- gas/doc/c-nios2.texi | 10 + gas/doc/c-ppc.texi | 3 + gas/input-scrub.c | 100 +- gas/messages.c | 8 +- gas/testsuite/ChangeLog | 236 + gas/testsuite/gas/aarch64/reloc-tlsldm-1.d | 10 + gas/testsuite/gas/aarch64/reloc-tlsldm-1.s | 6 + gas/testsuite/gas/aarch64/reloc-tlsldm-ilp32-1.d | 11 + gas/testsuite/gas/aarch64/reloc-tlsldm-ilp32-1.s | 6 + gas/testsuite/gas/arm/arch7em-bad.l | 262 +- gas/testsuite/gas/arm/arch7m-bad.l | 2 +- gas/testsuite/gas/arm/arm-idiv-bad.l | 2 +- gas/testsuite/gas/arm/arm7-bad.l | 2 +- gas/testsuite/gas/arm/armv1-bad.l | 2 +- gas/testsuite/gas/arm/attr-march-armv6kz.d | 14 + gas/testsuite/gas/arm/attr-march-armv6kzt2.d | 14 + gas/testsuite/gas/arm/backslash-at.d | 18 +- gas/testsuite/gas/arm/backslash-at.s | 7 +- gas/testsuite/gas/arm/thumb-w-bad.l | 4 +- gas/testsuite/gas/arm/vfpv3-const-conv.d | 4 +- gas/testsuite/gas/avr/pc-relative-reloc.d | 19 + gas/testsuite/gas/avr/per-function-debugline.s | 35 + gas/testsuite/gas/elf/elf.exp | 2 + gas/testsuite/gas/elf/strtab.d | 7 + gas/testsuite/gas/elf/strtab.s | 8 + gas/testsuite/gas/i386/arch-13-znver1.d | 5 + gas/testsuite/gas/i386/arch-13.d | 7 +- gas/testsuite/gas/i386/arch-13.s | 6 +- gas/testsuite/gas/i386/avx512dq-intel.d | 84 +- gas/testsuite/gas/i386/avx512dq.d | 4 + gas/testsuite/gas/i386/avx512dq.s | 4 + gas/testsuite/gas/i386/avx512dq_vl-intel.d | 168 +- gas/testsuite/gas/i386/avx512dq_vl.d | 8 + gas/testsuite/gas/i386/avx512dq_vl.s | 8 + gas/testsuite/gas/i386/dw2-compress-1.d | 4 +- gas/testsuite/gas/i386/i386.exp | 4 + .../gas/i386/ilp32/x86-64-opcode-inval-intel.d | 12 +- gas/testsuite/gas/i386/ilp32/x86-64-opcode-inval.d | 12 +- gas/testsuite/gas/i386/mwaitx-bdver4.d | 17 + gas/testsuite/gas/i386/mwaitx-reg.l | 59 + gas/testsuite/gas/i386/mwaitx-reg.s | 8 + gas/testsuite/gas/i386/mwaitx.s | 9 + gas/testsuite/gas/i386/x86-64-arch-3-znver1.d | 5 + gas/testsuite/gas/i386/x86-64-arch-3.d | 7 +- gas/testsuite/gas/i386/x86-64-arch-3.s | 6 +- gas/testsuite/gas/i386/x86-64-avx512dq-intel.d | 84 +- gas/testsuite/gas/i386/x86-64-avx512dq.d | 4 + gas/testsuite/gas/i386/x86-64-avx512dq.s | 4 + gas/testsuite/gas/i386/x86-64-avx512dq_vl-intel.d | 168 +- gas/testsuite/gas/i386/x86-64-avx512dq_vl.d | 8 + gas/testsuite/gas/i386/x86-64-avx512dq_vl.s | 8 + gas/testsuite/gas/i386/x86-64-mwaitx-bdver4.d | 17 + gas/testsuite/gas/i386/x86-64-mwaitx-reg.l | 123 + gas/testsuite/gas/i386/x86-64-mwaitx-reg.s | 8 + gas/testsuite/gas/i386/x86-64-mwaitx.s | 9 + gas/testsuite/gas/i386/x86-64-opcode-inval-intel.d | 12 +- gas/testsuite/gas/i386/x86-64-opcode-inval.d | 12 +- gas/testsuite/gas/ia64/psn.d | 2 +- gas/testsuite/gas/ia64/xdata-ilp32.d | 2 +- gas/testsuite/gas/mmix/loc-3.d | 2 +- gas/testsuite/gas/mmix/loc-5.d | 2 +- gas/testsuite/gas/nios2/add-r2.d | 18 + gas/testsuite/gas/nios2/align_fill-r2.d | 25 + gas/testsuite/gas/nios2/align_text-r2.d | 24 + gas/testsuite/gas/nios2/aligned_text-r2.d | 24 + gas/testsuite/gas/nios2/and-r2.d | 19 + gas/testsuite/gas/nios2/andc.d | 17 + gas/testsuite/gas/nios2/andc.s | 12 + gas/testsuite/gas/nios2/bmx.d | 21 + gas/testsuite/gas/nios2/bmx.s | 15 + gas/testsuite/gas/nios2/branch-r2.d | 23 + gas/testsuite/gas/nios2/break-r2.d | 14 + gas/testsuite/gas/nios2/bret-r2.d | 10 + gas/testsuite/gas/nios2/cache-r2.d | 18 + gas/testsuite/gas/nios2/cache-r2.s | 21 + gas/testsuite/gas/nios2/call-r2.d | 13 + gas/testsuite/gas/nios2/call26-r2.d | 78 + gas/testsuite/gas/nios2/call26_noat-r2.d | 78 + gas/testsuite/gas/nios2/call_noat-r2.d | 13 + gas/testsuite/gas/nios2/cdx_add.d | 19 + gas/testsuite/gas/nios2/cdx_add.s | 12 + gas/testsuite/gas/nios2/cdx_and.d | 27 + gas/testsuite/gas/nios2/cdx_and.s | 20 + gas/testsuite/gas/nios2/cdx_break.d | 11 + gas/testsuite/gas/nios2/cdx_break.s | 8 + gas/testsuite/gas/nios2/cdx_callr.d | 9 + gas/testsuite/gas/nios2/cdx_callr.s | 6 + gas/testsuite/gas/nios2/cdx_jmpr.d | 11 + gas/testsuite/gas/nios2/cdx_jmpr.s | 6 + gas/testsuite/gas/nios2/cdx_ldbu.d | 17 + gas/testsuite/gas/nios2/cdx_ldbu.s | 11 + gas/testsuite/gas/nios2/cdx_ldhu.d | 17 + gas/testsuite/gas/nios2/cdx_ldhu.s | 11 + gas/testsuite/gas/nios2/cdx_ldw.d | 17 + gas/testsuite/gas/nios2/cdx_ldw.s | 11 + gas/testsuite/gas/nios2/cdx_ldwsp.d | 13 + gas/testsuite/gas/nios2/cdx_ldwsp.s | 7 + gas/testsuite/gas/nios2/cdx_mov.d | 17 + gas/testsuite/gas/nios2/cdx_mov.s | 11 + gas/testsuite/gas/nios2/cdx_neg.d | 13 + gas/testsuite/gas/nios2/cdx_neg.s | 7 + gas/testsuite/gas/nios2/cdx_not.d | 13 + gas/testsuite/gas/nios2/cdx_not.s | 7 + gas/testsuite/gas/nios2/cdx_or.d | 13 + gas/testsuite/gas/nios2/cdx_or.s | 7 + gas/testsuite/gas/nios2/cdx_pop.d | 17 + gas/testsuite/gas/nios2/cdx_pop.s | 11 + gas/testsuite/gas/nios2/cdx_push.d | 17 + gas/testsuite/gas/nios2/cdx_push.s | 11 + gas/testsuite/gas/nios2/cdx_relax.d | 22 + gas/testsuite/gas/nios2/cdx_relax.s | 27 + gas/testsuite/gas/nios2/cdx_ret.d | 11 + gas/testsuite/gas/nios2/cdx_ret.s | 4 + gas/testsuite/gas/nios2/cdx_sll.d | 21 + gas/testsuite/gas/nios2/cdx_sll.s | 14 + gas/testsuite/gas/nios2/cdx_spaddi.d | 13 + gas/testsuite/gas/nios2/cdx_spaddi.s | 7 + gas/testsuite/gas/nios2/cdx_spdeci.d | 13 + gas/testsuite/gas/nios2/cdx_spdeci.s | 7 + gas/testsuite/gas/nios2/cdx_srl.d | 21 + gas/testsuite/gas/nios2/cdx_srl.s | 14 + gas/testsuite/gas/nios2/cdx_stb.d | 21 + gas/testsuite/gas/nios2/cdx_stb.s | 15 + gas/testsuite/gas/nios2/cdx_sth.d | 17 + gas/testsuite/gas/nios2/cdx_sth.s | 11 + gas/testsuite/gas/nios2/cdx_stw.d | 21 + gas/testsuite/gas/nios2/cdx_stw.s | 15 + gas/testsuite/gas/nios2/cdx_stwsp.d | 13 + gas/testsuite/gas/nios2/cdx_stwsp.s | 7 + gas/testsuite/gas/nios2/cdx_sub.d | 19 + gas/testsuite/gas/nios2/cdx_sub.s | 12 + gas/testsuite/gas/nios2/cdx_trap.d | 11 + gas/testsuite/gas/nios2/cdx_trap.s | 8 + gas/testsuite/gas/nios2/cdx_xor.d | 13 + gas/testsuite/gas/nios2/cdx_xor.s | 7 + gas/testsuite/gas/nios2/cmp-r2.d | 26 + gas/testsuite/gas/nios2/comments-r2.d | 28 + gas/testsuite/gas/nios2/complex-r2.d | 14 + gas/testsuite/gas/nios2/ctl-r2.d | 22 + gas/testsuite/gas/nios2/custom-r2.d | 15 + gas/testsuite/gas/nios2/eni.d | 12 + gas/testsuite/gas/nios2/eni.s | 7 + gas/testsuite/gas/nios2/etbt-r2.d | 12 + gas/testsuite/gas/nios2/flushda-r2.d | 12 + gas/testsuite/gas/nios2/jmp-r2.d | 12 + gas/testsuite/gas/nios2/ldb-r2.d | 197 + gas/testsuite/gas/nios2/ldb-r2.s | 117 + gas/testsuite/gas/nios2/ldh-r2.d | 197 + gas/testsuite/gas/nios2/ldh-r2.s | 117 + gas/testsuite/gas/nios2/ldw-r2.d | 197 + gas/testsuite/gas/nios2/ldw-r2.s | 117 + gas/testsuite/gas/nios2/ldwm.d | 37 + gas/testsuite/gas/nios2/ldwm.s | 31 + gas/testsuite/gas/nios2/lineseparator-r2.d | 12 + gas/testsuite/gas/nios2/movia-r2.d | 22 + gas/testsuite/gas/nios2/mpx.d | 14 + gas/testsuite/gas/nios2/mpx.s | 9 + gas/testsuite/gas/nios2/mul-r2.d | 21 + gas/testsuite/gas/nios2/nop-r2.d | 11 + gas/testsuite/gas/nios2/nop-r2.s | 8 + gas/testsuite/gas/nios2/nor-r2.d | 11 + gas/testsuite/gas/nios2/or-r2.d | 13 + gas/testsuite/gas/nios2/rdprs-r2.d | 32 + gas/testsuite/gas/nios2/rdprs-r2.s | 28 + gas/testsuite/gas/nios2/registers-r2.d | 53 + gas/testsuite/gas/nios2/ret-r2.d | 10 + gas/testsuite/gas/nios2/rotate-r2.d | 19 + gas/testsuite/gas/nios2/stb-r2.d | 197 + gas/testsuite/gas/nios2/stb-r2.s | 117 + gas/testsuite/gas/nios2/sth-r2.d | 197 + gas/testsuite/gas/nios2/sth-r2.s | 117 + gas/testsuite/gas/nios2/stw-r2.d | 197 + gas/testsuite/gas/nios2/stw-r2.s | 117 + gas/testsuite/gas/nios2/stwm.d | 35 + gas/testsuite/gas/nios2/stwm.s | 29 + gas/testsuite/gas/nios2/sub-r2.d | 12 + gas/testsuite/gas/nios2/sync-r2.d | 10 + gas/testsuite/gas/nios2/trap-r2.d | 12 + gas/testsuite/gas/nios2/tret-r2.d | 9 + gas/testsuite/gas/nios2/wrpie.d | 20 + gas/testsuite/gas/nios2/wrpie.s | 16 + gas/testsuite/gas/nios2/wrprs-r2.d | 21 + gas/testsuite/gas/nios2/xor-r2.d | 13 + gas/testsuite/gas/ppc/e6500.d | 2 +- gas/testsuite/gas/ppc/e6500.s | 6 +- gas/testsuite/gas/ppc/titan.d | 4 +- gdb/ChangeLog | 1113 +++ gdb/MAINTAINERS | 3 +- gdb/Makefile.in | 20 +- gdb/NEWS | 82 +- gdb/aarch32-linux-nat.c | 99 + gdb/aarch32-linux-nat.h | 34 + gdb/aarch64-linux-nat.c | 898 +-- gdb/aarch64-linux-tdep.c | 1 - gdb/aarch64-tdep.c | 211 +- gdb/ada-lang.c | 8 +- gdb/amd64-linux-nat.c | 4 +- gdb/amd64-linux-tdep.c | 2 - gdb/arm-linux-nat.c | 298 +- gdb/arm-linux-tdep.c | 2 - gdb/arm-tdep.c | 9 +- gdb/ax-gdb.c | 6 +- gdb/block.c | 31 +- gdb/breakpoint.c | 11 +- gdb/btrace.c | 1178 +++- gdb/btrace.h | 85 + gdb/build-id.c | 143 +- gdb/build-id.h | 5 - gdb/c-exp.y | 6 +- gdb/c-lang.c | 2 +- gdb/c-typeprint.c | 6 +- gdb/c-valprint.c | 619 +- gdb/common/btrace-common.c | 97 + gdb/common/btrace-common.h | 56 +- gdb/common/buffer.c | 2 - gdb/common/gdb_regex.h | 1 - gdb/{nat => common}/linux-maps.c | 0 gdb/common/linux-maps.h | 64 + gdb/common/print-utils.c | 2 - gdb/compile/compile-c-symbols.c | 1 - gdb/compile/compile-c-types.c | 7 +- gdb/compile/compile-object-load.c | 27 +- gdb/completer.c | 4 +- gdb/config.in | 3 + gdb/config/aarch64/linux.mh | 4 +- gdb/config/arm/linux.mh | 2 +- gdb/config/i386/linux.mh | 2 +- gdb/config/i386/linux64.mh | 2 +- gdb/configure | 498 + gdb/configure.ac | 20 + gdb/configure.tgt | 55 +- gdb/cp-namespace.c | 6 +- gdb/cp-valprint.c | 4 +- gdb/d-valprint.c | 2 +- gdb/defs.h | 1 - gdb/doc/ChangeLog | 52 + gdb/doc/Makefile.in | 4 +- gdb/doc/gdb.texinfo | 317 +- gdb/doc/stabs.texinfo | 4 + gdb/dwarf2read.c | 36 +- gdb/eval.c | 4 +- gdb/exec.c | 5 +- gdb/f-exp.y | 2 +- gdb/f-typeprint.c | 2 +- gdb/f-valprint.c | 2 +- gdb/features/arm-with-m-fpa-layout.c | 2 + gdb/features/arm-with-m-fpa-layout.xml | 1 + gdb/features/arm-with-m-vfp-d16.c | 2 + gdb/features/arm-with-m-vfp-d16.xml | 1 + gdb/features/arm-with-m.c | 2 + gdb/features/arm-with-m.xml | 1 + gdb/features/arm-with-neon.c | 2 + gdb/features/arm-with-neon.xml | 1 + gdb/features/arm-with-vfpv2.c | 2 + gdb/features/arm-with-vfpv2.xml | 1 + gdb/features/arm-with-vfpv3.c | 2 + gdb/features/arm-with-vfpv3.xml | 1 + gdb/features/btrace-conf.dtd | 5 +- gdb/features/btrace.dtd | 14 +- gdb/features/library-list-svr4.dtd | 5 +- gdb/frame.c | 2 - gdb/frame.h | 2 - gdb/ft32-tdep.c | 2 - gdb/gdbserver/ChangeLog | 158 + gdb/gdbserver/Makefile.in | 5 +- gdb/gdbserver/configure.srv | 2 +- gdb/gdbserver/event-loop.c | 4 +- gdb/gdbserver/linux-aarch64-low.c | 809 +-- gdb/gdbserver/linux-i386-ipa.c | 1 - gdb/gdbserver/linux-low.c | 109 +- gdb/gdbserver/lynx-i386-low.c | 2 - gdb/gdbserver/lynx-ppc-low.c | 2 - gdb/gdbserver/mem-break.c | 2 - gdb/gdbserver/server.c | 51 +- gdb/gdbserver/thread-db.c | 2 - gdb/gdbserver/tracepoint.c | 2 - gdb/gdbserver/win32-low.c | 2 - gdb/gdbthread.h | 4 +- gdb/gdbtypes.c | 44 +- gdb/gdbtypes.h | 5 - gdb/gnu-v2-abi.c | 4 +- gdb/gnu-v3-abi.c | 6 +- gdb/go-exp.y | 2 +- gdb/go-lang.c | 8 +- gdb/go-typeprint.c | 2 +- gdb/go-valprint.c | 2 +- gdb/guile/scm-math.c | 8 +- gdb/guile/scm-utils.c | 1 - gdb/guile/scm-value.c | 10 +- gdb/i386-linux-nat.c | 4 +- gdb/i386-linux-tdep.c | 4 - gdb/i386-tdep.c | 18 +- gdb/infcall.c | 23 +- gdb/infcmd.c | 2 +- gdb/inferior.c | 39 +- gdb/inferior.h | 25 +- gdb/infrun.c | 48 +- gdb/interps.c | 1 - gdb/jv-lang.c | 2 +- gdb/jv-typeprint.c | 2 +- gdb/jv-valprint.c | 4 +- gdb/linespec.c | 26 +- gdb/linux-nat.c | 2 +- gdb/linux-nat.h | 3 +- gdb/linux-tdep.c | 5 +- gdb/linux-tdep.h | 2 - gdb/m2-typeprint.c | 6 +- gdb/m2-valprint.c | 10 +- gdb/m68klinux-tdep.c | 2 - gdb/mi/mi-main.c | 2 +- gdb/microblaze-tdep.c | 26 - gdb/monitor.c | 3 +- gdb/nat/aarch64-linux-hw-point.c | 559 ++ gdb/nat/aarch64-linux-hw-point.h | 186 + gdb/nat/linux-btrace.c | 470 +- gdb/nat/linux-btrace.h | 27 +- gdb/nat/linux-maps.h | 64 - gdb/nat/linux-namespaces.c | 12 +- gdb/nat/linux-ptrace.c | 2 - gdb/nat/mips-linux-watch.h | 2 - gdb/nios2-linux-tdep.c | 10 +- gdb/opencl-lang.c | 2 +- gdb/p-exp.y | 2 +- gdb/p-typeprint.c | 6 +- gdb/p-valprint.c | 8 +- gdb/ppc-linux-nat.c | 2 - gdb/ppc-linux-tdep.c | 2 - gdb/progspace.c | 27 +- gdb/progspace.h | 11 +- gdb/python/py-linetable.c | 8 +- gdb/python/py-type.c | 4 +- gdb/python/py-value.c | 14 +- gdb/python/python-internal.h | 2 - gdb/record-btrace.c | 175 +- gdb/record-full.c | 1 + gdb/remote-sim.c | 10 +- gdb/remote.c | 72 +- gdb/rl78-tdep.c | 15 +- gdb/rx-tdep.c | 342 +- gdb/s390-linux-tdep.c | 5 +- gdb/solib-svr4.c | 138 +- gdb/solib.c | 129 +- gdb/solib.h | 4 +- gdb/solist.h | 20 +- gdb/stack.c | 4 +- gdb/stub-termcap.c | 2 - gdb/symtab.c | 16 +- gdb/target/target.h | 2 - gdb/testsuite/ChangeLog | 197 + .../boards/remote-gdbserver-on-localhost.exp | 3 + gdb/testsuite/gdb.ada/info_exc.exp | 4 +- gdb/testsuite/gdb.ada/var_arr_typedef.exp | 44 + gdb/testsuite/gdb.ada/var_arr_typedef/pack.adb | 25 + gdb/testsuite/gdb.ada/var_arr_typedef/pack.ads | 29 + .../gdb.ada/var_arr_typedef/var_arr_typedef.adb | 28 + gdb/testsuite/gdb.arch/aarch64-atomic-inst.exp | 2 +- gdb/testsuite/gdb.arch/aarch64-fp.exp | 2 +- gdb/testsuite/gdb.arch/amd64-prologue-skip.S | 28 + gdb/testsuite/gdb.arch/amd64-prologue-skip.exp | 35 + gdb/testsuite/gdb.arch/arm-bl-branch-dest.exp | 2 +- gdb/testsuite/gdb.arch/arm-disp-step.exp | 2 +- gdb/testsuite/gdb.arch/i386-biarch-core.exp | 31 +- gdb/testsuite/gdb.arch/powerpc-power.exp | 4 +- gdb/testsuite/gdb.arch/powerpc-power.s | 2 +- gdb/testsuite/gdb.arch/thumb-bx-pc.exp | 2 +- gdb/testsuite/gdb.arch/thumb-prologue.exp | 2 +- gdb/testsuite/gdb.arch/thumb-singlestep.exp | 5 +- gdb/testsuite/gdb.asm/asm-source.exp | 6 +- gdb/testsuite/gdb.asm/asmsrc1.s | 1 + gdb/testsuite/gdb.base/catch-syscall.exp | 7 +- gdb/testsuite/gdb.base/completion.exp | 18 + gdb/testsuite/gdb.base/disp-step-syscall.exp | 2 +- gdb/testsuite/gdb.base/float.exp | 4 +- gdb/testsuite/gdb.base/gnu_vector.exp | 13 +- gdb/testsuite/gdb.base/history-duplicates.exp | 117 + gdb/testsuite/gdb.base/killed-outside.c | 34 + gdb/testsuite/gdb.base/killed-outside.exp | 130 + gdb/testsuite/gdb.base/range-stepping.exp | 21 - gdb/testsuite/gdb.base/sigaltstack.exp | 1 + gdb/testsuite/gdb.base/sigbpt.exp | 4 + gdb/testsuite/gdb.base/siginfo-obj.exp | 4 +- gdb/testsuite/gdb.base/siginfo-thread.exp | 4 +- gdb/testsuite/gdb.base/siginfo.exp | 4 + gdb/testsuite/gdb.base/sigstep.exp | 5 + gdb/testsuite/gdb.base/solib-mismatch-lib.c | 7 +- gdb/testsuite/gdb.base/solib-mismatch-libmod.c | 7 +- gdb/testsuite/gdb.base/solib-mismatch.c | 8 +- gdb/testsuite/gdb.base/solib-mismatch.exp | 46 +- gdb/testsuite/gdb.btrace/record_goto-step.exp | 47 + gdb/testsuite/gdb.compile/compile.c | 2 +- gdb/testsuite/gdb.compile/compile.exp | 76 +- gdb/testsuite/gdb.cp/var-tag-2.cc | 22 + gdb/testsuite/gdb.cp/var-tag-3.cc | 22 + gdb/testsuite/gdb.cp/var-tag-4.cc | 22 + gdb/testsuite/gdb.cp/var-tag.cc | 44 + gdb/testsuite/gdb.cp/var-tag.exp | 105 + gdb/testsuite/gdb.dlang/demangle.exp | 12 +- gdb/testsuite/gdb.multi/multi-arch-exec.exp | 18 +- gdb/testsuite/gdb.multi/multi-arch.exp | 18 +- gdb/testsuite/gdb.python/py-lazy-string.exp | 4 +- gdb/testsuite/gdb.python/py-prettyprint.exp | 6 +- gdb/testsuite/gdb.reverse/aarch64.exp | 2 +- gdb/testsuite/gdb.threads/hand-call-new-thread.c | 50 + gdb/testsuite/gdb.threads/hand-call-new-thread.exp | 48 + gdb/testsuite/gdb.trace/ax.exp | 2 + gdb/testsuite/gdb.trace/backtrace.exp | 3 + gdb/testsuite/gdb.trace/collection.exp | 4 + .../gdb.trace/mi-trace-frame-collected.exp | 2 + gdb/testsuite/gdb.trace/mi-trace-unavailable.exp | 2 + gdb/testsuite/gdb.trace/range-stepping.exp | 5 + gdb/testsuite/gdb.trace/report.exp | 4 + gdb/testsuite/gdb.trace/trace-break.exp | 2 + gdb/testsuite/gdb.trace/unavailable.exp | 4 + gdb/testsuite/gdb.trace/while-dyn.exp | 2 + gdb/testsuite/lib/gdb.exp | 70 +- gdb/testsuite/lib/range-stepping-support.exp | 21 + gdb/tic6x-tdep.c | 2 +- gdb/tilegx-linux-tdep.c | 2 - gdb/top.c | 81 +- gdb/tui/tui-data.c | 7 +- gdb/tui/tui-data.h | 10 +- gdb/tui/tui-hooks.c | 94 +- gdb/tui/tui-stack.c | 82 +- gdb/tui/tui-stack.h | 2 +- gdb/tui/tui-win.c | 110 +- gdb/typeprint.c | 2 +- gdb/valarith.c | 2 +- gdb/valops.c | 35 +- gdb/valprint.c | 8 +- gdb/value.c | 23 +- gdb/value.h | 2 +- gdb/version.in | 2 +- gdb/x86-linux-nat.c | 10 +- gdb/xtensa-linux-nat.c | 2 - gold/ChangeLog | 239 + gold/aarch64.cc | 233 +- gold/archive.cc | 12 +- gold/arm.cc | 12 +- gold/compressed_output.cc | 139 +- gold/compressed_output.h | 2 +- gold/dynobj.h | 10 + gold/layout.cc | 7 +- gold/object.cc | 51 +- gold/object.h | 7 + gold/options.h | 4 +- gold/output.h | 5 + gold/parameters.cc | 2 +- gold/plugin.h | 10 + gold/reloc.cc | 4 +- gold/resolve.cc | 13 +- gold/symtab.cc | 9 + gold/testsuite/Makefile.am | 138 +- gold/testsuite/Makefile.in | 215 +- gold/testsuite/arm_bl_out_of_range.s | 3 + gold/testsuite/arm_cortex_a8_b.s | 3 + gold/testsuite/arm_cortex_a8_b_cond.s | 3 + gold/testsuite/arm_cortex_a8_bl.s | 3 + gold/testsuite/arm_cortex_a8_blx.s | 5 + gold/testsuite/arm_cortex_a8_local.s | 3 + gold/testsuite/arm_fix_v4bx.s | 3 + gold/testsuite/arm_unaligned_reloc.s | 2 +- gold/testsuite/gdb_index_test_2_gabi.sh | 26 + gold/testsuite/hidden_test.sh | 24 +- gold/testsuite/ifuncdep2.c | 2 +- gold/testsuite/ifuncmod1.c | 2 +- gold/testsuite/ifuncmod5.c | 2 +- gold/testsuite/pr18689.c | 1 + gold/testsuite/pr18689.sh | 28 + gold/testsuite/script_test_1.cc | 47 - gold/testsuite/script_test_1.h | 25 + gold/testsuite/script_test_11.c | 16 - gold/testsuite/script_test_11.h | 1 + gold/testsuite/script_test_11a.c | 18 + gold/testsuite/script_test_11b.c | 7 + gold/testsuite/script_test_1a.cc | 46 + gold/testsuite/script_test_1b.cc | 38 + gold/testsuite/thumb_bl_out_of_range.s | 5 +- gold/testsuite/thumb_bl_out_of_range_local.s | 5 +- gold/testsuite/thumb_blx_out_of_range.s | 5 +- include/ChangeLog | 47 + include/ansidecl.h | 9 + include/demangle.h | 6 +- include/dis-asm.h | 8 + include/elf/ChangeLog | 23 + include/elf/aarch64.h | 1 + include/elf/avr.h | 1 + include/elf/mips.h | 7 + include/elf/nios2.h | 26 +- include/hashtab.h | 10 +- include/libiberty.h | 2 +- include/longlong.h | 4 + include/opcode/ChangeLog | 29 + include/opcode/arm.h | 8 +- include/opcode/nios2.h | 79 +- include/opcode/nios2r2.h | 1081 ++ include/opcode/ppc.h | 9 + include/splay-tree.h | 20 +- ld/ChangeLog | 55 + ld/Makefile.am | 4 +- ld/Makefile.in | 4 +- ld/NEWS | 3 + ld/emulparams/criself.sh | 6 +- ld/emulparams/elf_iamcu.sh | 1 + ld/emultempl/elf32.em | 2 +- ld/ld.texinfo | 15 +- ld/ldexp.c | 75 +- ld/ldmisc.c | 4 +- ld/scripttempl/elf.sc | 8 +- ld/scripttempl/pe.sc | 44 +- ld/scripttempl/pep.sc | 60 +- ld/testsuite/ChangeLog | 113 + ld/testsuite/ld-aarch64/aarch64-elf.exp | 3 + ld/testsuite/ld-aarch64/dt_textrel.d | 7 + ld/testsuite/ld-aarch64/dt_textrel.s | 9 + ld/testsuite/ld-aarch64/tls-tiny-ld.d | 8 + ld/testsuite/ld-aarch64/tls-tiny-ld.s | 7 + ld/testsuite/ld-avr/gc-section-debugline.d | 70 + ld/testsuite/ld-avr/per-function-debugline.s | 84 + ld/testsuite/ld-elf/strtab.d | 8 + ld/testsuite/ld-elf/strtab.s | 8 + ld/testsuite/ld-elf/zlibbegin.rS | 2 +- ld/testsuite/ld-elf/zlibnormal.rS | 2 +- ld/testsuite/ld-i386/i386.exp | 1 + ld/testsuite/ld-i386/pltgot-1.d | 5 +- ld/testsuite/ld-i386/pltgot-2.d | 9 + ld/testsuite/ld-mips-elf/attr-gnu-4-08.d | 4 +- ld/testsuite/ld-mips-elf/attr-gnu-4-09.d | 21 + ld/testsuite/ld-mips-elf/attr-gnu-4-19.d | 22 + ld/testsuite/ld-mips-elf/attr-gnu-4-29.d | 22 + ld/testsuite/ld-mips-elf/attr-gnu-4-39.d | 22 + ld/testsuite/ld-mips-elf/attr-gnu-4-49.d | 6 + ld/testsuite/ld-mips-elf/attr-gnu-4-59.d | 4 + ld/testsuite/ld-mips-elf/attr-gnu-4-69.d | 4 + ld/testsuite/ld-mips-elf/attr-gnu-4-79.d | 4 + ld/testsuite/ld-mips-elf/attr-gnu-4-89.d | 4 + ld/testsuite/ld-mips-elf/attr-gnu-4-9.s | 1 + ld/testsuite/ld-mips-elf/mips-elf.exp | 13 +- ld/testsuite/ld-mips-elf/pic-and-nonpic-3b.ad | 1 + ld/testsuite/ld-mips-elf/pic-and-nonpic-4b.ad | 1 + ld/testsuite/ld-mips-elf/pic-and-nonpic-5b.ad | 1 + ld/testsuite/ld-mips-elf/pic-and-nonpic-6-n32.ad | 1 + ld/testsuite/ld-mips-elf/pic-and-nonpic-6-n64.ad | 1 + ld/testsuite/ld-mips-elf/pic-and-nonpic-6-o32.ad | 1 + ld/testsuite/ld-mips-elf/pie-n32.d | 23 + ld/testsuite/ld-mips-elf/pie-n64.d | 23 + ld/testsuite/ld-mips-elf/pie-o32.d | 23 + ld/testsuite/ld-mips-elf/pie.s | 6 + ld/testsuite/ld-mips-elf/tlsdyn-o32-1.d | 4 +- ld/testsuite/ld-mips-elf/tlsdyn-o32-1.got | 2 +- ld/testsuite/ld-mips-elf/tlsdyn-o32-2.d | 4 +- ld/testsuite/ld-mips-elf/tlsdyn-o32-2.got | 2 +- ld/testsuite/ld-mips-elf/tlsdyn-o32-3.d | 4 +- ld/testsuite/ld-mips-elf/tlsdyn-o32-3.got | 2 +- ld/testsuite/ld-mips-elf/tlsdyn-o32.d | 2 +- ld/testsuite/ld-mips-elf/tlsdyn-o32.got | 2 +- ld/testsuite/ld-mmix/bspec1.d | 2 +- ld/testsuite/ld-mmix/bspec2.d | 2 +- ld/testsuite/ld-mmix/undef-3.d | 2 +- ld/testsuite/ld-nios2/mixed1a.d | 9 + ld/testsuite/ld-nios2/mixed1a.s | 9 + ld/testsuite/ld-nios2/mixed1b.d | 9 + ld/testsuite/ld-nios2/mixed1b.s | 3 + ld/testsuite/ld-nios2/nios2.exp | 26 +- ld/testsuite/ld-powerpc/powerpc.exp | 2 + ld/testsuite/ld-powerpc/tocopt6-inc.s | 86 + ld/testsuite/ld-powerpc/tocopt6.d | 12 + ld/testsuite/ld-powerpc/tocopt6a.s | 3 + ld/testsuite/ld-powerpc/tocopt6b.s | 8 + ld/testsuite/ld-powerpc/tocopt6c.s | 20 + ld/testsuite/ld-x86-64/pltgot-1.d | 5 +- ld/testsuite/ld-x86-64/pltgot-2.d | 9 + ld/testsuite/ld-x86-64/x86-64.exp | 1 + ld/testsuite/ld-xtensa/tlsbin.rd | 16 +- ld/testsuite/ld-xtensa/tlspic.rd | 44 +- ld/testsuite/lib/ld-lib.exp | 4 +- libdecnumber/ChangeLog | 8 + libdecnumber/configure | 38 +- libiberty/ChangeLog | 102 + libiberty/Makefile.in | 5 +- libiberty/config.in | 32 + libiberty/configure | 1004 ++- libiberty/configure.ac | 1 + libiberty/cp-demangle.c | 3 + libiberty/d-demangle.c | 469 +- libiberty/floatformat.c | 4 +- libiberty/testsuite/Makefile.in | 2 +- libiberty/testsuite/d-demangle-expected | 168 +- libiberty/testsuite/demangle-expected | 3 + opcodes/ChangeLog | 93 +- opcodes/arm-dis.c | 35 +- opcodes/bfin-dis.c | 2 +- opcodes/configure | 12 + opcodes/dis-buf.c | 4 +- opcodes/i386-dis-evex.h | 8 +- opcodes/i386-dis.c | 28 +- opcodes/i386-gen.c | 7 +- opcodes/i386-init.h | 219 +- opcodes/i386-opc.h | 3 + opcodes/i386-opc.tbl | 13 + opcodes/i386-tbl.h |10484 ++++++++++---------- opcodes/mcore-dis.c | 11 +- opcodes/nios2-dis.c | 550 +- opcodes/nios2-opc.c | 436 +- opcodes/ppc-dis.c | 10 +- opcodes/ppc-opc.c | 60 +- opcodes/sh-dis.c | 2 + opcodes/tic6x-dis.c | 3 + opcodes/vax-dis.c | 3 +- sim/ChangeLog | 5 + sim/arm/ChangeLog | 90 + sim/arm/Makefile.in | 1 + sim/arm/armcopro.c | 8 +- sim/arm/armdefs.h | 41 +- sim/arm/armemu.c | 988 ++- sim/arm/armemu.h | 2 + sim/arm/armfpe.h | 11 +- sim/arm/arminit.c | 6 +- sim/arm/armopts.h | 8 +- sim/arm/armos.c | 25 +- sim/arm/armos.h | 6 +- sim/arm/armrdi.c | 6 +- sim/arm/armsupp.c | 903 ++- sim/arm/armvirt.c | 18 +- sim/arm/bag.c | 6 +- sim/arm/bag.h | 6 +- sim/arm/communicate.c | 6 +- sim/arm/communicate.h | 6 +- sim/arm/configure | 37 +- sim/arm/dbg_conf.h | 7 +- sim/arm/dbg_cp.h | 6 +- sim/arm/dbg_hif.h | 12 +- sim/arm/dbg_rdi.h | 6 +- sim/arm/gdbhost.c | 6 +- sim/arm/gdbhost.h | 6 +- sim/arm/iwmmxt.c | 160 +- sim/arm/iwmmxt.h | 2 +- sim/arm/kid.c | 6 +- sim/arm/main.c | 6 +- sim/arm/maverick.c | 184 +- sim/arm/parent.c | 8 +- sim/arm/thumbemu.c | 2028 ++++- sim/arm/wrapper.c | 31 +- sim/avr/ChangeLog | 4 + sim/avr/configure | 37 +- sim/bfin/ChangeLog | 9 + sim/bfin/configure | 40 +- sim/bfin/interp.c | 16 - sim/bfin/sim-main.h | 12 - sim/common/ChangeLog | 106 + sim/common/acinclude.m4 | 65 +- sim/common/cgen-trace.c | 8 - sim/common/configure | 20 +- sim/common/sim-alu.h | 4 +- sim/common/sim-assert.h | 29 +- sim/common/sim-basics.h | 6 +- sim/common/sim-bits.h | 6 +- sim/common/sim-config.h | 4 +- sim/common/sim-endian.h | 6 +- sim/common/sim-events.c | 7 +- sim/common/sim-model.c | 1 + sim/common/sim-trace.c | 149 +- sim/common/sim-trace.h | 55 +- sim/common/sim-types.h | 103 +- sim/configure | 2 +- sim/configure.ac | 2 +- sim/cr16/ChangeLog | 4 + sim/cr16/configure | 37 +- sim/cris/ChangeLog | 4 + sim/cris/configure | 42 +- sim/d10v/ChangeLog | 4 + sim/d10v/configure | 37 +- sim/erc32/ChangeLog | 4 + sim/erc32/configure | 23 +- sim/frv/ChangeLog | 5 + sim/frv/configure | 44 +- sim/frv/configure.ac | 3 +- sim/ft32/ChangeLog | 4 + sim/ft32/configure | 37 +- sim/h8300/ChangeLog | 4 + sim/h8300/configure | 20 +- sim/iq2000/ChangeLog | 4 + sim/iq2000/configure | 45 +- sim/lm32/ChangeLog | 4 + sim/lm32/configure | 42 +- sim/m32c/ChangeLog | 4 + sim/m32c/configure | 20 +- sim/m32r/ChangeLog | 4 + sim/m32r/configure | 45 +- sim/m68hc11/ChangeLog | 4 + sim/m68hc11/configure | 30 +- sim/mcore/ChangeLog | 4 + sim/mcore/configure | 37 +- sim/microblaze/ChangeLog | 4 + sim/microblaze/configure | 37 +- sim/mips/ChangeLog | 4 + sim/mips/configure | 45 +- sim/mn10300/ChangeLog | 4 + sim/mn10300/configure | 39 +- sim/moxie/ChangeLog | 4 + sim/moxie/configure | 37 +- sim/msp430/ChangeLog | 9 + sim/msp430/configure | 30 +- sim/msp430/msp430-sim.c | 4 +- sim/rl78/ChangeLog | 4 + sim/rl78/configure | 20 +- sim/rx/ChangeLog | 6 + sim/rx/configure | 23 +- sim/rx/configure.ac | 6 +- sim/sh/ChangeLog | 4 + sim/sh/configure | 37 +- sim/sh64/ChangeLog | 4 + sim/sh64/configure | 45 +- sim/v850/ChangeLog | 4 + sim/v850/configure | 36 +- 785 files changed, 38234 insertions(+), 14310 deletions(-) create mode 100644 config/bitfields.m4 create mode 100644 config/bootstrap-lto-noplugin.mk create mode 100644 config/bootstrap-mpx.mk create mode 100644 config/gcc-plugin.m4 create mode 100644 config/mh-alpha-linux create mode 100644 config/sjlj.m4 create mode 100644 config/target-posix create mode 100644 gas/testsuite/gas/aarch64/reloc-tlsldm-1.d create mode 100644 gas/testsuite/gas/aarch64/reloc-tlsldm-1.s create mode 100644 gas/testsuite/gas/aarch64/reloc-tlsldm-ilp32-1.d create mode 100644 gas/testsuite/gas/aarch64/reloc-tlsldm-ilp32-1.s create mode 100644 gas/testsuite/gas/arm/attr-march-armv6kz.d create mode 100644 gas/testsuite/gas/arm/attr-march-armv6kzt2.d create mode 100644 gas/testsuite/gas/avr/pc-relative-reloc.d create mode 100644 gas/testsuite/gas/avr/per-function-debugline.s create mode 100644 gas/testsuite/gas/elf/strtab.d create mode 100644 gas/testsuite/gas/elf/strtab.s create mode 100644 gas/testsuite/gas/i386/mwaitx-bdver4.d create mode 100644 gas/testsuite/gas/i386/mwaitx-reg.l create mode 100644 gas/testsuite/gas/i386/mwaitx-reg.s create mode 100644 gas/testsuite/gas/i386/mwaitx.s create mode 100644 gas/testsuite/gas/i386/x86-64-mwaitx-bdver4.d create mode 100644 gas/testsuite/gas/i386/x86-64-mwaitx-reg.l create mode 100644 gas/testsuite/gas/i386/x86-64-mwaitx-reg.s create mode 100644 gas/testsuite/gas/i386/x86-64-mwaitx.s create mode 100644 gas/testsuite/gas/nios2/add-r2.d create mode 100644 gas/testsuite/gas/nios2/align_fill-r2.d create mode 100644 gas/testsuite/gas/nios2/align_text-r2.d create mode 100644 gas/testsuite/gas/nios2/aligned_text-r2.d create mode 100644 gas/testsuite/gas/nios2/and-r2.d create mode 100644 gas/testsuite/gas/nios2/andc.d create mode 100644 gas/testsuite/gas/nios2/andc.s create mode 100644 gas/testsuite/gas/nios2/bmx.d create mode 100644 gas/testsuite/gas/nios2/bmx.s create mode 100644 gas/testsuite/gas/nios2/branch-r2.d create mode 100644 gas/testsuite/gas/nios2/break-r2.d create mode 100644 gas/testsuite/gas/nios2/bret-r2.d create mode 100644 gas/testsuite/gas/nios2/cache-r2.d create mode 100644 gas/testsuite/gas/nios2/cache-r2.s create mode 100644 gas/testsuite/gas/nios2/call-r2.d create mode 100644 gas/testsuite/gas/nios2/call26-r2.d create mode 100644 gas/testsuite/gas/nios2/call26_noat-r2.d create mode 100644 gas/testsuite/gas/nios2/call_noat-r2.d create mode 100644 gas/testsuite/gas/nios2/cdx_add.d create mode 100644 gas/testsuite/gas/nios2/cdx_add.s create mode 100644 gas/testsuite/gas/nios2/cdx_and.d create mode 100644 gas/testsuite/gas/nios2/cdx_and.s create mode 100644 gas/testsuite/gas/nios2/cdx_break.d create mode 100644 gas/testsuite/gas/nios2/cdx_break.s create mode 100644 gas/testsuite/gas/nios2/cdx_callr.d create mode 100644 gas/testsuite/gas/nios2/cdx_callr.s create mode 100644 gas/testsuite/gas/nios2/cdx_jmpr.d create mode 100644 gas/testsuite/gas/nios2/cdx_jmpr.s create mode 100644 gas/testsuite/gas/nios2/cdx_ldbu.d create mode 100644 gas/testsuite/gas/nios2/cdx_ldbu.s create mode 100644 gas/testsuite/gas/nios2/cdx_ldhu.d create mode 100644 gas/testsuite/gas/nios2/cdx_ldhu.s create mode 100644 gas/testsuite/gas/nios2/cdx_ldw.d create mode 100644 gas/testsuite/gas/nios2/cdx_ldw.s create mode 100644 gas/testsuite/gas/nios2/cdx_ldwsp.d create mode 100644 gas/testsuite/gas/nios2/cdx_ldwsp.s create mode 100644 gas/testsuite/gas/nios2/cdx_mov.d create mode 100644 gas/testsuite/gas/nios2/cdx_mov.s create mode 100644 gas/testsuite/gas/nios2/cdx_neg.d create mode 100644 gas/testsuite/gas/nios2/cdx_neg.s create mode 100644 gas/testsuite/gas/nios2/cdx_not.d create mode 100644 gas/testsuite/gas/nios2/cdx_not.s create mode 100644 gas/testsuite/gas/nios2/cdx_or.d create mode 100644 gas/testsuite/gas/nios2/cdx_or.s create mode 100644 gas/testsuite/gas/nios2/cdx_pop.d create mode 100644 gas/testsuite/gas/nios2/cdx_pop.s create mode 100644 gas/testsuite/gas/nios2/cdx_push.d create mode 100644 gas/testsuite/gas/nios2/cdx_push.s create mode 100644 gas/testsuite/gas/nios2/cdx_relax.d create mode 100644 gas/testsuite/gas/nios2/cdx_relax.s create mode 100644 gas/testsuite/gas/nios2/cdx_ret.d create mode 100644 gas/testsuite/gas/nios2/cdx_ret.s create mode 100644 gas/testsuite/gas/nios2/cdx_sll.d create mode 100644 gas/testsuite/gas/nios2/cdx_sll.s create mode 100644 gas/testsuite/gas/nios2/cdx_spaddi.d create mode 100644 gas/testsuite/gas/nios2/cdx_spaddi.s create mode 100644 gas/testsuite/gas/nios2/cdx_spdeci.d create mode 100644 gas/testsuite/gas/nios2/cdx_spdeci.s create mode 100644 gas/testsuite/gas/nios2/cdx_srl.d create mode 100644 gas/testsuite/gas/nios2/cdx_srl.s create mode 100644 gas/testsuite/gas/nios2/cdx_stb.d create mode 100644 gas/testsuite/gas/nios2/cdx_stb.s create mode 100644 gas/testsuite/gas/nios2/cdx_sth.d create mode 100644 gas/testsuite/gas/nios2/cdx_sth.s create mode 100644 gas/testsuite/gas/nios2/cdx_stw.d create mode 100644 gas/testsuite/gas/nios2/cdx_stw.s create mode 100644 gas/testsuite/gas/nios2/cdx_stwsp.d create mode 100644 gas/testsuite/gas/nios2/cdx_stwsp.s create mode 100644 gas/testsuite/gas/nios2/cdx_sub.d create mode 100644 gas/testsuite/gas/nios2/cdx_sub.s create mode 100644 gas/testsuite/gas/nios2/cdx_trap.d create mode 100644 gas/testsuite/gas/nios2/cdx_trap.s create mode 100644 gas/testsuite/gas/nios2/cdx_xor.d create mode 100644 gas/testsuite/gas/nios2/cdx_xor.s create mode 100644 gas/testsuite/gas/nios2/cmp-r2.d create mode 100644 gas/testsuite/gas/nios2/comments-r2.d create mode 100644 gas/testsuite/gas/nios2/complex-r2.d create mode 100644 gas/testsuite/gas/nios2/ctl-r2.d create mode 100644 gas/testsuite/gas/nios2/custom-r2.d create mode 100644 gas/testsuite/gas/nios2/eni.d create mode 100644 gas/testsuite/gas/nios2/eni.s create mode 100644 gas/testsuite/gas/nios2/etbt-r2.d create mode 100644 gas/testsuite/gas/nios2/flushda-r2.d create mode 100644 gas/testsuite/gas/nios2/jmp-r2.d create mode 100644 gas/testsuite/gas/nios2/ldb-r2.d create mode 100644 gas/testsuite/gas/nios2/ldb-r2.s create mode 100644 gas/testsuite/gas/nios2/ldh-r2.d create mode 100644 gas/testsuite/gas/nios2/ldh-r2.s create mode 100644 gas/testsuite/gas/nios2/ldw-r2.d create mode 100644 gas/testsuite/gas/nios2/ldw-r2.s create mode 100644 gas/testsuite/gas/nios2/ldwm.d create mode 100644 gas/testsuite/gas/nios2/ldwm.s create mode 100644 gas/testsuite/gas/nios2/lineseparator-r2.d create mode 100644 gas/testsuite/gas/nios2/movia-r2.d create mode 100644 gas/testsuite/gas/nios2/mpx.d create mode 100644 gas/testsuite/gas/nios2/mpx.s create mode 100644 gas/testsuite/gas/nios2/mul-r2.d create mode 100644 gas/testsuite/gas/nios2/nop-r2.d create mode 100644 gas/testsuite/gas/nios2/nop-r2.s create mode 100644 gas/testsuite/gas/nios2/nor-r2.d create mode 100644 gas/testsuite/gas/nios2/or-r2.d create mode 100644 gas/testsuite/gas/nios2/rdprs-r2.d create mode 100644 gas/testsuite/gas/nios2/rdprs-r2.s create mode 100644 gas/testsuite/gas/nios2/registers-r2.d create mode 100644 gas/testsuite/gas/nios2/ret-r2.d create mode 100644 gas/testsuite/gas/nios2/rotate-r2.d create mode 100644 gas/testsuite/gas/nios2/stb-r2.d create mode 100644 gas/testsuite/gas/nios2/stb-r2.s create mode 100644 gas/testsuite/gas/nios2/sth-r2.d create mode 100644 gas/testsuite/gas/nios2/sth-r2.s create mode 100644 gas/testsuite/gas/nios2/stw-r2.d create mode 100644 gas/testsuite/gas/nios2/stw-r2.s create mode 100644 gas/testsuite/gas/nios2/stwm.d create mode 100644 gas/testsuite/gas/nios2/stwm.s create mode 100644 gas/testsuite/gas/nios2/sub-r2.d create mode 100644 gas/testsuite/gas/nios2/sync-r2.d create mode 100644 gas/testsuite/gas/nios2/trap-r2.d create mode 100644 gas/testsuite/gas/nios2/tret-r2.d create mode 100644 gas/testsuite/gas/nios2/wrpie.d create mode 100644 gas/testsuite/gas/nios2/wrpie.s create mode 100644 gas/testsuite/gas/nios2/wrprs-r2.d create mode 100644 gas/testsuite/gas/nios2/xor-r2.d create mode 100644 gdb/aarch32-linux-nat.c create mode 100644 gdb/aarch32-linux-nat.h rename gdb/{nat => common}/linux-maps.c (100%) create mode 100644 gdb/common/linux-maps.h create mode 100644 gdb/nat/aarch64-linux-hw-point.c create mode 100644 gdb/nat/aarch64-linux-hw-point.h delete mode 100644 gdb/nat/linux-maps.h create mode 100644 gdb/testsuite/gdb.ada/var_arr_typedef.exp create mode 100644 gdb/testsuite/gdb.ada/var_arr_typedef/pack.adb create mode 100644 gdb/testsuite/gdb.ada/var_arr_typedef/pack.ads create mode 100644 gdb/testsuite/gdb.ada/var_arr_typedef/var_arr_typedef.adb create mode 100644 gdb/testsuite/gdb.arch/amd64-prologue-skip.S create mode 100644 gdb/testsuite/gdb.arch/amd64-prologue-skip.exp create mode 100644 gdb/testsuite/gdb.base/history-duplicates.exp create mode 100644 gdb/testsuite/gdb.base/killed-outside.c create mode 100644 gdb/testsuite/gdb.base/killed-outside.exp create mode 100644 gdb/testsuite/gdb.btrace/record_goto-step.exp create mode 100644 gdb/testsuite/gdb.cp/var-tag-2.cc create mode 100644 gdb/testsuite/gdb.cp/var-tag-3.cc create mode 100644 gdb/testsuite/gdb.cp/var-tag-4.cc create mode 100644 gdb/testsuite/gdb.cp/var-tag.cc create mode 100644 gdb/testsuite/gdb.cp/var-tag.exp create mode 100644 gdb/testsuite/gdb.threads/hand-call-new-thread.c create mode 100644 gdb/testsuite/gdb.threads/hand-call-new-thread.exp create mode 100755 gold/testsuite/gdb_index_test_2_gabi.sh create mode 100644 gold/testsuite/pr18689.c create mode 100755 gold/testsuite/pr18689.sh delete mode 100644 gold/testsuite/script_test_1.cc create mode 100644 gold/testsuite/script_test_1.h delete mode 100644 gold/testsuite/script_test_11.c create mode 100644 gold/testsuite/script_test_11.h create mode 100644 gold/testsuite/script_test_11a.c create mode 100644 gold/testsuite/script_test_11b.c create mode 100644 gold/testsuite/script_test_1a.cc create mode 100644 gold/testsuite/script_test_1b.cc create mode 100644 include/opcode/nios2r2.h create mode 100644 ld/testsuite/ld-aarch64/dt_textrel.d create mode 100644 ld/testsuite/ld-aarch64/dt_textrel.s create mode 100644 ld/testsuite/ld-aarch64/tls-tiny-ld.d create mode 100644 ld/testsuite/ld-aarch64/tls-tiny-ld.s create mode 100644 ld/testsuite/ld-avr/gc-section-debugline.d create mode 100644 ld/testsuite/ld-avr/per-function-debugline.s create mode 100644 ld/testsuite/ld-elf/strtab.d create mode 100644 ld/testsuite/ld-elf/strtab.s create mode 100644 ld/testsuite/ld-i386/pltgot-2.d create mode 100644 ld/testsuite/ld-mips-elf/attr-gnu-4-09.d create mode 100644 ld/testsuite/ld-mips-elf/attr-gnu-4-19.d create mode 100644 ld/testsuite/ld-mips-elf/attr-gnu-4-29.d create mode 100644 ld/testsuite/ld-mips-elf/attr-gnu-4-39.d create mode 100644 ld/testsuite/ld-mips-elf/attr-gnu-4-49.d create mode 100644 ld/testsuite/ld-mips-elf/attr-gnu-4-59.d create mode 100644 ld/testsuite/ld-mips-elf/attr-gnu-4-69.d create mode 100644 ld/testsuite/ld-mips-elf/attr-gnu-4-79.d create mode 100644 ld/testsuite/ld-mips-elf/attr-gnu-4-89.d create mode 100644 ld/testsuite/ld-mips-elf/attr-gnu-4-9.s create mode 100644 ld/testsuite/ld-mips-elf/pie-n32.d create mode 100644 ld/testsuite/ld-mips-elf/pie-n64.d create mode 100644 ld/testsuite/ld-mips-elf/pie-o32.d create mode 100644 ld/testsuite/ld-mips-elf/pie.s create mode 100644 ld/testsuite/ld-nios2/mixed1a.d create mode 100644 ld/testsuite/ld-nios2/mixed1a.s create mode 100644 ld/testsuite/ld-nios2/mixed1b.d create mode 100644 ld/testsuite/ld-nios2/mixed1b.s create mode 100644 ld/testsuite/ld-powerpc/tocopt6-inc.s create mode 100644 ld/testsuite/ld-powerpc/tocopt6.d create mode 100644 ld/testsuite/ld-powerpc/tocopt6a.s create mode 100644 ld/testsuite/ld-powerpc/tocopt6b.s create mode 100644 ld/testsuite/ld-powerpc/tocopt6c.s create mode 100644 ld/testsuite/ld-x86-64/pltgot-2.d First 500 lines of diff: diff --git a/ChangeLog b/ChangeLog index 583b822..6ba2675 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,71 @@ +2015-07-14 H.J. Lu + + * Makefile.in: Regenerated. + + Sync with GCC + 2015-05-21 Jason Merrill + + * Makefile.tpl: Update comments. + + 2015-04-22 Bernhard Reutner-Fischer + + * Makefile.tpl: Remove surplus whitespace throughout. + + 2015-03-25 Martin Liska + Yury Gribov + + * Makefile.tpl: Fix ln source location for vimrc file. + +2015-07-14 H.J. Lu + + Sync with GCC + 2015-05-16 James Bowman + + * configure.ac: FT32 target added. + * configure: Regenerate. + +2015-07-14 H.J. Lu + + Sync with GCC + 2015-06-02 Jason Merrill + + PR bootstrap/66319 + * configure.ac: Use -std=gnu++98. + + 2015-05-28 Mike Frysinger + + * configure.ac (--vtable-verify): Use AS_HELP_STRING for help. + * configure: Regenerate. + + 2015-05-11 Paulo Matos + + * configure.ac: Fix typo. + * configure: Regenerate. + + 2015-05-03 Matthias Klose + + * configure.ac: Match $host configured with triplets. + * configure: Regenerate. + + 2015-04-17 Jakub Jelinek + + PR bootstrap/62077 + * configure.ac (--enable-stage1-checking): Default to + release,misc,gimple,rtlflag,tree,types if --disable-checking + or --enable-checking is not specified and DEV-PHASE is not + experimental. + * configure: Regenerated. + + 2015-03-27 Uros Bizjak + + Install back PR target/47230 fix (Revert the revert). + +2015-06-30 H.J. Lu + + * configure.ac (ospace_frag): Enable for i?86*-*-elfiamcu + target. + * configure: Regenerate. + 2015-05-13 John David Anglin * configure.ac: Disable configuration of GDB for HPUX targets. @@ -21,6 +89,13 @@ (sim_release): Pass gdb as fifth parameter to tar_compress. (SIM_SUPPORT_DIRS): Add gdb/common/create-version.sh. +2015-04-14 Max Ostapenko + + * Makefile.tpl (EXTRA_HOST_EXPORTS): New variables. + (EXTRA_BOOTSTRAP_FLAGS): Likewise. + (check-[+module+]): Add EXTRA_HOST_EXPORTS and EXTRA_BOOTSTRAP_FLAGS. + * Makefile.in: Regenerate. + 2015-04-01 H.J. Lu * configure.ac: Add --with-system-zlib. diff --git a/Makefile.in b/Makefile.in index 8ae261f..cfc1035 100644 --- a/Makefile.in +++ b/Makefile.in @@ -222,8 +222,8 @@ HOST_EXPORTS = \ GMPINC="$(HOST_GMPINC)"; export GMPINC; \ ISLLIBS="$(HOST_ISLLIBS)"; export ISLLIBS; \ ISLINC="$(HOST_ISLINC)"; export ISLINC; \ - LIBELFLIBS="$(HOST_LIBELFLIBS)" ; export LIBELFLIBS; \ - LIBELFINC="$(HOST_LIBELFINC)" ; export LIBELFINC; \ + LIBELFLIBS="$(HOST_LIBELFLIBS)"; export LIBELFLIBS; \ + LIBELFINC="$(HOST_LIBELFINC)"; export LIBELFINC; \ @if gcc-bootstrap $(RPATH_ENVVAR)=`echo "$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR); \ @endif gcc-bootstrap @@ -482,11 +482,9 @@ STAGEfeedback_TFLAGS = $(STAGE_TFLAGS) STAGEfeedback_CONFIGURE_FLAGS = $(STAGE_CONFIGURE_FLAGS) -# Only build the C compiler for stage1, because that is the only one that -# we can guarantee will build with the native compiler, and also it is the -# only thing useful for building stage2. STAGE1_CFLAGS (via CFLAGS), -# MAKEINFO and MAKEINFOFLAGS are explicitly passed here to make them -# overrideable (for a bootstrap build stage1 also builds gcc.info). +# By default, C and C++ are the only stage1 languages, because they are the +# only ones we require to build with the bootstrap compiler, and also the +# only ones useful for building stage2. STAGE1_CFLAGS = @stage1_cflags@ STAGE1_CHECKING = @stage1_checking@ @@ -677,7 +675,9 @@ CXX_FOR_TARGET_FLAG_TO_PASS = \ $(shell if echo "$(CXX_FOR_TARGET)" | grep " -funconfigured-" > /dev/null; then :; else echo '"CXX_FOR_TARGET=$(CXX_FOR_TARGET)"'; fi) @endif target-libstdc++-v3 -# Flags to pass down to all sub-makes. +# Flags to pass down to all sub-makes. STAGE*FLAGS, +# MAKEINFO and MAKEINFOFLAGS are explicitly passed here to make them +# overrideable (for a bootstrap build stage1 also builds gcc.info). BASE_FLAGS_TO_PASS = \ "DESTDIR=$(DESTDIR)" \ "RPATH_ENVVAR=$(RPATH_ENVVAR)" \ @@ -833,6 +833,14 @@ POSTSTAGE1_FLAGS_TO_PASS = \ $(LTO_FLAGS_TO_PASS) \ "`echo 'ADAFLAGS=$(BOOT_ADAFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" +@if gcc-bootstrap +EXTRA_HOST_EXPORTS = if [ $(current_stage) != stage1 ]; then \ + $(POSTSTAGE1_HOST_EXPORTS) \ + fi; + +EXTRA_BOOTSTRAP_FLAGS = CC="$$CC" CXX="$$CXX" LDFLAGS="$$LDFLAGS" +@endif gcc-bootstrap + # Flags to pass down to makes which are built with the target environment. # The double $ decreases the length of the command line; those variables # are set in BASE_FLAGS_TO_PASS, and the sub-make will expand them. The @@ -2289,9 +2297,9 @@ do-info: maybe-all-texinfo install-info: do-install-info dir.info s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - if [ -f dir.info ] ; then \ - $(INSTALL_DATA) dir.info $(DESTDIR)$(infodir)/dir.info ; \ - else true ; fi + if [ -f dir.info ]; then \ + $(INSTALL_DATA) dir.info $(DESTDIR)$(infodir)/dir.info; \ + else true; fi install-pdf: do-install-pdf @@ -2442,10 +2450,10 @@ mail-report-with-warnings.log: warning.log # Local Vim config $(srcdir)/.local.vimrc: - $(LN_S) $(srcdir)/contrib/vimrc $@ + $(LN_S) contrib/vimrc $@ $(srcdir)/.lvimrc: - $(LN_S) $(srcdir)/contrib/vimrc $@ + $(LN_S) contrib/vimrc $@ vimrc: $(srcdir)/.local.vimrc $(srcdir)/.lvimrc @@ -2591,14 +2599,14 @@ uninstall: .PHONY: install.all install.all: install-no-fixedincludes - @if [ -f ./gcc/Makefile ] ; then \ - r=`${PWD_COMMAND}` ; export r ; \ + @if [ -f ./gcc/Makefile ]; then \ + r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(HOST_EXPORTS) \ (cd ./gcc && \ - $(MAKE) $(FLAGS_TO_PASS) install-headers) ; \ + $(MAKE) $(FLAGS_TO_PASS) install-headers); \ else \ - true ; \ + true; \ fi # install-no-fixedincludes is used to allow the elaboration of binary packages @@ -2704,10 +2712,10 @@ installdirs: mkinstalldirs $(SHELL) $(srcdir)/mkinstalldirs $(MAKEDIRS) dir.info: do-install-info - if [ -f $(srcdir)/texinfo/gen-info-dir ] ; then \ - $(srcdir)/texinfo/gen-info-dir $(DESTDIR)$(infodir) $(srcdir)/texinfo/dir.info-template > dir.info.new ; \ - mv -f dir.info.new dir.info ; \ - else true ; \ + if [ -f $(srcdir)/texinfo/gen-info-dir ]; then \ + $(srcdir)/texinfo/gen-info-dir $(DESTDIR)$(infodir) $(srcdir)/texinfo/dir.info-template > dir.info.new; \ + mv -f dir.info.new dir.info; \ + else true; \ fi dist: @@ -2749,7 +2757,7 @@ configure-build-libiberty: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ test ! -f $(BUILD_SUBDIR)/libiberty/Makefile || exit 0; \ - $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/libiberty ; \ + $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/libiberty; \ $(BUILD_EXPORTS) \ echo Configuring in $(BUILD_SUBDIR)/libiberty; \ cd "$(BUILD_SUBDIR)/libiberty" || exit 1; \ @@ -2806,7 +2814,7 @@ configure-build-bison: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ test ! -f $(BUILD_SUBDIR)/bison/Makefile || exit 0; \ - $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/bison ; \ + $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/bison; \ $(BUILD_EXPORTS) \ echo Configuring in $(BUILD_SUBDIR)/bison; \ cd "$(BUILD_SUBDIR)/bison" || exit 1; \ @@ -2863,7 +2871,7 @@ configure-build-flex: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ test ! -f $(BUILD_SUBDIR)/flex/Makefile || exit 0; \ - $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/flex ; \ + $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/flex; \ $(BUILD_EXPORTS) \ echo Configuring in $(BUILD_SUBDIR)/flex; \ cd "$(BUILD_SUBDIR)/flex" || exit 1; \ @@ -2920,7 +2928,7 @@ configure-build-m4: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ test ! -f $(BUILD_SUBDIR)/m4/Makefile || exit 0; \ - $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/m4 ; \ + $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/m4; \ $(BUILD_EXPORTS) \ echo Configuring in $(BUILD_SUBDIR)/m4; \ cd "$(BUILD_SUBDIR)/m4" || exit 1; \ @@ -2977,7 +2985,7 @@ configure-build-texinfo: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ test ! -f $(BUILD_SUBDIR)/texinfo/Makefile || exit 0; \ - $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/texinfo ; \ + $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/texinfo; \ $(BUILD_EXPORTS) \ echo Configuring in $(BUILD_SUBDIR)/texinfo; \ cd "$(BUILD_SUBDIR)/texinfo" || exit 1; \ @@ -3034,7 +3042,7 @@ configure-build-fixincludes: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ test ! -f $(BUILD_SUBDIR)/fixincludes/Makefile || exit 0; \ - $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/fixincludes ; \ + $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/fixincludes; \ $(BUILD_EXPORTS) \ echo Configuring in $(BUILD_SUBDIR)/fixincludes; \ cd "$(BUILD_SUBDIR)/fixincludes" || exit 1; \ @@ -3091,7 +3099,7 @@ configure-build-libcpp: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ test ! -f $(BUILD_SUBDIR)/libcpp/Makefile || exit 0; \ - $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/libcpp ; \ + $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/libcpp; \ $(BUILD_EXPORTS) \ echo Configuring in $(BUILD_SUBDIR)/libcpp; \ cd "$(BUILD_SUBDIR)/libcpp" || exit 1; \ @@ -3152,7 +3160,7 @@ configure-bfd: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ test ! -f $(HOST_SUBDIR)/bfd/Makefile || exit 0; \ - $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd ; \ + $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd; \ $(HOST_EXPORTS) \ echo Configuring in $(HOST_SUBDIR)/bfd; \ cd "$(HOST_SUBDIR)/bfd" || exit 1; \ @@ -3187,8 +3195,8 @@ configure-stage1-bfd: CFLAGS="$(STAGE1_CFLAGS)"; export CFLAGS; \ CXXFLAGS="$(STAGE1_CXXFLAGS)"; export CXXFLAGS; \ LIBCFLAGS="$(LIBCFLAGS)"; export LIBCFLAGS; \ - echo Configuring stage 1 in $(HOST_SUBDIR)/bfd ; \ - $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd ; \ + echo Configuring stage 1 in $(HOST_SUBDIR)/bfd; \ + $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd; \ cd $(HOST_SUBDIR)/bfd || exit 1; \ case $(srcdir) in \ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \ @@ -3220,8 +3228,8 @@ configure-stage2-bfd: CFLAGS="$(STAGE2_CFLAGS)"; export CFLAGS; \ CXXFLAGS="$(STAGE2_CXXFLAGS)"; export CXXFLAGS; \ LIBCFLAGS="$(STAGE2_CFLAGS)"; export LIBCFLAGS; \ - echo Configuring stage 2 in $(HOST_SUBDIR)/bfd ; \ - $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd ; \ + echo Configuring stage 2 in $(HOST_SUBDIR)/bfd; \ + $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd; \ cd $(HOST_SUBDIR)/bfd || exit 1; \ case $(srcdir) in \ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \ @@ -3233,7 +3241,7 @@ configure-stage2-bfd: --srcdir=$${topdir}/$$module_srcdir \ $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \ --target=${target_alias} \ - --with-build-libsubdir=$(HOST_SUBDIR) \ + --with-build-libsubdir=$(HOST_SUBDIR) \ $(STAGE2_CONFIGURE_FLAGS) @endif bfd-bootstrap @@ -3253,8 +3261,8 @@ configure-stage3-bfd: CFLAGS="$(STAGE3_CFLAGS)"; export CFLAGS; \ CXXFLAGS="$(STAGE3_CXXFLAGS)"; export CXXFLAGS; \ LIBCFLAGS="$(STAGE3_CFLAGS)"; export LIBCFLAGS; \ - echo Configuring stage 3 in $(HOST_SUBDIR)/bfd ; \ - $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd ; \ + echo Configuring stage 3 in $(HOST_SUBDIR)/bfd; \ + $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd; \ cd $(HOST_SUBDIR)/bfd || exit 1; \ case $(srcdir) in \ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \ @@ -3266,7 +3274,7 @@ configure-stage3-bfd: --srcdir=$${topdir}/$$module_srcdir \ $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \ --target=${target_alias} \ - --with-build-libsubdir=$(HOST_SUBDIR) \ + --with-build-libsubdir=$(HOST_SUBDIR) \ $(STAGE3_CONFIGURE_FLAGS) @endif bfd-bootstrap @@ -3286,8 +3294,8 @@ configure-stage4-bfd: CFLAGS="$(STAGE4_CFLAGS)"; export CFLAGS; \ CXXFLAGS="$(STAGE4_CXXFLAGS)"; export CXXFLAGS; \ LIBCFLAGS="$(STAGE4_CFLAGS)"; export LIBCFLAGS; \ - echo Configuring stage 4 in $(HOST_SUBDIR)/bfd ; \ - $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd ; \ + echo Configuring stage 4 in $(HOST_SUBDIR)/bfd; \ + $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd; \ cd $(HOST_SUBDIR)/bfd || exit 1; \ case $(srcdir) in \ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \ @@ -3299,7 +3307,7 @@ configure-stage4-bfd: --srcdir=$${topdir}/$$module_srcdir \ $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \ --target=${target_alias} \ - --with-build-libsubdir=$(HOST_SUBDIR) \ + --with-build-libsubdir=$(HOST_SUBDIR) \ $(STAGE4_CONFIGURE_FLAGS) @endif bfd-bootstrap @@ -3319,8 +3327,8 @@ configure-stageprofile-bfd: CFLAGS="$(STAGEprofile_CFLAGS)"; export CFLAGS; \ CXXFLAGS="$(STAGEprofile_CXXFLAGS)"; export CXXFLAGS; \ LIBCFLAGS="$(STAGEprofile_CFLAGS)"; export LIBCFLAGS; \ - echo Configuring stage profile in $(HOST_SUBDIR)/bfd ; \ - $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd ; \ + echo Configuring stage profile in $(HOST_SUBDIR)/bfd; \ + $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd; \ cd $(HOST_SUBDIR)/bfd || exit 1; \ case $(srcdir) in \ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \ @@ -3332,7 +3340,7 @@ configure-stageprofile-bfd: --srcdir=$${topdir}/$$module_srcdir \ $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \ --target=${target_alias} \ - --with-build-libsubdir=$(HOST_SUBDIR) \ + --with-build-libsubdir=$(HOST_SUBDIR) \ $(STAGEprofile_CONFIGURE_FLAGS) @endif bfd-bootstrap @@ -3352,8 +3360,8 @@ configure-stagefeedback-bfd: CFLAGS="$(STAGEfeedback_CFLAGS)"; export CFLAGS; \ CXXFLAGS="$(STAGEfeedback_CXXFLAGS)"; export CXXFLAGS; \ LIBCFLAGS="$(STAGEfeedback_CFLAGS)"; export LIBCFLAGS; \ - echo Configuring stage feedback in $(HOST_SUBDIR)/bfd ; \ - $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd ; \ + echo Configuring stage feedback in $(HOST_SUBDIR)/bfd; \ + $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd; \ cd $(HOST_SUBDIR)/bfd || exit 1; \ case $(srcdir) in \ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \ @@ -3365,7 +3373,7 @@ configure-stagefeedback-bfd: --srcdir=$${topdir}/$$module_srcdir \ $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \ --target=${target_alias} \ - --with-build-libsubdir=$(HOST_SUBDIR) \ + --with-build-libsubdir=$(HOST_SUBDIR) \ $(STAGEfeedback_CONFIGURE_FLAGS) @endif bfd-bootstrap @@ -3651,9 +3659,9 @@ check-bfd: @: $(MAKE); $(unstage) @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - $(HOST_EXPORTS) \ + $(HOST_EXPORTS) $(EXTRA_HOST_EXPORTS) \ (cd $(HOST_SUBDIR)/bfd && \ - $(MAKE) $(FLAGS_TO_PASS) check) + $(MAKE) $(FLAGS_TO_PASS) $(EXTRA_BOOTSTRAP_FLAGS) check) @endif bfd @@ -3703,7 +3711,7 @@ info-bfd: \ for flag in $(EXTRA_HOST_FLAGS) ; do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - echo "Doing info in bfd" ; \ + echo "Doing info in bfd"; \ (cd $(HOST_SUBDIR)/bfd && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ @@ -3728,7 +3736,7 @@ dvi-bfd: \ for flag in $(EXTRA_HOST_FLAGS) ; do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - echo "Doing dvi in bfd" ; \ + echo "Doing dvi in bfd"; \ (cd $(HOST_SUBDIR)/bfd && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ @@ -3753,7 +3761,7 @@ pdf-bfd: \ for flag in $(EXTRA_HOST_FLAGS) ; do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - echo "Doing pdf in bfd" ; \ + echo "Doing pdf in bfd"; \ (cd $(HOST_SUBDIR)/bfd && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ @@ -3778,7 +3786,7 @@ html-bfd: \ for flag in $(EXTRA_HOST_FLAGS) ; do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - echo "Doing html in bfd" ; \ + echo "Doing html in bfd"; \ (cd $(HOST_SUBDIR)/bfd && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ @@ -3803,7 +3811,7 @@ TAGS-bfd: \ for flag in $(EXTRA_HOST_FLAGS) ; do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - echo "Doing TAGS in bfd" ; \ + echo "Doing TAGS in bfd"; \ (cd $(HOST_SUBDIR)/bfd && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ @@ -3829,7 +3837,7 @@ install-info-bfd: \ for flag in $(EXTRA_HOST_FLAGS) ; do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - echo "Doing install-info in bfd" ; \ + echo "Doing install-info in bfd"; \ (cd $(HOST_SUBDIR)/bfd && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ @@ -3855,7 +3863,7 @@ install-pdf-bfd: \ for flag in $(EXTRA_HOST_FLAGS) ; do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - echo "Doing install-pdf in bfd" ; \ + echo "Doing install-pdf in bfd"; \ (cd $(HOST_SUBDIR)/bfd && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ @@ -3881,7 +3889,7 @@ install-html-bfd: \ for flag in $(EXTRA_HOST_FLAGS) ; do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - echo "Doing install-html in bfd" ; \ + echo "Doing install-html in bfd"; \ (cd $(HOST_SUBDIR)/bfd && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ @@ -3906,7 +3914,7 @@ installcheck-bfd: \ for flag in $(EXTRA_HOST_FLAGS) ; do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - echo "Doing installcheck in bfd" ; \ + echo "Doing installcheck in bfd"; \ (cd $(HOST_SUBDIR)/bfd && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ @@ -3930,7 +3938,7 @@ mostlyclean-bfd: for flag in $(EXTRA_HOST_FLAGS) ; do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - echo "Doing mostlyclean in bfd" ; \ + echo "Doing mostlyclean in bfd"; \ (cd $(HOST_SUBDIR)/bfd && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ @@ -3954,7 +3962,7 @@ clean-bfd: for flag in $(EXTRA_HOST_FLAGS) ; do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - echo "Doing clean in bfd" ; \ + echo "Doing clean in bfd"; \ (cd $(HOST_SUBDIR)/bfd && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ hooks/post-receive -- Repository for Project Archer.