public inbox for archer-commits@sourceware.org
help / color / mirror / Atom feed
* [SCM] jankratochvil/gdbserverbuildid2: mainbuildid
@ 2015-08-03 18:47 jkratoch
0 siblings, 0 replies; only message in thread
From: jkratoch @ 2015-08-03 18:47 UTC (permalink / raw)
To: archer-commits
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 221264 bytes --]
The branch, jankratochvil/gdbserverbuildid2 has been updated
discards 52e94ef20f0a2821b4218b5412aa3448ec612a3a (commit)
discards 2d7f93fff19c806dd0567c58f06ee8c95014ac91 (commit)
discards a17cefb1a3689e04e1cf06f075f1e38bcbb98cae (commit)
discards ff2f924406cc046c67a53c401f903c2fe399dbfb (commit)
discards 4b23b94c23cef3b156928540ff935dc880814907 (commit)
discards d6f35619ecaf9c7b3e2f0ed9f430a8832ff4a866 (commit)
discards ac9889e2f97ca0b02c8864e6bf0fec61564d009f (commit)
discards ba9310665b459c0d53cb25f12ebbc0b751b7546a (commit)
discards 4eb86256c28b998687a8743c06ad7d111cf1f936 (commit)
discards e3a6fc81d5e6caff5d58562d178628e8a575d684 (commit)
discards 28202d6392adab7179a849c7b569c24427f09476 (commit)
discards b6bfeca5e45c1a91923f89195e95adb41e672acf (commit)
discards 8859bde6c6dad70f79d9f1db719529fedd0a879a (commit)
discards 2066d1751f88b06a202e90eb69ed8551fc1391d8 (commit)
discards 044da2d2298af4004094cd5fcad24fdbbde03746 (commit)
discards 2fc65148a99cb8b2c2889479bccb9c4f605b2c84 (commit)
discards 972af46ddba59d32ba903da5bd736bc6239a1958 (commit)
discards eedc9c47eb55d57a7d2c5e0310121ba79a80f295 (commit)
discards c6df2d1ba56da63391ae62fbf2a2be28fae6da32 (commit)
via d3b64846f32fe967eda4a42993509fa043bf6fab (commit)
via 127a7c8c5f95c94627a7020ea70baaf34e8af4c4 (commit)
via 9a330d05001869fafbeb1977ba01002760f06223 (commit)
via 2ac4a4a2b1c67501c243500f89f39b993afc9d57 (commit)
via c957e11eefea3a3b0df0725d0bcc7f71284cbfdd (commit)
via 7fc9a74927d454a5390f1d5d2a1cb3c4610d2bd6 (commit)
via 1819c3617e892c280ef275ddc227cde019215137 (commit)
via 363c073195eb984c1a87337c2b766264c9b492c0 (commit)
via 41d3fed626c53a4c1941bb7e5cab4f31d1867d86 (commit)
via 9d78733d3e5cb8a75da2fde76c4b5b016adaa73e (commit)
via daf575991634bf88c15a21b206af0025eb7945b3 (commit)
via ff999b8d72b8b986c21a85f3853a933d61377d62 (commit)
via 4c5ec92510d46549c0ab8b7bef138e49916a9c7e (commit)
via be47105b3a08816825e3af06e364976a50b0addc (commit)
via 3f48d4a72c91deb16d7845e05c1c6de0017363a1 (commit)
via ee108b9e22005af135a0e3abdd987a6e8d11ae60 (commit)
via e5ac2b27b2656e633f03e03471215134039eab26 (commit)
via 357927ebc9c67445f26db3e8f9c4f9619da9758c (commit)
via 5fb62cb37b182a1724c142fb5074c610438f3d21 (commit)
via fc362f9aceda33a7fda5587a894afb845d9ab969 (commit)
via cc7e9e180d16e577c75fac12e8dd7397fe0305b8 (commit)
via 77349f9a27c0b1ad34a16b8245dd8f89663a6b99 (commit)
via d0ec4ffa44abbfb3ae91d073d9e173d08add716a (commit)
via 53ecd8abae0b52b4972c15d71174e0ba0f141976 (commit)
via 90f484011751e127565e5600bfde5308773edb93 (commit)
via 0ad719190dd1375219d3bcdc3718daf109dff476 (commit)
via 3d3389010c00504602656ba6f16c6b91ade75243 (commit)
via af061d3e9c09baa0df2f2d4724baed06cc6158ca (commit)
via 1da03605ced73fc20f40ad649f3038e654d36dee (commit)
via 8156fe7f47884390b7404af15903795bb607658b (commit)
via d60646b95830f1687b641b96f31adbea75c08d6c (commit)
via a5fdf78a4402341a0ae23a5ca8a63825e2b5286c (commit)
via 17c42309df30d43ad57556050f96850105a7dfe7 (commit)
via e76460dbb9b9b34b9c7fc2f2e4faae38730d00b0 (commit)
via 835a09d99d585bfdc9f760970908e10bd8b2fec2 (commit)
via 5e99d4b301d820e1622b35cfd4b359bb4ba264e6 (commit)
via d12307c199dfdb9cad1ea79d2626224e705089a3 (commit)
via 5efafabf7be800069e02f84589c9462e99079c4d (commit)
via 2c8c5d375e91824387eeacd1d710e714f1534d36 (commit)
via b1c59ddc809bc4ad2c082b5cae02a18c68746257 (commit)
via f486487f558686c05d4f4d91a75638b9da399044 (commit)
via 22d31b1192bb38c766e349e5eed1a82298cc2c1f (commit)
via 032a0fca009e8ae7ffc5443d07d959c839dc7af4 (commit)
via e1b5381f1b24d2c6b1e254cf7e35f8a470394adc (commit)
via 9aaf8e3a2875f719e4d5633ba222a3c04a5d0e8d (commit)
via 61a934ca2090456acb4432b6c136241d3aaee7a2 (commit)
via 4bc4d42859e3b42c79c89295ef39944bdb3e6753 (commit)
via 998d452ac81bc240996c967dd27f7b747240cd66 (commit)
via 69dde7dcb81f6baf2b823dcc03e040c29ee5de7d (commit)
via 4dd63d488a76482543517c4c4cde699ee6fa33ef (commit)
via 6b940e6a063ac13372b44a03a54b6be33d22a183 (commit)
via e8b416815be691cc3fb1212d1a3dcb5d21a0d19d (commit)
via 89abb03951a90203c6635296447b7e96a1248a68 (commit)
via deca266c89cf61c679f759a74bdf362960b0cc2c (commit)
via ec74129274bf2fb65aac9381a19731c570f7be29 (commit)
via 0ea6402e6ce0af0623f0cfd180b626c7ccc41891 (commit)
via a8484f9612fc5b7d2b762b6fec950faa0fcd1483 (commit)
via c6e8a9a802bcd3a96ef14b6ea1b6cd60d5d8d065 (commit)
via 13be649613bb62e75296d1f69a7c889ddf29a564 (commit)
via aa58a496ed9a3ee19233af0bfb7c76ae02b9b2c1 (commit)
via d618e4c51c73f2139a1aa8903d677a4202956f21 (commit)
via 60b57502ec8b600dac3fe53aa6615965f0430a6d (commit)
via de0a00263930c9ed3e4e330a0d8573df4805fe87 (commit)
via 06265e53f4657a86f3ac3485552b97c942c9f4ac (commit)
via e77e648e93adf564fb10e725e4d8800d30a83eb5 (commit)
via 1eef6428112a1c1fe0295f36f92d7a3cf9908228 (commit)
via 7da5b897c96faa3c520662d2b0bd4837567bfb1d (commit)
via dac804dfa6389b71f50b5e169ffa4e239958e774 (commit)
via 18206ca3f9367f1488cdfc1475f8da072e7e9636 (commit)
via 7afa63c624ae570472381b8e35ce066bf145844a (commit)
via 90074d118de70c5eb2c71ba83e58d96359149d79 (commit)
via cc9f16aa882eb22cb2128c5eb8237fd453ab2988 (commit)
via eb1a79028c63ca565850c5d64ae60193f90cd841 (commit)
via 8b75dd3b8a32e790d7d9f1621ad4fbb6d7af9e8e (commit)
via dedad4e3d2ed1d6ecdb89422fc0baa028021f19d (commit)
via 58789a917b7eed57c5200ec0a4d8a2fc44efc64c (commit)
via e8376742bdba233d14cfbff91776be065ae27587 (commit)
via 0828001082ea8dfd223211373fb912d47f715827 (commit)
via 4d30e4328fd344ef6f26c7ee520d08813da69a33 (commit)
via 0d30a335a6747bb0e2847e0aee2ba958cf19dac7 (commit)
via 39413b296f9eb92ae3936bf29397ac1d35ca803b (commit)
via 7cb000a97ebcf7f23fe1b63fbbdd86d87b8c8634 (commit)
via d7b8ac8297642399a10216068b8003cd778b7237 (commit)
via 789c3a0cc3b1ace2d54ecc37fdbdb967f1810aaf (commit)
via 77e760c3aae925fef163d866a651079fea5f3143 (commit)
via 8396d2cdf4b013b237bf8cca306bbec602bdbb72 (commit)
via 2051d61f76bc009f42d094e57fa0e7114fb23a4e (commit)
via 452397af30f68f6d4ed05fa6d9fc30ca70cbe7f9 (commit)
via 8aed9555b232946606f3fb9370c1657a71c2afaf (commit)
via 188a61b4404369ae30dce95ad4b05975a3609a33 (commit)
via 12264a451d993a0a8635be82bed15618e0f4645f (commit)
via 23ffc893f5693f20dc807c6a7daad402de0c2e51 (commit)
via 655669183104eb8eab559b5faf2b5a676ab6cd3f (commit)
via 11509220a045532b1995b4af5dac2f921b541003 (commit)
via a66f09dd911338fb02ee40cec3840f579f533262 (commit)
via d60a92216e5d599fed6b37c58c744debe38a0b24 (commit)
via bde40b8f563dd682b9c6bcb8e24c3f5bd944a4f6 (commit)
via 3ae385afe150f2e001a1cc8fb14f4ba0ab94cdf2 (commit)
via e512cdbdffafefa63baeb835ba6636fcef56e17d (commit)
via 3723fda829671b273d7b31a0753bb1fa8f614cb6 (commit)
via 2e0569314c2ee9e5635899d47b0bc0a4b9b08d8d (commit)
via c6e5c03a2c0dfa224a71056ede035476e511f5fc (commit)
via 77403ce9669d35b286b3ca75fdc1e4c61f36b59a (commit)
via e5654c0f8492e65b3e3ac5e1a2276856049eb1b1 (commit)
via d6f1bafa2c05241b89c0303a9f6a2af89f51c39c (commit)
via 671c4e31fb12f1bee30d3bb5f8ad95f17d8d4663 (commit)
via 6f8ea6c424a3ceda065c39903065cfb251add37d (commit)
via 13e1dec8960122ec0329f74e5915503e14db5ea2 (commit)
via da33c9a7bff093e772a381bf9ab42d876089cdcf (commit)
via 0c87c0bfdfe19d5e2b8938d1db42c43e7b19e53f (commit)
via 9550ae5e548dd63599ffadedfe8d1768bfc94072 (commit)
via 7784724bb1b8a5732239e27935cd76813b9df35c (commit)
via 385f5affc00e88ad6ff0f8287bb3c1c43d59351c (commit)
via b21b63420be3857c1d0e2676e1214d63fe38ed3d (commit)
via e5bead4b23122be39e0bf32889fd609df6299e1c (commit)
via 4a8c372f1f82d1be24d2575e5979690efd839e08 (commit)
via d93880bd1cd10d0ccf5346e261d5d145d50d8ab0 (commit)
via ef0bc0dd961898d393627c3d502ad168028d7c40 (commit)
via fe43fede4726122efbee9d52b9e68b47be97757f (commit)
via 45000ea2f350fae68b4524059ae1876f8e89f2bb (commit)
via 81eb921ae109e875b9df6435ac6947181d824a67 (commit)
via 557dbe8a5ea7f87fd9e6910997ca04f306cab195 (commit)
via 9f436164d55690a0b3d2e4308bfd8834996b97d1 (commit)
via c45bd4fd43e5eb0cbad8ec410504e4778c64c65d (commit)
via 077836f7cf6725386c01ae3bb7111663b8f2b85e (commit)
via 50904b25ecf09f14c9406157b7f51255b21f54c0 (commit)
via 3a60804fbca012d751d21fde17592df0eee8d82a (commit)
via 206350da0f99b9a50fe6405613b3b05561a55aae (commit)
via 37a42ee9ad4e4bf635edc87661acb42175f20f91 (commit)
via 136bb21fda016fcfc97dfeff692ee899951148de (commit)
via edb71a9c3838b83424f6eb0ef04eab5b31aa7f4a (commit)
via 79559014b26f3c6bc64f29dabce613fa89418ee5 (commit)
via 219a6876d48c9986b47d045a41b74cb6c84a2116 (commit)
via cda77e9efc68d04e50990ea72890bd8e515d4d7b (commit)
via 379d3f1ffc3fab112a0f388a1565c6be2f74f5c3 (commit)
via ea9fb8b3e9f9624262984ad402f2aac34c65534d (commit)
via faebca0390ceef085f383d42423e14079dcd0a48 (commit)
via c4972ed6029abb1a56eeafe144000031d902f074 (commit)
via e10461aebd2c9165c168583e70e7901e962ed1bb (commit)
via 32f573bcb3aaa1c9defcad79dbb5851fcc02ae2d (commit)
via b68a20d6675f1360ea4db50a9835c073675b9889 (commit)
via 0c096ed760273eb364d2e4e6def21f688ceff525 (commit)
via edcab5e8bdaafdb96b182693a5c8eab020ba3e5c (commit)
via d76b6207439e16b98aa04f38b730376257b31a62 (commit)
via ab3b14b04b35e4e9ee8bd8cdb38ef888f0922da5 (commit)
via c9f35b348e586c0f48592918324b6e15c815a702 (commit)
via 805cee45cdf608922af942ff8ff1ccf4da78412b (commit)
via 5836a818eccb180d75c92ce4c861abb6fe8dec23 (commit)
via b8cc7b2e9afab37eb9a7cff0d3ae4ebbcf7d494f (commit)
via b558ff043d41ba8d17a82f5f9ae5f9dade66160e (commit)
via 18d9555c6e7c34beb40f54e670c11b76b61be13f (commit)
via 1659f720b0818d6666570f79bef53ac461b2b22f (commit)
via 4a11f2065906976675808364ddbd1c0f77eea41f (commit)
via a496fbc8802f0a5719db6347a43cc869e03d83c9 (commit)
via ca3084f54b62ce06c6e70a6e1daafeb5e3317c12 (commit)
via f7d3050b1966fcc3d4cf7ddb9d0a8ca741e50d26 (commit)
via 7fecd1b400ba3ba0ae9efba3662e1f75b519860f (commit)
via 6eab34f3dc27a571071d8c56146c2ffda133f454 (commit)
via 63738bfdb96f654322794384993a6f5d8608aab9 (commit)
via 7b606f95c9bcfa1b569fe5d33f7d2a73d39322f4 (commit)
via a97b16b8fcfc7ac818c43c9f9457966cfc47aed6 (commit)
via 35baa57fcfb50f7db24f7850ec9e34f4bc25b45c (commit)
via 6ebea266fd0a7a56c90db3ab6237ff9f6c919747 (commit)
via 4fd4095a5ffe3d4e50e0dac5f8ad37b8478afa9d (commit)
via 1e76a7e9b156173a76e6a14a3ed41cefc9fed480 (commit)
via 2b4cab865440e2c61d72da31a1a5045c840c60fe (commit)
via 5068630ad34dce5fefbe68d70d3a50cd8b92f71e (commit)
via 7759842763d94dc2f1c7d52d09f9203830b753ab (commit)
via fe23c31f262151ce3265f5b90870d40cb6840f0a (commit)
via afa5870f1bfafa1ccfa8a4b3f432c07c19a2447e (commit)
via 7cb9e39bd8f84867f913232904b4b36c0aea539c (commit)
via aff1a65ecb5cfcf1abfb23ea0e0f37f39e75683e (commit)
via 5826e159863b6cd69953dc01faf7c20414409909 (commit)
via 54019719152ab269fb4cec2c6a8a245ba6af6e49 (commit)
via e379037592ff71dc633c6d3de0828babe805ae96 (commit)
via eb7aa56163cc15bb732aa3b07966103fd6940d50 (commit)
via 55d7b841962c6e054735acdca2e0bb485afa0144 (commit)
via c06cbd92be66d82eb323a8c6ec451c1dccc02107 (commit)
via 5ae3ebbae55482a9fdd01bd21455b396e23e4077 (commit)
via eb97750bce2bf37176f745636815600177fbdba8 (commit)
via 11e6c98f1b6318d27ad55f9ac7d362fe7a668872 (commit)
via 51aee833ed9c6bd67b0c0e4a8c7098a549e3d16d (commit)
via 8cfe207c9fcfcf940ec8eb834afde41432ec6d80 (commit)
via 84b74b498eb690e5a856c23b9abc71f9680b81a6 (commit)
via 72f4393d8cfc4a47f0e59657f7822668cfad132f (commit)
via 91cb26dac47265f178fb6635f1deebdfd244572a (commit)
via 2fb9328d8daa751f3b71745636323eddccaaacce (commit)
via f0b0791b05ed335e5d74d843d828645805db1f9c (commit)
via cdb061674c044636465e52a8c989b9011f2ec8ac (commit)
via d5cff5df74b18e1e5ed94de8f4c9adee3ffd95c6 (commit)
via cc12ce380e8dab7e3cee8ecad29db6e9bb36a8fa (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)
from 52e94ef20f0a2821b4218b5412aa3448ec612a3a (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email.
- Log -----------------------------------------------------------------
commit d3b64846f32fe967eda4a42993509fa043bf6fab
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Thu Jul 30 20:48:14 2015 +0200
mainbuildid
commit 127a7c8c5f95c94627a7020ea70baaf34e8af4c4
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Thu Jul 30 20:31:46 2015 +0200
hexallocate
commit 9a330d05001869fafbeb1977ba01002760f06223
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Thu Jul 30 20:48:50 2015 +0200
locatetest
commit 2ac4a4a2b1c67501c243500f89f39b993afc9d57
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Thu Jul 30 20:49:10 2015 +0200
buildidwarn
commit c957e11eefea3a3b0df0725d0bcc7f71284cbfdd
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Tue Jul 28 22:13:31 2015 +0200
buildidsolibbfdopen
commit 7fc9a74927d454a5390f1d5d2a1cb3c4610d2bd6
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Mon Aug 3 20:45:26 2015 +0200
buildidverify
commit 1819c3617e892c280ef275ddc227cde019215137
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Mon Aug 3 20:44:27 2015 +0200
buildidsolibsearch
commit 363c073195eb984c1a87337c2b766264c9b492c0
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Mon Aug 3 20:42:40 2015 +0200
buildidtofile
commit 41d3fed626c53a4c1941bb7e5cab4f31d1867d86
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Tue Jul 28 22:12:52 2015 +0200
buildidproto
commit 9d78733d3e5cb8a75da2fde76c4b5b016adaa73e
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Wed Jul 29 21:38:45 2015 +0200
buildidtobfd
commit daf575991634bf88c15a21b206af0025eb7945b3
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Wed Jul 29 19:52:47 2015 +0200
buildidforcemove
commit ff999b8d72b8b986c21a85f3853a933d61377d62
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Thu Jul 30 23:07:10 2015 +0200
buildidfreefix
commit 4c5ec92510d46549c0ab8b7bef138e49916a9c7e
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Mon Aug 3 19:07:06 2015 +0200
unvalidate
commit be47105b3a08816825e3af06e364976a50b0addc
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Mon Aug 3 20:20:45 2015 +0200
openpsymfile
commit 3f48d4a72c91deb16d7845e05c1c6de0017363a1
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Mon Aug 3 20:20:10 2015 +0200
openpexec
commit ee108b9e22005af135a0e3abdd987a6e8d11ae60
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Mon Aug 3 20:18:53 2015 +0200
openpsolib
commit e5ac2b27b2656e633f03e03471215134039eab26
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Sat Jul 25 23:11:36 2015 +0200
openp
commit 357927ebc9c67445f26db3e8f9c4f9619da9758c
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Wed Jul 29 22:49:17 2015 +0200
filelib
commit 5fb62cb37b182a1724c142fb5074c610438f3d21
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Wed Jul 29 22:47:55 2015 +0200
targetfd
commit fc362f9aceda33a7fda5587a894afb845d9ab969
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Mon Jul 27 23:01:54 2015 +0200
openpnullpathname
commit cc7e9e180d16e577c75fac12e8dd7397fe0305b8
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Mon Jul 27 20:11:55 2015 +0200
openpmode
commit 77349f9a27c0b1ad34a16b8245dd8f89663a6b99
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Mon Jul 27 22:42:55 2015 +0200
openppath
commit d0ec4ffa44abbfb3ae91d073d9e173d08add716a
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Mon Jul 27 23:15:48 2015 +0200
openpenum
commit 53ecd8abae0b52b4972c15d71174e0ba0f141976
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Sat Jul 25 22:48:02 2015 +0200
sysroots
commit 90f484011751e127565e5600bfde5308773edb93
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Fri Jul 17 22:31:05 2015 +0200
build-id: -config,+configure.tgt
commit 0ad719190dd1375219d3bcdc3718daf109dff476
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Fri Jul 17 22:30:32 2015 +0200
Revert "Revert the previous 7 commits of: Validate binary before use"
This reverts commit db1ff28b60f8886b8d7c634f1db2f939ba47a13c.
Conflicts:
gdb/ChangeLog
gdb/gdbserver/ChangeLog
gdb/testsuite/ChangeLog
commit 3d3389010c00504602656ba6f16c6b91ade75243
Author: Doug Evans <dje@google.com>
Date: Mon Aug 3 09:17:40 2015 -0700
Add parallel build support for perf tests.
gdb/testsuite/ChangeLog:
* Makefile.in (workers/%.worker, build-perf): New rule.
(GDB_PERFTEST_MODE): New variable.
(check-perf): Use it.
(clean): Clean up gdb.perf parallel build subdirs.
* lib/build-piece.exp: New file.
* lib/gdb.exp (make_gdb_parallel_path): New function
(standard_output_file, standard_temp_file): Call it.
(GDB_PARALLEL handling): Make outputs,temp,cache directories as subdirs
of $GDB_PARALLEL.
* lib/cache.exp (gdb_do_cache): Call make_gdb_parallel_path.
commit af061d3e9c09baa0df2f2d4724baed06cc6158ca
Author: Doug Evans <dje@google.com>
Date: Mon Aug 3 09:04:03 2015 -0700
Move basic perf-test output from perftest.log to perftest.sum.
This patch does two things.
1) Add support for multiple data points.
2) Move the "report" output from perftest.log to perftest.sum.
I want to record the raw data somewhere, and a bit of statistical analysis
(standard deviation left for another day), but I also don't want
it to clutter up the basic report.
This patch takes a cue from gdb.{sum,log} and does the same thing
with perftest.{sum,log}.
Ultimately, we'll probably want to emit raw data to csv files or some
such and then do post-processing passes on that.
gdb/testsuite/ChangeLog:
* lib/perftest/reporter.py (SUM_FILE_NAME): New global.
(LOG_FILE_NAME): New global.
(TextReporter.__init__): Initialize self.txt_sum.
(TextReporter.report): Add support for multiple data-points.
Move report to perftest.sum, put raw data in perftest.log.
(TextReporter.start): Open sum and log files.
(TextReporter.end): Close sum and log files.
* lib/perftest/testresult.py (SingleStatisticTestResult.record): Handle
multiple data-points.
commit 1da03605ced73fc20f40ad649f3038e654d36dee
Author: Ulrich Weigand <ulrich.weigand@de.ibm.com>
Date: Mon Aug 3 14:35:58 2015 +0200
Fix build error due to uninitialized variable warning
As of commit a5fdf78a4402341a0ae23a5ca8a63825e2b5286c, building GDB with
a GCC 4.1 host compiler fails with:
gdb/cp-namespace.c: In function 'cp_lookup_symbol_via_imports':
gdb/cp-namespace.c:482: warning: 'sym.block' may be used uninitialized in this function
Apparently, more recent compilers are able to deduce that no actual
uninitialized use of sym.block takes place, but GCC 4.1 isn't yet
able to do that.
Fixed by adding an explicit initalization.
gdb/
* cp-namespace.c (cp_lookup_symbol_via_imports): Fix uninitialized
variable warning with some compilers.
commit 8156fe7f47884390b7404af15903795bb607658b
Author: Yao Qi <yao.qi@linaro.org>
Date: Mon Aug 3 10:37:23 2015 +0100
Enum fix for arm-linux-nat.c
This patch fixes GDB build breakage on arm-linux.
gdb:
2015-08-03 Yao Qi <yao.qi@linaro.org>
* arm-linux-nat.c (arm_linux_get_hwbp_type): Capitalize "type"
in comment. Replace "rw" with "type".
(arm_linux_remove_watchpoint): Change type of "rw" to
"enum target_hw_bp_type".
commit d60646b95830f1687b641b96f31adbea75c08d6c
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Aug 3 09:19:00 2015 +0100
Fix thinkos in the description of the --hash-size command line option for GAS.
* doc/as.texinfo (Overview): Add --hash-size to the synopsis and
fix typo in its entry: @kindex -> @item.
commit a5fdf78a4402341a0ae23a5ca8a63825e2b5286c
Author: Pierre-Marie de Rodat <derodat@adacore.com>
Date: Mon Aug 3 09:39:42 2015 +0200
Fix the block_found refactoring ChangeLog entry
Replace the old "struct symbol_in_block" with the actual "struct
block_symbol", fix a typo and remove mention to an unmodified function.
commit 17c42309df30d43ad57556050f96850105a7dfe7
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Aug 3 00:00:08 2015 +0000
Automatic date update in version.in
commit e76460dbb9b9b34b9c7fc2f2e4faae38730d00b0
Author: Pedro Alves <palves@redhat.com>
Date: Sun Aug 2 11:46:50 2015 -0700
Unbreak PPC gdb builds
Commit f486487f5586 (Mostly trivial enum fixes) missed updating
ppc-linux-nat.c, resulting in:
../../src/gdb/ppc-linux-nat.c: In function â_initialize_ppc_linux_natâ:
../../src/gdb/ppc-linux-nat.c:2503:27: error: assignment from incompatible pointer type [-Werror]
../../src/gdb/ppc-linux-nat.c:2504:27: error: assignment from incompatible pointer type [-Werror]
gdb/ChangeLog
2015-08-02 Pedro Alves <palves@redhat.com>
* ppc-linux-nat.c (get_trigger_type, create_watchpoint_request)
(ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint): Change
parameter 'rw's type to enum target_hw_bp_type and rename to
'type'.
commit 835a09d99d585bfdc9f760970908e10bd8b2fec2
Author: Pierre-Marie de Rodat <derodat@adacore.com>
Date: Sat Aug 1 11:25:44 2015 +0200
Complete the previous commit (block_found refactoring)
The previous commit (Replace the block_found global with explicit
data-flow) lacks updates in a couple of files because it was not
tested building GDB with --enable-targets=all... but buildbots did.
This adds the appropriate simple updates to fix the build.
gdb/ChangeLog:
* alpha-mdebug-tdep.c (find_proc_desc): Update call to
lookup_symbol.
* ft32-tdep.c (ft32_skip_prologue): Likewise.
* moxie-tdep.c (moxie_skip_prologue): Likewise.
* mt-tdep.c (mt_skip_prologue): Likewise.
* xstormy16-tdep.c (xstormy16_skip_prologue): Likewise.
commit 5e99d4b301d820e1622b35cfd4b359bb4ba264e6
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Aug 2 00:00:08 2015 +0000
Automatic date update in version.in
commit d12307c199dfdb9cad1ea79d2626224e705089a3
Author: Pierre-Marie de Rodat <derodat@adacore.com>
Date: Tue Jul 21 17:02:15 2015 +0200
Replace the block_found global with explicit data-flow
As Pedro suggested on gdb-patches@ (see
https://sourceware.org/ml/gdb-patches/2015-05/msg00714.html), this
change makes symbol lookup functions return a structure that includes
both the symbol found and the block in which it was found. This makes
it possible to get rid of the block_found global variable and thus makes
block hunting explicit.
gdb/
* ada-exp.y (write_object_renaming): Replace struct
ada_symbol_info with struct block_symbol. Update field
references accordingly.
(block_lookup, select_possible_type_sym): Likewise.
(find_primitive_type): Likewise. Also update call to
ada_lookup_symbol to extract the symbol itself.
(write_var_or_type, write_name_assoc): Likewise.
* ada-lang.h (struct ada_symbol_info): Remove.
(ada_lookup_symbol_list): Replace struct ada_symbol_info with
struct block_symbol.
(ada_lookup_encoded_symbol, user_select_syms): Likewise.
(ada_lookup_symbol): Return struct block_symbol instead of a
mere symbol.
* ada-lang.c (defns_collected): Replace struct ada_symbol_info
with struct block_symbol.
(resolve_subexp, ada_resolve_function, sort_choices,
user_select_syms, is_nonfunction, add_defn_to_vec,
num_defns_collected, defns_collected,
symbols_are_identical_enums, remove_extra_symbols,
remove_irrelevant_renamings, add_lookup_symbol_list_worker,
ada_lookup_symbol_list, ada_iterate_over_symbols,
ada_lookup_encoded_symbol, get_var_value): Likewise.
(ada_lookup_symbol): Return a block_symbol instead of a mere
symbol. Replace struct ada_symbol_info with struct
block_symbol.
(ada_lookup_symbol_nonlocal): Likewise.
(standard_lookup): Make block passing explicit through
lookup_symbol_in_language.
* ada-tasks.c (get_tcb_types_info): Update the calls to
lookup_symbol_in_language to extract the mere symbol out of the
returned value.
(ada_tasks_inferior_data_sniffer): Likewise.
* ax-gdb.c (gen_static_field): Likewise for the call to
lookup_symbol.
(gen_maybe_namespace_elt): Deal with struct symbol_in_block from
lookup functions.
(gen_expr): Likewise.
* c-exp.y: Likewise. Remove uses of block_found.
(lex_one_token, classify_inner_name, c_print_token): Likewise.
(classify_name): Likewise. Rename the "sym" local variable to
"bsym".
* c-valprint.c (print_unpacked_pointer): Likewise.
* compile/compile-c-symbols.c (convert_symbol_sym): Promote the
"sym" parameter from struct symbol * to struct block_symbol.
Use it to remove uses of block_found. Deal with struct
symbol_in_block from lookup functions.
(gcc_convert_symbol): Likewise. Update the call to
convert_symbol_sym.
* compile/compile-object-load.c (compile_object_load): Deal with
struct symbol_in_block from lookup functions.
* cp-namespace.c (cp_lookup_nested_symbol_1,
cp_lookup_nested_symbol, cp_lookup_bare_symbol,
cp_search_static_and_baseclasses,
cp_lookup_symbol_in_namespace, cp_lookup_symbol_via_imports,
cp_lookup_symbol_imports_or_template,
cp_lookup_symbol_via_all_imports, cp_lookup_symbol_namespace,
lookup_namespace_scope, cp_lookup_nonlocal,
find_symbol_in_baseclass): Return struct symbol_in_block instead
of mere symbols and deal with struct symbol_in_block from lookup
functions.
* cp-support.c (inspect_type, replace_typedefs,
cp_lookup_rtti_type): Deal with struct symbol_in_block from
lookup functions.
* cp-support.h (cp_lookup_symbol_nonlocal,
cp_lookup_symbol_from_namespace,
cp_lookup_symbol_imports_or_template, cp_lookup_nested_symbol):
Return struct symbol_in_block instead of mere symbols.
* d-exp.y (d_type_from_name, d_module_from_name, push_variable,
push_module_name):
Deal with struct symbol_in_block from lookup functions. Remove
uses of block_found.
* eval.c (evaluate_subexp_standard): Update call to
cp_lookup_symbol_namespace.
* f-exp.y: Deal with struct symbol_in_block from lookup
functions. Remove uses of block_found.
(yylex): Likewise.
* gdbtypes.c (lookup_typename, lookup_struct, lookup_union,
lookup_enum, lookup_template_type, check_typedef): Deal with
struct symbol_in_block from lookup functions.
* guile/scm-frame.c (gdbscm_frame_read_var): Likewise.
* guile/scm-symbol.c (gdbscm_lookup_symbol): Likewise.
(gdbscm_lookup_global_symbol): Likewise.
* gnu-v3-abi.c (gnuv3_get_typeid_type): Likewise.
* go-exp.y: Likewise. Remove uses of block_found.
(package_name_p, classify_packaged_name, classify_name):
Likewise.
* infrun.c (insert_exception_resume_breakpoint): Likewise.
* jv-exp.y (push_variable): Likewise.
* jv-lang.c (java_lookup_class, get_java_object_type): Likewise.
* language.c (language_bool_type): Likewise.
* language.h (struct language_defn): Update
la_lookup_symbol_nonlocal to return a struct symbol_in_block
rather than a mere symbol.
* linespec.c (find_label_symbols): Deal with struct
symbol_in_block from lookup functions.
* m2-exp.y: Likewise. Remove uses of block_found.
(yylex): Likewise.
* mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
* objc-lang.c (lookup_struct_typedef, find_imps): Likewise.
* p-exp.y: Likewise. Remove uses of block_found.
(yylex): Likewise.
* p-valprint.c (pascal_val_print): Likewise.
* parse.c (write_dollar_variable): Likewise. Remove uses of
block_found.
* parser-defs.h (struct symtoken): Turn the SYM field into a
struct symbol_in_block.
* printcmd.c (address_info): Deal with struct symbol_in_block
from lookup functions.
* python/py-frame.c (frapy_read_var): Likewise.
* python/py-symbol.c (gdbpy_lookup_symbol,
gdbpy_lookup_global_symbol): Likewise.
* skip.c (skip_function_command): Likewise.
* solib-darwin.c (darwin_lookup_lib_symbol): Return a struct
symbol_in_block instead of a mere symbol.
* solib-spu.c (spu_lookup_lib_symbol): Likewise.
* solib-svr4.c (elf_lookup_lib_symbol): Likewise.
* solib.c (solib_global_lookup): Likewise.
* solist.h (solib_global_lookup): Likewise.
(struct target_so_ops): Update lookup_lib_global_symbol to
return a struct symbol_in_block rather than a mere symbol.
* source.c (select_source_symtab): Deal with struct
symbol_in_block from lookup functions.
* stack.c (print_frame_args, iterate_over_block_arg_vars):
Likewise.
* symfile.c (set_initial_language): Likewise.
* symtab.c (SYMBOL_LOOKUP_FAILED): Turn into a struct
symbol_in_block.
(SYMBOL_LOOKUP_FAILED_P): New predicate as a macro.
(struct symbol_cache_slot): Turn the FOUND field into a struct
symbol_in_block.
(block_found): Remove.
(eq_symbol_entry): Update to deal with struct symbol_in_block in
cache slots.
(symbol_cache_lookup): Return a struct symbol_in_block rather
than a mere symbol.
(symbol_cache_mark_found): Add a BLOCK parameter to fill
appropriately the cache slots. Update callers.
(symbol_cache_dump): Update cache slots handling to the type
change.
(lookup_symbol_in_language, lookup_symbol, lookup_language_this,
lookup_symbol_aux, lookup_local_symbol,
lookup_symbol_in_objfile, lookup_global_symbol_from_objfile,
lookup_symbol_in_objfile_symtabs,
lookup_symbol_in_objfile_from_linkage_name,
lookup_symbol_via_quick_fns, basic_lookup_symbol_nonlocal,
lookup_symbol_in_static_block, lookup_static_symbol,
lookup_global_symbol):
Return a struct symbol_in_block rather than a mere symbol. Deal
with struct symbol_in_block from other lookup functions. Remove
uses of block_found.
(lookup_symbol_in_block): Remove uses of block_found.
(struct global_sym_lookup_data): Turn the RESULT field into a
struct symbol_in_block.
(lookup_symbol_global_iterator_cb): Update references to the
RESULT field.
(search_symbols): Deal with struct symbol_in_block from lookup
functions.
* symtab.h (struct symbol_in_block): New structure.
(block_found): Remove.
(lookup_symbol_in_language, lookup_symbol,
basic_lookup_symbol_nonlocal, lookup_symbol_in_static_block,
looku_static_symbol, lookup_global_symbol,
lookup_symbol_in_block, lookup_language_this,
lookup_global_symbol_from_objfile): Return a struct
symbol_in_block rather than just a mere symbol. Update comments
to remove mentions of block_found.
* valops.c (find_function_in_inferior,
value_struct_elt_for_reference, value_maybe_namespace_elt,
value_of_this): Deal with struct symbol_in_block from lookup
functions.
* value.c (value_static_field, value_fn_field): Likewise.
commit 5efafabf7be800069e02f84589c9462e99079c4d
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Aug 1 00:00:08 2015 +0000
Automatic date update in version.in
commit 2c8c5d375e91824387eeacd1d710e714f1534d36
Author: Pedro Alves <palves@redhat.com>
Date: Fri Jul 31 20:06:24 2015 +0100
testsuite: tcl exec& -> 'kill -9 $pid' is racy (attach-many-short-lived-thread.exp races and others)
The buildbots show that attach-many-short-lived-thread.exp is racy.
But after staring at debug logs and playing with SystemTap scripts for
a (long) while, I figured out that neither GDB, nor the kernel nor the
test's program itself are at fault.
The problem is simply that the testsuite machinery is currently
subject to PID-reuse races. The attach-many-short-lived-threads.c
test program just happens to be much more susceptible to trigger this
race because threads and processes share the same number space on
Linux, and the test spawns many many short lived threads in
succession, thus enlarging the race window a lot.
Part of the problem is that several tests spawn processes with "exec&"
(in order to test the "attach" command) , and then at the end of the
test, to make sure things are cleaned up, issue a 'remote_spawn "kill
-p $testpid"'. Since with tcl's "exec&", tcl itself is responsible
for reaping the process's exit status, when we go kill the process,
testpid may have already exited _and_ its status may have (and often
has) been reaped already. Thus it can happen that another process
meanwhile reuses $testpid, and that "kill" command kills the wrong
process... Frequently, that happens to be
attach-many-short-lived-thread, but this explains other test's races
as well.
In the attach-many-short-lived-threads test, it sometimes manifests
like this:
(gdb) file /home/pedro/gdb/mygit/build/gdb/testsuite/gdb.threads/attach-many-short-lived-threads
Reading symbols from /home/pedro/gdb/mygit/build/gdb/testsuite/gdb.threads/attach-many-short-lived-threads...done.
(gdb) Loaded /home/pedro/gdb/mygit/build/gdb/testsuite/gdb.threads/attach-many-short-lived-threads into /home/pedro/gdb/mygit/build/gdb/testsuite/../../gdb/gdb
attach 5940
Attaching to program: /home/pedro/gdb/mygit/build/gdb/testsuite/gdb.threads/attach-many-short-lived-threads, process 5940
warning: process 5940 is a zombie - the process has already terminated
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ptrace: Operation not permitted.
(gdb) PASS: gdb.threads/attach-many-short-lived-threads.exp: iter 1: attach
info threads
No threads.
(gdb) PASS: gdb.threads/attach-many-short-lived-threads.exp: iter 1: no new threads
set breakpoint always-inserted on
(gdb) PASS: gdb.threads/attach-many-short-lived-threads.exp: iter 1: set breakpoint always-inserted on
Other times the process dies while the test is ongoing (the process is
ptrace-stopped):
(gdb) print again = 1
Cannot access memory at address 0x6020cc
(gdb) FAIL: gdb.threads/attach-many-short-lived-threads.exp: iter 2: reset timer in the inferior
(Recall that on Linux, SIGKILL is not interceptable)
And other times it dies just while we're detaching:
$4 = 319
(gdb) PASS: gdb.threads/attach-many-short-lived-threads.exp: iter 2: print seconds_left
detach
Can't detach Thread 0x7fb13b7de700 (LWP 1842): No such process
(gdb) FAIL: gdb.threads/attach-many-short-lived-threads.exp: iter 2: detach
GDB mishandles the latter (it should ignore ESRCH while detaching just
like when continuing), but that's another story.
The fix here is to change spawn_wait_for_attach to use Expect's
'spawn' command instead of Tcl's 'exec&' to spawn programs, because
with spawn we control when to wait for/reap the process. That allows
killing the process by PID without being subject to pid-reuse races,
because even if the process is already dead, the kernel won't reuse
the process's PID until the zombie is reaped.
The other part of the problem lies in DejaGnu itself, unfortunately.
I have occasionally seen tests (attach-many-short-lived-threads
included, but not only that one) die with a random inexplicable
SIGTERM too, and that too is caused by the same reason, except that in
that case, the rogue SIGTERM is sent from this bit in DejaGnu's remote.exp:
exec sh -c "exec > /dev/null 2>&1 && (kill -2 $pgid || kill -2 $pid) && sleep 5 && (kill $pgid || kill $pid) && sleep 5 && (kill -9 $pgid || kill -9 $pid) &"
...
catch "wait -i $shell_id"
Even if the program exits promptly, that whole cascade of kills
carries on in the background, thus potentially killing the poor
process that manages to reuse $pid...
I sent a fix for that to the DejaGnu list:
http://lists.gnu.org/archive/html/dejagnu/2015-07/msg00000.html
With both patches in place, I haven't seen
attach-many-short-lived-threads.exp fail again.
Tested on x86_64 Fedora 20, native, gdbserver and extended-gdbserver.
gdb/testsuite/ChangeLog:
2015-07-31 Pedro Alves <palves@redhat.com>
* gdb.base/attach-pie-misread.exp: Rename $res to $test_spawn_id.
Use spawn_id_get_pid. Wait for spawn id after eof. Use
kill_wait_spawned_process instead of explicit "kill -9".
* gdb.base/attach-pie-noexec.exp: Adjust to spawn_wait_for_attach
returning a spawn id instead of a pid. Use spawn_id_get_pid and
kill_wait_spawned_process.
* gdb.base/attach-twice.exp: Likewise.
* gdb.base/attach.exp: Likewise.
(do_command_attach_tests): Use gdb_spawn_with_cmdline_opts and
gdb_test_multiple.
* gdb.base/solib-overlap.exp: Adjust to spawn_wait_for_attach
returning a spawn id instead of a pid. Use spawn_id_get_pid and
kill_wait_spawned_process.
* gdb.base/valgrind-infcall.exp: Likewise.
* gdb.multi/multi-attach.exp: Likewise.
* gdb.python/py-prompt.exp: Likewise.
* gdb.python/py-sync-interp.exp: Likewise.
* gdb.server/ext-attach.exp: Likewise.
* gdb.threads/attach-into-signal.exp (corefunc): Use
spawn_wait_for_attach, spawn_id_get_pid and
kill_wait_spawned_process.
* gdb.threads/attach-many-short-lived-threads.exp: Adjust to
spawn_wait_for_attach returning a spawn id instead of a pid. Use
spawn_id_get_pid and kill_wait_spawned_process.
* gdb.threads/attach-stopped.exp (corefunc): Use
spawn_wait_for_attach, spawn_id_get_pid and
kill_wait_spawned_process.
* gdb.base/break-interp.exp: Rename $res to $test_spawn_id.
Use spawn_id_get_pid. Wait for spawn id after eof. Use
kill_wait_spawned_process instead of explicit "kill -9".
* lib/gdb.exp (can_spawn_for_attach): Adjust comment.
(kill_wait_spawned_process, spawn_id_get_pid): New procedures.
(spawn_wait_for_attach): Use spawn instead of exec to spawn
processes. Don't map cygwin/windows pids here. Now returns a
spawn id list.
commit b1c59ddc809bc4ad2c082b5cae02a18c68746257
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Fri Jul 31 14:08:14 2015 -0400
Fix m32r_remove_watchpoint parameter type
This change should have been in the previous patch (Mostly trivial enum
fixes).
gdb/ChangeLog:
* remote-m32r-sdi.c (m32r_remove_watchpoint): Use enum type
instead of integer.
commit f486487f558686c05d4f4d91a75638b9da399044
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Fri Jul 31 13:19:53 2015 -0400
Mostly trivial enum fixes
This is a patch I extracted from Pedro's C++ branch. It contains the
most trivial enum fixes, where an integer type/value was used instead
of the appropriate enum type/value. It fixes many C++ errors, since
in C++ you can't mix integers and enums implicitely.
Regardless of the C++ conversion, I think this is a good cleanup to make
use of the appropriate enum types.
Regression-tested on native x86_64.
gdb/ChangeLog:
* aarch64-linux-nat.c (aarch64_linux_can_use_hw_breakpoint): Use enum
type or value instead of integer.
(aarch64_linux_insert_watchpoint): Likewise.
(aarch64_linux_remove_watchpoint): Likewise.
* ada-lang.c (ada_op_print_tab): Likewise.
* amd64-linux-tdep.c (amd64_canonicalize_syscall): Likewise.
(amd64_linux_syscall_record_common): Likewise.
* arch-utils.c (target_byte_order_user): Likewise.
(default_byte_order): Likewise.
* arm-linux-nat.c (arm_linux_can_use_hw_breakpoint): Likewise.
(arm_linux_get_hwbp_type): Likewise.
(arm_linux_hw_watchpoint_initialize): Likewise.
(arm_linux_insert_watchpoint): Likewise.
* arm-linux-tdep.c (arm_canonicalize_syscall): Likewise.
(arm_linux_syscall_record): Likewise.
* breakpoint.c (update_watchpoint): Likewise.
(breakpoint_here_p): Likewise.
(bpstat_print): Likewise.
(enable_breakpoint_disp): Likewise.
* c-lang.c (c_op_print_tab): Likewise.
* cli/cli-decode.c (add_info_alias): Likewise.
* d-lang.c (d_op_print_tab): Likewise.
* eval.c (evaluate_subexp_standard): Likewise.
* f-exp.y (dot_ops): Likewise.
(f77_keywords): Likewise.
* f-lang.c (f_op_print_tab): Likewise.
* go-lang.c (go_op_print_tab): Likewise.
* guile/scm-breakpoint.c (gdbscm_make_breakpoint): Likewise.
* guile/scm-cmd.c (gdbscm_make_command): Likewise.
* guile/scm-param.c (gdbscm_make_parameter): Likewise.
* guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer): Likewise.
* guile/scm-string.c (struct scm_to_stringn_data): Likewise.
(struct scm_from_stringn_data): Likewise.
* i386-linux-tdep.c (i386_canonicalize_syscall): Likewise.
* ia64-linux-nat.c (ia64_linux_insert_watchpoint): Likewise.
(ia64_linux_remove_watchpoint): Likewise.
(ia64_linux_can_use_hw_breakpoint): Likewise.
* infrun.c (print_stop_event): Likewise.
* jv-lang.c (java_op_print_tab): Likewise.
* linux-nat.c (linux_proc_xfer_partial): Likewise.
* linux-nat.h (struct lwp_info): Likewise.
* linux-thread-db.c (enable_thread_event): Likewise.
* m2-lang.c (m2_op_print_tab): Likewise.
* mi/mi-cmd-stack.c (mi_cmd_stack_list_locals): Likewise.
(mi_cmd_stack_list_variables): Likewise.
* mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
* mi/mi-out.c (mi_table_begin): Likewise.
(mi_table_header): Likewise.
* mips-linux-nat.c (mips_linux_can_use_hw_breakpoint): Likewise.
(mips_linux_insert_watchpoint): Likewise.
(mips_linux_remove_watchpoint): Likewise.
* nat/mips-linux-watch.c (mips_linux_watch_type_to_irw): Likewise.
* nat/mips-linux-watch.h (struct mips_watchpoint): Likewise.
(mips_linux_watch_type_to_irw): Likewise.
* nto-procfs.c (procfs_can_use_hw_breakpoint): Likewise.
(procfs_insert_hw_watchpoint): Likewise.
(procfs_remove_hw_watchpoint): Likewise.
(procfs_hw_watchpoint): Likewise.
(procfs_can_use_hw_breakpoint): Likewise.
(procfs_remove_hw_watchpoint): Likewise.
(procfs_insert_hw_watchpoint): Likewise.
* p-lang.c (pascal_op_print_tab): Likewise.
* ppc-linux-nat.c (ppc_linux_can_use_hw_breakpoint): Likewise.
* ppc-linux-tdep.c (ppu2spu_unwind_register): Likewise.
* ppc-sysv-tdep.c (get_decimal_float_return_value): Likewise.
* procfs.c (procfs_can_use_hw_breakpoint): Likewise.
(procfs_insert_watchpoint): Likewise.
(procfs_remove_watchpoint): Likewise.
* psymtab.c (recursively_search_psymtabs): Likewise.
* remote-m32r-sdi.c (m32r_can_use_hw_watchpoint): Likewise.
(m32r_insert_watchpoint): Likewise.
* remote-mips.c (mips_can_use_watchpoint): Likewise.
(mips_insert_watchpoint): Likewise.
(mips_remove_watchpoint): Likewise.
* remote.c (watchpoint_to_Z_packet): Likewise.
(remote_insert_watchpoint): Likewise.
(remote_remove_watchpoint): Likewise.
(remote_check_watch_resources): Likewise.
* s390-linux-nat.c (s390_insert_watchpoint): Likewise.
(s390_remove_watchpoint): Likewise.
(s390_can_use_hw_breakpoint): Likewise.
* s390-linux-tdep.c (s390_gdbarch_init): Likewise.
* spu-linux-nat.c (spu_can_use_hw_breakpoint): Likewise.
* target.h (struct target_ops): Likewise.
* tilegx-tdep.c (tilegx_analyze_prologue): Likewise.
* ui-out.c (struct ui_out_hdr): Likewise.
(append_header_to_list): Likewise.
(get_next_header): Likewise.
(verify_field): Likewise.
(ui_out_begin): Likewise.
(ui_out_field_int): Likewise.
(ui_out_field_fmt_int): Likewise.
(ui_out_field_skip): Likewise.
(ui_out_field_string): Likewise.
(ui_out_field_fmt): Likewise.
* varobj.c (new_variable): Likewise.
* x86-nat.c (x86_insert_watchpoint): Likewise.
(x86_remove_watchpoint): Likewise.
(x86_can_use_hw_breakpoint): Likewise.
* xtensa-tdep.h (struct gdbarch_tdep): Likewise.
* inflow.c (enum gdb_has_a_terminal_flag_enum): Add name to
previously anonymous enumeration type..
* linux-record.h (enum gdb_syscall): Add gdb_sys_no_syscall
value.
* target-debug.h (target_debug_print_enum_target_hw_bp_type): New.
(target_debug_print_enum_bptype): New.
* target-delegates.c: Regenerate.
commit 22d31b1192bb38c766e349e5eed1a82298cc2c1f
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Jul 31 00:00:08 2015 +0000
Automatic date update in version.in
commit 032a0fca009e8ae7ffc5443d07d959c839dc7af4
Author: Sandra Loosemore <sandra@codesourcery.com>
Date: Thu Jul 30 14:20:01 2015 -0700
Replace incorrect patch to gdb.cp/var-tag.exp.
2015-07-30 Sandra Loosemore <sandra@codesourcery.com>
gdb/testsuite/
* gdb.cp/var-tag.exp (do_global_tests): Revert broken commit
4bc4d42859e3b42c79c89295ef39944bdb3e6753 and apply the
correct patch.
commit e1b5381f1b24d2c6b1e254cf7e35f8a470394adc
Author: Sandra Loosemore <sandra@codesourcery.com>
Date: Thu Jul 30 13:26:03 2015 -0700
Don't allow non-stack memory writes in the prologue for nios2.
2015-07-30 Sandra Loosemore <sandra@codesourcery.com>
gdb/
* nios2-tdep.c (nios2_analyze_prologue): Do what the comment
already says and disallow non-stack memory writes in the prologue.
commit 9aaf8e3a2875f719e4d5633ba222a3c04a5d0e8d
Author: Sandra Loosemore <sandra@codesourcery.com>
Date: Thu Jul 30 13:23:43 2015 -0700
Update trap/break handling in nios2 prologue analyzer.
2015-07-30 Sandra Loosemore <sandra@codesourcery.com>
gdb/
* nios2-tdep.c (nios2_analyze_prologue): Update comments to
reflect how current GCC emits stack overflow checks. Match
both trap and break instructions for backward compatibility.
Disallow other trap and break instructions in the prologue.
commit 61a934ca2090456acb4432b6c136241d3aaee7a2
Author: Sandra Loosemore <sandra@codesourcery.com>
Date: Thu Jul 30 12:06:29 2015 -0700
Restrict gdb.arch/ppc64-symtab-cordic.exp to ppc64 targets.
2015-07-30 Sandra Loosemore <sandra@codesourcery.com>
gdb/testsuite/
* gdb.arch/ppc64-symtab-cordic.exp: Restrict to ppc64 targets.
commit 4bc4d42859e3b42c79c89295ef39944bdb3e6753
Author: Sandra Loosemore <sandra@codesourcery.com>
Date: Thu Jul 30 11:52:49 2015 -0700
Reapply fix for gdb.cp/var-tag.exp C++ failures.
2015-07-30 Sandra Loosemore <sandra@codesourcery.com>
gdb/testsuite/
Reapply:
2014-05-21 Mark Wielaard <mjw@redhat.com>
* gdb.cp/var-tag.exp (do_global_tests): Handle underlying type.
commit 998d452ac81bc240996c967dd27f7b747240cd66
Author: Pedro Alves <palves@redhat.com>
Date: Thu Jul 30 18:41:44 2015 +0100
remote follow fork and spurious child stops in non-stop mode
Running gdb.threads/fork-plus-threads.exp against gdbserver in
extended-remote mode, even though the test passes, we still see broken
behavior:
(gdb) PASS: gdb.threads/fork-plus-threads.exp: set detach-on-fork off
continue &
Continuing.
(gdb) PASS: gdb.threads/fork-plus-threads.exp: continue &
[New Thread 28092.28092]
[Thread 28092.28092] #2 stopped.
[New Thread 28094.28094]
[Inferior 2 (process 28092) exited normally]
[New Thread 28094.28105]
[New Thread 28094.28109]
...
[Thread 28174.28174] #18 stopped.
[New Thread 28185.28185]
[Inferior 10 (process 28174) exited normally]
[New Thread 28185.28196]
[Thread 28185.28185] #20 stopped.
Cannot remove breakpoints because program is no longer writable.
Further execution is probably impossible.
[Inferior 11 (process 28185) exited normally]
[Inferior 1 (process 28091) exited normally]
PASS: gdb.threads/fork-plus-threads.exp: reached breakpoint
info threads
No threads.
(gdb) PASS: gdb.threads/fork-plus-threads.exp: no threads left
info inferiors
Num Description Executable
* 1 <null> /home/pedro/gdb/mygit/build/gdb/testsuite/gdb.threads/fork-plus-threads
(gdb) PASS: gdb.threads/fork-plus-threads.exp: only inferior 1 left
All the "[Thread FOO] #NN stopped." above are bogus, as well as the
"Cannot remove breakpoints because program is no longer writable.",
which is a consequence.
The problem is that when we intercept a fork event, we should report
the event for the parent, only, and leave the child stopped, but not
report its stop event. GDB later decides whether to follow the parent
or the child. But because handle_extended_wait does not set the
child's last_status.kind to TARGET_WAITKIND_STOPPED, a
stop_all_threads/unstop_all_lwps sequence (e.g., from trying to access
memory) by mistake ends up queueing a SIGSTOP on the child, resuming
it, and then when that SIGSTOP is intercepted, because the LWP has
last_resume_kind set to resume_stop, gdbserver reports the stop to
GDB, as GDB_SIGNAL_0:
...
>>>> entering unstop_all_lwps
unstopping all lwps
proceed_one_lwp: lwp 1600
client wants LWP to remain 1600 stopped
proceed_one_lwp: lwp 1828
Client wants LWP 1828 to stop. Making sure it has a SIGSTOP pending
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Sending sigstop to lwp 1828
pc is 0x3615ebc7cc
Resuming lwp 1828 (continue, signal 0, stop expected)
continue from pc 0x3615ebc7cc
unstop_all_lwps done
sigchld_handler
<<<< exiting unstop_all_lwps
handling possible target event
>>>> entering linux_wait_1
linux_wait_1: [<all threads>]
my_waitpid (-1, 0x40000001)
my_waitpid (-1, 0x1): status(137f), 1828
LWFE: waitpid(-1, ...) returned 1828, ERRNO-OK
LLW: waitpid 1828 received Stopped (signal) (stopped)
pc is 0x3615ebc7cc
Expected stop.
LLW: resume_stop SIGSTOP caught for LWP 1828.1828.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...
linux_wait_1 ret = LWP 1828.1828, 1, 0
<<<< exiting linux_wait_1
Writing resume reply for LWP 1828.1828:1
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Tested on x86_64 Fedora 20, extended-remote.
gdb/gdbserver/ChangeLog:
2015-07-30 Pedro Alves <palves@redhat.com>
* linux-low.c (handle_extended_wait): Set the child's last
reported status to TARGET_WAITKIND_STOPPED.
commit 69dde7dcb81f6baf2b823dcc03e040c29ee5de7d
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 22 18:01:46 2015 +0100
PR threads/18600: Inferiors left around after fork+thread spawn
The new gdb.threads/fork-plus-threads.exp test exposes one more
problem. When one types "info inferiors" after running the program,
one see's a couple inferior left still, while there should only be
inferior #1 left. E.g.:
(gdb) info inferiors
Num Description Executable
4 process 8393 /home/pedro/bugs/src/test
2 process 8388 /home/pedro/bugs/src/test
* 1 <null> /home/pedro/bugs/src/test
(gdb) info threads
Calling prune_inferiors() manually at this point (from a top gdb) does
not remove them, because they still have inf->pid != 0 (while they
shouldn't). This suggests that we never mourned those inferiors.
Enabling logs (master + previous patch) we see:
...
WL: waitpid Thread 0x7ffff7fc2740 (LWP 9513) received Trace/breakpoint trap (stopped)
WL: Handling extended status 0x03057f
LHEW: Got clone event from LWP 9513, new child is LWP 9579
[New Thread 0x7ffff37b8700 (LWP 9579)]
WL: waitpid Thread 0x7ffff7fc2740 (LWP 9508) received 0 (exited)
WL: Thread 0x7ffff7fc2740 (LWP 9508) exited.
^^^^^^^^
[Thread 0x7ffff7fc2740 (LWP 9508) exited]
WL: waitpid Thread 0x7ffff7fc2740 (LWP 9499) received 0 (exited)
WL: Thread 0x7ffff7fc2740 (LWP 9499) exited.
[Thread 0x7ffff7fc2740 (LWP 9499) exited]
RSRL: resuming stopped-resumed LWP Thread 0x7ffff37b8700 (LWP 9579) at 0x3615ef4ce1: step=0
...
(gdb) info inferiors
Num Description Executable
5 process 9508 /home/pedro/bugs/src/test
^^^^
4 process 9503 /home/pedro/bugs/src/test
3 process 9500 /home/pedro/bugs/src/test
2 process 9499 /home/pedro/bugs/src/test
* 1 <null> /home/pedro/bugs/src/test
(gdb)
...
Note the "Thread 0x7ffff7fc2740 (LWP 9508) exited." line.
That's this in wait_lwp:
/* Check if the thread has exited. */
if (WIFEXITED (status) || WIFSIGNALED (status))
{
thread_dead = 1;
if (debug_linux_nat)
fprintf_unfiltered (gdb_stdlog, "WL: %s exited.\n",
target_pid_to_str (lp->ptid));
}
}
That was the leader thread reporting an exit, meaning the whole
process is gone. So the problem is that this code doesn't understand
that an WIFEXITED status of the leader LWP should be reported to
infrun as process exit.
gdb/ChangeLog:
2015-07-30 Pedro Alves <palves@redhat.com>
PR threads/18600
* linux-nat.c (wait_lwp): Report to the core when thread group
leader exits.
gdb/testsuite/ChangeLog:
2015-07-30 Pedro Alves <palves@redhat.com>
PR threads/18600
* gdb.threads/fork-plus-threads.exp: Test that "info inferiors"
only shows inferior 1.
commit 4dd63d488a76482543517c4c4cde699ee6fa33ef
Author: Pedro Alves <palves@redhat.com>
Date: Thu Jul 30 18:50:29 2015 +0100
PR threads/18600: Threads left stopped after fork+thread spawn
When a program forks and another process start threads while gdb is
handling the fork event, newly created threads are left stuck stopped
by gdb, even though gdb presents them as "running", to the user.
This can be seen with the test added by this patch. The test has the
inferior fork a certain number of times and waits for all children to
exit. Each fork child spawns a number of threads that do nothing and
joins them immediately. Normally, the program should run unimpeded
(from the point of view of the user) and exit very quickly. Without
this fix, it doesn't because of some threads left stopped by gdb, so
inferior 1 never exits.
The program triggers when a new clone thread is found while inside the
linux_stop_and_wait_all_lwps call in linux-thread-db.c:
linux_stop_and_wait_all_lwps ();
ALL_LWPS (lp)
if (ptid_get_pid (lp->ptid) == pid)
thread_from_lwp (lp->ptid);
linux_unstop_all_lwps ();
Within linux_stop_and_wait_all_lwps, we reach
linux_handle_extended_wait with the "stopping" parameter set to 1, and
because of that we don't mark the new lwp as resumed. As consequence,
the subsequent resume_stopped_resumed_lwps, called from
linux_unstop_all_lwps, never resumes the new LWP.
There's lots of cruft in linux_handle_extended_wait that no longer
makes sense. On systems with CLONE events support, we don't rely on
libthread_db for thread listing anymore, so the code that preserves
stop_requested and the handling of last_resume_kind is all dead.
So the fix is to remove all that, and simply always mark the new LWP
as resumed, so that resume_stopped_resumed_lwps re-resumes it.
gdb/ChangeLog:
2015-07-30 Pedro Alves <palves@redhat.com>
Simon Marchi <simon.marchi@ericsson.com>
PR threads/18600
* linux-nat.c (linux_handle_extended_wait): On CLONE event, always
mark the new thread as resumed. Remove STOPPING parameter.
(wait_lwp): Adjust call to linux_handle_extended_wait.
(linux_nat_filter_event): Adjust call to
linux_handle_extended_wait.
(resume_stopped_resumed_lwps): Add debug output.
gdb/testsuite/ChangeLog:
2015-07-30 Simon Marchi <simon.marchi@ericsson.com>
Pedro Alves <palves@redhat.com>
PR threads/18600
* gdb.threads/fork-plus-threads.c: New file.
* gdb.threads/fork-plus-threads.exp: New file.
commit 6b940e6a063ac13372b44a03a54b6be33d22a183
Author: Pierre Langlois <pierre.langlois@arm.com>
Date: Thu Jul 30 18:05:00 2015 +0100
Remove isize output argument from fast_tracepoint_valid_at
This patch removes the isize output argument from the
fast_tracepoint_valid_at gdbarch hook. It was used to return the size
of the instruction that needs to be replaced when installing a fast
tracepoint. Instead of getting this value from the
fast_tracepoint_valid_at hook, we can call the gdb_insn_length function.
If we do not do this, then architectures which do not have a restriction
on where to install the fast tracepoint will send uninitialized memory
off to GDBserver. See remote_download_tracepoint:
~~~
int isize;
if (gdbarch_fast_tracepoint_valid_at (target_gdbarch (),
tpaddr, &isize, NULL))
xsnprintf (buf + strlen (buf), BUF_SIZE - strlen (buf), ":F%x",
isize);
~~~
The default implementation of fast_tracepoint_valid_at will not set
isize resulting in uninitialized memory being sent. Later on, GDBserver
could use this information to compute a jump offset.
gdb/ChangeLog:
* arch-utils.c (default_fast_tracepoint_valid_at): Remove unused
isize argument.
* arch-utils.h (default_fast_tracepoint_valid_at): Likewise.
* breakpoint.c (check_fast_tracepoint_sals): Adjust call to
gdbarch_fast_tracepoint_valid_at.
* gdbarch.sh (fast_tracepoint_valid_at): Remove isize argument.
* gdbarch.h: Regenerate.
* gdbarch.c: Regenerate.
* i386-tdep.c (i386_fast_tracepoint_valid_at): Remove isize
argument. Do not set it.
* remote.c (remote_download_tracepoint): Adjust call to
gdbarch_fast_tracepoint_valid_at. Call gdb_insn_length to get
the instruction length.
commit e8b416815be691cc3fb1212d1a3dcb5d21a0d19d
Author: Yao Qi <yao.qi@linaro.org>
Date: Thu Jul 30 15:07:39 2015 +0100
Remove global variable arm_hwcap
After previous patch, we don't need global variable arm_hwcap. This
patch is to remove it.
gdb/gdbserver:
2015-07-30 Yao Qi <yao.qi@linaro.org>
* linux-arm-low.c (arm_hwcap): Remove it.
(arm_read_description): New local variable arm_hwcap. Don't
set arm_hwcap to zero.
commit 89abb03951a90203c6635296447b7e96a1248a68
Author: Yao Qi <yao.qi@linaro.org>
Date: Thu Jul 30 15:07:39 2015 +0100
Use regcache->tdesc instead of arm_hwcap
arm_hwcap is a global variable, and we should avoid using it as much
as we can. Instead of checking arm_hwcap, we can check whether
regcache->tdesc is a certain kind of target description. This is
what this patch does.
gdb/gdbserver:
2015-07-30 Yao Qi <yao.qi@linaro.org>
* linux-arm-low.c (arm_fill_wmmxregset): Don't use arm_hwcap.
Use regcache->tdesc instead.
(arm_store_wmmxregset): Likewise.
(arm_fill_vfpregset): Likewise.
(arm_store_vfpregset): Likewise.
commit deca266c89cf61c679f759a74bdf362960b0cc2c
Author: Yao Qi <yao.qi@linaro.org>
Date: Thu Jul 30 15:07:38 2015 +0100
Don't use arm_regmap and arm_num_regs in arm_fill_gregset and arm_store_gregset
In order to align with arm-linux-nat.c counterparts, we don't use
arm_num_regs and arm_regmap in functions arm_fill_gregset and
arm_store_gregset. Instead, we use register numbers. With this
patch applied, arm_fill_gregset and arm_store_gregset don't need
arm_num_regs and arm_regmap, and they will be moved to a separate
file shared for both arm and aarch64 in the following patch.
gdb/gdbserver:
2015-07-30 Yao Qi <yao.qi@linaro.org>
* linux-arm-low.c: Include arch/arm.h.
(arm_fill_gregset): Don't use arm_num_regs and arm_regmap.
(arm_store_gregset): Likewise.
commit ec74129274bf2fb65aac9381a19731c570f7be29
Author: Yao Qi <yao.qi@linaro.org>
Date: Thu Jul 30 15:07:38 2015 +0100
Move ARM register numbers enum to arch/arm.h
This patch moves ARM register numbers enum to arch/arm.h, so that it
can used by GDBserver too.
This patch also creates a new directory gdb/arch in which arch-specific
or target-specific files are placed.
gdb:
2015-07-30 Yao Qi <yao.qi@linaro.org>
* arm-tdep.h (enum gdb_regnum): Move it to ...
* arch/arm.h: ... here. New file.
* Makefile.in (HFILES_NO_SRCDIR): Add arch/arm.h.
commit 0ea6402e6ce0af0623f0cfd180b626c7ccc41891
Author: Pierre Langlois <pierre.langlois@arm.com>
Date: Thu Jul 30 12:40:49 2015 +0100
[AArch64] Rename boolean arguments in decoding functions
This patch cleans up the decoding functions using booleans when they can
decode two instructions. The boolean argument is used to know which of
the two instructions was decoded.
The instructions affected are BR/BLR, B/BL, CBZ/CBNZ and TBZ/TBNZ.
These arguments would be named after a named bit in the instruction
encoding, this patch renames them to 'is_XXX'. Furthermore, the
'unsigned' type would be used to describe a boolean while
aarch64_decode_cb would use 'int' (see the 'is64' argument). This patch
makes all booleans be 'int' and decoded bitfields be 'unsigned'.
gdb/ChangeLog:
* aarch64-tdep.c (decode_b): Rename link argument to is_bl.
Change its type to int *.
(decode_br): Rename link argument to is_blr. Change its type to
int *.
(decode_cb): Rename op argument to is_cbnz. Change its type to
int *.
(decode_tb): Rename op argument to is_tbnz. Change its type to
int *. Set is_tbnz to either 1 or 0.
(aarch64_analyze_prologue): Change type of is_link to int. Add
new variables is_cbnz and is_tbnz. Adjust call to
aarch64_decode_cb and aarch64_decode_tb.
commit a8484f9612fc5b7d2b762b6fec950faa0fcd1483
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Jul 30 04:17:02 2015 -0700
Properly disassemble movnti in Intel mode
gas/testsuite/
PR binutils/13571
* gas/i386/i386.exp: Run i386-intel and x86_64-intel.
* gas/i386/i386-intel.d: New file.
* gas/i386/x86_64-intel.d: Likewise.
opcodes/
PR binutils/13571
* i386-dis.c (MOD_0FC3): New.
(PREFIX_0FC3): Renamed to ...
(PREFIX_MOD_0_0FC3): This.
(dis386_twobyte): Replace PREFIX_0FC3 with MOD_0FC3.
(prefix_table): Replace Ma with Ev on movntiS.
(mod_table): Add MOD_0FC3.
commit c6e8a9a802bcd3a96ef14b6ea1b6cd60d5d8d065
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Jul 30 03:27:44 2015 -0700
Don't change the default symbol for relocatable link
We should change the default symbol for the versioned symbol only when
not performing a relocatable link.
bfd/
PR ld/18735
* elflink.c (_bfd_elf_add_default_symbol): Add the default
symbol if not performing a relocatable link.
(elf_link_add_object_symbols): Adjust the default symbol if
not performing a relocatable link.
ld/testsuite/
PR ld/18735
* ld-elf/pr18735.d: New file.
* ld-elf/pr18735.s: Likewise.
commit 13be649613bb62e75296d1f69a7c889ddf29a564
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Thu Jul 30 00:00:08 2015 +0000
Automatic date update in version.in
commit aa58a496ed9a3ee19233af0bfb7c76ae02b9b2c1
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Wed Jul 29 17:15:46 2015 -0400
MIPS ptrace build fixes
Since Pedro's ptrace cleanups, the MIPS buildbot compilation fails.
Code in MIPS native uses ptrace with 3 arguments, where ptrace requires
4. When looking at the definition of ptrace in
/usr/include/sys/ptrace.h, it shows that it takes a variable number of
arguments. The wrapper macro in nat/gdb_ptrace.h takes a fixed number
of arguments (4). That would explain why it used to work and stopped.
I am pushing this as obvious, tell me if there is any problem.
I built-tested this with a MIPS toolchain (ct-ng), but I don't have any
setup to test it. At least it should put back the buildbot builder in a
better shape.
gdb/ChangeLog:
* mips-linux-nat.c (write_watchpoint_regs): Add NULL as ptrace's 4th
parameter.
(mips_linux_new_thread): Likewise.
* nat/mips-linux-watch.c (mips_linux_read_watch_registers): Likewise.
gdb/gdbserver/ChangeLog:
* linux-mips-low.c (mips_linux_prepare_to_resume): Add NULL as
ptrace's 4th parameter.
commit d618e4c51c73f2139a1aa8903d677a4202956f21
Author: Patrick Palka <patrick@parcs.ath.cx>
Date: Wed Jul 29 12:44:21 2015 -0400
batch-preserve-term-settings.exp: use send_quit_command some more
Just a slight cleanup. Committed as obvious.
gdb/testsuite/ChangeLog:
* gdb.base/batch-preserve-term-settings.exp
(test_terminal_settings_preserved_after_cli_exit): Use
send_quit_command.
commit 60b57502ec8b600dac3fe53aa6615965f0430a6d
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Jul 29 11:20:04 2015 -0700
Use noclone attribute only for GCC 4.5 or newer
noclone attribute was added to GCC 4.5. We should check GCC version
before using it.
* ld-elf/pr18718.c (bar): Use noclone attribute only for GCC
4.5 or newer.
commit de0a00263930c9ed3e4e330a0d8573df4805fe87
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Jul 29 10:51:08 2015 -0700
Move run-time support check for size relocation
We must check run-time support for size relocation first before running
the tests.
* ld-size/size.exp: Move run-time support check.
commit 06265e53f4657a86f3ac3485552b97c942c9f4ac
Author: Patrick Palka <patrick@parcs.ath.cx>
Date: Wed Jul 29 11:59:25 2015 -0400
Test that terminal settings are restored after quitting via SIGTERM
Tested on x86_64 Debian Stretch, native, gdbserver and
extended-gdbserver. Also tested that the various error paths, like if
$PPID is empty or if SIGTERM did not not kill GDB, function correctly.
gdb/testsuite/ChangeLog:
* gdb.base/batch-preserve-term-settings.exp (send_quit_command):
New proc.
(test_terminal_settings_preserved_after_sigterm): New test.
commit e77e648e93adf564fb10e725e4d8800d30a83eb5
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Jul 29 09:11:15 2015 -0700
Don't set link_info.executable for "ld -r"
This patch changes "ld -r" not to set link_info.executable. It
removes !info->relocatable check for info->executable and adds it
for !info->executable in elflink.c.
bfd/
* elflink.c (elf_link_add_object_symbols): Remove
!info->relocatable check for info->executable. Add
!info->relocatable check for !info->executable.
(elf_link_output_extsym): Remove
!info->relocatable check for info->executable.
ld/
* lexsup.c (parse_args): Don't set link_info.executable to
TRUE for link_info.relocatable.
commit 1eef6428112a1c1fe0295f36f92d7a3cf9908228
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 29 16:24:53 2015 +0100
Make gdb.base/multi-forks.exp work with the native-extended-gdbserver board
Now that we can expect inferior output with the gdbserver boards, this
is all it takes to have the test pass against extended-remote
gdbserver.
Don Breazeal originally wrong something like this:
https://sourceware.org/ml/gdb-patches/2015-03/msg00506.html
which was what originally inspired the introduction of
$inferior_spawn_id.
gdb/testsuite/ChangeLog:
2015-07-29 Pedro Alves <palves@redhat.com>
Don Breazeal <donb@codesourcery.com>
* gdb.base/multi-forks.exp (continue_to_exit_bp_loc): Expect
output from both inferior_spawn_id and gdb_spawn_id.
commit 7da5b897c96faa3c520662d2b0bd4837567bfb1d
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Wed Jul 29 11:10:49 2015 -0400
Uniquefy gdb.threads/attach-into-signal.exp
Hi,
While examining BuildBot's logs, I noticed:
<https://sourceware.org/ml/gdb-testers/2015-q3/msg03767.html>
gdb.threads/attach-into-signal.exp has two nested loops and don't use
unique messages. This commit fixes that. Pushed under the obvious
rule.
gdb/testsuite/ChangeLog:
2015-07-29 Sergio Durigan Junior <sergiodj@redhat.com>
* gdb.threads/attach-into-signal.exp (corefunc): Use
with_test_prefix on nested loops, uniquefying the test messages.
commit dac804dfa6389b71f50b5e169ffa4e239958e774
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Wed Jul 29 10:16:38 2015 -0400
Fix typo in gdb.python/py-objfile.exp
My last commit d60a92216e5d599fed6b37c58c744debe38a0b24 introduced a
regression caused by a typo. This fixes it. Checked in as obvious.
Thanks to Pedro for reporting.
gdb/testsuite/ChangeLog:
2015-07-29 Sergio Durigan Junior <sergiodj@redhat.com>
* gdb.python/py-objfile.exp: Fix typo that snuck in from my last
commit.
commit 18206ca3f9367f1488cdfc1475f8da072e7e9636
Author: Patrick Palka <patrick@parcs.ath.cx>
Date: Mon Jul 27 11:54:07 2015 -0400
Make sure terminal settings are restored before exiting
When exiting GDB -- whether it's via the "quit" command, via a SIGTERM,
or otherwise -- we should leave the terminal in the state we acquired
it. To that end, we have to undo any modifications that may have been
made by the TUI (ncurses) or by the CLI (readline).
Tested on x86_64 Debian Stretch.
gdb/ChangeLog:
* top.c: Include "tui/tui.h".
(undo_terminal_modifications_before_exit): New static function.
(quit_force): Use it.
gdb/testsuite/ChangeLog:
* gdb.base/batch-preserve-term-settings.exp
(test_terminal_settings_preserved_after_cli_exit): New test.
commit 7afa63c624ae570472381b8e35ce066bf145844a
Author: Patrick Palka <patrick@parcs.ath.cx>
Date: Tue Jul 28 13:58:17 2015 -0400
Initialize terminal_state to terminal_is_ours
Right now this variable is initialized to 0 i.e. terminal_is_inferior
and does not get set to terminal_is_ours until target_terminal_init() is
called. This function however only gets called when an inferior is
first created. In the meantime, terminal_state would wrongly remain set
to terminal_is_inferior.
Tested on x86_64 Debian Stretch -- native, gdbserver and
extended-gdbserver.
gdb/ChangeLog:
* target.c (terminal_state): Initialize to terminal_is_ours.
commit 90074d118de70c5eb2c71ba83e58d96359149d79
Author: Patrick Palka <patrick@parcs.ath.cx>
Date: Mon Jul 27 22:10:13 2015 -0400
Clean up batch-preserve-term-settings.exp
See ChangeLog for details. No functional change intended.
Tested on x86_64 Debian Stretch by verifying that the gdb.log output
remains unchanged for native, gdbserver and extended-gdbserver.
gdb/testsuite/ChangeLog:
* gdb.base/batch-preserve-term-settings.exp: Remove top-level
manipulation of saved_gdbflags.
(test_terminal_settings_preserved): Remove global declaration of
the unused variable pagination_prompt. Remove manipulation of
saved_gdbflags. Use a local variable EXTRA_GDBFLAGS instead of
GDBFLAGS.
commit cc9f16aa882eb22cb2128c5eb8237fd453ab2988
Author: Yao Qi <yao.qi@linaro.org>
Date: Wed Jul 29 12:43:10 2015 +0100
PR record/18691: Fix fails in solib-precsave.exp
We see the following regressions in testing on x86_64-linux,
reverse-step^M
Cannot access memory at address 0x2aaaaaed26c0^M
(gdb) FAIL: gdb.reverse/solib-precsave.exp: reverse-step into solib function one
when GDB reverse step into a function, GDB wants to skip prologue so
it requests TARGET_OBJECT_CODE_MEMORY to read some code memory in
memory_xfer_partial_1. However in dcache_read_memory_partial, the object
becomes TARGET_OBJECT_MEMORY
return ops->to_xfer_partial (ops, TARGET_OBJECT_MEMORY, NULL,
myaddr, NULL, memaddr, len,
xfered_len);
in reverse debugging, ops->to_xfer_partial is record_full_core_xfer_partial
and it will return TARGET_XFER_E_IO because it can't find any records.
The test fails.
At this moment, the delegate relationship is like
dcache -> record-core -> core -> exec
and we want to GDB read memory across targets, which means if the
requested memory isn't found in record-core, GDB can read memory from
core, and exec even further if needed. I find raw_memory_xfer_partial
is exactly what I want.
gdb:
2015-07-29 Yao Qi <yao.qi@linaro.org>
PR record/18691
* dcache.c (dcache_read_memory_partial): Call
raw_memory_xfer_partial.
* target.c (raw_memory_xfer_partial): Make it non-static.
* target.h (raw_memory_xfer_partial): Declare.
commit eb1a79028c63ca565850c5d64ae60193f90cd841
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 29 11:09:46 2015 +0100
Don't set gdb,noinferiorio on gdbserver boards
As all tests that check gdb,noinferiorio have been adjusted to expect
inferior output with "-i $inferior_spawn_id", we can remove this now,
and thus enable those tests against gdbserver.
gdb/testsuite/ChangeLog:
2015-07-29 Pedro Alves <palves@redhat.com>
* boards/gdbserver-base.exp: Don't set gdb,noinferiorio.
commit 8b75dd3b8a32e790d7d9f1621ad4fbb6d7af9e8e
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 29 11:09:46 2015 +0100
interrupt.exp: Revert back to checking gdb,noinferiorio at the top
The following patch will remove the gdb,noinferiorio setting from the
gdbserver boards, so this bit can be reverted.
gdb/testsuite/ChangeLog:
2015-07-29 Pedro Alves <palves@redhat.com>
* gdb.base/interrupt.exp: Revert back to checking gdb,noinferiorio
at the top.
commit dedad4e3d2ed1d6ecdb89422fc0baa028021f19d
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 29 11:09:45 2015 +0100
Unbuffer all tests that rely on stdio
This forces all tests that rely on stdio to be unbuffered, like
interrupt.exp was adjusted in 6f98576f.
To recap, in some scenarios, GDB or GDBserver can be spawned with
input _not_ connected to a tty, and then tests that rely on stdio fail
with timeouts, because the inferior's stdout and stderr streams end up
fully buffered. Calling gdb_unbuffer_output forces output to be
unbuffered.
See https://sourceware.org/ml/gdb-patches/2015-02/msg00809.html and
https://sourceware.org/ml/gdb-patches/2015-02/msg00819.html.
Tested on x86_64 Fedora 20, native, and against a remote gdbserver
board file that connects to the target with ssh, with and without -t
(create pty).
gdb/testsuite/ChangeLog:
2015-07-29 Pedro Alves <palves@redhat.com>
* gdb.base/call-ar-st.c: Include "../lib/unbuffer_output.c".
(main): Call gdb_unbuffer_output.
* gdb.base/call-rt-st.c: Include "../lib/unbuffer_output.c".
(main): Call gdb_unbuffer_output.
* gdb.base/call-strs.c: Include "../lib/unbuffer_output.c".
(main): Call gdb_unbuffer_output.
* gdb.base/call-strs.exp: Adjust to step over the
gdb_unbuffer_output call.
* gdb.base/catch-gdb-caused-signals.c: Include
"../lib/unbuffer_output.c".
(main): Call gdb_unbuffer_output.
* gdb.base/dprintf.c: Include "../lib/unbuffer_output.c".
(main): Call gdb_unbuffer_output.
* gdb.base/ending-run.c: Include "../lib/unbuffer_output.c".
(main): Call gdb_unbuffer_output.
* gdb.base/run.c: Include "../lib/unbuffer_output.c".
(main): Call gdb_unbuffer_output.
* gdb.base/shlib-call.exp: Adjust to step over the
gdb_unbuffer_output call.
* gdb.base/shmain.c: Include "../lib/unbuffer_output.c".
(main): Call gdb_unbuffer_output.
* gdb.base/sizeof.c: Include "../lib/unbuffer_output.c".
(main): Call gdb_unbuffer_output.
* gdb.base/varargs.c: Include "../lib/unbuffer_output.c".
(main): Rename to ...
(test): ... this.
(main): Reimplement.
* gdb.base/varargs.exp: Run to test instead of to main.
* gdb.mi/mi-dprintf.c: Include "../lib/unbuffer_output.c".
(main): Call gdb_unbuffer_output.
commit 58789a917b7eed57c5200ec0a4d8a2fc44efc64c
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 29 11:09:45 2015 +0100
Make gdb.mi/mi-dprintf.exp use $inferior_spawn_id
gdb/testsuite/ChangeLog:
2015-07-29 Pedro Alves <palves@redhat.com>
* gdb.mi/mi-dprintf.exp (mi_expect_dprintf): New procedure,
factore out from mi_continue_dprintf. For call-style dprintfs,
expect dprintf output out of $inferior_spawn_id.
(mi_continue_dprintf): Use mi_expect_dprintf.
* gdb.mi/mi-dprintf.c: Include "../lib/unbuffer_output.c".
(main): Call gdb_unbuffer_output.
commit e8376742bdba233d14cfbff91776be065ae27587
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 29 11:09:44 2015 +0100
Adjust MI to $inferior_spawn_id
Rather than trying to determine where (which spawn id) the inferior
output comes out from, which depends on e.g., remote that supports
file i/o remote protocol extension, vs remote that sends inferior
output through a separate $inferior_spawn_id, vs native debugging,
which sends output through $gdb_spawn_id, vs native debugging with a
test that uses "separate-inferior-tty" (like mi-console.exp does),
always expect inferior output from both $inferior_spawn_id and
$gdb_spawn_id.
mi-console.exp itself already copes with different possible outputs in
a similar way:
# Combine both outputs in a single pattern.
set output "($semihosted_output|$native_output)"
Fixes:
FAIL: gdb.mi/mi-console.exp: Testing console output inferior output (timeout)
when testing against local gdbserver with gdb,noinferiorio removed
from the board file.
gdb/testsuite/ChangeLog:
2015-07-29 Pedro Alves <palves@redhat.com>
* lib/mi-support.exp (mi_inferior_spawn_id): Delete.
(default_mi_gdb_start): Set inferior_spawn_id instead of
mi_inferior_spawn_id. If $inferior_spawn_id is not set, set it to
gdb_spawn_id.
(mi_gdb_test): Always expect inferior output from both
$inferior_spawn_id and $gdb_spawn_id.
commit 0828001082ea8dfd223211373fb912d47f715827
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 29 11:09:44 2015 +0100
Make gdb.gdb/selftest.exp use '-i $inferior_spawn_id'
gdb/testsuite/ChangeLog:
2015-07-29 Pedro Alves <palves@redhat.com>
* gdb.gdb/selftest.exp (test_with_self): Update comment. Use
send_inferior and $inferior_spawn_id.
commit 4d30e4328fd344ef6f26c7ee520d08813da69a33
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 29 11:09:43 2015 +0100
Make gdb.gdb/complaints.exp use '-i $inferior_spawn_id' and gdb_test_stdio
gdb/testsuite/ChangeLog:
2015-07-29 Pedro Alves <palves@redhat.com>
* gdb.gdb/complaints.exp (test_initial_complaints)
(test_serial_complaints, test_short_complaints): Use
gdb_test_stdio.
(test_empty_complaint): Handle $inferior_spawn_id !=
$gdb_spawn_id.
commit 0d30a335a6747bb0e2847e0aee2ba958cf19dac7
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 29 11:09:43 2015 +0100
Make gdb.base/varargs.exp use gdb_test_stdio
gdb/testsuite/ChangeLog:
2015-07-29 Pedro Alves <palves@redhat.com>
* gdb.base/varargs.exp: Use gdb_test_stdio.
commit 39413b296f9eb92ae3936bf29397ac1d35ca803b
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 29 11:09:42 2015 +0100
Make gdb.base/shlib-call.exp use gdb_test_stdio
gdb/testsuite/ChangeLog:
2015-07-29 Pedro Alves <palves@redhat.com>
* gdb.base/shlib-call.exp: Use gdb_test_stdio.
commit 7cb000a97ebcf7f23fe1b63fbbdd86d87b8c8634
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 29 11:09:42 2015 +0100
Make gdb.base/ending-run.exp use gdb_test_stdio
gdb/testsuite/ChangeLog:
2015-07-29 Pedro Alves <palves@redhat.com>
* gdb.base/ending-run.exp: Use gdb_test_stdio.
commit d7b8ac8297642399a10216068b8003cd778b7237
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 29 11:09:41 2015 +0100
Make gdb.base/call-rt-st.exp use $inferior_spawn_id
gdb/testsuite/ChangeLog:
2015-07-29 Pedro Alves <palves@redhat.com>
* gdb.base/call-rt-st.exp (print_struct_call): Split "result"
parameter into two new parameters, "inf_result" and "gdb_result".
Expect inferior output and gdb output from $inferior_spawn_id and
$gdb_spawn_id, respectively. Adjust all callers.
commit 789c3a0cc3b1ace2d54ecc37fdbdb967f1810aaf
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 29 11:09:40 2015 +0100
Make gdb.base/call-ar-st.exp use gdb_test_stdio
gdb/testsuite/ChangeLog:
2015-07-29 Pedro Alves <palves@redhat.com>
* gdb.base/call-ar-st.exp: Use gdb_test_stdio+multi_line instead
of gdb_test_sequence.
commit 77e760c3aae925fef163d866a651079fea5f3143
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 29 11:09:40 2015 +0100
Make gdb.base/a2-run.exp use $inferior_spawn_id and gdb_test_stdio
This one is a little more complicated than the other patches in this
series, because of the exit status wrapper handling, requiring a
little state machine.
gdb/testsuite/ChangeLog:
2015-07-29 Pedro Alves <palves@redhat.com>
* gdb.base/a2-run.exp (saw_usage, saw_exit_wrapper)
(saw_spurious_output): Expect inferior output from
$inferior_spawn_id. Use gdb_test_stdio.
commit 8396d2cdf4b013b237bf8cca306bbec602bdbb72
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 29 11:09:39 2015 +0100
Make gdb.base/dprintf.exp use gdb_test_stdio
This one needed a larger revamp. The issue is that the "info
breakpoints" test at the bottom of the file is broken on targets that
can do both server-side dprintf, and inferior I/O, because then
neither the breakpoint numbers match nor the "already hit N times"
output.
Address that by making the test restart gdb from scratch when
switching between dprintf styles. Test groups are factored into
procedures, and we now use with_test_prefix. While we're changing
test messages, lowercase a few test messages, and then while at it,
modernize a couple things here and there.
gdb/testsuite/ChangeLog:
2015-07-29 Pedro Alves <palves@redhat.com>
* gdb.base/dprintf.exp: Use standard_testfile. Change
prepare_for_testing call.
(srcfile): Don't set.
(restart): New procedure.
(test_dprintf): New procecure, use to continue over dprintfs.
(test_call, test_agent): New procedures, tests moved here.
Restart gdb and recreate dprintfs. Adjust expected output.
commit 2051d61f76bc009f42d094e57fa0e7114fb23a4e
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 29 11:09:39 2015 +0100
Make gdb.base/catch-gdb-caused-signals.exp use gdb_test_stdio
gdb/testsuite/ChangeLog:
2015-07-29 Pedro Alves <palves@redhat.com>
* gdb.base/catch-gdb-caused-signals.exp: Use gdb_test_stdio.
commit 452397af30f68f6d4ed05fa6d9fc30ca70cbe7f9
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 29 11:09:38 2015 +0100
Make gdb.base/call-strs.exp use gdb_test_stdio
gdb/testsuite/ChangeLog:
2015-07-29 Pedro Alves <palves@redhat.com>
* gdb.base/call-strs.exp: Use gdb_test_stdio instead of gdb_test.
commit 8aed9555b232946606f3fb9370c1657a71c2afaf
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 29 11:09:38 2015 +0100
Make gdb.base/sizeof.exp use gdb_test_stdio
gdb/testsuite/ChangeLog:
2015-07-29 Pedro Alves <palves@redhat.com>
* gdb.base/sizeof.exp (check_sizeof, check_valueof): Use
gdb_test_stdio.
commit 188a61b4404369ae30dce95ad4b05975a3609a33
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 29 11:09:37 2015 +0100
Introduce gdb_test_stdio
This adds a new helper procedure to be used by tests that rely on
stdio.
gdb/testsuite/ChangeLog:
2015-07-29 Pedro Alves <palves@redhat.com>
* lib/gdb.exp (gdb_test_stdio): New procedure.
commit 12264a451d993a0a8635be82bed15618e0f4645f
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 29 11:09:37 2015 +0100
Don't rely on inferior I/O in gdb.base/restore.exp
There seems to be no point in relying on stdio here. Simply use
gdb_continue_to_end instead.
(not removing the printf calls, as the .c file is half generated.)
gdb/testsuite/ChangeLog:
2015-07-29 Pedro Alves <palves@redhat.com>
* gdb.base/restore.exp (restore_tests): Use gdb_continue_to_end.
commit 23ffc893f5693f20dc807c6a7daad402de0c2e51
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 29 11:09:36 2015 +0100
Don't rely on inferior I/O in {call-signal-resume, unwindonsignal}.exp
These tests rely on inferior I/O, but that seems pointless and
unrelated here. Simply remove the printf calls, and don't expect
them.
gdb/testsuite/ChangeLog:
2015-07-29 Pedro Alves <palves@redhat.com>
* gdb.base/call-signal-resume.exp: Remove check for
gdb,noinferiorio. Don't expect "no signal". Use gdb_test.
* gdb.base/unwindonsignal.exp: Likewise.
* gdb.base/call-signals.c (gen_signal): Remove printf call.
* gdb.base/unwindonsignal.c (gen_signal): Likewise.
commit 655669183104eb8eab559b5faf2b5a676ab6cd3f
Author: Pedro Alves <palves@redhat.com>
Date: Wed Jul 29 11:09:36 2015 +0100
Don't rely on inferior I/O in gdb.base/siginfo-addr.exp
No point in relying on stdio in this test. Simply run to a breakpoint
instead.
gdb/testsuite/ChangeLog:
2015-07-29 Pedro Alves <palves@redhat.com>
* gdb.base/siginfo-addr.c (pass): New function.
(handler): Call it iff si_addr is correct.
* gdb.base/siginfo-addr.exp: Remove gdb_skip_stdio_test check.
Set a breakpoint at "pass" and continue to it.
commit 11509220a045532b1995b4af5dac2f921b541003
Author: Hans-Peter Nilsson <hp@bitrange.com>
Date: Wed Jul 29 05:39:27 2015 +0200
bfd/mmo.c (MMIX): Fix massive gcc LTO testsuite failures.
* mmo.c (mmo_write_symbols_and_terminator): Skip symbol-type
assignment loop for bfd plugin objects.
commit a66f09dd911338fb02ee40cec3840f579f533262
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Wed Jul 29 00:00:09 2015 +0000
Automatic date update in version.in
commit d60a92216e5d599fed6b37c58c744debe38a0b24
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Tue Jul 28 17:38:14 2015 -0400
Uniquify test names from gdb.python/{py-objfile.exp,py-pp-registration.exp}
While running some regression tests, I noticed that the two Python
tests mentioned in the $SUBJECT contain non-unique names. This is a
violation of our guidelines:
<https://sourceware.org/gdb/wiki/GDBTestcaseCookbook#Make_sure_test_messages_are_unique>
And also makes things harder for BuildBot. So I hacked both testcases
and made every test name unique. I guess this could be considered an
obvious patch, but I decided to post it before pushing because others
may have different opinions about the names.
OK to apply?
gdb/testsuite/ChangeLog:
2015-07-28 Sergio Durigan Junior <sergiodj@redhat.com>
* gdb.python/py-objfile.exp: Make some tests have unique names.
* gdb.python/py-pp-registration.exp: Likewise.
commit bde40b8f563dd682b9c6bcb8e24c3f5bd944a4f6
Author: Pedro Alves <palves@redhat.com>
Date: Tue Jul 28 18:04:07 2015 +0100
Fix gdb.server/server-exec-info.exp with the extended-remote board
This test fails with --target_board=native-extended-gdbserver because
it misses the usual "disconnect":
(gdb) spawn ../gdbserver/gdbserver --once :2347 /home/pedro/gdb/mygit/build/gdb/testsuite/gdb.server/server-exec-info
Process /home/pedro/gdb/mygit/build/gdb/testsuite/gdb.server/server-exec-info created; pid = 4736
Listening on port 2347
target extended-remote localhost:2347
Already connected to a remote target. Disconnect? (y or n) ^CsQuit
(gdb) et sysroot remote:
Undefined command: "et". Try "help".
(gdb) n
The program is not being run.
(gdb) FAIL: gdb.server/server-exec-info.exp: set sysroot remote: (got interactive prompt)
info files
(gdb) FAIL: gdb.server/server-exec-info.exp: info files
gdb/testsuite/ChangeLog:
2015-07-28 Pedro Alves <palves@redhat.com>
* gdb.server/server-exec-info.exp: Issue a "disconnect".
commit 3ae385afe150f2e001a1cc8fb14f4ba0ab94cdf2
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Tue Jul 28 11:01:50 2015 -0400
Consider addressable memory unit size in various value functions
This patch updates various value handling functions to make them
consider the addressable memory unit size of the current architecture.
This allows to correctly extract and print values on architectures whose
addressable memory unit is not 8 bits.
The patch doesn't cover all the code that would ideally need to be
adjusted, only the code paths that we happen to use, plus a few obvious
ones. Specifically, those areas are not covered by this patch:
- Management of unavailable bits
- Bitfields
- C++ stuff
Regression-tested on x86-64 Ubuntu 14.04. I saw no related test result
change.
gdb/ChangeLog:
* c-valprint.c (c_val_print_array): Consider addressable memory
unit size.
(c_val_print_ptr): Likewise.
(c_val_print_int): Likewise.
* findvar.c (read_frame_register_value): Likewise.
* valarith.c (find_size_for_pointer_math): Likewise.
(value_ptrdiff): Likewise.
(value_subscripted_rvalue): Likewise.
* valops.c (read_value_memory): Likewise (and rename variables).
(value_assign): Likewise.
(value_repeat): Likewise.
(value_array): Likewise.
(value_slice): Likewise.
* valprint.c (generic_val_print_ptr): Likewise.
(generic_val_print_enum): Likewise.
(generic_val_print_bool): Likewise.
(generic_val_print_int): Likewise.
(generic_val_print_char): Likewise.
(generic_val_print_float): Likewise.
(generic_val_print_decfloat): Likewise.
(generic_val_print_complex): Likewise.
(val_print_scalar_formatted): Likewise.
(val_print_array_elements): Likewise.
* value.c (set_value_parent): Likewise.
(value_contents_copy_raw): Likewise.
(set_internalvar_component): Likewise.
(value_primitive_field): Likewise.
(value_fetch_lazy): Likewise.
* value.h (read_value_memory): Update comment.
commit e512cdbdffafefa63baeb835ba6636fcef56e17d
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Tue Jul 28 11:01:50 2015 -0400
Introduce get_value_arch
Similar to get_type_arch, used to get the gdbarch associated to a
struct value.
gdb/ChangeLog:
* value.c (get_value_arch): New function.
* value.h (get_value_arch): New declaration.
commit 3723fda829671b273d7b31a0753bb1fa8f614cb6
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Tue Jul 28 11:01:49 2015 -0400
Update comments in struct value for non-8-bits architectures
gdb/ChangeLog:
* value.c (struct value): Update comments.
commit 2e0569314c2ee9e5635899d47b0bc0a4b9b08d8d
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Tue Jul 28 11:01:49 2015 -0400
Update comment for struct type's length field, introduce type_length_units
This patch tries to clean up a bit the blur around the length field in
struct type, regarding its use with architectures with non-8-bits
addressable memory. It clarifies that the field is expressed in host
bytes, which is what is the closest to the current reality.
It also introduces a new function to get the length of the type in
target addressable memory units.
gdb/ChangeLog:
* gdbtypes.c (type_length_units): New function.
* gdbtypes.h (type_length_units): New declaration.
(struct type) <length>: Update comment.
commit c6e5c03a2c0dfa224a71056ede035476e511f5fc
Author: Robert Suchanek <robert.suchanek@imgtec.com>
Date: Tue Jul 28 11:26:39 2015 +0100
Add cores for M5100 series
gas/
* config/tc-mips.c (mips_cpu_info_table): Add m5100 and m5101 entries.
* doc/c-mips.texi: Document m5100 and m5101 for -march=.
commit 77403ce9669d35b286b3ca75fdc1e4c61f36b59a
Author: Robert Suchanek <robert.suchanek@imgtec.com>
Date: Tue Jul 28 11:26:31 2015 +0100
Add -march=interaptiv
gas/
* config/tc-mips.c (mips_cpu_info_table): Add interaptiv entry.
* doc/c-mips.text: Document -march=interaptiv.
commit e5654c0f8492e65b3e3ac5e1a2276856049eb1b1
Author: Alan Modra <amodra@gmail.com>
Date: Tue Jul 28 11:03:57 2015 +0930
Fallout from "Reorder more powerpc64 sections for -z relro"
Commit 23283c1b changed the layout of some bss style sections on
powerpc64, but neglected to add a page gap before the third PT_LOAD
segment created by this reording. Without a page gap we get two
PT_LOAD headers that overlap by one page in memory. That shouldn't be
allowed because the dynamic loader will load garbage from the first
page of the last segment over the last page of the previous segment.
bfd/
* elf.c (_bfd_elf_map_sections_to_segments): Do not make a new
segment for loaded sections after nonloaded sections if the
sections are on the same page.
ld/testsuite/
* ld-powerpc/elfv2so.d: Update
commit d6f1bafa2c05241b89c0303a9f6a2af89f51c39c
Author: Iain Buclaw <ibuclaw@gdcproject.org>
Date: Tue Jul 28 09:57:32 2015 +0200
Check for asprintf and vasprintf during configure stage.
This should fix some build errors seen on AIX, MinGW, and possibly other
non-GNU systems too due to missing asprintf().
bfd/
* configure.in: Add asprintf and vasprintf to AC_CHECK_DECLS.
* config.in, configure: Regenerate.
commit 671c4e31fb12f1bee30d3bb5f8ad95f17d8d4663
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Tue Jul 28 00:00:08 2015 +0000
Automatic date update in version.in
commit 6f8ea6c424a3ceda065c39903065cfb251add37d
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Jul 27 16:16:17 2015 -0700
Set NOPIE_CFLAGS and NOPIE_LDFLAGS
GCC 6 can be configured to generate PIE by default. But some linker
size tests expect non-PIE. This patch defines NOPIE_CFLAGS to
"-fno-PIE" and NOPIE_LDFLAGS to "-no-pie" if target compiler supports
them. Add $NOPIE_CFLAGS and $NOPIE_LDFLAGS to linker size tests if
needed.
* config/default.exp (NOPIE_CFLAGS): New.
(NOPIE_LDFLAGS): Likewise.
* ld-size/size.exp (run_cc_link_tests): Add $NOPIE_CFLAGS and
$NOPIE_LDFLAGS if needed.
(run_ld_link_exec_tests): Add $NOPIE_CFLAGS if needed.
commit 13e1dec8960122ec0329f74e5915503e14db5ea2
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jul 27 15:49:24 2015 -0400
gdb.mi/mi-pending.c: Return NULL instead of nothing in thread function
Using gcc 5.2 (maybe other versions as well), building mi-pending.c gives
these warnings:
./gdb.mi/mi-pending.c: In function âthread_funcâ:
./gdb.mi/mi-pending.c:34:5: warning: âreturnâ with no value, in function returning non-void
return;
^
./gdb.mi/mi-pending.c:38:5: warning: âreturnâ with no value, in function returning non-void
return;
^
gdb_compile_pthreads assumes that the build was successful only if there
is no output. These warnings therefore make gdb_compile_pthreads think
that the build failed, and the test doesn't run.
The easy fix is to replace the "return" with "return NULL". I am
pushing this as obvious.
gdb/testsuite/ChangeLog:
* gdb.mi/mi-pending.c (thread_func): Replace return with return
NULL.
commit da33c9a7bff093e772a381bf9ab42d876089cdcf
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jul 27 15:02:10 2015 -0400
Remove xfail in gdb.mi/mi-watch.exp
I noticed there was an unexpected pass in mi-watch.exp when running on
x86_64. Doing a bit of archeology shows that the xfail was added by
4a543da. This particular test failed on the MIPS architecture, which
the original contributor was working with. Here is the thread:
https://www.sourceware.org/ml/gdb-patches/2007-09/msg00151.html
Looking at the latest buildbot results for MIPS, it seems that it's also
an unexpected pass on that architecture. Therefore, I see no reason to
leave the xfail in place.
gdb/testsuite/ChangeLog:
* gdb.mi/mi-watch.exp (test_watchpoint_triggering): Remove xfail.
commit 0c87c0bfdfe19d5e2b8938d1db42c43e7b19e53f
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jul 27 14:11:26 2015 -0400
Factor out complex printing code from generic_val_print
gdb/ChangeLog:
* valprint.c (generic_val_print): Factor out complex
printing code to ...
(generic_val_print_complex): ... this new function.
commit 9550ae5e548dd63599ffadedfe8d1768bfc94072
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jul 27 14:11:25 2015 -0400
Factor out decfloat printing code from generic_val_print
gdb/ChangeLog:
* valprint.c (generic_val_print): Factor out decfloat
printing code to ...
(generic_val_print_decfloat): ... this new function.
commit 7784724bb1b8a5732239e27935cd76813b9df35c
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jul 27 14:11:24 2015 -0400
Factor out float printing code from generic_val_print
gdb/ChangeLog:
* valprint.c (generic_val_print): Factor out float
printing code to ...
(generic_val_print_float): ... this new function.
commit 385f5affc00e88ad6ff0f8287bb3c1c43d59351c
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jul 27 14:11:24 2015 -0400
Factor out char printing code from generic_val_print
gdb/ChangeLog:
* valprint.c (generic_val_print): Factor out char
printing code to ...
(generic_val_print_char): ... this new function.
commit b21b63420be3857c1d0e2676e1214d63fe38ed3d
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jul 27 14:11:23 2015 -0400
Factor out int printing code from generic_val_print
gdb/ChangeLog:
* valprint.c (generic_val_print): Factor out integer
printing code to ...
(generic_val_print_int): ... this new function.
commit e5bead4b23122be39e0bf32889fd609df6299e1c
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jul 27 14:11:23 2015 -0400
Factor out bool printing code from generic_val_print
gdb/ChangeLog:
* valprint.c (generic_val_print): Factor out bool
printing code to ...
(generic_val_print_bool): ... this new function.
commit 4a8c372f1f82d1be24d2575e5979690efd839e08
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jul 27 14:11:22 2015 -0400
Factor out function/method printing code from generic_val_print
gdb/ChangeLog:
* valprint.c (generic_val_print): Factor out function/method
printing code to ...
(generic_val_print_func): ... this new function.
commit d93880bd1cd10d0ccf5346e261d5d145d50d8ab0
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jul 27 14:11:22 2015 -0400
Factor out flags printing code from generic_val_print
gdb/ChangeLog:
* valprint.c (generic_val_print): Factor out flags
printing code to ...
(generic_val_print_flags): ... this new function.
commit ef0bc0dd961898d393627c3d502ad168028d7c40
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jul 27 14:11:21 2015 -0400
Factor out enum printing code from generic_val_print
gdb/ChangeLog:
* valprint.c (generic_val_print): Factor out enum
printing code to ...
(generic_val_print_enum): ... this new function.
commit fe43fede4726122efbee9d52b9e68b47be97757f
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jul 27 14:11:21 2015 -0400
Factor out reference printing code from generic_val_print
gdb/ChangeLog:
* valprint.c (generic_val_print): Factor out reference
printing code to ...
(generic_val_print_ref): ... this new function.
commit 45000ea2f350fae68b4524059ae1876f8e89f2bb
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jul 27 14:11:20 2015 -0400
Factor out memberptr printing code from generic_val_print
gdb/ChangeLog:
* valprint.c (generic_val_print): Factor out memberptr
printing code to ...
(generic_val_print_memberptr): ... this new function.
commit 81eb921ae109e875b9df6435ac6947181d824a67
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jul 27 14:11:19 2015 -0400
Factor out pointer printing code from generic_val_print
gdb/ChangeLog:
* valprint.c (generic_val_print): Factor out pointer
printing code to ...
(generic_val_print_ptr): ... this new function.
commit 557dbe8a5ea7f87fd9e6910997ca04f306cab195
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jul 27 14:11:19 2015 -0400
Factor out array printing code from generic_val_print
gdb/ChangeLog:
* valprint.c (generic_val_print): Factor out array
printing code to ...
(generic_val_print_array): ... this new function.
commit 9f436164d55690a0b3d2e4308bfd8834996b97d1
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Jul 27 14:11:18 2015 -0400
Factor out print_unpacked_pointer from generic_val_print
gdb/ChangeLog:
* valprint.c (generic_val_print): Factor out
print_unpacked_pointer code to ...
(print_unpacked_pointer): ... this new function.
commit c45bd4fd43e5eb0cbad8ec410504e4778c64c65d
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Jul 27 10:04:31 2015 -0700
Check address of versined symbol
Since GCC 5 folds symbol address comparison, assuming each symbol has a
different address, &foo == &bar is always false for GCC 5. This patch
adds check_ptr_eq if 2 addresses are the same and uses it to check the
address of versined symbol.
PR ld/18718
* ld-elf/check-ptr-eq.c: New file.
* ld-elf/pr18718.c (main): Call check_ptr_eq.
* ld-elf/shared.exp: Add check-ptr-eq.c to PR ld/18718 tests.
commit 077836f7cf6725386c01ae3bb7111663b8f2b85e
Author: Patrick Palka <patrick@parcs.ath.cx>
Date: Fri Jul 24 13:58:47 2015 -0400
Have SIGTERM promptly quit GDB even when the dummy target is active
GDB currently does not promptly quit after receiving a SIGTERM while no
proper target is active. This is because in handle_sigterm we currently
look at target_can_async_p to determine whether to asynchronously quit
GDB using an async signal handler or to asynchronously quit using the
quit flag. However, target_can_async_p is always false under the dummy
target, so under this target we always use the quit flag and not the
async signal handler to signal that GDB should quit. So GDB won't quit
until a code path that checks the quit flag is executed.
To fix this issue, this patch makes the SIGTERM handler no longer
inspect target_can_async_p, and instead makes the handler
unconditionally set the quit flag _and_ mark the corresponding async
signal handler, so that if the target is async (or if it's the dummy
target) then we will likely quit through the async signal handler, and
if it's not async then we will likely quit through the quit flag. This
redundant approach is similar to how we handle SIGINT.
gdb/ChangeLog:
* event-top.c (handle_sigterm): Don't inspect
target_can_async_p. Always set the quit flag and always mark
the async signal handler.
gdb/testsuite/ChangeLog:
* gdb.base/gdb-sigterm-2.exp: New test.
commit 50904b25ecf09f14c9406157b7f51255b21f54c0
Author: Yao Qi <yao.qi@linaro.org>
Date: Mon Jul 27 16:15:48 2015 +0100
[gdbserver] Don't set srv_linux_usrregs for aarch64*-*-linux*
We don't use PTRACE_PEEKUSR/PTRACE_POKEUSR on aarch64-linux, so don't
need to set srv_linux_usrregs. This patch removes that line.
gdb/gdbserver:
2015-07-27 Yao Qi <yao.qi@linaro.org>
* configure.srv (case aarch64*-*-linux*): Don't set
srv_linux_usrregs.
commit 3a60804fbca012d751d21fde17592df0eee8d82a
Author: Yao Qi <yao.qi@linaro.org>
Date: Mon Jul 27 16:12:31 2015 +0100
Fix ChangeLog entry
commit 206350da0f99b9a50fe6405613b3b05561a55aae
Author: Yao Qi <yao.qi@linaro.org>
Date: Thu Jul 23 16:26:14 2015 +0100
Remove REMOTE_EXAMPLES from gdb/Makefile.in
I happen to see REMOTE_EXAMPLES isn't used anywhere, so this patch
removes it.
REMOTE_EXAMPLES was added in the following commit in 1991,
commit 86bbb439c8fa01fd55d6cbce102483a471ffd0c4
Author: John Gilmore <gnu@cygnus>
Date: Fri May 3 19:57:13 1991 +0000
There should be a Makefile in the cvs main directory, configured
for "./config.gdb none", so that things like "make tags" and "make tar"
will work.
and it was used like:
TARFILES = ${TAGFILES_MAINDIR} ${OTHERS} ${REMOTE_EXAMPLES}
However TARFILES was removed by the change latter in 1994,
Tue Aug 16 15:24:03 1994 Jim Kingdon (kingdon@lioth.cygnus.com)
* symtab.c (decode_line_1): If funfirstline and we get a
non-LOC_BLOCK symbol (e.g. variable or type), then error().
* Makefile.in (TARFILES, NONSRC, SFILES_STAND, SFILES_KGDB):
Remove; unused.
Since then, REMOTE_EXAMPLES is not used any more.
gdb:
2015-07-27 Yao Qi <yao.qi@linaro.org>
* Makefile.in (REMOTE_EXAMPLES): Remove it.
commit 37a42ee9ad4e4bf635edc87661acb42175f20f91
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Jul 27 07:56:32 2015 -0700
Regenerate configure files
bfd/
* configure: Regenerated.
binutils/
* configure: Regenerated.
gas/
* configure: Regenerated.
gold/
* configure: Regenerated.
gprof/
* configure: Regenerated.
ld/
* configure: Regenerated.
opcodes/
* configure: Regenerated.
commit 136bb21fda016fcfc97dfeff692ee899951148de
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Jul 27 07:49:05 2015 -0700
Sync toplevel files with GCC
Sync with GCC
2015-07-24 Michael Darling <darlingm@gmail.com>
PR other/66259
* config-ml.in: Reflects renaming of configure.in to configure.ac
* configure: Likewise
* configure.ac: Likewise
commit edb71a9c3838b83424f6eb0ef04eab5b31aa7f4a
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Jul 27 07:43:26 2015 -0700
Sync config with GCC
Sync with GCC
2015-07-24 Micahel Darling <darlingm@gmail.com>
PR other/66259
* gettext.m4: Reflects renaming of configure.in to configure.ac
* po.m4: Likewise
* stdint.m4: Likewise
* tcl.m4: Likewise
commit 79559014b26f3c6bc64f29dabce613fa89418ee5
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Jul 27 15:15:28 2015 +0100
Fix the address size computation for the MSP430 port.
* elf32-msp430.c (uses_large_model): New function.
(msp430_elf_eh_frame_address_size): New function.
(elf_backend_eh_frame_address_size): Define.
commit 219a6876d48c9986b47d045a41b74cb6c84a2116
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Jul 27 05:18:20 2015 -0700
Append $PLT_CFLAGS to CC/CXX for S-records tests
S-records tests don't work with -fno-plt. This path appends $PLT_CFLAGS
to CC and CXX for S-records tests.
* ld-srec/srec.exp (CC): Save and restore. Append $PLT_CFLAGS.
(CXX): Likewise.
commit cda77e9efc68d04e50990ea72890bd8e515d4d7b
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Jul 27 05:17:26 2015 -0700
Pass $PLT_CFLAGS to ld_compile
Some linker shard library tests without PIC expect PLT. This patch
passes $PLT_CFLAGS to ld_compile.
* ld-shared/shared.exp: Pass $PLT_CFLAGS to ld_compile.
commit 379d3f1ffc3fab112a0f388a1565c6be2f74f5c3
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Jul 27 05:16:38 2015 -0700
Append $PLT_CFLAGS to CC for NOCROSSREFS tests
NOCROSSREFS tests don't work with -fno-plt. This path appends
$PLT_CFLAGS to CC for NOCROSSREFS tests.
* ld-scripts/crossref.exp (CC): Save and restore. Append
$PLT_CFLAGS.
commit ea9fb8b3e9f9624262984ad402f2aac34c65534d
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Jul 27 05:15:48 2015 -0700
Add $PLT_CFLAGS to -fPIC for run_cc_link_tests
Some x86 linker tests expect PLT. This patch adds $PLT_CFLAGS to -fPIC
for run_cc_link_tests.
* ld-i386/i386.exp (run_cc_link_tests): Add $PLT_CFLAGS to
-fPIC if needed.
* ld-x86-64/mpx.exp (run_cc_link_tests): Likewise.
* ld-x86-64/x86-64.exp (run_cc_link_tests): Likewise.
commit faebca0390ceef085f383d42423e14079dcd0a48
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Jul 27 05:15:01 2015 -0700
Pass $PLT_CFLAGS to ld_compile
Some linker visibility tests without PIC expect PLT. This patch passes
$PLT_CFLAGS to ld_compile.
* ld-elfvsb/elfvsb.exp (visibility_run): Pass $PLT_CFLAGS to
ld_compile.
commit c4972ed6029abb1a56eeafe144000031d902f074
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Jul 27 05:13:55 2015 -0700
Pass $PLT_CFLAGS to build_binary
Some linker symbol version tests without PIC expect PLT. This patch
adds $PLT_CFLAGS to CFLAGS.
* ld-elfvers/vers.exp (build_vers_lib_no_pic): Pass $PLT_CFLAGS
to build_binary.
commit e10461aebd2c9165c168583e70e7901e962ed1bb
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Jul 27 03:42:39 2015 -0700
Set PLT_CFLAGS to "-fplt" if supported
GCC 6 supports -fno-plt. But some linker tests expect PLT. This patch
defines PLT_CFLAGS to "-fplt" if target compiler supports it.
* config/default.exp (PLT_CFLAGS): New.
commit 32f573bcb3aaa1c9defcad79dbb5851fcc02ae2d
Author: Szabolcs Nagy <szabolcs.nagy@arm.com>
Date: Mon Jul 27 11:48:48 2015 +0100
[AArch64] Fix extern protected data handling
Emit *GLOB_DAT instead of *RELATIVE relocs for protected data
in shared objects.
This is needed for the fix of glibc bug 17711:
https://sourceware.org/bugzilla/show_bug.cgi?id=17711
bfd:
PR ld/18705
* elfnn-aarch64.c (elf_backend_extern_protected_data): Define.
ld/testsuite:
PR ld/18705
* ld-aarch64/protected-data.d: New.
* ld-aarch64/protected-data.s: New.
* ld-aarch64/aarch64-elf.exp: Add new test.
commit b68a20d6675f1360ea4db50a9835c073675b9889
Author: Szabolcs Nagy <szabolcs.nagy@arm.com>
Date: Mon Jul 27 11:45:27 2015 +0100
[ARM] Fix extern protected data handling
Emit *GLOB_DAT instead of *RELATIVE relocs for protected data
in shared objects.
This is needed for the fix of glibc bug 17711:
https://sourceware.org/bugzilla/show_bug.cgi?id=17711
bfd:
PR ld/18705
* elf32-arm.c (elf_backend_extern_protected_data): Define.
ld/testsuite:
PR ld/18705
* ld-arm/protected-data.d: New.
* ld-arm/protected-data.s: New.
* ld-arm/arm-elf.exp: Add new test.
commit 0c096ed760273eb364d2e4e6def21f688ceff525
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Mon Jul 27 00:00:08 2015 +0000
Automatic date update in version.in
commit edcab5e8bdaafdb96b182693a5c8eab020ba3e5c
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sun Jul 26 14:55:39 2015 -0700
Compile PR ld/18718 tests with -O2
PR ld/18718
* ld-elf/shared.exp: Compile PR ld/18718 tests with -O2.
commit d76b6207439e16b98aa04f38b730376257b31a62
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sun Jul 26 11:55:57 2015 -0700
Set errcnt and warncnt to 0 in run_host_cmd_yesno
run_host_cmd_yesno should set errcnt and warncnt to 0. Otherwise, they
may leak to the next run.
* lib/ld-lib.exp (run_host_cmd_yesno): Set errcnt and warncnt
to 0.
commit ab3b14b04b35e4e9ee8bd8cdb38ef888f0922da5
Author: Doug Kwan <dougkwan@google.com>
Date: Sun Jul 26 00:54:26 2015 -0700
Make arm_unaligned_reloc test less sensitive to disassembler output format.
commit c9f35b348e586c0f48592918324b6e15c815a702
Author: Kevin Buettner <kevinb@redhat.com>
Date: Fri Jul 10 10:25:29 2015 -0700
remote.c: Make read_ptid return a null value when no thread id is found.
When using GDB to debug an RX target using the GDB remote protocol,
using a Renesas supplied debug agent, I encountered the following
assertion error:
thread.c:85: internal-error: inferior_thread: Assertion `tp' failed.
A problem internal to GDB has been detected,
further debugging may prove unreliable.
Create a core file of GDB? (y or n) n
Command aborted.
This assertion error occurs due to the fact that the value associated
with inferior_ptid is not on the thread list.
The remote debug output (obtained with "set debug remote 1") is fairly
short, so I will include it up to the point where things go wrong -
which is somewhat before the assertion failure:
(gdb) target remote coyote.lan:61234
Remote debugging using coyote.lan:61234
Sending packet: $qSupported:multiprocess+;swbreak+;hwbreak+;qRelocInsn+#c9...Ack
Packet received: PacketSize=c00;qXfer:memory-map:read-;qXfer:features:read-;QStartNoAckMode+;multiprocess+;QNonStop+
Packet qSupported (supported-packets) is supported
Sending packet: $QStartNoAckMode#b0...Ack
Packet received: OK
Sending packet: $Hgp0.0#ad...Packet received: OK
Sending packet: $QNonStop:0#8c...Packet received: OK
Sending packet: $qTStatus#49...Packet received:
Packet qTStatus (trace-status) is NOT supported
Sending packet: $?#3f...Packet received: S02
Sending packet: $qfThreadInfo#bb...Packet received: m1
Sending packet: $qsThreadInfo#c8...Packet received: l
Sending packet: $qAttached:a410#bf...Packet received: 0
Packet qAttached (query-attached) is supported
Sending packet: $Hc-1#09...Packet received: OK
Sending packet: $qC#b4...Packet received: QC not supported
Above is the trace starting from the invocation of "target remote"
through the call of get_current_thread() in remote_start_remote().
Below, I've pasted this line of code along with additional lines of
context. The test following the call is especially important to
understanding both the problem and my patch.
/* We have thread information; select the thread the target
says should be current. If we're reconnecting to a
multi-threaded program, this will ideally be the thread
that last reported an event before GDB disconnected. */
inferior_ptid = get_current_thread (wait_status);
if (ptid_equal (inferior_ptid, null_ptid))
{
/* Odd... The target was able to list threads, but not
tell us which thread was current (no "thread"
register in T stop reply?). Just pick the first
thread in the thread list then. */
inferior_ptid = thread_list->ptid;
}
}
Prior to getting to the code pasted above, remote_start_remote()
made a call to target_update_thread_list(). This corresponds to the
following lines from the above trace:
Sending packet: $qfThreadInfo#bb...Packet received: m1
Sending packet: $qsThreadInfo#c8...Packet received: l
Sending packet: $qAttached:a410#bf...Packet received: 0
Packet qAttached (query-attached) is supported
Once target_update_thread_list has completed, the thread list
contains a single entry: {pid = 42000, lwp = 1, tid = 0}.
remote_start_remote() then makes a call to set_continue_thread(),
accounting for this line of the trace:
Sending packet: $Hc-1#09...Packet received: OK
Finally, the call to get_current_thread() is responsible for the last
line of the trace that I provided above:
Sending packet: $qC#b4...Packet received: QC not supported
get_current_thread() calls stop_reply_extract_thread() with the wait
status. This returns null_ptid.
get_current_thread() then calls remote_current_thread with a null
inferior_ptid. After the calls to putpkt() and getpkt(), rs->buf[0]
is 'Q', so read_ptid() is called and its result is returned.
The buffer passed to read_ptid() is " not supported". read_ptid ultimately
returns a ptid of {pid = 4200, lwp = 0, tid = 0}.
However, this thread is not on the thread list. As noted earlier, the
call to target_update_thread_list() had placed {pid = 42000, lwp = 1,
tid = 0} on the list. This is the only thread in the list.
When these calls ultimately return to remote_start_remote(),
inferior_ptid gets set to {pid = 4200, lwp = 0, tid = 0}, which
(again) is not on the thread list.
It appears to me that the string " not supported" is coming from the
debug agent. If so, it should be fixed, but I don't see a reason to
not consult the thread list in order to place a valid thread id in
inferior_ptid.
This (consultation of the thread list) is what is done when
inferior_ptid is null_ptid:
if (ptid_equal (inferior_ptid, null_ptid))
{
/* Odd... The target was able to list threads, but not
tell us which thread was current (no "thread"
register in T stop reply?). Just pick the first
thread in the thread list then. */
inferior_ptid = thread_list->ptid;
}
My patch causes a null inferior_ptid to be returned by read_ptid when
no thread id is found in the response from the debug agent. This
return value ends up being returned by remote_current_thread() and
then by get_current_thread. The assignment then places this null
value into inferior_ptid. That, in turn, allows the ptid_equal test
(noted above) to fetch a valid thread from the thread list. I no
longer see the assertion failure due a good value (which is on the
thread list) being placed in inferior_ptid.
This patch also adds two log warnings that may be output when "set
debug remote 1" is used. When running against the Renesas debug agent
mentioned earlier, this is the relevant portion of the log output:
Sending packet: $qC#b4...Packet received: QC not supported
warning: garbage in qC reply
warning: couldn't determine remote current thread; picking first in list.
gdb/ChangeLog:
* remote.c (read_ptid): Return null_ptid when no thread id
is found.
(remote_current_thread): Add log warning for malformed
qC reply.
(remote_start_remote): Add log warning when current thread
not found.
commit 805cee45cdf608922af942ff8ff1ccf4da78412b
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sun Jul 26 00:00:11 2015 +0000
Automatic date update in version.in
commit 5836a818eccb180d75c92ce4c861abb6fe8dec23
Author: Patrick Palka <patrick@parcs.ath.cx>
Date: Sat Jul 25 15:41:05 2015 -0400
Revert "Sync readline/ to version 7.0 alpha"
This reverts commit b558ff043d41ba8d17a82f5f9ae5f9dade66160e.
This reverts commit 4a11f2065906976675808364ddbd1c0f77eea41f.
The initial import commit failed to retain local changes made to
readline's configure.in (and the commit message erroneously stated that
there were no local changes that needed to be reapplied). Also the
import caused a couple of build errors and a scattering of testsuite
regressions throughout many arches. It's probably better to start over
with this import, hopefully more carefully next time.
commit b8cc7b2e9afab37eb9a7cff0d3ae4ebbcf7d494f
Author: Doug Evans <xdje42@gmail.com>
Date: Sat Jul 25 12:07:28 2015 -0700
Revert: * Makefile.in (check/%.exp): Pass directory for GDB_PARALLEL.
Regressions, e.g.,
http://gdb-build.sergiodj.net/builders/Fedora-x86_64-m32/builds/1501
gdb/testsuite/ChangeLog:
Revert:
* Makefile.in (check/%.exp): Pass directory for GDB_PARALLEL.
(workers/%.worker, build-perf): New rule.
(GDB_PERFTEST_MODE): New variable.
(check-perf): Use it.
(clean): Clean up gdb.perf parallel build subdirs.
* lib/build-piece.exp: New file.
* lib/cache.exp (gdb_do_cache): Include $GDB_PARALLEL in path name.
* lib/gdb.exp (standard_output_file): Include $GDB_PARALLEL in path
name.
(standard_temp_file): Ditto.
(GDB_PARALLEL handling): Make outputs,temp,cache directories as subdirs
of $GDB_PARALLEL.
commit b558ff043d41ba8d17a82f5f9ae5f9dade66160e
Author: Patrick Palka <patrick@parcs.ath.cx>
Date: Sat Jul 25 11:14:34 2015 -0400
Don't build readline's shared libs by default
Since the sync to version 7.0-alpho, readline now by default builds
(unused) shared libraries alongside static libraries, whereas before it
only built static libraries. A couple of GDB buildbots were not happy
with this change:
http://gdb-build.sergiodj.net/builders/AIX-POWER7-plain/builds/240
http://gdb-build.sergiodj.net/builders/Fedora-i686/builds/1518
To get these buildbots building again, this patch alters readline's
configure.ac file to not build shared libraries by default, as was the
case with readline 6.2. A more permanent fix may be to alter the
top-level Makefile.def to pass --disable-shared to readline, or to
investigate why these building these shared libraries are giving the
buildbots trouble. (I think the proximate reason why the i686 buildbot
fails is because it passes CFLAGS=-m32 instead of CC="gcc -m32" to the
top-level configure script, and readline's linker commands don't inherit
CFLAGS. Not sure about the AIX failure.)
readline/ChangeLog.gdb:
* configure.ac: Default opt_shared_libs to no.
* configure: Regenerate.
commit 18d9555c6e7c34beb40f54e670c11b76b61be13f
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sat Jul 25 08:10:51 2015 -0700
Add missing ChangeLog files
commit 1659f720b0818d6666570f79bef53ac461b2b22f
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sat Jul 25 07:56:18 2015 -0700
Skip missing symbol version section check for executable
Missing symbol version section is a run-time problem only if it will
be referenced dynamically at run-time. We should skip the check for
locally defined symbol, which isn't referenced by shared library, when
linking executable.
bfd/
PR ld/18718
* elflink.c (elf_link_output_extsym): Check symbol version
section check only if not linking executable, the symbol is
referenced by shared library or not locally defined.
ld/testsuite/
PR ld/18718
* ld-elf/pr18718.c: New file.
* ld-elf/shared.exp: Run tests for PR ld/18718.
commit 4a11f2065906976675808364ddbd1c0f77eea41f
Author: Patrick Palka <patrick@parcs.ath.cx>
Date: Tue Jul 14 20:29:21 2015 -0400
Sync readline/ to version 7.0 alpha
This patch syncs our upstream copy of readline from version 6.2 to the
latest version, 7.0 alpha (released July 10 2015).
I essentially copied what was done the last time readline was synced,
when Jan updated to readline 6.2 in 2011:
http://sourceware.org/ml/gdb-patches/2011-05/msg00003.html
Procedure:
1. I extracted the readline-7.0-alpha tarball on top of readline/.
2. I deleted all the new files under doc/ that were deliberately omitted
before.
3. I regenerated readline/configure and readline/examples/rlfe/configure
using autoconf 2.64. No other configure files need regenerating.
4. I updated the function gdb_printable_part in completer.c with a
trivial change made to the readline function it is based off of,
printable_part in readline/complete.c. There is more work to be done in
completer.c to sync it with readline/complete.c, but it is non-trivial
and should probably be done separately anyway.
Local patches that had to be reapplied:
None. readline 7.0 alpha contains all of our local readline
patches.
New files in readline/:
colors.{c,h}
examples/{hist_erasedups,hist_purgecmd,rl-callbacktest,rlbasic}.c
parse-colors.{c,h}
readline.pc.in
configure.ac
Deleted files in readline/:
configure.in
Regressions:
After the sync there is one testsuite regression, the test
"signal SIGINT" in gdb.gdb/selftest.exp which now FAILs. Previously,
the readline 6.2 SIGINT handler would temporarily reinstall the
underlying application's SIGINT handler and immediately re-raise SIGINT
so that the orginal handler gets invoked. But now (since readline 6.3)
its SIGINT handler does not re-raise SIGINT or directly invoke the
original handler; it now sets a flag marking that SIGINT was raised, and
waits until readline explicitly has control to call the application's
SIGINT handler. Anyway, because SIGINT is no longer re-raised from
within readline's SIGINT handler, doing "signal SIGINT" with a stopped
inferior gdb process will no longer resume and then immediately stop the
process (since there is no 2nd SIGINT to immediately catch). Instead,
the inferior gdb process will now just print "Quit" and continue to run.
So with this commit, this particular test case is adjusted to reflect
this change in behavior (we now have to send a 2nd SIGINT manually to
stop it).
Aside from this one testsuite regression, I personally noticed no
regression in user-visible behavior. Though I only tested on x86_64
and on i686 Debian Stretch.
Getting this kind of change in at the start of the GDB 7.11 development
cycle will allow us to get a lot of passive testing from developers and
from bleeding-edge users.
readline/ChangeLog.gdb:
Import readline 7.0 alpha
* configure: Regenerate.
* examples/rlfe/configure: Regenerate.
gdb/ChangeLog:
* completer.c (gdb_printable_part): Sync with readline function
it is based off of.
gdb/testsuite/ChangeLog:
* gdb.gdb/selftest.exp (test_with_self): Update test to now
expect the GDB inferior to no longer immediately stop after
being resumed with "signal SIGINT".
commit a496fbc8802f0a5719db6347a43cc869e03d83c9
Author: Alan Modra <amodra@gmail.com>
Date: Sat Jul 25 16:38:42 2015 +0930
Fix broken -Bsymbolic-functions
For selected targets. The testcase reveals a number of targets that
still need fixing.
bfd/
* elf32-arm.c (elf32_arm_final_link_relocate): Use SYMBOLIC_BIND to
check if a symbol should be bound symbolically.
* elf32-hppa.c (elf32_hppa_check_relocs,
elf32_hppa_adjust_dynamic_symbol, elf32_hppa_relocate_section,
elf32_hppa_finish_dynamic_symbol): Likewise.
* elf32-m68k.c (elf_m68k_check_relocs,
elf_m68k_relocate_section): Likewise.
* elf32-nios2.c (nios2_elf32_relocate_section,
nios2_elf32_check_relocs, allocate_dynrelocs): Likewise.
* elf32-tic6x.c (elf32_tic6x_finish_dynamic_symbol,
elf32_tic6x_relocate_section): Likewise.
ld/testsuite/
* ld-elf/symbolic-func.s,
* ld-elf/symbolic-func.r: New test.
* ld-elf/elf.exp: Run it.
commit ca3084f54b62ce06c6e70a6e1daafeb5e3317c12
Author: Doug Evans <xdje42@gmail.com>
Date: Fri Jul 24 17:39:56 2015 -0700
Revert 4fd4095a5ffe3d4e50e0dac5f8ad37b8478afa9d, log individual measurements.
I think I lost a patch along the way, because I remember needing
something like this, but the reverted patch isn't the right way to
do this. Removing ...
gdb/testsuite/ChangeLog:
* gdb.perf/lib/perftest/measure.py (MeasurementCpuTime::stop): Print
result.
(MeasurementWallTime::stop): Ditto.
(MeasurementVmSizeTime::stop): Ditto.
commit f7d3050b1966fcc3d4cf7ddb9d0a8ca741e50d26
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Sat Jul 25 00:00:08 2015 +0000
Automatic date update in version.in
commit 7fecd1b400ba3ba0ae9efba3662e1f75b519860f
Author: Doug Evans <dje@google.com>
Date: Fri Jul 24 15:46:31 2015 -0700
Add gmonster-{1,2} perf testcases.
These testcases are mocks of real programs.
GDB doesn't care what the programs do, they just have to look
and/or behave like the real program.
These testcases exercise gdb when debugging really large programs.
E.g., gmonster-1 has 10,000 CUs, and gmonster-2 has 1000 shared libs
(which is actually a little small, 5000 would be more accurate).
gdb/testsuite/ChangeLog:
* gdb.perf/lib/perftest/utils.py: New file.
* gdb.perf/gm-hello.cc: New file.
* gdb.perf/gm-pervasive-typedef.cc: New file.
* gdb.perf/gm-pervasive-typedef.h: New file.
* gdb.perf/gm-std.cc: New file.
* gdb.perf/gm-std.h: New file.
* gdb.perf/gm-use-cerr.cc: New file.
* gdb.perf/gm-utils.h: New file.
* gdb.perf/gmonster-null-lookup.py: New file.
* gdb.perf/gmonster-pervasive-typedef.py: New file.
* gdb.perf/gmonster-print-cerr.py: New file.
* gdb.perf/gmonster-ptype-string.py: New file.
* gdb.perf/gmonster-runto-main.py: New file.
* gdb.perf/gmonster-select-file.py: New file.
* gdb.perf/gmonster1-null-lookup.exp: New file.
* gdb.perf/gmonster1-pervasive-typedef.exp: New file.
* gdb.perf/gmonster1-print-cerr.exp: New file.
* gdb.perf/gmonster1-ptype-string.exp: New file.
* gdb.perf/gmonster1-runto-main.exp: New file.
* gdb.perf/gmonster1-select-file.exp: New file.
* gdb.perf/gmonster1.cc: New file.
* gdb.perf/gmonster1.exp: New file.
* gdb.perf/gmonster2-null-lookup.exp: New file.
* gdb.perf/gmonster2-pervasive-typedef.exp: New file.
* gdb.perf/gmonster2-print-cerr.exp: New file.
* gdb.perf/gmonster2-ptype-string.exp: New file.
* gdb.perf/gmonster2-runto-main.exp: New file.
* gdb.perf/gmonster2-select-file.exp: New file.
* gdb.perf/gmonster2.cc: New file.
* gdb.perf/gmonster2.exp: New file.
commit 6eab34f3dc27a571071d8c56146c2ffda133f454
Author: Doug Evans <dje@google.com>
Date: Fri Jul 24 15:43:15 2015 -0700
Add perf testcase generator.
gdb/testsuite/ChangeLog:
* gdb.perf/README: New file.
* lib/perftest.exp (tcl_string_list_to_python_list): New function.
* lib/gen-perf-test.exp: New file.
commit 63738bfdb96f654322794384993a6f5d8608aab9
Author: Doug Evans <dje@google.com>
Date: Fri Jul 24 15:38:21 2015 -0700
PerfTest::assemble functions return results.
gdb/testsuite/ChangeLog:
* lib/perftest.exp (PerfTest::compile): Unconditionally call body.
(PerfTest::startup): New function.
(PerfTest::run): Return result of calling body.
(PerfTest::assemble): Rewrite.
* gdb.perf/backtrace.exp (PerfTest::assemble): Update function result.
* gdb.perf/disassemble.exp (PerfTest::assemble): Ditto.
* gdb.perf/single-step.exp (PerfTest::assemble): Ditto.
* gdb.perf/skip-prologue.exp (PerfTest::assemble): Ditto.
* gdb.perf/solib.exp (PerfTest::assemble): Ditto.
commit 7b606f95c9bcfa1b569fe5d33f7d2a73d39322f4
Author: Doug Evans <dje@google.com>
Date: Fri Jul 24 15:35:12 2015 -0700
lib/gdb.exp (clean_restart): Make executable optional.
gdb/testsuite/ChangeLog:
* lib/gdb.exp (clean_restart): Make executable optional.
commit a97b16b8fcfc7ac818c43c9f9457966cfc47aed6
Author: Doug Evans <dje@google.com>
Date: Fri Jul 24 15:32:45 2015 -0700
Clean up testsuite compiler_info support.
gdb/testsuite/ChangeLog:
* gdb.base/watchpoint.exp (test_complex_watchpoint): Remove
compiler_info references.
* gdb.cp/temargs.exp: Ditto.
* lib/gdb.exp: Unset compiler_info instead of setting to "unknown".
(get_compiler_info): Early exit if already computed. Set compiler_info
to "unknown" if there was a problem.
(test_compiler_info): Add function comment. Call get_compiler_info.
commit 35baa57fcfb50f7db24f7850ec9e34f4bc25b45c
Author: Doug Evans <dje@google.com>
Date: Fri Jul 24 15:28:46 2015 -0700
Add parallel build support for perf tests.
gdb/testsuite/ChangeLog:
* Makefile.in (check/%.exp): Pass directory for GDB_PARALLEL.
(workers/%.worker, build-perf): New rule.
(GDB_PERFTEST_MODE): New variable.
(check-perf): Use it.
(clean): Clean up gdb.perf parallel build subdirs.
* lib/build-piece.exp: New file.
* lib/cache.exp (gdb_do_cache): Include $GDB_PARALLEL in path name.
* lib/gdb.exp (standard_output_file): Include $GDB_PARALLEL in path
name.
(standard_temp_file): Ditto.
(GDB_PARALLEL handling): Make outputs,temp,cache directories as subdirs
of $GDB_PARALLEL.
commit 6ebea266fd0a7a56c90db3ab6237ff9f6c919747
Author: Doug Evans <dje@google.com>
Date: Fri Jul 24 15:24:37 2015 -0700
Workaround debian change to default value of --as-needed.
gdb/testsuite/ChangeLog:
* lib/future.exp (gdb_default_target_compile): New option
"early_flags".
* lib/gdb.exp (gdb_compile): Undo debian's change in default of
--as-needed.
commit 4fd4095a5ffe3d4e50e0dac5f8ad37b8478afa9d
Author: Doug Evans <dje@google.com>
Date: Fri Jul 24 15:11:07 2015 -0700
Print data from individual perf runs.
gdb/testsuite/ChangeLog:
* gdb.perf/lib/perftest/measure.py (MeasurementCpuTime::stop): Print
result.
(MeasurementWallTime::stop): Ditto.
(MeasurementVmSizeTime::stop): Ditto.
commit 1e76a7e9b156173a76e6a14a3ed41cefc9fed480
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date: Fri Jul 24 16:46:49 2015 -0400
Call gdb_exit before gdb_skip_xml_test on gdb.base/catch-syscall.exp
The gdb_skip_xml_test procedure explicitly says that it cannot be
invoked when GDB is running. However, the testcase for "catch
syscall" is wrongly doing that, which is causing a failure on
native-extended-gdbserver tests:
new FAIL: gdb.base/catch-syscall.exp: set tdesc filename /home/gdb-buildbot/fedora-x86-64-3/fedora-x86-64-native-extended-gdbserver-m32/build/gdb/testsuite/outputs/gdb.base/catch-syscall/trivial.xml (got interactive prompt)
This obvious commit fixes this, by calling gdb_exit before gdb_skip_xml_test.
Checked in as obvious.
gdb/testsuite/ChangeLog
2015-07-24 Sergio Durigan Junior <sergiodj@redhat.com>
* gdb.base/catch-syscall.exp: Call gdb_exit before
gdb_skip_xml_test.
commit 2b4cab865440e2c61d72da31a1a5045c840c60fe
Author: Pedro Alves <palves@redhat.com>
Date: Fri Jul 24 20:29:53 2015 +0100
Fix s390 GNU/Linux build after enum __ptrace_request changes
The buildbot noticed that the enum __ptrace_request series broke the
s390 GNU/Linux build:
../../binutils-gdb/gdb/s390-linux-nat.c: In function 'fetch_regs':
../../binutils-gdb/gdb/s390-linux-nat.c:226:54: error: macro "ptrace" requires 4 arguments, but only 3 given
if (ptrace (PTRACE_PEEKUSR_AREA, tid, (long) &parea) < 0)
^
../../binutils-gdb/gdb/s390-linux-nat.c: In function 'store_regs':
../../binutils-gdb/gdb/s390-linux-nat.c:243:54: error: macro "ptrace" requires 4 arguments, but only 3 given
if (ptrace (PTRACE_PEEKUSR_AREA, tid, (long) &parea) < 0)
^
Fix this the same way it's handled everywhere else -- just pass 0 as
forth argument, which also handles non-varargs ptrace prototypes in
non-glibc libcs, e.g., Bionic (if it ever gets a s390 port...).
gdb/ChangeLog:
2015-07-24 Pedro Alves <palves@redhat.com>
* s390-linux-nat.c (fetch_regs, store_regs, fetch_fpregs)
(s390_stopped_by_watchpoint, s390_prepare_to_resume): Pass 0 as
forth argument to ptrace PTRACE_PEEKUSR_AREA/PTRACE_POKEUSR_AREA.
commit 5068630ad34dce5fefbe68d70d3a50cd8b92f71e
Author: Pedro Alves <palves@redhat.com>
Date: Fri Jul 24 19:34:17 2015 +0100
gdb.python/py-events.exp and normal_stop observers ordering
I have patches that:
1 - make the CLI print stop info from a normal_stop observer, like MI
does.
2 - happen to change the order in which the Python and CLI/TUI
normal_stop observers are installed.
With those in place, py-events.exp regresses like shown below [1],
because the Python stop events are output before CLI prints stop info,
instead of after, and the test doesn't expect that.
With the same Python hooks, the order in which MI and Python events is
emited today is already undefined, because MI also uses the
normal_stop observer for output. I see no reason that we should in
general define the order observers, interpreters and scripting
languages get their turn at being notified of these events. So this
patch makes the test cope with Python->CLI output order too.
Tested on x86_64 Fedora 20.
gdb/testsuite/
2015-07-24 Pedro Alves <palves@redhat.com>
* gdb.python/py-events.exp: Accept output between the stop event
and the prompt.
* gdb.python/py-evsignal.exp: Likewise.
* gdb.python/py-evthreads.exp: Likewise.
[1] - The regressions in question look like:
Before said patches:
(gdb) continue
Continuing.
event type: continue
Breakpoint 2, first () at /home/pedro/gdb/mygit/build/../src/gdb/testsuite/gdb.python/py-events.c:30
30 for (i = 0; i < 2; i++)
event type: stop
event type: stop
stop reason: breakpoint
first breakpoint number: 2
breakpoint number: 2
breakpoint number: 3
all threads stopped
(gdb) PASS: gdb.python/py-events.exp: continue
After said patches:
(gdb) continue
Continuing.
event type: continue
event type: stop
event type: stop
stop reason: breakpoint
first breakpoint number: 2
breakpoint number: 2
breakpoint number: 3
all threads stopped
Breakpoint 2, first () at /home/pedro/gdb/mygit/build/../src/gdb/testsuite/gdb.python/py-events.c:30
30 for (i = 0; i < 2; i++)
(gdb) FAIL: gdb.python/py-events.exp: continue
commit 7759842763d94dc2f1c7d52d09f9203830b753ab
Author: Pedro Alves <palves@redhat.com>
Date: Fri Jul 24 18:18:44 2015 +0000
PR gdb/18717: internal error if non-leader thread exits process
If a non-leader thread exits the process while all other threads are
ptrace-stopped, native gdb fails an assertion. The test added by this
commit catches it:
/home/pedro/gdb/mygit/build/../src/gdb/linux-nat.c:3198: internal-error: linux_nat_filter_event: Assertion `lp->resumed' failed.
A problem internal to GDB has been detected,
further debugging may prove unreliable.
Quit this debugging session? (y or n)
FAIL: gdb.threads/non-leader-exit-process.exp: program exits normally (GDB internal error)
The fix is just to remove the assertion.
With that out of the way, neither GDB not GDBserver handle this
perfectly though, so I'm adding a KFAIL:
(gdb) continue
Continuing.
[Thread 0x7ffff7fc0700 (LWP 15350) exited]
No unwaited-for children left.
Couldn't get registers: No such process.
(gdb) KFAIL: gdb.threads/non-ldr-exit.exp: program exits normally (PRMS: gdb/18717)
gdb/ChangeLog:
2015-07-24 Pedro Alves <palves@redhat.com>
PR gdb/18717
* linux-nat.c (linux_nat_filter_event): Don't assert that the lwp
is resumed, and extend the debug log.
gdb/testsuite/ChangeLog:
2015-07-24 Pedro Alves <palves@redhat.com>
PR gdb/18717
* gdb.threads/non-ldr-exit.c: New file.
* gdb.threads/non-ldr-exit.exp: New file.
commit fe23c31f262151ce3265f5b90870d40cb6840f0a
Author: Pedro Alves <palves@redhat.com>
Date: Fri Jul 24 17:27:58 2015 +0100
Fix failed exec error message
Ref: https://sourceware.org/ml/gdb-patches/2015-07/msg00629.html
This fixes the bogus command line in the error message shown when the
SHELL environment variable points somewhere that's not something that
resembles a shell:
$ SHELL=/nonexisting gdb /home/pedro/a.out
(gdb) r
Starting program: /home/pedro/a.out
- Cannot exec /home/pedro/a.out -c exec /home/pedro/a.out .
+ Cannot exec /nonexisting -c exec /home/pedro/a.out .
Error: No such file or directory
During startup program exited with code 127.
(gdb)
gdb/ChangeLog:
2015-07-24 Pedro Alves <palves@redhat.com>
* fork-child.c (fork_inferior): Print argv[0] instead of exec_file.
commit afa5870f1bfafa1ccfa8a4b3f432c07c19a2447e
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Jul 24 09:10:18 2015 -0700
Add 'U' suffix to silence GCC 6 warning
GCC 6 warns:
error: result of â63 << 26â requires 33 bits to represent, but âintâ only has 32 bits [-Werror=shift-overflow=]
on 0x3f << 26. This patch adds 'U' suffix to make integer constant
unsigned.
* alpha.c (OP_Jxx): Add 'U' suffix to make it unsigned.
(OP_BSR): Likewise.
(Jxx_FUNC_JMP): Likewise.
(Jxx_FUNC_JSR): Likewise.
(Jxx_FUNC_RET): Likewise.
(Jxx_FUNC_JSR_COROUTINE): Likewise.
(alpha_find_call): Replace 0x3f with 0x3fU.
commit 7cb9e39bd8f84867f913232904b4b36c0aea539c
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Jul 24 09:05:33 2015 -0700
Use 0xffffffffffffffffLL to silence GCC 6 warning
GCC 6 warns:
error: result of â4294967295ll << 32â requires 65 bits to represent, but âlong long intâ only has 64 bits [-Werror=shift-overflow=]
on ((((bfd_signed_vma) 0xffffffff) << 32) | 0xffffffff). This patch
replaces it with bfd_signed_vma) 0xffffffffffffffffLL.
* stabs.c (parse_stab_range_type): Use 0xffffffffffffffffLL.
commit aff1a65ecb5cfcf1abfb23ea0e0f37f39e75683e
Author: Nick Clifton <nickc@redhat.com>
Date: Fri Jul 24 16:44:27 2015 +0100
Fix the evaluation of RL78 complex relocs, by making immediate values be computed relative to a new absolute symbol.
gas * config/tc-rl78.c (rl78_abs_sym): New local variable.
(md_begin): Initialise the new symbol.
(OPIMM): Define the value to be relative to the new symbol and not
the absolute section symbol.
ld * emulparams/elf32rl78.sh (OTHER_SECTIONS): Provide a value for
the _-rl78_abs__ symbol.
tests * gas/all/struct.d: Allow for extra symbols in the output.
* gas/macros/test1.d: Likewise.
* gas/elf/elf.exp: Add an rl78 machine.
* gas/elf/sections2e-rl78: New file.
tests * binutils-all/localize-hidden-1.d: Allow for extra symbols in the
output.
* binutils-all/strip-11.d: Skip for the RL78.
commit 5826e159863b6cd69953dc01faf7c20414409909
Author: Pedro Alves <palves@redhat.com>
Date: Fri Jul 24 14:57:20 2015 +0100
Linux: sys/ptrace.h -> nat/gdb_ptrace.h everywhere
So that we pick the enum __ptrace_request fix everywhere.
gdb/ChangeLog:
2015-07-24 Pedro Alves <palves@redhat.com>
* aarch64-linux-nat.c: Include nat/gdb_ptrace.h instead of
sys/ptrace.h.
* alpha-linux-nat.c: Likewise.
* amd64-linux-nat.c: Likewise.
* arm-linux-nat.c: Likewise.
* hppa-linux-nat.c: Likewise.
* i386-linux-nat.c: Likewise.
* ia64-linux-nat.c: Likewise.
* linux-fork.c: Likewise.
* linux-nat.c: Likewise.
* m32r-linux-nat.c: Likewise.
* m68klinux-nat.c: Likewise.
* mips-linux-nat.c: Likewise.
* nat/linux-btrace.c: Likewise.
* nat/linux-ptrace.c: Likewise.
* nat/linux-ptrace.h
* nat/mips-linux-watch.c: Likewise.
* nat/x86-linux-dregs.c: Likewise.
* ppc-linux-nat.c: Likewise.
* s390-linux-nat.c: Likewise.
* spu-linux-nat.c: Likewise.
* tilegx-linux-nat.c: Likewise.
* x86-linux-nat.c: Likewise.
* xtensa-linux-nat.c: Likewise.
gdb/gdbserver/ChangeLog:
2015-07-24 Pedro Alves <palves@redhat.c: Likewise.om>
* linux-aarch64-low.c: Include nat/gdb_ptrace.h instead of
sys/ptrace.h.
* linux-arm-low.c: Likewise.
* linux-cris-low.c: Likewise.
* linux-crisv32-low.c: Likewise.
* linux-low.c: Likewise.
* linux-m68k-low.c: Likewise.
* linux-mips-low.c: Likewise.
* linux-nios2-low.c: Likewise.
* linux-s390-low.c: Likewise.
* linux-sparc-low.c: Likewise.
* linux-tic6x-low.c: Likewise.
* linux-tile-low.c: Likewise.
* linux-x86-low.c: Likewise.
commit 54019719152ab269fb4cec2c6a8a245ba6af6e49
Author: Pedro Alves <palves@redhat.com>
Date: Fri Jul 24 14:57:20 2015 +0100
C++: handle glibc's ptrace(enum __ptrace_request, ...)
Building in C++ mode issues ~40 warnings like this:
../../src/gdb/linux-nat.c: In function âint linux_handle_extended_wait(lwp_info*, int, int)â:
../../src/gdb/linux-nat.c:2016:51: warning: invalid conversion from âintâ to â__ptrace_requestâ [-fpermissive]
ptrace (PTRACE_GETEVENTMSG, pid, 0, &new_pid);
The issue is that in glibc, ptrace's first parameter is an enum.
That's not a problem if we pick the PTRACE_XXX requests from
sys/ptrace.h, as those will be values of the corresponding enum.
However, we have fallback definitions for PTRACE_XXX symbols when the
system headers miss them (such as PTRACE_GETEVENTMSG above), and those
are plain integer constants. E.g., nat/linux-ptrace.h:
#define PTRACE_GETEVENTMSG 0x4201
One idea would be to fix this by defining those fallbacks like:
-#define PTRACE_GETEVENTMSG 0x4201
+#define PTRACE_GETEVENTMSG ((enum __ptrace_request) 0x4201)
However, while glibc's ptrace uses enum __ptrace_request for first
parameter:
extern long int ptrace (enum __ptrace_request __request, ...) __THROW;
other libc's, like e.g., Android's bionic do not -- in that case, the
first parameter is int:
long ptrace(int request, pid_t pid, void * addr, void * data);
So the fix I came up is to make configure/ptrace.m4 also detect the
type of the ptrace's first parameter and defin PTRACE_TYPE_ARG1, as
already does the for parameters 3-4, and then simply wrap ptrace with
a macro that casts the first argument to the detected type. (I'm
leaving adding a nicer wrapper for when we drop building in C).
While this adds the wrapper, GNU/Linux files won't use it until the
next patch, which makes all native GNU/Linux files include
gdb_ptrace.h.
gdb/ChangeLog:
2015-07-24 Pedro Alves <palves@redhat.com>
* ptrace.m4 (ptrace tests): Test in C++ mode. Try with 'enum
__ptrace_request as first parameter type instead of int.
(PTRACE_TYPE_ARG1): Define.
* nat/gdb_ptrace.h [!PTRACE_TYPE_ARG5] (ptrace): Define as wrapper
that casts first argument to PTRACE_TYPE_ARG1.
* config.in: Regenerate.
* configure: Regenerate.
gdb/gdbserver/ChangeLog:
2015-07-24 Pedro Alves <palves@redhat.com>
* config.in: Regenerate.
* configure: Regenerate.
commit e379037592ff71dc633c6d3de0828babe805ae96
Author: Pedro Alves <palves@redhat.com>
Date: Fri Jul 24 14:57:19 2015 +0100
Move gdb_ptrace.h to nat/
Now that gdbserver's configure defines PTRACE_TYPE_ARGx etc., we'll be
able to make gdbserver use gdb_ptrace.h too. Move it to the native
target files directory.
gdb/ChangeLog:
2015-07-24 Pedro Alves <palves@redhat.com>
* gdb_ptrace.h: Move ...
* nat/gdb_ptrace.h: ... here.
* inf-ptrace.c: Adjust.
commit eb7aa56163cc15bb732aa3b07966103fd6940d50
Author: Pedro Alves <palves@redhat.com>
Date: Fri Jul 24 14:57:19 2015 +0100
make gdbserver use the same ptrace autoconf checks as gdb
This factors the ptrace checks out of gdb's configure.ac to a new
ptrace.m4 file, and then makes gdbserver's configure.ac source it too.
gdb/ChangeLog:
2015-07-24 Pedro Alves <palves@redhat.com>
* acinclude.m4: Include ptrace.m4.
* configure.ac: Call GDB_AC_PTRACE and move ptrace checks ...
* ptrace.m4: ... to this new file.
gdb/gdbserver/ChangeLog:
2015-07-24 Pedro Alves <palves@redhat.com>
* acinclude.m4: Include ../ptrace.m4.
* configure.ac: Call GDB_AC_PTRACE.
* config.in, configure: Regenerate.
commit 55d7b841962c6e054735acdca2e0bb485afa0144
Author: Yao Qi <yao.qi@linaro.org>
Date: Fri Jul 24 14:40:34 2015 +0100
Remove proc->priv->new_inferior
As the result of the previous patch, new_inferior is no longer used.
This patch is to remove it.
gdb/gdbserver:
2015-07-24 Yao Qi <yao.qi@linaro.org>
* linux-low.c (linux_create_inferior): Remove setting to
proc->priv->new_inferior.
(linux_attach): Likewise.
(linux_low_filter_event): Likewise.
* linux-low.h (struct process_info_private) <new_inferior>: Remove.
commit c06cbd92be66d82eb323a8c6ec451c1dccc02107
Author: Yao Qi <yao.qi@linaro.org>
Date: Fri Jul 24 14:40:34 2015 +0100
Initialise target descrption after skipping extra traps for --wrapper
Nowadays, when --wrapper is used, GDBserver skips extra traps/stops
in the wrapper program, and stops at the first instruction of the
program to be debugged. However, GDBserver created target description
in the first stop of inferior, and the executable of the inferior
is the wrapper program rather than the program to be debugged. In
this way, the target description can be wrong if the architectures
of wrapper program and program to be debugged are different. This
is shown by some fails in gdb.server/wrapper.exp on buildbot.
We are testing i686-linux GDB (Fedora-i686) on an x86_64-linux box
(fedora-x86-64-4) in buildbot, such configuration causes fails in
gdb.server/wrapper.exp like this:
spawn /home/gdb-buildbot-2/fedora-x86-64-4/fedora-i686/build/gdb/testsuite/../../gdb/gdbserver/gdbserver --once --wrapper env TEST=1 -- :2346 /home/gdb-buildbot-2/fedora-x86-64-4/fedora-i686/build/gdb/testsuite/outputs/gdb.server/wrapper/wrapper
Process /home/gdb-buildbot-2/fedora-x86-64-4/fedora-i686/build/gdb/testsuite/outputs/gdb.server/wrapper/wrapper created; pid = 8795
Can't debug 64-bit process with 32-bit GDBserver
Exiting
target remote localhost:2346
localhost:2346: Connection timed out.
(gdb) FAIL: gdb.server/wrapper.exp: setting breakpoint at marker
See https://sourceware.org/ml/gdb-testers/2015-q3/msg01541.html
In this case, program to be debugged ("wrapper") is 32-bit but wrapper
program ("/usr/bin/env") is 64-bit, so GDBserver gets the 64-bit
target description instead of 32-bit.
The root cause of this problem is that GDBserver creates target
description too early, and the rationale of fix could be creating
target description once the GDBserver skips extra traps and inferior
stops at the first instruction of the program we want to debug. IOW,
when GDBserver skips extra traps, the inferior's tdesc is NULL, and
mywait and its callees shouldn't use inferior's tdesc, so in this
patch, we skip code that requires register access, see changes in
linux_resume_one_lwp_throw and need_step_over_p.
In linux_low_filter_event, if target description isn't initialised and
GDBserver attached the process, we create target description immediately,
because GDBserver don't have to skip extra traps for attach, IOW, it
makes no sense to use --attach and --wrapper together. Otherwise, the
process is launched by GDBserver, we keep the status pending, and return.
After GDBserver skipped extra traps in start_inferior, we call a
target_ops hook arch_setup to initialise target description there.
gdb/gdbserver:
2015-07-24 Yao Qi <yao.qi@linaro.org>
* linux-low.c (linux_arch_setup): New function.
(linux_low_filter_event): If proc->tdesc is NULL and
proc->attached is true, call the_low_target.arch_setup.
Otherwise, keep status pending, and return.
(linux_resume_one_lwp_throw): Don't call get_pc if
thread->while_stepping isn't NULL. Don't call
get_thread_regcache if proc->tdesc is NULL.
(need_step_over_p): Return 0 if proc->tdesc is NULL.
(linux_target_ops): Install arch_setup.
* server.c (start_inferior): Call the_target->arch_setup.
* target.h (struct target_ops) <arch_setup>: New field.
(target_arch_setup): New marco.
* lynx-low.c (lynx_target_ops): Update.
* nto-low.c (nto_target_ops): Update.
* spu-low.c (spu_target_ops): Update.
* win32-low.c (win32_target_ops): Update.
commit 5ae3ebbae55482a9fdd01bd21455b396e23e4077
Author: Yao Qi <yao.qi@linaro.org>
Date: Fri Jul 24 14:40:34 2015 +0100
Set proc->priv->new_inferior out of linux_add_process
Nowadays, we set proc->priv->new_inferior to 1 inside linux_add_process,
and new_inferior is used as a flag to initialise target description later.
linux_add_process is used for the three cases, fork/vfork event
(handle_extended_wait), run the program (linux_create_inferior), and
attach to the process (linux_attach). In the first case, the child's
target description is copied from parent's, so we don't need to initialise
target description again later, which means we don't need to set
proc->priv->new_inferior to 1 in this case. For the rest of two cases,
we need this flag.
This patch move the code setting proc->priv->new_inferior to 1 inside
linux_add_process to linux_create_inferior and linux_attach. No
functionality is changed.
gdb/gdbserver:
2015-07-24 Yao Qi <yao.qi@linaro.org>
* linux-low.c (linux_add_process): Don't set
proc->priv->new_inferior.
(linux_create_inferior): Set proc->priv->new_inferior to 1.
(linux_attach): Likewise.
commit eb97750bce2bf37176f745636815600177fbdba8
Author: Yao Qi <yao.qi@linaro.org>
Date: Fri Jul 24 14:40:34 2015 +0100
Refactor start_inferior
This patch is to refactor function start_inferior that signal_pid
is return in one place.
gdb/gdbserver:
2015-07-24 Yao Qi <yao.qi@linaro.org>
* server.c (start_inferior): Code refactor.
commit 11e6c98f1b6318d27ad55f9ac7d362fe7a668872
Author: Yao Qi <yao.qi@linaro.org>
Date: Fri Jul 24 14:40:34 2015 +0100
Test --wrapper when restarting process.
My patch series will affect the code starting inferior in GDBserver
(callees of start_inferior), so we need tests to cover how
start_inferior is used in different cases.
In server.c:process_serial_event, start_inferior is used when
GBDserver receives 'R' packet, and this patch is to add a test
for this path, and see how --wrapper option works when the process
is restarted.
gdb/testsuite:
2015-07-24 Yao Qi <yao.qi@linaro.org>
* gdb.server/ext-wrapper.exp: Test --wrapper option when
restarting process.
commit 51aee833ed9c6bd67b0c0e4a8c7098a549e3d16d
Author: Yao Qi <yao.qi@linaro.org>
Date: Fri Jul 24 14:40:34 2015 +0100
Set general_thread after restart
When I run gdb.server/ext-restart.exp, I get the following GDB internal
error,
run^M
The program being debugged has been started already.^M
Start it from the beginning? (y or n) y^M
Sending packet: $vKill;53c5#3d...Packet received: OK^M
Packet vKill (kill) is supported^M
Sending packet: $vFile:close:6#b6...Packet received: F0^M
Sending packet: $vFile:close:3#b3...Packet received: F0^M
Starting program: /scratch/yao/gdb/build-git/x86_64/gdb/testsuite/gdb.server/ext-restart ^M
Sending packet: $QDisableRandomization:1#cf...Packet received: OK^M
Sending packet: $R0#82...Sending packet: $qC#b4...Packet received: QCp53c5.53c5^M <-- [1]
Sending packet: $qAttached:53c5#c9...Packet received: E01^M
warning: Remote failure reply: E01^M
....
0x00002aaaaaaac2d0 in ?? () from target:/lib64/ld-linux-x86-64.so.2^M
/home/yao/SourceCode/gnu/gdb/git/gdb/thread.c:88: internal-error: inferior_thread: Assertion `tp' failed.^M
A problem internal to GDB has been detected,^M
further debugging may prove unreliable.^M
Quit this debugging session? (y or n) FAIL: gdb.server/ext-restart.exp: run to main (GDB internal error)
Resyncing due to internal error.
the test is to restart the program, to make sure GDBserver handles
packet 'R' correctly. From the GDBserver output, we can see,
Remote debugging from host 127.0.0.1^M
Process /scratch/yao/gdb/build-git/x86_64/gdb/testsuite/gdb.server/ext-restart created; pid = 21445^M
GDBserver restarting^M
Process /scratch/yao/gdb/build-git/x86_64/gdb/testsuite/gdb.server/ext-restart created; pid = 21446^M
Killing process(es): 21446
we first start process 21445(0x53c5), kill it and restart a new process
21446. However, in the gdb output above [1], we can see that the reply
of qC is still the old process id rather than the new one. Looks
general_thread isn't up to date after GDBserver receives R packet.
This patch is to update general_thread after call start_inferior.
gdb/gdbserver:
2015-07-24 Yao Qi <yao.qi@linaro.org>
* server.c (process_serial_event): Set general_thread.
gdb/testsuite:
2015-07-24 Yao Qi <yao.qi@linaro.org>
* gdb.server/ext-restart.exp: New file.
commit 8cfe207c9fcfcf940ec8eb834afde41432ec6d80
Author: Yao Qi <yao.qi@linaro.org>
Date: Fri Jul 24 14:40:34 2015 +0100
Test --wrapper in extended-remote
We didn't test --wrapper option in extended-remote before, this patch
is to add a test case for it. In order to pass option --wrapper to
gdbserver in extended-remote, I add arg in gdbserver_start_extended,
and its default value is "", so that other places use
gdbserver_start_extended don't have to be updated.
gdb/testsuite:
2015-07-24 Yao Qi <yao.qi@linaro.org>
* lib/gdbserver-support.exp (gdbserver_start_extended): Add
argument options.
* gdb.server/ext-wrapper.exp: New file.
commit 84b74b498eb690e5a856c23b9abc71f9680b81a6
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Jul 24 04:14:04 2015 -0700
Replace -g with -ggdb3 in ld compress tests
Use -ggdb3 to generate .debug_macro sections, which are bigger and are
always compressed.
* ld-elf/compress.exp (build_tests): Replace -g with -ggdb3.
* ld-elf/zlibbegin.rS: Also expect "GC".
* ld-elf/zlibnormal.rS: Likewise.
commit 72f4393d8cfc4a47f0e59657f7822668cfad132f
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Fri Jul 24 04:08:12 2015 -0700
Remove leading/trailing white spaces in ChangeLog
commit 91cb26dac47265f178fb6635f1deebdfd244572a
Author: Alan Modra <amodra@gmail.com>
Date: Fri Jul 24 14:44:26 2015 +0930
Correct reloc section name
* elf.c (_bfd_elf_assign_file_positions_for_non_load): Use .rela
prefix for reloc section corresponding to rela section associated
with renamed debug section.
commit 2fb9328d8daa751f3b71745636323eddccaaacce
Author: Alan Modra <amodra@gmail.com>
Date: Fri Jul 24 14:36:38 2015 +0930
bfd_get_section_by_name_if hash chain traversal
This function stops too soon, as I found when the hash chain happened
to contain two .debug_macro sections and a .bss section:
.debug_macro -> .bss -> .debug_macro
* section.c (bfd_get_section_by_name_if): Iterate over entire hash
chain.
commit f0b0791b05ed335e5d74d843d828645805db1f9c
Author: GDB Administrator <gdbadmin@sourceware.org>
Date: Fri Jul 24 00:00:14 2015 +0000
Automatic date update in version.in
commit cdb061674c044636465e52a8c989b9011f2ec8ac
Author: Han Shen <shenhan@google.com>
Date: Thu Jul 23 15:52:22 2015 -0700
2015-07-23 Ian Coolidge <icoolidge@google.com>
Plumb --pic-veneer option for gold.
gold/ChangeLog:
* arm.cc (Reloc_stub::stub_type_for_reloc): Plumb to stub generation.
* options.h (General_options): Add --pic-veneer option.
commit d5cff5df74b18e1e5ed94de8f4c9adee3ffd95c6
Author: Joseph Myers <joseph@codesourcery.com>
Date: Thu Jul 23 21:52:04 2015 +0000
Fix DT_MIPS_RLD_MAP_REL tag for n64 target and 32-bit host.
For the case of MIPS n64 target and 32-bit host, the computation of
the DT_MIPS_RLD_MAP_REL tag involves sdyn->output_section->vma +
sdyn->output_offset (64-bit) being added to b (32-bit host pointer),
so losing the high part and resulting in an incorrect
DT_MIPS_RLD_MAP_REL tag, and all dynamically linked glibc tests
failing for n64. This patch fixes this (spot-tested with glibc tests;
however, I don't have a self-contained testcase for this bug).
* elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections)
<DT_MIPS_RLD_MAP_REL>: Add target address to host address
difference, not to host pointer.
commit cc12ce380e8dab7e3cee8ecad29db6e9bb36a8fa
Author: Doug Evans <dje@google.com>
Date: Thu Jul 23 09:21:48 2015 -0700
Fix crash when reading dummy CUs.
Dummy CUs are used by the incremental linker to pre-allocate space
in the output file. They have a DWARF header but no contents.
gdb/ChangeLog:
* dwarf2read.c (dwarf2_per_cu_data): Add comment.
(load_cu): Handle dummy CUs.
(dw2_do_instantiate_symtab, process_queuef): Ditto.
(dwarf2_fetch_die_loc_sect_off, dwarf2_fetch_constant_bytes): Ditto.
gdb/testsuite/ChangeLog:
* gdb.dwarf2/dw2-dummy-cu.S: New file.
* gdb.dwarf2/dw2-dummy-cu.exp: New file.
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 12 +-
bfd/ChangeLog | 99 ++
bfd/bfd.c | 4 +-
bfd/config.in | 8 +
bfd/configure | 26 +-
bfd/configure.ac | 2 +
bfd/elf.c | 17 +-
bfd/elf32-arm.c | 3 +-
bfd/elf32-hppa.c | 8 +-
bfd/elf32-m68k.c | 4 +-
bfd/elf32-msp430.c | 22 +
bfd/elf32-nios2.c | 6 +-
bfd/elf32-tic6x.c | 4 +-
bfd/elf64-ppc.c | 13 +-
bfd/elflink.c | 39 +-
bfd/elfnn-aarch64.c | 1 +
bfd/elfxx-mips.c | 2 +-
bfd/mmo.c | 100 +-
bfd/po/SRC-POTFILES.in | 1 +
bfd/section.c | 13 +-
bfd/version.h | 2 +-
binutils/ChangeLog | 20 +-
binutils/configure | 4 +-
binutils/doc/Makefile.in | 6 +-
binutils/readelf.c | 14 +-
binutils/stabs.c | 2 +-
binutils/testsuite/ChangeLog | 6 +
.../testsuite/binutils-all/localize-hidden-1.d | 1 +
binutils/testsuite/binutils-all/strip-11.d | 2 +
config-ml.in | 6 +-
config/ChangeLog | 15 +-
config/gettext.m4 | 4 +-
config/po.m4 | 4 +-
config/stdint.m4 | 2 +-
config/tcl.m4 | 4 +-
configure | 8 +-
configure.ac | 8 +-
cpu/ChangeLog | 14 +-
gas/ChangeLog | 51 +-
gas/NEWS | 3 +
gas/config/tc-arm.c | 14 +-
gas/config/tc-mips.c | 5 +
gas/config/tc-rl78.c | 15 +-
gas/configure | 4 +-
gas/doc/as.texinfo | 13 +-
gas/doc/c-arm.texi | 2 +-
gas/doc/c-mips.texi | 3 +
gas/input-scrub.c | 100 +-
gas/messages.c | 8 +-
gas/testsuite/ChangeLog | 40 +-
gas/testsuite/gas/all/struct.d | 2 +-
gas/testsuite/gas/arm/attr-march-armv6kz.d | 14 +
gas/testsuite/gas/arm/attr-march-armv6kzt2.d | 14 +
gas/testsuite/gas/elf/elf.exp | 3 +
gas/testsuite/gas/elf/section2.e-rl78 | 9 +
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/i386-intel.d | 67 +
gas/testsuite/gas/i386/i386.exp | 2 +
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-intel.d | 258 ++++
gas/testsuite/gas/macros/test1.d | 1 +
gdb/ChangeLog | 679 +++++++++-
gdb/Makefile.in | 4 +-
gdb/aarch64-linux-nat.c | 97 +-
gdb/aarch64-tdep.c | 47 +-
gdb/acinclude.m4 | 3 +
gdb/ada-exp.y | 55 +-
gdb/ada-lang.c | 231 ++--
gdb/ada-lang.h | 22 +-
gdb/ada-tasks.c | 15 +-
gdb/alpha-linux-nat.c | 2 +-
gdb/alpha-mdebug-tdep.c | 3 +-
gdb/amd64-linux-nat.c | 2 +-
gdb/amd64-linux-tdep.c | 11 +-
gdb/arch-utils.c | 8 +-
gdb/arch-utils.h | 3 +-
gdb/arch/arm.h | 61 +
gdb/arm-linux-nat.c | 27 +-
gdb/arm-linux-tdep.c | 4 +-
gdb/arm-tdep.h | 39 +-
gdb/ax-gdb.c | 12 +-
gdb/breakpoint.c | 11 +-
gdb/c-exp.y | 105 +-
gdb/c-lang.c | 2 +-
gdb/c-valprint.c | 26 +-
gdb/cli/cli-decode.c | 2 +-
gdb/common/btrace-common.c | 2 +-
gdb/compile/compile-c-symbols.c | 26 +-
gdb/compile/compile-object-load.c | 2 +-
gdb/config.in | 3 +
gdb/configure | 109 ++-
gdb/configure.ac | 71 +-
gdb/cp-namespace.c | 178 ++--
gdb/cp-support.c | 6 +-
gdb/cp-support.h | 22 +-
gdb/d-exp.y | 29 +-
gdb/d-lang.c | 2 +-
gdb/dcache.c | 5 +-
gdb/doc/ChangeLog | 60 +-
gdb/doc/Makefile.in | 4 +-
gdb/dwarf2read.c | 31 +-
gdb/eval.c | 4 +-
gdb/event-top.c | 13 +-
gdb/f-exp.y | 39 +-
gdb/f-lang.c | 2 +-
gdb/findvar.c | 4 +-
gdb/fork-child.c | 2 +-
gdb/ft32-tdep.c | 2 +-
gdb/gdbarch.c | 4 +-
gdb/gdbarch.h | 4 +-
gdb/gdbarch.sh | 2 +-
gdb/gdbserver/ChangeLog | 123 ++-
gdb/gdbserver/acinclude.m4 | 3 +
gdb/gdbserver/config.in | 25 +
gdb/gdbserver/configure | 272 ++++-
gdb/gdbserver/configure.ac | 3 +
gdb/gdbserver/configure.srv | 1 -
gdb/gdbserver/linux-aarch64-low.c | 50 +-
gdb/gdbserver/linux-arm-low.c | 58 +-
gdb/gdbserver/linux-cris-low.c | 2 +-
gdb/gdbserver/linux-crisv32-low.c | 2 +-
gdb/gdbserver/linux-low.c | 68 +-
gdb/gdbserver/linux-low.h | 5 -
gdb/gdbserver/linux-m68k-low.c | 2 +-
gdb/gdbserver/linux-mips-low.c | 4 +-
gdb/gdbserver/linux-nios2-low.c | 2 +-
gdb/gdbserver/linux-s390-low.c | 2 +-
gdb/gdbserver/linux-sparc-low.c | 2 +-
gdb/gdbserver/linux-tic6x-low.c | 2 +-
gdb/gdbserver/linux-tile-low.c | 2 +-
gdb/gdbserver/linux-x86-low.c | 3 +-
gdb/gdbserver/lynx-low.c | 1 +
gdb/gdbserver/nto-low.c | 1 +
gdb/gdbserver/server.c | 41 +-
gdb/gdbserver/spu-low.c | 1 +
gdb/gdbserver/target.h | 10 +
gdb/gdbserver/win32-low.c | 1 +
gdb/gdbtypes.c | 27 +-
gdb/gdbtypes.h | 47 +-
gdb/gnu-v3-abi.c | 3 +-
gdb/go-exp.y | 32 +-
gdb/go-lang.c | 2 +-
gdb/guile/scm-breakpoint.c | 4 +-
gdb/guile/scm-cmd.c | 2 +-
gdb/guile/scm-frame.c | 2 +-
gdb/guile/scm-param.c | 2 +-
gdb/guile/scm-pretty-print.c | 2 +-
gdb/guile/scm-string.c | 4 +-
gdb/guile/scm-symbol.c | 4 +-
gdb/hppa-linux-nat.c | 2 +-
gdb/i386-linux-nat.c | 2 +-
gdb/i386-linux-tdep.c | 2 +-
gdb/i386-tdep.c | 6 +-
gdb/ia64-linux-nat.c | 13 +-
gdb/inf-ptrace.c | 2 +-
gdb/inflow.c | 2 +-
gdb/infrun.c | 5 +-
gdb/jv-exp.y | 16 +-
gdb/jv-lang.c | 7 +-
gdb/language.c | 9 +-
gdb/language.h | 9 +-
gdb/linespec.c | 4 +-
gdb/linux-fork.c | 2 +-
gdb/linux-nat.c | 125 +-
gdb/linux-nat.h | 2 +-
gdb/linux-record.h | 3 +
gdb/linux-thread-db.c | 2 +-
gdb/m2-exp.y | 41 +-
gdb/m2-lang.c | 2 +-
gdb/m32r-linux-nat.c | 2 +-
gdb/m68klinux-nat.c | 2 +-
gdb/mi/mi-cmd-stack.c | 6 +-
gdb/mi/mi-main.c | 4 +-
gdb/mi/mi-out.c | 10 +-
gdb/mips-linux-nat.c | 15 +-
gdb/moxie-tdep.c | 2 +-
gdb/mt-tdep.c | 2 +-
gdb/nat/aarch64-linux-hw-point.c | 66 +-
gdb/nat/aarch64-linux-hw-point.h | 4 +-
gdb/{ => nat}/gdb_ptrace.h | 4 +
gdb/nat/linux-btrace.c | 2 +-
gdb/nat/linux-ptrace.c | 1 +
gdb/nat/linux-ptrace.h | 2 +-
gdb/nat/mips-linux-watch.c | 6 +-
gdb/nat/mips-linux-watch.h | 4 +-
gdb/nat/x86-linux-dregs.c | 2 +-
gdb/nios2-tdep.c | 43 +-
gdb/nto-procfs.c | 23 +-
gdb/objc-lang.c | 5 +-
gdb/p-exp.y | 60 +-
gdb/p-lang.c | 2 +-
gdb/p-valprint.c | 2 +-
gdb/parse.c | 8 +-
gdb/parser-defs.h | 2 +-
gdb/ppc-linux-nat.c | 30 +-
gdb/ppc-linux-tdep.c | 2 +-
gdb/ppc-sysv-tdep.c | 2 +-
gdb/printcmd.c | 2 +-
gdb/procfs.c | 11 +-
gdb/psymtab.c | 2 +-
gdb/ptrace.m4 | 104 ++
gdb/python/py-frame.c | 2 +-
gdb/python/py-linetable.c | 8 +-
gdb/python/py-symbol.c | 4 +-
gdb/remote-m32r-sdi.c | 10 +-
gdb/remote-mips.c | 16 +-
gdb/remote.c | 49 +-
gdb/s390-linux-nat.c | 28 +-
gdb/s390-linux-tdep.c | 2 +-
gdb/skip.c | 2 +-
gdb/solib-darwin.c | 4 +-
gdb/solib-spu.c | 4 +-
gdb/solib-svr4.c | 6 +-
gdb/solib-target.c | 1 -
gdb/solib.c | 16 +-
gdb/solist.h | 13 +-
gdb/source.c | 4 +-
gdb/spu-linux-nat.c | 4 +-
gdb/stack.c | 4 +-
gdb/symfile.c | 2 +-
gdb/symtab.c | 308 ++--
gdb/symtab.h | 86 +-
gdb/target-debug.h | 4 +
gdb/target-delegates.c | 24 +-
gdb/target.c | 4 +-
gdb/target.h | 19 +-
gdb/testsuite/ChangeLog | 437 ++++++-
gdb/testsuite/Makefile.in | 35 +-
gdb/testsuite/boards/gdbserver-base.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/ppc64-symtab-cordic.exp | 5 +
gdb/testsuite/gdb.base/a2-run.exp | 91 +-
gdb/testsuite/gdb.base/attach-pie-misread.exp | 16 +-
gdb/testsuite/gdb.base/attach-pie-noexec.exp | 5 +-
gdb/testsuite/gdb.base/attach-twice.exp | 5 +-
gdb/testsuite/gdb.base/attach.exp | 40 +-
.../gdb.base/batch-preserve-term-settings.exp | 211 +++-
gdb/testsuite/gdb.base/break-interp.exp | 10 +-
gdb/testsuite/gdb.base/call-ar-st.c | 4 +
gdb/testsuite/gdb.base/call-ar-st.exp | 485 ++++---
gdb/testsuite/gdb.base/call-rt-st.c | 3 +
gdb/testsuite/gdb.base/call-rt-st.exp | 61 +-
gdb/testsuite/gdb.base/call-signal-resume.exp | 18 +-
gdb/testsuite/gdb.base/call-signals.c | 3 -
gdb/testsuite/gdb.base/call-strs.c | 4 +
gdb/testsuite/gdb.base/call-strs.exp | 53 +-
gdb/testsuite/gdb.base/catch-gdb-caused-signals.c | 4 +
.../gdb.base/catch-gdb-caused-signals.exp | 2 +-
gdb/testsuite/gdb.base/catch-syscall.exp | 1 +
gdb/testsuite/gdb.base/dprintf.c | 4 +
gdb/testsuite/gdb.base/dprintf.exp | 134 ++-
gdb/testsuite/gdb.base/ending-run.c | 4 +
gdb/testsuite/gdb.base/ending-run.exp | 10 +-
gdb/testsuite/gdb.base/gdb-sigterm-2.exp | 32 +
gdb/testsuite/gdb.base/interrupt.exp | 10 +-
gdb/testsuite/gdb.base/multi-forks.exp | 2 +
gdb/testsuite/gdb.base/restore.exp | 15 +-
gdb/testsuite/gdb.base/run.c | 4 +
gdb/testsuite/gdb.base/shlib-call.exp | 22 +-
gdb/testsuite/gdb.base/shmain.c | 5 +
gdb/testsuite/gdb.base/siginfo-addr.c | 9 +-
gdb/testsuite/gdb.base/siginfo-addr.exp | 17 +-
gdb/testsuite/gdb.base/sizeof.c | 4 +
gdb/testsuite/gdb.base/sizeof.exp | 14 +-
gdb/testsuite/gdb.base/solib-overlap.exp | 7 +-
gdb/testsuite/gdb.base/unwindonsignal.c | 3 -
gdb/testsuite/gdb.base/unwindonsignal.exp | 18 +-
gdb/testsuite/gdb.base/valgrind-infcall.exp | 8 +-
gdb/testsuite/gdb.base/varargs.c | 13 +-
gdb/testsuite/gdb.base/varargs.exp | 27 +-
gdb/testsuite/gdb.base/watchpoint.exp | 3 +-
gdb/testsuite/gdb.cp/temargs.exp | 1 -
gdb/testsuite/gdb.cp/var-tag.exp | 14 +-
.../dw2-dummy-cu.S} | 35 +-
.../dw2-dummy-cu.exp} | 36 +-
gdb/testsuite/gdb.gdb/complaints.exp | 110 +-
gdb/testsuite/gdb.gdb/selftest.exp | 14 +-
gdb/testsuite/gdb.mi/mi-dprintf.c | 4 +
gdb/testsuite/gdb.mi/mi-dprintf.exp | 66 +-
gdb/testsuite/gdb.mi/mi-pending.c | 4 +-
gdb/testsuite/gdb.mi/mi-watch.exp | 4 -
gdb/testsuite/gdb.multi/multi-attach.exp | 11 +-
gdb/testsuite/gdb.perf/README | 211 +++
gdb/testsuite/gdb.perf/backtrace.exp | 3 +
gdb/testsuite/gdb.perf/disassemble.exp | 3 +
.../gm-hello.cc} | 29 +-
.../gm-pervasive-typedef.cc} | 24 +-
.../gm-pervasive-typedef.h} | 28 +-
.../gm-std.cc} | 32 +-
gdb/testsuite/gdb.perf/gm-std.h | 57 +
.../gm-use-cerr.cc} | 29 +-
.../gm-utils.h} | 29 +-
gdb/testsuite/gdb.perf/gmonster-null-lookup.py | 46 +
.../gdb.perf/gmonster-pervasive-typedef.py | 45 +
gdb/testsuite/gdb.perf/gmonster-print-cerr.py | 52 +
gdb/testsuite/gdb.perf/gmonster-ptype-string.py | 48 +
gdb/testsuite/gdb.perf/gmonster-runto-main.py | 40 +
gdb/testsuite/gdb.perf/gmonster-select-file.py | 43 +
gdb/testsuite/gdb.perf/gmonster1-null-lookup.exp | 26 +
.../gdb.perf/gmonster1-pervasive-typedef.exp | 28 +
gdb/testsuite/gdb.perf/gmonster1-print-cerr.exp | 26 +
gdb/testsuite/gdb.perf/gmonster1-ptype-string.exp | 26 +
gdb/testsuite/gdb.perf/gmonster1-runto-main.exp | 26 +
gdb/testsuite/gdb.perf/gmonster1-select-file.exp | 26 +
.../gmonster1.cc} | 22 +-
gdb/testsuite/gdb.perf/gmonster1.exp | 116 ++
gdb/testsuite/gdb.perf/gmonster2-null-lookup.exp | 27 +
.../gdb.perf/gmonster2-pervasive-typedef.exp | 28 +
gdb/testsuite/gdb.perf/gmonster2-print-cerr.exp | 26 +
gdb/testsuite/gdb.perf/gmonster2-ptype-string.exp | 27 +
gdb/testsuite/gdb.perf/gmonster2-runto-main.exp | 26 +
gdb/testsuite/gdb.perf/gmonster2-select-file.exp | 27 +
.../gmonster2.cc} | 22 +-
gdb/testsuite/gdb.perf/gmonster2.exp | 118 ++
gdb/testsuite/gdb.perf/lib/perftest/reporter.py | 35 +-
gdb/testsuite/gdb.perf/lib/perftest/testresult.py | 5 +-
gdb/testsuite/gdb.perf/lib/perftest/utils.py | 68 +
gdb/testsuite/gdb.perf/single-step.exp | 2 +
gdb/testsuite/gdb.perf/skip-prologue.exp | 2 +
gdb/testsuite/gdb.perf/solib.exp | 2 +
gdb/testsuite/gdb.python/py-events.exp | 4 +-
gdb/testsuite/gdb.python/py-evsignal.exp | 2 +-
gdb/testsuite/gdb.python/py-evthreads.exp | 8 +-
gdb/testsuite/gdb.python/py-objfile.exp | 13 +-
gdb/testsuite/gdb.python/py-pp-registration.exp | 11 +-
gdb/testsuite/gdb.python/py-prompt.exp | 5 +-
gdb/testsuite/gdb.python/py-sync-interp.exp | 5 +-
gdb/testsuite/gdb.server/ext-attach.exp | 5 +-
.../gdb.server/{ext-attach.exp => ext-restart.exp} | 54 +-
.../gdb.server/{ext-attach.exp => ext-wrapper.exp} | 57 +-
gdb/testsuite/gdb.server/server-exec-info.exp | 4 +
gdb/testsuite/gdb.threads/attach-into-signal.exp | 139 +-
.../attach-many-short-lived-threads.exp | 6 +-
gdb/testsuite/gdb.threads/attach-stopped.exp | 11 +-
gdb/testsuite/gdb.threads/fork-plus-threads.c | 115 ++
gdb/testsuite/gdb.threads/fork-plus-threads.exp | 105 ++
.../non-ldr-exit.c} | 29 +-
gdb/testsuite/gdb.threads/non-ldr-exit.exp | 45 +
gdb/testsuite/lib/build-piece.exp | 39 +
gdb/testsuite/lib/cache.exp | 2 +-
gdb/testsuite/lib/future.exp | 17 +-
gdb/testsuite/lib/gdb.exp | 231 +++-
gdb/testsuite/lib/gdbserver-support.exp | 16 +-
gdb/testsuite/lib/gen-perf-test.exp | 1509 ++++++++++++++++++++
gdb/testsuite/lib/mi-support.exp | 56 +-
gdb/testsuite/lib/perftest.exp | 70 +-
gdb/tilegx-linux-nat.c | 2 +-
gdb/tilegx-tdep.c | 2 +-
gdb/top.c | 21 +
gdb/ui-out.c | 27 +-
gdb/valarith.c | 8 +-
gdb/valops.c | 62 +-
gdb/valprint.c | 709 ++++++----
gdb/value.c | 85 +-
gdb/value.h | 8 +-
gdb/varobj.c | 2 +-
gdb/x86-linux-nat.c | 2 +-
gdb/x86-nat.c | 12 +-
gdb/xstormy16-tdep.c | 2 +-
gdb/xtensa-linux-nat.c | 2 +-
gdb/xtensa-tdep.h | 2 +-
gold/ChangeLog | 224 +++-
gold/aarch64.cc | 165 ++-
gold/archive.cc | 12 +-
gold/arm.cc | 8 +-
gold/configure | 4 +-
gold/layout.cc | 6 +-
gold/options.h | 4 +
gold/parameters.cc | 2 +-
gold/resolve.cc | 13 +-
gold/symtab.cc | 9 +
gold/testsuite/Makefile.am | 30 +-
gold/testsuite/Makefile.in | 47 +-
gold/testsuite/arm_unaligned_reloc.s | 9 +-
gold/testsuite/arm_unaligned_reloc.sh | 22 +-
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.h | 25 +
gold/testsuite/script_test_11.h | 1 +
.../{script_test_11.c => script_test_11a.c} | 4 +-
gold/testsuite/script_test_11b.c | 7 +
.../{script_test_1.cc => script_test_1a.cc} | 27 +-
.../{script_test_1.cc => script_test_1b.cc} | 33 +-
gprof/ChangeLog | 14 +
gprof/alpha.c | 14 +-
gprof/configure | 4 +-
include/ChangeLog | 48 +-
include/elf/ChangeLog | 34 +-
include/gdb/ChangeLog | 6 +-
include/opcode/ChangeLog | 17 +-
include/opcode/arm.h | 8 +-
intl/ChangeLog | 4 +-
ld/ChangeLog | 27 +
ld/configure | 4 +-
ld/emulparams/criself.sh | 6 +-
ld/emulparams/elf32rl78.sh | 5 +-
ld/ldexp.c | 63 +-
ld/ldmisc.c | 4 +-
ld/lexsup.c | 2 +-
ld/scripttempl/elf.sc | 8 +-
ld/testsuite/ChangeLog | 128 ++-
ld/testsuite/config/default.exp | 74 +
ld/testsuite/ld-aarch64/aarch64-elf.exp | 1 +
ld/testsuite/ld-aarch64/protected-data.d | 4 +
ld/testsuite/ld-aarch64/protected-data.s | 18 +
ld/testsuite/ld-arm/arm-elf.exp | 1 +
ld/testsuite/ld-arm/protected-data.d | 4 +
ld/testsuite/ld-arm/protected-data.s | 29 +
ld/testsuite/ld-elf/check-ptr-eq.c | 12 +
ld/testsuite/ld-elf/compress.exp | 20 +-
ld/testsuite/ld-elf/elf.exp | 10 +-
ld/testsuite/ld-elf/pr18718.c | 32 +
ld/testsuite/ld-elf/pr18735.d | 10 +
ld/testsuite/ld-elf/pr18735.s | 13 +
ld/testsuite/ld-elf/shared.exp | 45 +
ld/testsuite/ld-elf/symbolic-func.r | 18 +
ld/testsuite/ld-elf/symbolic-func.s | 13 +
ld/testsuite/ld-elf/zlibbegin.rS | 2 +-
ld/testsuite/ld-elf/zlibnormal.rS | 2 +-
ld/testsuite/ld-elfvers/vers.exp | 4 +-
ld/testsuite/ld-elfvsb/elfvsb.exp | 12 +-
ld/testsuite/ld-i386/i386.exp | 7 +-
ld/testsuite/ld-powerpc/elfv2so.d | 18 +-
ld/testsuite/ld-scripts/crossref.exp | 10 +
ld/testsuite/ld-shared/shared.exp | 7 +-
ld/testsuite/ld-size/size.exp | 327 +++--
ld/testsuite/ld-srec/srec.exp | 17 +
ld/testsuite/ld-x86-64/mpx.exp | 73 +-
ld/testsuite/ld-x86-64/x86-64.exp | 7 +-
ld/testsuite/lib/ld-lib.exp | 4 +
libdecnumber/ChangeLog | 20 +-
libiberty/ChangeLog | 6 +-
opcodes/ChangeLog | 30 +-
opcodes/configure | 4 +-
opcodes/i386-dis-evex.h | 8 +-
opcodes/i386-dis.c | 19 +-
sim/ChangeLog | 34 +-
sim/arm/ChangeLog | 84 +-
sim/common/ChangeLog | 320 +++---
sim/cr16/ChangeLog | 8 +-
sim/d10v/ChangeLog | 76 +-
sim/erc32/ChangeLog | 46 +-
sim/frv/ChangeLog | 42 +-
sim/h8300/ChangeLog | 44 +-
sim/igen/ChangeLog | 80 +-
sim/iq2000/ChangeLog | 6 +-
sim/lm32/ChangeLog | 50 +-
sim/m32c/ChangeLog | 12 +-
sim/m32r/ChangeLog | 28 +-
sim/m68hc11/ChangeLog | 42 +-
sim/mcore/ChangeLog | 8 +-
sim/mips/ChangeLog | 316 ++--
sim/mn10300/ChangeLog | 62 +-
sim/moxie/ChangeLog | 2 +-
sim/ppc/ChangeLog | 908 ++++++------
sim/rl78/ChangeLog | 2 +-
sim/rx/ChangeLog | 10 +-
sim/sh/ChangeLog | 76 +-
sim/sh64/ChangeLog | 10 +-
sim/testsuite/ChangeLog | 18 +-
sim/testsuite/d10v-elf/ChangeLog | 6 +-
sim/testsuite/sim/cr16/ChangeLog | 6 +-
sim/testsuite/sim/cris/ChangeLog | 2 +-
sim/testsuite/sim/h8300/ChangeLog | 12 +-
sim/testsuite/sim/mips/ChangeLog | 2 +-
sim/testsuite/sim/sh/ChangeLog | 4 +-
sim/v850/ChangeLog | 122 +-
zlib/ChangeLog | 12 +-
486 files changed, 12641 insertions(+), 4933 deletions(-)
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/elf/section2.e-rl78
create mode 100644 gas/testsuite/gas/i386/i386-intel.d
create mode 100644 gas/testsuite/gas/i386/x86_64-intel.d
create mode 100644 gdb/arch/arm.h
rename gdb/{ => nat}/gdb_ptrace.h (96%)
create mode 100644 gdb/ptrace.m4
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.base/gdb-sigterm-2.exp
copy gdb/testsuite/{gdb.base/catch-gdb-caused-signals.c => gdb.dwarf2/dw2-dummy-cu.S} (60%)
copy gdb/testsuite/{gdb.server/server-exec-info.exp => gdb.dwarf2/dw2-dummy-cu.exp} (50%)
create mode 100644 gdb/testsuite/gdb.perf/README
copy gdb/testsuite/{gdb.base/catch-gdb-caused-signals.c => gdb.perf/gm-hello.cc} (64%)
copy gdb/testsuite/{gdb.base/catch-gdb-caused-signals.c => gdb.perf/gm-pervasive-typedef.cc} (65%)
copy gdb/testsuite/{gdb.base/catch-gdb-caused-signals.c => gdb.perf/gm-pervasive-typedef.h} (65%)
copy gdb/testsuite/{gdb.base/catch-gdb-caused-signals.c => gdb.perf/gm-std.cc} (65%)
create mode 100644 gdb/testsuite/gdb.perf/gm-std.h
copy gdb/testsuite/{gdb.base/catch-gdb-caused-signals.c => gdb.perf/gm-use-cerr.cc} (64%)
copy gdb/testsuite/{gdb.base/catch-gdb-caused-signals.c => gdb.perf/gm-utils.h} (64%)
create mode 100644 gdb/testsuite/gdb.perf/gmonster-null-lookup.py
create mode 100644 gdb/testsuite/gdb.perf/gmonster-pervasive-typedef.py
create mode 100644 gdb/testsuite/gdb.perf/gmonster-print-cerr.py
create mode 100644 gdb/testsuite/gdb.perf/gmonster-ptype-string.py
create mode 100644 gdb/testsuite/gdb.perf/gmonster-runto-main.py
create mode 100644 gdb/testsuite/gdb.perf/gmonster-select-file.py
create mode 100644 gdb/testsuite/gdb.perf/gmonster1-null-lookup.exp
create mode 100644 gdb/testsuite/gdb.perf/gmonster1-pervasive-typedef.exp
create mode 100644 gdb/testsuite/gdb.perf/gmonster1-print-cerr.exp
create mode 100644 gdb/testsuite/gdb.perf/gmonster1-ptype-string.exp
create mode 100644 gdb/testsuite/gdb.perf/gmonster1-runto-main.exp
create mode 100644 gdb/testsuite/gdb.perf/gmonster1-select-file.exp
copy gdb/testsuite/{gdb.base/catch-gdb-caused-signals.c => gdb.perf/gmonster1.cc} (65%)
create mode 100644 gdb/testsuite/gdb.perf/gmonster1.exp
create mode 100644 gdb/testsuite/gdb.perf/gmonster2-null-lookup.exp
create mode 100644 gdb/testsuite/gdb.perf/gmonster2-pervasive-typedef.exp
create mode 100644 gdb/testsuite/gdb.perf/gmonster2-print-cerr.exp
create mode 100644 gdb/testsuite/gdb.perf/gmonster2-ptype-string.exp
create mode 100644 gdb/testsuite/gdb.perf/gmonster2-runto-main.exp
create mode 100644 gdb/testsuite/gdb.perf/gmonster2-select-file.exp
copy gdb/testsuite/{gdb.base/catch-gdb-caused-signals.c => gdb.perf/gmonster2.cc} (65%)
create mode 100644 gdb/testsuite/gdb.perf/gmonster2.exp
create mode 100644 gdb/testsuite/gdb.perf/lib/perftest/utils.py
copy gdb/testsuite/gdb.server/{ext-attach.exp => ext-restart.exp} (54%)
copy gdb/testsuite/gdb.server/{ext-attach.exp => ext-wrapper.exp} (56%)
create mode 100644 gdb/testsuite/gdb.threads/fork-plus-threads.c
create mode 100644 gdb/testsuite/gdb.threads/fork-plus-threads.exp
copy gdb/testsuite/{gdb.base/catch-gdb-caused-signals.c => gdb.threads/non-ldr-exit.c} (67%)
create mode 100644 gdb/testsuite/gdb.threads/non-ldr-exit.exp
create mode 100644 gdb/testsuite/lib/build-piece.exp
create mode 100644 gdb/testsuite/lib/gen-perf-test.exp
create mode 100644 gold/testsuite/pr18689.c
create mode 100755 gold/testsuite/pr18689.sh
create mode 100644 gold/testsuite/script_test_1.h
create mode 100644 gold/testsuite/script_test_11.h
rename gold/testsuite/{script_test_11.c => script_test_11a.c} (81%)
create mode 100644 gold/testsuite/script_test_11b.c
copy gold/testsuite/{script_test_1.cc => script_test_1a.cc} (62%)
rename gold/testsuite/{script_test_1.cc => script_test_1b.cc} (51%)
create mode 100644 ld/testsuite/ld-aarch64/protected-data.d
create mode 100644 ld/testsuite/ld-aarch64/protected-data.s
create mode 100644 ld/testsuite/ld-arm/protected-data.d
create mode 100644 ld/testsuite/ld-arm/protected-data.s
create mode 100644 ld/testsuite/ld-elf/check-ptr-eq.c
create mode 100644 ld/testsuite/ld-elf/pr18718.c
create mode 100644 ld/testsuite/ld-elf/pr18735.d
create mode 100644 ld/testsuite/ld-elf/pr18735.s
create mode 100644 ld/testsuite/ld-elf/symbolic-func.r
create mode 100644 ld/testsuite/ld-elf/symbolic-func.s
First 500 lines of diff:
diff --git a/ChangeLog b/ChangeLog
index 6ba2675..f8690be 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2015-07-27 H.J. Lu <hongjiu.lu@intel.com>
+
+ Sync with GCC
+ 2015-07-24 Michael Darling <darlingm@gmail.com>
+
+ PR other/66259
+ * config-ml.in: Reflects renaming of configure.in to configure.ac
+ * configure: Likewise
+ * configure.ac: Likewise
+
2015-07-14 H.J. Lu <hongjiu.lu@intel.com>
* Makefile.in: Regenerated.
@@ -292,7 +302,7 @@
2014-04-04 Eric Botcazou <ebotcazou@adacore.com>
PR bootstrap/60620
- * Makefile.def (dependencies): Make gnattools depend on libstdc++-v3.
+ * Makefile.def (dependencies): Make gnattools depend on libstdc++-v3.
* Makefile.in: Regenerate.
2014-03-28 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 2942c76..e9776bf 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,102 @@
+2015-07-30 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/18735
+ * elflink.c (_bfd_elf_add_default_symbol): Add the default
+ symbol if not performing a relocatable link.
+ (elf_link_add_object_symbols): Adjust the default symbol if
+ not performing a relocatable link.
+
+2015-07-29 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elflink.c (elf_link_add_object_symbols): Remove
+ !info->relocatable check for info->executable. Add
+ !info->relocatable check for !info->executable.
+ (elf_link_output_extsym): Remove
+ !info->relocatable check for info->executable.
+
+2015-07-29 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * mmo.c (mmo_write_symbols_and_terminator): Skip symbol-type
+ assignment loop for bfd plugin objects.
+
+2015-07-28 Alan Modra <amodra@gmail.com>
+
+ * elf.c (_bfd_elf_map_sections_to_segments): Do not make a new
+ segment for loaded sections after nonloaded sections if the
+ sections are on the same page.
+
+2015-07-28 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ * configure.in: Add asprintf and vasprintf to AC_CHECK_DECLS.
+ * config.in, configure: Regenerate.
+
+2015-07-27 H.J. Lu <hongjiu.lu@intel.com>
+
+ * configure: Regenerated.
+
+2015-07-27 Nick Clifton <nickc@redhat.com>
+
+ * elf32-msp430.c (uses_large_model): New function.
+ (msp430_elf_eh_frame_address_size): New function.
+ (elf_backend_eh_frame_address_size): Define.
+
+2015-07-27 Szabolcs Nagy <szabolcs.nagy@arm.com>
+
+ PR ld/18705
+ * elfnn-aarch64.c (elf_backend_extern_protected_data): Define.
+
+2015-07-27 Szabolcs Nagy <szabolcs.nagy@arm.com>
+
+ PR ld/18705
+ * elf32-arm.c (elf_backend_extern_protected_data): Define.
+
+2015-07-25 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/18718
+ * elflink.c (elf_link_output_extsym): Check symbol version
+ section check only if not linking executable, the symbol is
+ referenced by shared library or not locally defined.
+
+2015-07-25 Thomas Preud'homme <thomas.preudhomme@arm.com>
+
+ * elf32-arm.c (elf32_arm_final_link_relocate): Use SYMBOLIC_BIND to
+ check if a symbol should be bound symbolically.
+ * elf32-hppa.c (elf32_hppa_check_relocs,
+ elf32_hppa_adjust_dynamic_symbol, elf32_hppa_relocate_section,
+ elf32_hppa_finish_dynamic_symbol): Likewise.
+ * elf32-m68k.c (elf_m68k_check_relocs,
+ elf_m68k_relocate_section): Likewise.
+ * elf32-nios2.c (nios2_elf32_relocate_section,
+ nios2_elf32_check_relocs, allocate_dynrelocs): Likewise.
+ * elf32-tic6x.c (elf32_tic6x_finish_dynamic_symbol,
+ elf32_tic6x_relocate_section): Likewise.
+
+2015-07-24 Alan Modra <amodra@gmail.com>
+
+ * elf.c (_bfd_elf_assign_file_positions_for_non_load): Use .rela
+ prefix for reloc section corresponding to rela section associated
+ with renamed debug section.
+
+2015-07-24 Alan Modra <amodra@gmail.com>
+
+ * section.c (bfd_get_section_by_name_if): Iterate over entire hash
+ chain.
+
+2015-07-23 Joseph Myers <joseph@codesourcery.com>
+
+ * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections)
+ <DT_MIPS_RLD_MAP_REL>: Add target address to host address
+ difference, not to host pointer.
+
+2015-07-22 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (opd_entry_value): Remove assertion. Instead,
+ return -1 if symbol referenced is not defined. Tidy.
+
+2015-07-20 Alan Modra <amodra@gmail.com>
+
+ * po/SRC-POTFILES.in: Regenerate.
+
2015-07-17 Jiong Wang <jiong.wang@arm.com>
* elfnn-aarch64.c (IS_AARCH64_TLS_RELOC): Sort alphabetically.
diff --git a/bfd/bfd.c b/bfd/bfd.c
index 846ab58..c02edbe 100644
--- a/bfd/bfd.c
+++ b/bfd/bfd.c
@@ -1090,11 +1090,11 @@ _bfd_abort (const char *file, int line, const char *fn)
{
if (fn != NULL)
(*_bfd_error_handler)
- (_("BFD %s internal error, aborting at %s line %d in %s\n"),
+ (_("BFD %s internal error, aborting at %s:%d in %s\n"),
BFD_VERSION_STRING, file, line, fn);
else
(*_bfd_error_handler)
- (_("BFD %s internal error, aborting at %s line %d\n"),
+ (_("BFD %s internal error, aborting at %s:%d\n"),
BFD_VERSION_STRING, file, line);
(*_bfd_error_handler) (_("Please report this bug.\n"));
_exit (EXIT_FAILURE);
diff --git a/bfd/config.in b/bfd/config.in
index 1ee1081..58248bd 100644
--- a/bfd/config.in
+++ b/bfd/config.in
@@ -17,6 +17,10 @@
/* Define to 1 if you have the <alloca.h> header file. */
#undef HAVE_ALLOCA_H
+/* Define to 1 if you have the declaration of `asprintf', and to 0 if you
+ don't. */
+#undef HAVE_DECL_ASPRINTF
+
/* Define to 1 if you have the declaration of `basename', and to 0 if you
don't. */
#undef HAVE_DECL_BASENAME
@@ -72,6 +76,10 @@
*/
#undef HAVE_DECL_STRSTR
+/* Define to 1 if you have the declaration of `vasprintf', and to 0 if you
+ don't. */
+#undef HAVE_DECL_VASPRINTF
+
/* Define to 1 if you have the declaration of `vsnprintf', and to 0 if you
don't. */
#undef HAVE_DECL_VSNPRINTF
diff --git a/bfd/configure b/bfd/configure
index eeeb89a..a17e936 100755
--- a/bfd/configure
+++ b/bfd/configure
@@ -13819,6 +13819,28 @@ cat >>confdefs.h <<_ACEOF
#define HAVE_DECL_STRSTR $ac_have_decl
_ACEOF
+ac_fn_c_check_decl "$LINENO" "asprintf" "ac_cv_have_decl_asprintf" "$ac_includes_default"
+if test "x$ac_cv_have_decl_asprintf" = x""yes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_ASPRINTF $ac_have_decl
+_ACEOF
+
+ac_fn_c_check_decl "$LINENO" "vasprintf" "ac_cv_have_decl_vasprintf" "$ac_includes_default"
+if test "x$ac_cv_have_decl_vasprintf" = x""yes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_VASPRINTF $ac_have_decl
+_ACEOF
+
ac_fn_c_check_decl "$LINENO" "snprintf" "ac_cv_have_decl_snprintf" "$ac_includes_default"
if test "x$ac_cv_have_decl_snprintf" = x""yes; then :
ac_have_decl=1
@@ -18338,14 +18360,14 @@ _LT_EOF
if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then
# The LINGUAS file contains the set of available languages.
if test -n "$OBSOLETE_ALL_LINGUAS"; then
- test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete"
+ test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.ac is obsolete" || echo "setting ALL_LINGUAS in configure.ac is obsolete"
fi
ALL_LINGUAS_=`sed -e "/^#/d" "$ac_given_srcdir/$ac_dir/LINGUAS"`
# Hide the ALL_LINGUAS assigment from automake.
eval 'ALL_LINGUAS''=$ALL_LINGUAS_'
POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS"
else
- # The set of available languages was given in configure.in.
+ # The set of available languages was given in configure.ac.
eval 'ALL_LINGUAS''=$OBSOLETE_ALL_LINGUAS'
fi
case "$ac_given_srcdir" in
diff --git a/bfd/configure.ac b/bfd/configure.ac
index 4225f7d..2a38842 100644
--- a/bfd/configure.ac
+++ b/bfd/configure.ac
@@ -232,6 +232,8 @@ AC_CHECK_DECLS(malloc)
AC_CHECK_DECLS(realloc)
AC_CHECK_DECLS(stpcpy)
AC_CHECK_DECLS(strstr)
+AC_CHECK_DECLS(asprintf)
+AC_CHECK_DECLS(vasprintf)
AC_CHECK_DECLS(snprintf)
AC_CHECK_DECLS(vsnprintf)
AC_CHECK_DECLS(strnlen)
diff --git a/bfd/elf.c b/bfd/elf.c
index 9846046..05ee025 100644
--- a/bfd/elf.c
+++ b/bfd/elf.c
@@ -4220,11 +4220,18 @@ _bfd_elf_map_sections_to_segments (bfd *abfd, struct bfd_link_info *info)
new_segment = TRUE;
}
else if ((last_hdr->flags & (SEC_LOAD | SEC_THREAD_LOCAL)) == 0
- && (hdr->flags & (SEC_LOAD | SEC_THREAD_LOCAL)) != 0)
+ && (hdr->flags & (SEC_LOAD | SEC_THREAD_LOCAL)) != 0
+ && ((abfd->flags & D_PAGED) == 0
+ || (((last_hdr->lma + last_size - 1) & -maxpagesize)
+ != (hdr->lma & -maxpagesize))))
{
- /* We don't want to put a loadable section after a
- nonloadable section in the same segment.
- Consider .tbss sections as loadable for this purpose. */
+ /* We don't want to put a loaded section after a
+ nonloaded (ie. bss style) section in the same segment
+ as that will force the non-loaded section to be loaded.
+ Consider .tbss sections as loaded for this purpose.
+ However, like the writable/non-writable case below,
+ if they are on the same page then they must be put
+ in the same segment. */
new_segment = TRUE;
}
else if ((abfd->flags & D_PAGED) == 0)
@@ -5654,7 +5661,7 @@ _bfd_elf_assign_file_positions_for_non_load (bfd *abfd)
if (d->rela.hdr
&& !_bfd_elf_set_reloc_sh_name (abfd,
d->rela.hdr,
- name, FALSE))
+ name, TRUE))
return FALSE;
/* Update section size and contents. */
diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c
index 919df17..ff69728 100644
--- a/bfd/elf32-arm.c
+++ b/bfd/elf32-arm.c
@@ -8449,7 +8449,7 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto,
else if (h != NULL
&& h->dynindx != -1
&& (!info->shared
- || !info->symbolic
+ || !SYMBOLIC_BIND (info, h)
|| !h->def_regular))
outrel.r_info = ELF32_R_INFO (h->dynindx, r_type);
else
@@ -16236,6 +16236,7 @@ elf32_arm_get_synthetic_symtab (bfd *abfd,
#define elf_backend_default_use_rela_p 0
#define elf_backend_got_header_size 12
+#define elf_backend_extern_protected_data 1
#undef elf_backend_obj_attrs_vendor
#define elf_backend_obj_attrs_vendor "aeabi"
diff --git a/bfd/elf32-hppa.c b/bfd/elf32-hppa.c
index af512a7..f611e0d 100644
--- a/bfd/elf32-hppa.c
+++ b/bfd/elf32-hppa.c
@@ -1467,7 +1467,7 @@ elf32_hppa_check_relocs (bfd *abfd,
&& (sec->flags & SEC_ALLOC) != 0
&& (IS_ABSOLUTE_RELOC (r_type)
|| (hh != NULL
- && (!info->symbolic
+ && (!SYMBOLIC_BIND (info, &hh->eh)
|| hh->eh.root.type == bfd_link_hash_defweak
|| !hh->eh.def_regular))))
|| (ELIMINATE_COPY_RELOCS
@@ -1819,7 +1819,7 @@ elf32_hppa_adjust_dynamic_symbol (struct bfd_link_info *info,
|| (eh->def_regular
&& eh->root.type != bfd_link_hash_defweak
&& ! hppa_elf_hash_entry (eh)->plabel
- && (!info->shared || info->symbolic)))
+ && (!info->shared || SYMBOLIC_BIND (info, eh))))
{
/* The .plt entry is not needed when:
a) Garbage collection has removed all references to the
@@ -4005,7 +4005,7 @@ elf32_hppa_relocate_section (bfd *output_bfd,
&& (plabel
|| !IS_ABSOLUTE_RELOC (r_type)
|| !info->shared
- || !info->symbolic
+ || !SYMBOLIC_BIND (info, &hh->eh)
|| !hh->eh.def_regular))
{
outrel.r_info = ELF32_R_INFO (hh->eh.dynindx, r_type);
@@ -4389,7 +4389,7 @@ elf32_hppa_finish_dynamic_symbol (bfd *output_bfd,
global offset table will already have been initialized in the
relocate_section function. */
if (info->shared
- && (info->symbolic || eh->dynindx == -1)
+ && (SYMBOLIC_BIND (info, eh) || eh->dynindx == -1)
&& eh->def_regular)
{
rela.r_info = ELF32_R_INFO (0, R_PARISC_DIR32);
diff --git a/bfd/elf32-m68k.c b/bfd/elf32-m68k.c
index fad3ec6..db0d0da 100644
--- a/bfd/elf32-m68k.c
+++ b/bfd/elf32-m68k.c
@@ -2758,7 +2758,7 @@ elf_m68k_check_relocs (bfd *abfd,
if (!(info->shared
&& (sec->flags & SEC_ALLOC) != 0
&& h != NULL
- && (!info->symbolic
+ && (!SYMBOLIC_BIND (info, h)
|| h->root.type == bfd_link_hash_defweak
|| !h->def_regular)))
{
@@ -4027,7 +4027,7 @@ elf_m68k_relocate_section (bfd *output_bfd,
|| r_type == R_68K_PC16
|| r_type == R_68K_PC32
|| !info->shared
- || !info->symbolic
+ || !SYMBOLIC_BIND (info, h)
|| !h->def_regular))
{
outrel.r_info = ELF32_R_INFO (h->dynindx, r_type);
diff --git a/bfd/elf32-msp430.c b/bfd/elf32-msp430.c
index 9e69791..83bb9ce 100644
--- a/bfd/elf32-msp430.c
+++ b/bfd/elf32-msp430.c
@@ -2532,6 +2532,27 @@ msp430_elf_is_target_special_symbol (bfd *abfd, asymbol *sym)
return _bfd_elf_is_local_label_name (abfd, sym->name);
}
+static bfd_boolean
+uses_large_model (bfd *abfd)
+{
+ obj_attribute * attr;
+
+ if (abfd->flags & BFD_LINKER_CREATED)
+ return FALSE;
+
+ attr = elf_known_obj_attributes_proc (abfd);
+ if (attr == NULL)
+ return FALSE;
+
+ return attr[OFBA_MSPABI_Tag_Code_Model].i == 2;
+}
+
+static unsigned int
+elf32_msp430_eh_frame_address_size (bfd *abfd, asection *sec ATTRIBUTE_UNUSED)
+{
+ return uses_large_model (abfd) ? 4 : 2;
+}
+
/* This is gross. The MSP430 EABI says that (sec 11.5):
"An implementation may choose to use Rel or Rela
@@ -2563,6 +2584,7 @@ msp430_elf_is_target_special_symbol (bfd *abfd, asymbol *sym)
#undef elf_backend_obj_attrs_arg_type
#define elf_backend_obj_attrs_arg_type elf32_msp430_obj_attrs_arg_type
#define bfd_elf32_bfd_merge_private_bfd_data elf32_msp430_merge_private_bfd_data
+#define elf_backend_eh_frame_address_size elf32_msp430_eh_frame_address_size
#define ELF_ARCH bfd_arch_msp430
#define ELF_MACHINE_CODE EM_MSP430
diff --git a/bfd/elf32-nios2.c b/bfd/elf32-nios2.c
index e5b7763..a5ab54f 100644
--- a/bfd/elf32-nios2.c
+++ b/bfd/elf32-nios2.c
@@ -4398,7 +4398,7 @@ nios2_elf32_relocate_section (bfd *output_bfd,
else if (h != NULL
&& h->dynindx != -1
&& (!info->shared
- || !info->symbolic
+ || !SYMBOLIC_BIND (info, h)
|| !h->def_regular))
{
outrel.r_info = ELF32_R_INFO (h->dynindx, r_type);
@@ -4909,7 +4909,7 @@ nios2_elf32_check_relocs (bfd *abfd, struct bfd_link_info *info,
&& (sec->flags & SEC_ALLOC) != 0
&& (r_type == R_NIOS2_BFD_RELOC_32
|| (h != NULL && ! h->needs_plt
- && (! info->symbolic || ! h->def_regular))))
+ && (! SYMBOLIC_BIND (info, h) || ! h->def_regular))))
{
struct elf32_nios2_dyn_relocs *p;
struct elf32_nios2_dyn_relocs **head;
@@ -5752,7 +5752,7 @@ allocate_dynrelocs (struct elf_link_hash_entry *h, PTR inf)
if (info->shared)
{
if (h->def_regular
- && (h->forced_local || info->symbolic))
+ && (h->forced_local || SYMBOLIC_BIND (info, h)))
{
struct elf32_nios2_dyn_relocs **pp;
diff --git a/bfd/elf32-tic6x.c b/bfd/elf32-tic6x.c
index 8bfad84..7fc385b 100644
--- a/bfd/elf32-tic6x.c
+++ b/bfd/elf32-tic6x.c
@@ -1849,7 +1849,7 @@ elf32_tic6x_finish_dynamic_symbol (bfd * output_bfd,
The entry in the global offset table will already have been
initialized in the relocate_section function. */
if (info->shared
- && (info->symbolic
+ && (SYMBOLIC_BIND (info, h)
|| h->dynindx == -1 || h->forced_local) && h->def_regular)
{
asection *s = h->root.u.def.section;
@@ -2449,7 +2449,7 @@ elf32_tic6x_relocate_section (bfd *output_bfd,
else if (h != NULL
&& h->dynindx != -1
&& (!info->shared
- || !info->symbolic
+ || !SYMBOLIC_BIND (info, h)
|| !h->def_regular))
{
outrel.r_info = ELF32_R_INFO (h->dynindx, r_type);
diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c
index 468e8bf..ef08164 100644
--- a/bfd/elf64-ppc.c
+++ b/bfd/elf64-ppc.c
@@ -6034,14 +6034,13 @@ opd_entry_value (asection *opd_sec,
if (rh != NULL)
{
rh = elf_follow_link (rh);
- BFD_ASSERT (rh->root.type == bfd_link_hash_defined
- || rh->root.type == bfd_link_hash_defweak);
- val = rh->root.u.def.value;
- sec = rh->root.u.def.section;
- if (sec->owner != opd_bfd)
+ if (rh->root.type != bfd_link_hash_defined
+ && rh->root.type != bfd_link_hash_defweak)
+ break;
+ if (rh->root.u.def.section->owner == opd_bfd)
{
- sec = NULL;
- val = (bfd_vma) -1;
+ val = rh->root.u.def.value;
+ sec = rh->root.u.def.section;
}
}
}
diff --git a/bfd/elflink.c b/bfd/elflink.c
index b741e7e..846f35e 100644
--- a/bfd/elflink.c
+++ b/bfd/elflink.c
@@ -1655,12 +1655,17 @@ _bfd_elf_add_default_symbol (bfd *abfd,
if (! override)
{
- bh = &hi->root;
- if (! (_bfd_generic_link_add_one_symbol
- (info, abfd, shortname, BSF_INDIRECT, bfd_ind_section_ptr,
- 0, name, FALSE, collect, &bh)))
- return FALSE;
- hi = (struct elf_link_hash_entry *) bh;
+ /* Add the default symbol if not performing a relocatable link. */
+ if (! info->relocatable)
+ {
+ bh = &hi->root;
+ if (! (_bfd_generic_link_add_one_symbol
+ (info, abfd, shortname, BSF_INDIRECT,
+ bfd_ind_section_ptr,
+ 0, name, FALSE, collect, &bh)))
hooks/post-receive
--
Repository for Project Archer.
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2015-08-03 18:47 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-08-03 18:47 [SCM] jankratochvil/gdbserverbuildid2: mainbuildid jkratoch
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).