public inbox for archer-commits@sourceware.org
help / color / mirror / Atom feed
* [SCM]  scox/strace: Merge branch 'master' into scox/strace
@ 2019-08-22 19:26 scox
  0 siblings, 0 replies; 3+ messages in thread
From: scox @ 2019-08-22 19:26 UTC (permalink / raw)
  To: archer-commits

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 871222 bytes --]

The branch, scox/strace has been updated
       via  e1c9923c858f265680f03f0fe5c48c0cc0bb243c (commit)
       via  546053acfa1518063ed0ea94c3e35c05089c32fc (commit)
       via  b4e87f2c1eee99dee805e3828514f8afa162f9ba (commit)
       via  d7a11d1383a2d0cdffc8c08e46b0cf5a66b3ce28 (commit)
       via  aedbe3bb9f03be12ad714adca1fefc391317bd94 (commit)
       via  ac533243beac35f158341d53edab53031218bcde (commit)
       via  52031738190ca1067bc6e40f662f4effcd428628 (commit)
       via  770c015139f038bd7b7abb5c6d84eb39d36d3080 (commit)
       via  7ce8f214f1af1dd593ad42665da416ac46033f97 (commit)
       via  f21c2bd7b7ef2a9c47e5713cabaa784bcf5c2bee (commit)
       via  d806ea2d0ef362fcddd2c1659f537b68aa114203 (commit)
       via  c1a5d03a89a455d79f025c66dce83342de4d26ce (commit)
       via  3eb185c97d8170b3f3a2b5edab4fbbd56f53f6f7 (commit)
       via  d292364e95fc9c8230b678d9026f285850074c02 (commit)
       via  903b777ddeb4c11a7de12cab59124e777614edec (commit)
       via  72c03e30ae783a5f38a8c124588a4536ae06e6ef (commit)
       via  2c115c4f3cb57cfed7a1be5bbccf0f1bc6f7fdbc (commit)
       via  b271c8567acd7b329fe6b37a3091613c634470c7 (commit)
       via  d367307b93e5589245d1f2c8bbcfe709404540a8 (commit)
       via  98ac8787e9bea0fef101b9b63c5dd06e653a46b3 (commit)
       via  34dafe9f39e61de970c36ed636daa58e1caa386c (commit)
       via  81e8046dc0daaf56fb10b11931fc77600a4b5920 (commit)
       via  398fdd6086a290748afcce0efabaebb4e363278c (commit)
       via  e699d33164a59dcfe7ad4a5154e5c6c811c1f958 (commit)
       via  bb01dbfc041dccab2f2a2818068158f61b4c0fe2 (commit)
       via  81c82c4b9005acf7865d8a19ee651968e059a848 (commit)
       via  2ddaf614439b50e6019c5218f2fbfc0d14194e96 (commit)
       via  017f982820d408fb49657b9b9b8f45a9616c5f21 (commit)
       via  ed8358e9491d5ae0a8ee021c162a85867af1146a (commit)
       via  20149b6b207ac8c2bcde6f272607109f566168a9 (commit)
       via  2d83e710a14c62cb6a9501c84fc46062f817428d (commit)
       via  d4ab829a2477d454bd38544f1b88a043ec58581c (commit)
       via  b4c555cfc48689d45481effff23c9017a4f3557f (commit)
       via  aa7ca1bb443e8c2baad17392f395d1556fecfafa (commit)
       via  fdfc8cf7f04e2f4d24ec9fff331ebd71a2e768a3 (commit)
       via  0b8b76098ff3d3dcd0c621f2e45cc0b4e7211d6a (commit)
       via  7df6aecc97b96843da080d54414052b1c954ddca (commit)
       via  63f6e94fb3cc5b6a2cfb8c28686f150e7226ab7e (commit)
       via  d8f9e51c361dfb53de3eca8d84f8938380af60ff (commit)
       via  33394263571f08a935c0a030dbde22a04eee7d70 (commit)
       via  6eac171f0624303d944ff1a1ae4d0e3b0a63c800 (commit)
       via  3df505f60eacd2c931092c7007f084d27583f9e5 (commit)
       via  272560b577894c388a3d0d3fda8294683714f582 (commit)
       via  08235187bcdd66599884f33b046cf8abcf949727 (commit)
       via  080a488354d63fec9791a26fadd15e0c5246983d (commit)
       via  db502012fc46b4dd068461aaeafeaa421489c562 (commit)
       via  3891b65efe614fe2e2f7e75e7f5ec8964f7fd96b (commit)
       via  ee556432c44dd5dbcf22c4086774bd29ded5b208 (commit)
       via  46f438e3d57bae1d74ab9a7e6cba380b0e58f552 (commit)
       via  f4ce562c7f7a95cab61bf298d289cd56f0802a95 (commit)
       via  c398c3d0b56823bb12718ae46a8c273b866ca246 (commit)
       via  e25d200487dba7dfdf92f638e4ef2aefd7bd7481 (commit)
       via  002f15c27779e154856fdf281360385f4d3be671 (commit)
       via  c9033fe839e37a378ff86e614a7d6e939b94f6c9 (commit)
       via  088f37dd90eecb647347c1aa53d36b3f5be64b21 (commit)
       via  a54700c6c45ea424b668f2201ef14906f2052412 (commit)
       via  e2a678a557b52816a7aa45902a6519bc1cae918e (commit)
       via  f2dda4778417e2d58a5b0416ff9598f68470cbfa (commit)
       via  ed4a1084d725a5d1aecefc6a430d3059a77c102d (commit)
       via  65962b20b6df7e8961ec4002179dbd51a33a627f (commit)
       via  22a2ab04f58dc7c3f5fb0e6d8f0fa96ee4aa3951 (commit)
       via  835b995b576d14fa9b73fb763d5186323b1365b6 (commit)
       via  d59b55f0952e95fdbec58021cecce85f4557b485 (commit)
       via  97dd8e07d998f5f0fcd0d06fd53e2ae9d337d222 (commit)
       via  6ae978f133a67d34d01b6bb2053f1ba20ad13eeb (commit)
       via  4196ab2a6d348f76c0e5e78252e44d9c631636d2 (commit)
       via  c6778d00df0fbc7fe53801717eb934a5d7b9674a (commit)
       via  9177214a228f7d0eb8543725287a6163993fbebf (commit)
       via  05192282ca19f8f5c201f630caed68b1632e2619 (commit)
       via  6485977b899b2780c575ff1d34ccfa7fa950e492 (commit)
       via  2208ee917050bcc901c7faefdee257ffbf8ef2ab (commit)
       via  fc9e754460ccf1c893fc9e67c02c49f58f1bd38e (commit)
       via  75faf5c41d7fc713b73cbb3523dcc6ca3855f98e (commit)
       via  b1c896b365f2dbcd14145a88d103623244cf0fb0 (commit)
       via  dfc19da6a6d43390544fa446bb1a33723b339a77 (commit)
       via  c327a44f38ad5ab0dfd8da5184c4c030798ef323 (commit)
       via  9defd221fe3ecffabc90eadd077326b27e898a2b (commit)
       via  414b84043054e9656aad008e6efb49979ec614e9 (commit)
       via  6405cd73c0d160d9b6f82744bb5510b3e101ad59 (commit)
       via  5216580d7a1134a9349ec045b475f5b40f499e5e (commit)
       via  93858ad34ec1d2250d33365468c6721023786f51 (commit)
       via  e321e7ce753f27ca9664ca08a8314924b5771d61 (commit)
       via  8270ac6229ac323fe7dfc1915b3f52d77df6bb9a (commit)
       via  7b56485db5187e6c63f330e1eb35f63b50327b74 (commit)
       via  7ba913dcdf2f94cbd501d763f0fc55a46d10331c (commit)
       via  37a4a1310484490878ce0af9ea1924d6c7dbec7b (commit)
       via  0bd27e079a99d93590fd078c86c0afe51f6d29b8 (commit)
       via  b4ef5aeb3a1880490f9441655d9de74727c9063a (commit)
       via  fede52738f3ed3e375d84197380ae1a6cd35c6fe (commit)
       via  22c3f4909af125b457564db66e3cb3c56cb9abd3 (commit)
       via  16cb7910b946bad4b5f4aa69925361004c4e412f (commit)
       via  cc0c3ffbc975fe764f6c4746611a836e7a4ce379 (commit)
       via  3f3ffe54e229482bdb0785ae2162f03d60870400 (commit)
       via  69258091762bce83b0f3dc9e07800b87bdc0649f (commit)
       via  62cf57fee7d72d0c2df2be4d999d63ea3bfafa43 (commit)
       via  2afade5dbe1bf99db3f6ab625ca540be030e0e41 (commit)
       via  a3504e96544b3f8918c4521116d537a4a07c2106 (commit)
       via  011168429859e3e3a2342ee043cbc2c7a5cf5e2f (commit)
       via  29c9291108487e1dd9bc5677dafee58ea2068f77 (commit)
       via  abc6c00fb6cbb199348ec5f0bf4d969ed48bdfad (commit)
       via  74c2c1f45f036c4f155cc65a86022ce6eef0c5c5 (commit)
       via  5067f530c3a26330263649fbef23c7685f27cbb7 (commit)
       via  86c6b807f50ecec84e55007bf6cb6e54c159727b (commit)
       via  5db2718ce48c497e317787caebacd019da59c3b0 (commit)
       via  cb41b9e70e6fbd1cb603bb9ba4372fbb8ae87b20 (commit)
       via  ca2589f3bbad1e151abbb293d4c43a87b7a4d5ec (commit)
       via  c15a79c78cc0111296b487de3fa59365f13df3bc (commit)
       via  a2d4e4b70945c1704e5249ad6a9be9d5875a4b0e (commit)
       via  57a2fe070226852b84eff8f37e49b367daa2a32f (commit)
       via  775e241e9c5f2b2ff2b59972ab70e5f20763fae6 (commit)
       via  08132bdd876fa1825810f90ecc25390dd4ded457 (commit)
       via  5312fe52e9ae6fd108f161a271315eb2821246eb (commit)
       via  9bb9c115cd3d0b9de97e02cf2e861972010daa6f (commit)
       via  b32b0a69fdf24a8b04efe9c2b90c3e830aa0c2c1 (commit)
       via  acdb5f3476c4dd5a0f7182e2e96eafee3a84d856 (commit)
       via  dc02848a69da5b8794a3d7094664e3b4d9a508cf (commit)
       via  4cfbdbfd2607a2bcfb9f745410e34aea8f044a9b (commit)
       via  988de25b366c74cd62e35f3d5cf63086a964c7aa (commit)
       via  36983a93bb338b7cdd6f7d6f9f91dc9ce9815b4e (commit)
       via  8be90e963138c88d7648c1eb2146e45f048d616e (commit)
       via  020a839d52fb8a28059dadd075b09a2fec84ef74 (commit)
       via  dac36daf78653a8e4688b825cdb15461a88470d2 (commit)
       via  1022c627dbd9d7f7f67ac68f16de05474de7a75a (commit)
       via  f211b8c0b91fc7b1657079a495f05a9a4d957821 (commit)
       via  f16a9783c5f085443d806646074e9c06fdee9a88 (commit)
       via  1ba7cdcd931ddf672e4a8a6483593f9b94e55965 (commit)
       via  2b2ed2452c0bd2437ff65e71356bece225f0be46 (commit)
       via  678581fc78cffcfd1423b557368c3a0cfb695b87 (commit)
       via  eba4caf23152a1a66d10ce37c502ec78654cd5eb (commit)
       via  378646f7a4260eecd244ba840ae1af4e663e30a5 (commit)
       via  128d6509819d9d4fe6f52d1a5dcc458b9cbd0f4c (commit)
       via  dbe15e4e1dda8e20cc347ced751631d49a5f57de (commit)
       via  7b1dd701059ead8f3af3c081fc9727b9883a74c3 (commit)
       via  8fb49c3c715190a5753980d0ddef721d816bbc3d (commit)
       via  7d55c1d61edfef2323f5d4675f0367ffb411c3cb (commit)
       via  178d871928b99112a39e0ca1284d6bbdde50ab6e (commit)
       via  b1791af06ec358d21dbe6a99129f11cc02438962 (commit)
       via  d88bdcb4a52bc041ed9b607dda22f478ec61a67b (commit)
       via  7c1c1904bedb8f873731651b420a23f573785728 (commit)
       via  f927cc8faff0d2e39561c90f5182ebe99b2f77f6 (commit)
       via  123cd851480c728845a4c3f85da772dd8331cf19 (commit)
       via  3d31bc39e655ea39721754fa0ea539a8a0c9b26c (commit)
       via  fca8e23c31e6ec37bdcb5cf1d981a39d1e6fb6f6 (commit)
       via  fc8de8e227e5146336d654f2fb4f98010d7cf12d (commit)
       via  97b031c5d6d42ff2b1758a8a8c332cb44ba9c06f (commit)
       via  7cd00957a57f8d8195baf7a85ea21b879bbbaf91 (commit)
       via  bc750500af6d0a6cb602a5d00b3f71b26ce96762 (commit)
       via  906799036a9bcc2b6f27fbcf894092bdc03f6da9 (commit)
       via  0cf9feb996cb32939840b13073a49310b1fd71e0 (commit)
       via  efba19b06a6f2baacb3920599f970d1333ffc358 (commit)
       via  f25102f7b100337923d2c81ecc12a64d428e98fe (commit)
       via  021887d88a040cf39f3afbd7da10bbe3ff1ad6c3 (commit)
       via  b3c6d7ff98954032a3e7989dbd1f50f041e010bb (commit)
       via  d2834edcb67b9d9bd7163868fa0239948a2e57b7 (commit)
       via  590042fc45f857c981bee4e0c76f6b3b528a224e (commit)
       via  404f29021abaef86a341663444fb069eb1f0282a (commit)
       via  046bebe1c0a367687bd693eb4594fcdcba0b8f7e (commit)
       via  ddbcedf5de138bc83d5d16554a3f44163dcaef7a (commit)
       via  b08b16c8391bbcd706a4aaa4b09509e7c2b8c676 (commit)
       via  cb44333d99548bbbf7be06387a31877ee9322ab4 (commit)
       via  872dceaaff9b54764b8f510b549497b9d904b136 (commit)
       via  269249d9406096dd59aecd8845e960fdddb1ebfe (commit)
       via  c0e8dcd87101119806c5bbca4c7b649c1b8c0996 (commit)
       via  128bf1fe608badb59d27f9c5c8ffb1a6a6d9d811 (commit)
       via  b02c4f162335ed055964f603ba3aca18b0e5c5bf (commit)
       via  b39152b3e5befec363302d5d81ade36ab45d6d08 (commit)
       via  0b27c27d0d3060171876736f05c39f9c86a65d3e (commit)
       via  4ee94178afbe062bc244d28595f86d63633a7af7 (commit)
       via  276cbbdf990f3f09acacdf3d9603b054ac7d29da (commit)
       via  580f1034d10934b757703110db068397c0c1e7bb (commit)
       via  d86bd7cba1965c621b63792179febcf9eeb273ad (commit)
       via  8abfcabcb49fcd8b95854a5b59e7928e3c6000ff (commit)
       via  23d188c74e7481bb0af3c42b84fc9cb0c94267e5 (commit)
       via  a80cf5d88e028fa6a72b37fe50795e70bb6e3559 (commit)
       via  d09628385443574b556f2beaaba7588a2a5fb4c0 (commit)
       via  e17869db99195849826eaaf5d2d0eb2cfdd7a2a7 (commit)
       via  2b79f3761c834cd217407f75f867f6a761703ab3 (commit)
       via  188a63736c70060180382e36364a23dcebe3c29c (commit)
       via  2252ff3d9045b54bf3a2b54c7ba33320ccab9bc7 (commit)
       via  26655f53069a2f8a8ccbc6b60537149383d28be1 (commit)
       via  0b3303472d5fd742198f04dbf4322098be6c158c (commit)
       via  ae60f04e08bf48f65d9101a6ab63f3806e6fca5e (commit)
       via  db4dc13eebbd73cddfe3abb6c001982c7bdbba3f (commit)
       via  28cd9371e84144df3b9b8903770f71d39824f8f8 (commit)
       via  6d6231ed5822782b76a2aad268cc4891e4f91dfc (commit)
       via  ca683e3a86d081fcf43685bee840086bd4c07443 (commit)
       via  89c52ae3a20e8d84a250095781c1e022af542b3f (commit)
       via  6a010cf67a96adcaf80c74f926df6b42ce13e7df (commit)
       via  97c0a07968a7c64e1de96abff8937d089f09b3e7 (commit)
       via  1b611b2dc3075d20372557021f95ec326cdf8aa5 (commit)
       via  371367a95037cac795af5cdc589a2aa0c7a4dcd3 (commit)
       via  0f52d45acd6c54aa47082778ffcbafddd423a5b4 (commit)
       via  0eba165a74cdb039a5e6ed86e0396d80f68ca22c (commit)
       via  e0d0c518daa5e10a417d16ad8158e97016562342 (commit)
       via  f126416240a3ae1be69792361bca8bcbb84e62e8 (commit)
       via  0a7b24850e0cba956bd836ecb1f60959cbf75087 (commit)
       via  c6bdbeb7c468489da9468445057d245929c3d91c (commit)
       via  59bd512b9c54c6fa2bd951cd10a1ca1e6ffb3dcf (commit)
       via  2a3ad588e0758bc2c753dfa216c344036e5a22bc (commit)
       via  117eb594228cf5447e49475e4fb33480c1f717a7 (commit)
       via  ed5913402bd4d50e342d4350ee5e4662d98a3947 (commit)
       via  776ab89fe3cdce91cd644058c9fcda0c506f995b (commit)
       via  5c1e6d53a518442741f05175dbded0d1880f4759 (commit)
       via  52b5a0c663ba7cb4f1488a7e96addc303fc6e021 (commit)
       via  0630887d4ee35ab2236d6e2f3be3a86e6d881387 (commit)
       via  a2bd7b82ee2847d0b9bc6994b7248306de3a618f (commit)
       via  c0d6f62fcec939ab896e4839f6aa14ebfcd43565 (commit)
       via  aa3b653351504e262fb455af5efb6eea6d981597 (commit)
       via  a1530dc7319595b5980e8501092782724c946351 (commit)
       via  2906593ffecef89f8d64e0f1ca21494be71d0ebd (commit)
       via  5c4dde850c0d4874d3bbe6dd1989bf0f7a5ed1c3 (commit)
       via  0f575925b6ff89def089e6b6ba810ee547d3978d (commit)
       via  b13057d9ceaa4944dc2d0ebf5df750d9350d0727 (commit)
       via  34d5c40a07be4bc195d5ed9aecf4eb2faa1482bc (commit)
       via  25ec8924842a215e7f684d3a5076607409ac822f (commit)
       via  c620ed8866cc90ccfa363daf98ce7061d076d598 (commit)
       via  e48de49be52cb6e0fe3edbcdc3e63bbc2465d930 (commit)
       via  3d2357068b03edc850b3d84a27dbe6ad12a66d6f (commit)
       via  bc4268a5d926c8f29e42d245322145dad131627f (commit)
       via  c7e4c0a6482cebcf8b129d1008a2c553a0183aee (commit)
       via  4b5e8d19afe4accc3dd87aeba58d6704e71c610d (commit)
       via  de28a3b72e4e85233c6ece9063696b13ef170c00 (commit)
       via  507dd60e28d0ef35ffb7c0880933d6b88cc3f5bd (commit)
       via  5beafce944b6b200d1fa80d7f4a8656cb2ecf2fa (commit)
       via  2d274232f3e693d54f8dd561de73810d1a03ddf7 (commit)
       via  9197cd8b52aa41a04b883d83df863ecb5afc5d35 (commit)
       via  b528dae0954436ab103fb8ab6fc1ca632b4a7c51 (commit)
       via  d17725d72f25812acc8bd16a368c0e889c4b4d1e (commit)
       via  cc5277b173701364c10204f316db28198f2c683b (commit)
       via  ac50aea1311b01c745afc4dba102a8d20d0eea6e (commit)
       via  4538d1c7c46e67b472d8d5ebf163f3dfd9c67714 (commit)
       via  52b75bf1dc759e8d9eda9a71caa52e458e57e4ff (commit)
       via  2b1d00c2b828ea98fb61f07496882f8a7aa99f5f (commit)
       via  ded631d57dec8c75ff5713f062b1c5667c31ec23 (commit)
       via  58ac439d385a285382733a35ca1fb2666edf6540 (commit)
       via  fe1f56ee14b2c30f088dc65bb4b67b9793199cea (commit)
       via  f790b310d2c29f08be79d6af8d8c391bf793fce7 (commit)
       via  d95fc6eec07344f83ec0aba4a1e4f17fb53da45b (commit)
       via  c3786b3aa311e7fba247623a98135d63d1d51c99 (commit)
       via  1c316af29ff2db118796de1486bf4e9673ac2922 (commit)
       via  6bdfee81576aae55666a9245cfc0a316a6849957 (commit)
       via  98a617f8d5cf9bfb53b2e1d5cf3f0e0f188d9e53 (commit)
       via  5c076da45ce9a24d47046ddb0bac02e158e6bf58 (commit)
       via  1aff7173105c9540bbbef75727aa200f5c288b2e (commit)
       via  2dc80cf8a5799120fd4e00199688f721e7de2a62 (commit)
       via  567238c956c4e5530bd143bfae9393c7ae5524cd (commit)
       via  c89f9f2a528e490733ace16204752e9af945454e (commit)
       via  89b085acaf8d449d6c9c0b0490c6a0c9a745db5d (commit)
       via  1512d3b7b9de3a1943623f2e1f373459d5d80a98 (commit)
       via  8e2e3c6c346c1c8142e714715e5a86b32f7e31ea (commit)
       via  6dd17ae0f9b0d9fc230e75ce345da9793498554d (commit)
       via  6e99a238f01fcf6f77ae25e8ade57e509a724b1f (commit)
       via  db2307377ffcd295f212cfa753e3ff45f1b85fb0 (commit)
       via  f32feb4ab3c30a9a80e890a51ceb94b7446bd4ea (commit)
       via  297989a10c56aec56eab0ee63f1e61c33ab20905 (commit)
       via  d079b9c04afb48ecba42c42632c34974f5a32ce8 (commit)
       via  48467cb99b04c9d908ce2dd74422c9c3f322ccc3 (commit)
       via  c7c860d2d29ca3e774c29f328d2af42eeb031958 (commit)
       via  2e6be59c8de57c32260771ac5307968d18793a0a (commit)
       via  442853af244e0352956a5d91ad5e169a85b58710 (commit)
       via  75b493d0f95c6037753e0d250e1ecc6fe8d46c38 (commit)
       via  b3b965fb91e1671da5b7d42349fa0d78e80c29f4 (commit)
       via  8f79c1075e8f258ac5a909b39704009ebc440e76 (commit)
       via  4625b4d081eb0a243c6c7370f9a12c97bf6bcf65 (commit)
       via  9596751830b82b3ceaf8e6bb0c333181dfc96257 (commit)
       via  dac6552d4a203db908e11ba4803c7e39e090716f (commit)
       via  0f3f71676a8971e0376d7d99b383660f06ff4d95 (commit)
       via  7e126ba31ab6536b1dd779e483b72f47d3a76742 (commit)
       via  ef551643dc282159185cb9916c7cb0308ae03cdd (commit)
       via  c54e42531adb7bf8d58bd4c3c8e0c710305959e1 (commit)
       via  2f86d5594071a16665711ae13da88af1cc904371 (commit)
       via  cc364be6ff45669150077387f22723de33d5f1b1 (commit)
       via  c5e20471be97e2dcd3498ac284487e2546715f66 (commit)
       via  7613ca5e3885b8e79d9096a53f3e5492a5c06cd7 (commit)
       via  7137a1ed0ad9afdd57e6ef44abbfaeaeb44dd17e (commit)
       via  024a5840006aba9ba698aa9d868a7394016dd4a0 (commit)
       via  c76ddaa3f4f8313976670ba8f15163a3544eb1af (commit)
       via  407bcc63bda3d78bedffb49ddebf0b41294218d9 (commit)
       via  2e8136f9453e21414cc328d025bec33218176b66 (commit)
       via  19889a58358ec7f6981c9b20b9541bcb95a839bf (commit)
       via  a028026d2f9bbeaa2217aa8aafa1463bd88463ba (commit)
       via  9a618ef61593ea5103aaf17bbe968bf552aa3de0 (commit)
       via  40eadf04ff1f0eaec82dc911cf079555cdbb03d0 (commit)
       via  8c728a9d93e2342c57039fcdd6e4a502875b9e09 (commit)
       via  df3a023bd614133fe69afb02cd0e8f3e590a36a9 (commit)
       via  06f44071ccbeca33fff70b928b71d95a15982740 (commit)
       via  ec49711a16785636a5b9eac3a92bd00382fcb1a9 (commit)
       via  acea835faa6e14c0b008f001ab145e301ff215f6 (commit)
       via  89ebb345e7f5e3ab97638eff7b5914ed2b2e0df1 (commit)
       via  ac79ff9ed2f2d6e87a46146eee28a1d8fa631398 (commit)
       via  1dd1bc4daf99ec7ad1f9a6feea8cf4ebe715a92d (commit)
       via  5ba29434765feed692b6342a8b0f853050be2402 (commit)
       via  89356123a17c27548c7e71f4f000b1f74e551c31 (commit)
       via  bfa2a36d94d124eb7b54fd271a543047579b47ee (commit)
       via  0c628bba5afd16e0ab3d78ca81ab3f2d5342c50c (commit)
       via  236ab0c60c9cedecd4fc23b526a588ee25636c13 (commit)
       via  a8e9d2471806ef86ff7aec43164a6fe347efba3b (commit)
       via  eb86c5e2e824787875187901b12fba52ef873278 (commit)
       via  a8eab7c6d529ddd248ff5243bb22e9346196e376 (commit)
       via  b4603c34644847e2113e8c29408db09049c5c30f (commit)
       via  c32e6a04f42b8e4a1392ee4b87d040c06b917ef5 (commit)
       via  c8cdc1e08312a238a9138b55ae080ceeab14845c (commit)
       via  7fec04c365ae2468d283fb3529a9ea334d6e528f (commit)
       via  86ceaf9867288530af927aa98680526c897cf4cc (commit)
       via  f720d67c59a4c7e6bf92538c6bfc8dc76f7c7224 (commit)
       via  9ab3a74416dac187d56fcf292b39b681d1362dae (commit)
       via  bcbaec5c407a9301ed987d380ac49426a84c3a0e (commit)
       via  01e175fe1b21950982642713513e442fc09614e6 (commit)
       via  ec38ac465d632cbc7fbecffcaadb7c6ffc4b5f39 (commit)
       via  56f79b630766bb134400b4a8da43941cfc31c0c0 (commit)
       via  4c5aa8e0b1b4439f73ef1f82344e408b989f85df (commit)
       via  7cc17433020a62935e4d91053251fe900d83c7f0 (commit)
       via  f42b26179a8606d31959207a2d8eb8582b650c99 (commit)
       via  f29ec966436f98e761f7a2a7183ad8ebab68c2ea (commit)
       via  d105cce5dd8d6a5218b044fc161ce89c6b245432 (commit)
       via  231097b03afffd0c5a2b520cd999dbcbe8d64eda (commit)
       via  1802aae8449a4d693ba1f4efb8a7917c2f20990b (commit)
       via  ccbdd22fb96b8680ebeaecd829e8e51958845a8f (commit)
       via  c213164ad2505cba5263602b7f9fa9a4dd1adf39 (commit)
       via  7a708984176cc2d247d7dd96d84c7d7501bae6eb (commit)
       via  88468fe09628974cde7dc891d088cc1e0015fa0d (commit)
       via  6cbb8e87ee4682c47eafbec670d62ea2a7a89540 (commit)
       via  12a0b67d289e2c3ed266d93e8a8c80087f7d18f8 (commit)
       via  afe09f0b6311a4dd1a7e2dc6491550bb228734f8 (commit)
       via  cd215b2eb74c179d936a3b28577753a08de1cf83 (commit)
       via  54d7dae59a2239720c848985a7d50a0a8b3319eb (commit)
       via  71c4e95abe66ec9fc2c064268e3f9640a5b951d8 (commit)
       via  46e9995a207140408309dbea40c64f11843db777 (commit)
       via  b00a0a86c40c681cf4b22a3630f85188ac849721 (commit)
       via  0b1474281c659919d9c63ccfd6891b9e9ed0fc9c (commit)
       via  d0044bac9eb6c5476d29c41872bcf8f74a990d4f (commit)
       via  f264fab3cd9364073ccf7c32f29d0f1aa7c99159 (commit)
       via  e0b989a6d74efbcdadac4974d0b8520ac31cd9b6 (commit)
       via  d8f68fcb9378b5ab1c945fa676e11da15be56dd6 (commit)
       via  ca5af91ed271a12200bb40ccfaaede4baef6f5fe (commit)
       via  5104fe361d818a46b262b5d504f3d293c9a2b44a (commit)
       via  daa15dde7202d948da694bdfe0df9e5294c7ee9a (commit)
       via  bfad4537079109d9c41ecd86af9cf84b6825a192 (commit)
       via  88f7e873362279462c676b26fee62376dba82b5c (commit)
       via  96bd6233af7c01885de4f4de3a4016014d61d859 (commit)
       via  ce38393b1abc2573d6521d11ab1fbfb5a28e5109 (commit)
       via  2d8b51cba307333b6a068296d9668cd01164de28 (commit)
       via  18ab23af8b3d473f795ce48ee54a47e1a3e7ae47 (commit)
       via  88b7e7ccb958220adabc307e6d38fc66877820fb (commit)
       via  0fcd37117e94e5b9bf5f4aaa4dccc8038b38398e (commit)
       via  4a38112da00f45527de4aec0b645443c6ee0e01e (commit)
       via  0912922656b9fec5f04623ea49292b7ae564c7ef (commit)
       via  4a8a5e84a777c7c267503a1d1ee15bce2ba19d1d (commit)
       via  76d2be8e92a900558648eeba6b4ff95cba62801e (commit)
       via  890b8bde7a07a412bc1085bd4724bd03500b0dc0 (commit)
       via  2cdfa11333867dbfcb2a6b631cda989d64f68944 (commit)
       via  8e3cfd09e813fc1a2738b0d4d19d15358e438ace (commit)
       via  f4e049775aa3b025501d6b4aae1cdb975505a767 (commit)
       via  0379b8837a875403866e2cf1a0315bee1d8d5694 (commit)
       via  b7fbad913e8874b9a887eb149b14975343bfb7ab (commit)
       via  4e1e56b9818109a39bb1b035fd50dd05a00699f2 (commit)
       via  1e0c09ba0bdd8b4dd1ab3a61b2ae2d326825bee1 (commit)
       via  1bf605de8e9ae4fcf77c21067ddaf4a242a873f7 (commit)
       via  098f9ed48e1c94a2624c825ba93d72b163d41196 (commit)
       via  801109578cd2a6ebd690dd23f0d4a1f4a67aee09 (commit)
       via  cf82af058d2f1488d8f8a096d7e3b76d1d5a4f46 (commit)
       via  01aeb396d0e7a2d76f5f2391a30328dcdd5bed1e (commit)
       via  fd6c75eecd92ad888cc369489b31d2ed9015130e (commit)
       via  f6cc34a91c173634b6afcc1a48601a601fbace37 (commit)
       via  f31ec9af48578adb0baf8db3e10da871d6ee3eca (commit)
       via  d1b6f1e5ebdd755274a77a31c4afa48969b73bee (commit)
       via  d9743a13e0c9e3043ec3ad979534fab44c0f17b2 (commit)
       via  caf0bc4e8bafc387c8136c0f63748e56245f779a (commit)
       via  9d391078d1238e1be9dea5a775982a00a2497a57 (commit)
       via  a38da35d7bc89e4c2191d4f042912038c585f36d (commit)
       via  c2cd8994669f63eb415522352a5d5006d0fbfb48 (commit)
       via  4dde7b34f4e40ee6e0ea596357e4def60bd67d20 (commit)
       via  b73dd8779c0530e91c6e5067eab4cb7ca3f794d5 (commit)
       via  ae2b53806d3ce384e349c722b21a7ad246102d5b (commit)
       via  1ce3e8442e5bab6f700f5f011de56201f76b8461 (commit)
       via  fe3eaf1cd9af54cd4c678a8dde7fd0df601c9490 (commit)
       via  368c1354e578eb280df37059aa6b8c1f178baaf4 (commit)
       via  e80cd2047079a63ab087df15d179c49ca18de202 (commit)
       via  aca2dd16474ec88b3969436044801f58f9163c5c (commit)
       via  517e9505fa563c83b4d5cb192e423a0d6baac752 (commit)
       via  f76d8b19e80b43a141ce31c0e0230e23f676182d (commit)
       via  b4094625d8a3e2b528032e2ca8d8cdecf222bb7c (commit)
       via  c223a7299e2bdb604d7006842eda7165bcbf2c15 (commit)
       via  50daf2683bad925470f6f1bd08aef928c2f4d6fe (commit)
       via  df5f8cab00a8076a5582efec028002d323950c8f (commit)
       via  80cb6c27099e199cca01bc1a2efb8e8fbc941a48 (commit)
       via  baff0c28b83bd1ad7949d07b78fdb85ad6be49a5 (commit)
       via  3b23c5f2662d3240cdc586d3d2e5fb6eb8cba4c7 (commit)
       via  0b5ec21882bcc27e93144882b84935497da6e7fe (commit)
       via  0807ab7b88fa5ffb138ba1ee22b33d26e239de2f (commit)
       via  9ad7fdef7c72b2aca0398ce8e63b89e560873807 (commit)
       via  5813316fa4aeaf52f374c20c7fdb9747b88fa8ca (commit)
       via  00e264e7626260a6df6b5a0aa7ee25215ea93f9c (commit)
       via  06210ce428ad74c28fd94f7ea3800b79791cdefa (commit)
       via  381befeedf9316991d47f4213850545a96593d23 (commit)
       via  6b78c3f83c8bcbfa714aab7627ece9673b2d602a (commit)
       via  d72a9b85651c872378f6dd732cb578f6f055a9b3 (commit)
       via  8dc0818eb2c449d553065b57e6953436896c6e5a (commit)
       via  1d942ae90810156b9875ea3e11754ab447c748db (commit)
       via  bd7918379d2688898dfb29851f2019d2a7a70959 (commit)
       via  dfd6917457a3030ea4a4b6356f65216fab92d0b8 (commit)
       via  21df382b918888de64749e977f185c4e10a5b838 (commit)
       via  206e6c58a769f9ec63827b8ca3952b0cd8c828ba (commit)
       via  cbde90f25ec66b359c90514a50bbf25d122bb7e3 (commit)
       via  7e24fb63e7db33d3627623629b0e99fe322e26f9 (commit)
       via  07128006d6caec5df31a960b131d2026f35ed948 (commit)
       via  1f77b012e61ec11c92a35223fdfed598c6d2f4e9 (commit)
       via  33eca68072e73d984fc139dde45b8140b94757cb (commit)
       via  ca8d69beb1024316af8dec571584437d613f40d2 (commit)
       via  3719fd55b6f89662653d50d33bb267c5f21127a5 (commit)
       via  5b9d7a9a647260ba754fbd2a176d37806f15acc8 (commit)
       via  03181f1c38753b24e9d13491e102b5fa685076a2 (commit)
       via  92434a14b97bf07546701613a16aaf4d8a3b3eca (commit)
       via  da73816739483bac537403262cef1c460e43319f (commit)
       via  48b550c28afd21b382e21e56b7ba246b3bf49d4b (commit)
       via  a48654b6d4ed558d632dca3d895e8ad2f0dd57a6 (commit)
       via  f26a32876ba49b2d5537beccea2a38bc544e9732 (commit)
       via  7b2438015ca87297b2796c662182f796bb5358c2 (commit)
       via  0c951c25c6c7cfbf0f399d34277f73b0fdfc18cd (commit)
       via  c9b8abb7af46c9da4b50ad8495ab2824c4125962 (commit)
       via  e4dff7651becba48d805e39655138f7f6ca30485 (commit)
       via  220f99066d6ce2a6caf17692fcc57d714d8f6910 (commit)
       via  32f598441988e5a086ba8580e82f4944c3692eb5 (commit)
       via  154a0a90ddde3a5d538830527ffd6d128cb23b1b (commit)
       via  0d4e84ed37c404eb7e691ee9d68ae2ec758d8f66 (commit)
       via  9a49df9d4bfc7ff03fed751e12b1bc32fbee4fb2 (commit)
       via  b86352cfc17fb7f07d5da9efcfd59f8b2bd08eee (commit)
       via  603490bf53fe1885ef45f9d0fb783b32f8ef6049 (commit)
       via  592f9d271caaa22a6b299cfaaf6ce3394796e0e2 (commit)
       via  830b67068cebe7db0eb0db3fa19244e03859fae0 (commit)
       via  a89fdbdb201764e3989e9113e03a769091d42cce (commit)
       via  60cfcb20ce8f95a6f71f68c51b295defa5d27032 (commit)
       via  b16507e0917169555f8bbfcb1d6c9685813ccf6c (commit)
       via  021d8588f6ca843a2aada955d00851fbb62f8a62 (commit)
       via  b777eb6de24ae1a1dc2f1e48d593b0a5c79937a9 (commit)
       via  72ee03ff58d954dbed886b672032c8c9db0a0dcc (commit)
       via  00db9531969db8b6ab984da996d0411fad938589 (commit)
       via  f2478a7e8b145a55c343bc7a62c53b021062229e (commit)
       via  2ee0a9b7bcd86721bd44d8a8fc967b2a8cbe18e0 (commit)
       via  0d12e84cfc9bd36b7bbda01a3c8f83f65a832398 (commit)
       via  f06f1252b0b8ef20adb4296faaf8293c9d36f615 (commit)
       via  7a5d944b9e86bf73ae5acaa984df24d175b80f68 (commit)
       via  48c66e1d07d65a76c685d10003d751ef883b1244 (commit)
       via  a269fbf12dcc621c45030ab9956ae28053878b7c (commit)
       via  c294730c54f15ea69b18025025c0f191e5876301 (commit)
       via  9d52077d65206b1e0df62f05b577b5ceede1228a (commit)
       via  22a20dca3a96c481093bdff5e17f1feb0f9e345c (commit)
       via  cb60f4208b2b920614306937b62bf15700824ee0 (commit)
       via  51df2ae3029caafd2b832e19d2978114a7e25a8a (commit)
       via  18101a352541a28b8e199b4d7b9f66989681dc02 (commit)
       via  05b08ac1608c8355201db21fe4c871677466f0d5 (commit)
       via  32372d80caba2e223157eca6db2fb0e65369c3c7 (commit)
       via  43dd762689eb80d5c93a6c1079697c3791fb46fa (commit)
       via  5c458ae8f529a11ecab9db470d80695bb31ecfc5 (commit)
       via  4c462cb0efb40a7a1e5297946bed59286dd0cf02 (commit)
       via  89abbcc26d891425678b8b463bc1fa81273fb54c (commit)
       via  b863685d70199489b3fe27abedfb1eb6d1452b7d (commit)
       via  166a82be89008621a31e6e56b2d52a049b53e341 (commit)
       via  9fb4c7e9f00accbbf92fc0b0a53978fd50ff6bb0 (commit)
       via  e2d0f9803e3054b05c2de716f3c928e510009436 (commit)
       via  eb6ad40f244ea6dedca1440b0ce3d89c1ecdac0c (commit)
       via  a38118e5d165324b4f9509fd82cf1f1c6421bfc5 (commit)
       via  cb1e4e32c2d9588e1d77ea49bafb5dcdc1cff764 (commit)
       via  b58a68fe5709ed205c3ac54065f1783ce58d9a01 (commit)
       via  0826779b99b49f7f8df5d186f3c481b6007010d4 (commit)
       via  268a13a5a3f7c6b9b6ffc5ac2d1b24eb41f3fbdc (commit)
       via  5b0e2db4fa08b43e9ff78d6e9a45d496522bd241 (commit)
       via  0ba852ab4126a6eb4be88577d62dc25f2be7f725 (commit)
       via  b3a7d1711e4557811865333a0ac96fc16b750869 (commit)
       via  d69cd47e7e9884f7b3a319936f70b8d93347e9e0 (commit)
       via  64da05d557f59814151e908a34f36996a027d127 (commit)
       via  1f6f6e21fa86dc3411a6498608f32e9eb24b7851 (commit)
       via  ea142fbfc9c1708a83d3532257d6728e1f5c142e (commit)
       via  62a47958bd6e3cbd909c2f19cd4669a9670ce4f1 (commit)
       via  3836e1d1ab859b9f6c41bc4565ef779640b7c706 (commit)
       via  55904abea47780ed16b4f726862ba1e14d05b96e (commit)
       via  25c816e70e578b8a9abab0dada0490dd5ae41780 (commit)
       via  923cccf9bcc2b97298c2c0563326193948410311 (commit)
       via  98602811d838077269e361e9d807fe530c780011 (commit)
       via  a0b6cbf69db7427cfdf054092062fcf82eef9a58 (commit)
       via  0598af4880f58af5ce7c15419551362646892c7f (commit)
       via  213fd9faf563ce5726ce66c8104cbaba44ba9c09 (commit)
       via  350fab54163e2dd178609d268e80bf31042d182d (commit)
       via  f0452268d6c7296106aba81f532b04dc08187352 (commit)
       via  e935475cb6bcd8146717896e88824ae93a0897c7 (commit)
       via  df0bb381e27a8b1594c492a34c48ff6e6bbd29d1 (commit)
       via  edd6266ab14004b02065ad9fb98b1da323a41981 (commit)
       via  2b40fda74b2af11a914d50f4e54c1472e1bd81fb (commit)
       via  d4693039f950eefb983a66e3270209b738e4ce8a (commit)
       via  f2d4ba38f5723a207c40a288036af2f38b70e837 (commit)
       via  db7fbcbeb749c0d4ea19284438d62b253648c58a (commit)
       via  a26c8de0ee938a48bc6f6232cdfac1a5eabaa778 (commit)
       via  5f4ba3e701d74f280d4bd8820d9c39a854e0d2cf (commit)
       via  a994424fa1e80d982644038f1ce6538e247aeed1 (commit)
       via  3d9be6f531db395a5ad940ef06e56d849f4de646 (commit)
       via  41fc454c915057d9c5536617370c5eb2a5f71323 (commit)
       via  b2b2a2159876fa8db57ce017b949cafc6f1a32df (commit)
       via  077a039f70d870899da31eb8cee597964515fa3c (commit)
       via  fdbc98707b0ab48fd8ca3ac37acefa120496baf6 (commit)
       via  c6ac893109fdc2c3fce2b7457adccdc10f235354 (commit)
       via  d1fcf2fded9a5a54d0714ae01b60ccb57e75b8b5 (commit)
       via  970f9d091dae835304d1a96805bdb5c081a40b48 (commit)
       via  f3869b1a41a809f208b964ee00cea74bd905b75f (commit)
       via  9be796f35b68aee81dc81e1c9b7410067ac0cd42 (commit)
       via  54d6600669256d2b3582d7088d11ab18f6f21f0d (commit)
       via  1faa385ff6b11df26efc46152fe15b31adbf8624 (commit)
       via  854f60884cc35806dab1c0f9e7711c45cefaf7fc (commit)
       via  125f83f66c10c89530d011f4f81324b1f43afcda (commit)
       via  163b2c58bdbf0cba9a085574ae88d4c757c6567d (commit)
       via  4d83e8d97e3b15dcd7b5c58f4199e9f5bd6fca3d (commit)
       via  bb32413ff7247f5ac3685ca9075b3432bca69a82 (commit)
       via  01c1ee4a70478178eb37e46692a02fb846a2f77b (commit)
       via  83adff695c522df8259e421162e194a95713eb45 (commit)
       via  8941884429c305ad42a41f759a98c8cca4d4aacc (commit)
       via  390b205f456be85e309570f1b6e9b75f27194de7 (commit)
       via  54ee425275c759438d90c40781e3810a551f0a5f (commit)
       via  269b4ded72af1fa05236f866b518f05cf2d408a6 (commit)
       via  41be57caf36943d71ccc6ea70be27a4939399118 (commit)
       via  65392b3edd1f6873204a4890efc286c8970abf4e (commit)
       via  f2f51cd5f511fc562f830818ec4467d8c3cced56 (commit)
       via  a6ce99e98738289658d830def1b6eb9546ab551e (commit)
       via  539300fb929ada830ec7c4002fd59f0d86c823b1 (commit)
       via  f57cf0e3e357255959d00626bce5c21396e23212 (commit)
       via  f5e9c9bde04ae52b92027b78c9ca20055f1afb78 (commit)
       via  9658dc39630b8ac4e849fb529a53902da5fc2b1f (commit)
       via  3e10cffc9872fda4519f76ba487fd108551a179f (commit)
       via  c550e7ba937e6a5e04c17275efc362a74f8fd1b1 (commit)
       via  900e33b9cf45dd70012af7fc509119edebb93339 (commit)
       via  9d3bf266fd601031d12584982ef43df22c95e933 (commit)
       via  c3949f432f4f7e4a776bd15e10dad56593abeb47 (commit)
       via  5641ec015a191e0584fd4cae57bb3262f7a51735 (commit)
       via  79dec6b7baa243a4ada018a082491990adb6aec1 (commit)
       via  a80195f1224aced64392b452d55980b6bbd2a8b9 (commit)
       via  a0a1771e895e6606a2a795c407e20aed73f69bd9 (commit)
       via  cd546e7bd2832c882e69809fdbeb7b376b62039e (commit)
       via  e3bba3fc751d2f8eea5a25b3f629b0d62257db86 (commit)
       via  d583596cc910249eff97e8f9b67c6524fb68af72 (commit)
       via  9c33702be70a7db648414775faa4850e7cf53034 (commit)
       via  36cc073ef40f2cb9cb834cdb5d543fbb284f2b32 (commit)
       via  219920a7c49069e30a7be2b166099bf795837a6d (commit)
       via  c444fad6da089b5b94ae7ea2aabce0521695a8d3 (commit)
       via  7f1c798dcc79c969d0e94bb787faa75cdf704b46 (commit)
       via  d6954c38df90637bc1b0cc2b20473e2754e5eff7 (commit)
       via  7d7571f0c14b4673ca95f6dc31d6f07d429e6697 (commit)
       via  5af5392a3d1525fb825747b203a6159ddcba0aa4 (commit)
       via  10d06d821919474afaf59fa24cb10450d2349131 (commit)
       via  7e56c51c7932cfdb178e9457011d09d53e98937b (commit)
       via  781152ec18f56726c750cc0812a740396e4ec820 (commit)
       via  999d6dff80fab12d22c2a8d91923db6bde7fb3e5 (commit)
       via  f60c61e60e59c2bfc5fdd1b448408c2af287899e (commit)
       via  f073a3e8c6735bd8fc24d35a957d8944087ea367 (commit)
       via  c432bbbaaa072438e6303b819bdcb4289c2b22e0 (commit)
       via  60d53d7f032ad7af09760afbaf01b2ec413f198a (commit)
       via  0c823d25a6eb29b331a58082e08f4b5fe06e1394 (commit)
       via  e395f487b3758b3de99fddd2ef15a799e9fc1203 (commit)
       via  1b7f24cd6b4e96c64bf82eba06be2c48942699fa (commit)
       via  3d507ff23b724ecb2b9a5a61cebd0fba275cfbc3 (commit)
       via  ba85f98c42877287f45644a6d75513239c9490a5 (commit)
       via  5ceb1f4d804b09cb8767ca704c2ba41e50a2bcdb (commit)
       via  2b7bcc8740dda3f314284169aaf1759a9f56025f (commit)
       via  c1dc7af52143966da8065b527e7a7000cf9f7705 (commit)
       via  65bd27298d31c6733b68d0cd6b7a4fc26e0598be (commit)
       via  d7560e2df501c7da1b0e4e64116dd52fe5715a96 (commit)
       via  696d5b3801a0e9d6514a92734bde09985f968a2f (commit)
       via  aa108c0c462e43ab77a1f178d8c8d2277ac73a57 (commit)
       via  a68aa5d3020948564ef99d704d27e458ba22ad9d (commit)
       via  762c164d754fc456aa4764d2ed19cc4a3ec625fb (commit)
       via  aa2f9bcf23a00fc7e9d7350757b8938c36106c42 (commit)
       via  3426ae5760319b6b31d71f3ba798154e6fcea34d (commit)
       via  8af58ffe5d06eaed8adfd1f0db2cb10d38c364e2 (commit)
       via  22e217527d1ba9ff3d933a14c9d81b066fac606d (commit)
       via  a93cbd6e69abc024bb65c8c398fa9898e551860c (commit)
       via  4838e44c8fcb2ce2316294a6f30b8d40343c36af (commit)
       via  54cc7474d4851d0e76df5252478a5ebd76b61508 (commit)
       via  b65b566cdcb577edb57616c5b49a2f245b56325c (commit)
       via  9b444f9533c38016e4f2de0198c889b13a62d2bc (commit)
       via  5c2c8c694de18370ac6161a21217627ddadeafc7 (commit)
       via  c2fc64f54ef82ccd2fedc9078c539ad273e83a0b (commit)
       via  fb54fa768d148ccd07f2b27ae26e87d95605986c (commit)
       via  f7952c5774671414d9e0e8d3524c2921daa6f28e (commit)
       via  17568d782d96434537fe9698c5ebcb09f35c20cb (commit)
       via  53e7cdbaa1d8c0c53038226de07d8160d7f66d82 (commit)
       via  7908abbf18dde6d3163758e447d72d6d2b267927 (commit)
       via  02c28df011542448e99041e32bec331c92b39945 (commit)
       via  6658b1bf6c2d8d9383826bdfd4068b77d38b3b94 (commit)
       via  21e1c91ef99c3785d1c31314dff574747b4b6e68 (commit)
       via  115ac53b852ed91e23d97e8357f24216609fa86f (commit)
       via  eaf9738bedf8de68d4bf8eafd0689cf1973648aa (commit)
       via  31ca47237fed3db1d912127a386cad6ffbb06750 (commit)
       via  41bcff7feefea958e7be1656e087cae4d54a2af9 (commit)
       via  d2802c33429eb73303dc610401f5d7d27e071ff2 (commit)
       via  dd835f8b70a2dfb4d8b84a4744606a9c922aeb25 (commit)
       via  bd7db367c4bc72bef9c7848b99aaaa1431cf1672 (commit)
       via  3add462fff33beb0e6f1480d3853eb56d664b438 (commit)
       via  489e9d8b7bb3337a7f4f902a03c176c22faeabc7 (commit)
       via  c3fabb7d69b3735bc6042a2992729944c8ced62c (commit)
       via  bbc228ee056cd006e971d5f1cb70ae0f69c1eb36 (commit)
       via  5fcee43a960f0735c53a7c24823b2e4bc1460b9f (commit)
       via  d83f1fe65da075aa08ac7d6b6ef3508587c94600 (commit)
       via  17374de40e7be36e4eb27d29bb8aac89586ce4a1 (commit)
       via  f936bca26dd7593a3b792e76eba37c5de2374961 (commit)
       via  d6ba6a11642cdbec4ce91fefe455920b5c073f60 (commit)
       via  48a3bd16c2189174f601600dc6cceedd68e908b6 (commit)
       via  c3bd716ffc20cada32e8a18a209638b578d47f5e (commit)
       via  21c32dca764039afd3517954f6dd0a23d0c9e16c (commit)
       via  73fbdc65a1f3da143e604d95443dc11ee86af710 (commit)
       via  3332534318eb10a77e441307d28336996325558c (commit)
       via  29d2c474f5a397017455da82e6dbc72629186359 (commit)
       via  152f3f4b3342ae16df5ae0640896b8cea008c893 (commit)
       via  be4da58857ee4a26b7e58893211ea4f54922e8fd (commit)
       via  5b81daba91b035ce98fb7be4970fc2be0183f6ea (commit)
       via  cb2ce89305264543a4014d98bacb26800d92d394 (commit)
       via  ab313b35e505ccab9c23acbe82087b6c22a2088d (commit)
       via  dc2c33e4562e0af441a9c8acff0400a78cb45d98 (commit)
       via  214a5cbea656f3ffc1e7e525627c56849347c709 (commit)
       via  8e2daf1532e587fee8d14aab1baad40e628065e2 (commit)
       via  8903bd8a37f905f5d77d2e04219e1a1eddaa6133 (commit)
       via  3f02ce1e3df15731872befd2e711854b2b259745 (commit)
       via  1825f487ae903438eb2a9b6f461337d8ec1b06c0 (commit)
       via  ad54d15bdb71b05010ece1ef32ab22ab46794166 (commit)
       via  2042b506c85274b4c652fbc9291be65b2550104d (commit)
       via  56122977c04496325ca9d83231e7751ab94d6b14 (commit)
       via  cda37efbffb63e2634ea0600fdad2de6a8f9f3ad (commit)
       via  6a0ee02c22b78b6d49fda99b6f2f9154d0cb0a47 (commit)
       via  63901aeccf923abaca02c8a58b1141d3859d7247 (commit)
       via  ceb13a13822b28d8e1cdc2e02975bb6569d3d8e6 (commit)
       via  238eb706f902da8afef1d5e3c9fdfeecf688bac3 (commit)
       via  81491aa0968e5bcab0388914f909ccb12e084e32 (commit)
       via  e6e4150110bcee66adfadb9f126eb3bb1fd7c054 (commit)
       via  44f0e208eb32a7ac469cef2b6760f72534abac09 (commit)
       via  7778b9128f46b1bb7af965ae3821f63b05c627ef (commit)
       via  f83d391c5aa3304faf8ef1384a6c64f082653260 (commit)
       via  13446e05a363db17f0140b1450fc7df509d2ca37 (commit)
       via  5cf82909a7047cee471ee40cfe623250c258d76e (commit)
       via  ee1d42d6c1a05725868a8ea4855eaa81cbbda635 (commit)
       via  b4eb24524b5838141bd3c3998afc81f65302eca1 (commit)
       via  8761a91b2614304963bfe211ff8c682c7eba3b51 (commit)
       via  0ed69edaab683b9290a05962faa50d970facfa84 (commit)
       via  82432e10143669d4936848d77e2a7b78c62c26e0 (commit)
       via  ec328aa512ee09ab326d59b417836bb950083230 (commit)
       via  33b906abfa7721128791883875d90394f8e2e7c2 (commit)
       via  e7e11af42dca6482302833c4106974176aa66052 (commit)
       via  6792b55e08ec49f40916d4f8d7168d0047b9e928 (commit)
       via  8e5cb9a54e156ba24a439aefa7b35e53b4cb0374 (commit)
       via  ab9f654ca3f1222f63533aabfffc223ae1fc69dc (commit)
       via  3e50a591d9f0c0b22bbf93d09eef7d2286f3716c (commit)
       via  63160fc99678fd85311ad5c89494164e6f8439d7 (commit)
       via  2c70385689542a4c4cbe160601e54f9f18a4c4c5 (commit)
       via  4970191fa557c4769697fb41db06f2dcb5f7de2e (commit)
       via  54fbadc0c35f3dad663e2e175ea8d60546ffd710 (commit)
       via  a38d71189b5895bae7bb476aa34d8a7ba75376d6 (commit)
       via  a280ab8e81498c6049dca79f64bd0cc02ead01ab (commit)
       via  e1a1babdad9d14b935cbddc7d63fb76a580a16c5 (commit)
       via  b8364fa775112f036a80e799b70311f69baac131 (commit)
       via  2a410bd1c373d377c221476ccda2156b595e6d6b (commit)
       via  de62696504f96816faf2165132d907924e904649 (commit)
       via  22f72c4868a1fd55d8d9b1cbabe6e01ed5a6f072 (commit)
       via  2e7c439dec066ac8a597d0b85193b8d3ec8e09eb (commit)
       via  04b865dc2ede2b8ca8c60f0487a179eb97895fee (commit)
       via  f93ab3a0b8039a1667a666f013cca50b03d67f9b (commit)
       via  164e3873cf41d01a9a67396575dceef7489cee64 (commit)
       via  824eacee59ea8c5625b9fad5b6eb0861b4d0f691 (commit)
       via  385b97d3ac9c5c57a610d2e5b358ed888008ae31 (commit)
       via  a33f989b4ed69c9f8f905360444e3d57a83a0cb6 (commit)
       via  bb22a41815facfaa3de621aad5d055eb8e477082 (commit)
       via  14b2a8e4244a29208ad430167860a0f01b20f215 (commit)
       via  a8d21e9ef0ae63c650e2ffa14edf5b1cd22be5cb (commit)
       via  f95675e12d3ab100ce11257a09663c68df7784ee (commit)
       via  5bff081c10ab4debfd3416739fda93b6c275496b (commit)
       via  47e3f47487396414ac936e2fd37b870fe08a55d0 (commit)
       via  5ec331ef744a495ad35469928564a43a09391562 (commit)
       via  c596f180a130c85faf8942d161be9ecf71c6791c (commit)
       via  ad692897c12247d1f8fe4e6a2f6e6d9f22703170 (commit)
       via  fd5866f6aad7336f7a2b59578b9deef81383ea3b (commit)
       via  fb1eb2f94a62813ab3daa34da59c035717ffb9da (commit)
       via  51ac9db596ea9f0affa9f7db25bb179cf70beac4 (commit)
       via  dc4ccb6f7f07e41616fd42625226229f0795d198 (commit)
       via  b13a7d03c29e28bc0b38ce166ad1907403709d36 (commit)
       via  be74b5b71481afe03aad074ad1951dcae152b97a (commit)
       via  70175d8d62178279d0fecce661b26a4f5b209fea (commit)
       via  cf02c44dfd2876867ebd6baa3ce19cf41ff978e1 (commit)
       via  7cee18263c234073bfe88cbc962b1fc68509df82 (commit)
       via  0b4fa56e07639ed28cbbcd890868e01a82a5e45c (commit)
       via  364620bf636a0a961892c9274616f8d5ad85eecc (commit)
       via  65365aa856e5a258329dc350b02bbb51f84b4c16 (commit)
       via  24865428034f44d9fffe6b2d9a318e1bd507c63a (commit)
       via  890f750a3b053532a4b839a2dd6243076de12031 (commit)
       via  2a81e61405262fd0299a5079b29ce417a8edba0c (commit)
       via  7d10623d3b153d6c15406b203fb1cf111c53f1dd (commit)
       via  e6a1c5cbcb9cee5a08d814669419936ee151b19d (commit)
       via  6f6ffbeb5a6bce5a1274478256937867f337a037 (commit)
       via  698dc1d7a269917df6237b80ccbb00733bea52cf (commit)
       via  f0a6222e30215d4b8ecb8124fe5ad4c3f321f8c4 (commit)
       via  8d6a48df549cce08ba1f05350f592be52352c7e8 (commit)
       via  f23f598e28ad39dac7ae87cdc400d2f6b27dc403 (commit)
       via  899277ae529c2b743d22093fcc1a9e46aff4422a (commit)
      from  625ae1b6b5d4a9f805d97640ef99c897279324f7 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email.

- Log -----------------------------------------------------------------
commit e1c9923c858f265680f03f0fe5c48c0cc0bb243c
Merge: 625ae1b 546053a
Author: Stan Cox <scox@redhat.com>
Date:   Thu Aug 22 15:25:25 2019 -0400

    Merge branch 'master' into scox/strace

commit 546053acfa1518063ed0ea94c3e35c05089c32fc
Author: Dennis Zhang <dennis.zhang@arm.com>
Date:   Tue Aug 20 17:13:29 2019 +0100

    Adds support for following CPUs to the ARM and Aarch64 assemblers: Cortex-A77, Cortex-A76AE, Cortex-A34, Cortex-A65, and Cortex-A65AE.
    
    Related specifications can be found at
    https://developer.arm.com/ip-products/processors.
    
    gas	* NEWS: Mention the Arm and AArch64 new processors.
    	* config/tc-aarch64.c: New entries for Cortex-A34, Cortex-A65,
    	Cortex-A77, cortex-A65AE, and Cortex-A76AE.
    	* doc/c-aarch64.texi: Document new CPUs.
    	* testsuite/gas/aarch64/cpu-cortex-a34.d: New test.
    	* testsuite/gas/aarch64/cpu-cortex-a65.d: New test.
    	* testsuite/gas/aarch64/cpu-cortex-a65ae.d: New test.
    	* testsuite/gas/aarch64/cpu-cortex-a76ae.d: New test.
    	* testsuite/gas/aarch64/cpu-cortex-a77.d: New test.
    	* testsuite/gas/aarch64/nop-asm.s: New test.
    
    bfd	* cpu-aarch64.c: New entries for Cortex-A34, Cortex-A65,
    	 Cortex-A77, cortex-A65AE, and Cortex-A76AE.

commit b4e87f2c1eee99dee805e3828514f8afa162f9ba
Author: Tamar Christina <tamar.christina@arm.com>
Date:   Tue Aug 20 16:34:26 2019 +0100

    Arm: Fix performance issue with thumb-2 tailcalls
    
    We currently use a padding NOP after a Thumb to Arm interworking veneer (BX pc).
    The NOP is never executed but may result in a performance penalty on some cores.
    
    For this reason this patch changes the NOPs after Thumb to Arm veneers into B .-2
    and adds a note to this in the source code for future reference.
    
    bfd/ChangeLog:
    
    	* elf32-arm.c (elf32_thumb2_plt_entry, elf32_arm_plt_thumb_stub,
    	elf32_arm_stub_long_branch_v4t_thumb_thumb,
    	elf32_arm_stub_long_branch_v4t_thumb_arm,
    	elf32_arm_stub_short_branch_v4t_thumb_arm,
    	elf32_arm_stub_long_branch_v4t_thumb_arm_pic,
    	elf32_arm_stub_long_branch_v4t_thumb_thumb_pic,
    	elf32_arm_stub_long_branch_v4t_thumb_tls_pic): Change nop to branch to
    	previous instruction.
    
    ld/ChangeLog:
    
    	* testsuite/ld-arm/cortex-a8-fix-b-plt.d: Update Testcase.
    	* testsuite/ld-arm/cortex-a8-fix-b-rel-arm.d: Likewise.
    	* testsuite/ld-arm/cortex-a8-fix-bcc-plt.d: Likewise.
    	* testsuite/ld-arm/farcall-cond-thumb-arm.d: Likewise.
    	* testsuite/ld-arm/farcall-mixed-app.d: Likewise.
    	* testsuite/ld-arm/farcall-mixed-app2.d: Likewise.
    	* testsuite/ld-arm/farcall-mixed-lib-v4t.d: Likewise.
    	* testsuite/ld-arm/farcall-thumb-arm-pic-veneer.d: Likewise.
    	* testsuite/ld-arm/farcall-thumb-arm-short.d: Likewise.
    	* testsuite/ld-arm/farcall-thumb-arm.d: Likewise.
    	* testsuite/ld-arm/farcall-thumb-thumb-pic-veneer.d: Likewise.
    	* testsuite/ld-arm/farcall-thumb-thumb.d: Likewise.
    	* testsuite/ld-arm/fix-arm1176-on.d: Likewise.
    	* testsuite/ld-arm/ifunc-10.dd: Likewise.
    	* testsuite/ld-arm/ifunc-2.dd: Likewise.
    	* testsuite/ld-arm/ifunc-4.dd: Likewise.
    	* testsuite/ld-arm/ifunc-6.dd: Likewise.
    	* testsuite/ld-arm/ifunc-8.dd: Likewise.
    	* testsuite/ld-arm/jump-reloc-veneers-long.d: Likewise.
    	* testsuite/ld-arm/mixed-app.d: Likewise.
    	* testsuite/ld-arm/thumb2-b-interwork.d: Likewise.
    	* testsuite/ld-arm/tls-longplt.d: Likewise.
    	* testsuite/ld-arm/tls-thumb1.d: Likewise.

commit d7a11d1383a2d0cdffc8c08e46b0cf5a66b3ce28
Author: Tom de Vries <tdevries@suse.de>
Date:   Tue Aug 20 17:18:09 2019 +0200

    [gdb/testsuite] Clean up stale exec in gdb_compile_pascal
    
    When running a pascal test with the stabs target board:
    ...
    $ test=gdb.pascal/case-insensitive-symbols.exp
    $ cd build/gdb/testsuite
    $ make check RUNTESTFLAGS="$test --target_board=stabs"
    ...
    we get:
    ...
    nr of untested testcases         1
    nr of unsupported tests          1
    ...
    due to:
    ...
    Error: Illegal parameter: -gstabs+^M
    Error: /usr/bin/ppcx64 returned an error exitcode^M
    ...
    
    OTOH, when running the same pascal test without the stabs target board:
    ...
    $ make check RUNTESTFLAGS="$test"
    ...
    we get:
    ...
    nr of expected passes            20
    ...
    
    But when subsequently again running with the stabs target board:
    ...
    $ make check RUNTESTFLAGS="$test --target_board=stabs"
    ...
    we now get:
    ...
    nr of expected passes            20
    ...
    
    The problem is that gdb_compile_pascal determines success based on existence
    of the exec after compilation:
    ...
        if ![file exists $destfile] {
            unsupported "Pascal compilation failed: $result"
            return "Pascal compilation failed."
        }
    ...
    without removing the exec before compilation, which allows a stale exec to
    make it seem as if compilation has succeeded.
    
    Fix this by removing the stale exec before compilation.
    
    gdb/testsuite/ChangeLog:
    
    2019-08-20  Tom de Vries  <tdevries@suse.de>
    
    	* lib/pascal.exp (gdb_compile_pascal): Remove $destfile before
    	compilation.

commit aedbe3bb9f03be12ad714adca1fefc391317bd94
Author: Conrad Meyer <cem@FreeBSD.org>
Date:   Mon Aug 19 00:02:19 2019 -0700

    Improve remote attach round-trips without btrace
    
    For remotes which do not support btrace at all, we can save several
    round trips for each thread.  This is especially significant when your
    remote is a kernel with 100s or 1000s of threads and latency is
    intercontinental.
    
    Previously, with target, remote, and infrun debugging enabled, one
    might see:
    
        Sending packet: $Hg18aee#43...Ack
        Packet received: OK
        Sending packet: $Hg186f7#eb...Ack
        Packet received: OK
        remote:target_xfer_partial (24, , 0x805454000, 0x0, 0x0, 4096) = -1, 0
    
    repeated for all non-exited threads.
    
    Afterwards, if the remote does not specify 'qXfer:btrace-conf:read+'
    in qSupported stub features, these unnecessary thread switches are
    avoided.
    
    gdb/ChangeLog:
    
    	* remote.c (remote_target::remote_btrace_maybe_reopen): Avoid
    	unnecessary thread walk if remote doesn't support the packet.

commit ac533243beac35f158341d53edab53031218bcde
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Tue Aug 20 00:00:27 2019 +0000

    Automatic date update in version.in

commit 52031738190ca1067bc6e40f662f4effcd428628
Author: Faraz Shahbazker <fshahbazker@wavecomp.com>
Date:   Tue Aug 13 05:32:20 2019 +0000

    MIPS/gas: Fix misaligned address errors to disregard ISA mode bit
    
    gas/
    	* config/tc-mips.c (fix_bad_misaligned_address): New function.
    	(fix_validate_branch): Call fix_bad_misaligned address_to
    	calculate the target address.
    	(md_apply_fix): Likewise.
    	(md_convert_frag): Update misaligned address calculation to
    	disregard ISA mode bit.

commit 770c015139f038bd7b7abb5c6d84eb39d36d3080
Author: Faraz Shahbazker <fshahbazker@wavecomp.com>
Date:   Mon Aug 5 23:38:46 2019 +0000

    MIPS/gas: Retain ISA mode bit for labels with .insn annotation
    
    gas/
    	* config/tc-mips.c (mips_move_labels): Retain ISA mode bit
    	when moving labels in text segments.
    	(mips_align): Indicate text mode when aligning labels in
    	text segments.
    	* gas/testsuite/gas/mips/insn-isa-mode.d: New test.
    	* gas/testsuite/gas/mips/insn-isa-mode.s: New test source.
    	* gas/testsuite/gas/mips/mips.exp: Run the new test.

commit 7ce8f214f1af1dd593ad42665da416ac46033f97
Author: Tom Tromey <tromey@adacore.com>
Date:   Mon Aug 19 12:46:03 2019 -0600

    Fix indentation in value_has_field
    
    value_has_field had a mis-indented line.  This fixes it.
    
    gdb/ChangeLog
    2019-08-19  Tom Tromey  <tromey@adacore.com>
    
    	* python/py-value.c (value_has_field): Fix indentation.

commit f21c2bd7b7ef2a9c47e5713cabaa784bcf5c2bee
Author: Tom Tromey <tromey@adacore.com>
Date:   Tue Aug 13 11:39:58 2019 -0600

    Fix Fortran regression with variables in nested functions
    
    Sergio pointed out that commit commit aa3b6533 ("Allow nested function
    displays") regressed a few gdb.fortran tests.  I was able to reproduce
    these failures with gcc head.
    
    The bug is that some spots calling contained_in will in fact do the
    wrong thing if nested functions are considered as contained.  In the
    particular case of the Fortran regression, it was the call in
    block_innermost_frame, being called from get_hosting_frame -- in this
    case, the caller is specifically trying to avoid the nested case.
    
    This patch fixes the problem by adding an "allow_nested" parameter to
    contained_in, essentially reverting the change for most callers.
    
    gdb/ChangeLog
    2019-08-19  Tom Tromey  <tromey@adacore.com>
    
    	* printcmd.c (do_one_display, info_display_command): Update.
    	* block.h (contained_in): Return bool.  Add allow_nested
    	parameter.
    	* block.c (contained_in): Return bool.  Add allow_nested
    	parameter.

commit d806ea2d0ef362fcddd2c1659f537b68aa114203
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Jun 24 16:02:47 2019 -0600

    Add Rust support to source highlighting
    
    Currently, no release of GNU Source Highlight supports Rust.  However,
    I've checked in a patch to do so there, and I plan to make a new
    release sometime this summer.
    
    This patch prepares gdb for that by adding support for Rust to the
    source highlighting code.
    
    Because Source Highlight will throw an exception if the language is
    unrecognized, this also changes gdb to ignore exceptions here.  This
    will cause gdb to fall back to un-highlighted source text.
    
    This updates gdb's configure script to reject the combination of
    Source Highlight and -static-libstdc++.  This is done because it's not
    possible to use -static-libstdc++ and then catch exceptions from a
    shared library.
    
    Tested with the current and development versions of Source Highlight.
    
    gdb/ChangeLog
    2019-08-19  Tom Tromey  <tom@tromey.com>
    
    	* configure: Rebuild.
    	* configure.ac: Disallow the combination of -static-libstdc++ and
    	source highlight.
    	* source-cache.c (get_language_name): Handle rust.
    	(source_cache::get_source_lines): Ignore highlighting exceptions.

commit c1a5d03a89a455d79f025c66dce83342de4d26ce
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jul 26 15:42:25 2019 -0600

    Add --with-static-standard-libraries to the top level
    
    gdb should normally not be linked with -static-libstdc++.  Currently
    this has not caused problems, but it's incompatible with catching an
    exception thrown from a shared library -- and a subsequent patch
    changes gdb to do just this.
    
    This patch adds a new --with-static-standard-libraries flag to the
    top-level configure.  It defaults to "auto", which means enabled if
    gcc is being built, and disabled otherwise.
    
    ChangeLog
    2019-08-19  Tom Tromey  <tom@tromey.com>
    
    	* configure: Rebuild.
    	* configure.ac: Add --with-static-standard-libraries.

commit 3eb185c97d8170b3f3a2b5edab4fbbd56f53f6f7
Author: Tom Tromey <tromey@adacore.com>
Date:   Thu Aug 15 07:33:20 2019 -0600

    Fix N^2 behavior in _bfd_dwarf2_find_symbol_bias
    
    A customer reported a case where addr2line was very slow.  We tracked
    this down to some N^2 behavior in _bfd_dwarf2_find_symbol_bias in the
    unusual case where no function can be found.
    
    This patch fixes the bug, and reduces the runtime for a particular
    request from 127 seconds to 1 second.
    
    bfd/ChangeLog
    2019-08-19  Tom Tromey  <tromey@adacore.com>
    
    	* dwarf2.c (_bfd_dwarf2_find_symbol_bias): Create hash table
    	holding symbols.

commit d292364e95fc9c8230b678d9026f285850074c02
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Aug 19 20:24:35 2019 +0930

    PR24898, An out-of-bounds read occured in display_data
    
    Given 32-bit pointers and a 64-bit bfd_size_type, it is relatively
    easy to construct a value of augmentation_data_len (eg. 0x100000000)
    that won't fail pointer checks but will print without bounds.
    
    	PR 24898
    	* dwarf.c (display_debug_frames): Use the read_cie check and error
    	for augmentation data length.

commit 903b777ddeb4c11a7de12cab59124e777614edec
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Aug 19 17:34:03 2019 +0930

    PowerPC64 ha/lo insn checks
    
    These are done in ppc64_elf_edit_toc, which now also garbage collects
    unused GOT entries.  The checks for legitimate instructions weren't
    being done for the GOT relocs, unless the file also happened to have a
    toc section.
    
    	* elf64-ppc.c (struct ppc64_elf_obj_tdata): Rename has_gotrel
    	to has_optrel.
    	(struct _ppc64_elf_section_data): Likewise.
    	(ppc64_elf_check_relocs): Set has_optrel for more relocs.
    	(ppc64_elf_edit_toc): Do ha/lo insn checks in GOT loop rather
    	than TOC loop.  Check PLT16 insns too.

commit 72c03e30ae783a5f38a8c124588a4536ae06e6ef
Author: Barnaby Wilks <Barnaby.Wilks@arm.com>
Date:   Thu Aug 15 16:21:59 2019 +0000

    Float16: Fix test failures for non ELF targets
    
    The tests were failing due to md_atof trying to do word-wise endian
    switching on the float16 (for little-endian targets sometimes
    multi word values have their word order changed).
    However since a float16 is only 1 word wide, it would end up writing
    incorrect data, as you cannot switch the word order of just one word.
    
    	* config/tc-arm.c (md_atof): Add precision check.  Formatting.

commit 2c115c4f3cb57cfed7a1be5bbccf0f1bc6f7fdbc
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Mon Aug 19 00:00:34 2019 +0000

    Automatic date update in version.in

commit b271c8567acd7b329fe6b37a3091613c634470c7
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Sun Aug 18 00:01:39 2019 +0000

    Automatic date update in version.in

commit d367307b93e5589245d1f2c8bbcfe709404540a8
Author: Alan Modra <amodra@gmail.com>
Date:   Sat Aug 17 18:01:05 2019 +0930

    PR24911, Heap overflow issue in qsort_r, dwarf.c
    
    The actual args to this function are "pointers to pointers to
    debug_info".
    
    	PR 24911
    	* dwarf.c (comp_addr_base): Dereference args.

commit 98ac8787e9bea0fef101b9b63c5dd06e653a46b3
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Sat Aug 17 00:00:22 2019 +0000

    Automatic date update in version.in

commit 34dafe9f39e61de970c36ed636daa58e1caa386c
Author: Tom de Vries <tdevries@suse.de>
Date:   Fri Aug 16 23:48:28 2019 +0200

    [gdb/testsuite] Fix compare-sections.exp with -fPIE/-pie
    
    When running gdb.base/compare-sections.exp with target board -fPIE/-pie, we
    get:
    ...
    FAIL: gdb.base/compare-sections.exp: after run to main: compare-sections -r
    ...
    
    The test expects the read-only sections to have the same contents as in the
    file:
    ...
        # Assume startup code doesn't change read-only sections.
        compare_sections "-r"
    ...
    but that's not the case for PIE executables.
    
    Fix this by allowing mismatched read-only sections for PIE executables.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-08-16  Tom de Vries  <tdevries@suse.de>
    
    	* gdb.base/compare-sections.exp ("after run to main"): Allow
    	mismatched read-only sections for PIE executables.

commit 81e8046dc0daaf56fb10b11931fc77600a4b5920
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Fri Aug 16 14:25:15 2019 -0700

    x86-64: Move PIC check for PC-relative relocations back
    
    commit 83924b3846361f2f76f9a6e7b5afa01c0eebbd4f
    Author: H.J. Lu <hjl.tools@gmail.com>
    Date:   Tue Feb 5 18:45:23 2019 -0800
    
        x86-64: Restore PIC check for PCREL reloc against protected symbol
    
    moved PIC check for PC-relative relocations to elf_x86_64_check_relocs.
    Since linker defined symbols may not be processed at the time, we need
    to move the check back to elf_x86_64_relocate_section.
    
    bfd/
    
    	PR ld/24905
    	* elf64-x86-64.c (elf_x86_64_check_relocs): Move PIC check for
    	PC-relative relocations back to ...
    	(elf_x86_64_relocate_section): Here.
    
    ld/
    
    	PR ld/24905
    	* testsuite/ld-x86-64/pr24905-x32.d: New file.
    	* testsuite/ld-x86-64/pr24905.d: Likewise.
    	* testsuite/ld-x86-64/pr24905.s: Likewise.
    	* testsuite/ld-x86-64/pr24905.t: Likewise.
    	* testsuite/ld-x86-64/x86-64.exp: Run pr24905 and pr24905-x32.

commit 398fdd6086a290748afcce0efabaebb4e363278c
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jul 12 18:18:10 2019 -0600

    Remove the TUI execution info window
    
    The TUI execution info window is unusual in that it is always linked
    to a source or disassembly window.  Even updates of its content are
    handled by the source window, so it really has no life of its own.
    
    This patch removes this window entirely and puts its functionality
    directly into the source window.  This simplifies the code somewhat.
    
    This is a user-visible change, because now the box around the source
    (or disassembly) window encloses the execution info as well.  I
    consider this an improvement as well, though.
    
    Note that this patch caused ncurses to start emitting the "CSI Z"
    sequence, so I've added this to the test suite terminal
    implementation.
    
    gdb/ChangeLog
    2019-08-16  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui.h (enum tui_win_type) <EXEC_INFO_WIN>: Remove.
    	* tui/tui-winsource.h (struct tui_exec_info_window): Remove.
    	(struct tui_source_window_base) <make_visible, refresh_window,
    	resize>: Remove methods.
    	<execution_info>: Remove field.
    	* tui/tui-winsource.c (tui_source_window_base::do_erase_source_content)
    	(tui_show_source_line, tui_source_window_base)
    	(~tui_source_window_base): Update.
    	(tui_source_window_base::resize)
    	(tui_source_window_base::make_visible)
    	(tui_source_window_base::refresh_window): Remove.
    	(tui_source_window_base::update_exec_info): Update.
    	* tui/tui-source.c (tui_source_window::set_contents): Update.
    	* tui/tui-disasm.c (tui_disasm_window::set_contents): Update.
    
    gdb/testsuite/ChangeLog
    2019-08-16  Tom Tromey  <tom@tromey.com>
    
    	* lib/tuiterm.exp (_csi_Z): New proc.
    	* gdb.tui/basic.exp: Update window positions.
    	* gdb.tui/empty.exp: Update window positions.

commit e699d33164a59dcfe7ad4a5154e5c6c811c1f958
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Jul 11 23:24:03 2019 -0600

    Remove useless assignment from tui_remove_hooks
    
    tui_remove_hooks clears deprecated_query_hook, but nothing in the TUI
    ever sets it; so remove the assignment.
    
    gdb/ChangeLog
    2019-08-16  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-hooks.c (tui_remove_hooks): Don't set
    	deprecated_query_hook.

commit bb01dbfc041dccab2f2a2818068158f61b4c0fe2
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Jul 11 20:00:07 2019 -0600

    Change tui_show_symtab_source to be a method
    
    This changes tui_show_symtab_source to be a method on
    tui_source_window.
    
    gdb/ChangeLog
    2019-08-16  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.c (tui_update_source_windows_with_addr)
    	(tui_update_source_windows_with_line): Update.
    	* tui/tui-source.h (struct tui_source_window)
    	<show_symtab_source>: Declare.
    	(tui_show_symtab_source): Don't declare.
    	* tui/tui-source.c (tui_show_symtab_source): Rename from
    	tui_show_symtab_source.

commit 81c82c4b9005acf7865d8a19ee651968e059a848
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Jul 11 18:42:20 2019 -0600

    Introduce tui_source_window_base::set_contents method
    
    This introduces the tui_source_window_base::set_contents method and
    implements it in the subclasses.  This removes a check of the window
    type.
    
    gdb/ChangeLog
    2019-08-16  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (struct tui_source_window_base)
    	<set_contents>: Declare.
    	* tui/tui-winsource.c
    	(tui_source_window_base::update_source_window_as_is): Update.
    	* tui/tui-source.h (struct tui_source_window) <set_contents>:
    	Declare.
    	(tui_set_source_content): Don't declare.
    	* tui/tui-source.c (tui_source_window::set_contents): Rename from
    	tui_set_source_content.
    	* tui/tui-disasm.h (struct tui_disasm_window) <set_contents>:
    	Declare.
    	(tui_set_disassem_content): Don't declare.
    	* tui/tui-disasm.c (tui_disasm_window::set_contents): Rename from
    	tui_set_disassem_content.

commit 2ddaf614439b50e6019c5218f2fbfc0d14194e96
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Jul 11 18:27:02 2019 -0600

    Change tui_update_breakpoint_info to be a method
    
    This changes tui_update_breakpoint_info to be a method on
    tui_source_window_base.
    
    gdb/ChangeLog
    2019-08-16  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (struct tui_source_window_base)
    	<update_breakpoint_info>: Declare.
    	(tui_update_breakpoint_info): Don't declare.
    	* tui/tui-winsource.c (tui_source_window_base::update_source_window_as_is)
    	(tui_update_all_breakpoint_info): Update.
    	(tui_source_window_base::update_breakpoint_info): Rename from
    	tui_update_breakpoint_info.
    	(tui_source_window_base::update_exec_info): Update.

commit 017f982820d408fb49657b9b9b8f45a9616c5f21
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Jul 11 18:24:07 2019 -0600

    Change tui_update_source_window to be a method
    
    This changes tui_update_source_window to be a method on
    tui_source_window_base.
    
    gdb/ChangeLog
    2019-08-16  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (struct tui_source_window_base)
    	<update_source_window>: Declare.
    	(tui_update_source_window): Don't declare.
    	* tui/tui-winsource.c
    	(tui_source_window_base::update_source_window): Rename from
    	tui_update_source_window.
    	(tui_source_window_base::rerender): Update.
    	* tui/tui-source.c (tui_source_window::maybe_update): Update.
    	* tui/tui-disasm.c (tui_show_disassem)
    	(tui_show_disassem_and_update_source)
    	(tui_disasm_window::maybe_update): Update.

commit ed8358e9491d5ae0a8ee021c162a85867af1146a
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Jul 11 18:22:06 2019 -0600

    Change tui_update_source_window_as_is to be a method
    
    This changes tui_update_source_window_as_is to be a method on
    tui_source_window_base.
    
    gdb/ChangeLog
    2019-08-16  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (struct tui_source_window_base)
    	<update_source_window_as_is>: Declare.
    	(tui_update_source_window_as_is): Don't declare.
    	* tui/tui-winsource.c (tui_update_source_window): Update
    	(tui_source_window_base::update_source_window_as_is): Rename from
    	tui_update_source_window_as_is.
    	(tui_source_window_base::refill): Update.
    	* tui/tui-source.c (tui_show_symtab_source): Update.
    	* tui/tui-disasm.c (tui_disasm_window::do_scroll_vertical):
    	Update.

commit 20149b6b207ac8c2bcde6f272607109f566168a9
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Jul 11 18:19:28 2019 -0600

    Remove "noerror" parameter from some TUI functions
    
    A few TUI functions take a "noerror" parameter.  This is only checked
    in one spot: in tui_set_source_content, if noerror is false, and if an
    error occurs, then the function will call print_sys_errmsg.
    
    This seems misguided to me, so this patch removes that code and this
    parameter.
    
    gdb/ChangeLog
    2019-08-16  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (tui_update_source_window)
    	(tui_update_source_window_as_is): Remove "noerror" parameter.
    	* tui/tui-winsource.c (tui_update_source_window)
    	(tui_update_source_window_as_is): Remove "noerror" parameter.
    	(tui_update_source_windows_with_addr)
    	(tui_update_source_windows_with_line)
    	(tui_source_window_base::rerender)
    	(tui_source_window_base::refill): Update.
    	* tui/tui-source.h (tui_set_source_content)
    	(tui_show_symtab_source): Remove "noerror" parameter.
    	* tui/tui-source.c (tui_set_source_content): Remove "noerror"
    	parameter.
    	(tui_show_symtab_source): Likewise.
    	(tui_source_window::maybe_update): Update.
    	* tui/tui-disasm.c (tui_show_disassem)
    	(tui_show_disassem_and_update_source)
    	(tui_disasm_window::do_scroll_vertical)
    	(tui_disasm_window::maybe_update): Update.

commit 2d83e710a14c62cb6a9501c84fc46062f817428d
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Jul 11 18:03:45 2019 -0600

    Remove separate visibility flag
    
    TUI windows keep track of their visibility in a boolean field.
    However, this is not needed, because a window is visible if and only
    if it has an underlying curses handle.  So, we can remove this
    separate field.
    
    gdb/ChangeLog
    2019-08-16  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui.c (tui_is_window_visible): Update.
    	* tui/tui-wingeneral.c (tui_make_window)
    	(tui_gen_win_info::make_visible, tui_refresh_all): Update.
    	* tui/tui-win.c (window_name_completer, tui_refresh_all_win)
    	(tui_set_focus_command, tui_all_windows_info, update_tab_width)
    	(tui_set_win_height_command, parse_scrolling_args): Update.
    	* tui/tui-source.c (tui_source_window::style_changed): Update.
    	* tui/tui-regs.c (tui_show_registers)
    	(tui_data_window::first_data_item_displayed)
    	(tui_data_window::delete_data_content_windows)
    	(tui_check_register_values, tui_reg_command): Update.
    	* tui/tui-disasm.c (tui_show_disassem): Update.
    	* tui/tui-data.h (struct tui_gen_win_info) <is_visible>: New
    	method.
    	<is_visible>: Remove field.
    	* tui/tui-data.c (tui_next_win, tui_prev_win)
    	(tui_delete_invisible_windows): Update.

commit d4ab829a2477d454bd38544f1b88a043ec58581c
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Jul 9 21:22:38 2019 -0600

    Remove m_has_locator
    
    The previous patch removed the only use of m_has_locator, so this
    member can now be removed.
    
    gdb/ChangeLog
    2019-08-16  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (struct tui_source_window_base)
    	<m_has_locator>: Remove.
    	* tui/tui-layout.c (show_source_disasm_command, show_data)
    	(show_source_or_disasm_and_command): Update.

commit b4c555cfc48689d45481effff23c9017a4f3557f
Author: Martin Liska <mliska@suse.cz>
Date:   Fri Aug 16 13:14:36 2019 +0200

    Fix detection of missing plugin for LTO objects.
    
    2019-08-16  Martin Liska  <mliska@suse.cz>
    
    	PR ld/24912
    	* elflink.c: Report error only for not relocatable.
    	* linker.c (_bfd_generic_link_add_one_symbol): Do not handle
    	here lto_slim_object as it's handled in caller.
    2019-08-16  Martin Liska  <mliska@suse.cz>
    
    	PR ld/24912
    	* object.cc (big_endian>::do_layout): Do not report error,
    	but only set a flag.
    	(big_endian>::do_add_symbols): Report error only for when
    	relocatable.

commit aa7ca1bb443e8c2baad17392f395d1556fecfafa
Author: Alan Hayward <alan.hayward@arm.com>
Date:   Fri Aug 16 10:19:18 2019 +0100

    Move [PAC] into a new MI field addr_flags
    
    Add a new print_pc which prints both the PC and a new field addr_flags.
    Call this wherever the PC is printed in stack.c.
    
    Add a new gdbarch method get_pc_address_flags to obtain the addr_flag
    contents. By default returns an empty string, on AArch64 this returns
    PAC if the address has been masked in the frame.
    
    Document this in the manual and NEWS file.
    
    gdb/ChangeLog:
    
    	* NEWS (Other MI changes): New subsection.
    	* aarch64-tdep.c (aarch64_get_pc_address_flags): New function.
    	(aarch64_gdbarch_init): Add aarch64_get_pc_address_flags.
    	* arch-utils.c (default_get_pc_address_flags): New function.
    	* arch-utils.h (default_get_pc_address_flags): New declaration.
    	* gdbarch.sh: Add get_pc_address_flags.
    	* gdbarch.c: Regenerate.
    	* gdbarch.h: Likewise.
    	* stack.c (print_pc): New function.
    	(print_frame_info) (print_frame): Call print_pc.
    
    gdb/doc/ChangeLog:
    
    	* gdb.texinfo (AArch64 Pointer Authentication)
    	(GDB/MI Breakpoint Information) (Frame Information): Document
    	addr_field.

commit fdfc8cf7f04e2f4d24ec9fff331ebd71a2e768a3
Author: Christophe Lyon <christophe.lyon@linaro.org>
Date:   Fri Aug 16 08:26:45 2019 +0000

    [ld] [arm] Add support for noinit section
    
    2019-08-16  Christophe Lyon  <christophe.lyon@linaro.org>
    
    	* emulparams/armelf.sh (OTHER_SECTIONS): Add support for noinit
    	section.
    
    Change-Id: Ib293f28cc5f21e9e9a13abf4d4e37f0a0eec41c0

commit 0b8b76098ff3d3dcd0c621f2e45cc0b4e7211d6a
Author: Alan Modra <amodra@gmail.com>
Date:   Fri Aug 16 15:17:23 2019 +0930

    PR24909, Uninitialized use on stack in readelf
    
    	PR 24909
    	PR 23499
    	* readelf.c (get_symbol_version_string): Set sym_info earlier.

commit 7df6aecc97b96843da080d54414052b1c954ddca
Author: Alan Modra <amodra@gmail.com>
Date:   Fri Aug 16 13:20:28 2019 +0930

    PowerPC gcc bootstrap fail with bss-plt
    
    git commit 3e04d7655b introduced a bug by sizing output sections
    earlier in ppc_before_allocation.  That meant PLT (and GOT) sizes were
    not included when calculating total executable section sizes.
    
    	* emultempl/ppc32elf.em (ppc_before_allocation): Force running
    	prelim_size_sections before deciding whether branch trampolines
    	might be needed.

commit 63f6e94fb3cc5b6a2cfb8c28686f150e7226ab7e
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Aug 14 16:31:05 2019 +0930

    Aligned vs. unaligned ppc32 relocs
    
    Given R_PPC_ADDR32 or R_PPC_UADDR32 relocs, this patch generates
    R_PPC_ADDR32 or R_PPC_UADDR32 dynamic relocs from either type
    depending on whether r_offset is 4-byte aligned, and similarly for
    R_PPC_ADDR16/R_PPC_UADDR16.
    
    	* elf32-ppc.c (ppc_elf_relocate_section): Optimize unaligned relocs.

commit d8f9e51c361dfb53de3eca8d84f8938380af60ff
Author: Sandra Loosemore <sandra@codesourcery.com>
Date:   Thu Aug 15 18:15:16 2019 -0700

    Fix paste-o in examine-backward.exp.
    
    This patch fixes a paste-o that was introduced in commit
    c8ad9b9a31aa3e6039567fc1f152dd454c946d5f.  Previously the regexp for
    the "examine 3 bytes backward from ${address_zero}" test correctly
    matched 3 "${byte}" patterns, but in that commit the 6-byte regexp
    from the previous test was mistakenly repeated here instead.
    
    2019-08-15  Sandra Loosemore  <sandra@codesourcery.com>
    
    	gdb/testsuite/
    	* gdb.base/examine-backward.exp: Correct regexp for
    	"examine 3 bytes backward from ${address_zero}".

commit 33394263571f08a935c0a030dbde22a04eee7d70
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Fri Aug 16 00:00:20 2019 +0000

    Automatic date update in version.in

commit 6eac171f0624303d944ff1a1ae4d0e3b0a63c800
Author: Tom de Vries <tdevries@suse.de>
Date:   Fri Aug 16 00:25:14 2019 +0200

    [gdb] Make maint info sections print relocated addresses
    
    When running gdb.base/compare-sections.exp with -fPIE/-pie, we get:
    ...
    print /u *(unsigned char *) 0x00000238^M
    Cannot access memory at address 0x238^M
    (gdb) FAIL: gdb.base/compare-sections.exp: read-only: get value of read-only section
    ...
    
    The problem is that that "maint info sections" prints an unrelocated address:
    ...
     [0]     0x00000238->0x00000254 at 0x00000238: .interp ALLOC LOAD READONLY \
                                                           DATA HAS_CONTENTS
    ...
    while the test expects a relocated address.
    
    Given that the documentation states that the command displays "the section
    information displayed by info files", and that info files shows relocated
    addresses:
    ...
            0x0000555555554238 - 0x0000555555554254 is .interp
    ...
    fix this by showing relocated addresses for maint info sections as
    well.
    
    Build and tested on x86_64-linux.
    
    gdb/ChangeLog:
    
    2019-08-16  Tom de Vries  <tdevries@suse.de>
    
    	* maint.c (maintenance_info_sections): Also handle !ALLOBJ case using
    	print_objfile_section_info.

commit 3df505f60eacd2c931092c7007f084d27583f9e5
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Jul 9 17:29:13 2019 -0600

    TUI resize unification
    
    The TUI currently has two different ways to resize a window: the
    resize method, and the methods make_invisible_and_set_new_height and
    make_visible_with_new_height.
    
    There's no deep reason to have two different ways to resize a window,
    so this patch unifies them, leaving just the "resize" method.
    
    This also changes the locator to be handled more like an ordinary
    window and less like an adjunct of the associated source window.
    
    gdb/ChangeLog
    2019-08-15  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-io.c (tui_puts_internal): Check TUI_CMD_WIN before
    	calling update_cmdwin_start_line.
    	* tui/tui-winsource.h (struct tui_source_window_base)
    	<do_make_visible_with_new_height, set_new_height>: Don't declare.
    	<rerender>: Declare.
    	* tui/tui-winsource.c (tui_source_window_base::update_tab_width):
    	Call rerender.
    	(tui_source_window_base::set_new_height): Remove.
    	(tui_source_window_base::rerender): Rename from
    	do_make_visible_with_new_height.
    	* tui/tui-win.c (tui_resize_all, tui_adjust_win_heights): Use
    	resize method.
    	(tui_win_info::make_invisible_and_set_new_height)
    	(tui_win_info::make_visible_with_new_height): Remove.
    	* tui/tui-stack.h (struct tui_locator_window) <rerender>:
    	Declare.
    	* tui/tui-stack.c (tui_locator_window::rerender): New method.
    	* tui/tui-regs.h (struct tui_data_window) <set_new_height,
    	do_make_visible_with_new_height>: Don't declare.
    	<rerender>: Declare.
    	* tui/tui-regs.c (tui_data_window::rerender): Rename from
    	set_new_height.
    	(tui_data_window::do_make_visible_with_new_height): Remove.
    	* tui/tui-layout.c (show_source_disasm_command, show_data): Don't
    	call tui_show_locator_content.
    	(tui_gen_win_info::resize): Call rerender.
    	(show_source_or_disasm_and_command): Don't call
    	tui_show_locator_content.
    	* tui/tui-data.h (struct tui_gen_win_info) <rerender>: New
    	method.
    	(struct tui_win_info) <rerender>: Declare.
    	<set_new_height, make_invisible_and_set_new_height,
    	make_visible_with_new_height>: Don't declare.
    	* tui/tui-data.c (tui_win_list::rerender): New method.
    	* tui/tui-command.h (struct tui_cmd_window)
    	<do_make_visible_with_new_height>: Don't declare.
    	* tui/tui-command.c
    	(tui_cmd_window::do_make_visible_with_new_height): Remove.
    
    gdb/testsuite/ChangeLog
    2019-08-15  Tom Tromey  <tom@tromey.com>
    
    	* gdb.tui/empty.exp: Enable resizing tests.

commit 272560b577894c388a3d0d3fda8294683714f582
Author: Tom Tromey <tromey@adacore.com>
Date:   Thu Aug 1 11:41:32 2019 -0600

    Fix bug with character enumeration literal
    
    gnat encodes character enumeration literals using a few different
    schemes.  The gnat compiler documented the "QU" and "QW" encodings,
    but failed to document that a simpler encoding was used for certain
    characters.
    
    This patch updates gdb to handle this simple Q encoding.  Note that
    wide character literals are still not handled.
    
    gdb/ChangeLog
    2019-08-15  Tom Tromey  <tromey@adacore.com>
    
    	* ada-exp.y (convert_char_literal): Handle "Q%c" encoding.
    	* ada-lang.c (ada_enum_name): Likewise.
    
    gdb/testsuite/ChangeLog
    2019-08-15  Tom Tromey  <tromey@adacore.com>
    
    	* gdb.ada/char_enum.exp: Add regression tests.
    	* gdb.ada/char_enum/foo.adb (Char_Enum_Type): Use '_'
    	and '0'.
    	(Char, Gchar): Update.
    	* gdb.ada/char_enum/pck.ads (Global_Enum_Type): Use '+'.

commit 08235187bcdd66599884f33b046cf8abcf949727
Author: Christian Biesinger <cbiesinger@google.com>
Date:   Thu Aug 15 11:29:04 2019 -0500

    Rename internal Python functions to start with an underscore
    
    I could not tell if GdbSetPythonDirectory is internal or not because
    I could not find any references to it, so I left it as-is.
    
    Tested by running the testsuite on gdb.python/*.exp; everything still
    passes.
    
    2019-08-15  Christian Biesinger  <cbiesinger@google.com>
    
    	* python/lib/gdb/__init__.py (GdbOutputFile): Rename to have a
    	leading underscore.
    	(GdbOutputErrorFile): Likewise.
    	(global scope): Adjust constructor calls to GdbOutput{,Error}File
    	accordingly.
    	(execute_unwinders): Rename to have a leading underscore.
    	(auto_load_packages): Likewise.
    	(global scope): Adjust call to auto_load_packages accordingly.
    	(GdbSetPythonDirectory): Likewise.
    	* python/py-unwind.c (pyuw_sniffer): Call _execute_unwinders
    	instead of execute_unwinders.
    
    gdb/testsuite/ChangeLog:
    
    2019-08-15  Christian Biesinger  <cbiesinger@google.com>
    
    	* gdb.python/python.exp: Expect a leading underscore on
    	GdbOutput{,Error}File.

commit 080a488354d63fec9791a26fadd15e0c5246983d
Author: Jim Wilson <jimw@sifive.com>
Date:   Thu Aug 15 12:01:13 2019 -0700

    RISC-V: Fix lui relaxation issue with code at address 0.
    
    This fixes a problem originally reported at
        https://github.com/riscv/riscv-binutils-gdb/issues/173
    
    If you have code linked at address zero, you can have a lui instruction
    loading a value 0x800 which gets relaxed to a c.lui which is valid (c.lui 0x1
    followed by addi -0x800).  Relaxation can reduce the value below 0x800 at which
    point the c.lui 0x0 is no longer valid.  We can fix this by converting the
    c.lui to a c.li which can load 0.
    
    	bfd/
    	* elfnn-riscv.c (perform_relocation) <R_RISCV_RVC_LUI>: If
    	RISCV_CONST_HIGH_PART (value) is zero, then convert c.lui instruction
    	to c.li instruction, and use ENCODE_RVC_IMM to set value.
    
    	ld/
    	* testsuite/ld-riscv-elf/c-lui-2.d: New.
    	* testsuite/ld-riscv-elf/c-lui-2.ld: New.
    	* testsuite/ld-riscv-elf/c-lui-2.s: New.
    	* testsuite/ld-riscv-elf/ld-riscv-elf.exp: Run the c-lui-2 test.

commit db502012fc46b4dd068461aaeafeaa421489c562
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Jul 9 15:35:17 2019 -0600

    TUI window resize should not need invisibility
    
    When resizing a window, the TUI currently first makes it invisible,
    then changes the size, and then restores its visibility.
    
    I think this is done because curses doesn't truly support resizing a
    window -- there is a "wresize" extension, but the man page says it
    isn't available in all versions of curses.
    
    First, this is probably not a major problem any more.  I imagine most
    of those old systems are gone now.
    
    Second, I think it's a better API to have this detail hidden inside of
    the resize method.
    
    This patch changes the code to follow this idea, and changes the
    ordinary resize method to use wresize when it is available.  The
    special case for the command window is also moved to methods on the
    command window.
    
    gdb/ChangeLog
    2019-08-15  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.c (show_layout, show_source_disasm_command)
    	(show_data): Don't change window visibility.
    	(tui_gen_win_info::resize): Remove special case for command
    	window.  Use wresize, when available.
    	(show_source_or_disasm_and_command): Don't change window
    	visibility.
    	* tui/tui-command.h (struct tui_cmd_window) <resize>: Declare.
    	<make_visible>: New method.
    	* tui/tui-command.c (tui_cmd_window::resize): New method.

commit 3891b65efe614fe2e2f7e75e7f5ec8964f7fd96b
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jul 6 21:19:45 2019 -0600

    Change TUI source window iteration
    
    Currently the TUI does separate bookkeeping to track which source
    windows exist.  It seems better to me to just refer to the list of
    windows for this, so this patch removes the special handling and
    instead adds a new iterator.
    
    gdb/ChangeLog
    2019-08-15  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (struct tui_source_window_iterator): New.
    	(struct tui_source_windows): New.
    	* tui/tui-winsource.c (tui_display_main): Update.
    	* tui/tui-win.c (tui_resize_all, tui_adjust_win_heights)
    	(new_height_ok, parse_scrolling_args): Update.
    	* tui/tui-layout.c (show_layout, show_data): Update.
    	* tui/tui-data.h (tui_source_windows, tui_clear_source_windows)
    	(tui_add_to_source_windows): Don't declare.
    	* tui/tui-data.c (source_windows, tui_source_windows)
    	(tui_clear_source_windows, tui_add_to_source_windows): Remove.

commit ee556432c44dd5dbcf22c4086774bd29ded5b208
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jul 6 17:32:45 2019 -0600

    Rename the "reset" method to "resize"
    
    tui_gen_win_info::reset really just resizes the window.  This patch
    renames it to reflect this.
    
    gdb/ChangeLog
    2019-08-15  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (struct tui_source_window_base) <resize>:
    	Rename from reset.
    	* tui/tui-winsource.c (tui_source_window_base::resize): Rename.
    	* tui/tui-layout.c (show_source_disasm_command, show_data):
    	Update.
    	(tui_gen_win_info::resize): Rename.
    	(show_source_or_disasm_and_command): Update.
    	* tui/tui-data.h (struct tui_gen_win_info) <resize>: Rename from
    	reset.

commit 46f438e3d57bae1d74ab9a7e6cba380b0e58f552
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jul 6 17:30:02 2019 -0600

    Remove tui_initialize_static_data
    
    tui_initialize_static_data is not needed, because locator moving and
    resizing is already handled in the layout code.
    
    gdb/ChangeLog
    2019-08-15  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-stack.c (tui_initialize_static_data): Remove.
    	* tui/tui-interp.c (tui_interp::init): Don't call
    	tui_initialize_static_data.
    	* tui/tui-data.h (tui_initialize_static_data): Don't declare.

commit f4ce562c7f7a95cab61bf298d289cd56f0802a95
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jul 6 16:28:46 2019 -0600

    Minor simplification in tui_default_win_viewport_height
    
    tui_default_win_viewport_height doesn't need to look at tui_win_list;
    it can simply check the type directly.
    
    gdb/ChangeLog
    2019-08-15  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.c (tui_default_win_viewport_height): Don't
    	examine tui_win_list.

commit c398c3d0b56823bb12718ae46a8c273b866ca246
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jul 6 16:17:46 2019 -0600

    Remove tui_clear_source_content
    
    tui_clear_source_content is not needed.  Instead, the callers can call
    erase_source_content, which is also changed to clear the content
    vector.
    
    gdb/ChangeLog
    2019-08-15  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (tui_clear_source_content): Don't declare.
    	* tui/tui-winsource.c (tui_update_source_window_as_is): Don't call
    	tui_clear_source_content.
    	(tui_clear_source_content): Remove.
    	(tui_source_window_base::do_erase_source_content): Hoist call to
    	content.clear().
    	* tui/tui-stack.c (tui_show_frame_info): Don't call
    	tui_clear_source_content.

commit e25d200487dba7dfdf92f638e4ef2aefd7bd7481
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jul 6 15:57:53 2019 -0600

    Turn tui_erase_source_content into a method
    
    This changes tui_erase_source_content into a method on
    tui_source_window_base.  The bulk of the work is moved into a helper
    method, so that the callers can each pass the string appropriate to
    the particular window class.
    
    gdb/ChangeLog
    2019-08-15  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (struct tui_source_window_base)
    	<do_erase_source_content>: New method.
    	<erase_source_content>: New method.
    	(tui_erase_source_content): Don't declare.
    	* tui/tui-winsource.c (tui_clear_source_content): Update.
    	(tui_source_window_base::do_erase_source_content): Rename from
    	tui_erase_source_content.
    	(tui_source_window_base::show_source_content): Update.
    	* tui/tui-win.c (tui_resize_all, tui_adjust_win_heights): Update.
    	* tui/tui-source.h (struct tui_source_window)
    	<erase_source_content>: New method.
    	* tui/tui-disasm.h (struct tui_disasm_window)
    	<erase_source_content>: New method.

commit 002f15c27779e154856fdf281360385f4d3be671
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jul 6 15:52:13 2019 -0600

    Remove tui_alloc_source_buffer
    
    There is no longer any need for tui_alloc_source_buffer.  The two
    callers of this function immediately change the contents of the
    window, undoing the work done by this function.
    
    This required adding a move constructor to tui_source_element -- a
    mildly surprising find, but without this, resizing the vector will
    cause crashes.  This issue was masked earlier because
    tui_alloc_source_buffer handled this.
    
    Note that a patch for this bug was submitted here:
    
        https://sourceware.org/ml/gdb-patches/2019-08/msg00094.html
    
    That patch is better, IMO, but the author as yet hasn't responded to a
    request for a ChangeLog entry.
    
    gdb/ChangeLog
    2019-08-15  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (tui_alloc_source_buffer): Don't declare.
    	(struct tui_source_element): Add DISABLE_COPY_AND_ASSIGN, and move
    	constructor.
    	* tui/tui-winsource.c (tui_alloc_source_buffer): Remove.
    	* tui/tui-source.c (tui_set_source_content): Update.
    	* tui/tui-disasm.c (tui_set_disassem_content): Update.

commit c9033fe839e37a378ff86e614a7d6e939b94f6c9
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jul 6 15:09:01 2019 -0600

    Change tui_line_is_displayed to be a method
    
    This changes tui_line_is_displayed to be a method on
    tui_source_window, now that it is obvious that it can only be called
    for this type.
    
    gdb/ChangeLog
    2019-08-15  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (tui_line_is_displayed): Don't declare.
    	* tui/tui-winsource.c (tui_line_is_displayed): Move to
    	tui-source.c.
    	* tui/tui-source.h (struct tui_source_window) <line_is_displayed>:
    	Declare.
    	* tui/tui-source.c (tui_source_window::line_is_displayed): New
    	method.
    	(tui_source_window::maybe_update): Update.

commit 088f37dd90eecb647347c1aa53d36b3f5be64b21
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jul 6 15:06:47 2019 -0600

    Change tui_addr_is_displayed into a method
    
    This changes tui_addr_is_displayed to be a method on
    tui_disasm_window, now that it is obvious that it can only be called
    for this type.
    
    gdb/ChangeLog
    2019-08-15  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (tui_addr_is_displayed): Don't declare.
    	* tui/tui-winsource.c (tui_addr_is_displayed): Move to
    	tui-disasm.c.
    	* tui/tui-disasm.h (struct tui_disasm_window) <addr_is_displayed>:
    	Declare.
    	* tui/tui-disasm.c (tui_disasm_window::addr_is_displayed): New
    	method.
    	(tui_disasm_window::maybe_update): Update.

commit a54700c6c45ea424b668f2201ef14906f2052412
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jul 6 15:04:12 2019 -0600

    Move contents of tui_show_frame_info to new method
    
    This moves much of the body of tui_show_frame_info to a new method on
    tui_source_window_base.  This removes a check for the type of a
    window.
    
    gdb/ChangeLog
    2019-08-15  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (struct tui_source_window_base)
    	<maybe_update>: Declare.
    	* tui/tui-stack.c (tui_show_frame_info): Call maybe_update
    	method.
    	* tui/tui-source.h (struct tui_source_window) <maybe_update>:
    	Declare.
    	* tui/tui-source.c (tui_source_window::maybe_update): New method.
    	* tui/tui-disasm.h (struct tui_disasm_window) <maybe_update>:
    	Declare.
    	* tui/tui-disasm.c (tui_disasm_window::maybe_update): New method.

commit e2a678a557b52816a7aa45902a6519bc1cae918e
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jul 6 13:52:08 2019 -0600

    Avoid string_file in tui_make_status_line
    
    tui_make_status_line uses string_file where a simple std::string
    constructor would do.  This makes this change.
    
    gdb/ChangeLog
    2019-08-15  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-stack.c (tui_make_status_line): Use string constructor.

commit f2dda4778417e2d58a5b0416ff9598f68470cbfa
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jul 6 11:32:06 2019 -0600

    Move locator code to tui-stack.c
    
    The locator is mostly implemented in tui-stack.c.  This moves the
    remaining bits to tui-stack.c and tui-stack.h, as appropriate.
    
    gdb/ChangeLog
    2019-08-15  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-wingeneral.c: Include tui-stack.h.
    	* tui/tui-stack.h (MAX_LOCATOR_ELEMENT_LEN)
    	(struct tui_locator_window): Move from tui-data.h.
    	* tui/tui-stack.c (_locator, tui_locator_win_info_ptr)
    	(tui_initialize_static_data): Move from tui-data.c.
    	* tui/tui-data.h (MAX_LOCATOR_ELEMENT_LEN)
    	(struct tui_locator_window): Move to tui-stack.c.
    	* tui/tui-data.c (_locator, tui_locator_win_info_ptr)
    	(tui_initialize_static_data): Move to tui-stack.c.

commit ed4a1084d725a5d1aecefc6a430d3059a77c102d
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jul 6 08:23:34 2019 -0600

    Remove FIXMEs from tui-layout.c
    
    An earlier patch added a couple of FIXME comments to tui-layout.c.
    This removes them.  This is possible due to the previous patch that
    changed how boxing works in the TUI -- now, no special case for the
    command window is needed in box_win.
    
    gdb/ChangeLog
    2019-08-15  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.c (show_source_disasm_command)
    	(show_source_or_disasm_and_command): Use make_visible method, not
    	tui_make_window.
    	* tui/tui-command.h (struct tui_cmd_window) <make_visible>:
    	Remove.

commit 65962b20b6df7e8961ec4002179dbd51a33a627f
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jul 6 08:21:38 2019 -0600

    Simplify TUI boxing
    
    In the TUI, whether or not a window can be boxed is a property of the
    window's type.  This adds a can_box method to the window classes, and
    changes tui_make_window to defer to this, removing the "box_it"
    paramter.  This also lets us remove "enum tui_box", as it is no longer
    used.
    
    gdb/ChangeLog
    2019-08-15  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-wingeneral.h (tui_make_window): Update.
    	* tui/tui-wingeneral.c (tui_make_window): Remove "box_it"
    	parameter.
    	(tui_gen_win_info::make_visible): Update.
    	* tui/tui-regs.c (tui_data_window::display_registers_from):
    	Update.
    	* tui/tui-layout.c (show_source_disasm_command)
    	(show_source_or_disasm_and_command): Update.
    	* tui/tui-data.h (struct tui_gen_win_info) <can_box>: New method.
    	(enum tui_box): Remove.
    	(struct tui_win_info) <can_box>: New method.
    	* tui/tui-command.h (struct tui_cmd_window) <can_box>: New
    	method.

commit 22a2ab04f58dc7c3f5fb0e6d8f0fa96ee4aa3951
Author: Sandra Loosemore <sandra@codesourcery.com>
Date:   Thu Aug 15 10:23:18 2019 -0700

    Disable dw2-dir-file-name.exp on remote and/or Windows host.
    
    This test has many hardwired assumptions that pathnames on build and
    host are the same, and that POSIX pathname syntax is used.  This
    results in dozens of failures on a remote Windows host.  Fixing these
    assumptions would involve nontrivial rewrites; meanwhile, let's make
    the test results reflect the reality that this testcase isn't supported
    on remote host.
    
    2019-08-15  Sandra Loosemore  <sandra@codesourcery.com>
    
    	gdb/testsuite/
    	* gdb.dwarf2/dw2-dir-file-name.exp: Skip on remote or
    	Windows host.

commit 835b995b576d14fa9b73fb763d5186323b1365b6
Author: Sandra Loosemore <sandra@codesourcery.com>
Date:   Thu Aug 15 10:17:54 2019 -0700

    Skip batch-preserve-term-settings.exp tests that cannot work on Windows.
    
    This group of tests assume that the gdb "shell" command launches a
    POSIX-compliant shell supporting the PPID environment variable, which
    is used to get gdb's pid for killing it from a remote_exec shell.  But
    on Windows host "shell" launches cmd.exe, which doesn't have an
    equivalent query.
    
    2019-08-15  Sandra Loosemore  <sandra@codesourcery.com>
    
    	gdb/testsuite/
    	* gdb.base/batch-preserve-term-settings.exp
    	(test_terminal_settings_preserved_after_sigterm): Skip on Windows.

commit d59b55f0952e95fdbec58021cecce85f4557b485
Author: Tom Tromey <tromey@adacore.com>
Date:   Thu Aug 15 11:23:13 2019 -0600

    Use gdb::byte_vector in target_write_memory
    
    Pedro pointed out that target_write_memory should use gdb::byte_vector
    rather than std::vector<unsigned char>.
    
    gdb/gdbserver/ChangeLog
    2019-08-15  Tom Tromey  <tromey@adacore.com>
    
    	* target.c (target_write_memory): Use gdb::byte_vector.

commit 97dd8e07d998f5f0fcd0d06fd53e2ae9d337d222
Author: Christian Biesinger <cbiesinger@google.com>
Date:   Wed Aug 14 18:13:04 2019 -0500

    [testsuite] Make the testsuite work on mingw
    
    Dejagnu produces an objdir like /c/, but GDB expects something like c:/.
    So fix it up in lib/gdb.exp.
    
    gdb/testsuite/ChangeLog:
    
    2019-08-14  Christian Biesinger  <cbiesinger@google.com>
    
    	* lib/gdb.exp: When running on a mingw target, replace
    	/x/ with x:/.

commit 6ae978f133a67d34d01b6bb2053f1ba20ad13eeb
Author: Nick Clifton <nickc@redhat.com>
Date:   Thu Aug 15 15:23:18 2019 +0100

    Add a description of the 'n' symbol type displayed by nm.
    
    	PR 24767
    	* doc/binutils.texi (nm): Document the 'n' symbol type.

commit 4196ab2a6d348f76c0e5e78252e44d9c631636d2
Author: Tom Tromey <tromey@adacore.com>
Date:   Wed Aug 14 09:18:21 2019 -0600

    Replace write_inferior_memory with target_write_memory
    
    target_write_memory is just a simple wrapper for
    write_inferior_memory.  Because target_write_memory is needed for
    gdbsupport, and because gdb uses the name "target_write_memory"
    everywhere, this patch renames write_inferior_memory and removes the
    wrapper.  I think this brings gdb and gdbserver slightly more in sync.
    
    gdb/gdbserver/ChangeLog
    2019-08-15  Tom Tromey  <tromey@adacore.com>
    
    	* tracepoint.c (write_inferior_data_pointer)
    	(write_inferior_integer, write_inferior_int8)
    	(write_inferior_uinteger, m_tracepoint_action_download)
    	(r_tracepoint_action_download, x_tracepoint_action_download)
    	(l_tracepoint_action_download, clear_inferior_trace_buffer)
    	(download_agent_expr, download_tracepoint_1)
    	(download_trace_state_variables, upload_fast_traceframes): Update.
    	* server.c (gdb_write_memory): Update.
    	* remote-utils.c (relocate_instruction): Update.
    	* proc-service.c (ps_pdwrite): Update.
    	* mem-break.c (remove_memory_breakpoint)
    	(delete_fast_tracepoint_jump, set_fast_tracepoint_jump)
    	(uninsert_fast_tracepoint_jumps_at)
    	(reinsert_fast_tracepoint_jumps_at): Update.
    	* linux-x86-low.c (append_insns)
    	(i386_install_fast_tracepoint_jump_pad)
    	(amd64_write_goto_address, i386_write_goto_address): Update.
    	* linux-s390-low.c (append_insns, s390_write_goto_address):
    	Update.
    	* linux-ppc-low.c (ppc_relocate_instruction)
    	(ppc_install_fast_tracepoint_jump_pad, emit_insns)
    	(ppc_write_goto_address): Update.
    	* linux-aarch64-low.c (append_insns): Update.
    	* target.h (struct target_ops): Update.
    	(write_inferior_memory): Don't declare.
    	* target.c (target_write_memory): Rename from
    	write_inferior_memory.  Remove old target_write_memory.

commit c6778d00df0fbc7fe53801717eb934a5d7b9674a
Author: Tom Tromey <tromey@adacore.com>
Date:   Wed Aug 14 09:11:28 2019 -0600

    Simplify write_inferior_memory
    
    gdbserver's write_inferior_memory uses a static variable to avoid
    memory leaks, and has a comment referring to the lack of cleanups.
    This patch removes this comment and the code in favor of a
    straightforward use of std::vector.
    
    gdb/gdbserver/ChangeLog
    2019-08-15  Tom Tromey  <tromey@adacore.com>
    
    	* target.c (write_inferior_memory): Use std::vector.

commit 9177214a228f7d0eb8543725287a6163993fbebf
Author: Christophe Vidal <support@krizalys.com>
Date:   Thu Aug 15 14:38:31 2019 +0100

    Correct a typo in the documentation for the disassembler.
    
    	* docs/binutils.texi: Fixed notice message disassembler options
    	section of the man page.

commit 05192282ca19f8f5c201f630caed68b1632e2619
Author: Tom Tromey <tromey@adacore.com>
Date:   Wed Aug 14 14:01:57 2019 -0600

    Fix CU overrun in scan_unit_for_symbols
    
    A customer program had a DWARF CU that consisted of just a CU DIE,
    without any children.  In this situation, scan_unit_for_symbols will
    try to read past the end of the current CU, and will take use the
    first bytes of the next CU as an abbrev, printing an error message.
    
    This patch fixes the bug by changing scan_unit_for_symbols to stop at
    the end of the CU rather than the end of the .debug_info section.
    
    bfd/ChangeLog
    2019-08-15  Tom Tromey  <tromey@adacore.com>
    
    	* dwarf2.c (scan_unit_for_symbols): Check for end of CU, not end
    	of section.

commit 6485977b899b2780c575ff1d34ccfa7fa950e492
Author: Nick Clifton <nickc@redhat.com>
Date:   Thu Aug 15 12:41:24 2019 +0100

    Updatesd Swdish translation for the gas sub-directory.
    
    	* po/sv.po: Updated Swedish translation.

commit 2208ee917050bcc901c7faefdee257ffbf8ef2ab
Author: Tom de Vries <tdevries@suse.de>
Date:   Thu Aug 15 08:14:31 2019 +0200

    [gdb] Fix gdb build on mips64-linux
    
    When compiling for mips64-linux, we get:
    ...
    src/gdb/linux-nat-trad.c:139:12: error: ‘gdbarch_num_regs’ was not declared \
      in this scope
      139 |   regnum < gdbarch_num_regs (regcache->arch ());
    ...
    
    Fix this by including gdbarch.h in linux-nat-trad.c, similar to commit
    b1c896b365 "Fix gdb build on macOS".
    
    Build on mips64-linux.
    
    gdb/ChangeLog:
    
    2019-08-15  Tom de Vries  <tdevries@suse.de>
    
    	* linux-nat-trad.c: Include gdbarch.h.

commit fc9e754460ccf1c893fc9e67c02c49f58f1bd38e
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Thu Aug 15 00:00:21 2019 +0000

    Automatic date update in version.in

commit 75faf5c41d7fc713b73cbb3523dcc6ca3855f98e
Author: Alan Hayward <alan.hayward@arm.com>
Date:   Wed Aug 14 15:47:05 2019 +0100

    AArch64: Allow additional sizes in prologue
    
    When saving registers to the stack at the start of a function, not all state
    needs to be saved. For example, only the first 64bits of float registers need
    saving.  However, a program may choose to store extra state if it wishes,
    there is nothing preventing it doing so.
    
    The aarch64_analyze_prologue will error if it detects extra state being
    stored.  Relex this restriction.
    
    Tested via aarch64-prologue test.
    
    gdb/ChangeLog:
    
    	* aarch64-tdep.c (aarch64_analyze_prologue): Allow any valid
    	register sizes.
    
    gdb/testsuite/ChangeLog:
    
    	* gdb.arch/aarch64-prologue.c: New test.
    	* gdb.arch/aarch64-prologue.exp: New file.

commit b1c896b365f2dbcd14145a88d103623244cf0fb0
Author: Tom Tromey <tromey@adacore.com>
Date:   Wed Aug 14 08:40:18 2019 -0600

    Fix gdb build on macOS
    
    Internal testing showed that the macOS port did not build.  The
    breakage was caused by the patch to remove the gdbarch.h include from
    defs.h.  This patch fixes the problem.
    
    gdb/ChangeLog
    2019-08-14  Tom Tromey  <tromey@adacore.com>
    
    	* darwin-nat.c: Include gdbarch.h.
    	* darwin-nat-info.c: Include gdbarch.h.

commit dfc19da6a6d43390544fa446bb1a33723b339a77
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Aug 14 10:51:22 2019 +0930

    PR24623, DWARF errors
    
    	PR 24623
    	* dwarf2.c (stash_comp_unit): New function, extracted from..
    	(_bfd_dwarf2_find_nearest_line): ..here.
    	(find_abstract_instance): Parse comp units and decode line info
    	as needed.

commit c327a44f38ad5ab0dfd8da5184c4c030798ef323
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Aug 14 11:26:48 2019 +0930

    Use comp_unit_maybe_decode_line_info in more places
    
    	* dwarf2.c (comp_unit_maybe_decode_line_info): Declare.
    	(comp_unit_find_nearest_line): Use it here..
    	(_bfd_dwarf2_find_symbol_bias): ..and here.

commit 9defd221fe3ecffabc90eadd077326b27e898a2b
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Aug 14 10:40:20 2019 +0930

    Remove _bfd_dwarf2_find_nearest_line addr_size parameter
    
    This parameter might appear to be used to set up offset_size, but
    since git commit 024b2372f5 offset_size is either set from the
    debug_info data or is set to 4.
    
    	* dwarf2.c (_bfd_dwarf2_find_nearest_line): Remove addr_size parameter.
    	* libbfd-in.h  (_bfd_dwarf2_find_nearest_line): Update prototype.
    	* coffgen.c (coff_find_nearest_line_with_names): Adjust
    	_bfd_dwarf2_find_nearest_line calls.
    	* elf.c (_bfd_elf_find_nearest_line, _bfd_elf_find_line): Likewise.
    	* elf32-arm.c (elf32_arm_find_nearest_line): Likewise.
    	* elf64-alpha.c (elf64_alpha_find_nearest_line): Likewise.
    	* elfnn-aarch64.c (elfNN_aarch64_find_nearest_line): Likewise.
    	* elfxx-mips.c (_bfd_mips_elf_find_nearest_line): Likewise.
    	* mach-o.c (bfd_mach_o_find_nearest_line): Likewise.
    	* libbfd.h: Regenerate.

commit 414b84043054e9656aad008e6efb49979ec614e9
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Wed Aug 14 00:00:22 2019 +0000

    Automatic date update in version.in

commit 6405cd73c0d160d9b6f82744bb5510b3e101ad59
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jul 6 08:18:27 2019 -0600

    Remove tui_gen_win_info::last_visible_line
    
    The last_visible_line field of tui_gen_win_info is not used, so remove
    it.
    
    gdb/ChangeLog
    2019-08-13  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-data.h (struct tui_gen_win_info) <last_visible_line>:
    	Remove.
    	* tui/tui-data.c (tui_initialize_static_data): Update.

commit 5216580d7a1134a9349ec045b475f5b40f499e5e
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jul 6 08:10:50 2019 -0600

    Don't track the contents of the execution info window
    
    The curses library keeps track of the contents of each window, and can
    redraw the screen as needed.  This means that in most cases is no need
    for the TUI windows to also keep track of their contents.  This patch
    removes content tracking from the execution window, leaving that to
    curses.
    
    gdb/ChangeLog
    2019-08-13  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (struct tui_exec_info_window)
    	<~tui_exec_info_window, maybe_allocate_content, get_content,
    	m_content>: Remove.
    	(struct tui_source_window_base) <set_exec_info_content,
    	show_exec_info_content>: Don't declare.
    	* tui/tui-winsource.c
    	(tui_exec_info_window::maybe_allocate_content): Remove.
    	(tui_source_window_base::update_exec_info): Rename from
    	set_exec_info_content.
    	(tui_source_window_base::show_exec_info_content)
    	(tui_source_window_base::update_exec_info): Remove.

commit 93858ad34ec1d2250d33365468c6721023786f51
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jul 6 07:37:39 2019 -0600

    Remove tui_clear_exec_info_content
    
    After the previous patch, all calls to tui_clear_exec_info_content
    come just after a call to tui_clear_source_content.  Because these two
    windows are linked, I think it makes sense to have
    tui_clear_source_content simply do the work.  So, this patch removes
    tui_clear_exec_info_content.
    
    gdb/ChangeLog
    2019-08-13  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (tui_clear_exec_info_content): Don't
    	declare.
    	* tui/tui-winsource.c (tui_update_source_window_as_is)
    	(tui_update_source_windows_with_addr, tui_erase_source_content):
    	Update.
    	(tui_clear_exec_info_content): Remove.

commit e321e7ce753f27ca9664ca08a8314924b5771d61
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jul 5 17:36:16 2019 -0600

    Remove tui_erase_exec_info_content
    
    One call to tui_erase_exec_info_content can be removed.  This call is
    not needed because the function in question then immediately sets the
    execution info window contents.
    
    Once this is done, tui_clear_exec_info_content is just a wrapper for
    the only call to tui_erase_exec_info_content, so
    tui_erase_exec_info_content can be renamed and the wrapper function
    removed.
    
    gdb/ChangeLog
    2019-08-13  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (tui_erase_exec_info_content): Don't
    	declare.
    	* tui/tui-winsource.c (tui_source_window_base::refresh_all): Don't
    	call tui_erase_exec_info_content.
    	(tui_clear_exec_info_content): Rename from
    	tui_erase_exec_info_content.
    	(tui_clear_exec_info_content): Delete.

commit 8270ac6229ac323fe7dfc1915b3f52d77df6bb9a
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jul 5 17:35:13 2019 -0600

    Turn tui_show_exec_info_content into a method
    
    This changes tui_show_exec_info_content to be a method on
    tui_source_window_base.  As it is only called by other methods on this
    class, it can be private.
    
    gdb/ChangeLog
    2019-08-13  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (struct tui_source_window_base)
    	<show_exec_info_content>: Declare.
    	(tui_show_exec_info_content): Don't declare.
    	* tui/tui-winsource.c
    	(tui_source_window_base::show_exec_info_content): Rename from
    	tui_show_exec_info_content.
    	(tui_source_window_base::update_exec_info): Update.

commit 7b56485db5187e6c63f330e1eb35f63b50327b74
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jul 5 17:32:19 2019 -0600

    Move code to tui-winsource.h
    
    This moves code related to the execution info window from tui-data.h
    to tui-winsource.h.  It fits better here because the execution info is
    conceptually part of the source and disassembly windows, and
    tui-winsource.h is where this common class lives.
    
    gdb/ChangeLog
    2019-08-13  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-data.h (enum tui_bp_flag, tui_bp_flags, struct tui_source_element)
    	(TUI_BP_HIT_POS, TUI_BP_BREAK_POS, TUI_EXEC_POS)
    	(TUI_EXECINFO_SIZE, tui_exec_info_content): Move ...
    	* tui/tui-winsource.h (enum tui_bp_flag, tui_bp_flags, struct
    	tui_source_element, TUI_BP_HIT_POS, TUI_BP_BREAK_POS)
    	(TUI_EXEC_POS, TUI_EXECINFO_SIZE, tui_exec_info_content):
    	... here.

commit 7ba913dcdf2f94cbd501d763f0fc55a46d10331c
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jul 5 17:24:07 2019 -0600

    Change tui_update_exec_info to be a method
    
    This changes tui_update_exec_info to be a method on
    tui_source_window_base.
    
    gdb/ChangeLog
    2019-08-13  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (struct tui_source_window_base)
    	<update_exec_info>: Declare.
    	(tui_update_exec_info): Don't declare.
    	* tui/tui-winsource.c (tui_update_source_window_as_is)
    	(tui_source_window_base::refresh_all)
    	(tui_update_all_breakpoint_info): Update.
    	(tui_source_window_base::update_exec_info): Rename from
    	tui_update_exec_info.
    	* tui/tui-stack.c (tui_show_frame_info): Update.

commit 37a4a1310484490878ce0af9ea1924d6c7dbec7b
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jul 5 17:22:05 2019 -0600

    Change tui_set_exec_info_content to be a method
    
    This changes tui_set_exec_info_content to bea method on
    tui_source_window_base.
    
    gdb/ChangeLog
    2019-08-13  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (struct tui_source_window_base)
    	<set_exec_info_content>: Declare.
    	(tui_set_exec_info_content): Don't declare.
    	* tui/tui-winsource.c
    	(tui_source_window_base::set_exec_info_content): Rename from
    	tui_set_exec_info_content.
    	(tui_update_exec_info): Update.

commit 0bd27e079a99d93590fd078c86c0afe51f6d29b8
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jul 5 17:18:18 2019 -0600

    Change tui_show_source_content to be a method
    
    This changes tui_show_source_content to be a method on
    tui_source_window_base.
    
    gdb/ChangeLog
    2019-08-13  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (struct tui_source_window_base)
    	<show_source_content>: Declare.
    	(tui_show_source_content): Don't declare.
    	* tui/tui-winsource.c (tui_update_source_window_as_is): Update.
    	(tui_source_window_base::show_source_content): Rename from
    	tui_show_source_content.
    	(tui_source_window_base::refresh_all): Update.
    	* tui/tui-layout.c (show_source_disasm_command)
    	(show_source_or_disasm_and_command): Update.

commit b4ef5aeb3a1880490f9441655d9de74727c9063a
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jul 5 17:14:46 2019 -0600

    Change tui_check_and_display_highlight_if_needed to be a method
    
    This changes tui_check_and_display_highlight_if_needed to be a method
    on tui_win_info.  This makes it clear that the NULL check in that
    function is not needed, so it is removed here.
    
    gdb/ChangeLog
    2019-08-13  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.c (tui_erase_source_content)
    	(tui_show_source_content, tui_source_window_base::refresh_all):
    	Update.
    	* tui/tui-wingeneral.h
    	(tui_check_and_display_highlight_if_needed): Don't declare.
    	* tui/tui-wingeneral.c
    	(tui_win_info::check_and_display_highlight_if_needed): Rename from
    	check_and_display_highlight_if_needed.
    	* tui/tui-win.c (tui_rehighlight_all)
    	(tui_win_info::make_visible_with_new_height): Update.
    	* tui/tui-regs.c (tui_data_window::display_registers_from_line)
    	(tui_data_window::erase_data_content)
    	(tui_data_window::display_all_data): Update.
    	* tui/tui-data.h (struct tui_win_info)
    	<check_and_display_highlight_if_needed>: Declare.

commit fede52738f3ed3e375d84197380ae1a6cd35c6fe
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jul 5 12:46:23 2019 -0600

    Delete invisible TUI windows
    
    This changes the TUI so that when the layout changes, any windows that
    are invisible are now deleted.  This makes it simpler to understand
    window lifetimes.
    
    gdb/ChangeLog
    2019-08-13  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-win.c (tui_resize_all): Call
    	tui_delete_invisible_windows.
    	* tui/tui-layout.c (show_layout): Call
    	tui_delete_invisible_windows.
    	* tui/tui-data.h (tui_delete_invisible_windows): Declare.
    	* tui/tui-data.c (tui_delete_invisible_windows): New function.

commit 22c3f4909af125b457564db66e3cb3c56cb9abd3
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jul 5 12:38:44 2019 -0600

    Simplify tui_show_disassem
    
    tui_show_disassem does not need to call tui_add_win_to_layout, because
    the callers that could change the layout have already ensured that it
    exists.
    
    gdb/ChangeLog
    2019-08-13  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-disasm.c (tui_show_disassem): Add assertion.  Don't call
    	tui_add_win_to_layout.

commit 16cb7910b946bad4b5f4aa69925361004c4e412f
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jul 5 12:35:08 2019 -0600

    Make tui_default_win_height static
    
    tui_default_win_height is only used in tui-layout.c, so make it static.
    
    gdb/ChangeLog
    2019-08-13  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.h (tui_default_win_height): Don't declare.
    	* tui/tui-layout.c (tui_default_win_height): Now static.

commit cc0c3ffbc975fe764f6c4746611a836e7a4ce379
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jul 5 12:34:31 2019 -0600

    Two simplifications in tui-layout.c
    
    This patch simplifies some code in tui-layout.c.
    
    In show_layout, all the layout settings can be handled by a single
    switch statement.  In show_source_disasm_command and
    show_source_or_disasm_and_command, there is no need to check the
    current layout, as the caller has already done so.
    
    gdb/ChangeLog
    2019-08-13  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.c (show_layout): Unify all layout cases into a
    	single switch.
    	(show_source_disasm_command, show_source_or_disasm_and_command):
    	Don't check current layout.

commit 3f3ffe54e229482bdb0785ae2162f03d60870400
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jul 5 12:29:18 2019 -0600

    Simplify tui_make_all_invisible
    
    This simplifies the implementation of tui_make_all_invisible.  Also,
    because show_data is only called by show_layout, this hoists the call
    to tui_make_all_invisible and removes the call from show_data.
    
    gdb/ChangeLog
    2019-08-13  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-wingeneral.c (make_all_visible): Remove.
    	(tui_make_all_invisible): Simplify.
    	* tui/tui-layout.c (tui_make_all_invisible): Move from
    	tui-wingeneral.c; simplify.
    	(show_layout): Hoist call to tui_make_all_invisible.
    	(show_data): Don't call tui_make_all_invisible.

commit 69258091762bce83b0f3dc9e07800b87bdc0649f
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jul 5 12:27:08 2019 -0600

    Remove tui_make_all_visible
    
    The function tui_make_all_visible is not used, so remove it.
    
    gdb/ChangeLog
    2019-08-13  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-wingeneral.h (tui_make_all_visible): Don't declare.
    	* tui/tui-wingeneral.c (tui_make_all_visible): Remove.

commit 62cf57fee7d72d0c2df2be4d999d63ea3bfafa43
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jul 5 12:13:40 2019 -0600

    Move current_layout to tui-layout.c
    
    This moves the current_layout global to tui-layout.c.  This allows for
    the removal of an accessor function; but also it just seems clearer to
    have it here.
    
    gdb/ChangeLog
    2019-08-13  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.c (current_layout, tui_current_layout): Move from
    	tui-data.c.
    	(show_source_disasm_command, show_data)
    	(show_source_or_disasm_and_command): Don't use
    	tui_set_current_layout_to.
    	* tui/tui-data.h (tui_set_current_layout_to): Don't declare.
    	* tui/tui-data.c (current_layout, tui_current_layout): Move to
    	tui-layout.c.
    	(tui_set_current_layout_to): Remove.

commit 2afade5dbe1bf99db3f6ab625ca540be030e0e41
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jul 5 12:11:52 2019 -0600

    Remove struct tui_layout_def
    
    "layout_def" isn't actually used in the TUI, so remove it.
    
    gdb/ChangeLog
    2019-08-13  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.c (tui_set_layout): Update.
    	* tui/tui-data.h (struct tui_layout_def): Remove.
    	(tui_layout_def): Don't declare.
    	* tui/tui-data.c (layout_def): Remove.
    	(tui_layout_def): Remove.

commit a3504e96544b3f8918c4521116d537a4a07c2106
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jul 5 12:00:06 2019 -0600

    clear_detail can only be called on TUI source windows
    
    The clear_detail method can only be called on source windows, so
    remove definitions from the base of the class hierarchy, leaving only
    a single non-virtual method.
    
    gdb/ChangeLog
    2019-08-13  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (struct tui_source_window_base)
    	<clear_detail>: No longer "override".
    	* tui/tui-regs.h (struct tui_data_window) <clear_detail>: Remove.
    	* tui/tui-regs.c (tui_data_window::clear_detail): Remove.
    	* tui/tui-data.h (struct tui_win_info) <clear_detail>: Remove.
    	* tui/tui-command.h (struct tui_cmd_window) <clear_detail>:
    	Remove.
    	* tui/tui-command.c (tui_cmd_window::clear_detail): Remove.

commit 011168429859e3e3a2342ee043cbc2c7a5cf5e2f
Author: Christian Biesinger <cbiesinger@google.com>
Date:   Tue Aug 13 14:00:58 2019 -0500

    [readline] Fix compilation on MinGW
    
    S_ISLNK should not be called outside of an #ifdef.
    
    However, this specific call is actually unnecessary, because
    linkok can only be 0 if S_ISLNK is true, per the code above.
    
    I have sent a bug report to bug-readline, though it does not show
    up in the online archive yet.
    
    2019-08-13  Christian Biesinger  <cbiesinger@google.com>
    
    	* colors.c (_rl_print_color_indicator): Remove unnecessary
    	S_ISLNK check to fix compilation on MinGW.

commit 29c9291108487e1dd9bc5677dafee58ea2068f77
Author: Tom Tromey <tromey@adacore.com>
Date:   Mon Aug 12 12:06:20 2019 -0600

    Don't include readline headers from tracepoint.c
    
    I was curious why updating readline caused so much to be to rebuilt,
    so I look at all the uses of the readline headers.  Most are included
    for valid reasons (either readline directory or for tilde_expand); but
    the includes in tracepoint.c didn't seem to be used.
    
    This patch removes them.  Tested by rebuilding.
    
    gdb/ChangeLog
    2019-08-13  Tom Tromey  <tromey@adacore.com>
    
    	* tracepoint.c: Don't include readline.h or history.h.

commit abc6c00fb6cbb199348ec5f0bf4d969ed48bdfad
Author: Tom de Vries <tdevries@suse.de>
Date:   Tue Aug 13 18:57:50 2019 +0200

    [gdb/testsuite] Fix gdb.gdb/selftest.exp regexp
    
    With gdb.gdb/selftest.exp, we get:
    ...
    (xgdb) PASS: gdb.gdb/selftest.exp: send SIGINT signal to child process
    ^M
    Thread 1 "xgdb" received signal SIGINT, Interrupt.^M
    0x00007ffff5bf01db in poll () from /lib64/libc.so.6^M
    (gdb) FAIL: gdb.gdb/selftest.exp: send ^C to child process again
    ...
    
    The failure is due to gdb printing 'Thread 1 "xgdb" received signal SIGINT',
    but the regexp in the test-case expecting 'Program received signal SIGINT'.
    
    Fix this by updating the regexp, similar to how that is done earlier in the
    test-case.
    
    gdb/testsuite/ChangeLog:
    
    2019-08-13  Tom de Vries  <tdevries@suse.de>
    
    	* gdb.gdb/selftest.exp (send ^C to child process again): Accept also
    	Thread.

commit 74c2c1f45f036c4f155cc65a86022ce6eef0c5c5
Author: Sandra Loosemore <sandra@codesourcery.com>
Date:   Tue Aug 13 09:09:30 2019 -0700

    Fixes for gdb.python tests on remote Windows host.
    
    This patch fixes several test ERRORs and FAILs seen from running
    gdb.python tests on a remote Windows host.  The problems fixed
    generally fall into these categories:
    - Failure to copy the .py script to the host.
    - Confusion between build and host pathnames.
    - Assuming pathnames printed on the host include "/" as a directory
      separator.
    - Tests that need to be conditionally disabled due to missing features
      on the host, etc.
    
    2019-08-13  Sandra Loosemore  <sandra@codesourcery.com>
    
    	gdb/testsuite/
    	* gdb.python/py-completion.exp: Download the .py file to the host
    	and use its host pathname.  Conditionalize tests that use
    	tab completion and manipulate files on the build machine.
    	* gdb.python/py-events.exp: Download the .py file to the host
    	and use its host pathname.
    	* gdb.python/py-evsignal.exp: Likewise.
    	* gdb.python/py-evthreads.exp: Likewise.
    	* gdb.python/py-framefilter-invalidarg.exp: Match Windows
    	pathname syntax.
    	* gdb.python/py-framefilter.exp: Download the .py file to the right
    	place on the host.  Match Windows pathname syntax.
    	* gdb.python/py-mi-var-info-path-expression.exp: Download the
    	.py file to the host and use its host pathname.
    	* gdb.python/py-objfile-script.exp: Match Windows pathname syntax.
    	* gdb.python/py-objfile.exp: Expect a host pathname, not a
    	build pathname.  Skip symlink test on Windows host.  Add missing
    	newline at end of file.
    	* gdb.python/py-pp-maint.exp: Download the .py file to the host
    	and use its host pathname.
    	* gdb.python/py-pp-registration.exp: Match Windows pathname syntax.
    	* gdb.python/py-section-script.exp: Use host location of binfile
    	on safe-path.  Use correct path separator on Windows host.
    	Reorder alternatives in gdb_test_multiple to prevent matching
    	the wrong alternative on success.
    	* gdb.python/py-symtab.exp: Match Windows pathname syntax.

commit 5067f530c3a26330263649fbef23c7685f27cbb7
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Tue Aug 13 00:00:26 2019 +0000

    Automatic date update in version.in

commit 86c6b807f50ecec84e55007bf6cb6e54c159727b
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Apr 21 13:58:49 2019 -0600

    Require readline 7 or newer
    
    This changes gdb to require readline 7 or newer at build time.
    
    gdb/ChangeLog
    2019-08-12  Tom Tromey  <tom@tromey.com>
    
    	* configure: Rebuild.
    	* configure.ac: Check for readline 7.
    	* NEWS: Mention readline 7 requirement.
    	* README: Update.
    
    gdb/doc/ChangeLog
    2019-08-12  Tom Tromey  <tom@tromey.com>
    
    	* gdb.texinfo (Configure Options): Document minimum version of
    	readline.

commit 5db2718ce48c497e317787caebacd019da59c3b0
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Aug 4 17:39:27 2019 -0600

    Remove readline hack from gdb_select
    
    As discussed on gdb-patches, this removes the readline hack from the
    mingw-hdep.c version of gdb_select.  It's believed that this is not
    needed any more.  See:
    
        https://sourceware.org/ml/gdb-patches/2019-03/msg00465.html
    
    gdb/ChangeLog
    2019-08-12  Tom Tromey  <tom@tromey.com>
    
    	* mingw-hdep.c (gdb_select): Remove readline hack.

commit cb41b9e70e6fbd1cb603bb9ba4372fbb8ae87b20
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Aug 12 10:24:03 2019 -0600

    Import readline 8.0
    
    This imports readline 8.0.
    
    readline/ChangeLog.gdb
    2019-08-12  Tom Tromey  <tom@tromey.com>
    
    	* Imported readline 8.0.

commit ca2589f3bbad1e151abbb293d4c43a87b7a4d5ec
Author: Patrick Palka <patrick@parcs.ath.cx>
Date:   Sun Mar 17 08:32:16 2019 -0600

    Fix gdb's selftest.exp after readline import
    
    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).
    
    gdb/testsuite/ChangeLog
    2019-08-12  Patrick Palka  <patrick@parcs.ath.cx>
    
    	* 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 c15a79c78cc0111296b487de3fa59365f13df3bc
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Oct 7 15:29:57 2018 -0600

    Remove gdb workaround from readline/xfree.c
    
    There is a gdb-local patch to deal with interrupts during completion.
    The original thread adding this patch is here:
    
    https://sourceware.org/ml/gdb-patches/2011-06/msg00147.html
    
    I believe readline now implements the approach suggested by
    Chet Ramey:
    
    https://sourceware.org/ml/gdb-patches/2011-06/msg00493.html
    
    So, I believe this patch can be removed.
    
    readline/ChangeLog.gdb
    2018-10-07  Tom Tromey  <tom@tromey.com>
    
    	* Makefile.in (xfree.o): Don't depend on readline.h.
    	* xfree.c (xfree): Remove gdb workaround.
    	* xmalloc.h (xfree): Remove #define.

commit a2d4e4b70945c1704e5249ad6a9be9d5875a4b0e
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Oct 7 15:25:44 2018 -0600

    Remove gdb workaround from readline/emacs_keymap.c
    
    There is a gdb-local patch in readline/emacs_keymap.c that says:
    
      /* Temporary - this is a bug in readline 5.1 that should be fixed in
         readline 5.2.  */
    
    So, I think this can be removed now.  I have no way to test this, as
    the patch was specific to mingw.
    
    readline/ChangeLog.gdb
    2018-10-07  Tom Tromey  <tom@tromey.com>
    
    	* emacs_keymap.c: Remove gdb workaround.

commit 57a2fe070226852b84eff8f37e49b367daa2a32f
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Oct 7 15:24:12 2018 -0600

    Remove gdb workaround from readline/complete.c
    
    This removes a gdb-local patch from readline's get_y_or_n.  The code
    references a gdb test that continues to work when I remove this patch.
    So, I think it is not needed any more.
    
    readline/ChangeLog.gdb
    2018-10-07  Tom Tromey  <tom@tromey.com>
    
    	* complete.c (get_y_or_n): Remove gdb workaround.

commit 775e241e9c5f2b2ff2b59972ab70e5f20763fae6
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Oct 7 12:52:13 2018 -0600

    Import readline 7.0 (patch 5)
    
    This imports readline 7.0 (up to patch 5) while preserving all
    gdb-local changes.
    
    This was done by checking out the readline git repository, making a
    branch based on the gdb baseline revision, applying the gdb changes to
    that branch, and then merging from readline 7.
    
    readline/ChangeLog.gdb
    2019-08-12  Tom Tromey  <tom@tromey.com>
    
    	* Imported readline 7.0 patch 5.

commit 08132bdd876fa1825810f90ecc25390dd4ded457
Author: Srinath Parvathaneni <srinath.parvathaneni@arm.com>
Date:   Mon Aug 12 17:17:18 2019 +0100

    Modify the ARM encoding and decoding of SQRSHRL and UQRSHLL MVE instructions.
    
    This is a change to the first published specifications [1][a] but since there is no hardware
    out there that uses the old instructions we do not want to support the old variant.
    This changes are done based on the latest published specifications [1][b].
    
    [1] https://developer.arm.com/architectures/cpu-architecture/m-profile/docs/ddi0553/latest/armv81-m-architecture-reference-manual
        [a] version bf
        [b] version bh
    
    gas	* config/tc-arm.c (enum operand_parse_code): Add the entry OP_I48_I64.
    	(po_imm1_or_imm2_or_fail): Marco to check the immediate is either of
            48 or 64.
    	(parse_operands): Add case OP_I48_I64.
    	(do_mve_scalar_shift1): Add function to encode the MVE shift
            instructions with 4 arguments.
    	* testsuite/gas/arm/mve-shift-bad.l: Modify.
    	* testsuite/gas/arm/mve-shift-bad.s: Likewise.
    	* testsuite/gas/arm/mve-shift.d: Likewise.
    	* testsuite/gas/arm/mve-shift.s: Likewise.
    
    opcodes	* arm-dis.c (struct mopcode32 mve_opcodes): Modify the mask for
    	cases MVE_SQRSHRL and MVE_UQRSHLL.
    	(print_insn_mve): Add case for specifier 'k' to check
    	specific bit of the instruction.

commit 5312fe52e9ae6fd108f161a271315eb2821246eb
Author: Barnaby Wilks <barnaby.wilks@arm.com>
Date:   Mon Aug 12 11:08:36 2019 +0100

    Add generic and ARM specific support for half-precision IEEE 754 floating point numbers to the assembler.
    
    Half precision floating point numbers will be encoded using the IEEE 754
    half precision floating point format - 16 bits in total, 1 for sign, 5
    for exponent and 10 bits of  mantissa.
    
    This patch implements the float16 directive for both the IEEE 754 format
    and the Arm alternative format for the Arm backend.
    
    The syntax of the directive is:
    
      .float16 <0-n decimal numbers>
    e.g.
      .float16 12.0
      .float16 0.23, 433.1, 0.06
    
    The Arm alternative format is almost identical to the IEEE 754 format,
    except that it doesn't encode for NaNs or Infinity (instead an exponent
    of 0x1F represents a normalized number in the range 65536 to 131008).
    
    The alternative format is documented in the reference manual:
    
      https://static.docs.arm.com/ddi0487/db/DDI0487D_b_armv8_arm.pdf?_ga=2.72318806.49764181.1561632697-999473562.1560847439
    
    Which format is used is controlled by the .float16_format <format>
    directive, where if <format> = ieee, then use the IEEE 754
    half-precision format else if <format> = alternative, then use the
    Arm alternative format
    
    Or the format can be set on the command line via the -mfp16-format
    option that has a similar syntax.  -mfp16-format=<ieee|alternative>.
    This also fixes the format and it cannot be changed by any directives.
    
    Once the format has been set (either by the command line option or a directive) it cannot be changed,
    and any attempts to change it (i.e. with the float16_format directive) will result in a warning and the
    line being ignored.
    
    For ELF targets the appropriate EABI attribute will be written out at the end of assembling
    if the format has been explicitly specified. If no format has been explicitly specified then no
    EABI attributes will be written.
    
    If the format is not explicitly specified then any float16 directives are encoding using the IEEE 754-2008
    format by default until the format is fixed or changed with the float16_format directive.
    
    gas	* config/tc-arm.c (enum fp_16bit_format): Add enum to represent the 2 float16 encodings.
    	(md_atof): Set precision for float16 type.
    	(arm_is_largest_exponent_ok): Check for whether to encode with the IEEE or alternative
    	format.
    	(set_fp16_format): Parse a float16_format directive.
    	(arm_parse_fp16_opt): Parse the fp16-format command line option.
    	(aeabi_set_public_attributes): For ELF encode the FP16 format EABI attribute.
    	* config/tc-arm.h (TC_LARGEST_EXPONENT_IS_NORMAL): Macro that expands to
    	arm_is_largest_exponent_ok.
    	(arm_is_largest_exponent_ok): Add prototype for arm_is_largest_exponent_ok function.
    	* doc/c-arm.texi: Add documentation for .float16, .float16_format and -mfp16-format=
    	* testsuite/gas/arm/float16-bad.d: New test.
    	* testsuite/gas/arm/float16-bad.l: New test.
    	* testsuite/gas/arm/float16-bad.s: New test.
    	* testsuite/gas/arm/float16-be.d: New test.
    	* testsuite/gas/arm/float16-format-bad.d: New test.
    	* testsuite/gas/arm/float16-format-bad.l: New test.
    	* testsuite/gas/arm/float16-format-bad.s: New test.
    	* testsuite/gas/arm/float16-format-opt-bad.d: New test.
    	* testsuite/gas/arm/float16-format-opt-bad.l: New test.
    	* testsuite/gas/arm/float16-le.d: New test.
    	* testsuite/gas/arm/float16.s: New test.
    	* testsuite/gas/arm/float16-eabi-alternative-format.d: New test.
    	* testsuite/gas/arm/float16-eabi-ieee-format.d: New test.
    	* testsuite/gas/arm/float16-eabi-no-format.d: New test.
    	* testsuite/gas/arm/float16-eabi.s: New test.
    
    	* config/atof-ieee.c (H_PRECISION): Macro for precision of float16
    	type.
    	(atof_ieee): Set precision and exponent bits for encoding float16
    	types.
    	(gen_to_words): NaN and Infinity encoding for float16.
    	(ieee_md_atof): Set precision for encoding float16 type.

commit 9bb9c115cd3d0b9de97e02cf2e861972010daa6f
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Aug 12 11:15:19 2019 +0930

    PR24851, gas/testsuite/gas/epiphany/badrelax.s failure with MALLOC_PERTURB_=1
    
    	PR 24851
    	* config/tc-epiphany.c (md_estimate_size_before_relax): Clear
    	extra opcode bytes when changing from a 2-byte to a 4-byte insn.

commit b32b0a69fdf24a8b04efe9c2b90c3e830aa0c2c1
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Mon Aug 12 00:00:22 2019 +0000

    Automatic date update in version.in

commit acdb5f3476c4dd5a0f7182e2e96eafee3a84d856
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Sun Aug 11 00:00:54 2019 +0000

    Automatic date update in version.in

commit dc02848a69da5b8794a3d7094664e3b4d9a508cf
Author: Alan Modra <amodra@gmail.com>
Date:   Sat Aug 10 13:02:49 2019 +0930

    Sort statement_enum and lang_statement_union
    
    To make comparing the two easier.
    
    	* ldlang.h (enum statement_enum): Sort.
    	(union lang_statement_union): Sort.

commit 4cfbdbfd2607a2bcfb9f745410e34aea8f044a9b
Author: Alan Modra <amodra@gmail.com>
Date:   Sat Aug 10 12:35:20 2019 +0930

    Delete unused ldlang.h structs
    
    	* ldlang.h (lang_common_statement_type): Delete.
    	(lang_object_symbols_statement_type): Delete.
    	(union lang_statement_union): Remove common_statement and
    	object_symbols_statement.

commit 988de25b366c74cd62e35f3d5cf63086a964c7aa
Author: Alan Modra <amodra@gmail.com>
Date:   Sat Aug 10 12:28:31 2019 +0930

    stat_alloc casts
    
    Casts from a void* just clutter the source.
    
    	* ldexp.c (exp_intop, exp_bigintop, exp_relop, exp_binop, exp_trinop),
    	(exp_unop, exp_nameop, exp_assop, exp_assert): Remove casts of
    	stat_alloc return value.
    	* ldlang.c (new_statement, new_afile, sort_def_symbol),
    	(lang_memory_region_lookup, lang_memory_region_alias),
    	(ldlang_add_undef, ldlang_add_require_defined, insert_pad),
    	(lang_add_gc_name, lang_new_phdr): Likewise.
    	* lexsup.c (set_segment_start): Likewise.

commit 36983a93bb338b7cdd6f7d6f9f91dc9ce9815b4e
Author: Alan Modra <amodra@gmail.com>
Date:   Sat Aug 10 10:30:19 2019 +0930

    lang_input_statement_type next pointers
    
    "next" and "next_real_file" in lang_input_statement_type always point
    to another lang_input_statement_type, so it makes sense for these to
    not be the generic lang_statement_union_type.  This patch also updates
    a number of variables in ldlang.c for the same reason, and modifies
    lang_statement_append to reduce the need for casts.
    
    	* ldlang.h (lang_input_statement_type): Make next
    	and next_real_file a lang_input_statement_type pointer.
    	(lang_statement_append): Delete prototype.
    	(LANG_FOR_EACH_INPUT_STATEMENT): Update for lang_input_statement_type
    	change.
    	* ldmain.c (add_archive_element): Likewise.
    	* ldlang.c: Likewise throughout.
    	(lang_statement_append): Make static.  Make element and field
    	void pointers.  Remove casts in calls.
    	(lang_check): Use a lang_input_statement_type pointer for "file".
    	(find_rescan_insertion): Similarly for "iter" and return value.
    	(lang_process): Similarly for "insert", "iter" and "temp".
    	* emultempl/spuelf.em (embedded_spu_file): Likewise.
    	* emultempl/aix.em (gld${EMULATION_NAME}_before_allocation): Expand
    	lang_statment_append call.

commit 8be90e963138c88d7648c1eb2146e45f048d616e
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Sat Aug 10 00:00:29 2019 +0000

    Automatic date update in version.in

commit 020a839d52fb8a28059dadd075b09a2fec84ef74
Author: Sandra Loosemore <sandra@codesourcery.com>
Date:   Fri Aug 9 13:45:44 2019 -0700

    Match Windows pathnames in gdb.linespec/break-ask.exp.
    
    2019-08-09  Sandra Loosemore  <sandra@codesourcery.com>
    
    	gdb/testsuite/
    	* gdb.linespec/break-ask.exp: Generalize regexps to match
    	Windows pathnames too.

commit dac36daf78653a8e4688b825cdb15461a88470d2
Author: Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
Date:   Fri Aug 9 16:49:46 2019 -0300

    Fix access to uninitialized variable in fill_in_stop_func
    
    This patch changes find_pc_partial_function so that *block is set to
    nullptr when it fails, so that fill_in_stop_func won't access an
    uninitialized variable.
    
    gdb/ChangeLog:
    2019-08-09  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
    
    	* blockframe.c (find_pc_partial_function): Set *block to nullptr
    	when the function fails.

commit 1022c627dbd9d7f7f67ac68f16de05474de7a75a
Author: Andreas Arnez <arnez@linux.ibm.com>
Date:   Fri Aug 9 20:27:03 2019 +0200

    s390: Implement 'type_align' gdbarch method
    
    The align.exp test case yields many FAILs on s390x, since GDB's _Alignoff
    doesn't always agree with the compiler's.  On s390x, the maximum alignment
    is 8, but GDB returns an alignment of 16 for 16-byte data types such as
    "long double".
    
    This is fixed by implementing the type_align gdbarch method.  The new
    method returns an alignment of 8 for all integer, floating-point, and
    vector types larger than 8 bytes.  With this change, all align.exp tests
    pass.
    
    gdb/ChangeLog:
    
    	* s390-tdep.c (s390_type_align): New function.
    	(s390_gdbarch_init): Set it as type_align gdbarch method.

commit f211b8c0b91fc7b1657079a495f05a9a4d957821
Author: Nick Clifton <nickc@redhat.com>
Date:   Fri Aug 9 16:16:18 2019 +0100

    Synchronize libiberty sources with gcc mainline.
    
    	* libiberty: Sync with gcc.  Bring in:
    	2019-08-08  Martin Liska  <mliska@suse.cz>
    
    	PR bootstrap/91352
    	* lrealpath.c (is_valid_fd): New function.
    
    	2019-07-24  Martin Liska  <mliska@suse.cz>
    
    	PR lto/91228
    	* simple-object-elf.c (simple_object_elf_copy_lto_debug_sections):
    	Find first '\0' starting from gnu_lto + 1.
    
    	2019-07-12  Ren Kimura  <rkx1209dev@gmail.com>
    
    	* simple-object-elf.c (simple_object_elf_match): Check zero value shstrndx.
    	This fixes a Bug 90924.
    
    	2019-07-22  Martin Liska  <mliska@suse.cz>
    
    	* simple-object-elf.c (simple_object_elf_copy_lto_debug_sections):
    	Do not search for gnu_lto_v1, but search for first '\0'.
    
    	2019-07-18  Eduard-Mihai Burtescu  <eddyb@lyken.rs>
    
    	* cplus-dem.c: Include rust-demangle.h.
    	* rust-demangle.c: Include rust-demangle.h.
    	* rust-demangle.h: New file.
    
    	2019-05-31  Michael Forney  <mforney@mforney.org>
    
    	* cp-demangle.c: Don't define CP_DYNAMIC_ARRAYS if __STDC_NO_VLA__
    	is non-zero.
    
    	2019-04-30  Ben L  <bobsayshilol@live.co.uk>
    
    	* d-demangle.c (dlang_parse_assocarray): Correctly handle error result.
    	* testsuite/d-demangle-expected: Add testcase.
    
    	* d-demangle.c (dlang_parse_tuple): Correctly handle error result.
    	* testsuite/d-demangle-expected: Add testcase.
    
    	* d-demangle.c (dlang_parse_structlit): Correctly handle error result.
    	* testsuite/d-demangle-expected: Add testcase.
    
    	* d-demangle.c (dlang_parse_arrayliteral): Correctly handle error result.
    	* testsuite/d-demangle-expected: Add testcase.
    
    	* d-demangle.c (dlang_parse_integer): Fix stack underflow.
    	* testsuite/d-demangle-expected: Add testcase.
    
    	* cp-demangle (d_print_comp_inner): Guard against a NULL 'typed_name'.
    	* testsuite/demangle-expected: Add testcase.
    
    	* cp-demangle.c (d_encoding): Guard against NULL return values from
    	d_right (dc).
    	* testsuite/demangle-expected: Add testcase.
    
    	2019-04-29  Ben L  <bobsayshilol@live.co.uk>
    
    	* cp-demangle.c (d_expression_1): Don't peek ahead unless the current
    	char is valid.
    	* testsuite/demangle-expected: Add testcase.
    
    	2019-04-10  Nick Clifton  <nickc@redhat.com>
    
    	PR 89394
    	* cp-demangle.c (cplus_demangle_fill_name): Reject negative
    	lengths.
    	(d_count_templates_scopes): Replace num_templates and num_scopes
    	parameters with a struct d_print_info pointer parameter.  Adjust
    	body of the function accordingly.  Add recursion counter and check
    	that the recursion limit is not reached.
    	(d_print_init): Pass dpi parameter to d_count_templates_scopes.
    	Reset recursion counter afterwards, unless the recursion limit was
    	reached.

commit f16a9783c5f085443d806646074e9c06fdee9a88
Author: Mihailo Stojanovic <mihailo.stojanovic@rt-rk.com>
Date:   Fri Aug 9 11:06:37 2019 +0100

    Add support for a MIPS specific .MIPS.xhash section.
    
      This patch is a reimplementation of [1] which was submitted in 2015 by
    Neil Schellenberger. Copyright issue was sorted out [2] last year.
    It proposed a new section (.gnu.xhash) and related dynamic tag
    (DT_GNU_XHASH). The new section would be virtually identical to the
    existing .gnu.hash except for the translation table (xlat) which would
    contain correct MIPS .dynsym indexes corresponding to the hashvals in
    chains. This is because MIPS ABI imposes a different ordering on the
    dynsyms than the one expected by the .gnu.hash section. Another addition
    would be a leading word (ngnusyms) which would contain the number of
    entries in the translation table.
    
      In this patch, the new section name and dynamic tag are changed to
    reflect the fact that the section should be treated as MIPS-specific
    (.MIPS.xhash and DT_MIPS_XHASH).
    
      This patch addresses the alignment issue as reported in [3], which is
    caused by the leading word added to the .MIPS.xhash section. Leading word
    is removed in this patch, and the number of entries in the translation
    table is now calculated using DT_MIPS_SYMTABNO dynamic tag (this is
    addressed by the corresponding glibc patch).
    
      Suggestions on coding style in [4] were taken into account. Existing
    GNU hash testcase was covered, and another one was added in the MIPS
    part of the testsuite.
    
      The other major change is reserving MIPS ABI version 5 for .MIPS.xhash,
    marking the need of support for .MIPS.xhash in the dynamic linker (again,
    addressed in the corresponding glibc patch). This is something which I
    am not sure of, especially after reading [5]. I am confused on whether
    this ABI version is reserved for IFUNC, or it can be used for this
    purpose.
    
    Already mentioned glibc patch is submitted at:
    https://sourceware.org/ml/libc-alpha/2019-06/msg00456.html
    
    [1] https://sourceware.org/ml/binutils/2015-10/msg00057.html
    [2] https://sourceware.org/ml/binutils/2018-03/msg00025.html
    [3] https://sourceware.org/ml/binutils/2016-01/msg00006.html
    [4] https://sourceware.org/ml/binutils/2016-02/msg00097.html
    [5] https://sourceware.org/ml/libc-alpha/2016-12/msg00853.html
    
    ld      * emulparams/elf32bmip.sh: Add .MIPS.xhash section.
            * emulparams/elf32bmipn32-defs.sh: Add .MIPS.xhash section.
            * emulparams/elf64bmip-defs.sh: Add .MIPS.xhash section.
            * emultempl/mipself.em: Remove mips_after_parse function.
            * testsuite/ld-elf/hash.d: Update comment.
            * testsuite/ld-mips-elf/hash1.d: New test.
            * testsuite/ld-mips-elf/hash1.s: Ditto.
            * testsuite/ld-mips-elf/hash1a.d: Remove.
            * testsuite/ld-mips-elf/hash1b.d: Ditto.
            * testsuite/ld-mips-elf/hash1c.d: Ditto
            * testsuite/ld-mips-elf/hash2.d: New test.
            * testsuite/ld-mips-elf/mips-elf.exp: New tests.
            * testsuite/ld-mips-elf/start.s: New test.
    
    bfd     * elf-bfd.h (struct elf_backend_data): New members.
            * elflink.c (_bfd_elf_link_create_dynamic_sections): Create
            .gnu.hash section if necessary.
            (struct collect_gnu_hash_codes): New member.
            (elf_gnu_hash_process_symidx): New function name.
            (elf_renumber_gnu_hash_syms): Ignore local and undefined
            symbols. Record xlat location for every symbol which should have
            a .MIPS.xhash entry.
            (bfd_elf_size_dynamic_sections): Add DT_GNU_HASH dynamic tag to
            dynamic section if necessary.
            (GNU_HASH_SECTION_NAME): New define.
            (bfd_elf_size_dynsym_hash_dynstr): Get .MIPS.xhash section.
            Update the section size info.
            * elfxx-mips.c (struct mips_elf_hash_sort_data): New members.
            (struct mips_elf_link_hash_entry): New member.
            (mips_elf_link_hash_newfunc): Initialize .MIPS.xhash translation
            table location.
            (mips_elf_sort_hash_table): Initialize the pointer to the
            .MIPS.xhash section.
            (mips_elf_sort_hash_table_f): Populate the .MIPS.xhash
            translation table entry with the symbol dynindx.
            (_bfd_mips_elf_section_from_shdr): Add SHT_MIPS_XHASH.
            (_bfd_mips_elf_fake_sections): Initialize .MIPS.xhash section
            info.
            (_bfd_mips_elf_create_dynamic_sections): Create .MIPS.xhash
            section.
            (_bfd_mips_elf_size_dynamic_sections): Add DT_MIPS_XHASH tag to
            dynamic section.
            (_bfd_mips_elf_finish_synamic_sections): Add DT_MIPS_XHASH.
            (_bfd_mips_elf_final_write_processing): Set .MIPS.xhash section
            sh_link info.
            (_bfd_mips_elf_get_target_dtag): Get DT_MIPS_XHASH tag.
            (MIPS_LIBC_ABI_XHASH): New ABI version enum value.
            (_bfd_mips_post_process_headers): Mark the ABI version as
            MIPS_LIBC_ABI_XHASH if there exists a .MIPS.xhash section,
            but not a .hash section.
            (_bfd_mips_elf_record_xhash_symbol): New function. Record a
            position in the translation table, associated with the hash
            entry.
            * elfxx-mips.h (literal_reloc_p): Define
            elf_backend_record_xhash_symbol backend hook.
            * elfxx-target.h: Initialize elf_backend_record_xhash_symbol
            backend hook.
    
    include * elf/mips.h (SHT_GNU_XHASH): New define.
            (DT_GNU_XHASH): New define.
    
    binutils * readelf.c (get_mips_dynamic_type): Return MIPS_XHASH dynamic type.
            (get_mips_section_type_name): Return MI{S_XHASH name string.
            (dynamic_section_mips_val): Initialize the .MIPS.xhash dynamic
            info.
            (process_symbol_table): Initialize the .MIPS.xhash section
            pointer. Adjust the readelf output to support the new section.
            (process_object): Set the .MIPS.xhash dynamic info to zero.

commit 1ba7cdcd931ddf672e4a8a6483593f9b94e55965
Author: Alan Hayward <alan.hayward@arm.com>
Date:   Thu Aug 8 09:01:12 2019 +0100

    doc: fix PAC typo
    
    gdb/doc/ChangeLog:
    
    	* gdb.texinfo (AArch64 Pointer Authentication): Fix typo.

commit 2b2ed2452c0bd2437ff65e71356bece225f0be46
Author: Tamar Christina <tamar.christina@arm.com>
Date:   Fri Aug 9 09:06:50 2019 +0100

    Arm: Skip tests on WINCE that require mapping symbols
    
    The following tests fail on wince as they rely on mapping symbols to
    give them a fixed order.
    
    This skips them on platforms that don't have mapping symbols.
    
    binutils/ChangeLog:
    
    	* testsuite/binutils-all/arm/in-order-all.d: Skip on pe, wince, coff.
    	* testsuite/binutils-all/arm/in-order.d: Likewise.
    	* testsuite/binutils-all/arm/out-of-order-all.d: Likewise.
    	* testsuite/binutils-all/arm/out-of-order.d: Likewise.

commit 678581fc78cffcfd1423b557368c3a0cfb695b87
Author: Jan Beulich <jbeulich@suse.com>
Date:   Fri Aug 9 09:57:57 2019 +0200

    x86-64: generalize SIMD test expectations
    
    In order to be able to add/remove insns to/from the middle of these
    tests, generalize the patterns for the symbol reference comments of RIP-
    relative operands.

commit eba4caf23152a1a66d10ce37c502ec78654cd5eb
Author: Tom de Vries <tdevries@suse.de>
Date:   Fri Aug 9 06:49:04 2019 +0200

    [gdb] Fix gdb.dwarf2/varval.exp with -fPIE/-pie
    
    With target board unix/-fPIE/-pie, we get:
    ...
    FAIL: gdb.dwarf2/varval.exp: print varval2
    ...
    
    This is due comparing a get_frame_pc result (which includes the for PIE
    non-zero relocation offset) with pc_high and pc_low obtained using
    get_scope_pc_bounds (which do not include the relocation offset).
    
    Fix this by adjusting pc_high and pc_low with the relocation offset.
    
    Tested on x86_64-linux with target board unix/-fPIE/-pie.
    
    gdb/ChangeLog:
    
    2019-08-09  Tom de Vries  <tdevries@suse.de>
    
    	PR gdb/24591
    	* dwarf2read.c (dwarf2_fetch_die_loc_sect_off): Adjust pc_high and
    	pc_low with relocation offset.

commit 378646f7a4260eecd244ba840ae1af4e663e30a5
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Fri Aug 9 00:00:09 2019 +0000

    Automatic date update in version.in

commit 128d6509819d9d4fe6f52d1a5dcc458b9cbd0f4c
Author: Tom de Vries <tdevries@suse.de>
Date:   Thu Aug 8 22:26:28 2019 +0200

    [gdb/testsuite] Fix gdb.tui/basic.exp with check-read1
    
    With gdb.tui/basic.exp and check-read1, we run into (using -v for
    verbose log):
    ...
    ^[[0+++ _csi_0 <<<>>>
    ERROR: (DejaGnu) proc "_csi_0" does not exist.
    ...
    
    In contrast, without check-read1, we have:
    ...
    ^[[0;10m<SNIP>+++ _csi_m <<<0;10>>>
    ...
    
    The problem is that this regexp in _accept:
    ...
               -re "^\x1b\\\[(\[0-9;\]*)(\[0-9a-zA-Z@\])" {
    ...
    while matching the longer sequence '^[' '[' '0' ';' '1' '0' 'm', also matches
    the shorter sequence '^[' '[' '0'.
    
    The regexp attempts to match a CSI (Control Sequence Introducer) sequence, and
    the final byte of such a sequence cannot be a digit.
    
    Fix the regexp accordingly:
    ...
    -           -re "^\x1b\\\[(\[0-9;\]*)(\[0-9a-zA-Z@\])" {
    +           -re "^\x1b\\\[(\[0-9;\]*)(\[a-zA-Z@\])" {
    ...
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-08-08  Tom de Vries  <tdevries@suse.de>
    
    	PR testsuite/24862
    	* lib/tuiterm.exp (_accept): Fix CSI regexp.

commit dbe15e4e1dda8e20cc347ced751631d49a5f57de
Author: Nick Clifton <nickc@redhat.com>
Date:   Thu Aug 8 17:04:31 2019 +0100

    Change the output of readelf's note display so that the "Data size" column header is left justified.
    
    	PR 24887
    binutils* readelf.c (process_notes_at): Left justify the "Data size"
    	column heading.
    	* testsuite/binutils-all/i386/empty.d: Adjust for new output format.
    	* testsuite/binutils-all/i386/ibt.d: Likewise.
    	* testsuite/binutils-all/i386/pr21231a.d: Likewise.
    	* testsuite/binutils-all/i386/pr21231b.d: Likewise.
    	* testsuite/binutils-all/i386/shstk.d: Likewise.
    	* testsuite/binutils-all/note-2-32.d: Likewise.
    	* testsuite/binutils-all/note-2-64.d: Likewise.
    	* testsuite/binutils-all/x86-64/empty-x32.d: Likewise.
    	* testsuite/binutils-all/x86-64/empty.d: Likewise.
    	* testsuite/binutils-all/x86-64/ibt-x32.d: Likewise.
    	* testsuite/binutils-all/x86-64/ibt.d: Likewise.
    	* testsuite/binutils-all/x86-64/pr21231a.d: Likewise.
    	* testsuite/binutils-all/x86-64/pr21231b.d: Likewise.
    	* testsuite/binutils-all/x86-64/pr23494a-x32.d: Likewise.
    	* testsuite/binutils-all/x86-64/pr23494a.d: Likewise.
    	* testsuite/binutils-all/x86-64/pr23494c-x32.d: Likewise.
    	* testsuite/binutils-all/x86-64/pr23494c.d: Likewise.
    	* testsuite/binutils-all/x86-64/pr23494d-x32.d: Likewise.
    	* testsuite/binutils-all/x86-64/pr23494d.d: Likewise.
    	* testsuite/binutils-all/x86-64/pr23494e-x32.d: Likewise.
    	* testsuite/binutils-all/x86-64/pr23494e.d: Likewise.
    	* testsuite/binutils-all/x86-64/shstk-x32.d: Likewise.
    	* testsuite/binutils-all/x86-64/shstk.d: Likewise.
    
    ld	* testsuite/ld-aarch64/bti-plt-2.d: Adjust for new output format
    	from readelf.
    	* testsuite/ld-aarch64/bti-plt-4.d: Likewise.
    	* testsuite/ld-aarch64/bti-plt-6.d: Likewise.
    	* testsuite/ld-aarch64/bti-plt-7.d: Likewise.
    	* testsuite/ld-aarch64/bti-warn.d: Likewise.
    	* testsuite/ld-aarch64/property-bti-pac1.d: Likewise.
    	* testsuite/ld-aarch64/property-bti-pac2.d: Likewise.
    	* testsuite/ld-aarch64/property-bti-pac3.d: Likewise.
    	* testsuite/ld-elf/x86-feature-1a.rd: Likewise.
    	* testsuite/ld-elf/x86-feature-1b.rd: Likewise.
    	* testsuite/ld-elf/x86-feature-1c.rd: Likewise.
    	* testsuite/ld-elf/x86-feature-1d.rd: Likewise.
    	* testsuite/ld-elf/x86-feature-1e.rd: Likewise.
    	* testsuite/ld-i386/ibt-plt-2d.d: Likewise.
    	* testsuite/ld-i386/ibt-plt-3d.d: Likewise.
    	* testsuite/ld-i386/pr23372a.d: Likewise.
    	* testsuite/ld-i386/pr23372c.d: Likewise.
    	* testsuite/ld-i386/pr23486a.d: Likewise.
    	* testsuite/ld-i386/pr23486b.d: Likewise.
    	* testsuite/ld-i386/pr23486c.d: Likewise.
    	* testsuite/ld-i386/pr23486d.d: Likewise.
    	* testsuite/ld-i386/pr24322a.d: Likewise.
    	* testsuite/ld-i386/pr24322b.d: Likewise.
    	* testsuite/ld-i386/property-x86-3.d: Likewise.
    	* testsuite/ld-i386/property-x86-4a.d: Likewise.
    	* testsuite/ld-i386/property-x86-5.d: Likewise.
    	* testsuite/ld-i386/property-x86-cet1.d: Likewise.
    	* testsuite/ld-i386/property-x86-cet2a.d: Likewise.
    	* testsuite/ld-i386/property-x86-cet5a.d: Likewise.
    	* testsuite/ld-i386/property-x86-cet5b.d: Likewise.
    	* testsuite/ld-i386/property-x86-ibt1a.d: Likewise.
    	* testsuite/ld-i386/property-x86-ibt1b.d: Likewise.
    	* testsuite/ld-i386/property-x86-ibt2.d: Likewise.
    	* testsuite/ld-i386/property-x86-ibt3a.d: Likewise.
    	* testsuite/ld-i386/property-x86-ibt3b.d: Likewise.
    	* testsuite/ld-i386/property-x86-ibt4.d: Likewise.
    	* testsuite/ld-i386/property-x86-ibt5.d: Likewise.
    	* testsuite/ld-i386/property-x86-shstk1a.d: Likewise.
    	* testsuite/ld-i386/property-x86-shstk1b.d: Likewise.
    	* testsuite/ld-i386/property-x86-shstk2.d: Likewise.
    	* testsuite/ld-i386/property-x86-shstk3a.d: Likewise.
    	* testsuite/ld-i386/property-x86-shstk3b.d: Likewise.
    	* testsuite/ld-i386/property-x86-shstk4.d: Likewise.
    	* testsuite/ld-i386/property-x86-shstk5.d: Likewise.
    	* testsuite/ld-x86-64/ibt-plt-2d-x32.d: Likewise.
    	* testsuite/ld-x86-64/ibt-plt-2d.d: Likewise.
    	* testsuite/ld-x86-64/ibt-plt-3d-x32.d: Likewise.
    	* testsuite/ld-x86-64/ibt-plt-3d.d: Likewise.
    	* testsuite/ld-x86-64/pr23372a-x32.d: Likewise.
    	* testsuite/ld-x86-64/pr23372a.d: Likewise.
    	* testsuite/ld-x86-64/pr23372c-x32.d: Likewise.
    	* testsuite/ld-x86-64/pr23372c.d: Likewise.
    	* testsuite/ld-x86-64/pr23486a-x32.d: Likewise.
    	* testsuite/ld-x86-64/pr23486a.d: Likewise.
    	* testsuite/ld-x86-64/pr23486b-x32.d: Likewise.
    	* testsuite/ld-x86-64/pr23486b.d: Likewise.
    	* testsuite/ld-x86-64/pr23486c-x32.d: Likewise.
    	* testsuite/ld-x86-64/pr23486c.d: Likewise.
    	* testsuite/ld-x86-64/pr23486d-x32.d: Likewise.
    	* testsuite/ld-x86-64/pr23486d.d: Likewise.
    	* testsuite/ld-x86-64/pr24322a-x32.d: Likewise.
    	* testsuite/ld-x86-64/pr24322a.d: Likewise.
    	* testsuite/ld-x86-64/pr24322b-x32.d: Likewise.
    	* testsuite/ld-x86-64/pr24322b.d: Likewise.
    	* testsuite/ld-x86-64/pr24458a-x32.d: Likewise.
    	* testsuite/ld-x86-64/pr24458a.d: Likewise.
    	* testsuite/ld-x86-64/pr24458b-x32.d: Likewise.
    	* testsuite/ld-x86-64/pr24458b.d: Likewise.
    	* testsuite/ld-x86-64/pr24458c-x32.d: Likewise.
    	* testsuite/ld-x86-64/pr24458c.d: Likewise.
    	* testsuite/ld-x86-64/property-1.r: Likewise.
    	* testsuite/ld-x86-64/property-1a.r: Likewise.
    	* testsuite/ld-x86-64/property-2.r: Likewise.
    	* testsuite/ld-x86-64/property-2a.r: Likewise.
    	* testsuite/ld-x86-64/property-3.r: Likewise.
    	* testsuite/ld-x86-64/property-3a.r: Likewise.
    	* testsuite/ld-x86-64/property-4.r: Likewise.
    	* testsuite/ld-x86-64/property-4a.r: Likewise.
    	* testsuite/ld-x86-64/property-5.r: Likewise.
    	* testsuite/ld-x86-64/property-5a.r: Likewise.
    	* testsuite/ld-x86-64/property-6.r: Likewise.
    	* testsuite/ld-x86-64/property-7.r: Likewise.
    	* testsuite/ld-x86-64/property-7a.r: Likewise.
    	* testsuite/ld-x86-64/property-x86-3-x32.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-3.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-4a-x32.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-4a.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-5-x32.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-5.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-cet1-x32.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-cet1.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-cet2a-x32.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-cet2a.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-cet5a-x32.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-cet5a.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-cet5b-x32.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-cet5b.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-ibt1a-x32.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-ibt1a.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-ibt1b-x32.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-ibt1b.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-ibt2-x32.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-ibt2.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-ibt3a-x32.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-ibt3a.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-ibt3b-x32.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-ibt3b.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-ibt4-x32.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-ibt4.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-ibt5-x32.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-ibt5.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-shstk1a-x32.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-shstk1a.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-shstk1b-x32.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-shstk1b.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-shstk2-x32.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-shstk2.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-shstk3a-x32.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-shstk3a.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-shstk3b-x32.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-shstk3b.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-shstk4-x32.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-shstk4.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-shstk5-x32.d: Likewise.
    	* testsuite/ld-x86-64/property-x86-shstk5.d: Likewise.
    
    gas	* testsuite/gas/i386/property-1.d: Adjust for new output format
    	from readelf.
    	* testsuite/gas/i386/property-2.d: Likewise.
    	* testsuite/gas/i386/x86-64-property-1.d: Likewise.
    	* testsuite/gas/i386/x86-64-property-2.d: Likewise.

commit 7b1dd701059ead8f3af3c081fc9727b9883a74c3
Author: Yoshinori Sato <ysato@users.sourceforge.jp>
Date:   Thu Aug 8 13:59:17 2019 +0100

    Update the handling of shift rotate  and load/store multiple instructions in the H8300 assembler.
    
    incldue	* opcode/h8300.h (EXPAND_UNOP_EXTENDED_B): Add MODEL.
    	(EXPAND_UNOP_EXTENDED_W): Likewise.
    	(EXPAND_UNOP_EXTENDED_L): Likewise.
    	(struct h8_opcode h8_opcodes): Likewise.
    	(struct h8_opcode h8_opcodes): tas / ldm / stm supported H8S or
    	later.

commit 8fb49c3c715190a5753980d0ddef721d816bbc3d
Author: Yoshinori Sato <ysato@users.sourceforge.jp>
Date:   Thu Aug 8 13:43:13 2019 +0100

    Move the h8300 assembler's MOVFPE and MOVTPE tests to the correct location.
    
    	* gas/testsuite/gas/h8300/h8300.exp: Fix movfpe and movtpe tests.
    	* gas/testsuite/gas/h8300/misc.s: Likewise.
    	* gas/testsuite/gas/h8300/misch.s: Likewise.
    	* gas/testsuite/gas/h8300/miscs.s: Likewise.

commit 7d55c1d61edfef2323f5d4675f0367ffb411c3cb
Author: Nick Clifton <nickc@redhat.com>
Date:   Thu Aug 8 10:24:08 2019 +0100

    Fix problem building PE DLL test generator with compilers that do not support c99/c11.
    
    	* testsuite/gentestdlls.c (main): Move declaration of loop
    	variable outside of the for() statement.

commit 178d871928b99112a39e0ca1284d6bbdde50ab6e
Author: Jordan Rupprecht via binutils <binutils@sourceware.org>
Date:   Wed Aug 7 13:48:14 2019 -0700

    readelf: mask unknown description data bytes.
    
    When printing unknown note types, readelf prints the raw description
    section byte-by-byte. However, it does not mask appropriately, e.g. it
    prints the byte 'ba' as 'ffffffba'.
    
    	* readelf.c (process_note): Mask unknown description data bytes.

commit b1791af06ec358d21dbe6a99129f11cc02438962
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Thu Aug 8 00:00:22 2019 +0000

    Automatic date update in version.in

commit d88bdcb4a52bc041ed9b607dda22f478ec61a67b
Author: Phillipe Antoine <p.antoine@catenacyber.fr>
Date:   Wed Aug 7 17:22:29 2019 +0100

    Prevent objdump from aborting when asked to disassemble an unknown type of ARC binary file.
    
    	PR 24854
    	* arc-dis.c (arc_insn_length): Return 0 rather than aborting when
    	encountering an unknown machine type.
    	(print_insn_arc): Handle arc_insn_length returning 0.  In error
    	cases return -1 rather than calling abort.

commit 7c1c1904bedb8f873731651b420a23f573785728
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Aug 7 23:37:49 2019 +0930

    Integer overflows in readelf get_data
    
    I noticed the test for overflow of amt = size * nmemb in get_data
    wasn't effective.  An obvious example of nmemb = 3 and size = half max
    value overflows but doesn't result in amt < nmemb.  This patch fixes
    this problem and reports a size truncation or overflow rather than out
    of memory in more cases.
    
    	* readelf.c (get_data): Improve overflow checks.

commit f927cc8faff0d2e39561c90f5182ebe99b2f77f6
Author: Nick Clifton <nickc@redhat.com>
Date:   Wed Aug 7 15:15:59 2019 +0100

    Improve the formatting of the title strings of the binutils manual pages.
    
    	PR 24777
    	* doc/binutils.texi: Ensure consistent formating of title strings
    	for man pages.  Extend the title of the size man page to be more
    	informative.

commit 123cd851480c728845a4c3f85da772dd8331cf19
Author: Tom Tromey <tromey@adacore.com>
Date:   Tue Aug 6 13:50:03 2019 -0600

    Make struct frame_arg self-managing
    
    This changes struct frame_arg to be self-managing and then fixes the
    various users.
    
    Tested by the buildbot.
    
    gdb/ChangeLog
    2019-08-07  Tom Tromey  <tromey@adacore.com>
    
    	* stack.c (print_frame_arg, read_frame_local, read_frame_arg)
    	(print_frame_args): Update.
    	* python/py-framefilter.c (py_print_single_arg, enumerate_args):
    	Update.
    	* mi/mi-cmd-stack.c (list_arg_or_local): Update.
    	* frame.h (struct frame_arg): Add initializers.
    	<error>: Now a unique_xmalloc_ptr.

commit 3d31bc39e655ea39721754fa0ea539a8a0c9b26c
Author: Alan Hayward <alan.hayward@arm.com>
Date:   Wed Aug 7 09:47:57 2019 +0100

    AArch64 pauth: Indicate unmasked addresses in backtrace
    
    Armv8.3-a Pointer Authentication causes the function return address to be
    obfuscated on entry to some functions. GDB must unmask the link register in
    order to produce a backtrace.
    
    The following patch adds markers of [PAC] to the bracktrace, to indicate
    which addresses needed unmasking.  This includes the backtrace when using MI.
    
    For example, consider the following backtrace:
    
    (gdb) bt
    0  0x0000000000400490 in puts@plt ()
    1  0x00000000004005dc in foo ("hello") at cbreak-lib.c:6
    2  0x0000000000400604 [PAC] in bar () at cbreak-lib.c:12
    3  0x0000000000400620 [PAC] in main2 () at cbreak.c:17
    4  0x00000000004005b4 in main () at cbreak-3.c:10
    
    The functions in cbreak-lib use pointer auth, which masks the return address
    to the previous function, causing the addresses of bar (in the library) and main2
    (in the main binary) to require unmasking in order to unwind the backtrace.
    
    An extra bool is added alongside the prev_pc in the frame structure.  At the
    point at which the link register is unmasked, the AArch64 port calls into frame
    to sets the bool.  This is the most efficient way of doing it.
    
    The marker is also added to the python frame printer, which is always printed if
    set.  The marker is not explicitly exposed to the python code.
    
    I expect this will potentially cause issues with some tests in the testsuite
    when Armv8.3 pointer authentication is used.  This should be fixed up in the
    the future once real hardware is available for full testsuite testing.
    
    gdb/ChangeLog:
    
            * NEWS: Expand the Pointer Authentication entry.
            * aarch64-tdep.c (aarch64_frame_unmask_address): Rename from this.
            (aarch64_frame_unmask_lr): ... to this.
            (aarch64_prologue_prev_register, aarch64_dwarf2_prev_register):
            Call aarch64_frame_unmask_lr.
            * frame.c (struct frame_info): Add "masked" variable.
            (frame_set_previous_pc_masked) (frame_get_pc_masked): New functions.
            (fprint_frame): Check for masked pc.
            * frame.h (frame_set_previous_pc_masked) (frame_get_pc_masked): New
            declarations.
    	* python/py-framefilter.c (py_print_frame): Check for masked pc.
            * stack.c (print_frame): Check for masked pc.
    
    gdb/doc/ChangeLog:
    
            * gdb.texinfo (AArch64 Pointer Authentication): New subsection.

commit fca8e23c31e6ec37bdcb5cf1d981a39d1e6fb6f6
Author: Jose E. Marchesi <jose.marchesi@oracle.com>
Date:   Wed Aug 7 11:40:55 2019 +0200

    ld: use a specific linker script in BPF targets
    
    This patch makes the elf64bpf emulation to use it's own linker script,
    based on elf.sc.  At the moment, the only change is that the BPF
    executable doesn't define an entry symbol (BPF programs feature
    several entry points scattered in several sections.)
    
    This is a step towards the goal of generating proper ELF executables
    that would be loaded by the kernel's libbpf.  We are not there yet:
    BPF "programs" should still be linked with -r.
    
    This change removes a warning while linking executables, decreases the
    number of unsupported tests in the target from 47 to 29, and increases
    the number of expected passes from 104 to 145.
    
    Regtested in x86_64 for all targets.
    No regressions.
    
    ld/ChangeLog:
    
    2019-08-07  Jose E. Marchesi  <jose.marchesi@oracle.com>
    
    	* scripttempl/elf64bpf.sc: Adapted from elf.sc.
    	* emulparams/elf64bpf.sh (SCRIPT_NAME): Use elf64bpf.
    	(EMBEDDED): Define.
    	* testsuite/ld-bpf/call-1.d: Do not expect a warning regarding an
    	undefined entry symbol.
    	* testsuite/ld-bpf/jump-1.d: Likewise.
    	* testsuite/ld-undefined/undefined.exp: Do not pass '-e entry' to
    	ld in BPF targets, and do not expect line number information.
    	* testsuite/ld-srec/srec.exp (run_srec_test): xfail s-record tests
    	in BPF targets.

commit fc8de8e227e5146336d654f2fb4f98010d7cf12d
Author: Jose E. Marchesi <jose.marchesi@oracle.com>
Date:   Wed Aug 7 11:33:13 2019 +0200

    bfd: use the ELF linker to perform relocations in BPF targets
    
    This patch changes the eBPF linker to provide a relocate_section
    function instead of relying on using special functions in relocation
    howtos.
    
    Tested in x86_64 host.
    No regressions.
    
    bfd/ChangeLog:
    
    2019-08-07  Jose E. Marchesi  <jose.marchesi@oracle.com>
    
    	* elf64-bpf.c (bpf_elf_relocate_section): New function.
    	(bpf_elf_insn_disp_reloc): Delete function.
    	(elf_backend_relocate_section): Define.

commit 97b031c5d6d42ff2b1758a8a8c332cb44ba9c06f
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Aug 7 18:53:09 2019 +0930

    PR24644, OOM-Bug in _bfd_archive_64_bit_slurp_armap
    
    	PR 24644
    	* archive64.c (_bfd_archive_64_bit_slurp_armap): Properly check
    	for overflow in expressions involving nsymz.

commit 7cd00957a57f8d8195baf7a85ea21b879bbbaf91
Author: Omair Majid <omajid@redhat.com>
Date:   Wed Aug 7 10:20:56 2019 +0100

    Fix the binutils test for .NET assembly support so that it distinguishing between targets which do not support the x86 PE format at all, and those that do support it, but which do not recognise the .NET assembly variants.
    
    	* testsuite/binutils-all/objdump.exp
    	(test_objdump_dotnet_assemblies): Fix test to distinguish errors
    	in parsing simple pei-i386 and pei-x86-64 vs parsing the newly
    	introduced machine types.
    	* testsuite/gentestdlls.c (write_simple_dll): New function.
    	(main): Generate simple and Linux-specific variants of pei-i386
    	and pei-x86-64 files so both can be used by tests.

commit bc750500af6d0a6cb602a5d00b3f71b26ce96762
Author: Jan Beulich <jbeulich@suse.com>
Date:   Wed Aug 7 10:46:52 2019 +0200

    x86: drop stray FloatMF
    
    The flag is supposed to be used in templates which allow for both a
    "short" and a "long" format memory operand. Drop it from templates not
    matching this pattern. In the control/status word cases it was (ab)used
    in place of the intended IgnoreSize.

commit 906799036a9bcc2b6f27fbcf894092bdc03f6da9
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Aug 7 11:50:28 2019 +0930

    PR24876, readelf: heap-buffer-overflow in dump_ia64_unwind
    
    	PR 24876
    	* readelf.c (dump_ia64_unwind): Check that buffer is large
    	enough for "stamp" before reading.

commit 0cf9feb996cb32939840b13073a49310b1fd71e0
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jul 13 12:13:15 2019 -0600

    Introduce obstack_strndup
    
    This introduces obstack_strndup and changes gdb to use it.
    
    Note that obstack_strndup works like savestring, and not exactly like
    xstrndup.  The difference is that obstack_strndup uses the passed-in
    length, while xstrndup uses strnlen to choose the length.
    
    gdb/ChangeLog
    2019-08-06  Tom Tromey  <tom@tromey.com>
    
    	* stabsread.c (patch_block_stabs, read_one_struct_field)
    	(read_enum_type): Use obstack_strndup.
    	* rust-exp.y (rust_parser::copy_name): Use obstack_strndup.
    	* gdb_obstack.h (obstack_strndup): Use obstack_strndup.
    	* dwarf2read.c (guess_full_die_structure_name)
    	(anonymous_struct_prefix): Use obstack_strndup.
    	* dbxread.c (cp_set_block_scope): Use obstack_strndup.
    	* c-exp.y (yylex): Use obstack_strndup.
    	* ada-exp.y (write_object_renaming, write_ambiguous_var)
    	(write_var_or_type): Use obstack_strndup.

commit efba19b06a6f2baacb3920599f970d1333ffc358
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jul 13 12:09:51 2019 -0600

    Add obstack_strdup overload taking a std::string
    
    This adds an obstack_strdup overload that takes a std::string, and
    changes a few spots in gdb to use it.
    
    gdb/ChangeLog
    2019-08-06  Tom Tromey  <tom@tromey.com>
    
    	* symfile.c (reread_symbols): Use obstack_strdup.
    	* stabsread.c (read_type): Use obstack_strdup.
    	* gdb_obstack.h (obstack_strdup): New overload.
    	* dwarf2read.c (dwarf2_compute_name, create_dwo_unit_in_dwp_v1)
    	(create_dwo_unit_in_dwp_v2, build_error_marker_type)
    	(dwarf2_canonicalize_name): Use obstack_strdup.
    	* dbxread.c (read_dbx_symtab): Use obstack_strdup.
    	* cp-support.c (inspect_type, replace_typedefs_qualified_name):
    	Use obstack_strdup.

commit f25102f7b100337923d2c81ecc12a64d428e98fe
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jul 13 12:03:07 2019 -0600

    Make obstack_strdup inline
    
    This changes obstack_strdup to be an inline function.  This seems
    better to me, considering how small it is; but also it follows what
    the code did before the previous patch.
    
    gdb/ChangeLog
    2019-08-06  Tom Tromey  <tom@tromey.com>
    
    	* gdb_obstack.h (obstack_strdup): Define.
    	* gdb_obstack.c (obstack_strdup): Don't define.

commit 021887d88a040cf39f3afbd7da10bbe3ff1ad6c3
Author: Tom Tromey <tom@tromey.com>
Date:   Sat May 18 15:56:03 2019 -0600

    Use obstack_strdup more
    
    This changes gdb to use obstack_strdup when appropriate, rather than
    the wordier obstack_copy0.
    
    gdb/ChangeLog
    2019-08-06  Tom Tromey  <tom@tromey.com>
    
    	* xcoffread.c (SYMNAME_ALLOC, process_xcoff_symbol): Use
    	obstack_strdup.
    	* typeprint.c (typedef_hash_table::find_global_typedef): Use
    	obstack_strdup.
    	* symfile.c (allocate_compunit_symtab): Use obstack_strdup.
    	* stabsread.c (common_block_start): Use obstack_strdup.
    	* objfiles.c (set_objfile_main_name, objfile): Use
    	obstack_strdup.
    	* namespace.c (add_using_directive): Use obstack_strdup.
    	* mdebugread.c (parse_symbol, parse_type): Use obstack_strdup.
    	* jit.c (finalize_symtab): Use obstack_strdup.
    	* dwarf2read.c (fixup_go_packaging, dwarf2_physname)
    	(guess_partial_die_structure_name, partial_die_info::fixup)
    	(dwarf2_name): Use obstack_strdup.
    	* coffread.c (coff_read_struct_type, coff_read_enum_type): Use
    	obstack_strdup.
    	* c-exp.y (scan_macro_expansion): Use obstack_strdup.
    	* buildsym.c (buildsym_compunit::end_symtab_with_blockvector): Use
    	obstack_strdup.
    	* ada-lang.c (ada_decode_symbol): Use obstack_strdup.

commit b3c6d7ff98954032a3e7989dbd1f50f041e010bb
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Wed Aug 7 00:00:50 2019 +0000

    Automatic date update in version.in

commit d2834edcb67b9d9bd7163868fa0239948a2e57b7
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date:   Wed Jul 31 22:44:13 2019 +0200

    Add a selftest that checks documentation invariants.
    
    Several approaches were discussed (mail or irc) to verify the invariants of
    the GDB help documentation : checking with apropos ., modifying add_cmd
    to do the check and output a warning, implement maintenance check-doc.
    
    A selftest was finally chosen as:
      * this can be run on demand, including by users if they want
        to check user defined commands.
      * it does not interact with the normal behaviour of apropos, define,
        python, ...
        (such as output warnings when a user defines a command help that
         does not respect the doc).
      * when the selftest runs, it checks the user defined and python
        defined commands currently defined.
    
    gdb/ChangeLog
    	* unittests/help-doc-selftests.c: New file.
    	* Makefile.in: Add the new file.

commit 590042fc45f857c981bee4e0c76f6b3b528a224e
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date:   Sun Jun 9 11:16:20 2019 +0200

    Make first and last lines of 'command help documentation' consistent.
    
    With this patch, the help docs now respect 2 invariants:
      * The first line of a command help is terminated by a '.' character.
      * The last character of a command help is not a newline character.
    
    Note that the changes for the last invariant were done by Tom, as part of :
     [PATCH] Remove trailing newlines from help text
     https://sourceware.org/ml/gdb-patches/2019-06/msg00050.html
    but some occurrences have been re-introduced since then.
    
    Some help docs had to be rephrased/restructured to respect the above
    invariants.
    
    Before this patch, print_doc_line was printing the first line
    of a command help documentation, but stopping at the first '.'
    or ',' character.
    
    This was giving inconsistent results :
      * The first line of command helps was sometimes '.' terminated,
        sometimes not.
      * The first line of command helps was not always designed to be
        readable/understandable/unambiguous when stopping at the first
        '.' or ',' character.
    
    This e.g. created the following inconsistencies/problems:
    < catch exception -- Catch Ada exceptions
    < catch handlers -- Catch Ada exceptions
    < catch syscall -- Catch system calls by their names
    < down-silently -- Same as the `down' command
    while the new help is:
    > catch exception -- Catch Ada exceptions, when raised.
    > catch handlers -- Catch Ada exceptions, when handled.
    > catch syscall -- Catch system calls by their names, groups and/or numbers.
    > down-silently -- Same as the `down' command, but does not print anything.
    
    Also, the command help doc should not be terminated by a newline
    character, but this was not respected by all commands.
    The cli-option -OPT framework re-introduced some occurences.
    So, the -OPT build help framework was changed to not output newlines at the
    end of %OPTIONS% replacement.
    
    This patch changes the help documentations to ensure the 2 invariants
    given above.
    
    It implied to slightly rephrase or restructure some help docs.
    
    Based on the above invariants, print_doc_line (called by
    'apropos' and 'help' commands to print the first line of a command
    help) now outputs the full first line of a command help.
    
    This all results in a lot of small changes in the produced help docs.
    There are less code changes than changes in the help docs, as a lot
    of docs are produced by some code (e.g. the remote packet usage settings).
    
    gdb/ChangeLog
    2019-08-07  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
    
    	* cli/cli-decode.h (print_doc_line): Add for_value_prefix argument.
    	* cli/cli-decode.c (print_doc_line): Likewise.  It now prints
    	the full first line, except when FOR_VALUE_PREFIX.  In this case,
    	the trailing '.' is not output, and the first character is uppercased.
    	(print_help_for_command): Update call to print_doc_line.
    	(print_doc_of_command): Likewise.
    	* cli/cli-setshow.c (deprecated_show_value_hack): Likewise.
    	* cli/cli-option.c (append_indented_doc): Do not append newline.
    	(build_help_option): Append newline after first appended_indented_doc
    	only if a second call is done.
    	(build_help): Append 2 new lines before each option, except the first
    	one.
    	* compile/compile.c (_initialize_compile): Add new lines after
    	%OPTIONS%, when not at the end of the help.
    	Change help doc or code
    	producing the help doc to respect the invariants.
    	* maint-test-options.c (_initialize_maint_test_options): Likewise.
    	Also removed the new line after 'Options:', as all other commands
    	do not put an empty line between 'Options:' and the first option.
    	* printcmd.c (_initialize_printcmd): Likewise.
    	* stack.c (_initialize_stack): Likewise.
    	* interps.c (interpreter_exec_cmd): Fix "Usage:" line that was
    	incorrectly telling COMMAND is optional.
    	* ada-lang.c (_initialize_ada_language): Change help doc or code
    	producing the help doc to respect the invariants.
    	* ada-tasks.c (_initialize_ada_tasks): Likewise.
    	* breakpoint.c (_initialize_breakpoint): Likewise.
    	* cli/cli-cmds.c (_initialize_cli_cmds): Likewise.
    	* cli/cli-logging.c (_initialize_cli_logging): Likewise.
    	* cli/cli-setshow.c (_initialize_cli_setshow): Likewise.
    	* cli/cli-style.c (cli_style_option::add_setshow_commands,
    	_initialize_cli_style): Likewise.
    	* corelow.c (core_target_info): Likewise.
    	* dwarf-index-cache.c (_initialize_index_cache): Likewise.
    	* dwarf2read.c (_initialize_dwarf2_read): Likewise.
    	* filesystem.c (_initialize_filesystem): Likewise.
    	* frame.c (_initialize_frame): Likewise.
    	* gnu-nat.c (add_task_commands): Likewise.
    	* infcall.c (_initialize_infcall): Likewise.
    	* infcmd.c (_initialize_infcmd): Likewise.
    	* interps.c (_initialize_interpreter): Likewise.
    	* language.c (_initialize_language): Likewise.
    	* linux-fork.c (_initialize_linux_fork): Likewise.
    	* maint-test-settings.c (_initialize_maint_test_settings): Likewise.
    	* maint.c (_initialize_maint_cmds): Likewise.
    	* memattr.c (_initialize_mem): Likewise.
    	* printcmd.c (_initialize_printcmd): Likewise.
    	* python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq,
    	_RegEx): Likewise.
    	* ravenscar-thread.c (_initialize_ravenscar): Likewise.
    	* record-btrace.c (_initialize_record_btrace): Likewise.
    	* record-full.c (_initialize_record_full): Likewise.
    	* record.c (_initialize_record): Likewise.
    	* regcache-dump.c (_initialize_regcache_dump): Likewise.
    	* regcache.c (_initialize_regcache): Likewise.
    	* remote.c (add_packet_config_cmd, init_remote_threadtests,
    	_initialize_remote): Likewise.
    	* ser-tcp.c (_initialize_ser_tcp): Likewise.
    	* serial.c (_initialize_serial): Likewise.
    	* skip.c (_initialize_step_skip): Likewise.
    	* source.c (_initialize_source): Likewise.
    	* stack.c (_initialize_stack): Likewise.
    	* symfile.c (_initialize_symfile): Likewise.
    	* symtab.c (_initialize_symtab): Likewise.
    	* target-descriptions.c (_initialize_target_descriptions): Likewise.
    	* top.c (init_main): Likewise.
    	* tracefile-tfile.c (tfile_target_info): Likewise.
    	* tracepoint.c (_initialize_tracepoint): Likewise.
    	* tui/tui-win.c (_initialize_tui_win): Likewise.
    	* utils.c (add_internal_problem_command): Likewise.
    	* valprint.c (value_print_option_defs): Likewise.
    
    gdb/testsuite/ChangeLog
    2019-08-07  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
    
    	* gdb.base/style.exp: Update tests for help doc new invariants.
    	* gdb.base/help.exp: Likewise.

commit 404f29021abaef86a341663444fb069eb1f0282a
Author: Frank Ch. Eigler <fche@redhat.com>
Date:   Tue Aug 6 11:23:48 2019 -0400

    [PR build/24886] disable glibc mcheck support
    
    This patch drops gdb's configury support for glibc's mcheck function.
    It has been observed to cause false abort()s, because it is
    thread-unsafe yet interposes every malloc/free operation.  So if any
    library transitively used by gdb also uses threads, then these
    functions can easily corrupt their own checking data.  These days, gcc
    ASAN and valgrind provide high quality checking, and mcheck is
    apparently itself being slowly deprecated.
    
    So, let's stop linking to it.  Attached patch drops the
    autoconf/Makefile machinery for both gdb and gdbserver.  No
    testsuite-visible impact.  IMHO not worth mentioning in NEWS.
    
    See also: https://sourceware.org/bugzilla/show_bug.cgi?id=9939
    
    gdb/ChangeLog
    
            PR build/24886
            * configure.ac: Drop enable-libmcheck support.
            * configure, config.in: Rebuild.
            * libmcheck.m4: Remove.
            * acinclude.m4: Don't include it.
            * Makefile.in: Don't distribute it.
            * top.c (print_gdb_configuration): Don't mention it.
    
    gdb/gdbserver/ChangeLog
    
            PR build/24886
            * configure.ac: Drop enable-libmcheck support.
            * configure, config.in: Rebuild.
            * acinclude.m4: Don't include it.

commit 046bebe1c0a367687bd693eb4594fcdcba0b8f7e
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Jul 18 22:07:10 2019 -0600

    Add more styling to "disassemble"
    
    This adds more styling to the disassemble command.  In particular,
    addresses and function names in the disassembly are now styled.
    
    This required fixing a small latent bug in set_output_style.  This
    function always passed NULL to emit_style_escape; but when writing to
    a file other than gdb_stdout, it should emit the style escape
    directly.  (FWIW this is another argument for better integrating the
    pager with ui_file and getting rid of this entire layer.)
    
    gdb/ChangeLog
    2019-08-06  Tom Tromey  <tom@tromey.com>
    
    	* utils.c (set_output_style): Sometimes pass stream to
    	emit_style_escape.
    	* ui-out.h (class ui_out) <can_emit_style_escape>: Declare.
    	* record-btrace.c (btrace_insn_history): Update.
    	* mi/mi-out.h (class mi_ui_out) <can_emit_style_escape>: New
    	method.
    	* disasm.h (gdb_pretty_print_disassembler): Add uiout parameter.
    	Update initializers.
    	<m_uiout>: New field.
    	<m_di>: Move lower.
    	* disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
    	Remove "uiout" parameter.
    	(dump_insns): Update.
    	* cli-out.h (class cli_ui_out) <can_emit_style_escape>: Declare.
    	* cli-out.c (cli_ui_out::can_emit_style_escape): New method.
    
    gdb/testsuite/ChangeLog
    2019-08-06  Tom Tromey  <tom@tromey.com>
    
    	* gdb.base/style.exp: Add disassemble test.
    	* gdb.base/style.c (some_called_function): New function.
    	(main): Use it.

commit ddbcedf5de138bc83d5d16554a3f44163dcaef7a
Author: Christian Biesinger <cbiesinger@google.com>
Date:   Tue Aug 6 11:50:52 2019 -0500

    Replace int with enum block_enum where appropriate.
    
    For better readability and type safety.
    
    gdb/ChangeLog:
    
    2019-08-06  Christian Biesinger  <cbiesinger@google.com>
    
    	* symtab.c (symbol_cache_lookup): Change int to enum block_enum.
    	(error_in_psymtab_expansion): Likewise.
    	(lookup_symbol_via_quick_fns): Likewise.
    	(basic_lookup_transparent_type_quick): Likewise.
    	(basic_lookup_transparent_type_1): Likewise.

commit b08b16c8391bbcd706a4aaa4b09509e7c2b8c676
Author: Tom Tromey <tromey@adacore.com>
Date:   Mon Jul 22 15:20:24 2019 -0600

    Clean up source file error reporting
    
    print_source_lines_base reopens the source file every time that a
    source line is to be printed.  However, there's no need to do this so
    frequently -- it's enough to do it when switching source files, and
    otherwise rely on the cache.
    
    The code seems to try to avoid these multiple opens; at a guess I'd
    say something just got confused along the way.
    
    This patch fixes the problem by reorganizing the code both to make it
    more clear, and to ensure that reopens only occur when the "last
    source visited" changes.
    
    gdb/ChangeLog
    2019-08-06  Tom Tromey  <tromey@adacore.com>
    
    	* source.c (last_source_error): Now bool.
    	(print_source_lines_base): Make "noprint" bool.  Only open
    	source file when last_source_visited changes.

commit cb44333d99548bbbf7be06387a31877ee9322ab4
Author: Tom Tromey <tromey@adacore.com>
Date:   Mon Jul 22 14:31:43 2019 -0600

    Add file offsets to the source cache
    
    Currently, gdb stores the number of lines and an array of file offsets
    for the start of each line in struct symtab.  This patch moves this
    information to the source cache.  This has two benefits.
    
    First, it allows gdb to read a source file less frequently.
    Currently, a source file may be read multiple times: once when
    computing the file offsets, once when highlighting, and then pieces
    may be read again while printing source lines.  With this change, the
    file is read once for its source text and file offsets; and then
    perhaps read again if it is evicted from the cache.
    
    Second, if multiple symtabs cover the same source file, then this will
    share the file offsets between them.  I'm not sure whether this
    happens in practice.
    
    gdb/ChangeLog
    2019-08-06  Tom Tromey  <tromey@adacore.com>
    
    	* annotate.c (annotate_source_line): Use g_source_cache.
    	* source-cache.c (source_cache::get_plain_source_lines): Change
    	parameters.  Populate m_offset_cache.
    	(source_cache::ensure): New method.
    	(source_cache::get_line_charpos): New method.
    	(extract_lines): Move lower.  Change parameters.
    	(source_cache::get_source_lines): Move lower.
    	* source-cache.h (class source_cache): Update comment.
    	<get_line_charpos>: New method.
    	<get_source_lines>: Update comment.
    	<clear>: Clear m_offset_cache.
    	<get_plain_source_lines>: Change parameters.
    	<ensure>: New method
    	<m_offset_cache>: New member.
    	* source.c (forget_cached_source_info_for_objfile): Update.
    	(info_source_command): Use g_source_cache.
    	(find_source_lines, open_source_file_with_line_charpos): Remove.
    	(print_source_lines_base, search_command_helper): Use g_source_cache.
    	* source.h (open_source_file_with_line_charpos): Don't declare.
    	* symtab.h (struct symtab) <nlines, line_charpos>: Remove.
    	* tui/tui-source.c (tui_source_window::do_scroll_vertical):
    	Use g_source_cache.

commit 872dceaaff9b54764b8f510b549497b9d904b136
Author: Tom Tromey <tromey@adacore.com>
Date:   Mon Jul 22 12:41:23 2019 -0600

    Save plain text in the source cache
    
    Currently the source cache will only store highlighted text.  However,
    there's no reason it could not also store plain text, when styling is
    turned off.
    
    This patch makes this change.  This also simplifies the source cache
    code somewhat.
    
    gdb/ChangeLog
    2019-08-06  Tom Tromey  <tromey@adacore.com>
    
    	* source-cache.c (source_cache::get_plain_source_lines):
    	Remove "first_line" and "last_line" parameters.
    	(source_cache::get_source_lines): Cache plain text.
    	* source-cache.h (class source_cache)
    	<get_plain_source_lines>: Update.

commit 269249d9406096dd59aecd8845e960fdddb1ebfe
Author: Tom Tromey <tromey@adacore.com>
Date:   Tue Jul 23 08:22:50 2019 -0600

    Fix latent bug in source cache
    
    The source cache was not returning the final \n of the requested range
    of lines.  This caused regressions with later patches in this series,
    so this patch pre-emptively fixes the bug.
    
    This adds a self-test of "extract_lines" to the source cache code.  To
    make it simpler to test, I changed extract_lines to be a static
    function, and changed it's API a bit.
    
    gdb/ChangeLog
    2019-08-06  Tom Tromey  <tromey@adacore.com>
    
    	* source-cache.c (extract_lines): No longer a method.
    	Changed type of parameter.  Include final newline.
    	(selftests::extract_lines_test): New function.
    	(_initialize_source_cache): Likewise.
    	* source-cache.h (class source_cache)
    	<extract_lines>: Don't declare.

commit c0e8dcd87101119806c5bbca4c7b649c1b8c0996
Author: Tom Tromey <tromey@adacore.com>
Date:   Tue Jul 23 12:41:02 2019 -0600

    Change breakpoint::filter to be a unique_xmalloc_ptr
    
    This changes breakpoint::filter to be a unique_xmalloc_ptr, removing
    an explicit xfree, as well as a use of a "release" method.
    
    gdb/ChangeLog
    2019-08-06  Tom Tromey  <tromey@adacore.com>
    
    	* breakpoint.c (init_breakpoint_sal): Update.
    	(breakpoint): Update.
    	* breakpoint.h (struct breakpoint) <filter>: Now a
    	unique_xmalloc_ptr.

commit 128bf1fe608badb59d27f9c5c8ffb1a6a6d9d811
Author: Alan Modra <amodra@gmail.com>
Date:   Tue Aug 6 15:40:08 2019 +0930

    LTO object insertion point
    
    This is a mostly cosmetic fix for cases like PR24873 where LTO
    recompiled objects were supposed to be inserted inside a group.  The
    specific case handled by this patch is when the first file inside a
    group is an archive, the first file claimed by the plugin.  Prior to
    this patch we would have inserted the recompiled objects before the
    group, which doesn't matter really since the entire group will be
    reloaded, but it looks a little wrong in map files.
    
    	PR 24873
    	* ldlang.c (find_replacements_insert_point): Return "before" flag.
    	(find_next_input_statement): New function.
    	(lang_process): When placing recompiled LTO objects before a
    	claimed archive, place them immediately before in the statement
    	list.

commit b02c4f162335ed055964f603ba3aca18b0e5c5bf
Author: Alan Modra <amodra@gmail.com>
Date:   Tue Aug 6 15:23:28 2019 +0930

    PR24873, gcc -flto objects result in --start-group .. --end-group failure to include --as-needed libraries
    
    Reloading of archives (and checking --as-needed DSOs again) is
    disabled until we hit the plugin insert point.  It's necessary to do
    that because in a case like lib1.a lto.o lib2.a where lib1.a and
    lib2.a contain duplicate symbols, we want the lto.o recompiled object
    to pull in objects from lib2.a as necessary, but not from lib1.a.
    Unfortunately this heuristic fails when the insert point is inside a
    group, because ld actually loads the symbols from the recompiled
    object before running over the contours of the script, thus missing
    the fact that new undefs appeared in the group.
    
    	PR 24873
    	* ldlang.c (plugin_undefs): New static var.
    	(open_input_bfds <lang_group_statement_enum>): Loop on
    	plugin_undefs and hitting plugin_insert point.
    	(lang_process <lto_plugin_active>): Set plugin_undefs.

commit b39152b3e5befec363302d5d81ade36ab45d6d08
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Tue Aug 6 00:00:18 2019 +0000

    Automatic date update in version.in

commit 0b27c27d0d3060171876736f05c39f9c86a65d3e
Author: Christian Biesinger <cbiesinger@google.com>
Date:   Thu Aug 1 17:22:28 2019 -0500

    Add block['var'] accessor
    
    Currently we support iteration on blocks; this patch extends that to make
    subscript access work as well.
    
    gdb/ChangeLog:
    
    2019-08-05  Christian Biesinger  <cbiesinger@google.com>
    
    	* NEWS: Mention dictionary access on blocks.
    	* python/py-block.c (blpy_getitem): New function.
    	(block_object_as_mapping): New struct.
    	(block_object_type): Use new struct for tp_as_mapping field.
    
    gdb/doc/ChangeLog:
    
    2019-08-05  Christian Biesinger  <cbiesinger@google.com>
    
    	* python.texi (Blocks In Python): Document dictionary access on blocks.
    
    gdb/testsuite/ChangeLog:
    
    2019-08-05  Christian Biesinger  <cbiesinger@google.com>
    
    	* gdb.python/py-block.exp: Test dictionary access on blocks.

commit 4ee94178afbe062bc244d28595f86d63633a7af7
Author: Christian Biesinger <cbiesinger@google.com>
Date:   Wed Jul 31 17:10:50 2019 -0500

    Add a comment briefly explaining partial symbols
    
    Based on an explanation by tromey on IRC.
    
    gdb/ChangeLog:
    
    2019-08-05  Christian Biesinger  <cbiesinger@google.com>
    
    	* objfiles.h (objfile): Add a comment describing partial symbols.

commit 276cbbdf990f3f09acacdf3d9603b054ac7d29da
Author: Nick Clifton <nickc@redhat.com>
Date:   Mon Aug 5 16:15:14 2019 +0100

    Fix objcopy's note merging capabilities so that they no longer insist on the first note being a version note.
    
    	PR 24874
    	* objcopy.c (merge_gnu_build_notes): Do not insist on the first
    	note being a version note.

commit 580f1034d10934b757703110db068397c0c1e7bb
Author: Simon Marchi <simon.marchi@efficios.com>
Date:   Mon Aug 5 10:21:22 2019 -0400

    Increase timeout in gdb.mi/list-thread-groups-available.exp
    
    Running
    
        make check-read1 TESTS="gdb.mi/list-thread-groups-available.exp"
    
    on my machine results in timeout failures.  Running it while having
    `tail -F testsuite/gdb.log` on the side shows that the test is never
    really blocked, it is just slow at consuming the large output generated
    by `-list-thread-groups --available` (which lists all the processes on
    the system).
    
    If I increase the timeout to a large value, the test passes in ~30
    seconds (compared to under 1 second normally).
    
    Increase the timeout for the particular mi_gdb_test that is long to
    execute under read1.  The new timeout value is a bit arbitrary.  The
    default timeout is 10 seconds, so I set the new timeout to be
    "old-timeout * 10", so 100 seconds in the typical case.
    
    gdb/testsuite/ChangeLog:
    
    	PR gdb/24863
    	* gdb.mi/list-thread-groups-available.exp: Increase timeout for
    	-list-thread-groups --available test when running under
    	check-read1.

commit d86bd7cba1965c621b63792179febcf9eeb273ad
Author: Tom de Vries <tdevries@suse.de>
Date:   Mon Aug 5 15:41:04 2019 +0200

    [gdb/testsuite] Run read1 timeout tests with with_read1_timeout_factor
    
    When running tests with check-read1, we run into some timeouts where the tests
    are not easy to rewrite using gdb_test_sequence:
    ...
    FAIL: gdb.base/help.exp: help data (timeout)
    FAIL: gdb.base/help.exp: help files (timeout)
    FAIL: gdb.base/help.exp: help internals (timeout)
    FAIL: gdb.base/help.exp: help user-defined (timeout)
    FAIL: gdb.base/help.exp: help breakpoint "b" abbreviation (timeout)
    FAIL: gdb.base/help.exp: help breakpoint "br" abbreviation (timeout)
    FAIL: gdb.base/help.exp: help breakpoint "bre" abbreviation (timeout)
    FAIL: gdb.base/info-macros.exp: info macros 2 (timeout)
    FAIL: gdb.base/info-macros.exp: next (timeout)
    FAIL: gdb.base/info-macros.exp: info macros 3 (timeout)
    FAIL: gdb.base/info-macros.exp: next (timeout)
    FAIL: gdb.base/info-macros.exp: next (timeout)
    FAIL: gdb.base/info-macros.exp: info macros (timeout)
    FAIL: gdb.base/info-macros.exp: next (timeout)
    FAIL: gdb.base/info-macros.exp: next (timeout)
    FAIL: gdb.base/info-macros.exp: info macros 7 (timeout)
    FAIL: gdb.cp/nested-types.exp: ptype S10 (limit = -1) // parse failed (timeout)
    FAIL: gdb.cp/nested-types.exp: set print type nested-type-limit 1 (timeout)
    ...
    
    Fix these by increasing the timeout by a factor 10.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-08-05  Tom de Vries  <tdevries@suse.de>
    
    	PR testsuite/24863
    	* lib/gdb.exp (with_read1_timeout_factor): New proc.
    	* gdb.base/help.exp: Use with_read1_timeout_factor.
    	* gdb.base/info-macros.exp: Same.
    	* gdb.cp/nested-types.exp: Same.

commit 8abfcabcb49fcd8b95854a5b59e7928e3c6000ff
Author: Tom Tromey <tromey@adacore.com>
Date:   Fri Aug 2 08:12:31 2019 -0600

    Use _() in calls to build_help
    
    Currently some code in gdb uses build_help with N_(), like:
    
      static const std::string compile_print_help
        = gdb::option::build_help (N_("\
    
    I believe this is incorrect.  The N_ macro is used to mark text that
    should end up in the message catalog, but which will be translated by
    a later call to gettext.
    
    However, in this case, there is no later call to gettext, so (if gdb
    had translations), this text would remain untranslated.
    
    Instead, I think using the ordinary _() macro is correct here.
    Translators will have to know to preserve "%OPTIONS%" in the text --
    but that seems both unavoidable and fine.
    
    Tested by rebuilding as there's not much else to do.
    
    gdb/ChangeLog
    2019-08-05  Tom Tromey  <tromey@adacore.com>
    
    	* compile/compile.c (_initialize_compile): Use _(), not N_().
    	* thread.c (_initialize_thread): Use _(), not N_().
    	* stack.c (_initialize_stack): Use _(), not N_().
    	* printcmd.c (_initialize_printcmd): Use _(), not N_().

commit 23d188c74e7481bb0af3c42b84fc9cb0c94267e5
Author: Barnaby Wilks <barnaby.wilks@arm.com>
Date:   Mon Aug 5 12:43:38 2019 +0100

    Removes support in the ARM assembler for the unsigned variants of the VQ(R)DMLAH and VQ(R)DMLASH MVE instructions.
    
    Previously GAS would accept .u32, .u16 and .u8 suffixes to the VQ(R)DMLAH and VQ(R)DMLASH
    instructions, however the Armv8.1-M Mainline specification states that these functions only
    have signed variations (.s32, .s16 and .s8 suffixes).
    This is documented here:
    https://static.docs.arm.com/ddi0553/bh/DDI0553B_h_armv8m_arm.pdf?_ga=2.143079093.1892401233.1563295591-999473562.1560847439#page=1183
    
    gas	* config/tc-arm.c (do_mve_vqdmlah): Use N_S_32 macro.
    	(do_neon_qrdmlah): Use N_S_32 macro.
    	* testsuite/gas/arm/mve-vqdmlah-bad.d: New test.
    	* testsuite/gas/arm/mve-vqdmlah-bad.l: New test.
    	* testsuite/gas/arm/mve-vqdmlah-bad.s: New test.
    	* testsuite/gas/arm/mve-vqdmlah.d: Remove unsigned instruction tests.
    	* testsuite/gas/arm/mve-vqdmlah.s: Remove unsigned instruction tests.
    	* testsuite/gas/arm/mve-vqdmlash-bad.d: New test.
    	* testsuite/gas/arm/mve-vqdmlash-bad.l: New test.
    	* testsuite/gas/arm/mve-vqdmlash-bad.s: New test.
    	* testsuite/gas/arm/mve-vqdmlash.d: Remove unsigned instruction tests.
    	* testsuite/gas/arm/mve-vqdmlash.s: Remove unsigned instruction tests.
    
    opcodes	* arm-dis.c: Only accept signed variants of VQ(R)DMLAH and VQ(R)DMLASH
    	instructions.

commit a80cf5d88e028fa6a72b37fe50795e70bb6e3559
Author: Tom de Vries <tdevries@suse.de>
Date:   Mon Aug 5 12:51:58 2019 +0200

    [gdb/testsuite] Fail in gdb_compile if pie results in non-PIE executable
    
    When running gdb.base/break-idempotent.exp with
    --target_board=unix/-fno-PIE/-no-pie, we get:
    ...
    nr of expected passes            140
    ...
    
    The test-case is compiled once with nopie and once with pie, but in both cases
    we end up with a non-PIE executable.  The "-fno-PIE -no-pie" options specified
    using the target_board are interpreted by dejagnu as multilib_flags, and end up
    overriding the pie flags.
    
    Fix this by checking in gdb_compile if the resulting exec is non-PIE despite of
    a pie setting, and if so return an error:
    ...
    Running gdb/testsuite/gdb.base/break-idempotent.exp ...
    gdb compile failed, pie failed to generate PIE executable
    
                    === gdb Summary ===
    
    nr of expected passes            70
    nr of untested testcases         1
    ...
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-08-05  Tom de Vries  <tdevries@suse.de>
    
    	* lib/gdb.exp (version_at_least): Factor out of ...
    	(tcl_version_at_least): ... here.
    	(gdb_compile): Fail if pie results in non-PIE executable.
    	(readelf_version, readelf_prints_pie): New proc.
    	(exec_is_pie): Return -1 if unknown.

commit d09628385443574b556f2beaaba7588a2a5fb4c0
Author: Tom de Vries <tdevries@suse.de>
Date:   Mon Aug 5 12:51:58 2019 +0200

    [gdb/testsuite] Fix typo in tcl_version_at_least
    
    In tcl_version_at_least we compare a minor against a major version number:
    ...
        } elseif { $tcl_version_major == $major \
                      && $tcl_version_major >= $minor } {
    ...
    
    Fix this by using $tcl_version_minor in the comparison instead.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-08-05  Tom de Vries  <tdevries@suse.de>
    
    	* lib/gdb.exp (tcl_version_at_least): Fix typo.

commit e17869db99195849826eaaf5d2d0eb2cfdd7a2a7
Author: Nick Clifton <nickc@redhat.com>
Date:   Mon Aug 5 10:40:35 2019 +0100

    Catch potential integer overflow in readelf when processing corrupt binaries.
    
    	PR 24829
    	* readelf.c (apply_relocations): Catch potential integer overflow
    	whilst checking reloc location against section size.

commit 2b79f3761c834cd217407f75f867f6a761703ab3
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date:   Sun Aug 4 22:44:05 2019 -0400

    Remove some variables in favor of using gdb::optional
    
    While reading that code, I noticed that some variables essentially meant
    whether to consider some other variable or not.  I think using
    gdb::optional (which was not available when this code was written) is
    clearer, as it embeds the used/not used predicate directly in the type
    of the variable, making it harder to miss.
    
    gdb/ChangeLog:
    
    	* dwarf2read.c (struct dw2_symtab_iterator):
    	<want_specific_block>: Remove.
    	<block_index>: Change type to gdb::optional.
    	(dw2_symtab_iter_init): Remove WANT_SPECIFIC_BLOCK parameter,
    	change type of BLOCK_INDEX parameter to gdb::optional.
    	(dw2_symtab_iter_next): Re-write in function of gdb::optional.
    	(dw2_lookup_symbol): Don't pass argument for
    	WANT_SPECIFIC_BLOCK.
    	(dw2_expand_symtabs_for_function): Don't pass argument for
    	WANT_SPECIFIC_BLOCK, pass empty optional for BLOCK_INDEX.
    	(class dw2_debug_names_iterator)
    	<dw2_debug_names_iterator>: Remove WANT_SPECIFIC_BLOCK
    	parameter, change BLOCK_INDEX type to gdb::optional.
    	<m_want_specific_block>: Remove.
    	<m_block_index>: Change type to gdb::optional.
    	(dw2_debug_names_iterator::next): Change type of IS_STATIC to
    	gdb::optional.  Re-write in function of gdb::optional.
    	(dw2_debug_names_lookup_symbol): Don't pass argument for
    	WANT_SPECIFIC_BLOCK.
    	(dw2_debug_names_expand_symtabs_for_function): Don't pass
    	argument for WANT_SPECIFIC_BLOCK, pass empty optional for
    	BLOCK_INDEX.

commit 188a63736c70060180382e36364a23dcebe3c29c
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Mon Aug 5 00:00:29 2019 +0000

    Automatic date update in version.in

commit 2252ff3d9045b54bf3a2b54c7ba33320ccab9bc7
Author: Sandra Loosemore <sandra@codesourcery.com>
Date:   Sun Aug 4 14:34:31 2019 -0700

    Skip GDB test reconnect-ctrl-c.exp if nointerrupts is set.
    
    2019-08-04  Sandra Loosemore  <sandra@codesourcery.com>
    
    	gdb/testsuite/
    	* gdb.server/reconnect-ctrl-c.exp: Skip if nointerrupts.

commit 26655f53069a2f8a8ccbc6b60537149383d28be1
Author: Sandra Loosemore <sandra@codesourcery.com>
Date:   Sun Aug 4 14:26:39 2019 -0700

    Add check for readline support to more GDB tab-completion tests.
    
    2019-08-04  Sandra Loosemore  <sandra@codesourcery.com>
    
    	gdb/testsuite/
    	* lib/completion-support.exp (test_gdb_complete_none): Skip
    	tab completion tests if no readline support.
    	(test_gdb_complete_unique_re): Likewise.
    	(test_gdb_complete_multiple): Likewise.

commit 0b3303472d5fd742198f04dbf4322098be6c158c
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Sun Aug 4 00:01:03 2019 +0000

    Automatic date update in version.in

commit ae60f04e08bf48f65d9101a6ab63f3806e6fca5e
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date:   Sat Aug 3 21:20:44 2019 +0200

    NEWS and documentation for info sources [-dirname | -basename] [--] [REGEXP].
    
    gdb/ChangeLog
    2019-08-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
    
            * NEWS: Mention changes to "info sources" command.
    
    gdb/doc/ChangeLog
    2019-08-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
    
            * gdb.texinfo (Symbols): Document new args -dirname and -basename
            of "info sources" command.

commit db4dc13eebbd73cddfe3abb6c001982c7bdbba3f
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date:   Sun Mar 31 20:12:22 2019 +0200

    New test for 'info sources [-dirname | -basename] [--] [REGEXP]'.
    
    This patch introduces a test for the 'info sources' command
    and its new arguments [-dirname | -basename] [--] [REGEXP].
    
    gdb/testsuite/ChangeLog
    
    2019-08-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
    
    	* gdb.base/info_sources.exp: New file.
    	* gdb.base/info_sources.c: New file.
    	* gdb.base/info_sources_base.c: New file.

commit 28cd9371e84144df3b9b8903770f71d39824f8f8
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date:   Sun Mar 31 20:06:39 2019 +0200

    New "info sources" args [-dirname | -basename] [--] [REGEXP]
    
    gdb/ChangeLog
    
    2019-08-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
    
    	* symtab.c (filename_partial_match_opts): New struct type.
    	(struct output_source_filename_data): New members
    	regexp, c_regexp, partial_match.
    	(output_source_filename): Use new members to decide to print file.
    	(info_sources_option_defs): New variable.
    	(make_info_sources_options_def_group, print_info_sources_header,
    	info_sources_command_completer):
    	New functions.
    	(info_sources_command): Read new optional arguments.
    	(_initialize_symtab): Update info sources help.

commit 6d6231ed5822782b76a2aad268cc4891e4f91dfc
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Sat Aug 3 00:00:16 2019 +0000

    Automatic date update in version.in

commit ca683e3a86d081fcf43685bee840086bd4c07443
Author: Alexandre Oliva <oliva@adacore.com>
Date:   Fri Aug 2 15:40:32 2019 -0300

    support Ada EH ABI v1
    
    A new pair of hooks used by Ada exception handlers, for correct
    release of reraised exception occurrences, involves the introduction
    of new v1 symbols that GDB should use when available.  The older, v0
    ABI remains available in newer runtimes for bootstrapping purposes
    only.
    
    
    for  gdb/ChangeLog
    
    	* ada-lang.c (exception_support_info_v0): Renamed from...
    	(default_exception_support_info): ... this.  Create new
    	definition for v1.
    	(ada_has_this_exception_support): Look up catch_handlers_sym.
    	(ada_exception_support_info_sniffer): Try v0 after default.

commit 89c52ae3a20e8d84a250095781c1e022af542b3f
Author: Alan Modra <amodra@gmail.com>
Date:   Thu Aug 1 11:50:55 2019 +0930

    [GOLD] PowerPC64 pc-relative TLS support
    
    Gold version of git commit c213164ad2.
    
    elfcpp/
    	* powerpc.h (R_PPC64_TPREL34, R_PPC64_DTPREL34),
    	(R_PPC64_GOT_TLSGD34, R_PPC64_GOT_TLSLD34),
    	(R_PPC64_GOT_TPREL34, R_PPC64_GOT_DTPREL34): Define.
    gold/
    	* powerpc.cc (Target_powerpc::Scan::get_reference_flags): Set
    	flags for new relocations, and some missing older relocs.
    	(Target_powerpc::Scan::local): Handle new pcrel tls relocs.
    	Call set_has_static_tls for tprel relocs.
    	(Target_powerpc::Scan::global): Likewise.
    	(Target_powerpc::Relocate::relocate): Handle new pcrel tls relocs.

commit 6a010cf67a96adcaf80c74f926df6b42ce13e7df
Author: Alan Modra <amodra@gmail.com>
Date:   Thu Aug 1 17:43:29 2019 +0930

    [GOLD] PowerPC relocation signed overflow check
    
    Relocations with right shifts were calculating wrong overflow status.
    Since the addr34 split-field reloc is implemented as an 18-bit high
    part with value shifted right by 16 and a 16-bit low part, most of the
    pc-relative relocs were affected.
    
    	* powerpc.cc (Powerpc_relocate_functions::rela, rela_ua): Perform
    	signed right shift for signed overflow check.

commit 97c0a07968a7c64e1de96abff8937d089f09b3e7
Author: Alan Modra <amodra@gmail.com>
Date:   Fri Aug 2 12:35:39 2019 +0930

    PR24871, readelf segv in dump_ia64_unwind
    
    	PR 24871
    	* readelf.c (ABSADDR): Delete.
    	(dump_ia64_unwind): Expand ABSADDR.  Check validity of info.section.

commit 1b611b2dc3075d20372557021f95ec326cdf8aa5
Author: Alan Modra <amodra@gmail.com>
Date:   Fri Aug 2 12:34:55 2019 +0930

    PowerPC tlsie test fix
    
    	* testsuite/ld-powerpc/tlsie.s: Correct medium model ELF sequence.

commit 371367a95037cac795af5cdc589a2aa0c7a4dcd3
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Fri Aug 2 00:00:28 2019 +0000

    Automatic date update in version.in

commit 0f52d45acd6c54aa47082778ffcbafddd423a5b4
Author: Jim Wilson <jimw@sifive.com>
Date:   Thu Aug 1 16:40:15 2019 -0700

    RISC-V: Fix lui relax failure with relro.
    
    	bfd/ChangeLog
    	Ilia Diachkov  <ilia.diachkov@optimitech.com>
    	* elfnn-riscv.c (_bfd_riscv_relax_lui): Set lui relax safety area to
    	two pages in relro presence.

commit 0eba165a74cdb039a5e6ed86e0396d80f68ca22c
Author: Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
Date:   Thu Aug 1 16:51:44 2019 -0300

    Remove directory names from gdb.base/batch-exit-status.exp
    
    Adjust gdb.base/batch-exit-status.exp so that test prefixes don't show
    directory names for the source scripts passed with -x, to make test
    results from different build directories comparable.
    
    gdb/testsuite/ChangeLog:
    2019-08-01  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
    
    	* gdb.base/batch-exit-status.exp: Call test_exit_status with
    	prefix argument.
    	(test_exit_status): Add prefix argument.

commit e0d0c518daa5e10a417d16ad8158e97016562342
Author: Max Filippov <jcmvbkbc@gmail.com>
Date:   Mon Apr 22 12:35:13 2019 -0800

    xtensa: bfd: add special case to loop alignment check
    
    check_loop_aligned is used during link time relaxation to only allow
    transformations that don't violate loop body alignment requirements.
    Assembler can relax loops that have too long body by adding instructions
    between the loop instruction and the loop body. check_loop_aligned must
    check alignment of the first instruction of the actual loop body.
    Detect loop / rsr.lend / wsr.lbeg sequence used in assembly time
    relaxation and adjust alignment check when it's detected.
    
    bfd/
    2019-08-01  Max Filippov  <jcmvbkbc@gmail.com>
    
    	* elf32-xtensa.c (insn_num_slots, get_rsr_lend_opcode)
    	(get_wsr_lbeg_opcode): New functions.
    	(check_loop_aligned): Detect relaxed loops and adjust loop_len
    	and insn_len for the first actual instruction of the loop.

commit f126416240a3ae1be69792361bca8bcbb84e62e8
Author: Tom Tromey <tromey@adacore.com>
Date:   Wed Jul 31 11:50:23 2019 -0600

    Fix the ia64 libunwind build
    
    This fixes the ia64 libunwind build.
    
    gdb/ChangeLog
    2019-08-01  Tom Tromey  <tromey@adacore.com>
    
    	* ia64-libunwind-tdep.h (struct libunwind_descr): Include
    	gdbarch.h.

commit 0a7b24850e0cba956bd836ecb1f60959cbf75087
Author: Christian Biesinger <cbiesinger@google.com>
Date:   Thu Aug 1 11:49:41 2019 -0500

    Include s12z-opc.h using ../opcodes.
    
    This file exists in binutils-gdb/opcodes, and nothing in Makefile.in adds this
    to the include path.  Default builds work because in-tree readline adds
    binutils-gdb/ to the include path (!). However, this is broken when compiling
    with system readline.
    
    Other files already use this way to include files in opcodes:
    ./gdb/lm32-tdep.c:#include "../opcodes/lm32-desc.h"
    ./gdb/or1k-tdep.h:#include "../opcodes/or1k-desc.h"
    ./gdb/mep-tdep.c:#include "../opcodes/mep-desc.h"
    
    etc.
    
    gdb/ChangeLog:
    
    2019-08-01  Christian Biesinger  <cbiesinger@google.com>
    
    	* s12z-tdep.c: Fix include path for s12z-opc.h.

commit c6bdbeb7c468489da9468445057d245929c3d91c
Author: Alan Hayward <alan.hayward@arm.com>
Date:   Thu Aug 1 16:51:15 2019 +0100

    Require GNU make 3.82
    
    Gdbserver has failed to build with GNU make 3.81 since commit 08f10e02be.
    
    Update the NEWS file to state that versions earlier than 3.82 are not
    supported.
    
    3.82 was released in 2010, 3.81 was released 2006. A quick investigation
    of the default GNU make version provided across various distros found the
    earliest provided version to be 3.82:
    *RHEL 7, Centos 6 - make 3.82
    *Fedora 27 - make 4.2.1
    *OpenSuse 42.2, SLES11 - make 4.2.1
    *Ubuntu 16.04/18.04 - make 4.1
    *Debian Jessie - make 4.0
    
    Note that Glibc requires at least 4.0, whereas GCC still allows 3.81.
    
    gdb/ChangeLog:
    
    	* NEWS: Require GNU make 3.82.

commit 59bd512b9c54c6fa2bd951cd10a1ca1e6ffb3dcf
Author: Tom de Vries <tdevries@suse.de>
Date:   Thu Aug 1 10:48:11 2019 +0200

    [gdb/testsuite] Fix gdb.threads/fork-plus-threads.exp timeout with check-run1
    
    With gdb.threads/fork-plus-threads.exp and check-run1 we get:
    ...
    FAIL: gdb.threads/fork-plus-threads.exp: detach-on-fork=off: \
      inferior 1 exited (timeout)
    ...
    
    Fix this by calling exp_continue for new thread and thread exited messages.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-08-01  Tom de Vries  <tdevries@suse.de>
    
    	PR testsuite/24863
    	* gdb.threads/fork-plus-threads.exp: Fix check-run1 timeout by
    	calling exp_continue for new thread and thread exited messages.

commit 2a3ad588e0758bc2c753dfa216c344036e5a22bc
Author: Tom de Vries <tdevries@suse.de>
Date:   Thu Aug 1 10:48:11 2019 +0200

    [gdb/testsuite] Fix gdb.base/structs.exp timeout with check-read1
    
    With gdb.base/structs.exp and check-read1 we get:
    ...
    FAIL: gdb.base/structs.exp: p chartest (timeout)
    ...
    
    Fix this by using gdb_test_sequence.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-08-01  Tom de Vries  <tdevries@suse.de>
    
    	PR testsuite/24863
    	* gdb.base/structs.exp: Fix check-read1 timeout using
    	gdb_test_sequence.
    	* lib/gdb.exp (tcl_version_at_least, lrepeat): New proc.

commit 117eb594228cf5447e49475e4fb33480c1f717a7
Author: Tom de Vries <tdevries@suse.de>
Date:   Thu Aug 1 10:48:11 2019 +0200

    [gdb/testsuite] Fix gdb.base/break-interp.exp timeout with check-read1
    
    With gdb.base/break-interp.exp and check-read1, we run get:
    ...
    FAIL: gdb.base/break-interp.exp: LDprelinkNOdebugNO: \
      BINprelinkNOdebugNOpieNO: symbol-less: info files (timeout)
    FAIL: gdb.base/break-interp.exp: LDprelinkNOdebugNO: \
      BINprelinkNOdebugNOpieYES: symbol-less: info files (timeout)
    FAIL: gdb.base/break-interp.exp: LDprelinkNOdebugIN: \
      BINprelinkNOdebugNOpieNO: symbol-less: info files (timeout)
    FAIL: gdb.base/break-interp.exp: LDprelinkNOdebugIN: \
      BINprelinkNOdebugNOpieYES: symbol-less: info files (timeout)
    ...
    
    Fix this by calling exp_continue after each "info files" line.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-08-01  Tom de Vries  <tdevries@suse.de>
    
    	PR testsuite/24863
    	* gdb.base/break-interp.exp: Use exp_continue after each "info files"
    	line.

commit ed5913402bd4d50e342d4350ee5e4662d98a3947
Author: Tom de Vries <tdevries@suse.de>
Date:   Thu Aug 1 10:48:11 2019 +0200

    [gdb/testsuite] Fix gdb.base/signals.exp timeout with check-read1
    
    With gdb.base/signals.exp and check-read1 we get:
    ...
    FAIL: gdb.base/signals.exp: info signals (timeout)
    ...
    
    Fix this by using gdb_test_sequence.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-08-01  Tom de Vries  <tdevries@suse.de>
    
    	PR testsuite/24863
    	* gdb.base/signals.exp: Fix check-read1 timeout using gdb_test_sequence.

commit 776ab89fe3cdce91cd644058c9fcda0c506f995b
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Jul 31 23:10:40 2019 +0930

    PR24806, Linking with -T inside --start-group/--end-group
    
    This patch processes INSERT AFTER and INSERT BEFORE in a user -T
    script when such a script is invoked on the command line inside
    --start-group/--end-group.  Also, ld now warns when the user simply
    forgot --end-group.
    
    	PR 24806
    	* ldlang.c (process_insert_statements): Add start of list
    	parameter.  Use rather than lang_os_list.head.  Process insert
    	statements inside group statements with a recursive call.
    	(lang_process): Adjust process_insert_statements call.
    	* lexsup.c (parse_args): Warn when adding missing --end-group.

commit 5c1e6d53a518442741f05175dbded0d1880f4759
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Jul 31 16:45:14 2019 +0930

    Rename lang_output_section_statement to lang_os_list
    
    The idea is to make it a little easier to find uses of this list,
    so searches don't hit occurrences of lang_output_section_statement_type
    and lang_output_section_statement_enum.
    
    	* ldlang.h (lang_os_list): Rename from lang_output_section_statement.
    	* ldlang.c: Likewise throughout file.
    	* emultempl/alphaelf.em: Likewise.
    	* emultempl/elf32.em: Likewise.
    	* emultempl/mmo.em: Likewise.
    	* emultempl/pe.em: Likewise.
    	* emultempl/pep.em: Likewise.
    	* emultempl/ppc32elf.em: Likewise.
    	* emultempl/spuelf.em: Likewise.

commit 52b5a0c663ba7cb4f1488a7e96addc303fc6e021
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Thu Aug 1 00:00:29 2019 +0000

    Automatic date update in version.in

commit 0630887d4ee35ab2236d6e2f3be3a86e6d881387
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Wed Jul 31 00:00:21 2019 +0000

    Automatic date update in version.in

commit a2bd7b82ee2847d0b9bc6994b7248306de3a618f
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jul 6 08:31:57 2019 -0600

    Don't declare tui_copy_win or tui_box_win
    
    tui_copy_win and tui_box_win are not implemented, so don't declare
    them.
    
    gdb/ChangeLog
    2019-07-16  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-wingeneral.h (tui_copy_win, tui_box_win): Don't
    	declare.

commit c0d6f62fcec939ab896e4839f6aa14ebfcd43565
Author: Jim Wilson <jimw@sifive.com>
Date:   Tue Jul 30 14:42:16 2019 -0700

    RISC-V: Fix minor issues with FP csr instructions.
    
    	Mel Chen <mel.chen@sifive.com>
    	gas/
    	* testsuite/gas/riscv/alias-csr.s: Add testcase for CSR-access
    	alias instructions.
    	* testsuite/gas/riscv/no-aliases-csr.d: Run testcase alias-csr.s with
    	-Mno-aliases.
    	* testsuite/gas/riscv/alias-csr.d: Run testcase alias-csr.s.
    	* testsuite/gas/riscv/priv-reg.d: Update.
    	opcodes/
    	* riscv-opc.c (riscv_opcodes): Set frsr, fssr, frcsr, fscsr, frrm,
    	fsrm, fsrmi, frflags, fsflags, fsflagsi to alias instructions.
    	* riscv-opc.c (riscv_opcodes): Adjust order of frsr, frcsr, fssr,
    	fscsr.

commit aa3b653351504e262fb455af5efb6eea6d981597
Author: Tom Tromey <tromey@adacore.com>
Date:   Thu Jun 6 11:20:51 2019 -0600

    Allow nested function displays
    
    In Ada, it's possible to have nested functions.  However,
    block.c:contained_in does not recognize this.  Normally, this is no
    problem, but if gdb is stopped inside a nested function, then you can
    end up in the unexpected situation that "print" of an expression will
    work, whereas "display" of the same expression will not -- because
    contained_in returns 0.
    
    This patch simply removes the BLOCK_FUNCTION check from contained_in.
    The rationale here is that in languages without nested functions, this
    will not cause any issues.
    
    gdb/ChangeLog
    2019-07-30  Tom Tromey  <tromey@adacore.com>
    
    	* block.c (contained_in): Remove BLOCK_FUNCTION check.
    
    gdb/testsuite/ChangeLog
    2019-07-30  Tom Tromey  <tromey@adacore.com>
    
    	* gdb.ada/display_nested.exp: New file.
    	* gdb.ada/display_nested/foo.adb: New file.
    	* gdb.ada/display_nested/pack.adb: New file.
    	* gdb.ada/display_nested/pack.ads: New file.

commit a1530dc7319595b5980e8501092782724c946351
Author: Kevin Buettner <kevinb@redhat.com>
Date:   Sun Jun 2 18:12:28 2019 -0700

    Allow display of negative offsets in print_address_symbolic()
    
    When examining addresses associated with blocks with non-contiguous
    address ranges, it's not uncommon to see large positive offsets which,
    for some address width, actually represent a smaller negative offset.
    Here's an example taken from the test case (using the
    dw2-ranges-func-lo-cold executable):
    
        (gdb) x/5i foo_cold
           0x40110d <foo+4294967277>:	push   %rbp
           0x40110e <foo+4294967278>:	mov    %rsp,%rbp
           0x401111 <foo+4294967281>:	callq  0x401106 <baz>
           0x401116 <foo+4294967286>:	nop
           0x401117 <foo+4294967287>:	pop    %rbp
    
    This commit, in conjuction with an earlier patch from this series, causes
    cases like the above to be displayed like this (below) instead:
    
    (gdb) x/5i foo_cold
       0x40110d <foo_cold>:	push   %rbp
       0x40110e <foo-18>:	mov    %rsp,%rbp
       0x401111 <foo-15>:	callq  0x401106 <baz>
       0x401116 <foo-10>:	nop
       0x401117 <foo-9>:	pop    %rbp
    
    Note that the address of foo_cold is now (due to another patch) being
    displayed as <foo_cold> instead of <foo+BigOffset>.  The subsequent
    lines are shown as negative offsets from foo.
    
    Disassembly using the "disassemble" command is somewhat affected by
    these changes:
    
    Before:
    
    (gdb) disassemble foo_cold
    Dump of assembler code for function foo:
    Address range 0x401120 to 0x40113b:
       0x0000000000401120 <+0>:	push   %rbp
       0x0000000000401121 <+1>:	mov    %rsp,%rbp
       0x0000000000401124 <+4>:	callq  0x401119 <bar>
       0x0000000000401129 <+9>:	mov    0x2ef1(%rip),%eax        # 0x404020 <e>
       0x000000000040112f <+15>:	test   %eax,%eax
       0x0000000000401131 <+17>:	je     0x401138 <foo+24>
       0x0000000000401133 <+19>:	callq  0x40110d <foo+4294967277>
       0x0000000000401138 <+24>:	nop
       0x0000000000401139 <+25>:	pop    %rbp
       0x000000000040113a <+26>:	retq
    Address range 0x40110d to 0x401119:
       0x000000000040110d <+-19>:	push   %rbp
       0x000000000040110e <+-18>:	mov    %rsp,%rbp
       0x0000000000401111 <+-15>:	callq  0x401106 <baz>
       0x0000000000401116 <+-10>:	nop
       0x0000000000401117 <+-9>:	pop    %rbp
       0x0000000000401118 <+-8>:	retq
    End of assembler dump.
    
    After:
    
    (gdb) disassemble foo_cold
    Dump of assembler code for function foo:
    Address range 0x401120 to 0x40113b:
       0x0000000000401120 <+0>:	push   %rbp
       0x0000000000401121 <+1>:	mov    %rsp,%rbp
       0x0000000000401124 <+4>:	callq  0x401119 <bar>
       0x0000000000401129 <+9>:	mov    0x2ef1(%rip),%eax        # 0x404020 <e>
       0x000000000040112f <+15>:	test   %eax,%eax
       0x0000000000401131 <+17>:	je     0x401138 <foo+24>
       0x0000000000401133 <+19>:	callq  0x40110d <foo_cold>
       0x0000000000401138 <+24>:	nop
       0x0000000000401139 <+25>:	pop    %rbp
       0x000000000040113a <+26>:	retq
    Address range 0x40110d to 0x401119:
       0x000000000040110d <-19>:	push   %rbp
       0x000000000040110e <-18>:	mov    %rsp,%rbp
       0x0000000000401111 <-15>:	callq  0x401106 <baz>
       0x0000000000401116 <-10>:	nop
       0x0000000000401117 <-9>:	pop    %rbp
       0x0000000000401118 <-8>:	retq
    End of assembler dump.
    
    Note that negative offsets are now displayed without the leading "+".
    Also, the callq to foo_cold is now displayed as such instead of a callq
    to foo with a large positive offset.
    
    gdb/ChangeLog:
    
    	* printcmd.c (print_address_symbolic): Print negative offsets.
    	(build_address_symbolic): Force signed arithmetic when computing
    	offset.

commit 2906593ffecef89f8d64e0f1ca21494be71d0ebd
Author: Christian Biesinger <cbiesinger@google.com>
Date:   Tue Jul 30 11:04:37 2019 -0500

    [PR/24474] Add gdb.lookup_static_symbol to the python API
    
    Similar to lookup_global_symbol, except that it checks the
    STATIC_SCOPE.
    
    gdb/ChangeLog:
    
    2019-07-30  Christian Biesinger  <cbiesinger@google.com>
    
    	PR/24474: Add a function to lookup static variables.
    	* NEWS: Mention this new function.
    	* python/py-symbol.c (gdbpy_lookup_static_symbol): New function.
    	* python/python-internal.h (gdbpy_lookup_static_symbol): New function.
    	* python/python.c (python_GdbMethods): Add new function.
    
    gdb/doc/ChangeLog:
    
    2019-07-30  Christian Biesinger  <cbiesinger@google.com>
    
    	* python.texi (Symbols In Python): Document new function
    	gdb.lookup_static_symbol.
    
    gdb/testsuite/ChangeLog:
    
    2019-07-30  Christian Biesinger  <cbiesinger@google.com>
    
    	* gdb.python/py-symbol.c: Add a static variable and one in an anonymous
    	namespace.
    	* gdb.python/py-symbol.exp: Test gdb.lookup_static_symbol.

commit 5c4dde850c0d4874d3bbe6dd1989bf0f7a5ed1c3
Author: Christian Biesinger <cbiesinger@google.com>
Date:   Tue Jul 30 10:32:01 2019 -0500

    Add missing changelog entry
    
    I forgot to commit the change before pushing commit
    25ec8924842a215e7f684d3a5076607409ac822f

commit 0f575925b6ff89def089e6b6ba810ee547d3978d
Author: Tom de Vries <tdevries@suse.de>
Date:   Tue Jul 30 16:15:46 2019 +0200

    [gdb/testsuite] Work around tcl bug in libsegfault.exp with check-read1
    
    When running libsegfault.exp with check-read1, I get:
    ...
    Running gdb/testsuite/gdb.base/libsegfault.exp ...
    ERROR: tcl error sourcing gdb/testsuite/gdb.base/libsegfault.exp.
    ERROR: no such variable
        (read trace on "env(LD_PRELOAD)")
        invoked from within
    "set env(LD_PRELOAD)"
        ("uplevel" body line 1)
        invoked from within
    "uplevel 1 [list set $var]"
        invoked from within
    "if [uplevel 1 [list array exists $var]] {
                    set saved_arrays($var) [uplevel 1 [list array get $var]]
                } else {
                    set saved_scalars($var) [uplevel ..."
        invoked from within
    "if [uplevel 1 [list info exists $var]] {
                if [uplevel 1 [list array exists $var]] {
                    set saved_arrays($var) [uplevel 1 [list array get $var]]
              ..."
        (procedure "save_vars" line 11)
        invoked from within
    "save_vars { env(LD_PRELOAD) } {
            if { ![info exists env(LD_PRELOAD) ]
                 || $env(LD_PRELOAD) == "" } {
                set env(LD_PRELOAD) "$lib"
            } else {
             ..."
        (procedure "gdb_spawn_with_ld_preload" line 4)
        invoked from within
    "gdb_spawn_with_ld_preload $libsegfault """
    ...
    
    There are several things here interacting with environment variable
    LD_PRELOAD:
    - the expect "binary" build/gdb/testsuite/expect-read1 with does
      export LD_PRELOAD=build/gdb/testsuite/read1.so before calling native expect
    - read1.so which does unsetenv ("LD_PRELOAD") upon first call to read
    - the test-case, which wants to set or append libSegFault.so to LD_PRELOAD
    
    The error occurs when accessing $env(LD_PRELOAD), in a branch where
    "info exists env(LD_PRELOAD)" returns true. AFAIU, this is
    https://core.tcl-lang.org/tcl/tktview?name=67fd4f973a "incorrect results of
    'info exists' when unset env var in one interp and check for existence from
    another interp".
    
    Work around the tcl bug by not unsetting the variable, but setting it to ""
    instead:
    ...
    -      unsetenv ("LD_PRELOAD");
    +      setenv ("LD_PRELOAD", "", 1);
    ...
    
    Verified that reverting commit de28a3b72e "[gdb/testsuite, 2/2] Fix
    gdb.linespec/explicit.exp with check-read1" reintroduced the check-read1
    failure in gdb.linespec/explicit.exp.
    
    This fixes a similar error in attach-slow-waitpid.exp, which also sets
    LD_PRELOAD.
    
    Tested on x86_64-linux with check-read1.
    
    gdb/testsuite/ChangeLog:
    
    2019-07-30  Tom de Vries  <tdevries@suse.de>
    
    	* lib/read1.c (read): Don't use unsetenv (v), use setenv (v, "", 1)
    	instead.

commit b13057d9ceaa4944dc2d0ebf5df750d9350d0727
Author: Tom de Vries <tdevries@suse.de>
Date:   Tue Jul 30 09:42:07 2019 +0200

    [gdb/testsuite] Fail in gdb_compile if nopie results in PIE executable
    
    When running gdb.base/dump.exp with --target_board=unix/-fPIE/-pie, we get:
    ...
    Running gdb/testsuite/gdb.base/dump.exp ...
    FAIL: gdb.base/dump.exp: dump array as value, intel hex
    ...
    
    The FAIL happens because although the test specifies nopie, the exec is
    in fact compiled as PIE.  The "-fPIE -pie" options specified using the
    target_board are interpreted by dejagnu as multilib_flags, and end up
    overriding the nopie flags.
    
    Fix this by checking in gdb_compile if the resulting exec is PIE despite of
    a nopie setting, and if so return an error:
    ...
    Running gdb/testsuite/gdb.base/dump.exp ...
    gdb compile failed, nopie failed to prevent PIE executable
    
                    === gdb Summary ===
    
    nr of untested testcases         1
    ...
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-07-30  Tom de Vries  <tdevries@suse.de>
    
    	PR testsuite/24834
    	* lib/gdb.exp (gdb_compile): Fail if nopie results in PIE executable.
    	(exec_is_pie): New proc.

commit 34d5c40a07be4bc195d5ed9aecf4eb2faa1482bc
Author: Alan Modra <amodra@gmail.com>
Date:   Tue Jul 30 13:14:36 2019 +0930

    Re: Support .gnu.lto_.lto section in ELF files
    
    	PR 24768
    	* bfd.c (struct bfd): Add lto_slim_object flag.
    	* bfd-in2.h: Regenerate.

commit 25ec8924842a215e7f684d3a5076607409ac822f
Author: Christian Biesinger <cbiesinger@google.com>
Date:   Mon Jul 29 21:00:21 2019 -0500

    Fix misspelling (nonexistant -> nonexistent)
    
    gdb/testsuite/ChangeLog:
    
    2019-07-29  Christian Biesinger  <cbiesinger@google.com>
    
    	* gdb.python/py-objfile.exp: Fix misspelling (nonexistant -> nonexistent)

commit c620ed8866cc90ccfa363daf98ce7061d076d598
Author: Christian Biesinger <cbiesinger@google.com>
Date:   Tue Jun 25 15:45:41 2019 -0500

    Add Objfile.lookup_{global,static}_symbol functions
    
    This is essentially the inverse of Symbol.objfile. This allows
    handling different symbols with the same name (but from different
    objfiles) and can also be faster if the objfile is known.
    
    gdb/ChangeLog:
    
    2019-07-29  Christian Biesinger  <cbiesinger@google.com>
    
    	* NEWS: Mention new functions Objfile.lookup_{global,static}_symbol.
    	* python/py-objfile.c (objfpy_lookup_global_symbol): New function.
    	(objfpy_lookup_static_symbol): New function.
    	(objfile_object_methods): Add new functions.
    
    gdb/doc/ChangeLog:
    
    2019-07-29  Christian Biesinger  <cbiesinger@google.com>
    
    	* python.texi (Objfiles In Python): Document new functions
    	  Objfile.lookup_{global,static}_symbol.
    
    gdb/testsuite/ChangeLog:
    
    2019-07-29  Christian Biesinger  <cbiesinger@google.com>
    
    	* gdb.python/py-objfile.c: Add global and static vars.
    	* gdb.python/py-objfile.exp: Test new functions Objfile.
    	  lookup_global_symbol and lookup_static_symbol.

commit e48de49be52cb6e0fe3edbcdc3e63bbc2465d930
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Tue Jul 30 00:00:19 2019 +0000

    Automatic date update in version.in

commit 3d2357068b03edc850b3d84a27dbe6ad12a66d6f
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jul 28 15:02:35 2019 -0600

    Two fixes for test suite's terminal
    
    Exactly which escape sequences are emitted by gdb in TUI mode are
    determined largely by the curses implementation.  Testing my latest
    (as yet unsubmitted) series to refactor the TUI showed a couple of
    failures that I tracked to the test suite's terminal implementation.
    
    In particular, the CSI "@" sequence was not implemented; and the CSI
    "X" sequence was implemented incorrectly.
    
    This patch fixes both of these problems.  Tested on x86-64 Fedora 28.
    
    gdb/testsuite/ChangeLog
    2019-07-29  Tom Tromey  <tom@tromey.com>
    
    	* lib/tuiterm.exp (Term::_csi_@): New proc.
    	(Term::_csi_X): Don't move cursor.

commit bc4268a5d926c8f29e42d245322145dad131627f
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date:   Sat May 4 23:48:36 2019 +0200

    Document 'set print frame-info|frame-arguments presence'.
    
    gdb/ChangeLog
    2019-06-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
    
    	* NEWS: Mention 'set|show print frame-info'.  Mention new
    	'presence' value for 'frame-arguments'.  Mention new '-frame-info'
    	backtrace argument.  Mention that python frame filtering code
    	is now consistent with what 'backtrace' command prints.
    
    gdb/doc/ChangeLog
    2019-07-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
    
    	* gdb.texinfo (Backtrace): Document the new '-frame-info'
    	backtrace option.  Reference 'set print frame-info'.
    	(Print Settings): Document 'set|show print frame-info'.
    	Document new 'presence' value for 'set print frame-arguments.

commit c7e4c0a6482cebcf8b129d1008a2c553a0183aee
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date:   Sat May 4 23:47:57 2019 +0200

    Test 'set print frame-info|frame-arguments presence'.
    
    Updated tests to test the new options and new values.
    Test the default for print_what in python frame filtering.
    Updated the tests impacted by the default in python frame filtering
    which is now consistent with the backtrace command.
    
    gdb/testsuite/ChangeLog
    2019-07-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
    
    	* gdb.base/options.exp: Update backtrace - completion to
    	new option -frame-info.
    	* gdb.base/frame-args.exp: Test new 'frame-arguments presence'.
    	Test new 'set print frame-info'.  Test backtrace -frame-info
    	overriding 'set print frame-info'.
    	* gdb.python/py-framefilter.exp: Test new 'frame-arguments presence'.
    	Test new 'set print frame-info'.
    	Verify consistency of backtrace with and without filters, with and
    	without -no-filters.
    	* gdb.python/py-framefilter-invalidarg.exp: Update to new print_what
    	default.

commit 4b5e8d19afe4accc3dd87aeba58d6704e71c610d
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date:   Sat May 4 23:40:56 2019 +0200

    Implement 'set print frame-info|frame-arguments presence'.
    
    New settings allow to better control what frame information is printed.
    
    'set print frame-info' allows to override the default frame information
    printed when a GDB command prints a frame.
    The backtrace command has a new option -frame-info to override
    this global setting.
    
    It is now possible to have very short frame information by using the
    new 'set print frame-arguments presence' and
    'set print frame-info short-location'.
    
    Combined with 'set print address off', a backtrace will only show
    the essential information to see the function call chain, e.g.:
      (gdb) set print address off
      (gdb) set print frame-arguments presence
      (gdb) set print frame-info short-location
      (gdb) bt
      #0  break_me ()
      #1  call_me (...)
      #2  main ()
      (gdb)
    
    This is handy in particular for big backtraces with functions having
    many arguments.
    
    Python frame filter printing logic has been updated to respect the new
    setting in non MI mode.
    
    Also, the default frame information printed was inconsistent when
    backtrace was printing the frame information itself, or when the python
    frame filtering code was printing the frame information.
    This patch changes the default of python frame filtering to have a
    consistent behaviour regarding printed frame-information, whatever
    the presence/activity/matches of python filters.
    
    2019-07-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
    
    	* frame.h (enum print_what): New value 'SHORT_LOCATION', update
    	comments.
    	(print_frame_info_auto, print_frame_info_source_line,
    	print_frame_info_location, print_frame_info_source_and_location,
    	print_frame_info_location_and_address, print_frame_info_short_location):
    	New declarations.
    	(struct frame_print_options): New member print_frame_info.
    	* extension.h (enum ext_lang_frame_args): New value CLI_PRESENCE.
    	* stack.h (get_user_print_what_frame_info): New declaration.
    	(frame_show_address): New declaration.
    	* stack.c (print_frame_arguments_choices): New value 'presence'.
    	(print_frame_info_auto, print_frame_info_source_line,
    	print_frame_info_location, print_frame_info_source_and_location,
    	print_frame_info_location_and_address, print_frame_info_short_location,
    	print_frame_info_choices, print_frame_info_print_what): New definitions.
    	(print_frame_args): Only print dots for args if print frame-arguments
    	is 'presence'.
    	(frame_print_option_defs): New element for "frame-info".
    	(get_user_print_what_frame_info): New function.
    	(frame_show_address): Make non static.  Move comment to stack.h.
    	(print_frame_info_to_print_what): New function.
    	(print_frame_info): Update comment.  Use fp_opts.print_frame_info
    	to decide what to print.
    	(backtrace_command_1): Handle the new print_frame_arguments_presence
    	value.
    	(_initialize_stack): Call add_setshow_enum_cmd for frame-info.
    	* python/py-framefilter.c (py_print_args): Handle CLI_PRESENCE.
    	(py_print_frame): In non-mi mode, use LOCATION as default for
    	print_what, similarly to frame information printed directly by
    	backtrace command. Handle frame-info user option in non MI mode.

commit de28a3b72e4e85233c6ece9063696b13ef170c00
Author: Tom de Vries <tdevries@suse.de>
Date:   Mon Jul 29 16:24:57 2019 +0200

    [gdb/testsuite, 2/2] Fix gdb.linespec/explicit.exp with check-read1
    
    When running gdb.linespec/explicit.exp with check-read1, we get:
    ...
    (gdb) PASS: gdb.linespec/explicit.exp: set max-completions unlimited
    break \a
    -function
      ...
    top
    (gdb) PASS: gdb.linespec/explicit.exp: complete with no arguments
    break
    -function
     ...
    top
    (gdb) FAIL: gdb.linespec/explicit.exp: complete with no arguments (clearing input line)
    ...
    
    The problem is that the send_gdb "\t\t" triggers completion twice:
    ...
            set tst "complete with no arguments"
            send_gdb "break \t"
            gdb_test_multiple "" $tst {
                "break \\\x07" {
                    send_gdb "\t\t"
                    gdb_test_multiple "" $tst {
    	...
    	}
    	clear_input_line $tst
    ...
    but the following gdb_test_multiple only parses it once, so the second
    completion is left for clear_input_line, which fails.
    
    Fix this by triggering completion only once.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-07-29  Tom de Vries  <tdevries@suse.de>
    
    	* gdb.linespec/explicit.exp: Fix completion trigger for "complete with
    	no arguments".

commit 507dd60e28d0ef35ffb7c0880933d6b88cc3f5bd
Author: Tom de Vries <tdevries@suse.de>
Date:   Mon Jul 29 16:24:57 2019 +0200

    [gdb/testsuite, 1/2] Fix gdb.linespec/explicit.exp with check-read1
    
    When running gdb.linespec/explicit.exp with check-read1, we get:
    ...
    (gdb) PASS: gdb.linespec/explicit.exp: complete unique file name: break -source "3explicit.c"
    break -source exp^Glicit^G^M
    explicit.c   explicit2.c  ^M
    (gdb) FAIL: gdb.linespec/explicit.exp: complete non-unique file name
    ...
    
    The problem is that we have a gdb_test_multiple where we match two regexps:
    ...
            set tst "complete non-unique file name"
            send_gdb "break -source exp\t"
            gdb_test_multiple "" $tst {
                -re "break -source exp\\\x07licit" {
                    ...
                }
    
                -re "break -source exp\\\x07l" {
                    # This pattern may occur when glibc debuginfo is installed.
    		...
                }
            }
    ...
    but since second is a substring of the first, we'll usually match the first,
    but with check-read1 we'll match the second.
    
    Fix this by using a single regexp and merging the related code.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-07-29  Tom de Vries  <tdevries@suse.de>
    
    	* gdb.linespec/explicit.exp: Fix gdb_test_multiple regexps where second
    	is a substring of the first for "complete non-unique file name".

commit 5beafce944b6b200d1fa80d7f4a8656cb2ecf2fa
Author: Tom de Vries <tdevries@suse.de>
Date:   Mon Jul 29 15:07:47 2019 +0200

    [gdb/testsuite] Fix python.exp with check-read1
    
    when running python/python.exp with check-read1, we get:
    ...
    (gdb) PASS: gdb.python/python.exp: prompt substitution readline - end
    python gdb.prompt_hook = error_prompt^M
    Python Exception <type 'exceptions.RuntimeError'> Python exception calledPASS: gdb.python/python.exp: set hook
    : ^M
    (gdb) PASS: gdb.python/python.exp: set the hook to default
    python gdb.prompt_hook = None^M
    (gdb) PASS: gdb.python/python.exp: set print-stack full for prompt error test
    set python print-stack full^M
    (gdb) FAIL: gdb.python/python.exp: set the hook
    python gdb.prompt_hook = error_prompt^M
    Traceback (most recent call last):^M
      File "<string>", line 3, in error_prompt^M
    RuntimeError: Python exception called^M
    (gdb) FAIL: gdb.python/python.exp: set the hook to default
    ...
    
    The problem is that gdb_test_multiple here:
    ...
    gdb_test_multiple "python gdb.prompt_hook = error_prompt" "set the hook" {
        -re "Python Exception (exceptions.RuntimeError|<(type 'exceptions.|class ')RuntimeError'>) Python excepti
    on called.*" {
           pass "set hook"
        }
    }
    ...
    specifies a regexp that ends with ".*" but doesn't specify the expected
    $gdb_prompt.
    
    Consequently, due to check-read1, the ".*" is matched to "" and the remaining
    $gdb_prompt  is read by the the following gdb_py_test_silent_cmd, which has
    its own $gdb_prompt read by the following gdb_py_test_silent_cmd, which has
    its own $gdb_prompt causing a mismatch for the following gdb_test_multiple:
    ...
    gdb_test_multiple "python gdb.prompt_hook = error_prompt" "set the hook" {
        -re "Traceback.*File.*line.*RuntimeError.*Python exception called.*" {
            pass "set hook"
        }
    }
    ...
    which causes both FAILs.
    
    The second gdb_test_multiple has the same problem as the first, but it happens
    not to cause a FAIL because it's followed by a gdb_py_test_silent_cmd and a
    clean_restart.
    
    Fix the regexps in both gdb_test_multiple calls.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-07-29  Tom de Vries  <tdevries@suse.de>
    
    	* gdb.python/python.exp: Don't terminate gdb_test_multiple regexp
    	with ".*".

commit 2d274232f3e693d54f8dd561de73810d1a03ddf7
Author: Tom de Vries <tdevries@suse.de>
Date:   Mon Jul 29 14:11:13 2019 +0200

    [gdb/testsuite] Fix mi-catch-cpp-exceptions.exp and mi-nonstop.exp with check-read1
    
    With check-read1 we get:
    ...
    FAIL: gdb.mi/mi-catch-cpp-exceptions.exp: check for stap probe in libstdc++
    FAIL: gdb.mi/mi-nonstop.exp: probe for target remote
    ...
    
    In both cases this is due to using gdb_test_multiple (which expects $gdb_prompt
    by default) in combination with gdb using $gdb_mi_prompt, similar to the
    problem fixed by commit d17725d72f "Don't expect gdb_prompt in
    mi_skip_python_test".
    
    Fix this by adding the $prompt_regexp argument to the gdb_test_multiple calls.
    
    gdb/testsuite/ChangeLog:
    
    2019-07-29  Tom de Vries  <tdevries@suse.de>
    
    	* lib/gdb.exp (skip_libstdcxx_probe_tests_prompt, gdb_is_target_1):
    	Pass prompt_regexp parameter to gdb_test_multiple calls.

commit 9197cd8b52aa41a04b883d83df863ecb5afc5d35
Author: Tom de Vries <tdevries@suse.de>
Date:   Mon Jul 29 11:24:04 2019 +0200

    [gdb/testsuite] Fix gdb.base/maint.exp with check-read1
    
    With gdb.base/maint.exp and check-read1, we get:
    ...
    FAIL: gdb.base/maint.exp: maint print registers
    ...
    
    Using this patch:
    ...
    diff --git a/gdb/testsuite/gdb.base/maint.exp b/gdb/testsuite/gdb.base/maint.exp
    index a7675ea215..b81d7ec660 100644
    --- a/gdb/testsuite/gdb.base/maint.exp
    +++ b/gdb/testsuite/gdb.base/maint.exp
    @@ -81,7 +81,9 @@ gdb_test_multiple $test $test {
             exp_continue
         }
         -re "$gdb_prompt $" {
    -        gdb_assert { $saw_registers && $saw_headers } $test
    +       gdb_assert { $saw_headers } "$test: saw headers"
    +       gdb_assert { $saw_registers } "$test: saw registers"
    +       pass "$test: got prompt"
         }
     }
    ...
    
    We get more information:
    ...
    PASS: gdb.base/maint.exp: maint print registers: saw headers
    FAIL: gdb.base/maint.exp: maint print registers: saw registers
    PASS: gdb.base/maint.exp: maint print registers: got prompt
    ...
    
    The problem is that when matching:
    ...
    (gdb) maint print registers^M
     Name         Nr  Rel Offset    Size  Type            ^M
     rax           0    0      0       8 int64_t         ^M
    ...
    the regexp for $saw_headers ends in "\[\r\n\]+", which
    allows it to match only the "\r".  The remaining "\n" then start the next line
    to be matched, which doesn't match for the $saw_registers regexp since it
    starts with "^\[^\r\n\]+".
    
    Fix this by ending the regexps with "\r\n".
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-07-29  Tom de Vries  <tdevries@suse.de>
    
    	* gdb.base/maint.exp: Use "\r\n" instead of "\[\r\n\]+" in "maint
              print registers" regexps.

commit b528dae0954436ab103fb8ab6fc1ca632b4a7c51
Author: Tom de Vries <tdevries@suse.de>
Date:   Mon Jul 29 11:24:04 2019 +0200

    [gdb/testsuite] Fix gdb.base/define.exp with check-read1
    
    When running gdb.base/define.exp with check-read1, we get:
    ...
    show prompt^M
    Gdb's prompt is "(gdb) ".^M
    (gdb) PASS: gdb.base/define.exp: save gdb_prompt
    set prompt \(blah\) ^M
    (blah) PASS: gdb.base/define.exp: set gdb_prompt
    set prompt (gdb) PASS: gdb.base/define.exp: reset gdb_prompt
    ^M
    (gdb) FAIL: gdb.base/define.exp: define do-define
    ...
    
    The problem is that the "$gdb_prompt $" regexp here:
    ...
    gdb_test_multiple "set prompt $prior_prompt " "reset gdb_prompt" {
        -re "$gdb_prompt $" {
            pass "reset gdb_prompt"
        }
    }
    ...
    triggers for the echoing of the command "set prompt $prior_prompt " rather
    than for the prompt after the command has executed.
    
    Fix this by changing the regexp to "\r\n$gdb_prompt $".
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-07-29  Tom de Vries  <tdevries@suse.de>
    
    	* gdb.base/define.exp: Add "\r\n" to "reset gdb_prompt" regexp.

commit d17725d72f25812acc8bd16a368c0e889c4b4d1e
Author: Tom de Vries <tdevries@suse.de>
Date:   Mon Jul 29 11:24:04 2019 +0200

    [gdb/testsuite] Don't expect gdb_prompt in mi_skip_python_test
    
    When running gdb.python/py-mi-events.exp with make check-read1, we get:
    ...
    (gdb) ^M
    python print ('test')^M
    &"python print ('test')\n"^M
    ~"test\n"^M
    ^done^M
    (gdb) FAIL: gdb.python/py-mi-events.exp: verify python support
    ^M
    python print (sys.version_info[0])^M
    &"python print (sys.version_info[0])\n"^M
    ~"2\n"^M
    ^done^M
    (gdb) FAIL: gdb.python/py-mi-events.exp: check if python 3
    ^M
    ...
    
    The FAILs happen as follows.
    
    On one hand, skip_python_tests_prompt uses the prompt_regexp parameter for the
    user_code argument of gdb_test_multiple:
    ...
    proc skip_python_tests_prompt { prompt_regexp } {
        global gdb_py_is_py3k
    
        gdb_test_multiple "python print ('test')" "verify python support" {
    	-re "not supported.*$prompt_regexp" {
    	    unsupported "Python support is disabled."
    	    return 1
    	}
    	-re "$prompt_regexp" {}
        }
    
        gdb_test_multiple "python print (sys.version_info\[0\])" "check if python 3" {
    	-re "3.*$prompt_regexp" {
                set gdb_py_is_py3k 1
            }
    	-re ".*$prompt_regexp" {
                set gdb_py_is_py3k 0
            }
        }
    ...
    
    On the other hand, gdb_test_multiple itself uses $gdb_prompt:
    ...
             -re "\r\n$gdb_prompt $" {
                if ![string match "" $message] then {
                    fail "$message"
                }
                set result 1
            }
    ...
    
    So when mi_skip_python_test calls skip_python_tests_prompt with prompt_regexp
    set to $mi_gdb_prompt:
    ...
    proc mi_skip_python_tests {} {
        global mi_gdb_prompt
        return [skip_python_tests_prompt "$mi_gdb_prompt$"]
    }
    ...
    and expect reads "(gdb) " and tries to match it (due to the READ1=1 setting),
    the user_code regexps using $prompt_regexp (set to $mi_gdb_prompt) don't match,
    but the $gdb_prompt regexp in gdb_test_multiple does match.
    
    Fix this by adding a prompt_regexp parameter to gdb_test_multiple, and using the
    parameter in skip_python_tests_prompt.
    
    Tested gdb.python/py-mi-events.exp with make check READ1=1 x86_64-linux.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-07-29  Tom de Vries  <tdevries@suse.de>
    
    	PR gdb/24855
    	* lib/gdb.exp (gdb_test_multiple): Add prompt_regexp parameter.
    	(skip_python_tests_prompt): Add prompt_regexp argument to
    	gdb_test_multiple calls.

commit cc5277b173701364c10204f316db28198f2c683b
Author: Martin Liska <mliska@suse.cz>
Date:   Thu Jul 4 16:39:08 2019 +0200

    Support .gnu.lto_.lto section in ELF files (PR 24768).
    
    bfd/ChangeLog:
    
    2019-07-22  Martin Liska  <mliska@suse.cz>
    
    	PR 24768
    	* archive.c (_bfd_compute_and_write_armap): Come up with
    	report_plugin_err variable.
    	* bfd-in2.h (struct bfd): Add lto_slim_object flag.
    	* elf.c (struct lto_section): New.
    	(_bfd_elf_make_section_from_shdr): Parse content of
    	.gnu_lto_.lto section.
    	* elflink.c: Report error for a missing LTO plugin.
    	* linker.c (_bfd_generic_link_add_one_symbol): Likewise.
    
    binutils/ChangeLog:
    
    2019-07-22  Martin Liska  <mliska@suse.cz>
    
    	PR 24768
    	* nm.c (filter_symbols): Set report_plugin_err if
    	error is reported.
    	(display_rel_file): Report error for a missing LTO plugin.
    
    gold/ChangeLog:
    
    2019-07-22  Martin Liska  <mliska@suse.cz>
    
    	PR 24768
    	* layout.h (class Layout): Add is_lto_slim_object and
    	set_lto_slim_object.
    	* object.cc (struct lto_section): Add lto_slim_object_.
    	(big_endian>::do_layout): Parse content of
    	.gnu_lto_.lto section.
    	(big_endian>::do_add_symbols): Report error for a missing
    	LTO plugin.

commit ac50aea1311b01c745afc4dba102a8d20d0eea6e
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Mon Jul 29 00:00:28 2019 +0000

    Automatic date update in version.in

commit 4538d1c7c46e67b472d8d5ebf163f3dfd9c67714
Author: Alan Modra <amodra@gmail.com>
Date:   Sun Jul 28 14:56:37 2019 +0930

    PR24857, ld: error adding symbols: bad value
    
    This fixes two cases where elf_link_add_object_symbols returns an
    error, setting the catch-all bfd_error_bad_value without explaining
    the error.  The second one is an internal error that can only be
    caused by a target elf_add_symbol_hook, so make that one abort.  The
    first one is my PR24339 fix.  PR24339 is another of those fuzzing bugs
    and the fix I made catches the problem when loading symbols, rather
    than when symbols are used in relocs.  While ld is correct to reject
    the object file as not complying with the ELF standard, let's be a
    little more forgiving for dynamic objects.
    
    	PR 24857
    	PR 24339
    	* elflink.c (elf_link_add_object_symbols): Report an informative
    	error on finding local symbols with index equal or greater than
    	symbol table sh_info.  Correct comment.  Allow such symbols in
    	dynamic objects.  Abort on NULL section for symbol.

commit 52b75bf1dc759e8d9eda9a71caa52e458e57e4ff
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jul 21 08:13:58 2019 -0600

    Add test that "file" shows "main"
    
    This adds a new test that checks that the "file" command will show the
    program's "main".
    
    gdb/testsuite/ChangeLog
    2019-07-27  Tom Tromey  <tom@tromey.com>
    
    	* gdb.tui/main.exp: New file.

commit 2b1d00c2b828ea98fb61f07496882f8a7aa99f5f
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jul 20 14:46:29 2019 -0600

    Add test case for empty TUI windows
    
    My original intent here was to add a test case to test that empty TUI
    windows re-render their contents after a resize.  However, this seems
    pretty broken at the moment, so a lot of the test is actually
    disabled.
    
    gdb/testsuite/ChangeLog
    2019-07-27  Tom Tromey  <tom@tromey.com>
    
    	* lib/tuiterm.exp (Term::clean_restart): Make "executable"
    	optional.
    	* gdb.tui/empty.exp: New file.

commit ded631d57dec8c75ff5713f062b1c5667c31ec23
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jul 19 16:15:58 2019 -0600

    Add TUI resizing test
    
    This adds a test case that resizes the terminal and then checks that
    the TUI updates properly.
    
    gdb/testsuite/ChangeLog
    2019-07-27  Tom Tromey  <tom@tromey.com>
    
    	* lib/tuiterm.exp (spawn): New proc.
    	(Term::resize): New proc.
    	* gdb.tui/resize.exp: New file.

commit 58ac439d385a285382733a35ca1fb2666edf6540
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jul 20 14:49:29 2019 -0600

    Add TUI test for "list"
    
    This adds a test to check that the "list" command will update the TUI
    source window.
    
    gdb/testsuite/ChangeLog
    2019-07-27  Tom Tromey  <tom@tromey.com>
    
    	* gdb.tui/list.exp: New file.

commit fe1f56ee14b2c30f088dc65bb4b67b9793199cea
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Jul 18 18:07:59 2019 -0600

    Add TUI register window test
    
    This adds a very simple test of the TUI register window.
    
    gdb/testsuite/ChangeLog
    2019-07-27  Tom Tromey  <tom@tromey.com>
    
    	* gdb.tui/regs.exp: New file.

commit f790b310d2c29f08be79d6af8d8c391bf793fce7
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Jul 18 16:54:32 2019 -0600

    Add "layout split" test
    
    This adds a test of "layout split" to the TUI test suite.
    
    gdb/testsuite/ChangeLog
    2019-07-27  Tom Tromey  <tom@tromey.com>
    
    	* gdb.tui/basic.exp: Add "layout split" test.

commit d95fc6eec07344f83ec0aba4a1e4f17fb53da45b
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Jul 18 16:21:45 2019 -0600

    Add test for "layout asm"
    
    This adds a very simple test for "layout asm".
    
    gdb/testsuite/ChangeLog
    2019-07-27  Tom Tromey  <tom@tromey.com>
    
    	* gdb.tui/basic.exp: Add "layout asm" test.

commit c3786b3aa311e7fba247623a98135d63d1d51c99
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Jul 1 16:01:58 2019 -0600

    A virtual terminal for the test suite
    
    This patch implements a simple ANSI terminal emulator for the test
    suite.  It is still quite basic, but it is good enough to allow some
    simple TUI testing to be done.
    
    gdb/testsuite/ChangeLog
    2019-07-27  Tom Tromey  <tom@tromey.com>
    
    	* lib/tuiterm.exp: New file.
    	* gdb.tui/basic.exp: New file.

commit 1c316af29ff2db118796de1486bf4e9673ac2922
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Sun Jul 28 00:00:51 2019 +0000

    Automatic date update in version.in

commit 6bdfee81576aae55666a9245cfc0a316a6849957
Author: Kevin Buettner <kevinb@redhat.com>
Date:   Thu Jul 25 18:27:20 2019 -0700

    Fix gdb.python/py-thrhandle.exp failures for -m32 multilib
    
    This patch fixes the following failures when testing with
    "target_board unix/-m32" using a x86_64-pc-linux-gnu native GDB.
    
    FAIL: gdb.python/py-thrhandle.exp: print thread for bogus handle thrs[3]
    FAIL: gdb.python/py-thrhandle.exp: print thread for bogus handle thrs[4]
    FAIL: gdb.python/py-thrhandle.exp: print thread id for thrs[0]
    FAIL: gdb.python/py-thrhandle.exp: print thread id for thrs[1]
    FAIL: gdb.python/py-thrhandle.exp: print thread id for thrs[2]
    FAIL: gdb.python/py-thrhandle.exp: thread 0: fetch thread handle from thread
    FAIL: gdb.python/py-thrhandle.exp: thread 0: verify that handles are the same
    FAIL: gdb.python/py-thrhandle.exp: thread 1: fetch thread handle from thread
    FAIL: gdb.python/py-thrhandle.exp: thread 1: verify that handles are the same
    FAIL: gdb.python/py-thrhandle.exp: thread 2: fetch thread handle from thread
    FAIL: gdb.python/py-thrhandle.exp: thread 2: verify that handles are the same
    
    I've written it so that it might work for other 64-bit host / 32-bit target
    combos too.
    
    gdb/ChangeLog:
    
    	* linux-thread-db.c (thread_db_target::thread_handle_to_thread_info):
    	Add case for debugging 32-bit target on 64-bit host.  Revise
    	comment.

commit 98a617f8d5cf9bfb53b2e1d5cf3f0e0f188d9e53
Author: Kevin Buettner <kevinb@redhat.com>
Date:   Sat Jul 13 15:59:44 2019 -0700

    Fix stepping bug associated with non-contiguous blocks
    
    I recently noticed the following behavior while debugging
    dw2-ranges-func-low-cold.  This is one of the test programs associated
    with the test gdb.dwarf2/dw2-ranges-func.exp.
    
    (gdb) b 70
    Breakpoint 1 at 0x401129: file dw2-ranges-func-lo-cold.c, line 70.
    (gdb) run
    Starting program: dw2-ranges-func-lo-cold
    
    Breakpoint 1, foo ()
        at dw2-ranges-func-lo-cold.c:70
    70	  if (e) foo_cold ();				/* foo foo_cold call */
    (gdb) set var e=1
    (gdb) step
    [Inferior 1 (process 12545) exited normally]
    
    This is incorrect.  When stepping, we expect a step to occur.  We do not
    expect the program to exit.  Instead, we should see the following behavior:
    
    ...
    (gdb) set var e=1
    (gdb) step
    foo ()
        at dw2-ranges-func-lo-cold.c:54
    54	  baz ();					/* foo_cold baz call */
    
    (Note that I've shortened the paths in the above sessions to improve
    readability.)
    
    The bug is in fill_in_stop_func() in infrun.c.  While working on
    non-contiguous address range improvements in 2018, I replaced the
    call to find_pc_partial_function() with a call to
    find_function_entry_range_from_pc().  Although this seemed like the
    right thing to do at the time, I now think that calling
    find_pc_partial_function (along with some other tweaks) is the right
    thing to do.
    
    For blocks with a single contiguous range, these functions do pretty
    much the same thing: when the function succeeds, the function name,
    start address, and end address are all filled in.  Additionally,
    find_pc_partial_function contains an additional output parameter
    which is set to the block containing that PC.
    
    For blocks with non-contiguous ranges, find_pc_partial_function
    sets the start and end addresses to the start and end addresses
    of the range containing the pc.  find_function_entry_range_from_pc
    does what it says; it sets the start and end addresses to those
    of the range containing the entry pc.
    
    The reason that I had thought that using the entry pc range was
    correct is due to the fact that fill_in_stop_func() contains some
    code for advancing past the function start and entry point.  To do
    this, we'd need the range that contains the entry pc.
    
    However, when stepping, we actually want the range that contains the
    stop pc.  If that range also contains the entry pc, we should then
    attempt to advance stop_func_start past the start offset and entry
    point.  (I haven't thought very hard about the reason for advancing
    the stop_func_start in this manner.  Since it's been there for quite
    a while, I'm assuming that it's still a good idea.)
    
    Back when I wrote the test case, I had included a test for doing the
    step shown in the example above.  I had problems with it, however.  At
    the time, I thought it was due to differing compiler versions, so I
    disabled that portion of the test.  I have now reenabled those tests,
    but have left in place the logic which may be used to disable it.
    
    The changes to dw2-ranges-func.exp depend on my other recent changes
    to the file which have not been pushed yet.
    
    Finally, I'll note that the only caller of
    find_function_entry_range_from_pc() is/was fill_in_stop_func().  Once
    this commit goes in, it'll be dead code.  I considered removing it,
    but I think that it ought to be used (instead of
    find_pc_partial_function) for determining the correct range to scan
    for prologue analysis, so I'm going to leave it in place for now.
    
    gdb/ChangeLog:
    
    	* infrun.c (fill_in_stop_func): Use find_pc_partial_function
    	instead of find_function_entry_range_from_pc.
    
    testsuite/ChangeLog:
    
    	* gdb.dwarf2/dw2-ranges-func.exp (enable_foo_cold_stepping):
    	Enable tests associated with this flag.  Adjust regex
    	referencing "foo_low" to now refer to "foo_cold" instead.

commit 5c076da45ce9a24d47046ddb0bac02e158e6bf58
Author: Kevin Buettner <kevinb@redhat.com>
Date:   Sun Jun 2 18:31:22 2019 -0700

    Improve test gdb.dwarf2/dw2-ranges-func.exp
    
    The original dw2-ranges-func.exp test caused a function named foo to be
    created with two non-contiguous address ranges.  In the C source file,
    a function named foo_low was incorporated into the function foo which
    was also defined in that file.  The DWARF assembler is used to do this
    manipulation.  The source file had been laid out so that foo_low would
    likely be placed (by the compiler and linker) at a lower address than
    foo().
    
    The case where a range at a higher set of addresses (than foo) was not
    being tested.  In a recent discussion on gdb-patches, it became clear
    that performing such tests are desirable because bugs were discovered
    which only became evident when the other range was located at high(er)
    addresses than the range containing the entry point for the function.
    
    This other (non entry pc) address range is typically used for "cold"
    code which executes less frequently.  Thus, I renamed foo_low to
    foo_cold and renamed the C source file from dw-ranges-func.c to
    dw-ranges-func-lo.c.  I then made a copy of this file, naming it
    dw-ranges-func-hi.c.  (That was my intent anyway.  According to git,
    I renamed dw-ranges-func.c to dw-ranges-func-hi.c and then modified it.
    dw-ranges-func-lo.c shows up as an entirely new file.)
    
    Within dw-ranges-func-hi.c, I changed the placement of foo_cold()
    along with some of the other functions so that foo_cold() would be at
    a higher address than foo() while also remaining non-contiguous.  The
    two files, dw-ranges-func-lo.c and dw-ranges-func-hi.c, are
    essentially the same except for the placement of some of the functions
    therein.
    
    The tests in dw2-ranges-func.exp where then wrapped in a new proc named
    do_test which was then called in a loop from the outermost level.  The
    loop causes each of the source files to have the same tests run upon
    them.
    
    I also added a few new tests which test functionality fixed by the other
    commits to this patch series.  Due to the reorganization of the file,
    it's hard to identify these changes in the patch.  So, here are the
    tests which were added:
    
        with_test_prefix "no-cold-names" {
    
    	# Due to the calling sequence, this backtrace would normally
    	# show function foo_cold for frame #1.  However, we don't want
    	# this to be the case due to placing it in the same block
    	# (albeit at a different range) as foo.  Thus it is correct to
    	# see foo for frames #1 and #2.  It is incorrect to see
    	# foo_cold at frame #1.
    	gdb_test_sequence "bt" "backtrace from baz" {
    	    "\[\r\n\]#0 .*? baz \\(\\) "
    	    "\[\r\n\]#1 .*? foo \\(\\) "
    	    "\[\r\n\]#2 .*? foo \\(\\) "
    	    "\[\r\n\]#3 .*? main \\(\\) "
    	}
    
    	# Doing x/2i foo_cold should show foo_cold as the first symbolic
    	# address and an offset from foo for the second.  We also check to
    	# make sure that the offset is not too large - we don't GDB to
    	# display really large offsets that would (try to) wrap around the
    	# address space.
    	set foo_cold_offset 0
    	set test "x/2i foo_cold"
    	gdb_test_multiple $test $test {
    	    -re "   (?:$hex) <foo_cold>.*?\n   (?:$hex) <foo\[+-\](\[0-9\]+)>.*${gdb_prompt}" {
    	        set foo_cold_offset $expect_out(1,string)
    		pass $test
    	    }
    	}
    	gdb_assert {$foo_cold_offset <= 10000} "offset to foo_cold is not too large"
    
    	# Likewise, verify that second address shown by "info line" is at
    	# and offset from foo instead of foo_cold.
    	gdb_test "info line *foo_cold" "starts at address $hex <foo_cold> and ends at $hex <foo\[+-\].*?>.*"
    
        }
    
    When run against a GDB without the requisite bug fixes (from this patch
    series), these 6 failures should be seen:
    
    FAIL: gdb.dwarf2/dw2-ranges-func.exp: lo-cold: no-cold-names: backtrace from baz (pattern 4)
    FAIL: gdb.dwarf2/dw2-ranges-func.exp: lo-cold: no-cold-names: x/2i foo_cold
    FAIL: gdb.dwarf2/dw2-ranges-func.exp: lo-cold: no-cold-names: info line *foo_cold
    FAIL: gdb.dwarf2/dw2-ranges-func.exp: hi-cold: no-cold-names: backtrace from baz (pattern 3)
    FAIL: gdb.dwarf2/dw2-ranges-func.exp: hi-cold: no-cold-names: x/2i foo_cold
    FAIL: gdb.dwarf2/dw2-ranges-func.exp: hi-cold: no-cold-names: info line *foo_cold
    
    gdb/testsuite/ChangeLog:
    
    	* gdb.dwarf2/dw2-ranges-func.c: Rename to...
    	* gdb.dwarf2/dw2-ranges-func-lo-cold.c: ...this.
    	* gdb.dwarf2/dw2-ranges-func-lo-cold.c (foo_low): Change name to
    	foo_cold.  Revise comments to match.
    	* gdb.dwarf2/dw2-ranges-func-hi-cold.c: New file.
    	* gdb.dwarf2/dw2-ranges-func.exp (do_test): New proc. Existing tests
    	were wrapped into this proc; Call do_test in loop from outermost
    	level.
    	(foo_low): Rename all occurrences to "foo_cold".
    	(backtrace from baz): New test.
    	(x2/i foo_cold): New test.
    	(info line *foo_cold): New test.

commit 1aff7173105c9540bbbef75727aa200f5c288b2e
Author: Kevin Buettner <kevinb@redhat.com>
Date:   Sat Jun 1 13:42:29 2019 -0700

    dwarf2-frame.c: Fix FDE processing bug involving non-contiguous ranges
    
    In the course of revising the test case for
    gdb.dwarf2/dw2-ranges-func.exp, I added a new .c file which would
    cause the "cold" range to be at a higher address than the rest of the
    function.  In these tests, the range in question isn't really cold in
    the sense that a compiler has determined that it'll be executed less
    frequently.  Instead, it's simply the range that does not include the
    entry pc.  These tests are intended to mimic the output of such a
    compiler, so I'll continue to refer to this range as "cold" in the
    following discussion.
    
    The original test case had only tested a cold range placed
    at lower addresses than the rest of the function.  During testing of the
    new code where the cold range was placed at higher addresses, I found
    that I could produce the following backtrace:
    
        (gdb) bt
        #0  0x0000000000401138 in baz ()
    	at dw2-ranges-func-hi-cold.c:72
        #1  0x0000000000401131 in foo_cold ()
    	at dw2-ranges-func-hi-cold.c:64
        #2  0x000000000040111e in foo ()
    	at dw2-ranges-func-hi-cold.c:50
        #3  0x0000000000401144 in main ()
    	at dw2-ranges-func-hi-cold.c:78
    
    This is correct, except that we'd like to see foo() listed instead
    of foo_cold().  (I handle that problem in another patch.)
    
    Now look at what happens for a similar backtrace where the cold range
    is at a lower address than the foo's entry pc:
    
        (gdb) bt
        #0  0x000000000040110a in baz ()
    	at dw2-ranges-func-lo-cold.c:48
        #1  0x0000000000401116 in foo ()
    	at dw2-ranges-func-lo-cold.c:54
        #2  0x00007fffffffd4c0 in ?? ()
        #3  0x0000000000401138 in foo ()
    	at dw2-ranges-func-lo-cold.c:70
    
    Note that the backtrace doesn't go all the way back to main().  Moreover,
    frame #2 is messed up.
    
    I had seen this behavior when I had worked on the non-contiguous
    address problem last year.  At the time I convinced myself that the
    mangled backtrace was "okay" since we're doing strange things with
    the DWARF assembler.  We're taking a function called foo_cold (though
    it was originally called foo_low - my recent changes to the test case
    changed the name) and via the magic of the DWARF assembler, we're
    combining it into a separate (non-contiguous) range for foo.  Thus,
    it was a surprise to me when I got a good and complete backtrace when
    the cold symbol is placed at an address that's greater than entry pc.
    
    The function dwarf2_frame_cache (in dwarf2-frame.c) is making this
    call:
    
        if (get_frame_func_if_available (this_frame, &entry_pc)) ...
    
    If that call succeeds (returns a true value), the FDE is then
    processed up to the entry pc.  It doesn't make sense to do this,
    however, when the FDE in question does not contain the entry pc.  This
    can happen when the function in question is comprised of more than one
    (non-contiguous) address range.
    
    My fix is to add some comparisons to the test above to ensure that
    ENTRY_PC is within the address range covered by the FDE.
    
    gdb/ChangeLog:
    
    	* dwarf2-frame.c (dwarf2_frame_cache): Don't decode FDE instructions
    	for entry pc when entry pc is out of range for that FDE.

commit 2dc80cf8a5799120fd4e00199688f721e7de2a62
Author: Kevin Buettner <kevinb@redhat.com>
Date:   Wed Jul 3 17:35:21 2019 -0700

    Restrict use of minsym names when printing addresses in disassembled code
    
    build_address_symbolic contains some code which causes it to
    prefer the minsym over the the function symbol in certain cases.
    The cases where this occurs are the same as the "certain pathological
    cases" that used to exist in find_frame_funname().
    
    This commit largely disables that code; it will only prefer the
    minsym when the address of minsym is identical to that of the address
    under consideration AND the function address for the symbtab sym is
    not the same as the address under consideration.
    
    So, without this change, when using the dw2-ranges-func-lo-cold
    executable from the gdb.dwarf2/dw2-ranges-func.exp test, GDB exhibits
    the following behavior:
    
    (gdb) x/5i foo_cold
       0x40110d <foo+4294967277>:	push   %rbp
       0x40110e <foo+4294967278>:	mov    %rsp,%rbp
       0x401111 <foo+4294967281>:	callq  0x401106 <baz>
       0x401116 <foo+4294967286>:	nop
       0x401117 <foo+4294967287>:	pop    %rbp
    
    On the other hand, still without this change, using the
    dw2-ranges-func-hi-cold executable from the same test, GDB
    does this instead:
    
    (gdb) x/5i foo_cold
       0x401128 <foo_cold>:	push   %rbp
       0x401129 <foo_cold+1>:	mov    %rsp,%rbp
       0x40112c <foo_cold+4>:	callq  0x401134 <baz>
       0x401131 <foo_cold+9>:	nop
       0x401132 <foo_cold+10>:	pop    %rbp
    
    This is inconsistent behavior.  When foo_cold is at a lower
    address than the function's entry point, the symtab symbol (foo)
    is displayed along with a large positive offset which would wrap
    around the address space if the address space were only 32 bits wide.
    (A later patch fixes this problem by displaying negative offsets.)
    
    This commit makes the behavior uniform for both the "lo-cold" and
    "hi-cold" cases:
    
    lo-cold:
    
    (gdb) x/5i foo_cold
       0x40110d <foo_cold>:	push   %rbp
       0x40110e <foo-18>:	mov    %rsp,%rbp
       0x401111 <foo-15>:	callq  0x401106 <baz>
       0x401116 <foo-10>:	nop
       0x401117 <foo-9>:	pop    %rbp
    
    hi-cold:
    
    (gdb) x/5i foo_cold
       0x401128 <foo_cold>:	push   %rbp
       0x401129 <foo+35>:	mov    %rsp,%rbp
       0x40112c <foo+38>:	callq  0x401134 <baz>
       0x401131 <foo+43>:	nop
       0x401132 <foo+44>:	pop    %rbp
    
    In both cases, the symbol shown for the address at which foo_cold
    resides is shown as <foo_cold>.  Subsequent offsets are shown as
    either negative or positive offsets from the entry pc for foo.
    
    When disassembling a function, care must be taken to NOT display
    <+0> as the offset for the second range.  For this reason, I found
    it necessary to add the "prefer_sym_over_minsym" parameter to
    build_address_symbolic.  The type of this flag is a bool; do_demangle
    ought to be a bool also, so I made this change at the same time.
    
    gdb/ChangeLog:
    
    	* valprint.h (build_address_symbolic): Add "prefer_sym_over_minsym"
    	parameter.  Change type of "do_demangle" to bool.
    	* disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
    	Pass suitable "prefer_sym_over_minsym" flag to
    	build_address_symbolic().  Don't output "+" for negative offsets.
    	* printcmd.c (print_address_symbolic): Update invocation of
    	build_address_symbolic to include a "prefer_sym_over_minsym"
    	flag.
    	(build_address_symbolic): Add "prefer_sym_over_minsym" parameter.
    	Restrict cases in which use of minimal symbol is preferred to that
    	of a found symbol.  Update comments.

commit 567238c956c4e5530bd143bfae9393c7ae5524cd
Author: Kevin Buettner <kevinb@redhat.com>
Date:   Wed Jul 3 17:32:21 2019 -0700

    Prefer symtab symbol over minsym for function names in non-contiguous blocks
    
    The discussion on gdb-patches which led to this patch may be found
    here:
    
    https://www.sourceware.org/ml/gdb-patches/2019-05/msg00018.html
    
    Here's a brief synopsis/analysis:
    
    Eli Zaretskii, while debugging a Windows emacs executable, found
    that functions comprised of more than one (non-contiguous)
    address range were not being displayed correctly in a backtrace.  This
    is the example that Eli provided:
    
      (gdb) bt
      #0  0x76a63227 in KERNELBASE!DebugBreak ()
         from C:\Windows\syswow64\KernelBase.dll
      #1  0x012e7b89 in emacs_abort () at w32fns.c:10768
      #2  0x012e1f3b in print_vectorlike.cold () at print.c:1824
      #3  0x011d2dec in print_object (obj=<optimized out>, printcharfun=XIL(0),
          escapeflag=true) at print.c:2150
    
    The function print_vectorlike consists of two address ranges, one of
    which contains "cold" code which is expected to not execute very often.
    There is a minimal symbol, print_vectorlike.cold.65, which is the address
    of the "cold" range.
    
    GDB is prefering this minsym over the the name provided by the
    DWARF info due to some really old code in GDB which handles
    "certain pathological cases".  This comment reads as follows:
    
          /* In certain pathological cases, the symtabs give the wrong
    	 function (when we are in the first function in a file which
    	 is compiled without debugging symbols, the previous function
    	 is compiled with debugging symbols, and the "foo.o" symbol
    	 that is supposed to tell us where the file with debugging
    	 symbols ends has been truncated by ar because it is longer
    	 than 15 characters).  This also occurs if the user uses asm()
    	 to create a function but not stabs for it (in a file compiled
    	 with -g).
    
    	 So look in the minimal symbol tables as well, and if it comes
    	 up with a larger address for the function use that instead.
    	 I don't think this can ever cause any problems; there
    	 shouldn't be any minimal symbols in the middle of a function;
    	 if this is ever changed many parts of GDB will need to be
    	 changed (and we'll create a find_pc_minimal_function or some
    	 such).  */
    
    In an earlier version of this patch, I had left the code for the
    pathological case intact, but those who reviwed that patch recommended
    removing it.  So that's what I've done - I've removed it.
    
    gdb/ChangeLog:
    
    	* stack.c (find_frame_funname): Remove code which preferred
    	minsym over symtab sym in "certain pathological cases".

commit c89f9f2a528e490733ace16204752e9af945454e
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Sat Jul 27 00:00:25 2019 +0000

    Automatic date update in version.in

commit 89b085acaf8d449d6c9c0b0490c6a0c9a745db5d
Author: Brian Callahan <callab5@rpi.edu>
Date:   Fri Jul 26 14:48:15 2019 -0400

    Fix return type typo in obsd-nat.c that breaks build on OpenBSD
    
    To recap the bug report:
    Commit a068643 introduced a small typo that breaks the gdb build on OpenBSD.
    Line 38 of obsd-nat.c needs to be changed from std::sring to std::string.
    
    gdb/ChangeLog
    2019-07-26  Brian Callahan  <bcallah@openbsd.org>
    
    	PR gdb/24839:
    	* gdb/obsd-nat.c (obsd_nat_target::pid_to_str): Fix typo in return
    	type.

commit 1512d3b7b9de3a1943623f2e1f373459d5d80a98
Author: Tom de Vries <tdevries@suse.de>
Date:   Fri Jul 26 21:49:45 2019 +0200

    [gdb/testsuite] Fix unterminated string in i386-pkru.exp
    
    I ran into this error:
    ...
    ERROR: tcl error sourcing gdb/testsuite/gdb.arch/i386-pkru.exp.
    ERROR: missing "
        while executing
    "untested ""
        invoked from within
    "if { [prepare_for_testing "failed to prepare" ${testfile} ${srcfile} \
         [list debug additional_flags=${comp_flags}]] } {
        untested "failed to c..."
        (file "gdb/testsuite/gdb.arch/i386-pkru.exp" line 25)
        invoked from within
    ...
    caused by:
    ...
        untested "failed to compile x86 PKEYS test.
    ...
    
    Fix the unterminated string.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-07-26  Tom de Vries  <tdevries@suse.de>
    
    	* gdb.arch/i386-pkru.exp: Fix unterminated string.

commit 8e2e3c6c346c1c8142e714715e5a86b32f7e31ea
Author: Alan Modra <amodra@gmail.com>
Date:   Fri Jul 26 12:58:52 2019 +0930

    PR24798, buffer overflow in process_cu_tu_index
    
    	PR 24798
    	* dwarf.c (process_cu_tu_index): Avoid integer overflow on 64-bit
    	systems by casting ncols and nslots expressions to size_t.  Display
    	number of columns and slots before giving up due to buffer overflow.
    	Use %u to display unsigned ints.  Perform more pointer wrap tests.

commit 6dd17ae0f9b0d9fc230e75ce345da9793498554d
Author: Alan Modra <amodra@gmail.com>
Date:   Fri Jul 26 10:02:12 2019 +0930

    Begone elf_linker
    
    This field effectively became usused a long time ago, perhaps as early
    as 1994.
    
    	* elf-bfd.h (struct output_elf_obj_tdata): Delete "linker" field.
    	(elf_linker): Don't define.
    	* elflink.c (bfd_elf_final_link): Don't set elf_linker.

commit 6e99a238f01fcf6f77ae25e8ade57e509a724b1f
Author: Alan Modra <amodra@gmail.com>
Date:   Fri Jul 26 09:54:18 2019 +0930

    Ajdust lto-3r and lto-5r tests for powerpc64
    
    	* testsuite/ld-plugin/lto-3r.d: Accept D for powerpc64 descriptors.
    	* testsuite/ld-plugin/lto-5r.d: Likewise.

commit db2307377ffcd295f212cfa753e3ff45f1b85fb0
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Fri Jul 26 00:00:23 2019 +0000

    Automatic date update in version.in

commit f32feb4ab3c30a9a80e890a51ceb94b7446bd4ea
Author: Christian Biesinger <cbiesinger@google.com>
Date:   Thu Jul 25 17:17:49 2019 -0500

    Fix comment about the signature of add_separate_debug_file
    
    Also fixes the date in the changelog of my last commit.
    
    gdb/ChangeLog:
    
    2019-07-25  Christian Biesinger  <cbiesinger@google.com>
    
    	* python/py-objfile.c (add_separate_debug_file): Fix comment about
      this function's Python signature.

commit 297989a10c56aec56eab0ee63f1e61c33ab20905
Author: Tom de Vries <tdevries@suse.de>
Date:   Thu Jul 25 18:39:31 2019 +0200

    [gdb/testsuite] Test skip_libstdcxx_probe_tests in mi-catch-cpp-exceptions.exp
    
    On a system without SDT probes in libstdc++, we run into:
    ...
    FAIL: gdb.mi/mi-catch-cpp-exceptions.exp: all with invalid regexp: run until \
      breakpoint in main (unknown output after running)
    ...
    
    The test-case uses a regexp argument for the catch throw/rethrow/catch
    command, which is only supported on systems with SDT probes in libstdc++.
    
    Fix this by marking the portions of the test-case that use a regexp argument
    as unsupported on a system without SDT probes.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-07-25  Tom de Vries  <tdevries@suse.de>
    
    	PR testsuite/24830
    	* gdb.mi/mi-catch-cpp-exceptions.exp: Call
    	mi_skip_libstdcxx_probe_tests, and skip unsupported tests.
    	* lib/gdb.exp (skip_libstdcxx_probe_tests_prompt): Factor out of ...
    	(skip_libstdcxx_probe_tests): ... here.
    	* lib/mi-support.exp (mi_skip_libstdcxx_probe_tests): New proc.

commit d079b9c04afb48ecba42c42632c34974f5a32ce8
Author: Nick Clifton <nickc@redhat.com>
Date:   Thu Jul 25 17:29:01 2019 +0100

    Fix attributation of DWARF augmentation patch.

commit 48467cb99b04c9d908ce2dd74422c9c3f322ccc3
Author: Tom de Vries <vries@gcc.gnu.org>
Date:   Thu Jul 25 17:24:22 2019 +0100

    Have readelf and objdump display the contents of the DWARF augmentation data as a string, if it is printable.
    
    	PR 24809
    	* dwarf.c (display_debug_names): Display the contents of the
    	augmentation string, if it is printable.

commit c7c860d2d29ca3e774c29f328d2af42eeb031958
Author: YunQiang Su <syq@debian.org>
Date:   Thu Jul 25 16:34:58 2019 +0100

    When linking binary files into MIPS executables, default to MIPS 3 emaulation for 64-bit objects.
    
    	PR 24832
    	* elfxx-mips.c (mips_set_isa_flags): Default to MIPS 3 for 64-bit
    	mips inputs.

commit 2e6be59c8de57c32260771ac5307968d18793a0a
Author: Nick Clifton <nickc@redhat.com>
Date:   Thu Jul 25 13:05:27 2019 +0100

    Stop an illegal memory access by readelf when parsing a corrupt MIPS binary file.
    
    	PR 24837
    	* readelf.c (process_mips_specific): Check for buffer overflow
    	before reading reginfo information.

commit 442853af244e0352956a5d91ad5e169a85b58710
Author: Christian Biesinger <cbiesinger@google.com>
Date:   Tue Jun 25 15:45:41 2019 -0500

    Allow passing a block to lookup_global_symbol_from_objfile
    
    This has no behavior change in itself, but allows a future patch
    to add a function to the Python API to look up symbols in the
    static block.
    
    gdb/ChangeLog:
    
    2019-07-24  Christian Biesinger  <cbiesinger@google.com>
    
    	* compile/compile-object-load.c (compile_object_load): Pass GLOBAL_SCOPE.
    	* solib-spu.c (spu_lookup_lib_symbol): Pass GLOBAL_SCOPE.
    	* solib-svr4.c (elf_lookup_lib_symbol): Pass GLOBAL_SCOPE.
    	* symtab.c (lookup_global_symbol_from_objfile): Add a scope parameter.
    	* symtab.h (lookup_global_symbol_from_objfile): Likewise.

commit 75b493d0f95c6037753e0d250e1ecc6fe8d46c38
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Thu Jul 25 00:00:42 2019 +0000

    Automatic date update in version.in

commit b3b965fb91e1671da5b7d42349fa0d78e80c29f4
Author: Tom de Vries <tdevries@suse.de>
Date:   Wed Jul 24 19:01:59 2019 +0200

    [gdb/testsuite] Fix implicit declaration of printf in gdb.objc/*.m
    
    When running gdb.objc/objcdecode.exp we get:
    ...
    objcdecode.m: In function '-[Decode multipleDef]':
    objcdecode.m:14:3: warning: incompatible implicit declaration of built-in \
      function 'printf'
       printf("method multipleDef\n");
       ^~~~~~
    objcdecode.m:14:3: note: include '<stdio.h>' or provide a declaration of \
      'printf'
    ...
    
    Fix this in the three gdb.objc/*.m test-cases by including stdio.h.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-07-24  Tom de Vries  <tdevries@suse.de>
    
    	PR testsuite/24807
    	* gdb.objc/basicclass.m: Include stdio.h.
    	* gdb.objc/nondebug.m: Same.
    	* gdb.objc/objcdecode.m: Same.

commit 8f79c1075e8f258ac5a909b39704009ebc440e76
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Wed Jul 24 08:15:56 2019 -0700

    Revert "Remove tests that test __gnu_lto_v1 symbol."
    
    Revert
    
    commit 8c728a9d93e2342c57039fcdd6e4a502875b9e09
    Author: Martin Liska <mliska@suse.cz>
    Date:   Mon Jul 22 14:23:32 2019 +0200
    
        Remove tests that test __gnu_lto_v1 symbol.
    
    since outputs of these tests are used by later tests.  Check the normal
    symbol, foo, instead of __gnu_lto_v.*, which GCC stopped emitting after
    r273662.
    
    	* testsuite/ld-plugin/lto-3r.d: Restored.  Check foo instead
    	of __gnu_lto_v.*.
    	* testsuite/ld-plugin/lto-5r.d: Likewise.
    	* testsuite/ld-plugin/lto.exp: Run lto-3r and lto-5r tests.

commit 4625b4d081eb0a243c6c7370f9a12c97bf6bcf65
Author: Tom de Vries <tdevries@suse.de>
Date:   Wed Jul 24 17:16:01 2019 +0200

    [gdb/testsuite] Fix infoline-reloc-main-from-zero.exp compilation
    
    When running gdb.base/infoline-reloc-main-from-zero.exp, I see:
    ...
    Running gdb/testsuite/gdb.base/infoline-reloc-main-from-zero.exp ...
    gdb compile failed, ld: infoline-reloc-main-from-zero: \
      not enough room for program headers, try linking with -N
    ld: final link failed: bad value
    collect2: error: ld returned 1 exit status
    UNTESTED: gdb.base/infoline-reloc-main-from-zero.exp: infoline-reloc-main-from-zero.exp
    UNTESTED: gdb.base/infoline-reloc-main-from-zero.exp: failed to compile
    ...
    
    Fix this by following the suggestion:
    ...
    -set opts {debug "additional_flags=-nostdlib -emain -Wl,-Ttext=0x00"}
    +set opts {debug "additional_flags=-nostdlib -emain -Wl,-Ttext=0x00 -Wl,-N"}
    ...
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-07-24  Tom de Vries  <tdevries@suse.de>
    
    	PR testsuite/24612
    	* gdb.base/infoline-reloc-main-from-zero.exp: Add -Wl,-N to
    	additional_flags.

commit 9596751830b82b3ceaf8e6bb0c333181dfc96257
Author: Claudiu Zissulescu <claziss@gmail.com>
Date:   Wed Jul 24 17:53:00 2019 +0300

    [ARC] [COMMITTED] Fix formatting.
    
    Small formatting fixes.
    
    2019-07-24  Claudiu Zissulescu  <claziss@synopsys.com>
    
    	* elf32-arc.c (bfd_get_32_me): Add a small description, fix
    	formatting.
    	(reloc_type_to_name): Fix formatting.
    	(arc_elf_object_p): Likewise.
    	(debug_arc_reloc): Likewise.
    	(arc_do_relocation): Likewise.

commit dac6552d4a203db908e11ba4803c7e39e090716f
Author: Nick Clifton <nickc@redhat.com>
Date:   Wed Jul 24 15:21:24 2019 +0100

    Update the Swedish translation for the gas sub-directory.

commit 0f3f71676a8971e0376d7d99b383660f06ff4d95
Author: Claudiu Zissulescu <claziss@gmail.com>
Date:   Wed Jul 24 16:52:23 2019 +0300

    [ARC] Update disassembler opcode selection
    
    New instruction are added, and some of them are overlapping. Update
    disassembler to correctly recognize them. Introduce nps400 option.
    
    opcodes/
    xxxx-xx-xx  Claudiu Zissulescu  <claziss@synopsys.com>
    
    	* arc-dis.c (skip_this_opcode): Check also for 0x07 major opcodes,
    	and MPY class instructions.
    	(parse_option): Add nps400 option.
    	(print_arc_disassembler_options): Add nps400 info.
    
    gas/
    xxxx-xx-xx  Claudiu Zissulescu  <claziss@synopsys.com>
    
    	* testsuite/gas/arc/nps400-6.d: Update test.

commit 7e126ba31ab6536b1dd779e483b72f47d3a76742
Author: Claudiu Zissulescu <claziss@gmail.com>
Date:   Wed Jul 24 16:46:01 2019 +0300

    [ARC] Update ARC opcode table
    
    Update ARC opcode table by cleaning up invalid instructions, and fixing wrong encodings.
    
    opcodes/
    xxxx-xx-xx  Claudiu Zissulescu  <claziss@synopsys.com>
    
    	* arc-ext-tbl.h (bspeek): Remove it, added to main table.
    	(bspop): Likewise.
    	(modapp): Likewise.
    	* arc-opc.c (RAD_CHK): Add.
    	* arc-tbl.h: Regenerate.
    
    include/
    xxxx-xx-xx  Claudiu Zissulescu  <claziss@synopsys.com>
    
    	* include/opcode/arc.h (FASTMATH): Add.
    	(SWITCH): Likewise.

commit ef551643dc282159185cb9916c7cb0308ae03cdd
Author: Claudiu Zissulescu <claziss@gmail.com>
Date:   Wed Jul 24 16:33:29 2019 +0300

    [ARC] Add linker relaxation.
    
    Add linker relaxation. The first relaxation added is converting
    GOTPC32 to PCREL relocations. This relaxation doesn't change the size of
    the binary.
    
    bfd/
    xxxx-xx-xx  Claudiu Zissulescu  <claziss@synopsys.com>
    
    	* elf32-arc.c (bfd_get_32_me): New function.
    	(bfd_put_32_me): Likewise.
    	(arc_elf_relax_section): Likewise.
    	(bfd_elf32_bfd_relax_section): Define.
    
    ld/testsuite/
    xxxx-xx-xx  Claudiu Zissulescu  <claziss@synopsys.com>
    
    	* ld-arc/relax-local-pic.d: New test.
    	* ld-arc/relax-local-pic.s: New file.

commit c54e42531adb7bf8d58bd4c3c8e0c710305959e1
Author: Yoshinori Sato <ysato@users.sourceforge.jp>
Date:   Wed Jul 24 20:51:52 2019 +0900

    gdb/h8300-tdep.c: Fix register name in h8300h machine.
    
    H8/300H general register name "ER0" - "ER7".
    But gdb using "R0" - "R7".
    This changes register name "ER0" - "ER7" in h8300h machine mode.
    
    gdb/ChangeLog:
    
    	* h8300-tdep.c (h8300_register_name_common): New.
    	h8300_register_name): Use h8300_register_name_common.
    	(h8300s_register_name): Likewise.
    	(h8300sx_register_name): Likewise.
    	(h8300h_register_nam): New.
    	(h8300_gdbarch_init): Use h8300h_register_name in h8300h machine.

commit 2f86d5594071a16665711ae13da88af1cc904371
Author: Nick Clifton <nickc@redhat.com>
Date:   Wed Jul 24 12:17:37 2019 +0100

    Fix ar so that it can correctly detect non-dash prefixed options that appear after dash prefixed options.
    
    	PR 13256
    	* ar.c (decode_options): Restart option scanning if no operation
    	is detected and argument remain to be scanned.

commit cc364be6ff45669150077387f22723de33d5f1b1
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Jul 24 09:43:30 2019 +0930

    Complain about mbind, ifunc, and unique in final_write
    
    It's not as good as complaining in gas/config/obj-elf.c since you lose
    any reference to the source file.
    
    bfd/
    	* elf-bfd.h (struct elf_backend_data): Return bfd_boolean from
    	elf_backend_final_write_processing, don't pass linker arg.
    	(_bfd_elf_final_write_processing): Update prototype.
    	* elf.c (_bfd_elf_write_object_contents): Adjust call.
    	(_bfd_elf_final_write_processing): Return error on incompatible
    	OSABI and has_gnu_osabi.  Remove linker arg.
    	* elf-nacl.h (nacl_final_write_processing): Update prototype.
    	* elf-vxworks.h (elf_vxworks_final_write_processing): Likewise.
    	* elfxx-mips.h (_bfd_mips_final_write_processing): Likewise.
    	(_bfd_mips_elf_final_write_processing): Likewise.
    	* elf-hppa.h (elf_hppa_final_write_processing): Return status
    	and remove linker arg.
    	* elf-m10300.c (_bfd_mn10300_elf_final_write_processing): Likewise.
    	* elf-nacl.c (nacl_final_write_processing): Likewise.
    	* elf-vxworks.c (elf_vxworks_final_write_processing): Likewise.
    	* elf32-arc.c (arc_elf_final_write_processing): Likewise.
    	* elf32-arm.c (arm_final_write_processing): Likewise.
    	(elf32_arm_final_write_processing): Likewise.
    	(elf32_arm_nacl_final_write_processing): Likewise.
    	(elf32_arm_vxworks_final_write_processing): Likewise.
    	* elf32-avr.c (bfd_elf_avr_final_write_processing): Likewise.
    	* elf32-bfin.c (elf32_bfin_final_write_processing): Likewise.
    	* elf32-cr16.c (_bfd_cr16_elf_final_write_processing): Likewise.
    	* elf32-cris.c (cris_elf_final_write_processing): Likewise.
    	* elf32-h8300.c (elf32_h8_final_write_processing): Likewise.
    	* elf32-lm32.c (lm32_elf_final_write_processing): Likewise.
    	* elf32-m32r.c (m32r_elf_final_write_processing): Likewise.
    	* elf32-m68k.c (elf_m68k_final_write_processing): Likewise.
    	* elf32-mips.c (mips_vxworks_final_write_processing): Likewise.
    	* elf32-msp430.c (bfd_elf_msp430_final_write_processing): Likewise.
    	* elf32-nds32.c (nds32_elf_final_write_processing): Likewise.
    	* elf32-or1k.c (or1k_elf_final_write_processing): Likewise.
    	* elf32-pj.c (pj_elf_final_write_processing): Likewise.
    	* elf32-ppc.c (ppc_final_write_processing): Likewise.
    	(ppc_elf_final_write_processing): Likewise.
    	(ppc_elf_vxworks_final_write_processing): Likewise.
    	* elf32-sparc.c (sparc_final_write_processing): Likewise.
    	(elf32_sparc_final_write_processing): Likewise.
    	(elf32_sparc_vxworks_final_write_processing): Likewise.
    	* elf32-v850.c (v850_elf_final_write_processing): Likewise.
    	* elf32-xc16x.c (elf32_xc16x_final_write_processing): Likewise.
    	* elf32-xtensa.c (elf_xtensa_final_write_processing): Likewise.
    	* elf64-ia64-vms.c (elf64_vms_final_write_processing): Likewise.
    	* elfnn-ia64.c (elfNN_ia64_final_write_processing): Likewise.
    	* elfxx-mips.c (_bfd_mips_final_write_processing): Likewise.
    	(_bfd_mips_elf_final_write_processing): Likewise.
    gas/
    	* config/obj-elf.c (obj_elf_section, obj_elf_type): Set has_gnu_osabi.
    	* testsuite/gas/elf/section12a.d: Update xfails.
    	* testsuite/gas/elf/section12b.d: Likewise.

commit c5e20471be97e2dcd3498ac284487e2546715f66
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Jul 24 10:11:08 2019 +0930

    Re: ELF final_write_processing
    
    I missed some early exits from final_write_processing that mean
    _bfd_elf_final_write_processing could be missed.
    
    	* elf-vxworks.c (elf_vxworks_final_write_processing): Don't return
    	early.
    	* elf32-arc.c (arc_elf_final_write_processing): Likewise.
    	* elf32-xtensa.c (elf_xtensa_final_write_processing): Likewise.

commit 7613ca5e3885b8e79d9096a53f3e5492a5c06cd7
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Jul 24 10:51:56 2019 +0930

    Define ELF_OSABI for visium
    
    and update expected results for gas mbind tests.
    
    bfd/
    	* elf32-visium.c (visium_elf_post_process_headers): Don't set
    	EI_OSABI header byte here.
    	(ELF_OSABI): Define.
    gas/
    	* testsuite/gas/elf/section12a.d: xfail visium and cloudabi.
    	* testsuite/gas/elf/section12b.d: Likewise.
    	* testsuite/gas/elf/section13.d: Likewise.

commit 7137a1ed0ad9afdd57e6ef44abbfaeaeb44dd17e
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Jul 24 15:03:49 2019 +0930

    PT_GNU_MBIND section mapping
    
    	* elf/internal.h (ELF_SECTION_IN_SEGMENT_1): Exclude non-alloc
    	sections in GNU_MBIND segments.

commit 024a5840006aba9ba698aa9d868a7394016dd4a0
Author: Tom de Vries <tdevries@suse.de>
Date:   Wed Jul 24 08:36:17 2019 +0200

    Update expected info threads error messages in gdb.multi/tids.exp
    
    We currently have these FAILs:
    ...
    FAIL: gdb.multi/tids.exp: two inferiors: info threads -1
    FAIL: gdb.multi/tids.exp: two inferiors: info threads -$one
    ...
    because we're expecting:
    ...
    Invalid thread ID: -1
    ...
    but instead we have:
    ...
    Unrecognized option at: -1
    ...
    
    This error message for info threads has changed since commit 54d6600669
    'Make "info threads" use the gdb::option framework'.
    
    Update the test accordingly.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-07-24  Tom de Vries  <tdevries@suse.de>
    
    	PR testsuite/24831
    	* gdb.multi/tids.exp: Update error messages for info threads.

commit c76ddaa3f4f8313976670ba8f15163a3544eb1af
Author: Tom de Vries <tdevries@suse.de>
Date:   Wed Jul 24 08:04:59 2019 +0200

    [gdb/testsuite] Fix info-types.exp for debug info from more than one file
    
    On openSUSE Leap 15.0, I get:
    ...
    FAIL: gdb.base/info-types.exp: l=c: info types
    FAIL: gdb.base/info-types.exp: l=c++: info types
    ...
    because the info type command prints info for files info-types.c, stddef.h,
    elf-init.c and init.c, while the regexp in the test-case expect only info for
    info-types.c.
    
    Fix this by extending the regexp.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-07-24  Tom de Vries  <tdevries@suse.de>
    
    	* gdb.base/info-types.exp: Allow info types to print info for more than
    	one file.

commit 407bcc63bda3d78bedffb49ddebf0b41294218d9
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Wed Jul 24 00:00:22 2019 +0000

    Automatic date update in version.in

commit 2e8136f9453e21414cc328d025bec33218176b66
Author: Nick Clifton <nickc@redhat.com>
Date:   Tue Jul 23 17:54:32 2019 +0100

    Fix objdump's display of indirect strings in object files, which was broken by the link following code.
    
    	PR 24818
    	* objdump.c (is_relocateable): Delete.
    	(load_specific_debug_section): Test the abfd for relocations
    	directly, rather than relying upon is_relocateable.
    	(dump_dwarf): Delete initlialization of is_relocateable.

commit 19889a58358ec7f6981c9b20b9541bcb95a839bf
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Tue Jul 23 08:40:23 2019 -0700

    Add missing ChangeLog entries for
    
    commit 8c728a9d93e2342c57039fcdd6e4a502875b9e09
    Author: Martin Liska <mliska@suse.cz>
    Date:   Mon Jul 22 14:23:32 2019 +0200
    
        Remove tests that test __gnu_lto_v1 symbol.

commit a028026d2f9bbeaa2217aa8aafa1463bd88463ba
Author: Kyrylo Tkachov <kyrylo.tkachov@arm.com>
Date:   Tue Jul 23 15:54:54 2019 +0100

    [AArch64] Add support for GMID_EL1 register for +memtag
    
    We're missing support for the GMID_EL1 system register from the Memory Tagging Extension in binutils.
    This is specified at:
    https://developer.arm.com/docs/ddi0595/latest/aarch64-system-registers/gmid_el1
    
    This simple patch adds the support for this read-only register.
    Tested make check on gas.

commit 9a618ef61593ea5103aaf17bbe968bf552aa3de0
Author: Tom de Vries <tdevries@suse.de>
Date:   Tue Jul 23 15:15:20 2019 +0200

    [gdb/testsuite] Add missing initial prompt read in multidictionary.exp
    
    When running multidictionary.exp in conjunction with:
    ...
    $ stress -c $(($(cat /proc/cpuinfo | grep -c "^processor") + 1))
    ...
    we get:
    ...
    Running gdb/testsuite/gdb.dwarf2/multidictionary.exp ...
    ERROR: Couldn't load multidictionary into gdb.
    
                    === gdb Summary ===
    
    nr of unresolved testcases       1
    ...
    
    The multidictionary test-case needs -readnow, and achieves this using:
    ...
    gdb_spawn_with_cmdline_opts "-readnow"
    gdb_load
    ...
    but the initial gdb prompt is not read.  Usually, the following gdb_load
    command accidentally consumes that initial prompt (at the gdb_expect for the
    kill command in gdb_file_cmd).  But under high load, that doesn't happen and
    we run into the error.
    
    Fix this by consuming the initial gdb prompt after spawning gdb.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-07-23  Tom de Vries  <tdevries@suse.de>
    
    	PR testsuite/24842
    	* gdb.dwarf2/multidictionary.exp: Consume initial prompt after
    	gdb_spawn_with_cmdline_opts.

commit 40eadf04ff1f0eaec82dc911cf079555cdbb03d0
Author: Srinath Parvathaneni <srinath.parvathaneni@arm.com>
Date:   Tue Jul 23 11:21:11 2019 +0100

    [gdb][Arm]: gdb cannot step across CMSE secure entry function code.
    
    GDB is not able to execute "step" command on function calls of Armv8-M cmse secure entry functions.
    Everytime GNU linker come across definition of any cmse secure entry function in object file(s),
    it creates two new instructions secure gateway (sg) and original branch destination (b.w),
    place those two instructions in ".gnu.sgstubs" section of executable.
    Any function calls to these cmse secure entry functions is re-directed through secure gateway (sg)
    present in ".gnu.sgstubs" section.
    
    Example:
    Following is a function call to cmse secure entry function "foo":
            ...
            bl xxxx <foo>   --->(a)
            ...
            <foo>
            xxxx: push    {r7, lr}
    
    GNU linker on finding out "foo" is a cmse secure entry function, created sg and b.w instructions and
    place them in ".gnu.sgstubs" section (marked by c).
    
    The "bl" instruction (marked by a) which is a call to cmse secure entry function is modified by GNU linker
    (as marked by b) and call flow is re-directly through secure gateway (sg) in ".gnu.sgstubs" section.
           ...
           bl yyyy <foo>  ---> (b)
           ...
           section .gnu.sgstubs: ---> (c)
           yyyy <foo>
           yyyy: sg   // secure gateway
    	     b.w xxxx <__acle_se_foo>  // original_branch_dest
           ...
           0000xxxx <__acle_se_foo>
           xxxx: push    {r7, lr} ---> (d)
    
    On invoking GDB, when the control is at "b" and we pass "step" command, the pc returns "yyyy"
    (sg address) which is a trampoline and which does not exist in source code. So GDB jumps
    to next line without jumping to "__acle_se_foo" (marked by d).
    
    The above details are published on the Arm website [1], please refer to section 5.4 (Entry functions)
    and section 3.4.4 (C level development flow of secure code).
    
    [1] https://developer.arm.com/architectures/cpu-architecture/m-profile/docs/ecm0359818/latest/armv8-m-security-extensions-requirements-on-development-tools-engineering-specification
    
    This patch fixes above problem by returning target pc "xxxx" to GDB on executing "step"
    command at "b", so that the control jumps to "__acle_se_foo" (marked by d).
    
    gdb/ChangeLog:
    
    	* arm-tdep.c (arm_skip_cmse_entry): New function.
    	(arm_is_sgstubs_section): New function.
    	(arm_skip_stub): Add call to arm_skip_cmse_entry function.
    
    gdb/testsuite/ChangeLog:
    
    	* gdb.arch/arm-cmse-sgstubs.c: New test.
    	* gdb.arch/arm-cmse-sgstubs.exp: New file.

commit 8c728a9d93e2342c57039fcdd6e4a502875b9e09
Author: Martin Liska <mliska@suse.cz>
Date:   Mon Jul 22 14:23:32 2019 +0200

    Remove tests that test __gnu_lto_v1 symbol.
    
    ld/ChangeLog:
    
    2019-07-22  Martin Liska  <mliska@suse.cz>
    
    	* testsuite/ld-plugin/lto-3r.d: Remove.
    	* testsuite/ld-plugin/lto-5r.d: Remove.
    	* testsuite/ld-plugin/lto.exp: Do not run lto-3r and lto-5r
    	tests.

commit df3a023bd614133fe69afb02cd0e8f3e590a36a9
Author: Alan Modra <amodra@gmail.com>
Date:   Tue Jul 23 17:54:42 2019 +0930

    SHF_GNU_MBIND requires ELFOSABI_GNU
    
    When SHF_GNU_MBIND was added in the SHF_LOOS to SHF_HIOS range, it
    should have required ELFOSABI_GNU since these flags are already in use
    by other OSes.  HPUX SHF_HP_TLS in fact has the same value.  That
    means no place in binutils should test SHF_GNU_MBIND without first
    checking OSABI, and SHF_GNU_MBIND should not be set without also
    setting OSABI.  At least, that's the ideal, but the patch accepts
    SHF_GNU_MBIND on ELFOSABI_NONE object files since gas didn't always
    set OSABI.  However, to reinforce the fact that SHF_GNU_MBIND isn't
    proper without a non-zero OSABI, readelf will display the flag as
    LOOS+0 if OSABI isn't set.
    
    The clash with SHF_HP_TLS means that hppa64-linux either has that flag
    on .tbss sections or supports GNU_MBIND, not both.  (hppa64-linux
    users, if there are any, may have noticed that GNU ld since 2017
    mysteriously aligned their .tbss sections to a 4k boundary.  That was
    one consequence of SHF_HP_TLS being blindly interpreted as
    SHF_GNU_MBIND.)  Since it seems that binutils, gdb, gcc, glibc, and
    the linux kernel don't care about SHF_HP_TLS I took that flag out of
    .tbss for hppa64-linux.
    
    bfd/
    	* elf-bfd.h (enum elf_gnu_osabi): Add elf_gnu_osabi_mbind.
    	* elf.c (_bfd_elf_make_section_from_shdr): Set elf_gnu_osabi_mbind.
    	(get_program_header_size): Formatting.  Only test SH_GNU_MBIND
    	when elf_gnu_osabi_mbind is set.
    	(_bfd_elf_map_sections_to_segments): Likewise.
    	(_bfd_elf_init_private_section_data): Likewise.
    	(_bfd_elf_final_write_processing): Update comment.
    	* elf64-hppa.c (elf64_hppa_special_sections): Move .tbss entry.
    	(elf_backend_special_sections): Define without .tbss for linux.
    binutils/
    	* readelf.c (get_parisc_segment_type): Split off hpux entries..
    	(get_ia64_segment_type): ..and these..
    	(get_hpux_segment_type): ..to here.
    	(get_segment_type): Condition GNU_MBIND on osabi.  Use
    	get_hpux_segment_type.
    	(get_symbol_binding): Do not print UNIQUE for ELFOSABI_NONE.
    	(get_symbol_type): Do not print IFUNC for ELFOSABI_NONE.
    gas/
    	* config/obj-elf.c (obj_elf_change_section): Don't emit a fatal
    	error for non-SHF_ALLOC SHF_GNU_MBIND here.
    	(obj_elf_parse_section_letters): Return SHF_GNU_MBIND in new
    	gnu_attr param.
    	(obj_elf_section): Adjust obj_elf_parse_section_letters call.
    	Formatting.  Set SHF_GNU_MBIND and elf_osabi from gnu_attr.
    	Emit normal error for non-SHF_ALLOC SHF_GNU_MBIND and wrong osabi.
    	(obj_elf_type): Set elf_osabi for ifunc.
    	* testsuite/gas/elf/section12a.d: xfail msp430 and hpux.
    	* testsuite/gas/elf/section12b.d: Likewise.
    	* testsuite/gas/elf/section13.d: Likewise.
    	* testsuite/gas/elf/section13.l: Adjust expected error.
    ld/
    	* emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Condition
    	SHF_GNU_MBIND on osabi.  Set output elf_gnu_osabi_mbind.

commit 06f44071ccbeca33fff70b928b71d95a15982740
Author: Alan Modra <amodra@gmail.com>
Date:   Tue Jul 23 17:46:38 2019 +0930

    ELF final_write_processing
    
    Move setting of OSABI to final_write_processing, after symbols are
    written.  This allows OSABI to be set based on symbols actually
    written to the output rather than assuming input symbols will be
    output.
    
    Corrects object files such as the one generated on powerpc64le-linux
    by ld-powerpc/pr23927.s which has a local STT_GNU_IFUNC symbol but
    prior to this patch the file was marked ELFOSABI_NONE.
    
    	* elf-bfd.h (enum elf_gnu_osabi): Rename from elf_gnu_symbols.
    	Remove none, any, all enums.
    	(struct elf_obj_tdata): Rename has_gnu_symbols field to has_gnu_osabi.
    	(_bfd_elf_final_write_processing): Declare.
    	* elf.c (_bfd_elf_write_object_contents): Unconditionally call
    	elf_backend_final_write_processing.
    	(_bfd_elf_post_process_headers): Move body of function to..
    	(_bfd_elf_final_write_processing): ..here, but set EI_OSABI byte
    	only when not already set.  Adjust for rename.
    	* elfxx-target.h (elf_backend_final_write_processing): Default to
    	_bfd_elf_final_write_processing.
    	* elf-hppa.h (elf_hppa_final_write_processing): Call
    	_bfd_elf_final_write_processing.
    	* elf-m10300.c (_bfd_mn10300_elf_final_write_processing): Likewise.
    	* elf-nacl.c (nacl_final_write_processing): Likewise.
    	* elf-vxworks.c (elf_vxworks_final_write_processing): Likewise.
    	* elf32-arc.c (arc_elf_final_write_processing): Likewise.
    	* elf32-avr.c (bfd_elf_avr_final_write_processing): Likewise.
    	* elf32-bfin.c (elf32_bfin_final_write_processing): Likewise.
    	* elf32-cr16.c (_bfd_cr16_elf_final_write_processing): Likewise.
    	* elf32-cris.c (cris_elf_final_write_processing): Likewise.
    	* elf32-h8300.c (elf32_h8_final_write_processing): Likewise.
    	* elf32-lm32.c (lm32_elf_final_write_processing): Likewise.
    	* elf32-m32r.c (m32r_elf_final_write_processing): Likewise.
    	* elf32-m68k.c (elf_m68k_final_write_processing): Likewise.
    	* elf32-msp430.c (bfd_elf_msp430_final_write_processing): Likewise.
    	* elf32-nds32.c (nds32_elf_final_write_processing): Likewise.
    	* elf32-or1k.c (or1k_elf_final_write_processing): Likewise.
    	* elf32-pj.c (pj_elf_final_write_processing): Likewise.
    	* elf32-v850.c (v850_elf_final_write_processing): Likewise.
    	* elf32-xc16x.c (elf32_xc16x_final_write_processing): Likewise.
    	* elf32-xtensa.c (elf_xtensa_final_write_processing): Likewise.
    	* elf64-ia64-vms.c (elf64_vms_final_write_processing): Likewise.
    	* elfnn-ia64.c (elfNN_ia64_final_write_processing): Likewise.
    	* elf32-arm.c (arm_final_write_processing): Split out from..
    	(elf32_arm_final_write_processing): ..here.  Call
    	_bfd_elf_final_write_processing.
    	(elf32_arm_nacl_final_write_processing): Adjust.
    	* elfxx-mips.c (_bfd_mips_final_write_processing): Split out from..
    	(_bfd_mips_elf_final_write_processing): ..here.  Call
    	_bfd_elf_final_write_processing.
    	* elfxx-mips.h (_bfd_mips_final_write_processing): Declare.
    	* elf32-mips.c (mips_vxworks_final_write_processing): Adjust.
    	* elf32-ppc.c (ppc_final_write_processing): Split out from..
    	(ppc_elf_final_write_processing): ..here.  Call
    	_bfd_elf_final_write_processing.
    	(ppc_elf_vxworks_final_write_processing): Adjust.
    	* elf32-sparc.c (sparc_final_write_processing): Split out from..
    	(elf32_sparc_final_write_processing): ..here.  Call
    	_bfd_elf_final_write_processing.
    	(elf32_sparc_vxworks_final_write_processing): Adjust.
    	* elf32-d10v.c (elf_backend_final_write_processing): Don't define.
    	* elf32-d30v.c (elf_backend_final_write_processing): Don't define.
    	* elf32-m68hc11.c (elf_backend_final_write_processing): Don't define.
    	* elf32-m68hc12.c (elf_backend_final_write_processing): Don't define.
    	* elf32-s12z.c (elf_backend_final_write_processing): Don't define.
    	* elf32-i386.c (elf_i386_check_relocs): Don't set has_gnu_symbols.
    	* elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
    	* elflink.c (elf_link_add_object_symbols): Likewise.
    	(elf_link_output_symstrtab): Set has_gnu_osabi for symbols here
    	instead.

commit ec49711a16785636a5b9eac3a92bd00382fcb1a9
Author: Alan Modra <amodra@gmail.com>
Date:   Tue Jul 23 17:45:25 2019 +0930

    Move ld-scripts size tests
    
    Also restore them somewhat closer to the original.  They originally
    failed on many targets, and a month later I "simplified" them as part
    of a larger patch fixing other failing tests.  That unfortunately lost
    their main purpose, which was to test TLS layout.
    
    	* testsuite/ld-elf/size-1.d,
    	* testsuite/ld-elf/size-1.s,
    	* testsuite/ld-elf/size-1.t: New test.
    	* testsuite/ld-elf/size-2.d,
    	* testsuite/ld-elf/size-2.s,
    	* testsuite/ld-elf/size-2.t: New test.
    	* testsuite/ld-scripts/size-1.d,
    	* testsuite/ld-scripts/size-1.s,
    	* testsuite/ld-scripts/size-1.t,
    	* testsuite/ld-scripts/size-2.s,
    	* testsuite/ld-scripts/size-2.d,
    	* testsuite/ld-scripts/size-2.t,
    	* testsuite/ld-scripts/size.exp: Delete.

commit acea835faa6e14c0b008f001ab145e301ff215f6
Author: Alan Modra <amodra@gmail.com>
Date:   Tue Jul 23 17:44:19 2019 +0930

    binutils testsuite test for ELF32 vs ELF64
    
    	* testsuite/binutils-all/objcopy.exp (elf64): Correct object
    	file used to set this variable.

commit 89ebb345e7f5e3ab97638eff7b5914ed2b2e0df1
Author: Alan Modra <amodra@gmail.com>
Date:   Tue Jul 23 17:43:28 2019 +0930

    gas "mbind sections" test
    
    Doesn't fail on rx-elf
    
    	* testsuite/gas/elf/section12a.d: Don't skip for rx.

commit ac79ff9ed2f2d6e87a46146eee28a1d8fa631398
Author: Nick Clifton <nickc@redhat.com>
Date:   Tue Jul 23 09:47:06 2019 +0100

    Add Changelog entry missing from previous delta.
    
    2019-07-22  Barnaby Wilks  <barnaby.wilks@arm.com>
    
    	* arm-dis.c (is_mve_unpredictable): Stop marking some MVE
    	instructions as UNPREDICTABLE.

commit 1dd1bc4daf99ec7ad1f9a6feea8cf4ebe715a92d
Author: Omar Majid <omajid@redhat.com>
Date:   Tue Jul 23 09:44:57 2019 +0100

    Allow objdump to recognise the System.Runtime.dll files that get shipped with .NET Core 2.1.
    
    include	* coff/i386.h (IMAGE_FILE_MACHINE_NATIVE_APPLE_OVERRIDE): Define.
    	(IMAGE_FILE_MACHINE_NATIVE_FREEBSD_OVERRIDE): Define.
    	(IMAGE_FILE_MACHINE_NATIVE_LINUX_OVERRIDE): Define.
    	(IMAGE_FILE_MACHINE_NATIVE_NETBSD_OVERRIDE): Define.
    	(I386_APPLE_MAGIC): Define.
    	(I386_FREEBSD_MAGIC): Define.
    	(I386_LINUX_MAGIC): Define.
    	(I386_NETBSD_MAGIC): Define.
    	(I386BADMAG): Extend macro to allow new magic numbers.
    	* coff/x86_64.h (IMAGE_FILE_MACHINE_NATIVE_APPLE_OVERRIDE): Define.
    	(IMAGE_FILE_MACHINE_NATIVE_FREEBSD_OVERRIDE): Define.
    	(IMAGE_FILE_MACHINE_NATIVE_LINUX_OVERRIDE): Define.
    	(IMAGE_FILE_MACHINE_NATIVE_NETBSD_OVERRIDE): Define.
    	(AMD64_APPLE_MAGIC): Define.
    	(AMD64_FREEBSD_MAGIC): Define.
    	(AMD64_LINUX_MAGIC): Define.
    	(AMD64_NETBSD_MAGIC): Define.
    	(AMD64BADMAG): Extend macro to allow new magic numbers.
    
    bfd	* coffcode.h (coff_set_arch_mach_hook): Handle I386_APPLE_MAGIC,
    	I386_FREEBSD_MAGIC, I386_LINUX_MAGIC, I386_NETBSD_MAGIC,
    	AMD64_APPLE_MAGIC, AMD64_FREEBSD_MAGIC, AMD64_LINUX_MAGIC,
    	AMD64_NETBSD_MAGIC.
    	* peXXigen.c: Add comment about source of .NET magic numbers.
    
    binutils* Makefile.am (AUTOMAKE_OPTIONS): Add subdir-objects
    	(GENTESTDLLSPROG): Define.
    	(TEST_PROGS): Add GENTESTDLLSPROG.
    	* Makefile.in: Regenerate.
    	* testsuite/binutils-all/objdump.exp
    	(test_objdump_dotnet_assemblies): New proc.
    	Run the new proc.
    	* testsuite/gentestdlls.c: New source file.

commit 5ba29434765feed692b6342a8b0f853050be2402
Author: Tom de Vries <tdevries@suse.de>
Date:   Tue Jul 23 10:38:33 2019 +0200

    [gdb/testsuite] Fix command result testing in mi-complete.exp
    
    When running gdb.mi/mi-complete.exp in conjunction with:
    ...
    $ stress -c $(($(cat /proc/cpuinfo | grep -c "^processor") + 1))
    ...
    we get less than 50% full passes:
    ...
    $ for n in  $(seq 1 100); do \
        make V=1 -O check \
          'RUNTESTFLAGS=gdb.mi/mi-complete.exp --target_board=unix'; \
      done 2>&1 \
      | grep "expected passes" | sort | uniq -c
         45 # of expected passes            7
          9 # of expected passes            8
         46 # of expected passes            9
    ...
    
    A diff between a passing and failing gdb.log shows this difference:
    ...
    -&"set max-completions 1\n"
     2-complete br
    +&"set max-completions 1\n"
    ...
    
    The problem is that the test-case issues the "set max-completion <n>" command,
    and without waiting for the output issues a next command, and tries to parse
    the results of both commands, expecting a specific interleaving of the various
    output streams.
    
    Fix the FAIL by waiting for the result of the "set max-completion <n>" command
    before issuing another command.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-07-23  Tom de Vries  <tdevries@suse.de>
    
    	PR testsuite/24711
    	* gdb.mi/mi-complete.exp: Wait for "set max-completions" result before
    	issuing next command.

commit 89356123a17c27548c7e71f4f000b1f74e551c31
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Tue Jul 23 00:00:36 2019 +0000

    Automatic date update in version.in

commit bfa2a36d94d124eb7b54fd271a543047579b47ee
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Jul 22 08:34:25 2019 -0600

    Remove self-assign from make_invisible_and_set_new_height
    
    In https://sourceware.org/ml/gdb-patches/2019-07/msg00509.html, Jan
    pointed out that clang points out that
    make_invisible_and_set_new_height self-assigns "height".
    
    This patch fixes the bug by renaming the formal parameter.
    
    gdb/ChangeLog
    2019-07-22  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-win.c (tui_win_info::make_invisible_and_set_new_height):
    	Don't self-assign.

commit 0c628bba5afd16e0ab3d78ca81ab3f2d5342c50c
Author: Srinath Parvathaneni <srinath.parvathaneni@arm.com>
Date:   Mon Jul 22 14:46:11 2019 +0100

    Fixes the linker testcase "Secure gateway veneers:cmse functions debug information missing" which was failing due to output regular expression mismatch on arm-none-linux-gnueabihf targets.
    
    	* ld/testsuite/ld-arm/cmse_main_sec_debug.d: Modify regexps to
    	allow for output from a arm-none-linux-gnueabihf target.

commit 236ab0c60c9cedecd4fc23b526a588ee25636c13
Author: Barnaby Wilks <barnaby.wilks@arm.com>
Date:   Mon Jul 22 13:18:27 2019 +0100

    This patch addresses the change in the June Armv8.1-M Mainline specification, that marks certain MVE instructions as no longer UNPREDICTABLE when a source operand is the same as a destination operand for a 32-bit element size.
    
    The instructions that this change apply to are:
    
      VQDMLADH, VQRDMLADH, VQDMLSDH, VQRDMLSDH
    
    The updated documentation is here: https://static.docs.arm.com/ddi0553/bh/DDI0553B_h_armv8m_arm.pdf
    
    Fixed this by removing the check for this warning from GAS as well as opcodes.
    
    Added testcases to test that the warning is not generated for the instructions that have a 32-bit element size
    and the same source and destination operand. Also fixed tests that would previously check for this warning.
    
    gas	* config/tc-arm.c (do_mve_vqdmladh): Remove check for UNPREDICTABLE.
    	* testsuite/gas/arm/mve-vqdmladh-bad.l: Remove tests.
    	* testsuite/gas/arm/mve-vqdmladh-bad.s: Remove tests.
    	* testsuite/gas/arm/mve-vqdmladh.d: New tests.
    	* testsuite/gas/arm/mve-vqdmladh.s: New tests.
    	* testsuite/gas/arm/mve-vqdmlsdh-bad.l: Remove tests.
    	* testsuite/gas/arm/mve-vqdmlsdh-bad.s: Remove tests.
    	* testsuite/gas/arm/mve-vqdmlsdh.d: New tests.
    	* testsuite/gas/arm/mve-vqdmlsdh.s: New tests.
    
    opcodes	* arm-dis.c (is_mve_unpredictable): Stop marking some MVE
    	instructions as UNPREDICTABLE.

commit a8e9d2471806ef86ff7aec43164a6fe347efba3b
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Fri Jul 12 11:26:32 2019 +0100

    gdb: Show type summary for anonymous structures from c_print_typedef
    
    Currently each language has a la_print_typedef method, this is only
    used for the "info types" command.
    
    The documentation for "info types" says:
    
       Print a brief description of all types whose names match the regular
       expression @var{regexp} (or all types in your program, if you supply
       no argument).
    
    However, if we consider this C code:
    
       typedef struct {
         int a;
       } my_type;
    
    Then currently with "info types" this will be printed like this:
    
       3:      typedef struct {
           int a;
       } my_type;
    
    I see two problems with this, first the indentation is clearly broken,
    second, if the struct contained more fields then it feels like the
    actual type names could easily get lost in the noise.
    
    Given that "info types" is about discovering type names, I think there
    is an argument to be made that we should focus on giving _only_ the
    briefest summary for "info types", and if the user wants to know more
    they can take the type name and plug it into "ptype".  As such, I
    propose that a better output would be:
    
       3:      typedef struct {...} my_type;
    
    The user understands that there is a type called `my_type`, and that
    it's an alias for an anonymous structure type.
    
    The change to achieve this turns out to be pretty simple, but only
    effects languages that make use of c_print_typedef, which are C, C++,
    asm, minimal, d, go, objc, and opencl.  Other languages will for now
    do whatever they used to do.
    
    The patch to change how anonymous structs are displayed also changes
    the display of anonymous enums, consider this code sample:
    
       typedef enum {
         AA, BB, CC
       } anon_enum_t;
    
    This used to be displayed like this:
    
       3:      typedef enum {AA, BB, CC} anon_enum_t;
    
    Which will quickly become cluttered for enums with a large number of
    values.  The modified output looks like this:
    
       3:      typedef enum {...} anon_enum_t;
    
    Again, the user can always make use of ptype if they want to see the
    details of the anon_enum_t type.
    
    It is worth pointing out that this change (to use {...}) only effects
    anonymous structs and enums, named types don't change with this patch,
    consider this code:
    
       struct struct_t {
         int i;
       };
       enum enum_t {
        AA, BB, CC
       };
    
    The output from 'info types' remains unchanged, like this:
    
       4:      enum enum_t;
       1:      struct struct_t;
    
    An additional area of interest is how C++ handles anonymous types used
    within a typedef; enums are handled basically inline with how C
    handles them, but structs (and classes) are slightly different.  The
    behaviour before the patch is different, and is unchanged by this
    patch.  Consider this code compiled for C++:
    
       typedef struct {
         int i;
       } struct_t;
    
    Both before and after this patch, this is show by 'info types' as:
    
       3:      typedef struct_t struct_t;
    
    Unions are displayed similarly to structs in both C and C++, the
    handling of anonymous unions changes for C in the same way that
    it changes for anonymous structs.
    
    I did look at ada, as this is the only language to actually have some
    tests for "info types", however, as I understand it ada doesn't really
    support typedefs, however, by forcing the language we can see what ada
    would print.  So, if we 'set language ada', then originally we printed
    this:
    
       3:      record
           a: int;
       end record
    
    Again the indentation is clearly broken, but we also have no mention
    of the type name at all, which is odd, but understandable given the
    lack of typedefs.  If I make a similar change as I'm proposing for C,
    then we now get this output:
    
       3:      record ... end record
    
    Which is even less informative I think.  However, the original output
    _is_ tested for in gdb.ada/info_auto_lang.exp, and its not clear to me
    if the change is a good one or not, so for now I have left this out.
    
    gdb/ChangeLog:
    
    	* c-typeprint.c (c_print_typedef): Pass -1 instead of 0 to
    	type_print.
    
    gdb/testsuite/ChangeLog:
    
    	* gdb.ada/info_auto_lang.exp: Update expected results.
    	* gdb.base/info-types.c: Add additional types to check.
    	* gdb.base/info-types.exp: Update expected results.

commit eb86c5e2e824787875187901b12fba52ef873278
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Tue Jul 9 18:05:59 2019 +0100

    gdb: Improve output from "info types" commad
    
    This commit makes two changes to the "info types" command:
    
    First, only use typedef_print for printing typedefs, and use
    type_print for printing non-typedef scalar (non-struct) types.  The
    result of this is the output for builtin types goes from this:
    
        typedef double;
        typedef float;
        typedef int;
    
    to this:
    
        double;
        float;
        int;
    
    which seems to make more sense.
    
    Next GDB no longer matches msymbols as possible type names.  When
    looking for function symbols it makes sense to report matching
    msymbols from the text sections, and for variables msymbols from the
    data/bss sections, but when reporting types GDB would match msymbols
    of type absolute.  But I don't see why these are likely to indicate
    type names.  As such I've updated the msymbol matching lists in
    symtab.c:search_symbols so that when searching in the TYPES_DOMAIN, we
    never match any msymbols.
    
    gdb/ChangeLog:
    
    	* symtab.c (search_symbols): Adjust msymbol matching type arrays
    	so that GDB doesn't match any msymbols when searching in the
    	TYPES_DOMAIN.
    	(print_symbol_info): Print using typedef_print or type_print based
    	on the type of the symbol.  Add updated FIXME comment moved from...
    	(_initialize_symtab): ... move and update FIXME comment to above.
    
    gdb/testsuite/ChangeLog:
    
    	* gdb.base/info-types.c: New file.
    	* gdb.base/info-types.exp: New file.

commit a8eab7c6d529ddd248ff5243bb22e9346196e376
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Thu Jul 11 21:02:59 2019 +0100

    gdb: Switch "info types" over to use the gdb::options framework
    
    Adds a new -q flag to "info types" using the gdb::option framework.
    This -q flag is similar to the -q flag already present for "info
    variables" and "info functions".
    
    gdb/ChangeLog:
    
    	* NEWS: Mention adding -q option to "info types".
    	* symtab.c (struct info_types_options): New struct.
    	(info_types_options_defs): New variable.
    	(make_info_types_options_def_group): New function.
    	(info_types_command): Use gdb::option framework to parse options.
    	(info_types_command_completer): New function.
    	(_initialize_symtab): Extend the help text on "info types" and
    	register command completer.
    
    gdb/doc/ChangeLog:
    
    	* gdb.texinfo (Symbols): Add information about -q flag to "info
    	types".

commit b4603c34644847e2113e8c29408db09049c5c30f
Author: Christian Biesinger <cbiesinger@google.com>
Date:   Sun Jul 21 22:27:07 2019 -0500

    Add ChangeLog entry for the last commit
    
    Forgot to commit before pushing :(

commit c32e6a04f42b8e4a1392ee4b87d040c06b917ef5
Author: Christian Biesinger <cbiesinger@google.com>
Date:   Thu Jul 11 13:35:13 2019 -0500

    Use block_enum instead of int for better typesafety
    
    gdb/ChangeLog:
    
    2019-07-21  Christian Biesinger  <cbiesinger@google.com>
    
    	* symtab.c (lookup_symbol_in_objfile_symtabs): Change int to block_enum.
    	(lookup_symbol_in_objfile): Change int to block_enum and add a
    	gdb_assert to make sure block_index is GLOBAL_BLOCK or STATIC_BLOCK.

commit c8cdc1e08312a238a9138b55ae080ceeab14845c
Author: Christian Biesinger <cbiesinger@google.com>
Date:   Sat Jul 20 11:55:32 2019 -0500

    [FYI] Add myself to gdb/MAINTAINERS
    
    gdb/Changelog:
    
    	* MAINTAINERS (Write After Approval): Add myself.

commit 7fec04c365ae2468d283fb3529a9ea334d6e528f
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Mon Jul 22 00:00:29 2019 +0000

    Automatic date update in version.in

commit 86ceaf9867288530af927aa98680526c897cf4cc
Author: Kevin Buettner <kevinb@redhat.com>
Date:   Wed Jun 26 19:38:24 2019 -0700

    Make documentation of "python" command match actual behavior
    
    The example in the documentation for the "python" command shows GDB
    outputting instructions for how to terminate a sequence of python
    commands entered from the command line.  The documentation shows that
    the following two lines are being output, though this does not occur
    when actually using the "python" command from GDB:
    
        Type python script
        End with a line saying just "end".
    
    While display of this text might be helpful, GDB has several other
    commands which also use the "end" terminator that offer no such text.
    Examples include the "if" and "while" commands.  For example,
    
    (gdb) if 1==1
     >print "a"
     >end
    $1 = "a"
    
    This seems similar to doing:
    
    (gdb) python
     >print 23
     >end
    23
    
    If we decide that we want the "python" command to print such a message,
    we should also adjust the behavior for other GDB commands which also use
    "end" to terminate a command list.  I.e, if this decision is made, the
    "if" and "while" commands ought to also print similar messages.
    
    So, for the moment anyway, this commit adjusts the documentation of the
    python command to match its implementation.
    
    This patch was taken from a larger body of work originating from the
    Archer project.  I haven't been able to determine its original author,
    though I did find a commit log from Jan Kratochvil (in the Archer
    repository) which suggests that the change had originally been made to
    gdb.texinfo, but got inadvertently dropped when the python related
    documentation was split out to python.texi.
    
    gdb/doc/ChangeLog:
    
    	* python.texi (python command): Revise example to match
    	command behavior.

commit f720d67c59a4c7e6bf92538c6bfc8dc76f7c7224
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Sun Jul 21 00:00:45 2019 +0000

    Automatic date update in version.in

commit 9ab3a74416dac187d56fcf292b39b681d1362dae
Author: Alan Modra <amodra@gmail.com>
Date:   Sat Jul 20 10:47:20 2019 +0930

    PR24827, Linker loops forever if unterminated multi-line comment in script
    
    YY_INPUT returns 0 on end of input, not EOF.
    
    	PR 24827
    	* ldlex.l (comment): Check for 0 return from input(), not EOF.

commit bcbaec5c407a9301ed987d380ac49426a84c3a0e
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Sat Jul 20 00:00:24 2019 +0000

    Automatic date update in version.in

commit 01e175fe1b21950982642713513e442fc09614e6
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Fri Jul 19 10:34:47 2019 +0100

    gdb/riscv: Write 4-byte nop to dummy code region before inferior calls
    
    When making inferior function calls GDB sets up a dummy code region on
    the stack, and places a breakpoint within that region.  If the random
    stack contents appear to be a compressed instruction then GDB  will
    place a compressed breakpoint, which can cause problems if the target
    doesn't support compressed instructions.
    
    This commit prevents this issue by writing a 4-byte nop instruction to
    the dummy region at the time the region is allocated.  With this nop
    instruction in place, when we come to insert the breakpoint then an
    uncompressed breakpoint will be used.
    
    This is similar to other targets, for example mips.
    
    gdb/ChangeLog:
    
    	* riscv-tdep.c (riscv_push_dummy_code): Write a 4-byte nop
    	instruction to the dummy code region.
    
    gdb/testsuite/ChangeLog:
    
    	* gdb.arch/riscv-bp-infcall.c: New file.
    	* gdb.arch/riscv-bp-infcall.exp: New file.

commit ec38ac465d632cbc7fbecffcaadb7c6ffc4b5f39
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Fri Jul 19 11:07:59 2019 -0700

    x86: Pass -O0 to assembler in noextreg.d
    
    	* testsuite/gas/i386/noextreg.d: Pass -O0 to assembler.

commit 56f79b630766bb134400b4a8da43941cfc31c0c0
Author: Tom Tromey <tromey@adacore.com>
Date:   Mon Jul 15 10:41:18 2019 -0600

    Change ARI to mention C++11, and remove some rules
    
    I noticed that ARI mentions "ISO C 90", but now gdb uses C++11.  This
    patch updates some text to reflect this change.
    
    I also noticed that a few rules can be removed now.  ARGSUSED doesn't
    seem to be an issue any more (there's no code mentioning this and I
    doubt most of us even remember this convention); PARAMS was specific
    to K&R C; and __func__ is available in C++11.
    
    gdb/ChangeLog
    2019-07-19  Tom Tromey  <tromey@adacore.com>
    
    	* contrib/ari/gdb_ari.sh: Mention C++11, not ISO C 90.
    	(ARGSUSED, PARAMS, __func__): Remove rules.

commit 4c5aa8e0b1b4439f73ef1f82344e408b989f85df
Author: Alan Hayward <alan.hayward@arm.com>
Date:   Fri Jul 19 15:06:38 2019 +0100

    Arm: Remove unused feature files and tests
    
    Remove the xml tests. Now that it has been proven the new descriptions
    are identical, there is no need to keep testing that.  Also, it would
    prevent the old xml files from being removed.
    
    Remove the old xml files from gdbserver and delete them.
    
    gdb/ChangeLog:
    
    	* arm-tdep.c (_initialize_arm_tdep): Remove xml tests.
    	* features/arm/arm-with-iwmmxt.c: Remove.
    	* features/arm/arm-with-iwmmxt.xml: Remove.
    	* features/arm/arm-with-m-fpa-layout.c: Remove.
    	* features/arm/arm-with-m-fpa-layout.xml: Remove.
    	* features/arm/arm-with-m-vfp-d16.c: Remove.
    	* features/arm/arm-with-m-vfp-d16.xml: Remove.
    	* features/arm/arm-with-m.c: Remove.
    	* features/arm/arm-with-m.xml: Remove.
    	* features/arm/arm-with-neon.c: Remove.
    	* features/arm/arm-with-neon.xml: Remove.
    	* features/arm/arm-with-vfpv2.c: Remove.
    	* features/arm/arm-with-vfpv2.xml: Remove.
    	* features/arm/arm-with-vfpv3.c: Remove.
    	* features/arm/arm-with-vfpv3.xml: Remove.
    
    gdb/gdbserver/ChangeLog:
    
    2019-07-05  Alan Hayward  <alan.hayward@arm.com>
    
    	* configure.srv: Remove Arm xml files.

commit 7cc17433020a62935e4d91053251fe900d83c7f0
Author: Alan Hayward <alan.hayward@arm.com>
Date:   Fri Jul 19 15:04:48 2019 +0100

    Arm: Use read_description funcs in gdbserver
    
    Switch gdbserver over to using feature target descriptions.
    
    Add a function for determining the type of a given target description,
    and use where required.
    
    gdb/gdbserver/ChangeLog:
    
    	* configure.srv: Add new files. Remove xml generated files.
    	* linux-aarch32-low.c (initialize_low_arch_aarch32): Don't init
    	registers.
    	* linux-aarch32-low.h (tdesc_arm_with_neon): Remove.
    	* linux-aarch32-tdesc.c: New file.
    	* linux-aarch32-tdesc.h: New file.
    	* linux-aarch64-low.c (aarch64_arch_setup): Call aarch32_linux_read_description.
    	* linux-arm-low.c (init_registers_arm, tdesc_arm)
    	(init_registers_arm_with_iwmmxt, tdesc_arm_with_iwmmxt)
    	(init_registers_arm_with_vfpv2, tdesc_arm_with_vfpv2)
    	(init_registers_arm_with_vfpv3, tdesc_arm_with_vfpv3): Remove.
    	(arm_fill_wmmxregset, arm_store_wmmxregset, arm_fill_vfpregset)
    	(arm_store_vfpregset): Call arm_linux_get_tdesc_fp_type.
    	(arm_read_description): Call arm_linux_read_description.
    	(initialize_low_arch): Don't init registers.
    	* linux-arm-tdesc.c: New file.
    	* linux-arm-tdesc.h: New file.

commit f42b26179a8606d31959207a2d8eb8582b650c99
Author: Alan Hayward <alan.hayward@arm.com>
Date:   Fri Jul 19 15:02:41 2019 +0100

    Arm: Add xml unit tests
    
    Use the record_xml_tdesc tests to prove the new target descriptions
    are identical to the previous xml file ones.
    
    This is tested as part of gdb.gdb/unittest.exp.
    
    gdb/ChangeLog:
    
    	* arm-tdep.c (_initialize_arm_tdep): Add xml regression tests.

commit f29ec966436f98e761f7a2a7183ad8ebab68c2ea
Author: Alan Hayward <alan.hayward@arm.com>
Date:   Fri Jul 19 15:01:11 2019 +0100

    Arm: Use feature target descriptions
    
    In arm arm_create_target_description and
    aarch32_create_target_description create feature based target descriptions
    instead of returning the old style descriptions.
    
    Ensure the descriptions are created in exactly the same way as the old xml
    files.
    
    Remove the old initialize calls.
    
    gdb/ChangeLog:
    
    	* arch/aarch32.c (aarch32_create_target_description): Create
    	target descriptions using features.
    	* arch/arm.c (arm_create_target_description)
    	(arm_create_mprofile_target_description): Likewise.
    	* arm-tdep.c (_initialize_arm_tdep): Remove tdesc init calls.

commit d105cce5dd8d6a5218b044fc161ce89c6b245432
Author: Alan Hayward <alan.hayward@arm.com>
Date:   Fri Jul 19 14:59:10 2019 +0100

    Arm: Add read_description read funcs and use in GDB
    
    Switch the Arm target to get target descriptions via arm_read_description
    and aarch32_read_description, in the same style as other feature targets.
    Add an enum to specify the different types - this will also be of use to
    gdbserver in a later patch.
    
    Under the hood return the same existing pre-feature target descriptions.
    
    gdb/ChangeLog:
    
    	* Makefile.in: Add new files.
    	* aarch32-tdep.c: New file.
    	* aarch32-tdep.h: New file.
    	* aarch64-linux-nat.c (aarch64_linux_nat_target::read_description):
    	Call aarch32_read_description.
    	* arch/aarch32.c: New file.
    	* arch/aarch32.h: New file.
    	* arch/arm.c (arm_create_target_description)
    	(arm_create_mprofile_target_description): New function.
    	* arch/arm.h (arm_fp_type, arm_m_profile_type): New enum.
    	(arm_create_target_description)
    	(arm_create_mprofile_target_description): New declaration.
    	* arm-fbsd-tdep.c (arm_fbsd_read_description_auxv): Call
    	read_description functions.
    	* arm-linux-nat.c (arm_linux_nat_target::read_description):
    	Likewise.
    	* arm-linux-tdep.c (arm_linux_core_read_description): Likewise.
    	* arm-tdep.c (tdesc_arm_list): New variable.
    	(arm_register_g_packet_guesses): Call create description functions.
    	(arm_read_description) (arm_read_mprofile_description): New
    	function.
    	* arm-tdep.h (arm_read_description)
    	(arm_read_mprofile_description): Add declaration.
    	* configure.tgt: Add new files.

commit 231097b03afffd0c5a2b520cd999dbcbe8d64eda
Author: Jose E. Marchesi <jose.marchesi@oracle.com>
Date:   Fri Jul 19 15:35:43 2019 +0200

    cpu,opcodes,gas: use %r0 and %r6 instead of %a and %ctf in eBPF disassembler
    
    This patch changes the eBPF CPU description to prefer the register
    names %r0 and %r6 instead of %a and %ctx when disassembling.  This
    matches better with the current practice, vs. cBPF.
    
    It also updates the GAS tests in order to reflect this change.
    Tested in a x86_64 host.
    
    cpu/ChangeLog:
    
    2019-07-19  Jose E. Marchesi  <jose.marchesi@oracle.com>
    
    	* bpf.cpu (h-gpr): when disassembling, use %r0 and %r6 instead of
    	%a and %ctx.
    
    opcodes/ChangeLog:
    
    2019-07-19  Jose E. Marchesi  <jose.marchesi@oracle.com>
    
    	* bpf-desc.c: Regenerated.
    
    gas/ChangeLog:
    
    2019-07-19  Jose E. Marchesi  <jose.marchesi@oracle.com>
    
    	* testsuite/gas/bpf/alu.d: Use %r6 instead of %ctx.
    	* testsuite/gas/bpf/lddw-be.d: Likewise.
    	* testsuite/gas/bpf/lddw.d: Likewise.
    	* testsuite/gas/bpf/alu-be.d: Likewise.
    	* testsuite/gas/bpf/alu32.d: Likewise.

commit 1802aae8449a4d693ba1f4efb8a7917c2f20990b
Author: Jose E. Marchesi <jose.marchesi@oracle.com>
Date:   Fri Jul 19 15:35:02 2019 +0200

    gas: make .lcomm to accept an optional aligmnet in eBPF targets
    
    Tested in a x86_64 host.
    
    gas/ChangeLog:
    
    2019-07-19  Jose E. Marchesi  <jose.marchesi@oracle.com>
    
    	* config/tc-bpf.c (pe_lcomm_internal): Adapted from tc-i386.c.
    	(pe_lcomm): Likewise.
    	(md_pseudo_table): Use pe_lcomm to implement .lcomm.

commit ccbdd22fb96b8680ebeaecd829e8e51958845a8f
Author: Richard Sandiford <richard.sandiford@arm.com>
Date:   Fri Jul 19 12:18:02 2019 +0100

    [AArch64] Rename +bitperm to +sve2-bitperm
    
    After some discussion, we've decided to rename the +bitperm feature
    flag to +sve2-bitperm, so that it's consistent with the other SVE2
    feature flags.  The associated internal macros already used
    "SVE2_BITPERM", so only the feature flag itself needs to change.
    
    2019-07-19  Richard Sandiford  <richard.sandiford@arm.com>
    
    gas/
    	* doc/c-aarch64.texi: Remame the +bitperm extension to +sve2-bitperm.
    	* config/tc-aarch64.c (aarch64_features): Likewise.
    	* testsuite/gas/aarch64/illegal-sve2-aes.d: Update accordingly.
    	* testsuite/gas/aarch64/illegal-sve2-sha3.d: Likewise.
    	* testsuite/gas/aarch64/illegal-sve2-sm4.d: Likewise.
    	* testsuite/gas/aarch64/illegal-sve2.d: Likewise.
    	* testsuite/gas/aarch64/sve2.d: Likewise.

commit c213164ad2505cba5263602b7f9fa9a4dd1adf39
Author: Alan Modra <amodra@gmail.com>
Date:   Fri Jul 19 15:36:58 2019 +0930

    [PowerPC64] pc-relative TLS relocations
    
    This patch supports using pcrel instructions in TLS code sequences.  A
    number of new relocations are needed, gas operand modifiers to
    generate those relocations, and new TLS optimisation.  For
    optimisation it turns out that the new pcrel GD and LD sequences can
    be distinguished from the non-pcrel GD and LD sequences by there being
    different relocations on the new sequence.  The final "add ra,rb,13"
    on IE sequences similarly needs a new relocation, or as I chose, a
    modification of R_PPC64_TLS.  On pcrel IE code, the R_PPC64_TLS points
    one byte into the "add" instruction rather than being on the
    instruction boundary.
    
    GD:
     pla 3,z@got@tlsgd@pcrel	  # R_PPC64_GOT_TLSGD34
     bl __tls_get_addr@notoc(z@tlsgd) # R_PPC64_TLSGD and R_PPC64_REL24_NOTOC
      edited to IE
       pld 3,z@got@tprel@pcrel
       add 3,3,13
      edited to LE
       paddi 3,13,z@tprel
       nop
    
    LD:
     pla 3,z@got@tlsld@pcrel	  # R_PPC64_GOT_TLSLD34
     bl __tls_get_addr@notoc(z@tlsld) # R_PPC64_TLSLD and R_PPC64_REL24_NOTOC
     ..
     paddi 9,3,z2@dtprel
     pld 10,z3@got@dtprel@pcrel
     add 10,10,3
      edited to LE
       paddi 3,13,0x1000
       nop
    
    IE:
     pld 9,z@got@tprel@pcrel	  # R_PPC64_GOT_TPREL34
     add 3,9,z@tls@pcrel		  # R_PPC64_TLS at insn+1
     ldx 4,9,z@tls@pcrel
     lwax 5,9,z@tls@pcrel
     stdx 5,9,z@tls@pcrel
      edited to LE
      paddi 9,13,z@tprel
      nop
      ld 4,0(9)
      lwa 5,0(9)
      std 5,0(9)
    
    LE:
     paddi 10,13,z@tprel
    
    include/
    	* elf/ppc64.h (R_PPC64_TPREL34, R_PPC64_DTPREL34),
    	(R_PPC64_GOT_TLSGD34, R_PPC64_GOT_TLSLD34),
    	(R_PPC64_GOT_TPREL34, R_PPC64_GOT_DTPREL34): Define.
    	(IS_PPC64_TLS_RELOC): Include new tls relocs.
    bfd/
    	* reloc.c (BFD_RELOC_PPC64_TPREL34, BFD_RELOC_PPC64_DTPREL34),
    	(BFD_RELOC_PPC64_GOT_TLSGD34, BFD_RELOC_PPC64_GOT_TLSLD34),
    	(BFD_RELOC_PPC64_GOT_TPREL34, BFD_RELOC_PPC64_GOT_DTPREL34),
    	(BFD_RELOC_PPC64_TLS_PCREL): New pcrel tls relocs.
    	* elf64-ppc.c (ppc64_elf_howto_raw): Add howtos for pcrel tls relocs.
    	(ppc64_elf_reloc_type_lookup): Translate pcrel tls relocs.
    	(must_be_dyn_reloc, dec_dynrel_count): Add R_PPC64_TPREL64.
    	(ppc64_elf_check_relocs): Support pcrel tls relocs.
    	(ppc64_elf_tls_optimize, ppc64_elf_relocate_section): Likewise.
    	* bfd-in2.h: Regenerate.
    	* libbfd.h: Regenerate.
    gas/
    	* config/tc-ppc.c (ppc_elf_suffix): Map "tls@pcrel", "got@tlsgd@pcrel",
    	"got@tlsld@pcrel", "got@tprel@pcrel", and "got@dtprel@pcrel".
    	(fixup_size, md_assemble): Handle pcrel tls relocs.
    	(ppc_force_relocation, ppc_fix_adjustable): Likewise.
    	(md_apply_fix, tc_gen_reloc): Likewise.
    ld/
    	* testsuite/ld-powerpc/tlsgd.d,
    	* testsuite/ld-powerpc/tlsgd.s,
    	* testsuite/ld-powerpc/tlsie.d,
    	* testsuite/ld-powerpc/tlsie.s,
    	* testsuite/ld-powerpc/tlsld.d,
    	* testsuite/ld-powerpc/tlsld.s: New tests.
    	* testsuite/ld-powerpc/powerpc.exp: Run them.

commit 7a708984176cc2d247d7dd96d84c7d7501bae6eb
Author: Alan Modra <amodra@gmail.com>
Date:   Fri Jul 19 14:30:36 2019 +0930

    [PowerPC] Rename testcase
    
    Just making room for a new tlsld test.
    
    	* testsuite/ld-powerpc/tlsldopt.d: Rename from tlsld.d.
    	* testsuite/ld-powerpc/tlsldopt.s: Rename from tlsld.s.
    	* testsuite/ld-powerpc/tlsldopt32.d: Rename from tlsld32.d.
    	* testsuite/ld-powerpc/tlsldopt32.s: Rename from tlsld32.s.
    	* testsuite/ld-powerpc/powerpc.exp: Update.

commit 88468fe09628974cde7dc891d088cc1e0015fa0d
Author: Alan Modra <amodra@gmail.com>
Date:   Fri Jul 19 17:07:36 2019 +0930

    Re: ld -r: Don't merge with member of output section group
    
    	PR 24819
    	* testsuite/ld-elf/pr24819.d: xfail for genelf targets.

commit 6cbb8e87ee4682c47eafbec670d62ea2a7a89540
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Fri Jul 19 00:00:39 2019 +0000

    Automatic date update in version.in

commit 12a0b67d289e2c3ed266d93e8a8c80087f7d18f8
Author: Nick Alcock <nick.alcock@oracle.com>
Date:   Thu Jul 18 18:44:21 2019 +0100

    libctf: introduce ctf_func_type_{info,args}, ctf_type_aname_raw
    
    The first two of these allow you to get function type info and args out
    of the types section give a type ID: astonishingly, this was missing
    from libctf before now: so even though types of kind CTF_K_FUNCTION were
    supported, you couldn't find out anything about them.  (The existing
    ctf_func_info and ctf_func_args only allow you to get info about
    functions in the function section, i.e. given symbol table indexes, not
    type IDs.)
    
    The second of these allows you to get the raw undecorated name out of
    the CTF section (strdupped for safety) without traversing subtypes to
    build a full C identifier out of it.  It's useful for things that are
    already tracking the type kind etc and just need an unadorned name.
    
    include/
    	* ctf-api.h (ECTF_NOTFUNC): Fix description.
    	(ctf_func_type_info): New.
    	(ctf_func_type_args): Likewise.
    libctf/
    	* ctf-types.c (ctf_type_aname_raw): New.
    	(ctf_func_type_info): Likewise.
    	(ctf_func_type_args): Likewise.
    	* ctf-error.c (_ctf_errlist): Fix description.

commit afe09f0b6311a4dd1a7e2dc6491550bb228734f8
Author: Guillaume LABARTHE <guillaume.labarthe@gmail.com>
Date:   Thu Jul 18 17:20:04 2019 +0100

    Fix for using named pipes on Windows
    
    On Windows, passing a named pipe as terminal argument to the new-ui
    command does not work.
    
    The problem is that the new_ui_command function in top.c opens the
    same tty three times, for stdin, stdout and stderr.  With Windows
    named pipes, the second and third calls to open fail.
    
    Opening the file only once and passing the same stream for stdin,
    stdout and stderr makes it work.
    
    Pedro says:
    
     I tried it on GNU/Linux and things still work.
     I ran all the MI tests with forced new-ui, with:
    
     $ make check TESTS="gdb.mi/*.exp" RUNTESTFLAGS="FORCE_MI_SEPARATE_UI=1"
    
     and saw no regressions.
    
    gdb/ChangeLog:
    2019-07-18  Guillaume LABARTHE  <guillaume.labarthe@gmail.com>
    
    	* top.c (new_ui_command): Open specified terminal just once.

commit cd215b2eb74c179d936a3b28577753a08de1cf83
Author: Tom Tromey <tromey@adacore.com>
Date:   Thu Jul 18 09:29:15 2019 -0600

    Constify main_name
    
    This patch constifies the return type of main_name.  There is a
    comment indicating that this wasn't possible at some point in the
    past, but whatever the barrier was, it is gone now.
    
    Tested by rebuilding.
    
    gdb/ChangeLog
    2019-07-18  Tom Tromey  <tromey@adacore.com>
    
    	* symtab.c (main_name): Constify return type.
    	* symfile.c (set_initial_language): Update.
    	* symtab.h (main_name): Constify return type.

commit 54d7dae59a2239720c848985a7d50a0a8b3319eb
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Thu Jul 18 08:01:45 2019 -0700

    ld -r: Don't merge with member of output section group
    
    When doing a relocatable link, members of input section group are
    placed in their own output sections.  We need to make sure that no
    input sections are merged with member of output section group.
    
    	PR ld/24819
    	* emultempl/elf32.em (elf_orphan_compatible): Return FALSE for
    	member of output section group when doing a relocatable link.
    	* testsuite/ld-elf/pr24819.d: New file.
    	* testsuite/ld-elf/pr24819.s: Likewise.

commit 71c4e95abe66ec9fc2c064268e3f9640a5b951d8
Author: Alan Modra <amodra@gmail.com>
Date:   Thu Jul 18 11:12:40 2019 +0930

    [PowerPC64] Use STN_UNDEF internally for edited relocs
    
    It's not correct to use non-STT_TLS symbols with TLS relocation, not
    that it matters much when editing relocs, but this edited reloc can be
    output by --emit-relocs.  So don't use a symbol on the reloc.
    
    	* elf64-ppc.c (ppc64_elf_relocate_section): Don't bother selecting
    	a TLS section symbol for edited relocs.  Tighten TLS symbol/reloc
    	match test.

commit 46e9995a207140408309dbea40c64f11843db777
Author: Alan Modra <amodra@gmail.com>
Date:   Thu Jul 18 11:04:06 2019 +0930

    [PowerPC64] Don't store TLS_EXPLICIT in tls_mask
    
    This saves a bit in tls_mask, and fixes a bug that could be triggered
    in the unlikely case that both @got (usual ELF style) and @toc
    (PowerOpen style) code was used to set up args for __tls_get_addr.
    
    	* elf64-ppc.c (TLS_EXPLICIT): Define as 256.
    	(ppc64_elf_check_relocs): Don't store TLS_EXPLICIT even if char
    	is more than 8 bits.
    	(ppc64_elf_tls_optimize): Likewise.  Make tls_set, tls_clear, and
    	tls_type vars unsigned int.
    	(ppc64_elf_relocate_section): Use r_type rather than TLS_EXPLICIT
    	to select r_type edit.

commit b00a0a86c40c681cf4b22a3630f85188ac849721
Author: Alan Modra <amodra@gmail.com>
Date:   Thu Jul 18 10:58:01 2019 +0930

    [PowerPC] Rename TLS_TPRELGD to TLS_GDIE
    
    Choose a better name, that reflects why the flag is set (GD to IE
    optimisation) rather than what the flag produces (TPREL64 reloc on
    a single GOT entry replacing a tls_index pair).
    
    	* elf32-ppc.c (TLS_GDIE): Rename from TLS_TPRELGD throughout file.
    	Correct comment.
    	* elf64-ppc.c (TLS_GDIE): Likewise.

commit 0b1474281c659919d9c63ccfd6891b9e9ed0fc9c
Author: Alan Modra <amodra@gmail.com>
Date:   Thu Jul 18 10:31:44 2019 +0930

    [PowerPC64] correct tprel offset limit
    
    I don't expect anyone will have hit this bug.  You'd need a TLS
    segment of 2G before you'd notice.
    
    	* elf64-ppc.c (ppc64_elf_tls_optimize): Correct test for allowed
    	range of tp-relative offsets.

commit d0044bac9eb6c5476d29c41872bcf8f74a990d4f
Author: Jose E. Marchesi <jose.marchesi@oracle.com>
Date:   Wed Jul 17 23:18:41 2019 +0200

    gas: .lcomm gets an alignment argument in eBPF
    
    gas/ChangeLog:
    
    2019-07-17  Jose E. Marchesi  <jose.marchesi@oracle.com>
    
    	* config/tc-bpf.c: Make .lcomm to get a third argument with the
    	alignment.

commit f264fab3cd9364073ccf7c32f29d0f1aa7c99159
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Thu Jul 18 00:00:14 2019 +0000

    Automatic date update in version.in

commit e0b989a6d74efbcdadac4974d0b8520ac31cd9b6
Author: Jose E. Marchesi <jose.marchesi@oracle.com>
Date:   Wed Jul 17 22:57:23 2019 +0200

    gas: support .half, .word and .dword directives in eBPF
    
    This little patch adds support to the eBPF port of GAS for a few data
    directives.  The names for the directives have been chosen to be
    coherent with the suffixes used in eBPF instructions: b, h, w and dw
    for 8, 16, 32 and 64-bit values respectively.
    
    Documentation and tests included.
    Tested in a x86_64 host.
    
    gas/ChangeLog:
    
    2019-07-17  Jose E. Marchesi  <jose.marchesi@oracle.com>
    
    	* config/tc-bpf.c (md_pseudo_table): .half, .word and .dword.
    	* testsuite/gas/bpf/data.s: New file.
    	* testsuite/gas/bpf/data.d: Likewise.
    	* testsuite/gas/bpf/data-be.d: Likewise.
    	* testsuite/gas/bpf/bpf.exp: Run data and data-be.
    	* doc/c-bpf.texi (BPF Directives): New section.

commit d8f68fcb9378b5ab1c945fa676e11da15be56dd6
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Jul 4 10:09:36 2019 -0600

    Remove unnecessary "return"s
    
    The TUI has some "return;" statements at the end of void-returning
    functions.  There's no need for these, so this patch removes them.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.c (tui_update_source_window)
    	(tui_update_source_window_as_is)
    	(tui_update_source_windows_with_line): Remove return.
    	* tui/tui-disasm.c (tui_show_disassem)
    	(tui_show_disassem_and_update_source): Remove return.
    	* tui/tui.c (tui_reset): Remove return.
    	* tui/tui-wingeneral.c
    	(tui_check_and_display_highlight_if_needed): Remove return.

commit ca5af91ed271a12200bb40ccfaaede4baef6f5fe
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Jul 2 17:31:44 2019 -0600

    Fix an error in parse_scrolling_args
    
    parse_scrolling_args combines two errors into one message, which also
    happens to end with a newline.  This separates the errors and fixes
    the message.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-win.c (parse_scrolling_args): Throw separate errors.

commit 5104fe361d818a46b262b5d504f3d293c9a2b44a
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Jul 2 17:07:02 2019 -0600

    Move source window common to code to tui-winsource.[ch]
    
    Like the previous rearranging patches, this moves the source and
    disassembly window base class code to tui-winsource.[ch].  The
    execution info window is also moved, because it is associated with
    this base class.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (struct tui_exec_info_window)
    	(struct tui_source_window_base): Move from tui-data.h.
    	* tui/tui-winsource.c: Move many method definitions from
    	elsewhere.  Remove "structuring" comments.
    	* tui/tui-wingeneral.c (tui_source_window_base::make_visible)
    	(tui_source_window_base::refresh_window): Move to
    	tui-winsource.c.
    	* tui/tui-win.c (tui_source_window_base::refresh_all)
    	(tui_source_window_base::update_tab_width)
    	(tui_source_window_base::set_new_height)
    	(tui_source_window_base::do_make_visible_with_new_height): Move to
    	tui-winsource.c.
    	* tui/tui-source.h: Update.
    	* tui/tui-source.c (tui_source_window_base::reset): Move to
    	tui-winsource.c.
    	* tui/tui-disasm.h: Update.
    	* tui/tui-data.h (struct tui_exec_info_window): Move to
    	tui-winsource.h.
    	(struct tui_source_window_base): Likewise.
    	* tui/tui-data.c (tui_source_window_base::clear_detail)
    	(tui_source_window_base, ~tui_source_window_base): Move to
    	tui-winsource.c.

commit daa15dde7202d948da694bdfe0df9e5294c7ee9a
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Jul 2 17:05:49 2019 -0600

    Change make_invisible_and_set_new_height to be a method
    
    This changes make_invisible_and_set_new_height to be a method on
    tui_win_info.  I felt that this was cleaner.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-win.c (tui_resize_all)
    	(tui_source_window_base::update_tab_width)
    	(tui_adjust_win_heights): Update.
    	(tui_win_info::make_invisible_and_set_new_height): Rename from
    	make_invisible_and_set_new_height.
    	* tui/tui-data.h (struct tui_win_info)
    	<make_invisible_and_set_new_height>: New method.

commit bfad4537079109d9c41ecd86af9cf84b6825a192
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Jul 2 15:55:01 2019 -0600

    Move tui_source_window to tui-source.h
    
    This moves tui_source_window to tui-source.h.  In this case there were
    no method definitions to be moved.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui.c: Update.
    	* tui/tui-source.h (struct tui_source_window): Move from
    	tui-data.h.
    	* tui/tui-layout.c: Update.
    	* tui/tui-disasm.c: Update.
    	* tui/tui-data.h (struct tui_source_window): Move to
    	tui-source.h.

commit 88f7e873362279462c676b26fee62376dba82b5c
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Jul 2 15:54:08 2019 -0600

    Move tui_disasm_window to tui-disasm.h
    
    This moves tui_disasm_window to tui-disasm.h.  In this case there were
    no method definitions to be moved.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-disasm.h (struct tui_disasm_window): Move from
    	tui-data.h.
    	* tui/tui-data.h (struct tui_disasm_window): Move to
    	tui-disasm.h.

commit 96bd6233af7c01885de4f4de3a4016014d61d859
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Jul 2 15:51:00 2019 -0600

    Move TUI data item window to tui-regs.h
    
    The TUI data item window is only used by the TUI register window.  So,
    this patch moves the relevant code to tui-regs.[ch].
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-regs.h (struct tui_data_item_window): Move from
    	tui-data.h.
    	* tui/tui-regs.c (tui_data_item_window): Move from tui-data.c.
    	* tui/tui-data.h (struct tui_data_item_window): Move to
    	tui-regs.h.
    	* tui/tui-data.c (~tui_data_item_window): Move to tui-regs.c.

commit ce38393b1abc2573d6521d11ab1fbfb5a28e5109
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Jul 2 15:48:59 2019 -0600

    Move TUI command window code
    
    Like the earlier change to the data window, this moves the TUI command
    window code to tui-command.[ch], and removes the old "structuring"
    comments from tui-command.c.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui.c: Update.
    	* tui/tui-win.c (tui_cmd_window::do_make_visible_with_new_height)
    	(tui_cmd_window::max_height): Move to tui-command.c.
    	* tui/tui-layout.c: Update.
    	* tui/tui-data.h (struct tui_cmd_window): Move to tui-command.h.
    	* tui/tui-data.c (tui_cmd_window::clear_detail): Move to
    	tui-command.c.
    	* tui/tui-command.h (struct tui_cmd_window): Move from
    	tui-data.h.
    	* tui/tui-command.c: Remove "structuring" comments.
    	(tui_cmd_window::clear_detail)
    	(tui_cmd_window::do_make_visible_with_new_height)
    	(tui_cmd_window::max_height): Move from elsewhere.

commit 2d8b51cba307333b6a068296d9668cd01164de28
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Jul 2 15:43:00 2019 -0600

    Move tui_dispatch_ctrl_char to tui-io.c
    
    tui_dispatch_ctrl_char is only called from a single spot in tui-io.c,
    so move the function to that file and make it static.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-io.c (tui_dispatch_ctrl_char): Move from tui-command.c.
    	Now static.
    	* tui/tui-command.h (tui_dispatch_ctrl_char): Don't declare.
    	* tui/tui-command.c (tui_dispatch_ctrl_char): Move to tui-io.c.

commit 18ab23af8b3d473f795ce48ee54a47e1a3e7ae47
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Jul 2 15:41:08 2019 -0600

    Rearrange TUI data window code
    
    An earlier patch caused tui-windata.h to be essentially empty.  And,
    other earlier patches implemented TUI data window methods in any spot
    that happened to be convenient at the time.
    
    This patch rearranges all the data window code to be somewhat more
    organized.  It moves tui_data_window to tui-regs.h, and moves the
    implementation of all methods to tui-regs.c.  It then removes
    tui-windata.h and tui-windata.c.
    
    It also removes the "structuring" comments from tui-regs.c; these are
    not the usual gdb style, and were out of date anyhow.  Finally, it
    moves _initialize_tui_regs to the end of the file, per the usual gdb
    convention.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui.c: Update.
    	* tui/tui-wingeneral.c (tui_data_window::refresh_window): Move to
    	tui-regs.c.
    	* tui/tui-windata.h: Remove file.
    	* tui/tui-windata.c: Remove file.
    	* tui/tui-win.c (tui_data_window::set_new_height)
    	(tui_data_window::do_make_visible_with_new_height): Move to
    	tui-regs.c.
    	* tui/tui-regs.h (struct tui_data_window): Move from tui-data.h.
    	* tui/tui-regs.c: Remove "structuring" comments.
    	(tui_data_window::first_data_item_displayed)
    	(tui_data_window::delete_data_content_windows)
    	(tui_data_window::erase_data_content)
    	(tui_data_window::display_all_data)
    	(tui_data_window::refresh_all)
    	(tui_data_window::do_scroll_vertical)
    	(tui_data_window::clear_detail, tui_data_window::set_new_height)
    	(tui_data_window::do_make_visible_with_new_height)
    	(tui_data_window::refresh_window): Move from elsewhere.
    	(_initialize_tui_regs): Move to end of file.
    	* tui/tui-layout.c: Update.
    	* tui/tui-hooks.c: Update.
    	* tui/tui-data.h (struct tui_data_window): Move to tui-regs.h.
    	* tui/tui-data.c (tui_data_window::clear_detail): Move to
    	tui-regs.c.
    	* Makefile.in (SUBDIR_TUI_SRCS): Remove tui-windata.c.

commit 88b7e7ccb958220adabc307e6d38fc66877820fb
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Jul 2 15:18:27 2019 -0600

    Fix flushing bug in tui_puts_internal
    
    A while back I changed gdb not to flush in some places.  It turned out
    that this broke the TUI a little.  An easy way to see it is to run
    "gdb -tui -nx", then "file gdb" at the gdb prompt.  gdb will print the
    usual "Reading symbols..." message -- but it won't appear on-screen
    until the reading is complete.
    
    This patch changes the TUI to do the equivalent of line buffering in
    tui_puts_internal.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-io.c (tui_puts_internal): Call wrefresh if newline is
    	seen.

commit 0fcd37117e94e5b9bf5f4aaa4dccc8038b38398e
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Jul 1 14:44:29 2019 -0600

    Remove has_locator method
    
    Earlier changes made it obvious that the has_locator method can only
    be called for source/disassembly windows.  Because the only reference
    to this now occurs in methods on this object, we can remove the
    has_locator method entirely, in favor of using the member directly.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-win.c (tui_source_window_base::set_new_height)
    	(tui_source_window_base::do_make_visible_with_new_height): Use
    	m_has_locator field directly.
    	* tui/tui-data.h (struct tui_win_info) <has_locator>: Remove
    	method.
    	(struct tui_source_window_base) <has_locator>: Likewise.

commit 4a38112da00f45527de4aec0b645443c6ee0e01e
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Jul 1 14:41:28 2019 -0600

    Remove tui_make_visible and tui_make_invisible
    
    tui_make_visible and tui_make_invisible are just wrappers for a method
    call, so remove them and have the callers simply make the method call
    themselves.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-wingeneral.h (tui_make_visible, tui_make_invisible):
    	Don't declare.
    	* tui/tui-wingeneral.c (tui_make_visible, tui_make_invisible):
    	Remove.
    	* tui/tui-win.c (tui_source_window_base::set_new_height)
    	(tui_source_window_base::set_new_height)
    	(make_invisible_and_set_new_height)
    	(tui_source_window_base::do_make_visible_with_new_height)
    	(tui_source_window_base::do_make_visible_with_new_height):
    	Update.
    	* tui/tui-layout.c (show_source_disasm_command, show_data)
    	(show_source_or_disasm_and_command): Update.
    	* tui/tui-layout.c (show_layout): Update.

commit 0912922656b9fec5f04623ea49292b7ae564c7ef
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Jul 1 14:37:38 2019 -0600

    Remove make_data_window
    
    As with the previous patches, unifying the creation and
    re-initialization cases for the data window lets us remove
    make_data_window in favor of simply using "new".
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.c (make_data_window): Remove.
    	(show_data): Unify creation and re-initialization cases.

commit 4a8a5e84a777c7c267503a1d1ee15bce2ba19d1d
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Jul 1 14:37:04 2019 -0600

    Remove make_source_window and make_disasm_window
    
    This unifies the remaining creation and re-initialization cases for
    the source and disassembly windows.  Once this is done, it's clear
    that make_source_window and make_disasm_window aren't needed any more,
    so remove them.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.c (make_source_window, make_disasm_window):
    	Remove.
    	(show_data): Unify creation and re-initialization cases.

commit 76d2be8e92a900558648eeba6b4ff95cba62801e
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Jul 1 14:26:42 2019 -0600

    Remove make_command_window
    
    This unifies the creation and re-initialization cases for the command
    window.  When this is done, it becomes clear that make_command_window
    isn't needed -- it can be replaced with a simple "new", so this is
    removed as well.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.c (make_command_window): Remove.
    	(show_source_disasm_command, show_source_or_disasm_and_command):
    	Unify creation and re-initialization cases.

commit 890b8bde7a07a412bc1085bd4724bd03500b0dc0
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Jul 1 00:55:14 2019 -0600

    Simplify show_source_or_disasm_and_command
    
    This changes show_source_or_disasm_and_command to unify the creation
    and re-initialization cases.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.c (show_source_or_disasm_and_command): Unify
    	creation and re-initialization cases.

commit 2cdfa11333867dbfcb2a6b631cda989d64f68944
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Jul 1 00:51:20 2019 -0600

    Change tui_get_register to return void
    
    tui_get_register returns a tui_status, but nothing checks this, so it
    can return void instead.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-regs.c (tui_get_register): Return void.

commit 8e3cfd09e813fc1a2738b0d4d19d15358e438ace
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 30 23:30:28 2019 -0600

    Simplify tui_gen_win_info::make_visible
    
    I noticed that tui_gen_win_info::make_visible was much wordier than it
    needed to be.  This simplifies it.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-wingeneral.c (tui_gen_win_info::make_visible):
    	Simplify.

commit f4e049775aa3b025501d6b4aae1cdb975505a767
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 30 20:46:18 2019 -0600

    Simplify show_source_disasm_command
    
    This is the first of a few patches to further simplify window
    (re-)initialization in tui-layout.c.  When changing the layout, a
    window may be created or, if it already exists, simply resized.  These
    two cases normally are identical, but this was obscured by the way the
    code was written.  This patch changes show_source_disasm_command to
    unify the creation and re-initialization cases.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.c (show_source_disasm_command): Simplify window
    	resetting.

commit 0379b8837a875403866e2cf1a0315bee1d8d5694
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 30 20:43:32 2019 -0600

    Clean up tui_layout_command
    
    tui_layout_command is a simple wrapper for tui_set_layout_by_name.
    This removes the extra layer and cleans up the resulting function a
    bit -- changing it to call error rather than return a result.  This
    necessitated a small change to tui-regs.c, to avoid calling the
    function that is being removed.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui.h (tui_set_layout_by_name): Don't declare.
    	* tui/tui-regs.c (tui_reg_layout): New function.
    	(tui_show_registers, tui_reg_command): Use it.
    	* tui/tui-layout.c (LAYOUT_USAGE): Remove.
    	(tui_layout_command): Rename from tui_set_layout_by_name.  Change
    	parameters.
    	(tui_layout_command): Remove.

commit b7fbad913e8874b9a887eb149b14975343bfb7ab
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 30 20:34:57 2019 -0600

    Change tui_set_layout to return void
    
    tui_set_layout can't meaningfully be called with UNDEFINED_LAYOUT; and
    instead of trying to handle this case, simply assert and have the
    function return void.  No caller was checking the return value anyway.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.h (tui/tui-layout): Return void.
    	* tui/tui-layout.c (tui_set_layout): Return void.  Add assert.

commit 4e1e56b9818109a39bb1b035fd50dd05a00699f2
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 30 20:32:35 2019 -0600

    Remove reset_locator
    
    reset_locator was introduced just a few patches ago, but it's already
    time to remove it.  It consists of a call to the locator's "reset"
    method, plus a call to tui_make_window; but the latter is redundant at
    all the places that call reset_locator.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.c (show_source_disasm_command, show_data):
    	Update.
    	(reset_locator): Remove.
    	(show_source_or_disasm_and_command): Update.

commit 1e0c09ba0bdd8b4dd1ab3a61b2ae2d326825bee1
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jun 29 07:32:47 2019 -0600

    Remove the win_type parameter from tui_gen_win_info::reset
    
    tui_gen_win_info::reset has a window type parameter that is only used
    for an assertion.  This made sense as a defensive measure when window
    creation was more dynamic -- it ensured that one did not make
    mistakes.  However, there's no need for it any more, so this removes
    it.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-source.c (tui_source_window_base::reset): Remove
    	win_type parameter.
    	* tui/tui-layout.c (make_command_window, make_source_window)
    	(make_disasm_window, make_data_window)
    	(show_source_disasm_command, show_data, tui_gen_win_info::reset)
    	(reset_locator, show_source_or_disasm_and_command): Update.
    	* tui/tui-data.h (struct tui_gen_win_info) <reset>: Remove
    	win_type parameter.
    	(struct tui_source_window_base) <reset>: Likewise.

commit 1bf605de8e9ae4fcf77c21067ddaf4a242a873f7
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jun 28 23:56:25 2019 -0600

    Introduce reset_locator function in tui-layout.c
    
    init_and_make_win in tui-layout.c is now only called for the locator
    -- earlier changes have made most of the cases here obsolete.  This
    patch removes init_and_make_win and introduces a reset_locator
    function.  Window creation is now much simpler to follow, because it
    is no longer quite so dynamic.  (Though it will become even simpler in
    coming patches.)
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.c (show_source_disasm_command): Use
    	reset_locator.
    	(reset_locator): New function.
    	(init_and_make_win): Remove.
    	(show_source_or_disasm_and_command): Use reset_locator.

commit 098f9ed48e1c94a2624c825ba93d72b163d41196
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jun 28 23:54:25 2019 -0600

    Always create an execution info window for a source window
    
    A source or disassembly window will always have an "execution info"
    window (the window along the side that displays breakpoint info), but
    this isn't immediately clear from the source.  As a result, some code
    has checks to see whether the execution_info is NULL.
    
    This changes the source window base class to always instantiate an
    execution_info window, then updates the rest of the code.  It also
    simplifies window creation in tui-layout.c.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.c (tui_set_exec_info_content): Remove
    	condition.
    	* tui/tui-wingeneral.c (tui_source_window_base::make_visible):
    	Remove condition.
    	* tui/tui-source.c (tui_source_window_base::reset): New method.
    	* tui/tui-layout.c (make_command_window): Don't call
    	init_and_make_win.
    	(make_source_window, make_disasm_window): Don't call
    	make_source_or_disasm_window.
    	(make_data_window): Don't call init_and_make_win.  Change calling
    	convention.
    	(show_source_disasm_command, show_data): Simplify.
    	(make_source_or_disasm_window): Remove.
    	(show_source_or_disasm_and_command): Simplify.
    	* tui/tui-data.h (struct tui_gen_win_info) <reset>: Now virtual.
    	(struct tui_source_window_base) <reset>: Likewise.
    	<execution_info>: Remove initializer.
    	* tui/tui-data.c (tui_source_window_base): Initialize
    	execution_info.

commit 801109578cd2a6ebd690dd23f0d4a1f4a67aee09
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jun 28 23:35:31 2019 -0600

    Remove some dead code from tui_set_layout
    
    tui_set_layout sets regs_populate using:
    
          regs_populate = (new_layout == SRC_DATA_COMMAND
    		       || new_layout == DISASSEM_DATA_COMMAND);
    
    Then later it checks this variable:
    
    	  if (!regs_populate
    	      && (new_layout == SRC_DATA_COMMAND
    		  || new_layout == DISASSEM_DATA_COMMAND))
    
    However, this is equivalent to "!regs_populate && regs_populate",
    which can never be true.  So, remove the dead code and the variable.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.c (tui_set_layout): Remove regs_populate
    	variable.

commit cf82af058d2f1488d8f8a096d7e3b76d1d5a4f46
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jun 28 23:32:05 2019 -0600

    Remove TUI data window special case
    
    The TUI has a couple of special cases for updating the data window:
    one in tui_rl_other_windowand one in tui_set_focus_command.  As part
    of the project to remove references to globals, I wanted to remove
    these calls; but when I did, some simple operations (like "C-x o")
    would cause the register window to blank.
    
    This fixes the underlying problem by arranging for the data window's
    refresh_window method to call the superclass method first, and then to
    refresh the child windows.  Then the special cases can be removed.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui.c (tui_rl_other_window): Update.
    	* tui/tui-wingeneral.c (tui_data_window::refresh_window): Call
    	superclass method first.  Always iterate over regs_content.
    	(tui_unhighlight_win, tui_highlight_win): Use refresh_window
    	method.
    	* tui/tui-win.c (tui_set_focus_command): Update.

commit 01aeb396d0e7a2d76f5f2391a30328dcdd5bed1e
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jun 28 23:23:37 2019 -0600

    Remove tui_set_focus
    
    tui_set_focus_command is a simple wrapper for tui_set_focus, so rename
    the latter and remove the wrapper function.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-win.c (tui_set_focus_command): Rename from
    	tui_set_focus.  Call tui_enable.
    	(tui_set_focus_command): Remove.

commit fd6c75eecd92ad888cc369489b31d2ed9015130e
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jun 28 23:17:24 2019 -0600

    Merge refresh and refresh_window methods
    
    Earlier refactorings introduced the refresh and refresh_window
    methods, following the previous TUI code.  However, these methods are
    essentially the same, so this patch merges them.  It also removes some
    redundant refresh_window calls, because the execution window is
    updated automatically by the corresponding source (or disassembly)
    window.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.c (tui_show_exec_info_content): Don't call
    	refresh_window.
    	* tui/tui-wingeneral.c (tui_gen_win_info::refresh_window): Call
    	touchwin.
    	(tui_data_window::refresh_window): Call refresh_window on data
    	items.  Always call superclass refresh_window.
    	(tui_win_info::refresh): Remove.
    	(tui_source_window_base::refresh_window): Update.
    	(tui_refresh_all): Update.
    	* tui/tui-layout.c (show_source_disasm_command): Remove call to
    	refresh_window.
    	(show_source_or_disasm_and_command): Likewise.
    	* tui/tui-data.h (struct tui_win_info) <refresh>: Remove.
    	(struct tui_source_window_base) <refresh>: Likewise.

commit f6cc34a91c173634b6afcc1a48601a601fbace37
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jun 28 22:57:37 2019 -0600

    Remove tui_source_window::content_in_use
    
    Now that source window clearing has been simplified, we don't need a
    special flag to say whether the source window is in use -- we can
    simply check whether the contents are set.  This patch implements this
    idea, removing the content_in_use field.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.c (tui_clear_source_content)
    	(tui_show_source_content): Update.
    	* tui/tui-source.c (tui_source_window::showing_source_p): Check
    	whether content is empty.
    	* tui/tui-data.h (struct tui_source_window_base) <content_in_use>:
    	Remove.

commit f31ec9af48578adb0baf8db3e10da871d6ee3eca
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jun 28 22:55:45 2019 -0600

    Simplify source window clearing
    
    When a TUI source window is empty, it displays a "No Source Available"
    message.  The function tui_set_source_content_nil also made sure to
    put this message into the window's "content" field.
    
    However, I believe this isn't really necessary.  Instead, it's simpler
    to just empty the contents and let curses handle the refreshing.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.c (tui_erase_source_content): Clear the
    	window's contents.
    	* tui/tui-source.h (tui_set_source_content_nil): Don't declare.
    	* tui/tui-source.c (tui_set_source_content_nil): Remove.

commit d1b6f1e5ebdd755274a77a31c4afa48969b73bee
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jun 28 22:51:20 2019 -0600

    Remove UNDEFINED_ITEM define from TUI
    
    The TUI defined UNDEFINED_ITEM, but only used it in a single spot.  I
    think this isn't very useful, so this removes the define.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-data.h (UNDEFINED_ITEM): Remove define.
    	(struct tui_data_item_window): Update.

commit d9743a13e0c9e3043ec3ad979534fab44c0f17b2
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jun 28 22:49:10 2019 -0600

    Remove unused TUI defines
    
    This removes some #defines that were unused in the TUI.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-data.h (MAX_CONTENT_COUNT, TUI_NULL_STR)
    	(DEFAULT_HISTORY_COUNT, WITH_LOCATOR, NO_LOCATOR): Remove
    	defines.

commit caf0bc4e8bafc387c8136c0f63748e56245f779a
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jun 28 22:48:33 2019 -0600

    Remove unused parameter from two TUI functions
    
    The "display_prompt" parameter of tui_erase_source_content and
    tui_clear_source_content was never passed the NO_EMPTY_SOURCE_PROMPT
    value, so remove the parameter.  Once this is done, the
    EMPTY_SOURCE_PROMPT and NO_EMPTY_SOURCE_PROMPT defines are unused, so
    remove those as well.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (tui_erase_source_content)
    	(tui_clear_source_content): Remove "display_prompt" parameter.
    	* tui/tui-winsource.c (tui_update_source_window_as_is)
    	(tui_update_source_windows_with_addr): Update.
    	(tui_clear_source_content): Remove "display_prompt" parameter.
    	(tui_erase_source_content): Likewise.  Simplify.
    	(tui_show_source_content): Update.
    	* tui/tui-win.c (tui_resize_all, tui_adjust_win_heights): Update.
    	* tui/tui-stack.c (tui_show_frame_info): Update.
    	* tui/tui-data.h (EMPTY_SOURCE_PROMPT, NO_EMPTY_SOURCE_PROMPT):
    	Remove defines.

commit 9d391078d1238e1be9dea5a775982a00a2497a57
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jun 28 16:58:16 2019 -0600

    Add win_info parameter to tui_set_disassem_content
    
    This adds a win_info parameter to tui_set_disassem_content, removing
    uses of the TUI_DISASM_WIN global.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.c (tui_update_source_window_as_is): Update.
    	* tui/tui-disasm.h (tui_set_disassem_content): Add win_info
    	parameter.
    	* tui/tui-disasm.c (tui_set_disassem_content): Add win_info
    	parameter.

commit a38da35d7bc89e4c2191d4f042912038c585f36d
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jun 28 16:44:23 2019 -0600

    Move content_in_use to tui_source_window class
    
    From scanning the source now, it's clear that the content_in_use field
    is only used for the source window.  This patch moves the field there,
    and changes it to be a bool at the same time.  (A future patch will
    clean this up further, removing the field entirely.)
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.c (tui_clear_source_content)
    	(tui_show_source_content, tui_show_exec_info_content)
    	(tui_clear_exec_info_content): Update.
    	* tui/tui-stack.c (tui_show_locator_content): Update.
    	(tui_show_frame_info): Update.
    	* tui/tui-source.h (tui_source_window): Don't declare.
    	* tui/tui-source.c (tui_source_window::showing_source_p): Rename
    	from tui_source_is_displayed.
    	* tui/tui-data.h (struct tui_gen_win_info) <content_in_use>:
    	Remove field.
    	(struct tui_source_window_base) <content_in_use>: New field.  Now
    	bool.
    	(struct tui_source_window) <showing_source_p>: New method.
    	(TUI_SRC_WIN): Change cast.
    	* tui/tui-data.c (tui_initialize_static_data): Update.

commit c2cd8994669f63eb415522352a5d5006d0fbfb48
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jun 28 15:19:10 2019 -0600

    Introduce tui_source_window_base::location_matches_p method
    
    This introduces the location_matches_p method, removing a spot that
    explicitly examines a window's type.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.c (tui_update_breakpoint_info): Use
    	location_matches_p.
    	* tui/tui-source.c (tui_source_window::location_matches_p): New
    	method.
    	* tui/tui-disasm.c (tui_disasm_window::location_matches_p): New
    	method.
    	* tui/tui-data.h (struct tui_source_window_base)
    	<location_matches_p>: New method.
    	(struct tui_source_window, struct tui_disasm_window)
    	<location_matches_p>: Likewise.

commit 4dde7b34f4e40ee6e0ea596357e4def60bd67d20
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jun 28 15:01:11 2019 -0600

    Remove tui_set_win_height
    
    tui_set_win_height_command is just a simple wrapper for
    tui_set_win_height, so rename the latter and remove the wrapper.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-win.c (tui_set_win_height_command): Rename from
    	tui_set_win_height.
    	(tui_set_win_height_command): Remove.

commit b73dd8779c0530e91c6e5067eab4cb7ca3f794d5
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jun 28 14:48:45 2019 -0600

    Make source windows be self-updating
    
    This changes the TUI source window to register itself on the
    source_styling_changed observable, and removes a bit of code from
    tui-hooks.c.  This reduces the number of uses of the TUI_SRC_WIN
    global.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-source.c (tui_source_window): New constructor.  Add
    	observer.
    	(~tui_source_window): New destructor.
    	(tui_source_window::style_changed): New method.
    	* tui/tui-hooks.c (tui_redisplay_source): Remove.
    	(tui_attach_detach_observers): Update.
    	* tui/tui-data.h (struct tui_source_window): Make constructor not
    	inline.  Add destructor.
    	(struct tui_source_window) <style_changed>: New method.
    	<m_observable>: New member.

commit ae2b53806d3ce384e349c722b21a7ad246102d5b
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Jun 27 16:05:25 2019 -0600

    Fix comment typos
    
    This fixes a couple of comment typos that I noticed.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-data.c (tui_clear_source_windows_detail): Fix typo.
    	* tui/tui-win.c (tui_resize_all): Fix typo.

commit 1ce3e8442e5bab6f700f5f011de56201f76b8461
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Jun 27 16:04:26 2019 -0600

    Introduce TUI window iterator
    
    This introduces an iterator class and a range adapter to make it
    simpler to iterate over TUI windows.
    
    One explicit iteration remains, in tui-win.c, because that spot is
    deleting windows as well.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-wingeneral.h (tui_refresh_all): Update.
    	* tui/tui-wingeneral.c (make_all_visible): Use foreach.
    	(tui_refresh_all): Remove "list" parameter.  Use foreach.
    	* tui/tui-win.c (window_name_completer): Use foreach.
    	(tui_refresh_all_win, tui_rehighlight_all, tui_all_windows_info)
    	(update_tab_width): Likewise.
    	* tui/tui-layout.c (show_layout): Update.
    	* tui/tui-data.h (class tui_window_iterator): New.
    	(struct all_tui_windows): New.
    	* tui/tui-data.c (tui_partial_win_by_name): Use foreach.

commit fe3eaf1cd9af54cd4c678a8dde7fd0df601c9490
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Jun 26 19:45:53 2019 -0600

    Minor tui_reg_next / tui_reg_prev cleanup
    
    This changes tui_reg_next and tui_reg_prev so that they don't need to
    reference the TUI_DATA_WIN globals.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-regs.c (tui_reg_next, tui_reg_prev): Add "current_group"
    	parameter.  Don't reference globals.
    	(tui_reg_command): Update.

commit 368c1354e578eb280df37059aa6b8c1f178baaf4
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Jun 26 16:26:39 2019 -0600

    Simplify tui_show_registers
    
    tui_show_registers keeps a local status variable, but it is not
    actually needed.  This rearranges the function to remove the variable.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-regs.c (tui_show_registers): Simplify.

commit e80cd2047079a63ab087df15d179c49ca18de202
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Jun 26 16:25:40 2019 -0600

    Parameterize tui_show_register_group with window
    
    This changes tui_show_register_group not to reference the TUI_DATA_WIN
    global, instead leaving that to its caller.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-regs.c (tui_show_registers): Update.
    	(tui_show_register_group): Add win_info parameter.

commit aca2dd16474ec88b3969436044801f58f9163c5c
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Jun 26 16:15:46 2019 -0600

    Introduce tui_data_window::display_reg_element_at_line method
    
    This changes tui_display_reg_element_at_line to be a method on
    tui_data_window, allowing for the removal of some uses of the
    TUI_DATA_WIN global.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-regs.c (tui_data_window::display_reg_element_at_line):
    	Rename from tui_display_reg_element_at_line.
    	(tui_data_window::display_registers_from_line): Update.
    	* tui/tui-data.h (struct tui_data_window)
    	<display_reg_element_at_line>: New method.

commit 517e9505fa563c83b4d5cb192e423a0d6baac752
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Jun 26 16:13:39 2019 -0600

    Introduce two more tui_data_window methods
    
    This changes tui_display_registers_from and
    tui_display_registers_from_line to be methods on tui_data_window,
    allowing for the removal of more uses of the TUI_DATA_WIN global.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-regs.h (tui_display_registers_from)
    	(tui_display_registers_from_line): Don't declare.
    	* tui/tui-windata.c (tui_data_window::display_all_data)
    	(tui_data_window::refresh_all)
    	(tui_data_window::do_scroll_vertical): Update.
    	* tui/tui-regs.c (tui_data_window::display_registers_from): Rename
    	from tui_display_registers_from.
    	(tui_display_reg_element_at_line): Update.
    	(tui_data_window::display_registers_from_line): Rename from
    	tui_display_registers_from_line.
    	* tui/tui-data.h (struct tui_data_window) <display_registers_from,
    	display_registers_from_line>: New methods.

commit f76d8b19e80b43a141ce31c0e0230e23f676182d
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Jun 26 16:07:45 2019 -0600

    Introduce tui_data_window::erase_data_content method
    
    This changes tui_erase_data_content to be a method on tui_data_window,
    allowing for the removal of some uses of the TUI_DATA_WIN global.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-windata.h (tui_erase_data_content): Don't declare.
    	* tui/tui-windata.c (tui_data_window::erase_data_content): Rename
    	from tui_erase_data_content.
    	(tui_data_window::display_all_data)
    	(tui_data_window::refresh_all)
    	(tui_data_window::do_scroll_vertical): Update.
    	* tui/tui-regs.c (tui_show_registers): Update.
    	* tui/tui-data.h (struct tui_data_window) <erase_data_content>:
    	New method.

commit b4094625d8a3e2b528032e2ca8d8cdecf222bb7c
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Jun 26 16:04:37 2019 -0600

    Introduce tui_data_window::delete_data_content_windows method
    
    This changes tui_delete_data_content_windows to be a method on
    tui_data_window, removing some uses of the TUI_DATA_WIN global.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-windata.h (tui_delete_data_content_windows): Don't
    	declare.
    	* tui/tui-windata.c
    	(tui_data_window::delete_data_content_windows): Rename from
    	tui_delete_data_content_windows.
    	(tui_data_window::display_all_data)
    	(tui_data_window::do_scroll_vertical): Update.
    	* tui/tui-data.h (struct tui_data_window)
    	<delete_data_content_windows>: New method.

commit c223a7299e2bdb604d7006842eda7165bcbf2c15
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Jun 26 16:03:12 2019 -0600

    Don't declare unimplemented functions
    
    A couple of functions were declared but never defined.  This removes
    the declarations.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-windata.h (tui_refresh_data_win): Don't declare.
    	* tui/tui-regs.h (tui_first_reg_element_inline): Don't declare.

commit 50daf2683bad925470f6f1bd08aef928c2f4d6fe
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Jun 26 16:02:36 2019 -0600

    Introduce tui_data_window::display_all_data method
    
    This changes tui_display_all_data to be a method on tui_data_window.
    This helps cluster uses of the TUI_DATA_WIN global.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-windata.h (tui_display_all_data): Don't declare.
    	* tui/tui-windata.c (tui_data_window::display_all_data): Rename
    	from tui_display_all_data.
    	* tui/tui-win.c
    	(tui_data_window::do_make_visible_with_new_height): Update.
    	* tui/tui-regs.c (tui_show_registers): Update.
    	* tui/tui-layout.c (tui_set_layout): Update.
    	* tui/tui-data.h (struct tui_data_window) <display_all_data>: New
    	method.

commit df5f8cab00a8076a5582efec028002d323950c8f
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Jun 26 16:00:05 2019 -0600

    Remove tui_display_data_from
    
    tui_display_data_from is only called from a single place.  Inlining it
    there lets us remove some uses of the TUI_DATA_WIN global.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-windata.h (tui_display_data_from): Don't declare.
    	* tui/tui-windata.c (tui_display_data_from): Remove.
    	(tui_data_window::refresh_all): Update.

commit 80cb6c27099e199cca01bc1a2efb8e8fbc941a48
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Jun 26 15:56:56 2019 -0600

    Remove tui_display_data_from_line
    
    tui_display_data_from_line is just a wrapper for
    tui_display_registers_from_line, so remove it.  Also, nothing passed 0
    as the "force_display" parameter to tui_display_registers_from_line,
    so remove that parameter as well.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-windata.h (tui_display_data_from_line): Don't declare.
    	* tui/tui-windata.c (tui_display_data_from_line): Remove.
    	(tui_display_data_from, tui_data_window::do_scroll_vertical): Call
    	tui_display_registers_from_line.
    	* tui/tui-regs.h (tui_display_registers_from_line): Update.
    	* tui/tui-regs.c (tui_display_registers_from_line): Remove
    	"force_display" parameter.

commit baff0c28b83bd1ad7949d07b78fdb85ad6be49a5
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Jun 26 15:49:00 2019 -0600

    Introduce tui_data_window::first_reg_element_no_inline
    
    This changes tui_first_reg_element_no_inline to be a method on
    tui_data_window.  This again moves uses of the TUI_DATA_WIN global
    from this function into other functions that are already using the
    global.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-regs.h (tui_first_reg_element_no_inline): Don't
    	declare.
    	* tui/tui-regs.c (tui_data_window::first_reg_element_no_inline):
    	Rename from tui_first_reg_element_no_inline.
    	(tui_display_reg_element_at_line)
    	(tui_display_registers_from_line): Update.
    	* tui/tui-data.h (struct tui_data_window)
    	<first_reg_element_no_inline>: New method.

commit 3b23c5f2662d3240cdc586d3d2e5fb6eb8cba4c7
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Jun 26 15:46:38 2019 -0600

    Introduce tui_data_window::line_from_reg_element_no method
    
    This changes tui_line_from_reg_element_no to be a method on
    tui_data_window, allowing for the removal of some uses of the
    TUI_DATA_WIN global.  (Actually, in this particular patch, the number
    of uses is not decreased, but rather the uses are moved to spots that
    are already using the global, i.e., increasing the clustering.)
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-windata.c (tui_display_data_from)
    	(tui_data_window::do_scroll_vertical): Update.
    	* tui/tui-regs.h (tui_line_from_reg_element_no): Don't declare.
    	* tui/tui-regs.c (tui_data_window::line_from_reg_element_no):
    	Rename from tui_line_from_reg_element_no.
    	(tui_display_registers_from_line): Update.
    	* tui/tui-data.h (struct tui_data_window)
    	<line_from_reg_element_no>: New method.

commit 0b5ec21882bcc27e93144882b84935497da6e7fe
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Jun 26 15:44:51 2019 -0600

    Introduce tui_data_window::last_regs_line_no method
    
    This changes tui_last_regs_line_no into a method on tui_data_window,
    allowing the removal of uses of the TUI_DATA_WIN global.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-regs.h (tui_last_regs_line_no): Don't declare.
    	* tui/tui-regs.c (tui_data_window::last_regs_line_no): Rename from
    	tui_last_regs_line_no.
    	(tui_display_reg_element_at_line)
    	(tui_display_registers_from_line): Update.
    	* tui/tui-data.h (struct tui_data_window) <last_regs_line_no>: New
    	method.

commit 0807ab7b88fa5ffb138ba1ee22b33d26e239de2f
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 23 21:25:46 2019 -0600

    Remove deleted breakpoint from TUI display
    
    PR tui/24722 points out that deleting a breakpoint does not cause the
    "b" to be removed from the breakpoint display.  The issue here was
    that the breakpoint still exists at the moment the breakpoint-deleted
    observer is notified.  This fixes the problem by specially handling
    the case where a breakpoint is being removed.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	PR tui/24722:
    	* tui/tui-winsource.h (tui_update_all_breakpoint_info)
    	(tui_update_breakpoint_info): Add "being_deleted" parameter.
    	* tui/tui-winsource.c (tui_update_source_window_as_is): Update.
    	(tui_update_all_breakpoint_info): Add "being_deleted" parameter.
    	(tui_update_breakpoint_info): Likewise.
    	* tui/tui-hooks.c (tui_event_create_breakpoint)
    	(tui_event_delete_breakpoint, tui_event_modify_breakpoint):
    	Update.

commit 9ad7fdef7c72b2aca0398ce8e63b89e560873807
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 23 21:00:01 2019 -0600

    Consolidate "if"s in tui_show_frame_info
    
    tui_show_frame_info has two parallel "if"s with the same condition and
    no intervening code.  The second "if" perhaps wasn't obviously
    identical, but earlier refactorings made it clearer, by pointing out
    that only source and disassembly windows can be handled here.  This
    merges the two statements.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-stack.c (tui_show_frame_info): Consolidate "if"s.

commit 5813316fa4aeaf52f374c20c7fdb9747b88fa8ca
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 23 20:57:09 2019 -0600

    Remove some uses of TUI_WIN_SRC
    
    This adds a 'win_info' parameter to a couple of functions.  This
    reduces the number of references to the TUI_WIN_SRC global.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.c (tui_update_source_window_as_is)
    	(tui_update_source_windows_with_addr): Update.
    	* tui/tui-source.h (tui_set_source_content)
    	(tui_show_symtab_source): Add "win_info" parameter.
    	* tui/tui-source.c (tui_set_source_content): Add "win_info"
    	parameter.
    	(tui_show_symtab_source): Likewise.

commit 00e264e7626260a6df6b5a0aa7ee25215ea93f9c
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 23 20:48:59 2019 -0600

    Check can_highlight in tui_check_and_display_highlight_if_needed
    
    tui_check_and_display_highlight_if_needed currently checks the
    window's type; but this can be replaced with a check of
    "can_highlight", making it more polymorphically-correct.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-wingeneral.c
    	(tui_check_and_display_highlight_if_needed): Check can_highlight.

commit 06210ce428ad74c28fd94f7ea3800b79791cdefa
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 23 20:39:57 2019 -0600

    Introduce can_scroll method
    
    This introduces a "can_scroll" method, removing a spot that explicitly
    checks a window's type.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-data.h (struct tui_win_info) <can_scroll>: New method.
    	(struct tui_cmd_window) <can_scroll>: New method.
    	* tui/tui-command.c (tui_dispatch_ctrl_char): Use can_scroll
    	method.

commit 381befeedf9316991d47f4213850545a96593d23
Author: Tom Tromey <tromey@adacore.com>
Date:   Wed Jul 17 08:34:23 2019 -0600

    Rename field_int to field_signed
    
    This renames ui_out::field_int to field_signed, and field_fmt_int to
    field_fmt_signed; and changes the type of the "value" parameter from
    int to LONGEST.
    
    Tested by the buildbot.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tromey@adacore.com>
    
    	* ui-out.h (class ui_out) <field_signed, field_fmt_signed,
    	do_field_signed>: Rename.  Change type of "value".
    	* ui-out.c (ui_out::field_signed): Rename from field_int.
    	Change type of "value".
    	(ui_out::field_fmt_signed): Rename from field_fmt_int.  Change
    	type of "value".
    	* tui/tui-out.h (class tui_ui_out) <do_field_signed>: Rename from
    	do_field_int.  Change type of "value".
    	* tui/tui-out.c (tui_ui_out::do_field_signed): Rename from
    	do_field_int.  Change type of "value".
    	* tracepoint.c (trace_status_mi, tfind_1)
    	(print_one_static_tracepoint_marker): Update.
    	* thread.c (print_thread_info_1, print_selected_thread_frame):
    	Update.
    	* stack.c (print_frame, print_frame_info): Update.
    	* spu-tdep.c (info_spu_signal_command, info_spu_dma_cmdlist):
    	Update.
    	* source.c (print_source_lines_base): Update.
    	* skip.c (info_skip_command): Update.
    	* record-btrace.c (btrace_ui_out_decode_error)
    	(btrace_call_history_src_line): Update.
    	* python/py-framefilter.c (py_print_single_arg, py_print_frame):
    	Update.
    	* progspace.c (print_program_space): Update.
    	* mi/mi-symbol-cmds.c (mi_cmd_symbol_list_lines): Update.
    	* mi/mi-out.h (class mi_ui_out) <do_field_signed>: Rename from
    	do_field_int.  Change type of "value".
    	* mi/mi-out.c (mi_ui_out::do_table_begin)
    	(mi_ui_out::do_table_header): Update.
    	(mi_ui_out::do_field_signed): Rename from do_field_int.  Change
    	type of "value".
    	* mi/mi-main.c (mi_cmd_thread_list_ids, print_one_inferior)
    	(mi_cmd_data_list_changed_registers, output_register)
    	(mi_cmd_data_read_memory, mi_load_progress)
    	(mi_cmd_trace_frame_collected): Update.
    	* mi/mi-interp.c (mi_on_normal_stop_1, mi_output_solib_attribs):
    	Update.
    	* mi/mi-cmd-var.c (print_varobj, mi_cmd_var_create)
    	(mi_cmd_var_delete, mi_cmd_var_info_num_children)
    	(mi_cmd_var_list_children, varobj_update_one): Update.
    	* mi/mi-cmd-stack.c (mi_cmd_stack_info_depth)
    	(mi_cmd_stack_list_args, list_arg_or_local): Update.
    	* mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_file): Update.
    	* inferior.c (print_inferior): Update.
    	* gdb_bfd.c (print_one_bfd): Update.
    	* disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
    	Update.
    	* darwin-nat-info.c (darwin_debug_regions_recurse): Update.
    	* cli-out.h (class cli_ui_out) <do_field_signed>: Rename from
    	do_field_int.  Change type of "value".
    	* cli-out.c (cli_ui_out::do_field_signed): Rename from
    	do_field_int.  Change type of "value".
    	* breakpoint.c (watchpoint_check, print_breakpoint_location)
    	(print_one_breakpoint_location, print_it_catch_fork)
    	(print_one_catch_fork, print_it_catch_vfork)
    	(print_one_catch_vfork, print_it_catch_solib)
    	(print_it_catch_exec, print_it_ranged_breakpoint)
    	(print_mention_watchpoint, print_mention_masked_watchpoint)
    	(bkpt_print_it, update_static_tracepoint): Update.
    	* break-catch-throw.c (print_it_exception_catchpoint): Update.
    	* break-catch-syscall.c (print_it_catch_syscall): Update.
    	* ada-tasks.c (print_ada_task_info): Update.
    	* ada-lang.c (print_it_exception, print_mention_exception):
    	Update.

commit 6b78c3f83c8bcbfa714aab7627ece9673b2d602a
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Tue Jul 2 12:06:06 2019 +0100

    gdb: Remove a non-const reference parameter
    
    Non-const reference parameter should be avoided according to the GDB
    coding standard:
    
      https://sourceware.org/gdb/wiki/Internals%20GDB-C-Coding-Standards#Avoid_non-const_reference_parameters.2C_use_pointers_instead
    
    This commit updates the gdbarch method gdbarch_stap_adjust_register,
    and the one implementation i386_stap_adjust_register to avoid using a
    non-const reference parameter.
    
    I've also removed the kfail from the testsuite for bug 24541, as this
    issue is now resolved.
    
    gdb/ChangeLog:
    
    	PR breakpoints/24541
    	* gdbarch.c: Regenerate.
    	* gdbarch.h: Regenerate.
    	* gdbarch.sh: Adjust return type and parameter types for
    	'stap_adjust_register'.
    	(i386_stap_adjust_register): Adjust signature and return new
    	register name.
    	* stap-probe.c (stap_parse_register_operand): Adjust use of
    	'gdbarch_stap_adjust_register'.
    
    gdb/testsuite/ChangeLog:
    
    	PR breakpoints/24541
    	* gdb.mi/mi-catch-cpp-exceptions.exp: Remove kfail due to 24541.

commit d72a9b85651c872378f6dd732cb578f6f055a9b3
Author: Tom Tromey <tromey@adacore.com>
Date:   Mon Jul 15 11:52:02 2019 -0600

    Remove a VEC from s390-linux-nat.c
    
    This removes a use of VEC fro s390-linux-nat.c, replacing it with
    std::vector.
    
    Tested using the Fedora-s390x-m64 buildbot builder.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tromey@adacore.com>
    
    	* s390-linux-nat.c (s390_watch_area): Remove typedef.  Don't
    	declare VEC.
    	(struct s390_debug_reg_state) <watch_areas, break_areas>: Now
    	std::vector.
    	(struct s390_process_info): Add initializers.
    	(s390_add_process): Use new.
    	(s390_linux_nat_target::low_forget_process): Use delete.
    	(s390_linux_nat_target::low_new_fork)
    	(s390_linux_nat_target::stopped_by_watchpoint)
    	(s390_linux_nat_target::low_prepare_to_resume)
    	(s390_linux_nat_target::insert_watchpoint)
    	(s390_linux_nat_target::insert_hw_breakpoint)
    	(s390_linux_nat_target::remove_watchpoint)
    	(s390_linux_nat_target::remove_hw_breakpoint): Update.

commit 8dc0818eb2c449d553065b57e6953436896c6e5a
Author: Jan Beulich <jbeulich@suse.com>
Date:   Wed Jul 17 09:16:31 2019 +0200

    x86: replace "anymem" checks where possible
    
    Once operand parsing has completed, the simpler check of Operand_Mem can
    be used in places where i.types[] got passed to operand_type_check().
    Note that this has shown a couple of omissions of adjusting i.flags[]
    when playing with i.op[] / i.types[] / i.tm.operand_types[].  Not all of
    them get added here, just all of the ones needed in process_operands().

commit 1d942ae90810156b9875ea3e11754ab447c748db
Author: Jan Beulich <jbeulich@suse.com>
Date:   Wed Jul 17 09:15:49 2019 +0200

    x86: drop stale Mem enumerator
    
    This was supposed to also be removed by c48dadc9a8 ('x86: drop "mem"
    operand type attribute').  It's odd enough that this hasn't caused
    build issues, considering the careful use of OTunused (apparently to
    avoid "missing initializer" warnings).
    
    To avoid such happening again introduce compile time consistency
    checks.

commit bd7918379d2688898dfb29851f2019d2a7a70959
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Wed Jul 17 00:00:22 2019 +0000

    Automatic date update in version.in

commit dfd6917457a3030ea4a4b6356f65216fab92d0b8
Author: Jan Beulich <jbeulich@suse.com>
Date:   Tue Jul 16 09:31:36 2019 +0200

    x86: make RegMem an opcode modifier
    
    ... instead of an operand type bit: It's an insn property, not an
    operand one.  There's just one actual change to be made to the
    templates: Most are now required to have the (unswapped) destination go
    into ModR/M.rm, so VMOVD template needs its opcode adjusted accordingly
    and its operands swapped.  {,V}MOVS{S,D}, otoh, are left alone in this
    regard, as otherwise generated code would differ from what we've been
    producing so far (which I don't think is wanted).
    
    Take the opportunity and add a missing IgnoreSize to pextrb (leading to
    an error in 16-bit mode), and take the liberty to once again drop stray
    IgnoreSize attributes from lines changed and neighboring related ones.

commit 21df382b918888de64749e977f185c4e10a5b838
Author: Jan Beulich <jbeulich@suse.com>
Date:   Tue Jul 16 09:30:29 2019 +0200

    x86: fold SReg{2,3}
    
    They're the only exception to there generally being no mix of register
    kinds possible in an insn operand template, and there being two bits per
    operand for their representation is also quite wasteful, considering the
    low number of uses.  Fold both bits and deal with the little bit of
    fallout.
    
    Also take the liberty and drop dead code trying to set REX_B: No segment
    register has RegRex set on it.
    
    Additionally I was quite surprised that PUSH/POP with the permitted
    segment registers is not covered by the test cases.  Add the missing
    pieces.

commit 206e6c58a769f9ec63827b8ca3952b0cd8c828ba
Author: John Baldwin <jhb@FreeBSD.org>
Date:   Mon Jul 15 17:21:36 2019 -0700

    Fix build for aarch64, arm, and riscv FreeBSD native targets.
    
    Remove unused gdbarch argument to helper functions originally
    copied from mips-fbsd-nat.c.  Include regcache.h previously
    included from defs.h via gdbarch.h.
    
    gdb/ChangeLog:
    
    	* aarch64-fbsd-nat.c: Include regcache.h.
    	(getregs_supplies, getfpregs_supplies): Remove unused gdbarch
    	argument.
    	(aarch64_fbsd_nat_target::fetch_registers)
    	(aarch64_fbsd_nat_target::store_registers): Remove gdbarch
    	variable.
    	* arm-fbsd-nat.c, riscv-fbsd-nat.c: Likewise.

commit cbde90f25ec66b359c90514a50bbf25d122bb7e3
Author: John Baldwin <jhb@FreeBSD.org>
Date:   Mon Jul 15 17:21:36 2019 -0700

    Add include of gdbarch.h.
    
    gdb/ChangeLog:
    
    	* fbsd-nat.c: Include gdbarch.h.

commit 7e24fb63e7db33d3627623629b0e99fe322e26f9
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Tue Jul 16 00:00:27 2019 +0000

    Automatic date update in version.in

commit 07128006d6caec5df31a960b131d2026f35ed948
Author: Tom Tromey <tromey@adacore.com>
Date:   Tue Jul 2 09:13:53 2019 -0600

    Fix a FIXME in mi-out.c
    
    This removes a FIXME comment from mi_ui_out::do_field_int, by
    replacing a printf with a use of plongest.
    
    2019-07-15  Tom Tromey  <tromey@adacore.com>
    
    	* mi/mi-out.c (mi_ui_out::do_field_int): Use plongest.

commit 1f77b012e61ec11c92a35223fdfed598c6d2f4e9
Author: Tom Tromey <tromey@adacore.com>
Date:   Mon Jul 1 12:14:48 2019 -0600

    Introduce field_unsigned
    
    This adds field_unsigned and changes various places using field_fmt
    with "%u" to use this instead.  This also replaces an existing
    equivalent helper function in record-btrace.c.
    
    2019-07-15  Tom Tromey  <tromey@adacore.com>
    
    	* mi/mi-out.h (class mi_ui_out) <do_field_unsigned>: Declare.
    	* mi/mi-out.c (mi_ui_out::do_field_unsigned): New method.
    	* cli-out.h (class cli_ui_out) <do_field_unsigned>: Declare.
    	* cli-out.c (cli_ui_out::do_field_int): New method.
    	* ui-out.c (ui_out::field_unsigned): New method.
    	* symfile.c (generic_load): Use field_unsigned.
    	(print_transfer_performance): Likewise.
    	* record-btrace.c (ui_out_field_uint): Remove.
    	(btrace_call_history_insn_range, btrace_call_history): Use
    	field_unsigned.
    	* disasm.c (gdb_pretty_print_disassembler::pretty_print_insn): Use
    	field_unsigned.
    	* ui-out.h (class ui_out) <field_unsigned>: New method.
    	<do_field_unsigned>: Likewise.

commit 33eca68072e73d984fc139dde45b8140b94757cb
Author: Tom Tromey <tromey@adacore.com>
Date:   Mon Jul 1 12:08:15 2019 -0600

    Use field_string in more places
    
    This replaces uses of field_fmt with a "%s" format string to use
    field_string instead.  Also, one use of "%9lx" is replaced with a call
    to phex_nz; the '9' is dropped as it is implicit in the field width.
    
    2019-07-15  Tom Tromey  <tromey@adacore.com>
    
    	* mi/mi-main.c (list_available_thread_groups): Use field_string.
    	* mi/mi-interp.c (mi_memory_changed): Use field_string.
    	* target.c (flash_erase_command): Use field_string.
    	* infrun.c (print_signal_received_reason): Use field_string.
    	* i386-tdep.c (i386_mpx_print_bounds): Use field_string.
    	* breakpoint.c (maybe_print_thread_hit_breakpoint): Use
    	field_string.
    	* ada-tasks.c (print_ada_task_info): Use field_string.

commit ca8d69beb1024316af8dec571584437d613f40d2
Author: Tom Tromey <tromey@adacore.com>
Date:   Mon Jul 1 12:02:37 2019 -0600

    Use field_core_addr in more places
    
    This changes a few spots that use field_fmt to use field_core_addr
    instead.
    
    gdb/ChangeLog
    2019-07-15  Tom Tromey  <tromey@adacore.com>
    
    	* target.c (flash_erase_command): Use field_core_addr.
    	* symfile.c (generic_load): Use field_core_addr.
    	* sparc64-linux-tdep.c (sparc64_linux_handle_segmentation_fault):
    	Use field_core_addr.
    	* i386-linux-tdep.c (i386_linux_handle_segmentation_fault): Use
    	field_core_addr.

commit 3719fd55b6f89662653d50d33bb267c5f21127a5
Author: Jose E. Marchesi <jose.marchesi@oracle.com>
Date:   Mon Jul 15 16:00:28 2019 +0200

    cpu,opcodes,gas: fix explicit arguments to eBPF ldabs instructions
    
    This patch fixes the eBPF CPU description in order to reflect the
    right explicit arguments passed to the ldabs{b,h,w,dw} instructions,
    updates the corresponding GAS tests, and updates the BPF section of
    the GAS manual.
    
    cpu/ChangeLog:
    
    2019-07-15  Jose E. Marchesi  <jose.marchesi@oracle.com>
    
    	* bpf.cpu (dlabs): New pmacro.
    	(dlind): Likewise.
    
    opcodes/ChangeLog:
    
    2019-07-15  Jose E. Marchesi  <jose.marchesi@oracle.com>
    
    	* bpf-desc.c: Regenerate.
    	* bpf-opc.c: Likewise.
    	* bpf-opc.h: Likewise.
    
    gas/ChangeLog:
    
    2019-07-15  Jose E. Marchesi  <jose.marchesi@oracle.com>
    
    	* testsuite/gas/bpf/mem.s: ldabs instructions do not take a `src'
    	register as an argument.
    	* testsuite/gas/bpf/mem.d: Updated accordingly.
    	* testsuite/gas/bpf/mem-be.d: Likewise.
    	* doc/c-bpf.texi (BPF Opcodes): Update to reflect the correct
    	explicit arguments to ldabs and ldind instructions.

commit 5b9d7a9a647260ba754fbd2a176d37806f15acc8
Author: Alan Modra <amodra@gmail.com>
Date:   Fri Jul 12 15:28:19 2019 +0930

    Fix __bss_start assertion failure in _bfd_elf_fix_symbol_flags
    
    > Building LLVM 6.0 on FreeBSD/powerpc (devel/llvm60 port) the assertion
    > in the subject trips (displays twice) when linking libLTO.so.1.  The
    > issue has been filed in FreeBSD's bugzilla, at
    > https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=237068 .  It appears
    > the 'llvm::hashing::detail::get_execution_seed()::seed@@JL_LLVM_6.0'
    > symbol is being weakly aliased to an indirect symbol
    > __bss_start@@JL_LLVM_6.0.  Since __bss_start@@JL_LLVM_6.0 is an
    > indirect symbol, it fails the assertion.
    
    I haven't looked under a debugger at your testcase but I think I know
    what is going on here.  You have a shared library with a weakly
    defined llvm::hashing::detail::get_execution_seed()::seed which
    happens to be at the same location as __bss_start in that library.  At
    the time the linker loads symbols for that library, it sees they are
    both versioned and thus introduces non-versioned indirect symbols for
    them.  The linker considers the symbols as possibly being aliases,
    setting up h->u.alias and h->is_weakalias such that
    __bss_start@@JL_LLVM_6.0 is the definition.  No real problem so far,
    the definition is bfd_link_hash_defined, except that the zero size, no
    type __bss_start symbol possibly should not be considered an alias in
    the first place.
    
    Later, __bss_start as defined by the linker script is entered into the
    linker symbol table.  This is similar to __bss_start being defined by
    a regular object file in that ELF symbol resolution rules say that the
    value of __bss_start in the library is overridden by __bss_start in
    the executable/library being produced.  So to accomplish the override,
    ld flips __bss_start from being an indirect symbol pointing at
    __bss_start@@JL_LLVM_6.0 to __bss_start@@JL_LLVM_6.0 being an indirect
    symbol pointing at __bss_start.  That's how we get an unexpected
    indirect symbol and hit the assert.
    
    What should happen I think, is for the def->def_regular code above the
    assert to run in this case.  The symbols are no longer aliases.
    
    	* elflink.c (_bfd_elf_fix_symbol_flags): If the def for an
    	alias is no longer bfd_link_hash_defined, clear the alias.

commit 03181f1c38753b24e9d13491e102b5fa685076a2
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Mon Jul 15 00:00:42 2019 +0000

    Automatic date update in version.in

commit 92434a14b97bf07546701613a16aaf4d8a3b3eca
Author: Jose E. Marchesi <jose.marchesi@oracle.com>
Date:   Sun Jul 14 14:45:31 2019 +0200

    cpu,opcodes,gas: fix arguments to ldabs and ldind eBPF instructions
    
    The eBPF non-generic load instructions ldind{b,h,w,dw} and
    ldabs{b,h,w,dw} do not take an explicit destination register as an
    argument.  Instead, they put the loaded value in %r0, implicitly.
    
    This patch fixes the CPU BPF description to not expect a 'dst'
    argument in these arguments, regenerates the corresponding files in
    opcodes, and updates the impacted GAS tests.
    
    Tested in a x86-64 host.
    
    cpu/ChangeLog:
    
    2019-07-14  Jose E. Marchesi  <jose.marchesi@oracle.com>
    
    	* bpf.cpu (dlsi): ldabs and ldind instructions do not take an
    	explicit 'dst' argument.
    
    opcodes/ChangeLog:
    
    2019-07-14  Jose E. Marchesi  <jose.marchesi@oracle.com>
    
    	* bpf-desc.c: Regenerate.
    	* bpf-opc.c: Likewise.
    
    gas/ChangeLog:
    
    2019-07-14  Jose E. Marchesi  <jose.marchesi@oracle.com>
    
    	* testsuite/gas/bpf/mem.s: Do not use explicit arguments for
    	ldabs and ldind instructions.
    	* testsuite/gas/bpf/mem.d: Updated accordingly.
    	* testsuite/gas/bpf/mem-be.d: Likewise.

commit da73816739483bac537403262cef1c460e43319f
Author: Tom de Vries <tdevries@suse.de>
Date:   Sun Jul 14 13:23:04 2019 +0200

    [gdb/testsuite] Fix unterminated string in gdb.objc/basicclass.exp
    
    The test-case gdb.objc/basicclass.exp contains an unterminated string,
    introduced in refactoring commit fa43b1d7ca "after gdb_run_cmd, gdb_expect ->
    gdb_test_multiple/gdb_test".
    
    Fix the unterminated string.
    
    gdb/testsuite/ChangeLog:
    
    2019-07-14  Tom de Vries  <tdevries@suse.de>
    
    	PR testsuite/24760
    	* gdb.objc/basicclass.exp: Fix unterminated string.

commit 48b550c28afd21b382e21e56b7ba246b3bf49d4b
Author: Joel Brobecker <brobecker@adacore.com>
Date:   Sat Jul 13 18:00:32 2019 -0700

    adjust src-release following the renaming of gdb/common/ to gdb/gdbsupport/
    
    A recent change renamed the common/ directory into gdbsupport/ in gdb.
    This causes problems in the getver function in the src-release script
    which doesn't find the create-version.sh script anymore. As a result,
    it falls back on using the version.in file verbatim, meaning that
    the "DATE" placeholder doesn't get replaced with the snapshot date,
    and the "-git" suffix doesn't get stripped. More precisely, we get
    snapshots called "gdb-8.3.50-DATE-git.tar" instead of (e.g.)
    "gdb-8.3-20190712.tar".
    
    This commit fixes the issue by adding support for this situation.
    I left the support for $tool/common/create-version.sh, because
    the sim still uses that directory structure.
    
    ChangeLog:
    
            * src-release (getver): If $tool/gdbsupport/create-version.sh
            exists, use that to determine the version number.

commit a48654b6d4ed558d632dca3d895e8ad2f0dd57a6
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Sun Jul 14 00:00:54 2019 +0000

    Automatic date update in version.in

commit f26a32876ba49b2d5537beccea2a38bc544e9732
Author: Alan Modra <amodra@gmail.com>
Date:   Thu Jul 11 22:08:39 2019 +0930

    Dynamic TLS section symbols
    
    It is possible to create shared libraries on PowerPC using
    -ftls-model=inital-exec or -ftls-model=local-exec.  The first is half
    reasonable, getting you a shared library that can't be dlopen'd but
    otherwise is reasonable.  The second is quite bad.  Not only do you
    lose being able to dlopen, the library also has dynamic text
    relocations.  Worse, the TPREL16_LO, TPREL16_HA and other TPREL16
    dynamic relocs emitted were wrong, resulting in wrong values being
    applied by ld.so.
    
    Using the first TLS section symbol in dynamic relocations for local
    TLS symbols doesn't work.  It's wrong because TLS symbols used by TLS
    relocs have values relative to the TLS segment, whereas the TLS
    section symbols are addresses.  This patch instead uses a symbol index
    of zero which is used elsewhere by PowerPC on dynamic TLS relocs.
    It's not strictly ABI compliant to use a non-TLS symbol with TLS
    relocs but symbol index zero can be interpreted as "no symbol".  Not
    using the first TLS section symbol means it doesn't need to be dynamic.
    
    The patch also fixes a further problem with PowerPC32 dynamic TPREL16*
    relocs, which shouldn't have the symbol value in the addend as we do
    for non-TLS symbols.
    
    bfd/
    	* elflink.c (_bfd_elf_omit_section_dynsym_default): Don't keep
    	tls_sec.
    	(_bfd_elf_init_1_index_section): Prefer not using TLS sections.
    	(_bfd_elf_init_2_index_sections): Likewise.
    	* elf64-ppc.c (ppc64_elf_relocate_section): When emitting dynamic
    	relocations for local TLS symbols, use STN_UNDEF as the relocation
    	symbol.
    	* elf32-ppc.c (ppc_elf_relocate_section): Likewise, and don't
    	leave TLS symbol value in the addend.
    ld/
    	* testsuite/ld-powerpc/tlsso.r: Update.
    	* testsuite/ld-powerpc/tlsso32.g: Update.
    	* testsuite/ld-powerpc/tlsso32.r: Update.
    	* testsuite/ld-powerpc/tlstocso.r: Update.
    	* testsuite/ld-cris/tls-dso-dtpoffd2.d: Update.
    	* testsuite/ld-cris/tls-dso-dtpoffd4.d: Update.
    	* testsuite/ld-cris/tls-dso-tpoffgotcomm1.d: Update.
    	* testsuite/ld-cris/tls-gd-1.d: Update.
    	* testsuite/ld-cris/tls-gd-1h.d: Update.
    	* testsuite/ld-cris/tls-gd-2.d: Update.
    	* testsuite/ld-cris/tls-gd-2h.d: Update.
    	* testsuite/ld-cris/tls-ie-10.d: Update.
    	* testsuite/ld-cris/tls-ie-11.d: Update.
    	* testsuite/ld-cris/tls-ie-8.d: Update.
    	* testsuite/ld-cris/tls-ie-9.d: Update.
    	* testsuite/ld-cris/tls-js1.d: Update.
    	* testsuite/ld-cris/tls-ld-4.d: Update.
    	* testsuite/ld-cris/tls-ld-5.d: Update.
    	* testsuite/ld-cris/tls-ld-6.d: Update.
    	* testsuite/ld-cris/tls-ld-7.d: Update.
    	* testsuite/ld-cris/tls-ldgd-14.d: Update.
    	* testsuite/ld-cris/tls-ldgd-15.d: Update.
    	* testsuite/ld-cris/tls-ldgdx-14.d: Update.
    	* testsuite/ld-cris/tls-ldgdx-15.d: Update.
    	* testsuite/ld-cris/tls-local-54.d: Update.
    	* testsuite/ld-cris/tls-local-60.d: Update.
    	* testsuite/ld-cris/tls-local-61.d: Update.
    	* testsuite/ld-cris/tls-local-63.d: Update.
    	* testsuite/ld-cris/tls-local-64.d: Update.
    	* testsuite/ld-cris/tls-ok-30.d: Update.
    	* testsuite/ld-cris/tls-ok-32.d: Update.
    	* testsuite/ld-cris/tls-ok-34.d: Update.
    	* testsuite/ld-mips-elf/tls-multi-got-1.got: Update.
    	* testsuite/ld-mips-elf/tls-multi-got-1.r: Update.
    	* testsuite/ld-mips-elf/tlsdyn-pie-o32.d: Update.
    	* testsuite/ld-mips-elf/tlsdyn-pie-o32.got: Update.
    	* testsuite/ld-mips-elf/tlslib-o32-hidden.got: Update.
    	* testsuite/ld-mips-elf/tlslib-o32-ver.got: Update.
    	* testsuite/ld-mips-elf/tlslib-o32.got: Update.
    	* testsuite/ld-s390/tlspic.rd: Update.
    	* testsuite/ld-s390/tlspic_64.rd: Update.
    	* testsuite/ld-sparc/tlssunnopic32.rd: Update.
    	* testsuite/ld-sparc/tlssunnopic64.rd: Update.
    	* testsuite/ld-sparc/tlssunpic32.rd: Update.
    	* testsuite/ld-sparc/tlssunpic64.rd: Update.

commit 7b2438015ca87297b2796c662182f796bb5358c2
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Jul 10 23:35:18 2019 +0930

    PR24786, wrong LMA if first section in overlay is empty
    
    This stops the first overlay section being ignored when empty,
    losing its LMA assignment
    
    	PR 24786
    	* ldlang.h (enum section_type): Add first_overlay_section.
    	* ldlang.c (lang_add_section): Adjust switch statement.
    	(map_input_to_output_sections): Likewise.
    	(lang_size_sections_1): Always set last_os for first overlay section.
    	(lang_leave_overlay): Set sectype to first_overlay_section.

commit 0c951c25c6c7cfbf0f399d34277f73b0fdfc18cd
Author: Alan Modra <amodra@gmail.com>
Date:   Thu Jun 27 09:35:15 2019 +0930

    [GOLD] PowerPC R_PPC64_PCREL_OPT support
    
    	* powerpc.cc (xlate_pcrel_opt): New function.
    	(Target_powerpc::Relocate::relocate): Optimise PCREL34 and
    	GOT_PCREL34 sequences marked with PCREL_OPT.

commit c9b8abb7af46c9da4b50ad8495ab2824c4125962
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Jun 26 22:08:54 2019 +0930

    [GOLD] PowerPC got reloc optimisation
    
    Note that gold won't remove unused GOT entries, in contrast to ld.bfd
    which will.
    
    	* powerpc.cc (Powerpc_relobj::make_got_relative): New function.
    	(relative_value_is_known): New functions.
    	(Target_powerpc::Relocate::relocate): Edit code using
    	GOT16_HA, GOT16_LO_DS, and GOT_PCREL34 relocs.

commit e4dff7651becba48d805e39655138f7f6ca30485
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Jun 3 11:48:43 2019 +0930

    [GOLD] PowerPC relocations for prefix insns
    
    Also use pc-relative instructions for notoc stubs.
    
    elfcpp/
    	* powerpc.h (R_PPC64_PCREL_OPT, R_PPC64_D34, R_PPC64_D34_LO),
    	(R_PPC64_D34_HI30, R_PPC64_D34_HA30, R_PPC64_PCREL34),
    	(R_PPC64_GOT_PCREL34, R_PPC64_PLT_PCREL34, R_PPC64_PLT_PCREL34_NOTOC),
    	(R_PPC64_ADDR16_HIGHER34, R_PPC64_ADDR16_HIGHERA34),
    	(R_PPC64_ADDR16_HIGHEST34, R_PPC64_ADDR16_HIGHESTA34),
    	(R_PPC64_REL16_HIGHER34, R_PPC64_REL16_HIGHERA34),
    	(R_PPC64_REL16_HIGHEST34, R_PPC64_REL16_HIGHESTA34),
    	(R_PPC64_D28, R_PPC64_PCREL28): Define.
    gold/
    	* powerpc.cc (Target_powerpc): Add powerxx_stubs_ and accessor
    	functions.
    	(Target_powerpc::maybe_skip_tls_get_addr_call): Handle PLT_PCREL34
    	and PLT_PCREL34_NOTOC relocs.
    	(Powerpc_relocate_functions): Add addr34, addr34_hi, addr34_ha,
    	addr28, addr16_higher34, addr16_highera34, addr16_highest34,
    	addr16_highest34a functions.
    	(li_11_0, ori_11_11_0, sldi_11_11_34): Define.
    	(paddi_12_pc, pld_12_pc, pnop): Define.
    	(d34, ha34): New inline functions.
    	(Stub_table::add_plt_call_entry): Handle powerxx_stubs.
    	(Stub_table::add_eh_frame): Likewise.
    	(build_powerxx_offset): New function.
    	(Stub_table::plt_call_size): Handle powerxx_stubs.
    	(Stub_table::branch_stub_size): Likewise.
    	(Stub_table::do_write): Likewise.
    	(Target_powerpc::Scan::get_reference_flags): Handle new relocs.
    	(Target_powerpc::Scan::reloc_needs_plt_for_ifunc: Likewise.
    	(Target_powerpc::Scan::local, global, relocate): Likewise.

commit 220f99066d6ce2a6caf17692fcc57d714d8f6910
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Jul 1 14:37:49 2019 +0930

    [GOLD] PowerPC notoc eh_frame
    
    When generating notoc call and branch stubs without the benefit of
    pc-relative insns, the stubs need to use LR to access the run time PC.
    All LR changes must be described in .eh_frame if we're to support
    unwinding through asynchronous exceptions.  That's what this patch
    does.
    
    The patch has gone through way too many iterations.  At first I
    attempted to add multiple FDEs, one for each stub.  That ran into
    difficulties with do_plt_fde_location which is only capable of setting
    the address of a single FDE per Output_data section, and with removing
    any FDEs added on a previous do_relax pass.  Removing FDEs (git commit
    be897fb774) went overboard in matching the FDE contents.  That means
    either stashing the contents created for add_eh_frame_for_plt to use
    when calling remove_eh_frame_for_plt, or recreating contents on the
    fly (*) just to remove FDEs.  In fact, FDE content matching is quite
    unnecesary.  FDEs added by a previous do_relax pass are those with
    u_.from_linker.post_map set.  So they can easily be recognised just by
    looking at that flag.  This patch keeps that part of the multiple FDE
    changes.
    
    In the end I went for just one FDE per stub group to describe the call
    stubs.  That's reasonably efficient for the common case of only
    needing to describe the __tls_get_addr_opt call stub.  We don't expect
    to be making many calls using notoc stubs without pc-relative insns.
    
    *) Which has it's own set of problems.  The contents must be recreated
    using the old stub layout, but .eh_frame size can affect stub
    requirements so you need to temporarily keep the old .eh_frame size
    when creating new stubs, then reset .eh_frame size before adding new
    FDEs.
    
    	* ehframe.cc (Fde::operator==): Delete.
    	(Cie::remove_fde): Delete.
    	(Eh_frame::remove_ehframe_for_plt): Delete fde_data and fde_length
    	parameters.  Remove all post-map plt FDEs.
    	* ehframe.h (Fde:post_map): Make const, add variant to compare plt.
    	(Fde::operator==): Delete.
    	(Cie::remove_fde): Implement here.
    	(Cie::last_fde): New accessor.
    	(Eh_frame::remove_ehframe_for_plt): Update prototype.
    	* layout.cc (Layout::remove_eh_frame_for_plt): Delete fde_data and
    	fde_length parameters.
    	* layout.h (Layout::remove_eh_frame_for_plt): Update prototype.
    	* powerpc.cc (Stub_table::tls_get_addr_opt_bctrl_): Delete.
    	(Stub_table::plt_fde_len_, plt_fde_, init_plt_fde): Delete.
    	(Stub_table::add_plt_call_entry): Don't set tls_get_addr_opt_bctrl_.
    	(eh_advance): New function.
    	(stub_sort): New function.
    	(Stub_table::add_eh_frame): Emit eh_frame for notoc plt calls and
    	branches as well as __tls_get_addr_opt plt call stub.
    	(Stub_table::remove_eh_frame): Update to suit.

commit 32f598441988e5a086ba8580e82f4944c3692eb5
Author: Alan Modra <amodra@gmail.com>
Date:   Tue Jun 18 15:33:38 2019 +0930

    [GOLD] PowerPC64 ELFv2 notoc support
    
    Calls from notoc functions via the PLT need different stubs.  Even
    calls to local functions requiring a valid toc pointer must go via a
    stub.  This patch provides the support in gold.
    
    elfcpp/
    	* powerpc.h (R_PPC64_PLTSEQ_NOTOC, R_PPC64_PLTCALL_NOTOC): Define.
    gold/
    	* powerpc.cc (Target_powerpc::maybe_skip_tls_get_addr_call): Handle
    	notoc calls.
    	(is_branch_reloc): Template on size.  Return true for REL24_NOTOC.
    	Update all callers.
    	(max_branch_delta): Likewise.
    	(Target_powerpc::Branch_info::make_stub): Add a stub for notoc
    	calls to functions needing a valid toc pointer.
    	(Target_powerpc::do_relax): Layout stubs again if any need resize.
    	(add_12_11_12, addi_12_11, addis_12_11, ldx_12_11_12, ori_12_12_0),
    	(oris_12_12_0, sldi_12_12_32): Define.
    	(Stub_table::Plt_stub_ent): Add notoc_ and iter_ fields.
    	(Stub_table::Branch_stub_key, Branch_stub_key_hash): Rename from
    	Branch_stub_ent and Branch_stub_ent hash.  Remove save_res_ from key.
    	(Stub_table::Branch_stub_ent): New struct.
    	(class Stub_table): Add need_resize and resizing vars.
    	(Stub_table::need_resize, branch_size): New accessors.
    	(Stub_table::set_resizing): New function.
    	(Stub_table::add_plt_call_entry): Handle notoc calls and resizing
    	on seeing such or a tocsave stubs after a normal stub using the
    	same sym.
    	(Stub_table::add_long_branch_entry): Similarly.
    	(Stub_table::find_long_branch_entry): Return a Branch_stub_ent*.
    	(Stub_table::define_stub_syms): Adjust
    	(Stub_table::build_tls_opt_head, build_tls_opt_tail): New functions.
    	(build_notoc_offset): New function.
    	(Stub_table::plt_call_size): Move out of line.  Handle notoc calls.
    	(Stub_table::branch_stub_size): Similarly.
    	(Stub_table::do_write): Separate loop for ELFv2 stubs, handling
    	notoc calls.  Simplify ELFv1 loop.  Output notoc branch stubs.
    	Use build_tls_opt_head and build_tls_opt_tail.
    	(Target_powerpc::Scan::get_reference_flags): Handle REL24_NOTOC.
    	(Target_powerpc::Scan::reloc_needs_plt_for_ifunc): Likewise,
    	and PLTSEQ_NOTOC and PLTCALL_NOTOC.
    	(Target_powerpc::Scan::local, global, relocate): Likewise.

commit 154a0a90ddde3a5d538830527ffd6d128cb23b1b
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Sat Jul 13 00:00:14 2019 +0000

    Automatic date update in version.in

commit 0d4e84ed37c404eb7e691ee9d68ae2ec758d8f66
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Fri Mar 1 11:06:23 2019 +0000

    gdb: Better support for dynamic properties with negative values
    
    When the type of a property is smaller than the CORE_ADDR in which the
    property value has been placed, and if the property is signed, then
    sign extend the property value from its actual type up to the size of
    CORE_ADDR.
    
    gdb/ChangeLog:
    
    	* dwarf2loc.c (dwarf2_evaluate_property): Sign extend property
    	value if its desired type is smaller than a CORE_ADDR and signed.
    
    gdb/testsuite/ChangeLog:
    
    	* gdb.fortran/vla-ptype.exp: Print array with negative bounds.
    	* gdb.fortran/vla-sizeof.exp: Print the size of an array with
    	negative bounds.
    	* gdb.fortran/vla-value.exp: Print elements of an array with
    	negative bounds.
    	* gdb.fortran/vla.f90: Setup an array with negative bounds for
    	testing.

commit 9a49df9d4bfc7ff03fed751e12b1bc32fbee4fb2
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Wed May 8 13:16:03 2019 +0100

    gdb: Carry default property type around with dynamic properties
    
    This commit is preparation for the next one, with the aim of better
    supporting signed dynamic properties on targets where the address size
    specified in the DWARF headers is smaller than a CORE_ADDR, for
    example debugging an i386 application on x86-64.
    
    Consider this small Fortran program 'bounds.f90':
    
        program test
          integer, allocatable :: array (:)
          allocate (array (-5:5))
          array(3) = 1
        end program test
    
    Compiled with 'gfortran -m32 -g3 -O0 -o bounds bounds.f90'.  The DWARF
    for 'array' looks like this:
    
       <2><97>: Abbrev Number: 10 (DW_TAG_variable)
          <98>   DW_AT_name        : (indirect string, offset: 0x0): array
          <9c>   DW_AT_decl_file   : 1
          <9d>   DW_AT_decl_line   : 2
          <9e>   DW_AT_type        : <0xaf>
          <a2>   DW_AT_location    : 2 byte block: 91 58              (DW_OP_fbreg: -40)
       <2><a5>: Abbrev Number: 11 (DW_TAG_lexical_block)
          <a6>   DW_AT_low_pc      : 0x80485c3
          <aa>   DW_AT_high_pc     : 0x8b
       <2><ae>: Abbrev Number: 0
       <1><af>: Abbrev Number: 12 (DW_TAG_array_type)
          <b0>   DW_AT_data_location: 2 byte block: 97 6              (DW_OP_push_object_address; DW_OP_deref)
          <b3>   DW_AT_allocated   : 4 byte block: 97 6 30 2e         (DW_OP_push_object_address; DW_OP_deref; DW_OP_lit0; DW_OP_ne)
          <b8>   DW_AT_type        : <0x2a>
       <2><bc>: Abbrev Number: 13 (DW_TAG_subrange_type)
          <bd>   DW_AT_lower_bound : 4 byte block: 97 23 10 6         (DW_OP_push_object_address; DW_OP_plus_uconst: 16; DW_OP_deref)
          <c2>   DW_AT_upper_bound : 4 byte block: 97 23 14 6         (DW_OP_push_object_address; DW_OP_plus_uconst: 20; DW_OP_deref)
          <c7>   DW_AT_byte_stride : 6 byte block: 97 23 c 6 34 1e    (DW_OP_push_object_address; DW_OP_plus_uconst: 12; DW_OP_deref; DW_OP_lit4; DW_OP_mul)
       <2><ce>: Abbrev Number: 0
    
    If we look at the DW_AT_lower_bound attribute, which will become a
    dynamic property that GDB evaluates when needed by calling
    dwarf2_evaluate_property.
    
    The process of evaluating a dynamic property requires GDB to execute
    each DW_OP_* operation, the results of these operations is held on a
    stack of 'struct value *'s.
    
    When the entire expression is evaluated the result is on top of the
    stack.
    
    If we look at DW_AT_lower_bound then the last operation is
    DW_OP_deref, this loads a signed address the size of which matches the
    DWARF address size, and so in our i386 on x86-64 situation, the top of
    the stack will be a signed 4-byte value.
    
    The problem is how these values are fetched from the stack.  Currently
    they are always fetched by a call to dwarf_expr_context::fetch_address,
    which converts the value to an unsigned value with a length matching
    the values current length, before converting to a CORE_ADDR.  This
    means we loose the signed nature of the property.
    
    I wonder if the best solution for dealing with signed properties will
    be to move away from an over reliance on fetch_address, and instead
    come up with a new solution that considers the current type of the
    value on the stack, and the type that the value needs to become;
    basically a solution built around casting rather than assuming we
    always want an address.
    
    However, before we can start to even think about moving away from
    fetch_address, there is a more urgent issue to fix, which is we don't
    currently know what type each property should be.  We just hold the
    value of the property in a CORE_ADDR as returned by fetch_address, and
    rely on higher level code (outside of the DWARF expression evaluation
    code) to fix things up for us.  This is what this patch aims to
    address.
    
    When creating a dynamic property (see attr_to_dynamic_prop in
    dwarf2read.c) we can sometimes figure out the type of a property; if
    the property is a reference to another DIE then it will have a
    DW_AT_type attribute.
    
    However, the DW_AT_lower_bound case above isn't a reference to another
    DIE, it's just a DWARF expression.  We don't have any indication for
    what type the property should have.
    
    Luckily, the DWARF spec helps us out, for the lower and upper bounds
    5.13 of the DWARFv5 spec tells us that without any other type
    information the bounds are signed integers the same size as a DWARF
    address.
    
    It is my belief that we can find a suitable default type for every
    dynamic property, either specified explicitly in the DWARF spec, or we
    can infer an obvious choice if the spec doesn't help us.
    
    This commit extends the creation of all dynamic properties to include
    suggesting a suitable default type, all dynamic properties now always
    carry their type around with them.
    
    In later commits we can use this property type to ensure that the
    value we extract from the DWARF stack is handled in a suitable manor
    to correctly maintain its sign extension.
    
    There should be no user visible changes from this commit.  The actual
    fix to correctly support negative array bounds will come later.
    
    gdb/ChangeLog:
    
    	* dwarf2loc.c (dwarf2_evaluate_property): Update to take account
    	of changes to field names, and use new is_reference field to
    	decide if a property is a reference or not.
    	* dwarf2loc.h (struct dwarf2_locexpr_baton): Add 'is_reference'
    	field.
    	(struct dwarf2_property_baton): Update header comment, rename
    	'referenced_type' to 'property_type' and update comments.
    	* dwarf2read.c (attr_to_dynamic_prop): Add extra parameter to hold
    	default property type, store in property baton, update to take
    	accound of renamed field.
    	(read_func_scope): Update call to attr_to_dynamic_prop.
    	(read_array_type): Likewise.
    	(dwarf2_per_cu_addr_sized_int_type): New function.
    	(read_subrange_index_type): Move type finding code to
    	dwarf2_per_cu_addr_sized_int_type.
    	(read_subrange_type): Update calls to attr_to_dynamic_prop.
    	(dwarf2_per_cu_addr_type): New function.
    	(set_die_type): Update calls to attr_to_dynamic_prop.

commit b86352cfc17fb7f07d5da9efcfd59f8b2bd08eee
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Wed May 8 00:01:14 2019 +0100

    gdb/dwarf: Ensure the target type of ranges is not void
    
    If a DW_TAG_subrange_type DWARF entry has no DW_AT_type then a default
    type based on the size of an address on the current target is assumed.
    We store this type as the target type for GDB's range types.
    
    Currently GDB can create ranges for which the target type is VOID,
    this is incorrect but seems to cause no problems. I believe the reason
    this doesn't cause any issues is because the languages (for example
    Ada) that actually make use of a ranges target type also have
    compilers that generate DWARF that includes a DW_AT_type attribute.
    
    However, gfortran does not include a DW_AT_type, its DWARF instead
    relies on the default target type.  This isn't currently a problem for
    GDB as gfortran doesn't make use of the target type when printing
    subranges, but it shouldn't hurt to fix this issue now.
    
    I've added an assert into create_range_type that will catch this issue
    if it comes up again.
    
    This was tested on an x86-64/GNU-Linux machine with both the Ada and
    gfortran compilers available with both '--target_board=unix' and
    '--target_board=unix/-m32'.  There are no user visible changes after
    this commit.
    
    gdb/ChangeLog:
    
    	* dwarf2read.c (read_subrange_index_type): New function.
    	(read_subrange_type): Move code into new function and call it.
    	* gdbtypes.c (create_range_type): Add some asserts.

commit 603490bf53fe1885ef45f9d0fb783b32f8ef6049
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Sun May 5 00:15:07 2019 +0100

    gdb: Convert dwarf2_evaluate_property to return bool
    
    Convert dwarf2_evaluate_property to return a bool, there should be no
    user visible change after this commit.
    
    gdb/ChangeLog:
    
    	* dwarf2loc.c (dwarf2_evaluate_property): Change return type, and
    	update return statements.
    	* dwarf2loc.h (dwarf2_evaluate_property): Update return type on
    	declaration, and update comment to match.
    	* gdbtypes.c (resolve_dynamic_array): Update call to
    	dwarf2_evaluate_property to match new return type.

commit 592f9d271caaa22a6b299cfaaf6ce3394796e0e2
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Wed Apr 24 17:50:40 2019 +0100

    gdb: Update type of lower bound in value_subscripted_rvalue
    
    The dynamic lower (and upper) bounds of ranges are stored as type
    LONGEST (see union dynamic_prop_data in gdbtypes.h).  In most places
    that range bounds are handled they are held in a LONGEST, however in
    value_subscripted_rvalue the bound is placed into an int.
    
    This commit changes value_subscripted_rvalue to use LONGEST, there
    should be no user visible changes after this commit.
    
    gdb/ChangeLog:
    
    	* valarith.c (value_subscripted_rvalue): Change lowerbound
    	parameter type from int to LONGEST.
    	* value.h (value_subscripted_rvalue): Likewise in declaration.

commit 830b67068cebe7db0eb0db3fa19244e03859fae0
Author: Tom de Vries <tdevries@suse.de>
Date:   Fri Jul 12 09:53:02 2019 +0200

    [readline] Fix heap-buffer-overflow in update_line
    
    When:
    - building trunk gdb with '-fsanitize=address -lasan',
    - running gdb tests with "export ASAN_OPTIONS=detect_leaks=0",
    I run into a heap-buffer-overflow failure for
    gdb.base/utf8-identifiers.exp.
    
    In more detail, the libasan error report looks like this:
    ...
    =================================================================
    ==22340==ERROR: AddressSanitizer: heap-buffer-overflow on address
    0x619000054a80 at pc 0x7fcd0306b4c9 bp 0x7fffb1a8d880 sp 0x7fffb1a8d030
    READ of size 32766 at 0x619000054a80 thread T0
        #0 0x7fcd0306b4c8  (/usr/lib64/libasan.so.4+0xae4c8)
        #1 0x15f12a1 in update_line
    /data/gdb_versions/devel/src/readline/display.c:1377
        #2 0x15f03cb in rl_redisplay
    /data/gdb_versions/devel/src/readline/display.c:1204
        #3 0x15bf932 in readline_internal_setup
    /data/gdb_versions/devel/src/readline/readline.c:394
        #4 0x15fe723 in _rl_callback_newline
    /data/gdb_versions/devel/src/readline/callback.c:89
        #5 0x15fe7ef in rl_callback_handler_install
    /data/gdb_versions/devel/src/readline/callback.c:102
        #6 0xd7bce6 in gdb_rl_callback_handler_install(char const*)
    /data/gdb_versions/devel/src/gdb/event-top.c:319
        #7 0xd7c0c6 in display_gdb_prompt(char const*)
    /data/gdb_versions/devel/src/gdb/event-top.c:409
        #8 0xd7d6c1 in command_line_handler(std::unique_ptr<char,
    gdb::xfree_deleter<char> >&&)
    /data/gdb_versions/devel/src/gdb/event-top.c:776
        #9 0xd7b92a in gdb_rl_callback_handler
    /data/gdb_versions/devel/src/gdb/event-top.c:217
        #10 0x15ff479 in rl_callback_read_char
    /data/gdb_versions/devel/src/readline/callback.c:220
        #11 0xd7b4d5 in gdb_rl_callback_read_char_wrapper_noexcept
    /data/gdb_versions/devel/src/gdb/event-top.c:175
        #12 0xd7b6b5 in gdb_rl_callback_read_char_wrapper
    /data/gdb_versions/devel/src/gdb/event-top.c:192
        #13 0xd7c8aa in stdin_event_handler(int, void*)
    /data/gdb_versions/devel/src/gdb/event-top.c:514
        #14 0xd76ca7 in handle_file_event
    /data/gdb_versions/devel/src/gdb/event-loop.c:731
        #15 0xd7751f in gdb_wait_for_event
    /data/gdb_versions/devel/src/gdb/event-loop.c:857
        #16 0xd7547e in gdb_do_one_event()
    /data/gdb_versions/devel/src/gdb/event-loop.c:321
        #17 0xd75526 in start_event_loop()
    /data/gdb_versions/devel/src/gdb/event-loop.c:370
        #18 0x101b04c in captured_command_loop
    /data/gdb_versions/devel/src/gdb/main.c:331
        #19 0x101de73 in captured_main
    /data/gdb_versions/devel/src/gdb/main.c:1173
        #20 0x101df03 in gdb_main(captured_main_args*)
    /data/gdb_versions/devel/src/gdb/main.c:1188
        #21 0x872dba in main /data/gdb_versions/devel/src/gdb/gdb.c:32
        #22 0x7fcd00f2ff49 in __libc_start_main (/lib64/libc.so.6+0x20f49)
        #23 0x872bc9 in _start (/data/gdb_versions/devel/build/gdb/gdb+0x872bc9)
    
    0x619000054a80 is located 0 bytes to the right of 1024-byte region
    [0x619000054680,0x619000054a80)
    allocated by thread T0 here:
        #0 0x7fcd03099510 in malloc (/usr/lib64/libasan.so.4+0xdc510)
        #1 0xae0078 in xmalloc
    /data/gdb_versions/devel/src/gdb/common/common-utils.c:44
        #2 0x15eaccb in init_line_structures
    /data/gdb_versions/devel/src/readline/display.c:458
        #3 0x15eb4d8 in rl_redisplay
    /data/gdb_versions/devel/src/readline/display.c:526
        #4 0x15bf932 in readline_internal_setup
    /data/gdb_versions/devel/src/readline/readline.c:394
        #5 0x15fe723 in _rl_callback_newline
    /data/gdb_versions/devel/src/readline/callback.c:89
        #6 0x15fe7ef in rl_callback_handler_install
    /data/gdb_versions/devel/src/readline/callback.c:102
        #7 0xd7bce6 in gdb_rl_callback_handler_install(char const*)
    /data/gdb_versions/devel/src/gdb/event-top.c:319
        #8 0xd7c0c6 in display_gdb_prompt(char const*)
    /data/gdb_versions/devel/src/gdb/event-top.c:409
        #9 0xaa041b in cli_interp_base::pre_command_loop()
    /data/gdb_versions/devel/src/gdb/cli/cli-interp.c:286
        #10 0xf5342a in interp_pre_command_loop(interp*)
    /data/gdb_versions/devel/src/gdb/interps.c:320
        #11 0x101b047 in captured_command_loop
    /data/gdb_versions/devel/src/gdb/main.c:328
        #12 0x101de73 in captured_main
    /data/gdb_versions/devel/src/gdb/main.c:1173
        #13 0x101df03 in gdb_main(captured_main_args*)
    /data/gdb_versions/devel/src/gdb/main.c:1188
        #14 0x872dba in main /data/gdb_versions/devel/src/gdb/gdb.c:32
        #15 0x7fcd00f2ff49 in __libc_start_main (/lib64/libc.so.6+0x20f49)
    
    SUMMARY: AddressSanitizer: heap-buffer-overflow
    (/usr/lib64/libasan.so.4+0xae4c8)
    Shadow bytes around the buggy address:
      0x0c3280002900: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
      0x0c3280002910: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
      0x0c3280002920: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
      0x0c3280002930: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
      0x0c3280002940: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    =>0x0c3280002950:[fa]fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
      0x0c3280002960: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
      0x0c3280002970: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
      0x0c3280002980: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
      0x0c3280002990: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
      0x0c32800029a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    Shadow byte legend (one shadow byte represents 8 application bytes):
      Addressable:           00
      Partially addressable: 01 02 03 04 05 06 07
      Heap left redzone:       fa
      Freed heap region:       fd
      Stack left redzone:      f1
      Stack mid redzone:       f2
      Stack right redzone:     f3
      Stack after return:      f5
      Stack use after scope:   f8
      Global redzone:          f9
      Global init order:       f6
      Poisoned by user:        f7
      Container overflow:      fc
      Array cookie:            ac
      Intra object redzone:    bb
      ASan internal:           fe
      Left alloca redzone:     ca
      Right alloca redzone:    cb
    ==22340==ABORTING
    ...
    
    I've written an assert in rl_redisplay that formulates the error condition:
    ...
    @@ -1387,6 +1389,10 @@ rl_redisplay (void)
              cpos_adjusted = 0;
    +         assert (last_lmargin + (_rl_screenwidth + visible_wrap_offset)
    +                 <= line_size);
    +         assert (lmargin + (_rl_screenwidth + (lmargin ? 0 : wrap_offset))
    +                 <= line_size);
              update_line (&visible_line[last_lmargin],
                           &invisible_line[lmargin],
                           0,
                           _rl_screenwidth + visible_wrap_offset,
                           _rl_screenwidth + (lmargin ? 0 : wrap_offset),
                           0);
    ...
    which triggers without needing the address sanitizer (or even an executable),
    like this:
    ...
    $ TERM=dumb gdb -q -ex "set width 0"
    gdb: src/display.c:1393: rl_redisplay: Assertion
    `last_lmargin + (_rl_screenwidth + visible_wrap_offset) <= line_size'
    failed.
    Aborted (core dumped)
    ...
    
    The basic problem is this: visible_line and invisible_line have length
    line_size, but the update_line call assumes that line_size is at least
    _rl_screenwidth + 1.  Executing "set width 0" sets _rl_screenwidth to 32766 but
    doesn't affect line_size, which is initialized to 1024.
    
    Fix this by ensuring in init_line_structures and rl_redisplay that line_size
    is at least _rl_screenwidth + 1.
    
    Tested on x86_64-linux.
    
    Reviewed by readline maintainer (
    https://sourceware.org/ml/gdb-patches/2019-05/msg00566.html ).
    
    readline/ChangeLog.gdb:
    
    2019-07-12  Tom de Vries  <tdevries@suse.de>
    	    Chet Ramey  <chet.ramey@case.edu>
    
    	PR cli/24514
    	* readline/display.c (init_line_structures, rl_redisplay): Ensure
    	line_size is at	least _rl_screenwidth + 1.

commit a89fdbdb201764e3989e9113e03a769091d42cce
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Fri Jul 12 00:00:19 2019 +0000

    Automatic date update in version.in

commit 60cfcb20ce8f95a6f71f68c51b295defa5d27032
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Thu Jul 11 15:39:55 2019 +0100

    gdb: Add command completers for some info commands
    
    Add command completion for info variables, functions, args, and
    locals.  This completer only completes the command line options as
    these commands all take a regexp which GDB can't really offer
    completions for.
    
    gdb/ChangeLog:
    
    	* cli/cli-utils.c (info_print_command_completer): New function.
    	* cli/cli-utils.h: Add 'completer.h' include, and forward
    	declaration for 'struct cmd_list_element'.
    	(info_print_command_completer): Declare.
    	* stack.c (_initialize_stack): Add completer for 'info locals' and
    	'info args'.
    	* symtab.c (_initialize_symtab): Add completer for 'info
    	variables' and 'info functions'.
    	* NEWS: Mention completion for additional info commands.

commit b16507e0917169555f8bbfcb1d6c9685813ccf6c
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Wed Jul 10 22:52:38 2019 +0100

    gdb: Make use of gdb::option framework for some info commands
    
    Update the 'info variables', 'info functions', 'info locals', and
    'info args' commands to make use of the gdb::options framework.
    
    There should be no user visible changes after this commit as I have
    left the help text generation using the existing mechanism, which
    already tries to customise the text for each of the commands.
    
    gdb/ChangeLog:
    
    	* cli/cli-utils.c (extract_info_print_args): Delete.
    	(extract_arg_maybe_quoted): Delete.
    	(info_print_options_defs): New variable.
    	(make_info_print_options_def_group): New function.
    	(extract_info_print_options): Define new function.
    	* cli/cli-utils.h (extract_info_print_args): Delete.
    	(struct info_print_options): New structure.
    	(extract_info_print_options): Declare new function.
    	* stack.c (info_locals_command): Update to use new
    	extract_info_print_options, also add a header comment.
    	(info_args_command): Likewise.
    	* symtab.c (info_variables_command): Likewise.
    	(info_functions_command): Likewise.

commit 021d8588f6ca843a2aada955d00851fbb62f8a62
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Thu Jul 11 11:08:42 2019 +0100

    gdb: Allow quoting around string options in the gdb::option framework
    
    Currently string options must be a single string with no whitespace,
    this limitation prevents the gdb::option framework being used in some
    places.
    
    After this commit, string options can be quoted in single or double
    quotes, and quote characters can be escaped with a backslash if needed
    to either place them within quotes, or to avoid starting a quoted
    argument.
    
    This test adds a new function extract_string_maybe_quoted which is
    basically a copy of extract_arg_maybe_quoted from cli/cli-utils.c,
    however, the cli-utils.c function will be deleted in the next commit.
    
    There are tests to exercise the new quoting mechanism.
    
    gdb/ChangeLog:
    
    	* cli/cli-option.c (parse_option): Use extract_string_maybe_quoted
    	to extract string arguments.
    	* common/common-utils.c (extract_string_maybe_quoted): New function.
    	* common/common-utils.h (extract_string_maybe_quoted): Declare.
    
    gdb/testsuite/ChangeLog:
    
    	* gdb.base/options.exp (expect_string): Dequote strings in
    	results.
    	(test-string): Test strings with different quoting and reindent.

commit b777eb6de24ae1a1dc2f1e48d593b0a5c79937a9
Author: Tom Tromey <tromey@adacore.com>
Date:   Thu Jul 11 08:54:17 2019 -0600

    Remove init_cli_cmds
    
    I noticed that init_cli_cmds only installs a command, and so doesn't
    need to be handled specially.  This patch merges it into
    _initialize_cli_cmds.
    
    The help text is constructed dynamically, which is sometimes an
    indication that special treatment is needed; but in this case it is
    just to insert the value of "gdbinit", which is created at
    compile-time and not modified; so this doesn't affect the result.
    
    This version also removes the "gdbinit" global.  There's no need for
    it, as GDBINIT can be used instead.  Note, though, that the help text
    in question must still be dynamically constructed, in order to be
    i18n-friendly.
    
    gdb/ChangeLog
    2019-07-11  Tom Tromey  <tromey@adacore.com>
    
    	* main.c (get_init_files): Use GDBINIT, not gdbinit.
    	* auto-load.c (file_is_auto_load_safe): Use GDBINIT, not gdbinit.
    	* top.h (gdbinit): Don't declare.
    	* cli/cli-cmds.c (init_cli_cmds): Remove, merging contents
    	into...
    	(_initialize_cli_cmds): ...here.  Use GDBINIT, not gdbinit.
    	* top.c (gdb_init): Don't call init_cli_cmds.
    	(gdbinit): Remove.
    	* cli/cli-cmds.h (init_cli_cmds): Don't declare.

commit 72ee03ff58d954dbed886b672032c8c9db0a0dcc
Author: Tom Tromey <tromey@adacore.com>
Date:   Thu Jul 11 09:09:52 2019 -0600

    Fix use-after-move bug in add_thread_object
    
    commit 05b08ac1608 ("Reduce manual reference counting in
    py-inferior.c") introduced a use-after-move bug in add_thread_object,
    causing a test suite failure.  This patch fixes the bug.
    
    Tested on x86-64 Fedora 29.
    
    gdb/ChangeLog
    2019-07-11  Tom Tromey  <tromey@adacore.com>
    
    	* python/py-inferior.c (add_thread_object): Don't use thread_obj
    	after it has been moved.

commit 00db9531969db8b6ab984da996d0411fad938589
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date:   Wed Jul 10 21:49:32 2019 -0400

    Make value_must_coerce_to_target return a bool
    
    ... and move comment to header file.
    
    gdb/ChangeLog:
    
    	* valops.c (value_must_coerce_to_target): Change return type to
    	bool.
    	* value.h (value_must_coerce_to_target): Likewise.

commit f2478a7e8b145a55c343bc7a62c53b021062229e
Author: Simon Marchi <simon.marchi@efficios.com>
Date:   Wed Jul 10 21:20:38 2019 -0400

    breakpoint: Make is_*point functions return bool
    
    This includes changing the FILTER parameters of two functions
    accordingly.  I also tried to normalize the function comments to our
    current standards.
    
    gdb/ChangeLog:
    
    	* breakpoint.c (is_hardware_watchpoint): Remove
    	forward-declaration.
    	(is_masked_watchpoint): Change return type to bool.
    	(is_tracepoint): Likewise.
    	(is_breakpoint): Likewise.
    	(is_hardware_watchpoint): Likewise.
    	(is_watchpoint): Likewise.
    	(is_no_memory_software_watchpoint): Likewise.
    	(is_catchpoint): Likewise.
    	(breakpoint_1): Make FILTER parameter's return type bool.
    	is_masked_watchpoint): Change return type to bool.
    	(save_breakpoints): Make FILTER parameter's return type bool.
    	* breakpoint.h (is_breakpoint): Change return type to bool.
    	(is_watchpoint): Likewise.
    	(is_catchpoint): Likewise.
    	(is_tracepoint): Likewise.

commit 2ee0a9b7bcd86721bd44d8a8fc967b2a8cbe18e0
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Thu Jul 11 00:00:37 2019 +0000

    Automatic date update in version.in

commit 0d12e84cfc9bd36b7bbda01a3c8f83f65a832398
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 9 15:21:02 2019 -0600

    Don't include gdbarch.h from defs.h
    
    I touched symtab.h and was surprised to see how many files were
    rebuilt.  I looked into it a bit, and found that defs.h includes
    gdbarch.h, which in turn includes many things.
    
    gdbarch.h is only needed by a minority ofthe files in gdb, so this
    patch removes the include from defs.h and updates the fallout.
    
    I did "wc -l" on the files in build/gdb/.deps; this patch reduces the
    line count from 139935 to 137030; so there are definitely future
    build-time savings here.
    
    Note that while I configured with --enable-targets=all, it's possible
    that some *-nat.c file needs an update.  I could not test all of
    these.  The buildbot caught a few problems along these lines.
    
    gdb/ChangeLog
    2019-07-10  Tom Tromey  <tom@tromey.com>
    
    	* defs.h: Don't include gdbarch.h.
    	* aarch64-ravenscar-thread.c, aarch64-tdep.c, alpha-bsd-tdep.h,
    	alpha-linux-tdep.c, alpha-mdebug-tdep.c, arch-utils.h, arm-tdep.h,
    	ax-general.c, btrace.c, buildsym-legacy.c, buildsym.h, c-lang.c,
    	cli/cli-decode.h, cli/cli-dump.c, cli/cli-script.h,
    	cli/cli-style.h, coff-pe-read.h, compile/compile-c-support.c,
    	compile/compile-cplus.h, compile/compile-loc2c.c, corefile.c,
    	cp-valprint.c, cris-linux-tdep.c, ctf.c, d-lang.c, d-namespace.c,
    	dcache.c, dicos-tdep.c, dictionary.c, disasm-selftests.c,
    	dummy-frame.c, dummy-frame.h, dwarf2-frame-tailcall.c,
    	dwarf2expr.c, expression.h, f-lang.c, frame-base.c,
    	frame-unwind.c, frv-linux-tdep.c, gdbarch-selftests.c, gdbtypes.h,
    	go-lang.c, hppa-nbsd-tdep.c, hppa-obsd-tdep.c, i386-dicos-tdep.c,
    	i386-tdep.h, ia64-vms-tdep.c, interps.h, language.c,
    	linux-record.c, location.h, m2-lang.c, m32r-linux-tdep.c,
    	mem-break.c, memattr.c, mn10300-linux-tdep.c, nios2-linux-tdep.c,
    	objfiles.h, opencl-lang.c, or1k-linux-tdep.c, p-lang.c,
    	parser-defs.h, ppc-tdep.h, probe.h, python/py-record-btrace.c,
    	record-btrace.c, record.h, regcache-dump.c, regcache.h,
    	riscv-fbsd-tdep.c, riscv-linux-tdep.c, rust-exp.y,
    	sh-linux-tdep.c, sh-nbsd-tdep.c, source-cache.c,
    	sparc-nbsd-tdep.c, sparc-obsd-tdep.c, sparc-ravenscar-thread.c,
    	sparc64-fbsd-tdep.c, std-regs.c, target-descriptions.h,
    	target-float.c, tic6x-linux-tdep.c, tilegx-linux-tdep.c, top.c,
    	tracefile.c, trad-frame.c, type-stack.h, ui-style.c, utils.c,
    	utils.h, valarith.c, valprint.c, varobj.c, x86-tdep.c,
    	xml-support.h, xtensa-linux-tdep.c, cli/cli-cmds.h: Update.
    	* s390-linux-nat.c, procfs.c, inf-ptrace.c: Likewise.

commit f06f1252b0b8ef20adb4296faaf8293c9d36f615
Author: Tom Tromey <tromey@adacore.com>
Date:   Wed Jul 10 11:05:20 2019 -0600

    Change Ada catchpoints to be bp_catchpoint
    
    Like Pedro's earlier patches to change catchpoint to be of type
    bp_catchpoint, this changes the Ada catchpoints to follow.
    
    Tested on x86-64 Fedora 29.
    
    gdb/ChangeLog
    2019-07-10  Tom Tromey  <tromey@adacore.com>
    
    	* ada-lang.h (is_ada_exception_catchpoint): Declare.
    	* breakpoint.c (init_ada_exception_breakpoint): Register as
    	bp_catchpoint.
    	(print_one_breakpoint_location, print_one_breakpoint): Use
    	is_ada_exception_catchpoint.
    	* ada-lang.c (class ada_catchpoint_location): Pass
    	bp_loc_software_breakpoint to bp_location constructor.
    	(is_ada_exception_catchpoint): New function.
    
    gdb/testsuite/ChangeLog
    2019-07-10  Tom Tromey  <tromey@adacore.com>
    
    	* gdb.ada/mi_ex_cond.exp: Update expected results.
    	* gdb.ada/mi_catch_ex_hand.exp: Update expected results.
    	* gdb.ada/mi_catch_ex.exp: Update expected results.
    	* gdb.ada/mi_catch_assert.exp: Update expected results.
    	* gdb.ada/catch_ex.exp (catch_exception_info)
    	(catch_exception_entry, catch_assert_entry)
    	(catch_unhandled_entry): Update.
    	* gdb.ada/catch_assert_if.exp: Update expected results.

commit 7a5d944b9e86bf73ae5acaa984df24d175b80f68
Author: Tom Tromey <tromey@adacore.com>
Date:   Tue Jul 2 13:45:28 2019 -0600

    Change arm-tdep.c to use type-safe registry
    
    This changes arm-tdep.c to use the type-safe registry, removing a use
    of VEC in the process.
    
    2019-07-10  Tom Tromey  <tromey@adacore.com>
    
    	* arm-tdep.c (arm_exidx_entry_s): Remove typedef.  Don't define
    	VEC.
    	(struct arm_exidx_entry): New method operator<.
    	(struct arm_exidx_data) <section_maps>: Change type.
    	(arm_exidx_data_free): Remove.
    	(arm_exidx_data_key): Change type.  Move lower.
    	(arm_exidx_new_objfile): Update.
    	(arm_compare_exidx_entries): Remove.
    	(arm_find_exidx_entry, _initialize_arm_tdep)

commit 48c66e1d07d65a76c685d10003d751ef883b1244
Author: Tom Tromey <tromey@adacore.com>
Date:   Thu Jun 27 13:52:42 2019 -0600

    Change solib-spu.c to use type-safe registry
    
    This changes solib-spu.c to use the type-safe registry.
    
    2019-07-10  Tom Tromey  <tromey@adacore.com>
    
    	* solib-spu.c (ocl_program_data_key): Change type.
    	(append_ocl_sos, ocl_enable_break, _initialize_spu_solib):
    	Update.

commit a269fbf12dcc621c45030ab9956ae28053878b7c
Author: Tom Tromey <tromey@adacore.com>
Date:   Thu Jun 27 13:48:44 2019 -0600

    Change solib-aix.c to use type-safe registry
    
    This changes solib-aix.c to use the type-safe registry, and removes a
    use of VEC in the process.
    
    gdb/ChangeLog
    2019-07-10  Tom Tromey  <tromey@adacore.com>
    
    	* solib-aix.c (lm_info_aix_p): Remove typedef.  Don't define VEC.
    	(struct solib_aix_inferior_data) <library_list>: Change type.
    	(solib_aix_inferior_data_handle): Change type.
    	(get_solib_aix_inferior_data): Update.
    	(solib_aix_free_library_list): Remove.
    	(library_list_start_library): Update.
    	(solib_aix_parse_libraries, solib_aix_get_library_list): Change
    	return type.
    	(solib_aix_get_library_list)
    	(solib_aix_solib_create_inferior_hook, solib_aix_current_sos)
    	(solib_aix_normal_stop_observer, _initialize_solib_aix): Update.

commit c294730c54f15ea69b18025025c0f191e5876301
Author: Tom Tromey <tromey@adacore.com>
Date:   Wed Jun 26 13:16:18 2019 -0600

    Change solib-dsbt.c to use type-safe registry
    
    This changes solib-dsbt.c to use the type-safe registry.
    
    2019-07-10  Tom Tromey  <tromey@adacore.com>
    
    	* solib-dsbt.c (struct dsbt_info): Add initializers.
    	(solib_dsbt_pspace_data): Change type.
    	(dsbt_pspace_data_cleanup): Remove.
    	(get_dsbt_info, _initialize_dsbt_solib): Update.

commit 9d52077d65206b1e0df62f05b577b5ceede1228a
Author: Tom Tromey <tromey@adacore.com>
Date:   Wed Jun 26 13:14:29 2019 -0600

    Change spu-tdep.c to use type-safe registry
    
    This changes spu-tdep.c to use the type-safe registry.
    
    2019-07-10  Tom Tromey  <tromey@adacore.com>
    
    	* spu-tdep.c (spu_overlay_data): Change type.
    	(spu_get_overlay_table, spu_overlay_new_objfile)
    	(_initialize_spu_tdep): Update.

commit 22a20dca3a96c481093bdff5e17f1feb0f9e345c
Author: Tom Tromey <tromey@adacore.com>
Date:   Wed Jun 26 13:12:13 2019 -0600

    Change dbxread.c to use type-safe registry
    
    This changes dbxread.c to use the type-safe registry.  In a couple of
    spots, you'll see that dbx_objfile_data_key.emplace is called but the
    result is not used; this is because those functions refer to the key
    via the various DBX_* macros.
    
    2019-07-10  Tom Tromey  <tromey@adacore.com>
    
    	* gdb-stabs.h (struct dbx_symfile_info): Add initializers and
    	destructor.
    	(dbx_objfile_data_key): Change type and declare later.
    	(DBX_SYMFILE_INFO): Rewrite.
    	* dbxread.c (dbx_objfile_data_key): Change type.
    	(dbx_symfile_init): Update.
    	(~dbx_symfile_info): Rename from dbx_free_symfile_info.  Update.
    	(coffstab_build_psymtabs, elfstab_build_psymtabs)
    	(stabsect_build_psymtabs, _initialize_dbxread): Update.

commit cb60f4208b2b920614306937b62bf15700824ee0
Author: Tom Tromey <tromey@adacore.com>
Date:   Wed Jun 26 12:47:44 2019 -0600

    Change jit.c to use type-safe registry
    
    This changes jit.c to use the type-safe registry.  Only one of the
    registry keys in jit.c is converted; the other is trickier and so I've
    left it be for now.
    
    gdb/ChangeLog
    2019-07-10  Tom Tromey  <tromey@adacore.com>
    
    	* jit.c (jit_program_space_key): Change type.  Move lower.
    	(get_jit_program_space_data): Update.
    	(jit_program_space_data_cleanup): Remove.
    	(jit_breakpoint_deleted, free_objfile_data, _initialize_jit):
    	Update.
    	(struct jit_program_space_data): Add initializers.

commit 51df2ae3029caafd2b832e19d2978114a7e25a8a
Author: Tom Tromey <tromey@adacore.com>
Date:   Wed Jun 26 12:44:49 2019 -0600

    Change solib-darwin.c to use type-safe registry
    
    This changes solib-darwin.c to use the type-safe registry.
    
    2019-07-10  Tom Tromey  <tromey@adacore.com>
    
    	* solib-darwin.c (struct darwin_info): Add initializers.
    	(solib_darwin_pspace_data): Change type.
    	(darwin_pspace_data_cleanup): Remove.
    	(get_darwin_info, _initialize_darwin_solib): Update.

commit 18101a352541a28b8e199b4d7b9f66989681dc02
Author: Tom Tromey <tromey@adacore.com>
Date:   Wed Jun 26 12:42:14 2019 -0600

    Change remote-sim.c to use type-safe registry
    
    This changes remote-sim.c to use the type-safe registry.
    
    2019-07-10  Tom Tromey  <tromey@adacore.com>
    
    	* remote-sim.c (struct sim_inferior_data): Add initializers,
    	constructor, and destructor.
    	(sim_inferior_data_key): Change type.  Move lower.
    	(check_for_duplicate_sim_descriptor): Update.
    	(get_sim_inferior_data): Use new.  Update.
    	(~sim_inferior_data_cleanup): Rename from
    	sim_inferior_data_cleanup.  Simplify.
    	(gdbsim_close_inferior, simulator_command)
    	(sim_command_completer, _initialize_remote_sim): Update.
    	(next_pid, INITIAL_PID): Move earlier.

commit 05b08ac1608c8355201db21fe4c871677466f0d5
Author: Tom Tromey <tromey@adacore.com>
Date:   Fri Jun 28 08:32:28 2019 -0600

    Reduce manual reference counting in py-inferior.c
    
    This patch changes py-inferior.c to use gdbpy_ref<> when possible,
    reducing the amount of manual reference counting.
    
    Tested on x86-64 Fedora 29.
    
    gdb/ChangeLog
    2019-07-10  Tom Tromey  <tromey@adacore.com>
    
    	* python/python-internal.h (create_thread_object): Return
    	gdbpy_ref.
    	* python/py-infthread.c (create_thread_object): Return gdbpy_ref.
    	* python/py-inferior.c (struct threadlist_entry): Add
    	constructor.
    	<thread_obj>: Now a gdbpy_ref.
    	(thread_to_thread_object): Update.
    	(add_thread_object): Use new.
    	(delete_thread_object): Use delete.
    	(infpy_threads): Update.
    	(py_free_inferior): Update.  Construct "inf_obj" after acquiring
    	GIL.

commit 32372d80caba2e223157eca6db2fb0e65369c3c7
Author: Tom Tromey <tromey@adacore.com>
Date:   Tue Jun 18 08:59:00 2019 -0600

    Specialize value_cast error message for Ada
    
    In Ada, the term for a cast is "type conversion".  AdaCore has been
    carrying a local patch to specialize the error message in value_cast,
    but it seemed fine to me for this to be part of gdb.  This also
    removes a dead "return" statement.
    
    gdb/ChangeLog
    2019-07-10  Tom Tromey  <tromey@adacore.com>
    
    	* valops.c (value_cast): Specialize error message for Ada.

commit 43dd762689eb80d5c93a6c1079697c3791fb46fa
Author: Hans-Peter Nilsson <hp@bitrange.com>
Date:   Wed Jul 10 18:38:19 2019 +0200

    arm-dis.c (print_insn_coprocessor): Rename index to index_operand.
    
    Older gcc warns, arguably incorrectly, about name collisions between
    global functions and function-local variable names.  Consesus has been
    to rename local variables whenever this is spotted, hence committed as
    obvious.  Note the pre-existing variable named idx; "index_operand"
    seemed logical given the context.
    
    	* arm-dis.c (print_insn_coprocessor): Rename index to
    	index_operand.

commit 5c458ae8f529a11ecab9db470d80695bb31ecfc5
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date:   Wed Jul 10 12:12:37 2019 -0400

    Update breakpoint_1's documentation
    
    I noticed the documentation of breakpoint_1 way way out of date, so this
    is an attempt to update it.  I have changed the parameter names to
    something that seems clearer to me.
    
    gdb/ChangeLog:
    
    	* breakpoint.c (breakpoint_1): Update doc and parameter names.

commit 4c462cb0efb40a7a1e5297946bed59286dd0cf02
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date:   Wed Jul 10 12:10:51 2019 -0400

    Make some bpstat functions use bool
    
    Change return type to bool and adjust function comments.
    
    gdb/ChangeLog:
    
    	* breakpoint.h (bpstat_explains_signal, bpstat_causes_stop,
    	bpstat_should_step): Return bool, adjust comments.
    	* breakpoint.c (bpstat_explains_signal, bpstat_causes_stop,
    	bpstat_should_step): Likewise.

commit 89abbcc26d891425678b8b463bc1fa81273fb54c
Author: Alan Hayward <alan.hayward@arm.com>
Date:   Thu Jun 20 08:38:18 2019 +0100

    Arm: Create feature files for Arm target descriptions
    
    Add Arm to the list of feature target description targets and generate the
    relevant C files.
    
    Add arm-m-profile-with-fpa.xml as the feature version of the exisiting
    arm-with-m-fpa-layout.xml.
    
    Add extra comments to the Makefile for readability.
    
    New files are not yet used.
    
    gdb/ChangeLog:
    
    	* features/Makefile: Use feature target descriptions for Arm.
    	* features/arm/arm-core.c: Generate new file.
    	* features/arm/arm-fpa.c: Likewise.
    	* features/arm/arm-m-profile-with-fpa.xml: Likewise.
    	* features/arm/arm-m-profile.c: Likewise.
    	* features/arm/arm-vfpv2.c: Likewise.
    	* features/arm/arm-vfpv3.c: Likewise.
    	* features/arm/xscale-iwmmxt.c: Likewise.
    	* target-descriptions.c (maint_print_c_tdesc_cmd): Add Arm.

commit b863685d70199489b3fe27abedfb1eb6d1452b7d
Author: Richard Bunt <richard.bunt@arm.com>
Date:   Wed Jul 10 14:14:16 2019 +0100

    Restore original GDB prompt in define.exp
    
    define.exp will fail on a GDB which has set a custom prompt to identify
    itself.  This is because the test resets the prompt to a hard coded
    "(gdb)" but then verifies the success of this against the value in
    $gdb_prompt, which is set to the custom prompt.
    
    The original approach to fix this involved resetting the prompt to
    $gdb_prompt rather than a hard coded "(gdb)". However it was noted during
    review that $gdb_prompt is a regular expression rather than a string.
    This is problematic because in general the prompt would be reset to a
    regular expression rather than an instance of a string accepted by said
    regular expression.
    
    The fix used in this commit avoids the above issue by capturing the
    literal prompt from running "show prompt" and uses this literal to
    restore the previous prompt.
    
    Regression tested with GCC 7.3.0 on x86_64, ppc64le, aarch64.
    
    gdb/testsuite/ChangeLog:
    2019-07-10  Richard Bunt  <richard.bunt@arm.com>
    	Stephen Roberts  <stephen.roberts@arm.com>
    
    	* gdb.base/define.exp: Restore original prompt.

commit 166a82be89008621a31e6e56b2d52a049b53e341
Author: Alan Hayward <alan.hayward@arm.com>
Date:   Tue Jun 25 11:04:59 2019 +0100

    Arm: Minor style cleanups
    
    *When reading a target description, do the ptrace check before picking the
     target description.
    
    *In wmmxregset functions, declare the counter inside the for.
    
    *Call arm_linux_init_hwbp_cap from in arm_arch_setup - it doesn't belong in
     arm_read_description.
    
    gdb/ChangeLog:
    
    	* arm-linux-nat.c (arm_linux_nat_target::read_description): Check
    	ptrace earlier,
    
    gdb/gdbserver/ChangeLog:
    
    	* linux-arm-low.c (arm_fill_wmmxregset, arm_store_wmmxregset):
    	Move counter inside for.
    	(arm_read_description): Check ptrace earlier.
    	(arm_arch_setup): Call arm_linux_init_hwbp_cap here.

commit 9fb4c7e9f00accbbf92fc0b0a53978fd50ff6bb0
Author: Alan Hayward <alan.hayward@arm.com>
Date:   Wed Jul 10 11:45:29 2019 +0100

    Regenerate aarch64-pauth.c
    
    aarch64-pauth.c was slightly out of sync with the generated version.
    Regenerate it.
    
    gdb/ChangeLog:
    
    	* features/aarch64-pauth.c: Regenerate.

commit e2d0f9803e3054b05c2de716f3c928e510009436
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date:   Tue Jul 9 21:20:16 2019 -0400

    Make bpstat_what::is_longjmp a bool
    
    gdb/ChangeLog:
    
    	* breakpoint.h (struct bpstat_what) <is_longjmp>: Change type to
    	bool.
    	(bpstat_what): Use false instead of 0.

commit eb6ad40f244ea6dedca1440b0ce3d89c1ecdac0c
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Wed Jul 10 00:00:22 2019 +0000

    Automatic date update in version.in

commit a38118e5d165324b4f9509fd82cf1f1c6421bfc5
Author: Pedro Alves <palves@redhat.com>
Date:   Tue Jul 9 19:26:16 2019 +0100

    Make "maint info breakpoints" show "catch catch/throw/rethrow" locations
    
    This commit makes "maint info breakpoints" show the internal locations
    of C++ exception catchpoints:
    
     (gdb) info breakpoints
     Num     Type           Disp Enb Address            What
     2       catchpoint     keep y                      exception catch
    
    With multiple locations:
    
     (gdb) maint info breakpoints
     Num     Type           Disp Enb Address            What
     2       catchpoint     keep y                      exception catch
     2.1                         y   0x000000000040545f <__cxa_begin_catch+95> inf 1
     2.2                         y   0x00007ffff71dbe0f <__cxxabiv1::__cxa_begin_catch(void*)+95> inf 1
     (gdb)
    
    With a single location:
    
     (gdb) maint info breakpoints 2
     Num     Type           Disp Enb Address            What
     2       catchpoint     keep y                      exception catch inf 1
     2.1                         y   0x00007ffff7bc0b7f <__cxa_begin_catch+95> inf 1
    
    With no locations:
    
     (gdb) maint info breakpoints 2
     Num     Type           Disp Enb Address            What
     2       catchpoint     keep y                      exception catch inf 1
    
    
    Other catchpoints still show the same way, here a catch signal:
    
     (gdb) info breakpoints
     Num     Type           Disp Enb Address            What
     3       catchpoint     keep y                      signal "<standard signals>"
    
     (gdb) maint info breakpoints
     Num     Type           Disp Enb Address            What
     3       catchpoint     keep y                      signal "<standard signals>"  inf 1
     (gdb)
    
    Note: I considered making the locations be printed from within
    breakpoint_ops::print_one(), but gave up given the handling for the
    broken MI v2 output:
    
     /* The mi2 broken format: the main breakpoint tuple ends here, the locations
         are outside.  */
      if (!use_fixed_output)
        bkpt_tuple_emitter.reset ();
    
    in print_one_breakpoint.
    
    gdb/ChangeLog:
    2019-07-09  Pedro Alves  <palves@redhat.com>
    
    	* break-catch-throw.c (is_exception_catchpoint): New.
    	* breakpoint.c (print_one_breakpoint_location): New parameter
    	'raw_loc'.  Handle it.  Use
    	is_watchpoint/is_catchpoint/is_exception_catchpoint instead of
    	looking at the breakpoint's type.
    	(print_one_breakpoint): If handling "maint info breakpoints", also
    	print locations of exception catchpoints.
    	* breakpoint.h (is_exception_catchpoint): Declare.

commit cb1e4e32c2d9588e1d77ea49bafb5dcdc1cff764
Author: Pedro Alves <palves@redhat.com>
Date:   Tue Jul 9 19:26:16 2019 +0100

    "catch catch/throw/rethrow", breakpoint -> catchpoint
    
    Currently, with:
    
     (gdb) catch catch
     Catchpoint 1 (catch)
     (gdb) catch throw
     Catchpoint 2 (throw)
     (gdb) catch rethrow
     Catchpoint 3 (rethrow)
    
    You get:
    
    (gdb) info breakpoints
     Num     Type           Disp Enb Address            What
     1       breakpoint     keep y   0x0000000000b122af exception catch
     2       breakpoint     keep y   0x0000000000b1288d exception throw
     3       breakpoint     keep y   0x0000000000b12931 exception rethrow
    
    I think it doesn't make much sense usability-wise, to show a
    catchpoint as a breakpoint.  The fact that GDB sets a breakpoint at
    some magic address in the C++ run time is an implementation detail,
    IMO.  And as seen in the previous patch, such a catchpoint can end up
    with more than one location/address even, so showing a single address
    isn't entirely accurate.
    
    This commit hides the addresses from view, and makes GDB show
    "catchpoint" for type as well:
    
      (gdb) info breakpoints
      Num     Type           Disp Enb Address            What
      1       catchpoint     keep y                      exception catch
      2       catchpoint     keep y                      exception throw
      3       catchpoint     keep y                      exception rethrow
    
    This comment in the code seems telling:
    
      /* We need to reset 'type' in order for code in breakpoint.c to do
         the right thing.  */
      cp->type = bp_breakpoint;
    
    It kind of suggests that the reason catchpoints end up shown as
    breakpoints was that it was easier to implement them that way, rather
    than a desired property.
    
    This commit fixes things up to make it possible to have bp_catch
    breakpoints have software/hardware breakpoint locations, thus
    eliminating the need for that hack:
    
     - redo breakpoint_address_is_meaningful in terms of the location's
       type rather than breakpoint type.
     - teach bpstat_what about stepping over the catchpoint locations.
     - install a allocate_location method for "catch catch/throw/rethrow",
       one that forces the location type.
    
    Note that this also reverts the gdb hunk from:
    
      commit 2a8be20359dba9cc684fd3ffa222d985399f3b18
      Commit:     Tom Tromey <tom@tromey.com>
      CommitDate: Sat Oct 6 22:17:45 2018 -0600
    
          Fix Python gdb.Breakpoint.location crash
    
    because now "catch throw" catchpoints hit the
    
       if (obj->bp->type != bp_breakpoint)
         Py_RETURN_NONE;
    
    check above, and, adjusts the testcase to no longer expect to see the
    catchpoint in the gdb.breakpoints() list.
    
    (Note: might make sense to do the same to Ada exception catchpoints.)
    
    gdb/ChangeLog:
    2019-07-09  Pedro Alves  <palves@redhat.com>
    
    	* break-catch-throw.c (print_one_exception_catchpoint): Skip the
    	"addr" field.
    	(allocate_location_exception_catchpoint): New.
    	(handle_gnu_v3_exceptions): Don't reset 'type' to bp_breakpoint.
    	(initialize_throw_catchpoint_ops): Install
    	allocate_location_exception_catchpoint as allocate_location
    	method.
    	* breakpoint.c (bpstat_what) <bp_catch>: Set action to
    	BPSTAT_WHAT_SINGLE if not stopping and the location's type is not
    	bp_loc_other.
    	(breakpoint_address_is_meaningful): Delete.
    	(bl_address_is_meaningful): New.
    	(breakpoint_locations_match): Adjust comment.
    	(bp_location_from_bp_type): New, factored out of...
    	(bp_location::bp_location(breakpoint *)): ... this.
    	(bp_location::bp_location(breakpoint *, bp_loc_type)): New,
    	factored out of...
    	(bp_location::bp_location(breakpoint *)): ... this.  Reimplement.
    	(bp_loc_is_permanent): Use bl_address_is_meaningful instead of
    	breakpoint_address_is_meaningful.
    	(bp_locations_compare): Adjust comment.
    	(update_global_location_list): Use bl_address_is_meaningful
    	instead of breakpoint_address_is_meaningful.
    	* breakpoint.h (bp_location::bp_location(breakpoint *)): New
    	explicit.
    	(bp_location::bp_location(breakpoint *, bp_loc_type)): Declare.
    	* python/py-breakpoint.c (bppy_get_location): No longer check
    	whether location is null.
    
    gdb/doc/ChangeLog:
    2019-07-09  Pedro Alves  <palves@redhat.com>
    
    	* gdb.texinfo (C++ Exception GDB/MI Catchpoint Commands): Adjust
    	examples to show type=catchpoint instead of type=breakpoint and an
    	address.
    
    gdb/testsuite/ChangeLog:
    2019-07-09  Pedro Alves  <palves@redhat.com>
    
    	* gdb.cp/catch-multi-stdlib.exp: Adjust expected "info
    	breakpoints" output.
    	* gdb.cp/exception.exp: Adjust expected "info breakpoints" output.
    	* gdb.python/py-breakpoint.exp: No longer expect that "catch
    	throw" creates breakpoint.
    	* gdb.mi/mi-catch-cpp-exceptions.exp (setup_catchpoint): Expect
    	'type="catchpoint"'.

commit b58a68fe5709ed205c3ac54065f1783ce58d9a01
Author: Pedro Alves <palves@redhat.com>
Date:   Tue Jul 9 19:26:15 2019 +0100

    Fix "info break" + "catch catch" + -static-{libstdc++,libgcc}
    
    If you debug current GDB, set a "catch catch/throw/rethrow"
    catchpoint, and then do "info breakpoints", the top GDB hits an
    internal error:
    
     (top-gdb) catch catch
     Catchpoint 1 (catch)
     (top-gdb) info breakpoints
     Num     Type           Disp Enb Address            What
     1       breakpoint     keep y   src/gdb/breakpoint.c:6040: internal-error: void print_one_breakpoint_location(breakpoint*, bp_location*, int, bp_location**, int): Assertion `b->loc == NULL || b->loc->next == NULL' failed.
     A problem internal to GDB has been detected,
     further debugging may prove unreliable.
     Quit this debugging session? (y or n)
    
    The assertion in question is asserting that a breakpoint with a
    print_one method only has one location, and it fails because this
    catchpoint ends up with two locations.
    
    Internally, "catch catch" sets a breakpoint at __cxa_begin_catch.  If
    we do that manually, we see the locations:
    
      (top-gdb) b -qualified __cxa_begin_catch
      Breakpoint 2 at 0xb122b0 (2 locations)
      (top-gdb) info breakpoints
      Num     Type           Disp Enb Address            What
      2       breakpoint     keep y   <MULTIPLE>
      2.1                         y   0x0000000000b122b0 <__cxa_begin_catch>
      2.2                         y   0x00007ffff2f4ddb0 in __cxxabiv1::__cxa_begin_catch(void*) at ../../../../libstdc++-v3/libsupc++/eh_catch.cc:41
    
    Note that I had used -qualified.  It seems strange that we get a
    location for a namespaced symbol, but that happens because the minimal
    symbol for that address is indeed called __cxa_begin_catch.
    
    The real issue is that gdb is linked with
    -static-libgcc/-static-libstdc++.  And then, it _also_ ends up with
    shared libstc++ loaded:
    
      (top-gdb) info sharedlibrary stdc++
      From                To                  Syms Read   Shared Object Library
      0x00007ffff2f4b380  0x00007ffff2ffc018  Yes         /lib64/libstdc++.so.6
    
    Location 2.2 is set within libstdc++.so.6's range:
    
      (top-gdb) p 0x00007ffff2f4b380 <= 0x00007ffff2f4ddb0 && 0x00007ffff2f4ddb0 < 0x00007ffff2ffc018
      $1 = true
    
    So due to -static-lib*, we end up with _two_ copies of the
    __cxa_begin_catch code:
    
      (top-gdb) disassemble 0x0000000000b122b0
      Dump of assembler code for function __cxa_begin_catch:
         0x0000000000b122b0 <+0>:     push   %rbx
         0x0000000000b122b1 <+1>:     mov    %rdi,%rbx
         0x0000000000b122b4 <+4>:     callq  0xb11a80 <__cxa_get_globals>
         0x0000000000b122b9 <+9>:     movabs $0xb8b1aabcbcd4d500,%rdx
      ...
    
      (top-gdb) disassemble 0x00007ffff2f4ddb0
      Dump of assembler code for function __cxxabiv1::__cxa_begin_catch(void*):
         0x00007ffff2f4ddb0 <+0>:     push   %rbx
         0x00007ffff2f4ddb1 <+1>:     mov    %rdi,%rbx
         0x00007ffff2f4ddb4 <+4>:     callq  0x7ffff2f4a090 <__cxa_get_globals@plt>
         0x00007ffff2f4ddb9 <+9>:     movabs $0xb8b1aabcbcd4d500,%rdx
      ...
    
    I think we end up with libstdc++.so.6 loaded because
    libsource-highlight.so depends on it.
    
    Irrespective of whether it's a good idea to use
    -static-libgcc/-static-libstdc++, GDB should not crash.  Since there
    are two copies of the code, it seems right to have more than one
    location.  So the fix is just to remove the assertion.
    
    A testcase is included, which mimics the scenerio described above,
    with binary linked with -static-lib{stdc++,gcc} and a shared library
    that is linked normally, along with other combinations for good
    measure.
    
    gdb/ChangeLog:
    2019-07-09  Pedro Alves  <palves@redhat.com>
    
    	PR c++/15468
    	* breakpoint.c (print_one_breakpoint_location): Remove
    	single-location assert.
    
    gdb/testsuite/ChangeLog:
    2019-07-09  Pedro Alves  <palves@redhat.com>
    
    	PR c++/15468
    	* gdb.cp/except-multi-location-lib.cc: New.
    	* gdb.cp/except-multi-location-main.cc: New.
    	* gdb.cp/except-multi-location.exp: New.

commit 0826779b99b49f7f8df5d186f3c481b6007010d4
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date:   Tue Jul 9 19:36:17 2019 +0200

    Fix printcmds.exp failure for wide strings tests.
    
    wchar_t type must be known to create wide strings.
    As this type is predefined when current GDB language is C++,
    switch to c++ for the wide strings tests.
    
    Problem analysis and fix by Sergio.

commit 268a13a5a3f7c6b9b6ffc5ac2d1b24eb41f3fbdc
Author: Tom Tromey <tom@tromey.com>
Date:   Sun May 5 20:29:24 2019 -0600

    Rename common to gdbsupport
    
    This is the next patch in the ongoing series to move gdbsever to the
    top level.
    
    This patch just renames the "common" directory.  The idea is to do
    this move in two parts: first rename the directory (this patch), then
    move the directory to the top.  This approach makes the patches a bit
    more tractable.
    
    I chose the name "gdbsupport" for the directory.  However, as this
    patch was largely written by sed, we could pick a new name without too
    much difficulty.
    
    Tested by the buildbot.
    
    gdb/ChangeLog
    2019-07-09  Tom Tromey  <tom@tromey.com>
    
    	* contrib/ari/gdb_ari.sh: Change common to gdbsupport.
    	* configure: Rebuild.
    	* configure.ac: Change common to gdbsupport.
    	* gdbsupport: Rename from common.
    	* acinclude.m4: Change common to gdbsupport.
    	* Makefile.in (CONFIG_SRC_SUBDIR, COMMON_SFILES)
    	(HFILES_NO_SRCDIR, stamp-version, ALLDEPFILES): Change common to
    	gdbsupport.
    	* aarch64-tdep.c, ada-lang.c, ada-lang.h, agent.c, alloc.c,
    	amd64-darwin-tdep.c, amd64-dicos-tdep.c, amd64-fbsd-nat.c,
    	amd64-fbsd-tdep.c, amd64-linux-nat.c, amd64-linux-tdep.c,
    	amd64-nbsd-tdep.c, amd64-obsd-tdep.c, amd64-sol2-tdep.c,
    	amd64-tdep.c, amd64-windows-tdep.c, arch-utils.c,
    	arch/aarch64-insn.c, arch/aarch64.c, arch/aarch64.h, arch/amd64.c,
    	arch/amd64.h, arch/arm-get-next-pcs.c, arch/arm-linux.c,
    	arch/arm.c, arch/i386.c, arch/i386.h, arch/ppc-linux-common.c,
    	arch/riscv.c, arch/riscv.h, arch/tic6x.c, arm-tdep.c, auto-load.c,
    	auxv.c, ax-gdb.c, ax-general.c, ax.h, breakpoint.c, breakpoint.h,
    	btrace.c, btrace.h, build-id.c, build-id.h, c-lang.h, charset.c,
    	charset.h, cli/cli-cmds.c, cli/cli-cmds.h, cli/cli-decode.c,
    	cli/cli-dump.c, cli/cli-option.h, cli/cli-script.c,
    	coff-pe-read.c, command.h, compile/compile-c-support.c,
    	compile/compile-c.h, compile/compile-cplus-symbols.c,
    	compile/compile-cplus-types.c, compile/compile-cplus.h,
    	compile/compile-loc2c.c, compile/compile.c, completer.c,
    	completer.h, contrib/ari/gdb_ari.sh, corefile.c, corelow.c,
    	cp-support.c, cp-support.h, cp-valprint.c, csky-tdep.c, ctf.c,
    	darwin-nat.c, debug.c, defs.h, disasm-selftests.c, disasm.c,
    	disasm.h, dtrace-probe.c, dwarf-index-cache.c,
    	dwarf-index-cache.h, dwarf-index-write.c, dwarf2-frame.c,
    	dwarf2expr.c, dwarf2loc.c, dwarf2read.c, event-loop.c,
    	event-top.c, exceptions.c, exec.c, extension.h, fbsd-nat.c,
    	features/aarch64-core.c, features/aarch64-fpu.c,
    	features/aarch64-pauth.c, features/aarch64-sve.c,
    	features/i386/32bit-avx.c, features/i386/32bit-avx512.c,
    	features/i386/32bit-core.c, features/i386/32bit-linux.c,
    	features/i386/32bit-mpx.c, features/i386/32bit-pkeys.c,
    	features/i386/32bit-segments.c, features/i386/32bit-sse.c,
    	features/i386/64bit-avx.c, features/i386/64bit-avx512.c,
    	features/i386/64bit-core.c, features/i386/64bit-linux.c,
    	features/i386/64bit-mpx.c, features/i386/64bit-pkeys.c,
    	features/i386/64bit-segments.c, features/i386/64bit-sse.c,
    	features/i386/x32-core.c, features/riscv/32bit-cpu.c,
    	features/riscv/32bit-csr.c, features/riscv/32bit-fpu.c,
    	features/riscv/64bit-cpu.c, features/riscv/64bit-csr.c,
    	features/riscv/64bit-fpu.c, features/tic6x-c6xp.c,
    	features/tic6x-core.c, features/tic6x-gp.c, filename-seen-cache.h,
    	findcmd.c, findvar.c, fork-child.c, gcore.c, gdb_bfd.c, gdb_bfd.h,
    	gdb_proc_service.h, gdb_regex.c, gdb_select.h, gdb_usleep.c,
    	gdbarch-selftests.c, gdbthread.h, gdbtypes.h, gnu-nat.c,
    	go32-nat.c, guile/guile.c, guile/scm-ports.c,
    	guile/scm-safe-call.c, guile/scm-type.c, i386-fbsd-nat.c,
    	i386-fbsd-tdep.c, i386-go32-tdep.c, i386-linux-nat.c,
    	i386-linux-tdep.c, i386-tdep.c, i387-tdep.c,
    	ia64-libunwind-tdep.c, ia64-linux-nat.c, inf-child.c,
    	inf-ptrace.c, infcall.c, infcall.h, infcmd.c, inferior-iter.h,
    	inferior.c, inferior.h, inflow.c, inflow.h, infrun.c, infrun.h,
    	inline-frame.c, language.h, linespec.c, linux-fork.c, linux-nat.c,
    	linux-tdep.c, linux-thread-db.c, location.c, machoread.c,
    	macrotab.h, main.c, maint.c, maint.h, memattr.c, memrange.h,
    	mi/mi-cmd-break.h, mi/mi-cmd-env.c, mi/mi-cmd-stack.c,
    	mi/mi-cmd-var.c, mi/mi-interp.c, mi/mi-main.c, mi/mi-parse.h,
    	minsyms.c, mips-linux-tdep.c, namespace.h,
    	nat/aarch64-linux-hw-point.c, nat/aarch64-linux-hw-point.h,
    	nat/aarch64-linux.c, nat/aarch64-sve-linux-ptrace.c,
    	nat/amd64-linux-siginfo.c, nat/fork-inferior.c,
    	nat/linux-btrace.c, nat/linux-btrace.h, nat/linux-namespaces.c,
    	nat/linux-nat.h, nat/linux-osdata.c, nat/linux-personality.c,
    	nat/linux-procfs.c, nat/linux-ptrace.c, nat/linux-ptrace.h,
    	nat/linux-waitpid.c, nat/mips-linux-watch.c,
    	nat/mips-linux-watch.h, nat/ppc-linux.c, nat/x86-dregs.c,
    	nat/x86-dregs.h, nat/x86-linux-dregs.c, nat/x86-linux.c,
    	nto-procfs.c, nto-tdep.c, objfile-flags.h, objfiles.c, objfiles.h,
    	obsd-nat.c, observable.h, osdata.c, p-valprint.c, parse.c,
    	parser-defs.h, ppc-linux-nat.c, printcmd.c, probe.c, proc-api.c,
    	procfs.c, producer.c, progspace.h, psymtab.h,
    	python/py-framefilter.c, python/py-inferior.c, python/py-ref.h,
    	python/py-type.c, python/python.c, record-btrace.c, record-full.c,
    	record.c, record.h, regcache-dump.c, regcache.c, regcache.h,
    	remote-fileio.c, remote-fileio.h, remote-sim.c, remote.c,
    	riscv-tdep.c, rs6000-aix-tdep.c, rust-exp.y, s12z-tdep.c,
    	selftest-arch.c, ser-base.c, ser-event.c, ser-pipe.c, ser-tcp.c,
    	ser-unix.c, skip.c, solib-aix.c, solib-target.c, solib.c,
    	source-cache.c, source.c, source.h, sparc-nat.c, spu-linux-nat.c,
    	stack.c, stap-probe.c, symfile-add-flags.h, symfile.c, symfile.h,
    	symtab.c, symtab.h, target-descriptions.c, target-descriptions.h,
    	target-memory.c, target.c, target.h, target/waitstatus.c,
    	target/waitstatus.h, thread-iter.h, thread.c, tilegx-tdep.c,
    	top.c, top.h, tracefile-tfile.c, tracefile.c, tracepoint.c,
    	tracepoint.h, tui/tui-io.c, ui-file.c, ui-out.h,
    	unittests/array-view-selftests.c,
    	unittests/child-path-selftests.c, unittests/cli-utils-selftests.c,
    	unittests/common-utils-selftests.c,
    	unittests/copy_bitwise-selftests.c, unittests/environ-selftests.c,
    	unittests/format_pieces-selftests.c,
    	unittests/function-view-selftests.c,
    	unittests/lookup_name_info-selftests.c,
    	unittests/memory-map-selftests.c, unittests/memrange-selftests.c,
    	unittests/mkdir-recursive-selftests.c,
    	unittests/observable-selftests.c,
    	unittests/offset-type-selftests.c, unittests/optional-selftests.c,
    	unittests/parse-connection-spec-selftests.c,
    	unittests/ptid-selftests.c, unittests/rsp-low-selftests.c,
    	unittests/scoped_fd-selftests.c,
    	unittests/scoped_mmap-selftests.c,
    	unittests/scoped_restore-selftests.c,
    	unittests/string_view-selftests.c, unittests/style-selftests.c,
    	unittests/tracepoint-selftests.c, unittests/unpack-selftests.c,
    	unittests/utils-selftests.c, unittests/xml-utils-selftests.c,
    	utils.c, utils.h, valarith.c, valops.c, valprint.c, value.c,
    	value.h, varobj.c, varobj.h, windows-nat.c, x86-linux-nat.c,
    	xml-support.c, xml-support.h, xml-tdesc.h, xstormy16-tdep.c,
    	xtensa-linux-nat.c, dwarf2read.h: Change common to gdbsupport.
    
    gdb/gdbserver/ChangeLog
    2019-07-09  Tom Tromey  <tom@tromey.com>
    
    	* configure: Rebuild.
    	* configure.ac: Change common to gdbsupport.
    	* acinclude.m4: Change common to gdbsupport.
    	* Makefile.in (SFILES, OBS, GDBREPLAY_OBS, IPA_OBJS)
    	(version-generated.c, gdbsupport/%-ipa.o, gdbsupport/%.o): Change
    	common to gdbsupport.
    	* ax.c, event-loop.c, fork-child.c, gdb_proc_service.h,
    	gdbreplay.c, gdbthread.h, hostio-errno.c, hostio.c, i387-fp.c,
    	inferiors.c, inferiors.h, linux-aarch64-tdesc-selftest.c,
    	linux-amd64-ipa.c, linux-i386-ipa.c, linux-low.c,
    	linux-tic6x-low.c, linux-x86-low.c, linux-x86-tdesc-selftest.c,
    	linux-x86-tdesc.c, lynx-i386-low.c, lynx-low.c, mem-break.h,
    	nto-x86-low.c, regcache.c, regcache.h, remote-utils.c, server.c,
    	server.h, spu-low.c, symbol.c, target.h, tdesc.c, tdesc.h,
    	thread-db.c, tracepoint.c, win32-i386-low.c, win32-low.c: Change
    	common to gdbsupport.

commit 5b0e2db4fa08b43e9ff78d6e9a45d496522bd241
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Tue Jun 11 23:33:53 2019 +0100

    gdb: Don't skip prologue for explicit line breakpoints in assembler
    
    It was observed that in some cases, placing a breakpoint in an
    assembler file using filename:line-number syntax would result in the
    breakpoint being placed at a different line within the file.
    
    For example, consider this x86-64 assembler:
    
        test:
                push   %rbp		/* Break here.  */
                mov    %rsp, %rbp
                nop			/* Stops here.  */
    
    The user places the breakpoint using file:line notation targeting the
    line marked 'Break here', GDB actually stops at the line marked 'Stops
    here'.
    
    The reason is that the label 'test' is identified as the likely start
    of a function, and the call to symtab.c:skip_prologue_sal causes GDB
    to skip forward over the instructions that GDB believes to be part of
    the prologue.
    
    I believe however, that when debugging assembler code, where the user
    has instruction-by-instruction visibility, if they ask for a specific
    line, GDB should (as far as possible) stop on that line, and not
    perform any prologue skipping.  I don't believe that the behaviour of
    higher level languages should change, in these cases skipping the
    prologue seems like the correct thing to do.
    
    In order to implement this change I needed to extend our current
    tracking of when the user has requested an explicit line number.  We
    already tracked this in some cases, but not in others (see the changes
    in linespec.c).  However, once I did this I started to see some
    additional failures (in tests gdb.base/break-include.exp
    gdb.base/ending-run.exp gdb.mi/mi-break.exp gdb.mi/mi-reverse.exp
    gdb.mi/mi-simplerun.exp) where we currently expected a breakpoint
    placed at one file and line number to be updated to reference a
    different line number, this was fixed by removing some code in
    symtab.c:skip_prologue_sal.  My concern here is that removing this
    check didn't cause anything else to fail.
    
    I have a new test that covers my original case, this is written for
    x86-64 as most folk have access to such a target, however, any
    architecture that has a prologue scanner can be impacted by this
    change.
    
    gdb/ChangeLog:
    
    	* linespec.c (decode_digits_list_mode): Set explicit_line to a
    	bool value.
    	(decode_digits_ordinary): Set explicit_line field in sal.
    	* symtab.c (skip_prologue_sal): Don't skip prologue for a
    	symtab_and_line that was set on an explicit line number in
    	assembler code.  Do always update the recorded symtab and line if
    	we do skip the prologue.
    
    gdb/testsuite/ChangeLog:
    
    	* gdb.arch/amd64-break-on-asm-line.S: New file.
    	* gdb.arch/amd64-break-on-asm-line.exp: New file.

commit 0ba852ab4126a6eb4be88577d62dc25f2be7f725
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Mon Jul 1 16:00:52 2019 +0100

    gdb: Remove unneeded parameter from set_breakpoint_location_function
    
    The explicit_loc parameter in set_breakpoint_location_function is not
    useful.  This parameter is set from two possible fields of the
    symtab_and_line used to create the breakpoint; the explicit_pc field,
    and the explicit_line field.
    
    First, the explicit_line field, this is not currently set for any
    breakpoint command, so will never be true.
    
    Next, the explicit_pc field.  This can be true but will never be true
    at the same time that the sal->msymbol field is also true - the
    sal->msymbol is only ever set in linespec.c:minsym_found, which
    doesn't allow for explicitly setting the pc.
    
    The result of this is that if we are setting a breakpoint on an
    msymbol that could turn out to be an ifunc, then we will not also have
    either an explicit_pc or an explicit_line, this check can therefore be
    removed.
    
    There should be no user visible changes after this commit.
    
    gdb/ChangeLog:
    
    	* breakpoint.c (set_breakpoint_location_function): Remove
    	explicit_loc parameter.
    	(momentary_breakpoint_from_master): Update call to
    	set_breakpoint_location_function.
    	(add_location_to_breakpoint): Likewise.

commit b3a7d1711e4557811865333a0ac96fc16b750869
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Thu Jul 4 21:02:43 2019 +0100

    gdb/riscv: Don't use default bfd to define required features
    
    When we initialise a gdbarch object we perform a check to try and
    detect if the user is doing something silly; trying to run an RV64
    binary on an RV32 target.  To perform this check we compare the xlen
    from the target description with the xlen specified in the headers on
    the ELF being debugged.
    
    If there is no ELF being debugged then we (currently) try to use the
    bfd_arch_info from the gdbarch_info object, which will have been set
    to the default architecture if no bfd is currently being debugged.
    For RISC-V the default architecture is RV64.
    
    What this means is that if a user tries to connect to an RV32 target
    without specifying the BFD to debug then GDB will assume RV64.  The
    sanity check mentioned above will failed (xlen difference) and GDB
    will throw an error.  The error causes GDB to disconnect from the
    remote target.
    
    After this commit GDB no longer relies on the default bfd
    architecture.  If the user tries to connect without specifying the bfd
    then GDB will simply make use of the xlen extracted from the target
    description in order to find or create a suitable gdbarch object.
    
    gdb/ChangeLog:
    
    	* riscv-tdep.c (riscv_features_from_gdbarch_info): Don't modify
    	required features based on default bfd type when no specific bfd
    	is present.

commit d69cd47e7e9884f7b3a319936f70b8d93347e9e0
Author: Alan Modra <amodra@gmail.com>
Date:   Tue Jul 9 12:27:55 2019 +0930

    Re: gas/ELF: don't accumulate .type settings
    
    git commit f2d4ba38f5 caused many failures for mips-sgi-irix targets,
    and added a new test that failed for aarch64, nds32, and rl78.
    The mips failures are due to BSF_OBJECT being set in many cases for
    symbols by the mips .global/.globl directive.  This patch removes that
    code and instead sets BSF_OBJECT in a target frob_symbol function,
    also moving the mips hacks in elf_frob_symbol to the new function.
    
    Note that common symbols are handled fine in elf.c:swap_out_syms
    without needing to set BSF_OBJECT, so that old code can disappear.
    
    	* config/obj-elf.c (elf_frob_symbol): Remove mips hacks.
    	* config/tc-mips.h (tc_frob_symbol): Define.
    	(mips_frob_symbol): Declare.
    	* config/tc-mips.c (s_mips_globl): Don't set BSF_OBJECT for irix.
    	(mips_frob_symbol): Fudge symbols for irix here.
    	* testsuite/gas/elf/type-2.e: Allow random target symbols.

commit 64da05d557f59814151e908a34f36996a027d127
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Tue Jul 9 00:00:12 2019 +0000

    Automatic date update in version.in

commit 1f6f6e21fa86dc3411a6498608f32e9eb24b7851
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date:   Mon Jun 10 21:41:51 2019 +0200

    Ensure GDB printf command can print convenience var strings without a target.
    
    Without this patch, GDB printf command calls malloc on the target,
    writes the convenience var content to the target,
    re-reads the content from the target, and then locally printf the string.
    
    This implies inferior calls, and does not work when there is no running
    inferior, or when the inferior is a core dump.
    
    With this patch, printf command can printf string convenience variables
    without inferior function calls.
    Ada string convenience variables can also be printed.
    
    gdb/ChangeLog
    2019-07-08  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
    
    	* NEWS: Mention that GDB printf and eval commands can now print
    	C-style and Ada-style convenience var strings without
    	calling the inferior.
    	* printcmd.c (printf_c_string): Locally print GDB internal var
    	instead of transiting via the inferior.
    	(printf_wide_c_string): Likewise.
    
    gdb/testsuite/ChangeLog
    2019-07-08  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
    
    	* gdb.base/printcmds.exp: Test printing C string and
    	C wide string convenience vars without transiting via the inferior.
    	Also make test names unique.

commit ea142fbfc9c1708a83d3532257d6728e1f5c142e
Author: Alan Hayward <alan.hayward@arm.com>
Date:   Mon Jul 8 10:00:25 2019 +0100

    Fix breakpoints on file reloads for PIE binaries
    
    When a binary is built using PIE, reloading the file will cause GDB to error
    on restart.  For example:
    gdb ./a.out
    (gdb) break main
    (gdb) run
    (gdb) file ./a.out
    (gdb) continue
    
    Will cause GDB to error with:
    Continuing.
    Warning:
    Cannot insert breakpoint 1.
    Cannot access memory at address 0x9e0
    Command aborted.
    
    This is due to the symbol offsets not being relocated after reloading the file.
    
    Fix is to ensure solib_create_inferior_hook is called, in the same manner as
    infrun.c:follow_exec().
    
    Expand the idempotent test to cover PIE scenarios.
    
    gdb/ChangeLog:
    
    	* symfile.c (symbol_file_command): Call solib_create_inferior_hook.
    
    gdb/testsuite/ChangeLog:
    
    	* gdb.base/break-idempotent.exp: Test both PIE and non PIE.

commit 62a47958bd6e3cbd909c2f19cd4669a9670ce4f1
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Jul 8 10:06:09 2019 +0930

    PR24785, bfd crashes on empty .PPC.EMB.apuinfo section
    
    	PR 24785
    	* elf32-ppc.c (_bfd_elf_ppc_set_arch): Sanity check .PPC.EMB.apuinfo
    	size before reading first word.

commit 3836e1d1ab859b9f6c41bc4565ef779640b7c706
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Jul 8 10:05:39 2019 +0930

    Re: PowerPC notoc call stub tests
    
    Correct the tests for powerpc 32-bit targets.
    
    	* testsuite/ld-powerpc/callstub-1.d: Pass -melf64ppc to ld.
    	* testsuite/ld-powerpc/callstub-2.d: Likewise.

commit 55904abea47780ed16b4f726862ba1e14d05b96e
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Mon Jul 8 00:00:36 2019 +0000

    Automatic date update in version.in

commit 25c816e70e578b8a9abab0dada0490dd5ae41780
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Sun Jul 7 00:01:05 2019 +0000

    Automatic date update in version.in

commit 923cccf9bcc2b97298c2c0563326193948410311
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Sat Jul 6 00:00:25 2019 +0000

    Automatic date update in version.in

commit 98602811d838077269e361e9d807fe530c780011
Author: Jim Wilson <jimw@sifive.com>
Date:   Fri Jul 5 15:19:11 2019 +0800

    Kito's 5-part patch set to improve .insn support.
    
    	From Kito Cheng <kito.cheng@sifive.com>
    	gas/ChangeLog
    	* doc/c-riscv.texi (Instruction Formats): Add r4 type.
    	* testsuite/gas/riscv/insn.d: Add testcase for r4 type.
    	* testsuite/gas/riscv/insn.s: Ditto.
    	* doc/c-riscv.texi (Instruction Formats): Add b and j type.
    	* testsuite/gas/riscv/insn.d: Add test case for b and j type.
    	* testsuite/gas/riscv/insn.s: Ditto.
    	* testsuite/gas/riscv/insn.s: Correct instruction type for load
    	and store.
    	* testsuite/gas/riscv/insn.d: Using regular expression to match
    	address.
    	* doc/c-riscv.texi (Instruction Formats): Fix encoding table for SB
    	type and fix typo.
    	opcode/ChangeLog
    	* riscv-opc.c (riscv_insn_types): Add r4 type.
    	* riscv-opc.c (riscv_insn_types): Add b and j type.
    	* opcodes/riscv-opc.c (riscv_insn_types): Remove incorrect
    	format for sb type and correct s type.

commit a0b6cbf69db7427cfdf054092062fcf82eef9a58
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Fri Jul 5 00:00:16 2019 +0000

    Automatic date update in version.in

commit 0598af4880f58af5ce7c15419551362646892c7f
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Jun 25 14:42:49 2019 -0600

    Fix TUI use of "has_break" field
    
    The TUI uses the "has_break" in two different ways: sometimes as a
    boolean, and sometimes as flags.
    
    This patch changes the TUI to be more type-safe here, and fixes the
    code.  I could not find a bug that this caused, so apparently this is
    just cosmetic.
    
    This deletes some code from tui_set_disassem_content.  Whenver this is
    called, I believe the TUI updates the breakpoint information
    afterward, so this assignment is redundant; which is good because it
    is also incorrect.
    
    gdb/ChangeLog
    2019-07-04  Tom Tromey  <tom@tromey.com>
    
    	PR tui/24724:
    	* tui/tui-winsource.c (tui_clear_source_content): Update.
    	(tui_source_window_base::set_is_exec_point_at): Fix comment.
    	(tui_update_breakpoint_info): Update.
    	(tui_set_exec_info_content): Update.
    	* tui/tui-source.c (tui_set_source_content_nil): Update.
    	* tui/tui-disasm.c (tui_set_disassem_content): Don't set
    	has_break.
    	* tui/tui-data.h (enum tui_bp_flag): New.
    	(tui_bp_flags): New enum flags type.
    	(struct tui_source_element) <break_mode>: Change type.  Rename
    	from has_break.
    	(TUI_BP_ENABLED, TUI_BP_DISABLED, TUI_BP_HIT)
    	(TUI_BP_CONDITIONAL, TUI_BP_HARDWARE): Don't define.  Now enum
    	constants.
    	* tui/tui-winsource.h: Fix comment.

commit 213fd9faf563ce5726ce66c8104cbaba44ba9c09
Author: Pedro Alves <palves@redhat.com>
Date:   Thu Jul 4 16:45:23 2019 +0100

    Fix foreach_with_prefix regression
    
    Fix a silly bug in commit a26c8de0ee93 ("Fix early return in
    foreach_with_prefix").
    
    That patch made foreach_with_prefix always return after the first
    iteration, making ~10k tests disappear from test runs...
    
    This fixes it, and as penance, adds a testcase that exercises all
    kinds of different returns possible (ok, error, return, break,
    continue).  I've written it with regular "foreach", and then switched
    to foreach_with_prefix and made sure we get the same results.  I put
    the testcase in a new gdb.testsuite/ subdir, since this is exercising
    the testsuite harness bits.  We can move this elsewhere if people
    prefer a different place, but I'm going ahead in order to unbreak the
    testsuite ASAP.
    
    gdb/testsuite/ChangeLog:
    2019-07-04  Pedro Alves  <palves@redhat.com>
    
    	* lib/gdb.exp (foreach_with_prefix): Don't return early if
    	body returned ok(0), break(3) or continue(4).
    	* gdb.testsuite/foreach_with_prefix.exp: New file.

commit 350fab54163e2dd178609d268e80bf31042d182d
Author: Alan Hayward <alan.hayward@arm.com>
Date:   Tue Jun 25 11:02:32 2019 +0100

    Arm/AArch64: Use a single set of Arm register set size defines
    
    Both targets were using a mixture of defines and hardcoded values.
    Add a standard set in arch/arm.h and use throughout, ensuring that
    none of the existing sizes change.
    
    No functionality changes.
    
    gdb/ChangeLog:
    
    	* aarch32-linux-nat.h (VFP_REGS_SIZE): Remove define.
    	* aarch64-linux-nat.c (fetch_fpregs_from_thread)
    	(store_fpregs_to_thread)
    	(aarch64_linux_nat_target::read_description): Use ARM_VFP3_REGS_SIZE.
    	* arch/arm.h (IWMMXT_VEC_REGISTER_SIZE, ARM_CORE_REGS_SIZE)
    	(ARM_FP_REGS_SIZE, ARM_VFP2_REGS_SIZE, ARM_VFP3_REGS_SIZE)
    	(IWMMXT_REGS_SIZE): Add define.
    	* arm-linux-nat.c (IWMMXT_REGS_SIZE): Remove define.
    	(fetch_vfp_regs, store_vfp_regs)
    	(arm_linux_nat_target::read_description): Use ARM_VFP3_REGS_SIZE.
    	* arm-tdep.c (arm_register_g_packet_guesses): Use new defines.
    
    gdb/gdbserver/ChangeLog:
    
    	* linux-aarch32-low.c (arm_read_description, arm_regsets): Use new
    	defines.
    	* linux-arm-low.c (arm_read_description, arm_regsets): Likewise.

commit f0452268d6c7296106aba81f532b04dc08187352
Author: Alan Hayward <alan.hayward@arm.com>
Date:   Wed Jun 26 10:12:13 2019 +0100

    Arm: Prefix register sizes with ARM_
    
    Add ARM_ to the front of INT_REGISTER_SIZE, FP_REGISTER_SIZE and
    ARM_VFP_REGISTER_SIZE to make it obvious they are for the Arm target.
    Move the defines to arch/arm.h
    
    No functionality changes.
    
    gdb/ChangeLog:
    
    	* arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Use ARM_
    	defines.
    	* arch/arm-linux.c (arm_linux_sigreturn_next_pc_offset): Likewise.
    	* arch/arm.h (INT_REGISTER_SIZE) Rename from...
    	(ARM_INT_REGISTER_SIZE): ...to this.
    	(ARM_FP_REGISTER_SIZE) (ARM_VFP_REGISTER_SIZE): Add define.
    	* arm-linux-tdep.c (ARM_LINUX_JB_ELEMENT_SIZE)
    	(ARM_LINUX_SIZEOF_GREGSET, arm_linux_supply_gregset)
    	(arm_linux_collect_gregset, supply_nwfpe_register)
    	(collect_nwfpe_register, arm_linux_collect_nwfpe): Use ARM_
    	defines.
    	* arm-linux-tdep.h (ARM_LINUX_SIZEOF_NWFPE, NWFPE_FPSR_OFFSET)
    	(NWFPE_FPCR_OFFSET, NWFPE_TAGS_OFFSET): Likewise
    	* arm-nbsd-tdep.c (ARM_NBSD_JB_ELEMENT_SIZE): Likewise.
    	* arm-tdep.c (arm_push_dummy_call, arm_extract_return_value)
    	(arm_return_in_memory, arm_store_return_value)
    	(arm_get_longjmp_target, arm_register_g_packet_guesses)
    	(arm_record_ld_st_multiple): Likewise.
    	* arm-tdep.h (FP_REGISTER_SIZE, VFP_REGISTER_SIZE): Remove.
    	* arm-wince-tdep.c (ARM_WINCE_JB_ELEMENT_SIZE): Use ARM_ defines.

commit e935475cb6bcd8146717896e88824ae93a0897c7
Author: Alan Hayward <alan.hayward@arm.com>
Date:   Thu Jul 4 12:41:20 2019 +0100

    Arm/AArch64: Split DISPLACED_MODIFIED_INSNS name clash
    
    Both targets define DISPLACED_MODIFIED_INSNS, each with different values.
    Add ARM_ and AARCH64_ to the start of the name to prevent confusion.
    
    No functionality changes.
    
    gdb/ChangeLog:
    
    	* aarch64-linux-tdep.c (aarch64_linux_init_abi): Use
    	AARCH64_DISPLACED_MODIFIED_INSNS.
    	* aarch64-tdep.c (struct aarch64_displaced_step_data)
    	(aarch64_displaced_step_copy_insn): Likewise.
    	* aarch64-tdep.h (DISPLACED_MODIFIED_INSNS): Rename from..
    	(AARCH64_DISPLACED_MODIFIED_INSNS): ...to this.
    	* arm-linux-tdep.c (arm_linux_cleanup_svc): Use
    	ARM_DISPLACED_MODIFIED_INSNS.
    	* arm-tdep.c (arm_gdbarch_init): Likewise.
    	* arm-tdep.h (DISPLACED_MODIFIED_INSNS): Rename from..
    	(ARM_DISPLACED_MODIFIED_INSNS): ...to this.
    	(struct arm_displaced_step_closure): Use
    	ARM_DISPLACED_MODIFIED_INSNS.

commit df0bb381e27a8b1594c492a34c48ff6e6bbd29d1
Author: Alan Hayward <alan.hayward@arm.com>
Date:   Thu Jul 4 11:53:25 2019 +0100

    i386/AArch64: Remove unused xml files
    
    Remove all the xml files that are no longer used by gdbserver,
    and remove their entries from the makefile.
    
    gdb/ChangeLog:
    
    	* features/Makefile: Remove unused xml files.
    	* features/aarch64.xml: Remove.
    	* features/i386/amd64-avx-avx512-linux.xml: Remove.
    	* features/i386/amd64-avx-avx512.xml: Remove.
    	* features/i386/amd64-avx-linux.xml: Remove.
    	* features/i386/amd64-avx-mpx-avx512-pku-linux.xml: Remove.
    	* features/i386/amd64-avx-mpx-avx512-pku.xml: Remove.
    	* features/i386/amd64-avx-mpx-linux.xml: Remove.
    	* features/i386/amd64-avx-mpx.xml: Remove.
    	* features/i386/amd64-avx.xml: Remove.
    	* features/i386/amd64-linux.xml: Remove.
    	* features/i386/amd64-mpx-linux.xml: Remove.
    	* features/i386/amd64-mpx.xml: Remove.
    	* features/i386/amd64.xml: Remove.
    	* features/i386/i386-avx-avx512-linux.xml: Remove.
    	* features/i386/i386-avx-avx512.xml: Remove.
    	* features/i386/i386-avx-linux.xml: Remove.
    	* features/i386/i386-avx-mpx-avx512-pku-linux.xml: Remove.
    	* features/i386/i386-avx-mpx-avx512-pku.xml: Remove.
    	* features/i386/i386-avx-mpx-linux.xml: Remove.
    	* features/i386/i386-avx-mpx.xml: Remove.
    	* features/i386/i386-avx.xml: Remove.
    	* features/i386/i386-linux.xml: Remove.
    	* features/i386/i386-mmx-linux.xml: Remove.
    	* features/i386/i386-mmx.xml: Remove.
    	* features/i386/i386-mpx-linux.xml: Remove.
    	* features/i386/i386-mpx.xml: Remove.
    	* features/i386/i386.xml: Remove.
    	* features/i386/x32-avx-avx512-linux.xml: Remove.
    	* features/i386/x32-avx-linux.xml: Remove.
    	* features/i386/x32-linux.xml: Remove.

commit edd6266ab14004b02065ad9fb98b1da323a41981
Author: Alan Hayward <alan.hayward@arm.com>
Date:   Thu Jul 4 11:52:56 2019 +0100

    i386/AArch64: Remove unused .dat files
    
    Remove all the dat files that are no longer used by gdbserver.
    
    gdb/ChangeLog:
    
    	* regformats/aarch64.dat: Remove.
    	* regformats/i386/amd64-avx-avx512-linux.dat: Remove.
    	* regformats/i386/amd64-avx-linux.dat: Remove.
    	* regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Remove.
    	* regformats/i386/amd64-avx-mpx-linux.dat: Remove.
    	* regformats/i386/amd64-linux.dat: Remove.
    	* regformats/i386/amd64-mpx-linux.dat: Remove.
    	* regformats/i386/amd64.dat: Remove.
    	* regformats/i386/i386-avx-avx512-linux.dat: Remove.
    	* regformats/i386/i386-avx-linux.dat: Remove.
    	* regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Remove.
    	* regformats/i386/i386-avx-mpx-linux.dat: Remove.
    	* regformats/i386/i386-linux.dat: Remove.
    	* regformats/i386/i386-mmx-linux.dat: Remove.
    	* regformats/i386/i386-mpx-linux.dat: Remove.
    	* regformats/i386/i386.dat: Remove.
    	* regformats/i386/x32-avx-avx512-linux.dat: Remove.
    	* regformats/i386/x32-avx-linux.dat: Remove.
    	* regformats/i386/x32-linux.dat: Remove.

commit 2b40fda74b2af11a914d50f4e54c1472e1bd81fb
Author: Alan Hayward <alan.hayward@arm.com>
Date:   Thu Jul 4 11:48:16 2019 +0100

    i386/AArch64: Remove old xml tests
    
    Both the i386, X86_64 and AArch64 builds of gdbserver include a bunch of legacy
    xml files, dat files and auto generated C files, when building for unit test.
    
    These tests exists back from when feature target descriptions were added to
    prove that the new target descriptions were identical to the original
    older versions. The old files are not used for anything other than these tests.
    
    Now that this has been proven, we are not gaining anything by keeping the
    original files and tests. Should new functionality be added, it would break
    the tests, unless the functionality was backported to the xml. There is no
    requirement that we must match the exact xml from N releases ago.  It adds
    obfuscation, where as the feature target descriptions were meant to simplify
    the code.
    
    In addition, there are a bunch of xml and dat files which are completely unused.
    
    This patch removes the selftests and the target descriptions from gdbserver.
    
    Update the unittest to allow 0 tests (note, this failed on other targets that
    never had any tests).
    
    gdb/ChangeLog:
    
    	* aarch64-tdep.c: Remove xml self tests.
    	* amd64-linux-tdep.c: Likewise.
    	* amd64-tdep.c: Likewise.
    	* i386-linux-tdep.c: Likewise.
    	* i386-tdep.c: Likewise.
    
    gdb/gdbserver/ChangeLog:
    
    	* configure.srv: Remove legacy xml.
    	* linux-aarch64-low.c (initialize_low_arch): Remove
    	initialize_low_tdesc call.
    	* linux-aarch64-tdesc-selftest.c: Remove file.
    	* linux-aarch64-tdesc.h (initialize_low_tdesc): Remove.
    	* linux-x86-low.c (initialize_low_arch): Remove
    	initialize_low_tdesc call.
    	* linux-x86-tdesc-selftest.c: Remove file.
    	* linux-x86-tdesc.h (initialize_low_tdesc): Remove.
    
    gdb/testsuite/ChangeLog:
    
    	* gdb.server/unittest.exp: Allow 0 unit tests to run.

commit d4693039f950eefb983a66e3270209b738e4ce8a
Author: Jan Beulich <jbeulich@suse.com>
Date:   Thu Jul 4 10:36:41 2019 +0200

    x86: correct "-Q" option handling
    
    For another patch I wanted to use a sufficiently benign option (simply
    to be able to specify one, which certain test case invocations require),
    and I stumbled across -Q in the --help output.  Before realizing that
    this is x86-specific anyway, I've tried and and ran into a mysterious
    testsuite failure, until I further realized that other than the help
    text suggests the option requires an argument.  Correct the help text,
    and make the implementation actually match what the comment there has
    been describing (and what the help text now says).

commit f2d4ba38f5723a207c40a288036af2f38b70e837
Author: Jan Beulich <jbeulich@suse.com>
Date:   Thu Jul 4 10:35:47 2019 +0200

    gas/ELF: don't accumulate .type settings
    
    Recently a patch was submitted for a Xen Project test harness binary to
    override the compiler specified @object to @func (see [1]). In a reply I
    suggested we shouldn't make ourselves dependent on currently unspecified
    behavior of gas here: It accumulates all requests, and then
    bfd/elf.c:swap_out_syms(), in an apparently ad hoc manner, prioritizes
    certain flags over others.
    
    Make the behavior predictable: Generally the last .type is what counts.
    Exceptions are directives which set multiple bits (TLS, IFUNC, and
    UNIQUE): Subsequent directives requesting just the more generic bit
    (i.e. FUNC following IFUNC) won't clear the more specific one.  Warn
    about incompatible changes, except from/to STT_NOTYPE.
    
    Also add a new target hook, which hppa wants to use right away afaict.
    
    In the course of adding the warning I ran into two ld testsuite
    failures.  I can only assume that it was a copy-and-paste mistake that
    lead to the same symbol having its type set twice.
    
    [1] https://lists.xenproject.org/archives/html/xen-devel/2019-05/msg01980.html

commit db7fbcbeb749c0d4ea19284438d62b253648c58a
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Thu Jul 4 00:00:37 2019 +0000

    Automatic date update in version.in

commit a26c8de0ee938a48bc6f6232cdfac1a5eabaa778
Author: Pedro Alves <palves@redhat.com>
Date:   Wed Jul 3 18:05:20 2019 +0100

    Fix early return in foreach_with_prefix
    
    I noticed that an early return in a foreach_with_prefix block does not
    cause the outer scope to return, like:
    
      foreach_with_prefix var {"foo" "bar"} {
         return
      }
      # Control continues here, but it should not.
    
    The problem is that we're missing the usual "return -code" treatment.
    This commit fixes it.
    
    gdb/testsuite/ChangeLog:
    2019-07-03  Pedro Alves  <palves@redhat.com>
    
    	* lib/gdb.exp (foreach_with_prefix): Use "catch" and
    	"return -code".

commit 5f4ba3e701d74f280d4bd8820d9c39a854e0d2cf
Author: Pedro Alves <palves@redhat.com>
Date:   Wed Jul 3 16:57:51 2019 +0100

    pipe command completer
    
    This commit adds a completer for the "pipe" command.  It can complete
    "pipe"'s options, and the specified GDB command.
    
    To make the completer aware of the "-d" option, this converts the
    option processing to use gdb::option.
    
    Tests included.
    
    gdb/ChangeLog:
    2019-07-03  Pedro Alves  <palves@redhat.com>
    
    	PR cli/24732
    	* cli/cli-cmds.c (struct pipe_cmd_opts): New.
    	(pipe_cmd_option_defs): New.
    	(make_pipe_cmd_options_def_group): New.
    	(pipe_command): Use gdb::option::process_options.
    	(pipe_command_completer): New function.
    	(_initialize_cli_cmds): Install completer for "pipe" command.
    
    gdb/testsuite/ChangeLog:
    2019-07-03  Pedro Alves  <palves@redhat.com>
    
    	PR cli/24732
    	* gdb.base/shell.exp: Load completion-support.exp.
    	Adjust expected error output.  Add completion tests.

commit a994424fa1e80d982644038f1ce6538e247aeed1
Author: Pedro Alves <palves@redhat.com>
Date:   Wed Jul 3 16:57:50 2019 +0100

    Fix latent bug in test_gdb_complete_cmd_multiple
    
    A following patch will add the following to a testcase:
    
      test_gdb_completion_offers_commands "| "
    
    And that tripped on a latent testsuite bug:
    
     (gdb) | PASS: gdb.base/shell.exp: tab complete "| "
     ^CQuit
     (gdb) complete |
     | !
     | +
     PASS: gdb.base/shell.exp: cmd complete "| "
     |  *** List may be truncated, max-completions reached. ***
     (gdb) FAIL: gdb.base/shell.exp: set max-completions 200
     set max-completions 200
    
    The issue is that "|" ends up as part of a regexp, and "|" in regexps
    has a special meaning...
    
    Fix this with string_to_regexp.
    
    gdb/testsuite/ChangeLog:
    2019-07-03  Pedro Alves  <palves@redhat.com>
    
    	* lib/completion-support.exp (test_gdb_complete_cmd_multiple): Use
    	string_to_regexp.

commit 3d9be6f531db395a5ad940ef06e56d849f4de646
Author: Pedro Alves <palves@redhat.com>
Date:   Wed Jul 3 16:57:49 2019 +0100

    Teach gdb::option about string options
    
    A following patch will make the "pipe" command use the gdb::option
    framework for option processing.  However, "pipe"'s only option today
    is a string option, "-d DELIM", and gdb::option does not support
    string options yet.
    
    This commit adds support for string options, mapped to var_string.
    For now, a string is parsed up until the first whitespace.  I imagine
    that we'll need to add support for quoting so that we could do:
    
     (gdb) cmd -option 'some -string'
    
    without gdb confusing the "-string" for an option.
    
    This doesn't seem important for pipe, so I'm leaving it for another
    day.
    
    One thing I'm not happy with, is that the string data is managed as a
    raw malloc-allocated char *, which means that we need to xfree it
    manually.  This is because var_string settings work that way too.
    Although with var_string settings we're leaking the strings at gdb
    exit, that was never really a problem.  For options though, leaking is
    undesirable.
    
    I think we should tackle that for both settings and options at the
    same time, so for now I'm just managing the malloced data manually.
    It's a bit ugly in option_def_and_value, but at least that's hidden
    from view.
    
    For testing, this adds a new "-string" option to "maint
    test-settings", and then tweaks gdb.base/options.exp to exercise it.
    
    gdb/ChangeLog:
    2019-07-03  Pedro Alves  <palves@redhat.com>
    
    	* cli/cli-option.c (union option_value) <string>: New field.
    	(struct option_def_and_value): Add ctor, move ctor, dtor and
    	use DISABLE_COPY_AND_ASSIGN.
    	(option_def_and_value::clear_value): New.
    	(parse_option, save_option_value_in_ctx, get_val_type_str)
    	(add_setshow_cmds_for_options): Handle var_string.
    	* cli-option.h (union option_def::var_address) <string>: New
    	field.
    	(struct string_option_def): New.
    	* maint-test-options.c (struct test_options_opts): Add default
    	ctor and use DISABLE_COPY_AND_ASSIGN.
    	<string_opt>: New field.
    	(test_options_opts::~test_options_opts): New.
    	(test_options_opts::dump): Also dump "-string".
    	(test_options_option_defs): Install "string.
    
    gdb/testsuite/ChangeLog:
    2019-07-03  Pedro Alves  <palves@redhat.com>
    
    	* gdb.base/options.exp (expect_none, expect_flag, expect_bool)
    	(expect_integer): Adjust to expect "-string".
    	(expect_string): New.
    	(all_options): Expect "-string".
    	(test-flag, test-boolean): Adjust to expect "-string".
    	(test-string): New proc.
    	(top level): Call it.

commit 41fc454c915057d9c5536617370c5eb2a5f71323
Author: Pedro Alves <palves@redhat.com>
Date:   Wed Jul 3 16:57:48 2019 +0100

    Make gdb::option::complete_options save processed arguments too
    
    Currently, gdb::option::complete_options just discards any processed
    option argument, because no completer needs that data.
    
    When completing "pipe -d XXX gdbcmd XXX" however, the completer needs
    to know about -d's argument (XXX), in order to know where input is
    already past the gdb command and the delimiter.
    
    In this commit, the fix for that is the factoring out of the
    save_option_value_in_ctx function and calling it in complete_options.
    
    For testing, this makes "maint show test-options-completion-result"
    show the processed options too, like what the "maint test-options"
    subcommands output when run.  Then, of course, gdb.base/options.exp is
    adjusted.
    
    Doing this exposed a couple latent bugs, which is what the other gdb
    changes in the patch are for:
    
     - in the var_enum case, without the change, we'd end up with a null
       enum argument, and print:
    
         "-enum (null)"
    
     - The get_ulongest change is necessary to avoid advancing PP in a
       case where we end up throwing an error, e.g., when parsing "11x".
       Without the change the operand pointer shown by "maint show
       test-options-completion-result" would be left pointing at "x"
       instead of "11x".
    
    gdb/ChangeLog:
    2019-07-03  Pedro Alves  <palves@redhat.com>
    
    	* cli/cli-option.c (parse_option) <var_enum>: Don't return an
    	option_value with a null enumeration.
    	(complete_options): Save the option values in the context.
    	(save_option_value_in_ctx): New, factored out from ...
    	(process_options): ... here.
    	* cli/cli-utils.c (get_ulongest): Don't advance PP until the end
    	of the function.
    	* maint-test-options.c (test_options_opts::dump): New, factored
    	out from ...
    	(maintenance_test_options_command_mode): ... here.
    	(maintenance_test_options_command_completion_result): Delete.
    	(maintenance_test_options_command_completion_text): Update
    	comment.
    	(maintenance_show_test_options_completion_result): Change
    	prototype.  Just print
    	maintenance_test_options_command_completion_text.
    	(save_completion_result): New.
    	(maintenance_test_options_completer_mode): Pass options context to
    	complete_options, and then save a dump.
    	(_initialize_maint_test_options): Use add_cmd to install "maint
    	show test-options-completion-result".
    
    gdb/testsuite/ChangeLog:
    2019-07-03  Pedro Alves  <palves@redhat.com>
    
    	* gdb.base/options.exp (test-misc, test-flag, test-boolean)
    	(test-uinteger, test-enum): Adjust res_test_gdb_... calls to pass
    	the expected output in the success.

commit b2b2a2159876fa8db57ce017b949cafc6f1a32df
Author: Pedro Alves <palves@redhat.com>
Date:   Wed Jul 3 16:57:48 2019 +0100

    Fix test_gdb_complete_tab_multiple race
    
    Running 'make check-read1 TESTS="gdb.base/options.exp"' revealed a
    race in test_gdb_complete_tab_multiple.  There's a gdb_test_multiple
    call that expects a prompt in the middle of the regexp.  That's racy
    because gdb_test_multiple includes a built-in FAIL pattern for the
    prompt, which may match if gdb is slow enough to produce the rest of
    the output after the prompt.
    
    Fix this in the usual way of splitting the matching in two.
    
    gdb/testsuite/ChangeLog:
    2019-07-03  Pedro Alves  <palves@redhat.com>
    
    	* lib/completion-support.exp (test_gdb_complete_tab_multiple):
    	Split one gdb_test_multiple call in two to avoid a race.

commit 077a039f70d870899da31eb8cee597964515fa3c
Author: Nick Clifton <nickc@redhat.com>
Date:   Wed Jul 3 15:26:32 2019 +0100

    Fix assembler tests to work with toolchains that have been configured with --enable-generate-build-notes.

commit fdbc98707b0ab48fd8ca3ac37acefa120496baf6
Author: Pedro Alves <palves@redhat.com>
Date:   Wed Jul 3 13:34:20 2019 +0100

    Introduce the "with" command
    
    ( See original discussion and prototype here:
       https://sourceware.org/ml/gdb-patches/2019-05/msg00570.html )
    
     (gdb) help with
     Temporarily set SETTING to VALUE, run COMMAND, and restore SETTING.
     Usage: with SETTING [VALUE] [-- COMMAND]
     Usage: w SETTING [VALUE] [-- COMMAND]
     With no COMMAND, repeats the last executed command.
     SETTING is any setting you can change with the "set" subcommands.
     E.g.:
       with language pascal -- print obj
       with print elements unlimited -- print obj
    
    As can be seen above, the "with" command is just like "set", but
    instead of setting the setting permanently, it sets the setting, runs
    a command and then restores the setting.
    
     (gdb) p g_s
     $1 = {a = 1, b = 2, c = 3}
     (gdb) with language ada -- print g_s
     $2 = (a => 1, b => 2, c => 3)
     Warning: the current language does not match this frame.
     (gdb) show language
     The current source language is "auto; currently c".
     (gdb) with print elements 100 -- with print object on -- print 1
     $3 = 1
    
    You can shorten things a bit though, as long as unambiguous.  So this:
    
     (gdb) with print elements 100 -- with print object off -- print 1
    
    is the same as:
    
     (gdb) w p el 100 -- w p o 0 -- p 1
    
    Note that the patch adds a "w" alias for "with", as "w" is not
    currently taken:
    
     (gdb) w
     Ambiguous command "w": watch, wh, whatis, where, while, while-stepping, winheight, ws.
    
    Let me know if you'd prefer to reserve "w" for one of the other
    commands above.  IMHO, this command will end up being used frequently
    enough that it deserves the "w" shorthand.
    
    A nice feature is that this is fully integrated with TAB-completion:
    
     (gdb) with p[TAB]
     pagination  print       prompt      python
     (gdb) with print [TAB]
     address                max-depth              static-members
     array                  max-symbolic-offset    symbol
     array-indexes          null-stop              symbol-filename
     asm-demangle           object                 symbol-loading
     demangle               pascal_static-members  thread-events
     elements               pretty                 type
     entry-values           raw                    union
     frame-arguments        repeats                vtbl
     inferior-events        sevenbit-strings
     (gdb) with print [TAB]
    
     (gdb) with print elements unlimited -- thread apply all -[TAB]
     -ascending  -c          -q          -s
    
     (gdb) with print elements unlimited -- print -[TAB]
     -address         -max-depth       -repeats         -vtbl
     -array           -null-stop       -static-members
     -array-indexes   -object          -symbol
     -elements        -pretty          -union
    
    The main advantage of this new command compared to command options,
    like the new "print -OPT", is that this command works with any
    setting, and, it works nicely when you want to override a setting
    while running a user-defined command, like:
    
     (gdb) with print pretty -- usercmd
    
    The disadvantage is that it isn't as compact or easy to type.  I think
    of command options and this command as complementary.  I think that
    even with this new command, it makes sense to continue developing the
    command options in the direction of exposing most-oft-used settings as
    command options.
    
    Inspired by Philippe's "/" command proposal, if no command is
    specified, then the last command is re-invoked, under the overridden
    setting:
    
     (gdb) p g_s
     $1 = {a = 1, b = 2, c = 3}
     (gdb) with language ada
     $2 = (a => 1, b => 2, c => 3)
     Warning: the current language does not match this frame.
    
    Note: "with" requires "--" to separate the setting from the command.
    It might be possible to do without that, but, I haven't tried it yet,
    and I think that this can go in without it.  We can always downgrade
    to making "--" optional if we manage to make it work.
    
    On to the patch itself, the implementation of the command is simpler
    than one might expect.  A few details:
    
    - I factored out a bit from pipe_command into repeat_previous
      directly, because otherwise I'd need to copy&paste the same code and
      same error message in the with command.
    
    - The parse_cli_var_uinteger / parse_cli_var_zuinteger_unlimited /
      do_set_command changes are necessary since we can now pass an empty
      string as argument.
    
    - do_show_command was split in two, as a FIXME comment suggests, but
      for a different reason: we need to get a string version of a "set"
      command's value, and we already had code for that in
      do_show_command.  That code is now factored out to the new
      get_setshow_command_value_string function.
    
    - There's a new "maint with" command added too:
    
       (gdb) help maint with
       Like "with", but works with "maintenance set" variables.
       Usage: maintenance with SETTING [VALUE] [-- COMMAND]
       With no COMMAND, repeats the last executed command.
       SETTING is any setting you can change with the "maintenance set"
       subcommands.
    
      "with" and "maint with" share 99% of the implementation.
    
      This might be useful on its own, but it's also useful for testing,
      since with this, we can use the "maint set/show test-settings"
      settings for exercising the "with" machinery with all the command
      type variants (all enum var_types).  This is done in the new
      gdb/base/with.exp testcase.
    
    The documentation bits are originally based on Philippe's docs for the
    "/" command, hence the attribution in the ChangeLog.
    
    gdb/ChangeLog:
    2019-07-03  Pedro Alves  <palves@redhat.com>
    
    	* NEWS (New commands): Mention "with" and "maint with".
    	* cli/cli-cmds.c (with_command_1, with_command_completer_1)
    	(with_command, with_command_completer): New.
    	(pipe_command): Adjust to new repeat_previous
    	interface.
    	(_initialize_cli_cmds): Install the "with" command and its "w"
    	alias.
    	* cli/cli-cmds.h (with_command_1, with_command_completer_1): New
    	declarations.
    	* cli/cli-setshow.c (parse_cli_var_uinteger)
    	(parse_cli_var_zuinteger_unlimited, do_set_command): Handle empty
    	argument strings for all var_types.
    	(get_setshow_command_value_string): New, factored out from ...
    	(do_show_command): ... this.
    	* cli/cli-setshow.h: Include <string>.
    	(get_setshow_command_value_string): Declare.
    	* command.h (repeat_previous): Now returns const char *.  Adjust
    	comment.
    	* maint.c: Include "cli/cli-cmds.h".
    	(maintenance_with_cmd, maintenance_with_cmd_completer): New.
    	(_initialize_maint_cmds): Register the "maintenance with" command.
    	* top.c (repeat_previous): Move bits from pipe_command here:
    	Return the saved command line, if any; error out if there's no
    	command to relaunch.
    
    gdb/doc/ChangeLog:
    2019-07-03  Pedro Alves  <palves@redhat.com>
    	    Philippe Waroquiers  <philippe.waroquiers@skynet.be>
    
    	* gdb.texinfo (Command Settings): New node documenting the general
    	concept of settings, how to change them, and the new "with"
    	command.
    	(Maintenance Commands): Document "maint with".
    
    gdb/testsuite/ChangeLog:
    2019-07-03  Pedro Alves  <palves@redhat.com>
    
    	* gdb.base/with.c: New file.
    	* gdb.base/with.exp: New file.

commit c6ac893109fdc2c3fce2b7457adccdc10f235354
Author: Pedro Alves <palves@redhat.com>
Date:   Wed Jul 3 13:34:19 2019 +0100

    "maint test-settings set/show" -> "maint set/show test-settings"
    
    This commit renames "maint test-settings set/show" to "maint set/show
    test-settings".
    
    This helps the following patch, which introduce a "maint with" command
    what works with all "maint set" settings.
    
    gdb/ChangeLog:
    2019-07-03  Pedro Alves  <palves@redhat.com>
    
    	* NEWS (New commands): Mention "maint set/show test-settings"
    	instead of "maint test-settings".
    	* maint-test-settings.c (maintenance_test_settings_list): Delete.
    	(maintenance_test_settings_set_list): Rename to ...
    	(maintenance_set_test_settings_list): ... this.
    	(maintenance_test_settings_show_list): Rename to  ...
    	(maintenance_show_test_settings_list): ... this.
    	(maintenance_test_settings_cmd): Delete.
    	(maintenance_test_settings_set_cmd): ...
    	(maintenance_set_test_settings_cmd): ... this.
    	(maintenance_test_settings_show_cmd): ...
    	(maintenance_show_test_settings_cmd): ... this.
    	(maintenance_test_settings_show_value_cmd):
    	(maintenance_show_test_settings_value_cmd): ... this.
    	(_initialize_maint_test_settings): No longer install the "maint
    	test-settings" prefix command.  Rename "maint test-settings set"
    	to "maint set test-settings", and "maint test-settings show" to
    	"maint show test-settings".  Adjust all subcommands.
    
    gdb/doc/ChangeLog:
    2019-07-03  Pedro Alves  <palves@redhat.com>
    
    	* gdb.texinfo (Maintenance Commands): Document "maint set/show
    	test-settings" instead of "maint test-settings set/show".
    
    gdb/testsuite/ChangeLog:
    2019-07-03  Pedro Alves  <palves@redhat.com>
    
    	* gdb.base/settings.exp: Replace all references to "maint
    	test-settings set" with references to "maint set test-settings",
    	and all references to "maint test-settings show" with references
    	to "maint show test-settings".

commit d1fcf2fded9a5a54d0714ae01b60ccb57e75b8b5
Author: Pedro Alves <palves@redhat.com>
Date:   Wed Jul 3 13:34:18 2019 +0100

    Fix a few comments in maint-test-settings.c
    
    Fix the file's intro comment, and s/test-options/test-settings/.
    
    gdb/ChangeLog:
    2019-07-03  Pedro Alves  <palves@redhat.com>
    
    	* maint-test-settings.c: Fix file's intro comment.  Replace all
    	references to "test-options" with references to "test-settings",
    	in comments.

commit 970f9d091dae835304d1a96805bdb5c081a40b48
Author: Pedro Alves <palves@redhat.com>
Date:   Wed Jul 3 13:34:17 2019 +0100

    Fix defaults of some "maint test-settings" subcommands
    
    New tests added later for the incoming "with" command exposed a couple
    invalid-default-value bugs in the "maint test-settings" commands:
    
    - var_filename commands don't allow setting the filename to the empty
      string (unlike var_optional_filename commands), yet, "maint
      test-settings filename"'s control variable was not initialized, so
      on startup, "maint test-settings show filename" shows an empty
      string.
    
    - "maint test-settings enum"'s control variable was not initialized,
      so on startup, "maint test-settings show enum" shows an empty value
      instead of a valid enum value.
    
    Both issues are fixed by initializing the control variables.
    
    gdb/ChangeLog:
    2019-07-03  Pedro Alves  <palves@redhat.com>
    
    	* maint-test-settings.c (maintenance_test_settings_xxx)
    	(maintenance_test_settings_yyy, maintenance_test_settings_zzz):
    	New.
    	(maintenance_test_settings_enums): Use them.
    	(maintenance_test_settings_enum): Default to
    	maintenance_test_settings_xxx.
    	(_initialize_maint_test_settings): Initialize
    	MAINTENANCE_TEST_SETTINGS_FILENAME.
    
    gdb/testsuite/ChangeLog:
    2019-07-03  Pedro Alves  <palves@redhat.com>
    
    	* gdb.base/settings.exp (test-string): Adjust expected out when
    	testing "maint test-settings show filename"

commit f3869b1a41a809f208b964ee00cea74bd905b75f
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date:   Tue Jul 2 22:03:09 2019 -0400

    Remove return value from remove_breakpoints_inf
    
    ... since nobody uses it.
    
    gdb/ChangeLog:
    
    	* breakpoint.h (remove_breakpoints_inf): Change return type to
    	void, move function documentation here.
    	* breakpoint.c (remove_breakpoints_inf): Change return type to
    	void, move function documentation to header.

commit 9be796f35b68aee81dc81e1c9b7410067ac0cd42
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Wed Jul 3 00:00:24 2019 +0000

    Automatic date update in version.in

commit 54d6600669256d2b3582d7088d11ab18f6f21f0d
Author: Pedro Alves <palves@redhat.com>
Date:   Tue Jul 2 16:34:31 2019 +0100

    Make "info threads" use the gdb::option framework
    
    This makes "info threads" use the gdb::option framework to process
    options.  There's only one option today (-gid), and it isn't used much
    frequently unless you're looking at matching MI output.  Still, this
    was in the neighborhood of "thread apply" so I had converted it.
    
    The main advantage is that TAB completion now shows you the available
    options, and gives you a hint to what the command accepts as operand
    argument, including showing a metasyntactic variable:
    
      (gdb) info threads [TAB]
      -gid  ID
    
      (gdb) help info threads
      Display currently known threads.
      Usage: info threads [OPTION]... [ID]...
    
      Options:
        -gid
          Show global thread IDs.
    
      If ID is given, it is a space-separated list of IDs of threads to display.
      Otherwise, all threads are displayed.
      (gdb)
    
    gdb/ChangeLog:
    2019-07-02  Pedro Alves  <palves@redhat.com>
    
    	* NEWS (Completion improvements): Mention "info threads".
    	* thread.c (struct info_threads_opts, info_threads_option_defs)
    	(make_info_threads_options_def_group): New.
    	(info_threads_command): Use gdb::option::process_options.
    	(info_threads_command_completer): New.
    	(_initialize_thread): Use gdb::option::build_help to build the
    	help text for "info threads".
    
    gdb/testsuite/ChangeLog:
    2019-07-02  Pedro Alves  <palves@redhat.com>
    
    	* gdb.base/options.exp (test-info-threads): New procedure.
    	(top level): Call it.

commit 1faa385ff6b11df26efc46152fe15b31adbf8624
Author: Nick Clifton <nickc@redhat.com>
Date:   Tue Jul 2 15:58:29 2019 +0100

    Stop the BFD library from issuing a warning message when processing allocated sections in debuginfo files that lie outside of any loadable segment.
    
    	PR 24717
    	* elf.c (is_debuginfo_file): New function.
    	(assign_file_positions_for_non_load_sections): Do not warn about
    	allocated sections outside of loadable segments if they are found
    	in a debuginfo file.
    	* elf-bfd.h (is_debuginfo_file): Prototype.

commit 854f60884cc35806dab1c0f9e7711c45cefaf7fc
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date:   Tue Jul 2 10:30:46 2019 -0400

    Move generic_load declaration to symfile.h
    
    ... since the implementation is in symfile.c.
    
    At the same time, add some documentation and make sure the first
    parameter's name in the declaration matches the definition.
    
    gdb/ChangeLog:
    
    	* defs.h (generic_load): Move from here...
    	* symfile.h (generic_load): ... to here.  Rename name parameter
    	to args.
    	* symfile.c (generic_load): Add comment.

commit 125f83f66c10c89530d011f4f81324b1f43afcda
Author: Nick Clifton <nickc@redhat.com>
Date:   Tue Jul 2 14:14:13 2019 +0100

    Fix a bug recently introduced to the linker where it would complain about a section being larger than a file, even if the section was artificial.
    
    	PR 24753
    bfd	* compress.c (bfd_get_full_section_contents): Do not complain
    	about linker created sections that are larger than the file size.
    
    ld	* emultempl/aarch64elf.em (_aarch64_add_stub_section): Include the
    	LINKER_CREATED section flag when creating the stub section.

commit 163b2c58bdbf0cba9a085574ae88d4c757c6567d
Author: Barnaby Wilks <barnaby.wilks@arm.com>
Date:   Tue Jul 2 14:09:52 2019 +0100

    This patch fixes a bug in the AArch64 assembler where an incorrect structural load/store by element instruction would generate the wrong error message.
    
    For example, when provided with the (incorrect) instruction
    
    st4 {v0.16b-v3.16b}[4],[x0]
    
    currently assembler provides the following error message
    "Error: comma expected between operands at operand 2 -- `st4 {v0.16b-v3.16b}[4],[x0]'".
    
    This was due to the assembler consuming the {v0.16b-v3.16b} as the first operand leaving
    [4],[x0] as what it believed to be the second operand.
    
    The actual error is that the first operand should be of element type and not
    vector type (as provided). The new diagnostic for this error is
    "Error: expected element type rather than vector type at operand 1 -- `st4 {v0.16b-v3.16b}[4],[x0]'.
    
    Added testcases to check for the correct diagnostic message as well as checking that
    variations of the structural load/store by element instruction also generate the error
    when they have the same problem.
    
    	* config/tc-aarch64.c (parse_operands): Add error check.
    	* testsuite/gas/aarch64/diagnostic.l: New test.
    	* testsuite/gas/aarch64/diagnostic.s: New test.
    	* testsuite/gas/aarch64/illegal.l: New tests.
    	* testsuite/gas/aarch64/illegal.s: New tests.

commit 4d83e8d97e3b15dcd7b5c58f4199e9f5bd6fca3d
Author: Christophe Lyon <christophe.lyon@linaro.org>
Date:   Tue Jul 2 13:09:02 2019 +0000

    PR ld/24709 [arm] linker crash and assertion failure with CMSE
    
    As discussed in the PR, we do not support the case where CMSE stubs
    are inserted too far from their destination. This would require an
    intermediate long-branch stub, which is tricky in this context.
    
    Instead of crashing, this patch emit an error message and exits.
    
    2019-07-02  Christophe Lyon  <christophe.lyon@linaro.org>
    
    	* bfd/elf32-arm.c (CMSE_STUB_NAME): New define.
    	(elf32_arm_get_stub_entry): Do not try to emit long-branch stubs
    	for CMSE stubs.
    	(arm_dedicated_stub_output_section_name): Use CMSE_STUB_NAME.
    
    Change-Id: I6d4e1c0fdee6bb9f4b07e5e1b46700b5ba31c62e

commit bb32413ff7247f5ac3685ca9075b3432bca69a82
Author: Srinath Parvathaneni <srinath.parvathaneni@arm.com>
Date:   Tue Jul 2 12:43:59 2019 +0100

    Ensure that debug information is retained for ARMv8-M security functions.
    
    Consider a file containing only Armv8-M secure entry functions.
    This file is compiled and linked with "-march=armv8-m.main -mfloat-abi=hard
    -mfpu=fpv5-sp-d16 -mcmse -static --specs=rdimon.specs
    -Wl,--section-start,.gnu.sgstubs=0x190000 -ffunction-sections
    -fdata-sections
    -Wl,--gc-sections -g" options to generate an executable.
    
    The executable generated does not contain any debug information of these
    secure entry functions even though it contains secure entry functions in
    the .text section.  This patch fixes this problem.

commit 01c1ee4a70478178eb37e46692a02fb846a2f77b
Author: Richard Sandiford <richard.sandiford@arm.com>
Date:   Tue Jul 2 10:52:16 2019 +0100

    [AArch64] Allow MOVPRFX to be used with FMOV
    
    The entry for the FMOV alias of FCPY was missing C_SCAN_MOVPRFX.
    (The entry for FCPY itself was OK.)
    
    This was the only /m-predicated instruction I could see that was
    missing the flag.
    
    2019-07-02  Richard Sandiford  <richard.sandiford@arm.com>
    
    opcodes/
    	* aarch64-tbl.h (aarch64_opcode): Set C_SCAN_MOVPRFX for the
    	SVE FMOV alias of FCPY.
    
    gas/
    	* testsuite/gas/aarch64/sve-movprfx_27.s,
    	* testsuite/gas/aarch64/sve-movprfx_27.d: New test.

commit 83adff695c522df8259e421162e194a95713eb45
Author: Richard Sandiford <richard.sandiford@arm.com>
Date:   Tue Jul 2 10:51:09 2019 +0100

    [AArch64] Add missing C_MAX_ELEM flags for SVE conversions
    
    SVE FCVTZS, FCVTZU, SCVTF and UCVTF need the same treatment as FCVT:
    the register size used in a predicated MOVPRFX must be the wider of
    the destination and source sizes.
    
    Since I was adding a (supposedly) complete set of tests for converts,
    it seemed more consistent to add a complete set of tests for shifts
    as well, even though there's no bug to fix there.
    
    2019-07-02  Richard Sandiford  <richard.sandiford@arm.com>
    
    opcodes/
    	* aarch64-tbl.h (aarch64_opcode_table): Add C_MAX_ELEM flags
    	to SVE fcvtzs, fcvtzu, scvtf and ucvtf entries.
    
    gas/
    	* testsuite/gas/aarch64/sve-movprfx_26.s: Also test FCVTZS, FCVTZU,
    	SCVTF, UCVTF, LSR and ASR.
    	* testsuite/gas/aarch64/sve-movprfx_26.d: Update accordingly.
    	* testsuite/gas/aarch64/sve-movprfx_26.l: Likewise.

commit 8941884429c305ad42a41f759a98c8cca4d4aacc
Author: Richard Sandiford <richard.sandiford@arm.com>
Date:   Tue Jul 2 10:51:05 2019 +0100

    [AArch64] Fix bogus MOVPRFX warning for GPR form of CPY
    
    One of the MOVPRFX tests has:
    
      output register of preceding `movprfx' used as input at operand 3 -- `cpy z1.d,p1/m,x1'
    
    But X1 and Z1 are not the same register, so the instruction is
    actually OK.
    
    2019-07-02  Richard Sandiford  <richard.sandiford@arm.com>
    
    opcodes/
    	* aarch64-opc.c (verify_constraints): Skip GPRs when scanning the
    	registers in an instruction prefixed by MOVPRFX.
    
    gas/
    	* testsuite/gas/aarch64/sve-movprfx_25.s: Allow CPY Z1.D.P1/M,X1
    	to be prefixed by MOVPRFX.
    	* testsuite/gas/aarch64/sve-movprfx_25.d: Update accordingly.
    	* testsuite/gas/aarch64/sve-movprfx_25.l: Likewise.

commit 390b205f456be85e309570f1b6e9b75f27194de7
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Tue Jul 2 00:00:38 2019 +0000

    Automatic date update in version.in

commit 54ee425275c759438d90c40781e3810a551f0a5f
Author: Tom Tromey <tromey@adacore.com>
Date:   Mon Jul 1 09:33:19 2019 -0600

    Avoid use-after-free in DWARF debug names code
    
    A static analyzer pointed out that find_vec_in_debug_names will use
    the contents of a unique_ptr after it has been destroyed.  This patch
    fixes the bug by hoisting the declaration into the appropriate
    enclosing block.
    
    I'm checking this in as obvious.
    
    gdb/ChangeLog
    2019-07-01  Tom Tromey  <tromey@adacore.com>
    
    	* dwarf2read.c
    	(dw2_debug_names_iterator::find_vec_in_debug_names): Hoist
    	declaration of without_params.  Fix formatting.

commit 269b4ded72af1fa05236f866b518f05cf2d408a6
Author: Nick Clifton <nickc@redhat.com>
Date:   Mon Jul 1 16:19:14 2019 +0100

    Fix bug when generating REL type relocs for assembler generated build notes.
    
    	PR 24748
    	* write.c (create_note_reloc): Add desc2_offset parameter.  Change
    	name of offset parameter to note_offset.  Only use desc2_offset
    	when placing addend into REL reloc's address space.
    	(maybe_generate_build_notes): Update parameters passed to
    	create_note_reloc.

commit 41be57caf36943d71ccc6ea70be27a4939399118
Author: Matthew Malcomson <matthew.malcomson@arm.com>
Date:   Mon Jul 1 15:17:22 2019 +0100

    [gas][aarch64][SVE2] Fix pmull{t,b} requirement on SVE2-AES
    
    I had mistakenly given all variants of the new SVE2 instructions
    pmull{t,b} a dependency on the feature +sve2-aes.
    
    Only the variant specifying .Q -> .D  sizes should have that
    restriction.
    
    This patch fixes that mistake and updates the testsuite to have extra
    tests (matching the given set of tests per line in aarch64-tbl.h that
    the rest of the SVE2 tests follow).
    
    We also add a line in the documentation of the command line to clarify
    how to enable `pmull{t,b}` of this larger size.  This is needed because
    all other instructions gated under the `sve2-aes` architecture extension
    are marked in the instruction documentation by an `HaveSVE2AES` check
    while pmull{t,b} is gated under the `HaveSVE2PMULL128` check.
    
    Regtested targeting aarch64-linux.
    
    gas/ChangeLog:
    
    2019-07-01  Matthew Malcomson  <matthew.malcomson@arm.com>
    
    	* testsuite/gas/aarch64/illegal-sve2-aes.d: Update tests.
    	* testsuite/gas/aarch64/illegal-sve2.l: Update tests.
    	* doc/c-aarch64.texi: Add special note of pmull{t,b}
    	instructions under the sve2-aes architecture extension.
    	* testsuite/gas/aarch64/illegal-sve2.s: Add small size
    	pmull{t,b} instructions.
    	* testsuite/gas/aarch64/sve2.d: Add small size pmull{t,b}
    	disassembly.
    	* testsuite/gas/aarch64/sve2.s: Add small size pmull{t,b}
    	instructions.
    
    include/ChangeLog:
    
    2019-07-01  Matthew Malcomson  <matthew.malcomson@arm.com>
    
    	* opcode/aarch64.h (enum aarch64_insn_class): sve_size_013
    	renamed to sve_size_13.
    
    opcodes/ChangeLog:
    
    2019-07-01  Matthew Malcomson  <matthew.malcomson@arm.com>
    
    	* aarch64-asm.c (aarch64_encode_variant_using_iclass): Use new
    	sve_size_13 icode to account for variant behaviour of
    	pmull{t,b}.
    	* aarch64-dis-2.c: Regenerate.
    	* aarch64-dis.c (aarch64_decode_variant_using_iclass): Use new
    	sve_size_13 icode to account for variant behaviour of
    	pmull{t,b}.
    	* aarch64-tbl.h (OP_SVE_VVV_HD_BS): Add new qualifier.
    	(OP_SVE_VVV_Q_D): Add new qualifier.
    	(OP_SVE_VVV_QHD_DBS): Remove now unused qualifier.
    	(struct aarch64_opcode): Split pmull{t,b} into those requiring
    	AES and those not.

commit 65392b3edd1f6873204a4890efc286c8970abf4e
Author: Tom Tromey <tromey@adacore.com>
Date:   Thu Jun 27 09:05:17 2019 -0600

    Remove is_a_field_of_this from ada_lookup_symbol
    
    All callers of ada_lookup_symbol pass NULL for the
    "is_a_field_of_this" parameter, so remove it.
    
    gdb/ChangeLog
    2019-07-01  Tom Tromey  <tromey@adacore.com>
    
    	* ada-exp.y (find_primitive_type): Update.
    	* ada-lang.h (ada_lookup_symbol): Update.
    	* ada-lang.c (ada_lookup_symbol): Remove "is_a_field_of_this"
    	parameter.
    	(ada_lookup_encoded_symbol, ada_lookup_symbol_nonlocal): Update.

commit f2f51cd5f511fc562f830818ec4467d8c3cced56
Author: Nick Clifton <nickc@redhat.com>
Date:   Mon Jul 1 12:39:09 2019 +0100

    Document the .value directive supported by the x86 and x86_64 assemblers.
    
    	PR 24738
    	* doc/c-i386.texi (i386-Directives): Add a description of the
    	Value directive.

commit a6ce99e98738289658d830def1b6eb9546ab551e
Author: Nick Clifton <nickc@redhat.com>
Date:   Mon Jul 1 12:24:46 2019 +0100

    Correct a typo in the description of the Align and P2align directives.
    
    	PR 24737
    	* doc/as.texi (Align): Add missing word to description of
    	pseudo-op.
    	(P2align): Likewise.

commit 539300fb929ada830ec7c4002fd59f0d86c823b1
Author: Nick Clifton <nickc@redhat.com>
Date:   Mon Jul 1 11:17:01 2019 +0100

    Correct the calculation of offsets for ARM exidx relocs when performing a partial link.
    
    	PR 23839
    bfd	* elf32-arm.c (elf32_arm_update_relocs): Do not include the
    	section VMA in the offset used to update exidx relocs.
    
    ld	* testsuite/ld-arm/unwind-4.d: Adjust for corrected calculation of
    	exidx relocs.

commit f57cf0e3e357255959d00626bce5c21396e23212
Author: Nick Alcock <nick.alcock@oracle.com>
Date:   Fri Jun 28 22:11:14 2019 +0100

    libctf: fix spurious error when rolling back to the first snapshot
    
    The first ctf_snapshot called after CTF file creation yields a snapshot
    handle that always yields a spurious ECTF_OVERROLLBACK error ("Attempt
    to roll back past a ctf_update") on ctf_rollback(), even if ctf_update
    has never been called.
    
    The fix is to start with a ctf_snapshot value higher than the zero value
    that ctf_snapshot_lu ("last update CTF snapshot value") is initialized
    to.
    
    libctf/
    	* ctf-create.c (ctf_create): Fix off-by-one error.

commit f5e9c9bde04ae52b92027b78c9ca20055f1afb78
Author: Nick Alcock <nick.alcock@oracle.com>
Date:   Thu Jun 27 13:51:10 2019 +0100

    libctf: deduplicate and sort the string table
    
    ctf.h states:
    
    > [...] the CTF string table does not contain any duplicated strings.
    
    Unfortunately this is entirely untrue: libctf has before now made no
    attempt whatsoever to deduplicate the string table. It computes the
    string table's length on the fly as it adds new strings to the dynamic
    CTF file, and ctf_update() just writes each string to the table and
    notes the current write position as it traverses the dynamic CTF file's
    data structures and builds the final CTF buffer.  There is no global
    view of the strings and no deduplication.
    
    Fix this by erasing the ctf_dtvstrlen dead-reckoning length, and adding
    a new dynhash table ctf_str_atoms that maps unique strings to a list
    of references to those strings: a reference is a simple uint32_t * to
    some value somewhere in the under-construction CTF buffer that needs
    updating to note the string offset when the strtab is laid out.
    
    Adding a string is now a simple matter of calling ctf_str_add_ref(),
    which adds a new atom to the atoms table, if one doesn't already exist,
    and adding the location of the reference to this atom to the refs list
    attached to the atom: this works reliably as long as one takes care to
    only call ctf_str_add_ref() once the final location of the offset is
    known (so you can't call it on a temporary structure and then memcpy()
    that structure into place in the CTF buffer, because the ref will still
    point to the old location: ctf_update() changes accordingly).
    
    Generating the CTF string table is a matter of calling
    ctf_str_write_strtab(), which counts the length and number of elements
    in the atoms table using the ctf_dynhash_iter() function we just added,
    populating an array of pointers into the atoms table and sorting it into
    order (to help compressors), then traversing this table and emitting it,
    updating the refs to each atom as we go.  The only complexity here is
    arranging to keep the null string at offset zero, since a lot of code in
    libctf depends on being able to leave strtab references at 0 to indicate
    'no name'.  Once the table is constructed and the refs updated, we know
    how long it is, so we can realloc() the partial CTF buffer we allocated
    earlier and can copy the table on to the end of it (and purge the refs
    because they're not needed any more and have been invalidated by the
    realloc() call in any case).
    
    The net effect of all this is a reduction in uncompressed strtab sizes
    of about 30% (perhaps a quarter to a half of all strings across the
    Linux kernel are eliminated as duplicates). Of course, duplicated
    strings are highly redundant, so the space saving after compression is
    only about 20%: when the other non-strtab sections are factored in, CTF
    sizes shrink by about 10%.
    
    No change in externally-visible API or file format (other than the
    reduction in pointless redundancy).
    
    libctf/
    	* ctf-impl.h: (struct ctf_strs_writable): New, non-const version of
    	struct ctf_strs.
    	(struct ctf_dtdef): Note that dtd_data.ctt_name is unpopulated.
    	(struct ctf_str_atom): New, disambiguated single string.
    	(struct ctf_str_atom_ref): New, points to some other location that
    	references this string's offset.
    	(struct ctf_file): New members ctf_str_atoms and ctf_str_num_refs.
    	Remove member ctf_dtvstrlen: we no longer track the total strlen
    	as we add strings.
    	(ctf_str_create_atoms): Declare new function in ctf-string.c.
    	(ctf_str_free_atoms): Likewise.
    	(ctf_str_add): Likewise.
    	(ctf_str_add_ref): Likewise.
    	(ctf_str_purge_refs): Likewise.
    	(ctf_str_write_strtab): Likewise.
    	(ctf_realloc): Declare new function in ctf-util.c.
    
    	* ctf-open.c (ctf_bufopen): Create the atoms table.
    	(ctf_file_close): Destroy it.
    	* ctf-create.c (ctf_update): Copy-and-free it on update.  No longer
    	special-case the position of the parname string.  Construct the
    	strtab by calling ctf_str_add_ref and ctf_str_write_strtab after the
    	rest of each buffer element is constructed, not via open-coding:
    	realloc the CTF buffer and append the strtab to it.  No longer
    	maintain ctf_dtvstrlen.  Sort the variable entry table later, after
    	strtab construction.
    	(ctf_copy_membnames): Remove: integrated into ctf_copy_{s,l,e}members.
    	(ctf_copy_smembers): Drop the string offset: call ctf_str_add_ref
    	after buffer element construction instead.
    	(ctf_copy_lmembers): Likewise.
    	(ctf_copy_emembers): Likewise.
    	(ctf_create): No longer maintain the ctf_dtvstrlen.
    	(ctf_dtd_delete): Likewise.
    	(ctf_dvd_delete): Likewise.
    	(ctf_add_generic): Likewise.
    	(ctf_add_enumerator): Likewise.
    	(ctf_add_member_offset): Likewise.
    	(ctf_add_variable): Likewise.
    	(membadd): Likewise.
    	* ctf-util.c (ctf_realloc): New, wrapper around realloc that aborts
    	if there are active ctf_str_num_refs.
    	(ctf_strraw): Move to ctf-string.c.
    	(ctf_strptr): Likewise.
    	* ctf-string.c: New file, strtab manipulation.
    
    	* Makefile.am (libctf_a_SOURCES): Add it.
    	* Makefile.in: Regenerate.

commit 9658dc39630b8ac4e849fb529a53902da5fc2b1f
Author: Nick Alcock <nick.alcock@oracle.com>
Date:   Thu Jun 27 13:30:22 2019 +0100

    libctf: add hash traversal helpers
    
    There are two, ctf_dynhash_iter and ctf_dynhash_iter_remove: the latter
    lets you return a nonzero value to remove the element being iterated
    over.
    
    Used in the next commit.
    
    libctf/
    	* ctf-impl.h (ctf_hash_iter_f): New.
    	(ctf_dynhash_iter): New declaration.
    	(ctf_dynhash_iter_remove): New declaration.
    	* ctf-hash.c (ctf_dynhash_iter): Define.
    	(ctf_dynhash_iter_remove): Likewise.
    	(ctf_hashtab_traverse): New.
    	(ctf_hashtab_traverse_remove): Likewise.
    	(struct ctf_traverse_cb_arg): Likewise.
    	(struct ctf_traverse_remove_cb_arg): Likewise.

commit 3e10cffc9872fda4519f76ba487fd108551a179f
Author: Nick Alcock <nick.alcock@oracle.com>
Date:   Fri Jun 28 21:58:31 2019 +0100

    libctf: fix hash removal
    
    We must call htab_remove_elt with an element (in this case, a mocked-up
    one with only the key populated, since no reasonable hash function will
    need the other fields), not with the key alone.
    
    libctf/
    	* ctf-hash.c (ctf_dynhash_remove): Call with a mocked-up element.

commit c550e7ba937e6a5e04c17275efc362a74f8fd1b1
Author: Nick Alcock <nick.alcock@oracle.com>
Date:   Thu Jun 27 13:15:37 2019 +0100

    libctf: disambiguate hex output in dumps
    
    We were sometimes printing hex values without prefixing them with '0x',
    leading to confusion about what base the numbers were actually in.
    
    libctf/
    	* ctf-dump.c (ctf_dump_format_type): Prefix hex strings with 0x.
    	(ctf_dump_funcs): Likewise.

commit 900e33b9cf45dd70012af7fc509119edebb93339
Author: Nick Clifton <nickc@redhat.com>
Date:   Mon Jul 1 10:20:43 2019 +0100

    Fix spelling error in assembler documentation.

commit 9d3bf266fd601031d12584982ef43df22c95e933
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Jul 1 08:38:50 2019 +0200

    x86: drop Vec_Imm4
    
    It is pretty wasteful to have a per-operand flag which is used in
    exactly 4 cases. It can be relatively easily replaced, and by doing so
    I've actually found some dead code to remove at the same time (there's
    no case of ImmExt set at the same time as Vec_Imm4).

commit c3949f432f4f7e4a776bd15e10dad56593abeb47
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Jul 1 08:37:40 2019 +0200

    x86: limit ImmExt abuse
    
    In quite a few cases ImmExt gets used when there's not really any
    immediate, but rather a degenerate ModR/M byte. ENCL{S,U} show how this
    case is supposed to be dealt with. Eliminate most abuses, leaving in
    place (for now) only ones where process_immext() is involved.

commit 5641ec015a191e0584fd4cae57bb3262f7a51735
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Jul 1 08:35:08 2019 +0200

    x86: optimize AND/OR with twice the same register
    
    It seems to be not uncommon for people to use AND or OR in this form for
    just setting the status flags. TEST, which doesn't write to any
    register other than EFLAGS, ought to be preferred. Make the change only
    for -O2 and above though, at least for now.

commit 79dec6b7baa243a4ada018a082491990adb6aec1
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Jul 1 08:33:56 2019 +0200

    x86-64: optimize certain commutative VEX-encoded insns
    
    When they're in the 0F opcode space, swapping their source operands may
    allow switching from 3-byte to 2-byte VEX prefix encoding. Note that NaN
    behavior precludes us doing so for many packed and scalar floating point
    insns; such an optimization would need to be done by the compiler
    instead in this case, when it knows that NaN-s have undefined behavior
    anyway.
    
    While for explicitly specified AVX/AVX2 insns the optimization (for now
    at least) gets done only for -O2 and -Os, it is utilized by default in
    SSE2AVX mode, as there we're re-writing the programmer's specified insns
    anyway.
    
    Rather than introducing a new attribute flag, the change re-uses one
    which so far was meaningful only for EVEX-encoded insns.

commit a80195f1224aced64392b452d55980b6bbd2a8b9
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Jul 1 08:31:50 2019 +0200

    x86: StaticRounding implies SAE
    
    This implication allows to simplify some conditionals, thus slightly
    improving performance. This change also paves the way for re-using
    StaticRounding for non-EVEX insns.

commit a0a1771e895e6606a2a795c407e20aed73f69bd9
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Jul 1 08:31:14 2019 +0200

    x86: optimize EVEX packed integer logical instructions
    
    As long as there's no write mask as well as no broadcast, and as long
    as the scaled Disp8 wouldn't result in a shorter EVEX encoding, encode
    VPAND{D,Q}, VPANDN{D,Q}, VPOR{D,Q}, and VPXOR{D,Q} acting on only the
    lower 16 XMM/YMM registers using their VEX equivalents with -O1.
    
    Also take the opportunity and avoid looping twice over all operands
    when dealing with memory-with-displacement ones.

commit cd546e7bd2832c882e69809fdbeb7b376b62039e
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Jul 1 08:28:58 2019 +0200

    x86: add missing pseudo ops for VPCLMULQDQ ISA extension
    
    While the ISA extensions doc suggests them to be made available just
    like the SDM does for the PCLMULQDQ ISA extension, these weren't added
    when supposrt for the new extension was introduced.
    
    Also make sure the 64-bit non-AVX512 test actually tests VEX encodings,
    not EVEX ones.

commit e3bba3fc751d2f8eea5a25b3f629b0d62257db86
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Jul 1 08:27:38 2019 +0200

    x86: drop bogus Disp8MemShift attributes
    
    In commit dc821c5f9a ("x86: replace Reg8, Reg16, Reg32, and Reg64") I
    apparently blindly copied the original register/memory templates into
    separate ones, in particular without removing the Disp8MemShift which
    are applicable to templates with memory operands only.

commit d583596cc910249eff97e8f9b67c6524fb68af72
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Jul 1 08:25:33 2019 +0200

    x86: use encoding_length() also elsewhere

commit 9c33702be70a7db648414775faa4850e7cf53034
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Jul 1 08:24:57 2019 +0200

    x86: warn about insns exceeding the 15-byte limit
    
    Such insns will cause #UD when an attempt to execute them is made.
    
    See also http://www.sandpile.org/x86/opc_enc.htm.

commit 36cc073ef40f2cb9cb834cdb5d543fbb284f2b32
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Jul 1 08:23:41 2019 +0200

    x86: remove ModRM.mod decoding layer from AVX512F VMOVS{S,D}
    
    Just like their AVX counterparts they can utilize XMVexScalar /
    EXdVexScalarS / EXqVexScalarS taking care of dropping the middle operand
    for their memory forms.

commit 219920a7c49069e30a7be2b166099bf795837a6d
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Jul 1 08:22:37 2019 +0200

    x86: drop a few dead macros

commit c444fad6da089b5b94ae7ea2aabce0521695a8d3
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Mon Jul 1 00:00:41 2019 +0000

    Automatic date update in version.in

commit 7f1c798dcc79c969d0e94bb787faa75cdf704b46
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Sun Jun 30 00:01:04 2019 +0000

    Automatic date update in version.in

commit d6954c38df90637bc1b0cc2b20473e2754e5eff7
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Sat Jun 29 00:00:22 2019 +0000

    Automatic date update in version.in

commit 7d7571f0c14b4673ca95f6dc31d6f07d429e6697
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date:   Wed Jun 26 17:34:50 2019 -0400

    Adjust i386 registers on SystemTap probes' arguments (PR breakpoints/24541)
    
    This bug has been reported on PR breakpoints/24541, but it is possible
    to reproduce it easily by running:
    
      make check-gdb TESTS=gdb.base/stap-probe.exp RUNTESTFLAGS='--target_board unix/-m32'
    
    The underlying cause is kind of complex, and involves decisions made
    by GCC and the sys/sdt.h header file about how to represent a probe
    argument that lives in a register in 32-bit programs.  I'll use
    Andrew's example on the bug to illustrate the problem.
    
    libstdc++ has a probe named "throw" with two arguments.  On i386, the
    probe is:
    
      stapsdt              0x00000028       NT_STAPSDT (SystemTap probe descriptors)
        Provider: libstdcxx
        Name: throw
        Location: 0x00072c96, Base: 0x00133d64, Semaphore: 0x00000000
        Arguments: 4@%si 4@%di
    
    I.e., the first argument is an unsigned 32-bit value (represented by
    the "4@") that lives on %si, and the second argument is an unsigned
    32-bit value that lives on %di.  Note the discrepancy between the
    argument size reported by the probe (32-bit) and the register size
    being used to store the value (16-bit).
    
    However, if you take a look at the disassemble of a program that uses
    this probe, you will see:
    
        00072c80 <__cxa_throw@@CXXABI_1.3>:
           72c80:       57                      push   %edi
           72c81:       56                      push   %esi
           72c82:       53                      push   %ebx
           72c83:       8b 74 24 10             mov    0x10(%esp),%esi
           72c87:       e8 74 bf ff ff          call   6ec00 <__cxa_finalize@plt+0x980>
           72c8c:       81 c3 74 e3 10 00       add    $0x10e374,%ebx
           72c92:       8b 7c 24 14             mov    0x14(%esp),%edi
           72c96:       90                      nop                      <----------------- PROBE IS HERE
           72c97:       e8 d4 a2 ff ff          call   6cf70 <__cxa_get_globals@plt>
           72c9c:       83 40 04 01             addl   $0x1,0x4(%eax)
           72ca0:       83 ec 04                sub    $0x4,%esp
           72ca3:       ff 74 24 1c             pushl  0x1c(%esp)
           72ca7:       57                      push   %edi
           72ca8:       56                      push   %esi
           72ca9:       e8 62 a3 ff ff          call   6d010 <__cxa_init_primary_exception@plt>
           72cae:       8d 70 40                lea    0x40(%eax),%esi
           72cb1:       c7 00 01 00 00 00       movl   $0x1,(%eax)
           72cb7:       89 34 24                mov    %esi,(%esp)
           72cba:       e8 61 96 ff ff          call   6c320 <_Unwind_RaiseException@plt>
           72cbf:       89 34 24                mov    %esi,(%esp)
           72cc2:       e8 c9 84 ff ff          call   6b190 <__cxa_begin_catch@plt>
           72cc7:       e8 d4 b3 ff ff          call   6e0a0 <_ZSt9terminatev@plt>
           72ccc:       66 90                   xchg   %ax,%ax
           72cce:       66 90                   xchg   %ax,%ax
    
    Note how the program is actually using %edi, and not %di, to store the
    second argument.  This is the problem here.
    
    GDB will basically read the probe argument, then read the contents of
    %di, and then cast this value to uint32_t, which causes the wrong
    value to be obtained.  In the gdb.base/stap-probe.exp case, this makes
    GDB read the wrong memory location, and not be able to display a test
    string.  In Andrew's example, this causes GDB to actually stop at a
    "catch throw" when it should actually have *not* stopped.
    
    After some discussion with Frank Eigler and Jakub Jelinek, it was
    decided that this bug should be fixed on the client side (i.e., the
    program that actually reads the probes), and this is why I'm proposing
    this patch.
    
    The idea is simple: we will have a gdbarch method, which, for now, is
    only used by i386.  The generic code that deals with register operands
    on gdb/stap-probe.c will call this method if it exists, passing the
    current parse information, the register name and its number.
    
    The i386 method will then verify if the register size is greater or
    equal than the size reported by the stap probe (the "4@" part).  If it
    is, we're fine.  Otherwise, it will check if we're dealing with any of
    the "extendable" registers (like ax, bx, si, di, sp, etc.).  If we
    are, it will change the register name to include the "e" prefix.
    
    I have tested the patch here in many scenarios, and it fixes Andrew's
    bug and also the regressions I mentioned before, on
    gdb.base/stap-probe.exp.  No regressions where found on other tests.
    
    Comments?
    
    gdb/ChangeLog:
    2019-06-27  Sergio Durigan Junior  <sergiodj@redhat.com>
    
    	PR breakpoints/24541
    	* gdbarch.c: Regenerate.
    	* gdbarch.h: Regenerate.
    	* gdbarch.sh: Add 'stap_adjust_register'.
    	* i386-tdep.c: Include '<unordered_set>'.
    	(i386_stap_adjust_register): New function.
    	(i386_elf_init_abi): Register 'i386_stap_adjust_register'.
    	* stap-probe.c (stap_parse_register_operand): Call
    	'gdbarch_stap_adjust_register'.

commit 5af5392a3d1525fb825747b203a6159ddcba0aa4
Author: Sergio Durigan Junior <sergiodj@redhat.com>
Date:   Thu Jun 27 13:14:26 2019 -0400

    Fix crash when using PYTHONMALLOC=debug (PR python/24742)
    
    This bug was originally reported against Fedora GDB:
    
      https://bugzilla.redhat.com/show_bug.cgi?id=1723564
    
    The problem is that GDB will crash in the following scenario:
    
    - PYTHONMALLOC=debug or PYTHONDEVMODE=1 is set.
    
    - The Python debuginfo is installed.
    
    - GDB is used to debug Python.
    
    The crash looks like this:
    
      $ PYTHONMALLOC=debug gdb -args python3 -c pass
      GNU gdb (GDB) Fedora 8.3-3.fc30
      Reading symbols from python3...
      Reading symbols from /usr/lib/debug/usr/bin/python3.7m-3.7.3-3.fc30.x86_64.debug...
      (gdb) run
      Starting program: /usr/bin/python3 -c pass
      Missing separate debuginfos, use: dnf debuginfo-install glibc-2.29-9.fc30.x86_64
      Debug memory block at address p=0x5603977bf330: API ''
          8098648152243306496 bytes originally requested
          The 7 pad bytes at p-7 are not all FORBIDDENBYTE (0xfb):
    	  at p-7: 0x03 *** OUCH
    	  at p-6: 0x00 *** OUCH
    	  at p-5: 0x00 *** OUCH
    	  at p-4: 0x00 *** OUCH
    	  at p-3: 0x00 *** OUCH
    	  at p-2: 0x00 *** OUCH
    	  at p-1: 0x00 *** OUCH
          Because memory is corrupted at the start, the count of bytes requested
    	 may be bogus, and checking the trailing pad bytes may segfault.
          The 8 pad bytes at tail=0x706483999ad1f330 are Segmentation fault (core dumped)
    
    It's hard to determine what happens, but after doing some
    investigation and talking to Victor Stinner I found that GDB should
    not use the Python memory allocation functions before the Python
    interpreter is initialized (which makes sense).  However, we do just
    that on python/python.c:do_start_initialization:
    
      ...
      progsize = strlen (progname.get ());
      progname_copy = (wchar_t *) PyMem_Malloc ((progsize + 1) * sizeof (wchar_t));
      ...
      /* Note that Py_SetProgramName expects the string it is passed to
         remain alive for the duration of the program's execution, so
         it is not freed after this call.  */
      Py_SetProgramName (progname_copy);
      ...
      Py_Initialize ();
      PyEval_InitThreads ();
    
    Upon reading the Python 3 C API documentation, I
    found (https://docs.python.org/3.5/c-api/memory.html):
    
      To avoid memory corruption, extension writers should never try to
      operate on Python objects with the functions exported by the C
      library: malloc(), calloc(), realloc() and free(). This will result in
      mixed calls between the C allocator and the Python memory manager with
      fatal consequences, because they implement different algorithms and
      operate on different heaps. However, one may safely allocate and
      release memory blocks with the C library allocator for individual
      purposes[...]
    
    And Py_SetProgramName seems like a very simple call that doesn't need
    a Python-allocated memory to work on.  So I'm proposing this patch,
    which simply replaces PyMem_Malloc by xmalloc.
    
    Testing this is more complicated.  First, the crash is completely
    non-deterministic; I was able to reproduce it 10 times in a row, and
    then I wasn't able to reproduce it anymore.  I found that if you
    completely remove your build directory and rebuild GDB from scratch,
    you can reproduce it again confidently.  And with my patch, I
    confirmed that the bug doesn't manifest even in this situation.
    
    No regressions found.
    
    OK to apply?
    
    gdb/ChangeLog:
    2019-06-28  Sergio Durigan Junior  <sergiodj@redhat.com>
    
    	PR python/24742
    	https://bugzilla.redhat.com/show_bug.cgi?id=1723564
    	* python/python.c (do_start_initialization): Use 'xmalloc'
    	instead of 'PyMem_Malloc'.

commit 10d06d821919474afaf59fa24cb10450d2349131
Author: Tom Tromey <tromey@adacore.com>
Date:   Thu Jun 20 13:50:15 2019 -0600

    Handle either order of name and linkage name
    
    We discovered that the Ada support in gdb depends on the order of the
    DW_AT_name and DW_AT_linkage_name attributes in the DWARF.  In
    particular, if they are emitted in the "wrong" order for some system
    symbols, "catch exception" will not work.
    
    This patch fixes this problem by arranging to always prefer the
    linkage name if both exist.  This seems to be what the full symbol
    reader already does -- that is, this is another bug arising from
    having two different DWARF readers.
    
    Another possible issue here is that gdb still doesn't really preserve
    mangled names properly.  There's a PR open about this.  However, this
    seems to be somewhat involved to fix, which is why this patch
    continues to work around the bigger issue.
    
    gdb/ChangeLog
    2019-06-28  Tom Tromey  <tromey@adacore.com>
    
    	* dwarf2read.c (partial_die_info::read): Prefer the linkage name
    	for Ada.
    
    gdb/testsuite/ChangeLog
    2019-06-28  Tom Tromey  <tromey@adacore.com>
    
    	* gdb.dwarf2/ada-linkage-name.c: New file.
    	* gdb.dwarf2/ada-linkage-name.exp: New file.

commit 7e56c51c7932cfdb178e9457011d09d53e98937b
Author: Nick Clifton <nickc@redhat.com>
Date:   Fri Jun 28 15:30:43 2019 +0100

    Prevent attempts to allocate excessive amounts of memory when parsing corrupt ELF files.
    
    	PR 24708
    	* elf.c (_bfd_elf_slurp_version_tables): Check for an excessively
    	large version reference section.
    	* compress.c (bfd_get_full_section_contents): Check for an
    	uncompressed section whose size is larger than the file size.

commit 781152ec18f56726c750cc0812a740396e4ec820
Author: Nick Clifton <nickc@redhat.com>
Date:   Fri Jun 28 13:30:00 2019 +0100

    Prevent an attempt to allocate an excessive amount of memory when dumping the symbols in a malformed file.
    
    	PR 24707
    	* objdump.c (slurp_symtab): Fail with a helpful error message if
    	the symbol table is too large.

commit 999d6dff80fab12d22c2a8d91923db6bde7fb3e5
Author: Alan Modra <amodra@gmail.com>
Date:   Fri Jun 28 10:18:49 2019 +0930

    Plugin target handling
    
    This patch fixes failures with LTO on mingw32 targets.  Since git
    commit 7cf7fcc83c all possible targets (minus binary) are matched in
    bfd_check_format_matches rather than lower priority targets being
    excluded once a higher priority target matches.  During linking that
    results in the ld/plugin.c plugin_object_p function being called with
    the input file xvec set to plugin_vec, which means
    plugin_get_ir_dummy_bfd doesn't see the real format of the file
    (pe-i386).  It defaults to the output format instead, which happens to
    be pei-i386, and this wrong choice persists for the dummy bfd.
    pei-i386 isn't recognised as a valid linker input file.
    
    So, omit recognizing a plugin object in bfd_check_format_matches when
    some other object format matches, and make sure those other object
    formats are checked first.
    
    	* format.c (bfd_check_format_matches): Don't match plugin target
    	if another target matches.  Expand comment.
    	* targets.c (_bfd_target_vector): Move plugin_vec after all other
    	non-corefile targets, outside !SELECT_VECS.
    	* config.bfd: Don't handle targ=plugin here.
    	* configure.ac: Don't add plugin to enable_targets or handle in
    	target loop setting selvecs and other target vars.
    	* configure: Regenerate.

commit f60c61e60e59c2bfc5fdd1b448408c2af287899e
Author: Alan Modra <amodra@gmail.com>
Date:   Fri Jun 28 10:18:03 2019 +0930

    [GOLD] PowerPC tweak relnum tests
    
    There is a call of relocate() to perform a single relocation.  In that
    case the "relnum" parameter is -1U and of course it isn't appropriate
    to consider any of the PowerPC code sequence optimisations triggered
    by a following relocation.
    
    	* powerpc.cc (Target_powerpc::Relocate::relocate): Don't look
    	at next/previous reloc when relnum is -1.

commit f073a3e8c6735bd8fc24d35a957d8944087ea367
Author: Alan Modra <amodra@gmail.com>
Date:   Fri Jun 28 10:17:45 2019 +0930

    [GOLD] PowerPC linkage table error
    
    This fixes a segfault when attempring to output a "linkage table
    error".  "object" is only non-NULL in the local symbol case.
    
    	* powerpc.cc (Stub_table::plt_error): New function.
    	(Stub_table::do_write): Use it.
    	(Output_data_glink::do_write): Don't segfault emitting linkage
    	table error.

commit c432bbbaaa072438e6303b819bdcb4289c2b22e0
Author: Alan Modra <amodra@gmail.com>
Date:   Fri Jun 28 10:17:08 2019 +0930

    [GOLD] R_PPC64_REL16_HIGH relocs
    
    These relocs have been around for quite a while.  It's past time gold
    supported them.
    
    elfcpp/
    	* powerpc.h (R_PPC64_REL16_HIGH, R_PPC64_REL16_HIGHA),
    	(R_PPC64_REL16_HIGHER, R_PPC64_REL16_HIGHERA),
    	(R_PPC64_REL16_HIGHEST, R_PPC64_REL16_HIGHESTA): Define.
    
    gold/
    	* powerpc.cc (Target_powerpc::Scan::get_reference_flags): Handle
    	REL16_HIGH* relocs.
    	(Target_powerpc::Scan::local): Likewise.
    	(Target_powerpc::Scan::global): Likewise.
    	(Target_powerpc::Relocate::relocate): Likewise.

commit 60d53d7f032ad7af09760afbaf01b2ec413f198a
Author: Alan Modra <amodra@gmail.com>
Date:   Fri Jun 28 10:15:57 2019 +0930

    PowerPC notoc call stub tests
    
    	* testsuite/ld-powerpc/callstub-1.d,
    	* testsuite/ld-powerpc/callstub-1.s: New test.
    	* testsuite/ld-powerpc/callstub-2.d,
    	* testsuite/ld-powerpc/callstub-2.s: New test.
    	* testsuite/ld-powerpc/powerpc.exp: Run them.

commit 0c823d25a6eb29b331a58082e08f4b5fe06e1394
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Fri Jun 28 00:00:56 2019 +0000

    Automatic date update in version.in

commit e395f487b3758b3de99fddd2ef15a799e9fc1203
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Thu Jun 27 13:39:19 2019 -0700

    i386: Check vector length for scatter/gather prefetch instructions
    
    Since not all vector lengths are supported by scatter/gather prefetch
    instructions, decode them only with supported vector lengths.
    
    gas/
    
    	PR binutils/24719
    	* testsuite/gas/i386/disassem.s: Add test for vgatherpf0dps
    	with invalid vector length.
    	* testsuite/gas/i386/x86-64-disassem.s: Likewise.
    	* testsuite/gas/i386/disassem.d: Updated.
    	* testsuite/gas/i386/x86-64-disassem.d: Likewise.
    
    opcodes/
    
    	PR binutils/24719
    	* i386-dis-evex-len.h: Add EVEX_LEN_0F38C6_REG_1_PREFIX_2,
    	EVEX_LEN_0F38C6_REG_2_PREFIX_2, EVEX_LEN_0F38C6_REG_5_PREFIX_2,
    	EVEX_LEN_0F38C6_REG_6_PREFIX_2, EVEX_LEN_0F38C7_R_1_P_2_W_0,
    	EVEX_LEN_0F38C7_R_1_P_2_W_1, EVEX_LEN_0F38C7_R_2_P_2_W_0,
    	EVEX_LEN_0F38C7_R_2_P_2_W_1, EVEX_LEN_0F38C7_R_5_P_2_W_0,
    	EVEX_LEN_0F38C7_R_5_P_2_W_1, EVEX_LEN_0F38C7_R_6_P_2_W_0 and
    	EVEX_LEN_0F38C7_R_6_P_2_W_1.
    	* i386-dis-evex-prefix.h: Update PREFIX_EVEX_0F38C6_REG_1,
    	PREFIX_EVEX_0F38C6_REG_2, PREFIX_EVEX_0F38C6_REG_5 and
    	PREFIX_EVEX_0F38C6_REG_6 entries.
    	* i386-dis-evex-w.h: Update EVEX_W_0F38C7_R_1_P_2,
    	EVEX_W_0F38C7_R_2_P_2, EVEX_W_0F38C7_R_5_P_2 and
    	EVEX_W_0F38C7_R_6_P_2 entries.
    	* i386-dis.c: Add EVEX_LEN_0F38C6_REG_1_PREFIX_2,
    	EVEX_LEN_0F38C6_REG_2_PREFIX_2, EVEX_LEN_0F38C6_REG_5_PREFIX_2,
    	EVEX_LEN_0F38C6_REG_6_PREFIX_2, EVEX_LEN_0F38C7_R_1_P_2_W_0,
    	EVEX_LEN_0F38C7_R_1_P_2_W_1, EVEX_LEN_0F38C7_R_2_P_2_W_0,
    	EVEX_LEN_0F38C7_R_2_P_2_W_1, EVEX_LEN_0F38C7_R_5_P_2_W_0,
    	EVEX_LEN_0F38C7_R_5_P_2_W_1, EVEX_LEN_0F38C7_R_6_P_2_W_0 and
    	EVEX_LEN_0F38C7_R_6_P_2_W_1 enums.

commit 1b7f24cd6b4e96c64bf82eba06be2c48942699fa
Author: Tom Tromey <tromey@adacore.com>
Date:   Wed Jun 26 11:41:00 2019 -0600

    Change arm_objfile_data_key to use type-safe registry
    
    After seeing Simon's patch to change arm_per_objfile to use new and
    delete, I realized it is now simple to change arm_objfile_data_key to
    use the type-safe registry.
    
    gdb/ChangeLog
    2019-06-27  Tom Tromey  <tromey@adacore.com>
    
    	* arm-tdep.c (arm_objfile_data_key): Move lower.  Change type to
    	objfile_key.
    	(arm_find_mapping_symbol, arm_record_special_symbol)
    	(_initialize_arm_tdep): Update.
    	(arm_objfile_data_free): Remove.

commit 3d507ff23b724ecb2b9a5a61cebd0fba275cfbc3
Author: Tom Tromey <tromey@adacore.com>
Date:   Tue Jun 18 09:37:02 2019 -0600

    Fix two buglets in cp_print_value_fields patch
    
    Pedro and Tom both pointed out issues in the cp_print_value_fields
    patch, aka the fix for PR c++/20020.
    
    This patch addresses both issues.  Tested on x86-64 Fedora 29.
    
    gdb/ChangeLog
    2019-06-27  Tom Tromey  <tromey@adacore.com>
    
    	* cp-valprint.c (cp_print_value_fields): Pass opts, not options,
    	to cp_print_static_field.
    
    gdb/testsuite/ChangeLog
    2019-06-27  Tom Tromey  <tromey@adacore.com>
    
    	* gdb.cp/constexpr-field.exp: Use setup_xfail.

commit ba85f98c42877287f45644a6d75513239c9490a5
Author: Barnaby Wilk  s <barnaby.wilks@arm.com>
Date:   Thu Jun 27 14:06:02 2019 +0100

    This fixes a bug in the ARm assembler where an immediate operand larger than 4 bits (0xF) could be passed to the SMC (Secure Monitor Call) instruction.
    
    For example, this code is invalid:
    smc #0x6951
    
    The code would previously check for and encode for up to 16 bit immediate values, however
    this immediate should instead be only a 4 bit value
    (as documented herehttps://static.docs.arm.com/ddi0406/c/DDI0406C_C_arm_architecture_reference_manual.pdf  ).
    
    Fixed this by adding range checks in the relevant areas and also removing code that would
    encode more than the first 4 bits of the immediate (code that is now redundant, as any immediate operand
    larger than 0xF would error now anyway).
    
    gas	* config/tc-arm.c (do_smc): Add range check for immediate operand.
    	(do_t_smc): Add range check for immediate operand. Remove
    	obsolete immediate encoding.
    	(md_apply_fix): Fix range check. Remove obsolete immediate encoding.
    	* testsuite/gas/arm/arch6zk.d: Fix test.
    	* testsuite/gas/arm/arch6zk.s: Fix test.
    	* testsuite/gas/arm/smc-bad.d: New test.
    	* testsuite/gas/arm/smc-bad.l: New test.
    	* testsuite/gas/arm/smc-bad.s: New test.
    	* testsuite/gas/arm/thumb32.d: Fix test.
    	* testsuite/gas/arm/thumb32.s: Fix test.

commit 5ceb1f4d804b09cb8767ca704c2ba41e50a2bcdb
Author: Jan Beulich <jbeulich@suse.com>
Date:   Thu Jun 27 12:40:08 2019 +0200

    x86: add missing test
    
    These files were mistakenly left out of commit c1dc7af521.

commit 2b7bcc8740dda3f314284169aaf1759a9f56025f
Author: Jan Beulich <jbeulich@novell.com>
Date:   Thu Jun 27 08:50:28 2019 +0200

    x86: fold AVX scalar to/from int conversion insns
    
    There's no point doing a separate decode of the VEX.L bit - both decoded
    forms are identical.

commit c1dc7af52143966da8065b527e7a7000cf9f7705
Author: Jan Beulich <jbeulich@novell.com>
Date:   Thu Jun 27 08:49:40 2019 +0200

    x86: allow VEX et al encodings in 16-bit (protected) mode
    
    These encodings aren't valid in real and VM86 modes, but they are very
    well usable in 16-bit protected mode.
    
    A few adjustments in the disassembler tables are needed where Ev or Gv
    were wrongly used. Additionally an adjustment is needed to avoid
    printing "addr32" when that's already recognizable by the use of %eiz.
    
    Furthermore the Iq operand template was wrong for XOP:0Ah encoding
    insns: They're having a uniform 32-bit immediate. Drop Iq and introduce
    Id instead.
    
    Clone a few existing test cases to exercise assembler and disassembler.

commit 65bd27298d31c6733b68d0cd6b7a4fc26e0598be
Author: Jim Wilson <jimw@sifive.com>
Date:   Wed Jun 26 18:12:55 2019 -0700

    Fix a few non-dash safe xstormy16 shell scripts.
    
    Noticed by a customer while looking at a tangentially related problem.  The
    gas testsuite for xstormy16 has two scripts that have a typo on the first
    line, they are missing the !.  They also use shell syntax that doesn't work
    on a system where /bin/sh is dash.  So I fixed the typo, changed the shell
    to bash, and made them executable, so that they now work when run directly
    even if /bin/sh is dash.
    
    	gas/
    	* testsuite/gas/xstormy16/allinsn.sh: Change first line to
    	#!/bin/bash and make it executable.
    	* testsuite/gas/xstormy16/gcc.sh: Likewise.

commit d7560e2df501c7da1b0e4e64116dd52fe5715a96
Author: Jim Wilson <jimw@sifive.com>
Date:   Wed Jun 26 17:17:09 2019 -0700

    RISC-V: Make objdump disassembly work right for binary files.
    
    Without the ELF header to set info->endian, it ends up as BFD_UNKNOWN_ENDIAN
    which gets printed as big-endian.  But RISC-V instructions are always little
    endian, so we can set endian_code correctly, and then set display_endian from
    that.  This is similar to how the aarch64 support works, but without the
    support for constant pools, as we don't have that on RISC-V.
    
    	opcodes/
    	PR binutils/24739
    	* riscv-dis.c (riscv_disasemble_insn): Set info->endian_code.
    	Set info->display_endian to info->endian_code.

commit 696d5b3801a0e9d6514a92734bde09985f968a2f
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Thu Jun 27 00:00:18 2019 +0000

    Automatic date update in version.in

commit aa108c0c462e43ab77a1f178d8c8d2277ac73a57
Author: Lili Cui <lili.cui@intel.com>
Date:   Wed Jun 26 15:12:58 2019 -0700

    i386: Document memory size reference in assembler
    
    	* doc/c-i386.texi: Document x/y/z instruction sufffixes in AT&T
    	syntax and xmmword/ymmword/zmmword/fword/tbyte/oword ptr in
    	Intel syntax.

commit a68aa5d3020948564ef99d704d27e458ba22ad9d
Author: Nick Clifton <nickc@redhat.com>
Date:   Wed Jun 26 17:03:32 2019 +0100

    Ensure that when attempting to process an ARM Mach-O file with unknown relocs, that a suitable error message is displayed.
    
    	PR 24703
    binutils* bucomm.c (bfd_nonfatal): If no bfd error code has been set then
    	indicate this in the output.
    	(bfd_nonfatal_message): Likewise.
    
    bfd	* mach-o-arm.c (bfd_mach_o_arm_canonicalize_one_reloc): Add error
    	messages for failures.
    	* mach-o.c (bfd_mach_o_canonicalize_relocs): Set an bfd error code
    	if returning an error value.

commit 762c164d754fc456aa4764d2ed19cc4a3ec625fb
Author: Tom Tromey <tromey@adacore.com>
Date:   Wed Jun 26 09:48:32 2019 -0600

    Remove lookup_minimal_symbol_solib_trampoline
    
    lookup_minimal_symbol_solib_trampoline is unused, so this patch
    removes it.  The last use was apparently removed in
    commit 61a12cfa ("Remove HPUX").
    
    gdb/ChangeLog
    2019-06-26  Tom Tromey  <tromey@adacore.com>
    
    	* minsyms.c (lookup_minimal_symbol_solib_trampoline): Remove.
    	* minsyms.h (lookup_minimal_symbol_solib_trampoline): Don't
    	declare.

commit aa2f9bcf23a00fc7e9d7350757b8938c36106c42
Author: Alan Hayward <alan.hayward@arm.com>
Date:   Wed Jun 26 15:48:12 2019 +0100

    AArch64: Add missing CPSR flags
    
    Add all the CPSR flags for Armv8.1-A through to Armv8.4-A.
    
    In addition, document all the existing flags, and remove
    the superfluous empty spaces.
    
    gdb/ChangeLog:
    
    	* features/aarch64-core.c (create_feature_aarch64_core):
    	Regenerate.
    	* features/aarch64-core.xml: Add cpsr flags.

commit 3426ae5760319b6b31d71f3ba798154e6fcea34d
Author: Alan Hayward <alan.hayward@arm.com>
Date:   Wed Jun 26 14:10:08 2019 +0100

    Arm: Allow version strings in the triplet regexp
    
    On Arm, the OS may use the full version string for the arch name when
    installing the compiler, for example armv7hl-redhat-linux-gnueabi-gcc.
    
    Implement gdbarch_gnu_triplet_regexp for Arm to allow this to be detected.
    Ensure that other Arm targets (eg iwmmxt) are not affected.
    
    This fixes the compile/ set of tests on those systems.
    
    gdb/ChangeLog:
    
    2019-06-26  Alan Hayward  <alan.hayward@arm.com>
    
    	* arm-tdep.c (arm_gnu_triplet_regexp): New function.
    	(arm_gdbarch_init): Add arm_gnu_triplet_regexp.

commit 8af58ffe5d06eaed8adfd1f0db2cb10d38c364e2
Author: Tom de Vries <tdevries@suse.de>
Date:   Wed Jun 26 15:04:05 2019 +0200

    [gdb/testsuite] Compile varval twice, once without bad DWARF
    
    When we run gdb.dwarf2/varval.exp with board cc-with-dwz, we run into:
    ...
    gdb compile failed, dwz: varval: Couldn't find DIE referenced by \
      DW_OP_GNU_variable_value
    cc-with-tweaks.sh: dwz did not modify varval.
    UNTESTED: gdb.dwarf2/varval.exp: failed to prepare
    ...
    
    The problem is that varval contains some bad DWARF, which has been added
    intentionally to test GDB, but that bad DWARF causes dwz to error out, which
    has the consequence that the test-case remains untested with cc-with-dwz,
    while the test-case contains also correct DWARF that does not occur in any
    other test, and which we would really like to test with board cc-with-dwz.
    
    Fix this by compiling varval twice, once without and once with the bad DWARF,
    such that we have at least:
    ...
    PASS: gdb.dwarf2/varval.exp: print varval
    PASS: gdb.dwarf2/varval.exp: print varval2
    PASS: gdb.dwarf2/varval.exp: print constval
    PASS: gdb.dwarf2/varval.exp: print mixedval
    PASS: gdb.dwarf2/varval.exp: print pointerval
    PASS: gdb.dwarf2/varval.exp: print *pointerval
    PASS: gdb.dwarf2/varval.exp: print structval
    PASS: gdb.dwarf2/varval.exp: print untypedval
    gdb compile failed, dwz: varval: Couldn't find DIE referenced by \
      DW_OP_GNU_variable_value
    cc-with-tweaks.sh: dwz did not modify varval.
    UNTESTED: gdb.dwarf2/varval.exp: failed to prepare
    ...
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-06-26  Tom de Vries  <tdevries@suse.de>
    
    	* gdb.dwarf2/varval.exp: Compile twice, once without bad DWARF.

commit 22e217527d1ba9ff3d933a14c9d81b066fac606d
Author: Tom de Vries <tdevries@suse.de>
Date:   Wed Jun 26 05:52:47 2019 +0200

    [gdb/testsuite] Add back missing debug for index-cache.exp
    
    The proc prepare_for_testing has "debug" as default argument for the options
    parameter.
    
    In the commit c596f180a1 "[gdb/testsuite] Compile index-cache.c with
    -Wl,--build-id", by setting the options argument we've effectively dropped
    "debug".  This causes index-cache.exp to not contain any debug info anymore on
    most systems (though not on openSUSE), which causes index-cache.exp FAILs.
    
    Fix this by adding back the missing "debug" option.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-06-26  Tom de Vries  <tdevries@suse.de>
    
    	* gdb.base/index-cache.exp: Add back missing debug option.

commit a93cbd6e69abc024bb65c8c398fa9898e551860c
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Wed Jun 26 00:00:18 2019 +0000

    Automatic date update in version.in

commit 4838e44c8fcb2ce2316294a6f30b8d40343c36af
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date:   Tue Jun 25 14:22:30 2019 -0400

    arm-tdep: sort mapping symbols after parsing all minimal symbols
    
    Somebody on IRC reported a while ago that loading a big ARM program in
    GDB was very slow.  Their profiling pointed out that a big amount of
    time was spent in
    
        VEC_safe_insert (arm_mapping_symbol_s, *map_p, idx, &new_map_sym);
    
    I was able to verify this as well.
    
    ARM mapping symbols are special ELF symbols named $a, $d and $t
    indicating that symbols starting at this address up to the next mapping
    symbol (in terms of address) are of type "ARM code", "data" and "Thumb
    code", respectively.  GDB records these symbols in vectors (one for each
    section) in arm-tdep.c.  These vectors are sorted by symbol address, to
    allow for quick lookup.  The current approach is to insert new symbols
    at the right position to keep the vectors sorted at all time.  This is
    done based on the assumption that mapping symbols come already almost
    sorted from the binary, as explains this comment in
    arm_record_special_symbol:
    
      /* Assume that most mapping symbols appear in order of increasing
         value.  If they were randomly distributed, it would be faster to
         always push here and then sort at first use.  */
    
    Well, it turns out this is not the case.  The original reporter
    mentioned that mapping symbols in their binaries are not nearly sorted,
    and this is not my experience either (at least in the binary used in the
    benchmark below).  So if the values don't come nearly sorted, doing
    insertions to keep the vectors sorted ends up being of the order of
    number_of_mapping_symbols ^ 2.
    
    This patch changes it just like the comment above says, to just append
    to the vector in arm_record_special_symbol and sort the vector on first
    use.
    
    Benchmark
    =========
    
    I have done some benchmarks using an --enable-targets=all GDB, compiled
    with -O2, running on x86-64 and parsing file
    dce18d22e5c2ecb6a3a57372f4e6ef614130bc.debug from this package:
    
      https://launchpad.net/ubuntu/+source/firefox/66.0.3+build1-0ubuntu1/+build/16608691/+files/firefox-dbg_66.0.3+build1-0ubuntu1_armhf.deb
    
    This file is the separate debug info for libxul.so (part of firefox) for
    ARM.
    
    I have added some traces to measure the execution time of just
    elf_symtab_read and ran GDB like this:
    
      ./gdb --data-directory=data-directory -nx -batch  .../path/to/usr/lib/debug/.build-id/65/dce18d22e5c2ecb6a3a57372f4e6ef614130bc.debug
    
    Since the new code sorts the vectors on first use, it would be difficult
    to benchmark it as-is and be fair, since the "before" version does more
    work in elf_symtab_read.  So I have actually benchmarked a version of
    the patch that did sort all the vectors at the end of elf_symtab_read,
    so the sorting would be considered in the measured execution time.
    
    Here's the measured execution time of elf_symtab_read, averaged on 3
    runs:
    
      insert sorted (before): 28.678s
      sort after (after):      1.760s
    
    And here's the total execution time of the command above (just one run).
    The time is now mostly spent in reading DWARF.
    
      insert sorted: 71.12s user 2.71s system 99% cpu 1:14.03 total
      sort after:    46.42s user 2.60s system 99% cpu  49.147 total
    
    I tried for fun on my Raspberry Pi 3, the run time of
    elf_symtab_read goes from ~259s to ~9s, reading the same file.
    
    gdb/ChangeLog:
    
    	* arm-tdep.c (struct arm_per_objfile) <section_maps_sorted>: New
    	field.
    	(arm_find_mapping_symbol): Sort mapping symbol vectors on first
    	use.
    	(arm_record_special_symbol): Don't insert new symbol in sorted
    	position, push it at the end.

commit 54cc7474d4851d0e76df5252478a5ebd76b61508
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date:   Tue Jun 25 14:22:23 2019 -0400

    arm-tdep: replace arm_mapping_symbol VEC with std::vector
    
    This patch replaces VEC (arm_mapping_symbol) with an std::vector.  No
    functional changes intended.
    
    gdb/ChangeLog:
    
    	* arm-tdep.c (struct arm_mapping_symbol) (operator <): New.
    	(arm_mapping_symbol_s): Remove.
    	(DEF_VEC_O(arm_mapping_symbol_s)): Remove.
    	(arm_mapping_symbol_vec): New typedef.
    	(struct arm_per_objfile): Add constructor.
    	<section_maps>: Change type to
    	std::unique_ptr<arm_mapping_symbol_vec[]>.
    	(arm_compare_mapping_symbols): Remove.
    	(arm_find_mapping_symbol): Adjust to section_maps type change.
    	(arm_objfile_data_free): Call delete on arm_per_objfile.
    	(arm_record_special_symbol): Adjust to section_maps type change.
    	Allocate arm_per_objfile with new.

commit b65b566cdcb577edb57616c5b49a2f245b56325c
Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Date:   Sun Jun 23 15:34:15 2019 +0200

    Fix alias command not detecting non matching prefix & sometimes asserting.
    
    alias_command does not detect that the prefixes of the alias command and the
    aliased command are not matching: it is comparing the alias prefix
    with itself, instead of comparing it with the aliased command prefix.
    
    This causes either the alias command to silently do nothing,
    or to have GDB asserting:
        (gdb) alias assigne imprime limite-elements = set print elements
        ../../binutils-gdb/gdb/cli/cli-cmds.c:1552: internal-error: void alias_command(const char*, int): Assertion `c_command != NULL && c_command != (struct cmd_list_element *) -1' failed.
        A problem internal to GDB has been detected,
    
    Fix the logic, and update gdb.base/alias.exp to test these cases.
    
    gdb/ChangeLog
    2019-06-25  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
    
    	* cli/cli-cmds.c (alias_command): Compare the alias prefix
    	with the command prefix.
    
    gdb/testsuite/ChangeLog
    2019-06-25  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
    
    	* gdb.base/alias.exp: Test non matching/non existing prefixes.

commit 9b444f9533c38016e4f2de0198c889b13a62d2bc
Author: Faraz Shahbazker <fshahbazker@wavecomp.com>
Date:   Wed Jun 19 15:55:04 2019 -0700

    MIPS/gas: Fix order of instructions in LI macro expansion
    
    When MTHC1 instruction is paired with MTC1 to write a value to a
    64-bit FPR, the MTC1 must be executed first, because the semantic
    definition of MTC1 is not aware that software will be using an MTHC1
    to complete the operation, and sets the upper half of the 64-bit FPR
    to an UNPREDICTABLE value[1].
    
    Fix the order of MTHC1 and MTC1 instructions in LI macro expansion.
    Modify the expansions to exploit moves from $zero directly by-passing
    the use of $AT, where ever possible.
    
    [1] "MIPS Architecture for Programmers Volume II-A: The MIPS32
         Instruction Set Manual", Wave Computing, Inc., Document
         Number: MD00086, Revision 5.04, December 11, 2013, Section 3.2
         "Alphabetical List of Instructions", pp. 217.
    
    gas/
    	* config/tc-mips.c (macro) <M_LI>: Re-order MTHC1 with
    	respect to MTC1 and use $0 for either part where possible.
    	* testsuite/gas/mips/li-d.s: Add test cases for non-zero
    	words in double precision constants.
    	* testsuite/gas/mips/li-d.d: Update reference output.
    	* testsuite/gas/mips/micromips@isa-override-1.d: Likewise.
    	* testsuite/gas/mips/mips32r2@isa-override-1.d: Likewise.
    	* testsuite/gas/mips/mips64r2@isa-override-1.d: Likewise.

commit 5c2c8c694de18370ac6161a21217627ddadeafc7
Author: Tom de Vries <tdevries@suse.de>
Date:   Tue Jun 25 16:42:46 2019 +0200

    [gdb/testsuite] Regenerate dw2-restrict.S
    
    When running gdb.dwarf2/dw2-restrict.exp with board cc-with-dwz, we run into:
    ...
    dwz: dw2-restrict: DW_AT_stmt_list not DW_FORM_sec_offset or DW_FORM_data4
    ...
    
    The problem is that the DW_AT_stmt_list is encoded using DW_FORM_addr, while
    DW_FORM_sec_offset or DW_FORM_data4 would be appropriate.  The test-case uses
    a dw2-restrict.S which was generated using clang 2.9, which contained a bug
    ( https://bugs.llvm.org/show_bug.cgi?id=9995 ) causing this problem.
    
    Fix this by regenerating using clang 5.0.1.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-06-25  Tom de Vries  <tdevries@suse.de>
    
    	PR testsuite/24727
    	* gdb.dwarf2/dw2-restrict.S: Regenerate using clang 5.0.1.

commit c2fc64f54ef82ccd2fedc9078c539ad273e83a0b
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 23 16:38:06 2019 -0600

    Tidy tui_delete_win
    
    tui_delete_win does its own NULL check, so ~tui_gen_win_info does not
    need to do it.  Also, tui_delete_win has an extraneous "return".
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-wingeneral.c (tui_delete_win): Remove "return".
    	* tui/tui-data.c (~tui_gen_win_info): Remove "if".

commit fb54fa768d148ccd07f2b27ae26e87d95605986c
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 23 16:34:39 2019 -0600

    Make tui_gen_win_info constructor protected
    
    Now that all the window types have their own concrete classes, the
    tui_gen_win_info constructor can be protected.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.c (init_and_make_win): Assert on unrecognized
    	type.
    	* tui/tui-data.h (struct tui_gen_win_info): Make constructor
    	protected.

commit f7952c5774671414d9e0e8d3524c2921daa6f28e
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 23 16:07:12 2019 -0600

    Fix latent bug in set_is_exec_point_at
    
    valgrind pointed out that the TUI was using uninitialized memory in
    set_is_exec_point_at.  The bug is a missing check against LOA_ADDRESS,
    causing gdb to examine the uninitialized bits of the "addr" field.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.c
    	(tui_source_window_base::set_is_exec_point_at): Add check against
    	LOA_ADDRESS.

commit 17568d782d96434537fe9698c5ebcb09f35c20cb
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 23 14:28:11 2019 -0600

    Remove NULL checks before xfree
    
    A couple of spots in the TUI did a NULL check before an xfree.  This
    isn't necessary, and most other cases were removed from gdb a while
    ago.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-source.c (tui_set_source_content): Don't check before
    	xfree.
    	* tui/tui-disasm.c (tui_disassemble): Don't check before xfree.

commit 53e7cdbaa1d8c0c53038226de07d8160d7f66d82
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 23 14:27:04 2019 -0600

    Remove union tui_which_element
    
    This removes union tui_which_element, instead moving the content
    directly into tui_source_window_base.  This allows for the deletion of
    a fair amount of code.  Now the TUI window hierarchy is more
    type-safe.  In particular, there is never any confusion now about
    which members are in use by which subtype.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (tui_update_source_window_as_is)
    	(tui_alloc_source_buffer, tui_line_is_displayed)
    	(tui_addr_is_displayed): Change type of win_info.
    	* tui/tui-winsource.c (tui_update_source_window_as_is)
    	(tui_clear_source_content, tui_show_source_line)
    	(tui_show_source_content, tui_source_window_base::refill)
    	(tui_source_window_base::set_is_exec_point_at)
    	(tui_source_window_base::set_is_exec_point_at)
    	(tui_update_breakpoint_info, tui_set_exec_info_content): Update.
    	(tui_alloc_source_buffer, tui_line_is_displayed)
    	(tui_addr_is_displayed): Change type of win_info.  Update.
    	* tui/tui-win.c (tui_resize_all, tui_adjust_win_heights)
    	(tui_source_window_base::do_make_visible_with_new_height):
    	Update.
    	* tui/tui-source.c (tui_set_source_content)
    	(tui_set_source_content_nil)
    	(tui_source_window::do_scroll_vertical): Update.
    	* tui/tui-layout.c (show_layout): Update.
    	* tui/tui-disasm.c (tui_set_disassem_content)
    	(tui_disasm_window::do_scroll_vertical): Update.
    	* tui/tui-data.h (tui_win_content): Remove.
    	(struct tui_gen_win_info) <content, content_size>: Remove.
    	(struct tui_source_element): Add initializers and destructor.
    	(union tui_which_element, struct tui_win_element): Remove.
    	(struct tui_source_window_base) <content>: New field.
    	(struct tui_data_window): Remove destructor.
    	(tui_alloc_content, tui_free_win_content)
    	(tui_free_all_source_wins_content): Don't declare.
    	* tui/tui-data.c (tui_initialize_static_data): Update.
    	(init_content_element, tui_alloc_content): Remove.
    	(~tui_gen_win_info): Update.
    	(~tui_data_window, tui_free_all_source_wins_content)
    	(tui_free_win_content, free_content, free_content_elements):
    	Remove.

commit 7908abbf18dde6d3163758e447d72d6d2b267927
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 23 12:21:34 2019 -0600

    More type safety for TUI source window functions
    
    A few functions can only operate on a source or disassembly window.
    This patch adds a bit more type safety to a few of these functions.
    This simplifies a subsequent patch.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (tui_clear_source_content)
    	(tui_erase_source_content, tui_show_source_content): Change type
    	of win_info.
    	* tui/tui-winsource.c (tui_clear_source_content)
    	(tui_erase_source_content, tui_show_source_content): Change type
    	of win_info.
    	* tui/tui-win.c (tui_resize_all, tui_adjust_win_heights): Update.
    	* tui/tui-source.h (tui_set_source_content_nil): Change type of
    	win_info.
    	* tui/tui-source.c (tui_set_source_content_nil): Change type of
    	win_info.
    	* tui/tui-layout.c (show_source_or_disasm_and_command): Update.

commit 02c28df011542448e99041e32bec331c92b39945
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 23 10:25:03 2019 -0600

    Use bool for is_exec_point
    
    This changes tui_source_element::is_exec_point to be a bool.  I looked
    at also changing "has_break", but it turns out that this field is used
    inconsistently (sometimes as flags and sometimes as a bool), and so
    needs more invesstigation before it can be changed.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.c (tui_clear_source_content)
    	(tui_source_window_base::set_is_exec_point_at): Update.
    	* tui/tui-source.c (tui_set_source_content_nil): Update.
    	* tui/tui-data.h (struct tui_source_element) <is_exec_point>: Now
    	a bool.
    	* tui/tui-data.c (init_content_element): Update.

commit 6658b1bf6c2d8d9383826bdfd4068b77d38b3b94
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 23 08:27:55 2019 -0600

    Fix "auxiliary" typo
    
    The TUI has a function called tui_win_is_auxillary, but the word
    should actually be spelled "auxiliary".  This fixes the typo.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-wingeneral.c (tui_gen_win_info::make_visible): Update.
    	* tui/tui-win.c (make_invisible_and_set_new_height): Update.
    	* tui/tui-layout.c (init_and_make_win): Update.
    	* tui/tui.h (enum tui_win_type): Update.
    	* tui/tui-data.h (tui_win_is_auxiliary): Rename from
    	tui_win_is_auxillary.
    	* tui/tui-data.c (tui_win_is_auxiliary): Rename from
    	tui_win_is_auxillary.

commit 21e1c91ef99c3785d1c31314dff574747b4b6e68
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jun 22 12:49:06 2019 -0600

    Separate out data window
    
    This removes "data_window" from union tui_which_element and updates
    the uses.  It also changes how tui_data_window refers to the register
    data, and changes it not to need the "content" field at all (though as
    this is in a base class, it can't yet be removed).
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-wingeneral.c (tui_data_window::refresh_window): Update.
    	* tui/tui-windata.c (tui_data_window::first_data_item_displayed)
    	(tui_delete_data_content_windows, tui_display_all_data)
    	(tui_data_window::do_scroll_vertical, tui_display_data_from):
    	Update.
    	* tui/tui-win.c (tui_data_window::set_new_height): Simplify.
    	* tui/tui-regs.c (tui_last_regs_line_no)
    	(tui_line_from_reg_element_no, tui_first_reg_element_no_inline)
    	(tui_show_registers): Update.
    	(tui_show_register_group): Return void.  Update.
    	(tui_display_registers_from, tui_display_reg_element_at_line)
    	(tui_display_registers_from_line, tui_check_register_values):
    	Update.
    	* tui/tui-data.h (union tui_which_element) <data_window>: Remove
    	member.
    	(struct tui_data_window) <regs_content>: Now a std::vector.
    	<regs_content_count>: Remove.
    	(tui_add_content_elements, tui_free_data_content): Don't declare.
    	* tui/tui-data.c (tui_data_window::clear_detail): Update.
    	(init_content_element): Remove DATA_WIN case.  Add assert.
    	(tui_add_content_elements): Remove.
    	(tui_data_window): Update.
    	(tui_free_data_content): Remove.
    	(free_content_elements): Remove DATA_WIN case.

commit 115ac53b852ed91e23d97e8357f24216609fa86f
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jun 22 12:07:13 2019 -0600

    Remove "data_content" and "data_content_count" from TUI data window
    
    The TUI has some stub code for adding data other than registers to the
    data window.  However, it doesn't do anything, and apparently never
    has.  This removes the dead code.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-data.c (tui_data_item_window): Update.
    	* tui/tui-windata.h (tui_check_data_values): Don't declare.
    	* tui/tui-windata.c (tui_display_all_data)
    	(tui_display_data_from_line): Update.
    	(tui_check_data_values): Remove.
    	* tui/tui-regs.c (tui_show_register_group)
    	(tui_display_reg_element_at_line): Update.
    	* tui/tui-hooks.c (tui_register_changed)
    	(tui_refresh_frame_and_register_information): Call
    	tui_check_register_values.
    	* tui/tui-data.h (struct tui_data_window) <data_content,
    	data_content_count, data_type>: Remove.
    	(enum tui_data_type): Remove.

commit eaf9738bedf8de68d4bf8eafd0689cf1973648aa
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jun 22 11:55:33 2019 -0600

    Turn tui_first_data_item_displayed into a method
    
    tui_first_data_item_displayed is only called from tui_data_window
    methods, so turn it into a method as well.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-windata.h (tui_first_data_item_displayed): Don't
    	declare.
    	* tui/tui-windata.c (tui_data_window::first_data_item_displayed):
    	Rename from tui_first_data_item_displayed.  Update.
    	(tui_data_window::refresh_all)
    	(tui_data_window::do_scroll_vertical): Update.
    	* tui/tui-data.h (struct tui_data_window)
    	<first_data_item_displayed>: Declare new method.

commit 31ca47237fed3db1d912127a386cad6ffbb06750
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jun 22 11:45:58 2019 -0600

    Remove tui_init_generic_part
    
    tui_init_generic_part has a single caller, so simply inline it there.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-data.h (tui_init_generic_part): Don't declare.
    	* tui/tui-data.c (tui_init_generic_part): Remove, moving
    	contents...
    	(tui_initialize_static_data): ...here.

commit 41bcff7feefea958e7be1656e087cae4d54a2af9
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jun 22 00:20:39 2019 -0600

    Separate out data item window
    
    This introduces a new subclass of tui_gen_win_info for the data item
    windows, letting us remove another element from tui_which_element.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-regs.c (tui_show_registers, tui_show_register_group)
    	(tui_display_registers_from, tui_check_register_values): Update.
    	(tui_display_register): Remove win_info parameter; update.
    	(tui_get_register): Change type of parameters.
    	* tui/tui-data.h (struct tui_data_element): Remove.
    	(union tui_which_element) <data>: Remove.
    	<data_window>: Change type.
    	(struct tui_data_item_window): New.
    	* tui/tui-data.c (init_content_element): Remove DATA_ITEM_WIN
    	case.  Add assert.
    	(~tui_data_item_window): New destructor.
    	(free_content_elements): Remove DATA_ITEM_WIN case.

commit d2802c33429eb73303dc610401f5d7d27e071ff2
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jun 22 00:00:11 2019 -0600

    Remove two unused enum constants from tui_win_type
    
    This removes a couple of unused constants from enum tui_win_type.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui.h (enum tui_win_type) <MAX_WINDOWS, UNDEFINED_WIN>:
    	Remove.

commit dd835f8b70a2dfb4d8b84a4744606a9c922aeb25
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jun 21 06:16:06 2019 -0600

    Remove command from tui_which_element
    
    union tui_which_element has a "command" member, but it is never used.
    This removes it.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-data.h (struct tui_command_element): Remove.
    	(union tui_which_element) <command>: Remove.
    	* tui/tui-data.c (init_content_element): Remove CMD_WIN case.  Add
    	assert.
    	(free_content_elements): Remove CMD_WIN case.

commit bd7db367c4bc72bef9c7848b99aaaa1431cf1672
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jun 21 06:12:48 2019 -0600

    Remove layout_def::split
    
    The "split" field in struct layout_def is never used, so this patch
    removes it.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.c (tui_set_layout): Update.
    	* tui/tui-data.h (struct tui_layout_def) <split>: Remove.
    	* tui/tui-data.c (layout_def): Update.

commit 3add462fff33beb0e6f1480d3853eb56d664b438
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Jun 20 20:16:07 2019 -0600

    Separate out locator window
    
    This introduces a new subclass of tui_gen_win_info for the locator,
    letting us remove another element from union tui_which_element.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-wingeneral.c (tui_refresh_all): Update.
    	* tui/tui-win.c (tui_resize_all, tui_adjust_win_heights)
    	(tui_source_window_base::set_new_height): Update.
    	* tui/tui-stack.c (tui_make_status_line): Change parameter type.
    	Update.
    	(tui_set_locator_fullname, tui_set_locator_info)
    	(tui_show_frame_info): Update.
    	* tui/tui-source.c (tui_set_source_content)
    	(tui_source_is_displayed): Update.
    	* tui/tui-layout.c (show_source_disasm_command, show_data)
    	(show_source_or_disasm_and_command): Update.
    	* tui/tui-disasm.c (tui_set_disassem_content)
    	(tui_get_begin_asm_address): Update.
    	* tui/tui-data.h (struct tui_locator_element): Remove.
    	(union tui_which_element) <locator>: Remove.
    	(struct tui_locator_window): New.
    	(tui_locator_win_info_ptr): Change return type.
    	* tui/tui-data.c (_locator): Change type.
    	(tui_locator_win_info_ptr): Change return type.
    	(init_content_element): Remove LOCATOR_WIN case.  Add assert.
    	(tui_alloc_content): Add assert.

commit 489e9d8b7bb3337a7f4f902a03c176c22faeabc7
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Jun 20 19:59:06 2019 -0600

    Separate out execution-info window
    
    This pulls the EXEC_INFO_WIN case out into its own subclass of
    tui_gen_win_info.  This lets us remove an element from
    union tui_which_element.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.c
    	(tui_exec_info_window::maybe_allocate_content): New method.
    	(tui_set_exec_info_content, tui_show_exec_info_content): Update.
    	* tui/tui-layout.c (init_and_make_win): Add EXEC_INFO_WIN case.
    	(make_source_or_disasm_window): Add cast.
    	* tui/tui-data.h (union tui_which_element) <simple_string>:
    	Remove.
    	(struct tui_source_info): New.
    	(struct tui_source_window_base) <execution_info>: Change type.
    	* tui/tui-data.c (init_content_element): Remove EXEC_INFO_WIN
    	case, and add assert.
    	(tui_alloc_content): Add assert.

commit c3fabb7d69b3735bc6042a2992729944c8ced62c
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Jun 20 15:31:00 2019 -0600

    Remove tui_alloc_win_info
    
    There is only a single caller of tui_alloc_win_info, and we're going
    to add more "new" cases to that caller, so remove tui_alloc_win_info
    and inline it into init_and_make_win.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-data.h (tui_alloc_win_info): Don't declare.
    	* tui/tui-layout.c (init_and_make_win): Use "new" directly.
    	* tui/tui-data.c (tui_alloc_win_info): Remove.

commit bbc228ee056cd006e971d5f1cb70ae0f69c1eb36
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Jun 20 15:22:53 2019 -0600

    Don't check window type in tui_set_win_focus_to
    
    This changes tui_set_win_focus_to so that it no longer checks the
    window type.  Instead, now tui_unhighlight_win also checks whether the
    window can be highlighted.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-win.c (tui_set_win_focus_to): Don't check window type.
    	* tui/tui-wingeneral.c (tui_unhighlight_win): Check
    	can_highlight.

commit 5fcee43a960f0735c53a7c24823b2e4bc1460b9f
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Jun 17 21:11:56 2019 -0600

    Introduce tui_win_info::make_visible_with_new_height
    
    This changes make_visible_with_new_height to be a method on
    tui_win_info, letting us remove a spot that checks the window type.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-win.c (tui_source_window_base::update_tab_width): Call
    	make_visible_with_new_height method.
    	(tui_win_info::make_visible_with_new_height): New method.
    	(tui_source_window_base::do_make_visible_with_new_height)
    	(tui_data_window::do_make_visible_with_new_height)
    	(tui_cmd_window::do_make_visible_with_new_height): New methods.
    	(make_visible_with_new_height): Remove.
    	(tui_resize_all, tui_adjust_win_heights): Use
    	make_visible_with_new_height method.
    	* tui/tui-data.h (struct tui_win_info)
    	<do_make_visible_with_new_height, make_visible_with_new_height>:
    	New methods.
    	(struct tui_source_window_base, struct tui_data_window)
    	(struct tui_cmd_window) <do_make_visible_with_new_height>: New
    	methods.

commit d83f1fe65da075aa08ac7d6b6ef3508587c94600
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Jun 17 18:48:00 2019 -0600

    Introduce tui_win_info::update_tab_width
    
    This introduces a new tui_win_info::update_tab_width method, and
    changes the TUI to call it.  This fixes another spot that was checking
    the window type.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-win.c (tui_source_window_base::update_tab_width): New
    	method.
    	(update_tab_width): Call update_tab_width method.
    	* tui/tui-data.h (struct tui_win_info)
    	(struct tui_source_window_base) <update_tab_width>: New methods.

commit 17374de40e7be36e4eb27d29bb8aac89586ce4a1
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Jun 17 17:15:23 2019 -0600

    Introduce enum tui_box
    
    This adds a new enum to the TUI, replacing two #define constants,
    providing better type safety.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-wingeneral.h (tui_make_window): Change type of "box_it"
    	parameter.
    	* tui/tui-wingeneral.c (tui_make_window): Change type of "box_it"
    	parameter.
    	(tui_gen_win_info::make_visible): Update.
    	* tui/tui-layout.c (init_and_make_win): Change type of "box_it"
    	parameter.
    	* tui/tui-data.h (enum tui_box): New enum.
    	(BOX_WINDOW, DONT_BOX_WINDOW): Remove defines.

commit f936bca26dd7593a3b792e76eba37c5de2374961
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Jun 17 15:45:14 2019 -0600

    Remove some TUI static allocations
    
    The TUI statically allocates the "execution_info" for the source and
    disassembly windows.  However, there's no deep reason to do this, and
    this approach makes it harder to allow multiple such windows.
    
    This patch removes the static data and changes the code to simply
    allocate these windows as needed.  This required pushing some code
    into the tui_gen_win_info destructor, but that seems like a good idea
    anyhow.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.c (make_source_or_disasm_window): Always use
    	init_and_make_win for EXEC_INFO_WIN.
    	* tui/tui-data.h (struct tui_gen_win_info) <~tui_gen_win_info>: No
    	longer inline.
    	(struct tui_win_info) <~tui_win_info>: Inline.
    	(tui_source_exec_info_win_ptr, tui_disassem_exec_info_win_ptr):
    	Don't declare.
    	* tui/tui-data.c (source_win, disasm_win): Remove globals.
    	(tui_source_exec_info_win_ptr, tui_disassem_exec_info_win_ptr):
    	Remove.
    	(tui_initialize_static_data): Update.
    	(~tui_gen_win_info): Handle more cleanup here.
    	(~tui_source_window_base): Delete "execution_info".
    	(~tui_win_info): Move code to ~tui_gen_win_info; remove.

commit d6ba6a11642cdbec4ce91fefe455920b5c073f60
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Jun 17 14:08:44 2019 -0600

    Introduce tui_gen_win_info::reset method
    
    This introduces the tui_gen_win_info::reset method and changes various
    places to use it.  This led to the realization that the can_highlight
    member only needs to be set during construction, so this patch makes
    that change as well.  Finally, init_and_make_win is drastically
    simplified.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.c (make_command_window): Don't set
    	can_highlight.
    	(show_source_disasm_command): Call the reset method.
    	(show_data): Don't set can_highlight.  Call the reset method.
    	(tui_gen_win_info::reset): Rename from init_gen_win_info
    	(init_and_make_win): Simplify.  Return tui_gen_win_info.
    	(show_source_or_disasm_and_command): Call the reset method.
    	* tui/tui-data.h (struct tui_gen_win_info) <reset>: New method.
    	(struct tui_cmd_window): Set can_highlight.

commit 48a3bd16c2189174f601600dc6cceedd68e908b6
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Jun 17 13:19:15 2019 -0600

    Move make_visible method to tui_gen_win_info
    
    This moves the make_visible method from tui_win_info to its base
    class, tui_gen_win_info.  This allows the removal of another window
    type check.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-wingeneral.c (tui_gen_win_info::make_visible): Rename
    	from make_visible.
    	(tui_make_visible, tui_make_invisible): Rewrite.
    	(tui_win_info::make_visible): Remove.
    	(tui_source_window_base::make_visible): Update.
    	* tui/tui-data.h (struct tui_gen_win_info) <make_visible>: New
    	method.  Moved from...
    	(struct tui_win_info) <make_visible>: ...here.

commit c3bd716ffc20cada32e8a18a209638b578d47f5e
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Jun 17 12:56:39 2019 -0600

    Remove tui_scroll_direction enum
    
    The tui_scroll_direction enum is not really needed, because it's
    simple to adapt the various scrolling methods to use the sign of their
    argument as the direction in which to scroll.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.c
    	(tui_source_window_base::do_scroll_horizontal): Remove direction
    	parameter.
    	* tui/tui-windata.c (tui_data_window::do_scroll_vertical): Remove
    	direction parameter.
    	* tui/tui-win.c (tui_win_info::forward_scroll)
    	(tui_win_info::backward_scroll, tui_win_info::left_scroll)
    	(tui_win_info::right_scroll): Update.
    	* tui/tui-source.c (tui_source_window::do_scroll_vertical): Remove
    	direction parameter.
    	* tui/tui-disasm.c (tui_disasm_window::do_scroll_vertical): Remove
    	direction parameter.
    	* tui/tui-data.h (enum tui_scroll_direction): Remove.
    	(struct tui_win_info) <do_scroll_vertical, do_scroll_horizontal>:
    	Remove direction parameter.
    	(struct tui_source_window_base, struct tui_source_window)
    	(struct tui_disasm_window, struct tui_data_window)
    	(struct tui_cmd_window): Update.

commit 21c32dca764039afd3517954f6dd0a23d0c9e16c
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Jun 17 12:51:29 2019 -0600

    Change more TUI functions to take a tui_source_window_base
    
    Several more TUI functions should only be called with a source or
    disassembly window.  This patch changes these functions so that this
    can be caught at compile time.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (tui_set_exec_info_content)
    	(tui_show_exec_info_content, tui_erase_exec_info_content)
    	(tui_clear_exec_info_content, tui_update_exec_info): Change
    	argument to tui_source_window_base.
    	* tui/tui-winsource.c (tui_set_exec_info_content)
    	(tui_show_exec_info_content, tui_erase_exec_info_content)
    	(tui_clear_exec_info_content, tui_update_exec_info): Change
    	argument to tui_source_window_base.

commit 73fbdc65a1f3da143e604d95443dc11ee86af710
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 17:51:34 2019 -0600

    Change tui_set_exec_info_content to return void
    
    tui_set_exec_info_content can't return an error, so change it to
    return void instead.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (tui_set_exec_info_content): Return void.
    	* tui/tui-winsource.c (tui_set_exec_info_content): Return void.

commit 3332534318eb10a77e441307d28336996325558c
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 17:51:01 2019 -0600

    Remove NULL check from tui_set_exec_info_content
    
    tui_set_exec_info_content ensures that the window's "execution_info"
    is allocated, so the NULL check here is redundant and can be removed.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.c (tui_set_exec_info_content): Remove NULL
    	check.

commit 29d2c474f5a397017455da82e6dbc72629186359
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 17:49:41 2019 -0600

    Change tui_alloc_source_buffer return type to void
    
    tui_alloc_source_buffer can't actually fail, so change its return type
    to void and update the callers.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (tui_alloc_source_buffer): Change return
    	type to void.
    	* tui/tui-winsource.c (tui_alloc_source_buffer): Change return
    	type to void.
    	* tui/tui-source.c (tui_set_source_content): Update.
    	* tui/tui-disasm.c (tui_set_disassem_content): Update.

commit 152f3f4b3342ae16df5ae0640896b8cea008c893
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 16:35:31 2019 -0600

    Introduce tui_gen_win_info::name method
    
    This removes tui_win_name and replaces it with a method on
    tui_gen_win_info, removing another spot that switched on window type.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-win.c (window_name_completer, tui_set_focus)
    	(tui_all_windows_info): Use name method.
    	* tui/tui-data.h (struct tui_gen_win_info)
    	(struct tui_source_window, struct tui_disasm_window)
    	(struct tui_data_window, struct tui_cmd_window) <name>: New
    	method.
    	(tui_win_name): Don't declare.
    	* tui/tui-data.c (tui_partial_win_by_name): Use name method.
    	(tui_win_name): Remove.

commit be4da58857ee4a26b7e58893211ea4f54922e8fd
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 16:31:37 2019 -0600

    Change tui_update_source_window for better type safety
    
    tui_update_source_window can only be called for source and disassembly
    windows, so change the argument type to enforce this at compile time.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (tui_update_source_window)
    	(tui_update_source_window_as_is): Change parameter type.
    	* tui/tui-winsource.c (tui_update_source_window): Change win_info
    	to be a tui_source_window_base.
    	(tui_update_source_window_as_is): Likewise.
    	* tui/tui-win.c (make_visible_with_new_height): Update.

commit 5b81daba91b035ce98fb7be4970fc2be0183f6ea
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 16:28:12 2019 -0600

    Introduce refresh_window method
    
    This replaces tui_refresh_win with a new refresh_window method.  This
    removes another spot that was checking the window's type.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.c (tui_erase_source_content)
    	(tui_show_source_content, tui_show_exec_info_content)
    	(tui_erase_exec_info_content): Use refresh_window method.
    	* tui/tui-wingeneral.h (tui_refresh_win): Don't declare.
    	* tui/tui-wingeneral.c (tui_gen_win_info::refresh_window): Rename
    	from tui_refresh_win.
    	(tui_data_window::refresh_window): New method.
    	(tui_win_info::refresh, tui_source_window_base::refresh)
    	(tui_refresh_all): Use refresh_window method.
    	* tui/tui-stack.c (tui_show_locator_content): Call refresh_window
    	method.
    	* tui/tui-regs.c (tui_display_register): Call refresh_window
    	method.
    	* tui/tui-layout.c (show_source_disasm_command)
    	(show_source_or_disasm_and_command): Call refresh_window method.
    	* tui/tui-data.h (struct tui_gen_win_info)
    	(struct tui_data_window, struct tui_cmd_window) <refresh_window>:
    	New method.

commit cb2ce89305264543a4014d98bacb26800d92d394
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 16:03:54 2019 -0600

    Derive tui_win_info from tui_gen_win_info
    
    This changes tui_win_info to derive from tui_gen_win_info, rather than
    having a tui_gen_win_info as a member.  This removes a layer of member
    access from the entire TUI, which is why this patch is so large.  This
    change will enable further removal of switches based on window type.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui.c (tui_rl_other_window, tui_enable)
    	(tui_is_window_visible, tui_get_command_dimension): Update.
    	* tui/tui-winsource.c (tui_update_source_window_as_is)
    	(tui_clear_source_content, tui_erase_source_content)
    	(tui_show_source_line, tui_source_window_base::refill)
    	(tui_source_window_base::do_scroll_horizontal)
    	(tui_source_window_base::set_is_exec_point_at)
    	(tui_update_breakpoint_info, tui_set_exec_info_content)
    	(tui_alloc_source_buffer, tui_line_is_displayed)
    	(tui_addr_is_displayed): Update.
    	* tui/tui-wingeneral.c (tui_unhighlight_win, tui_highlight_win)
    	(tui_check_and_display_highlight_if_needed)
    	(tui_win_info::make_visible, tui_win_info::refresh)
    	(tui_refresh_all): Update.
    	* tui/tui-windata.c (tui_first_data_item_displayed)
    	(tui_delete_data_content_windows, tui_erase_data_content)
    	(tui_display_all_data, tui_data_window::refresh_all)
    	(tui_check_data_values): Update.
    	* tui/tui-win.c (window_name_completer, tui_update_gdb_sizes)
    	(tui_set_win_focus_to, tui_win_info::forward_scroll)
    	(tui_win_info::backward_scroll, tui_refresh_all_win)
    	(tui_resize_all, tui_set_focus, tui_all_windows_info)
    	(update_tab_width, tui_set_win_height, tui_adjust_win_heights)
    	(tui_source_window_base::set_new_height)
    	(tui_data_window::set_new_height)
    	(make_invisible_and_set_new_height)
    	(make_visible_with_new_height, new_height_ok)
    	(parse_scrolling_args): Update.
    	* tui/tui-stack.c (tui_show_frame_info): Update.
    	* tui/tui-source.c (tui_set_source_content)
    	(tui_set_source_content_nil, tui_source_is_displayed)
    	(tui_source_window::do_scroll_vertical): Update.
    	* tui/tui-regs.c (tui_show_registers, tui_show_register_group)
    	(tui_display_registers_from, tui_display_reg_element_at_line)
    	(tui_check_register_values, tui_reg_command): Update.
    	* tui/tui-layout.c (tui_default_win_height)
    	(show_source_disasm_command, show_data, init_and_make_win)
    	(show_source_or_disasm_and_command): Update.
    	* tui/tui-io.c (update_cmdwin_start_line, tui_putc, tui_puts)
    	(tui_redisplay_readline, tui_mld_flush)
    	(tui_mld_erase_entire_line, tui_mld_getc, tui_cont_sig)
    	(tui_getc): Update.
    	* tui/tui-disasm.c (tui_set_disassem_content)
    	(tui_disasm_window::do_scroll_vertical): Update.
    	* tui/tui-data.h (struct tui_gen_win_info) <~tui_gen_win_info>:
    	Now virtual.
    	(struct tui_win_info): Derive from tui_gen_win_info.
    	<~tui_win_info>: Mark as override.
    	<generic>: Remove member.
    	* tui/tui-data.c (tui_cmd_window::clear_detail, tui_next_win)
    	(tui_prev_win, tui_partial_win_by_name, tui_win_info)
    	(~tui_data_window, ~tui_win_info)
    	(tui_free_all_source_wins_content): Update.
    	* tui/tui-command.c (tui_refresh_cmd_win): Update.

commit ab313b35e505ccab9c23acbe82087b6c22a2088d
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 15:56:24 2019 -0600

    Use new and delete for tui_gen_win_info
    
    This changes tui_gen_win_info to be allocated with new and destroyed
    with delete.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.c (init_and_make_win): Use new.
    	* tui/tui-data.h (struct tui_gen_win_info): Add constructor,
    	destructor, initializers.
    	(tui_alloc_generic_win_info): Don't declare.
    	* tui/tui-data.c (_locator): Add argument to constructor.
    	(source_win, disasm_win): New globals.
    	(exec_info): Remove.
    	(tui_source_exec_info_win_ptr, tui_disassem_exec_info_win_ptr):
    	Update.
    	(tui_alloc_generic_win_info): Remove.
    	(init_content_element): Use new.
    	(tui_win_info::tui_win_info): Update.
    	(free_content_elements) <case DATA_WIN>: Use delete.

commit dc2c33e4562e0af441a9c8acff0400a78cb45d98
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 15:53:36 2019 -0600

    Change tui_which_element::data_window to be a pointer
    
    A coming patch will add a constructor to tui_gen_win_info.  However,
    because the tui_which_element union contains an object of this type,
    first something must be done here in order to avoid having a union
    with a member that has a constructor.  This patch changes this element
    to be a pointer instead.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-wingeneral.c (tui_refresh_win): Update.
    	* tui/tui-windata.c (tui_first_data_item_displayed)
    	(tui_delete_data_content_windows): Update.
    	* tui/tui-win.c (tui_data_window::set_new_height): Update.
    	* tui/tui-regs.c (tui_show_registers, tui_show_register_group)
    	(tui_display_registers_from, tui_check_register_values): Update.
    	* tui/tui-data.h (union tui_which_element) <data_window>: Now a
    	pointer.
    	* tui/tui-data.c (init_content_element): Update.  Allocate the new
    	window.
    	(tui_free_data_content): Update.
    	(free_content_elements) <case DATA_WIN>: Free the window.

commit 214a5cbea656f3ffc1e7e525627c56849347c709
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 15:28:03 2019 -0600

    Introduce set_highlight method
    
    This introduces the tui_win_info::set_highlight method, and changes
    the highlighting-related code to use bool rather than int.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-wingeneral.c (tui_unhighlight_win, tui_highlight_win):
    	Update.
    	* tui/tui-layout.c (make_command_window)
    	(show_source_disasm_command, show_data, init_and_make_win)
    	(show_source_or_disasm_and_command): Update.
    	* tui/tui-data.h (struct tui_win_info) <set_highlight>: New
    	method.
    	<can_highight, is_highlighted>: Now bool.
    	(tui_set_win_highlight): Don't declare.
    	* tui/tui-data.c (tui_set_win_highlight): Remove.

commit 8e2daf1532e587fee8d14aab1baad40e628065e2
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 15:17:52 2019 -0600

    Remove redundant check from make_visible
    
    This removes a check of the window type from make_visible.  This
    function already checks that the window type is not CMD_WIN near the
    top, so this condition can never be false.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-wingeneral.c (make_visible): Remove check of window
    	type.

commit 8903bd8a37f905f5d77d2e04219e1a1eddaa6133
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 15:16:52 2019 -0600

    Introduce max_height method
    
    This introduces the tui_win_info::max_height method and changes
    new_height_ok to use it, rather than checking the window type
    directly.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-win.c (tui_win_info::max_height)
    	(tui_cmd_window::max_height): New methods.
    	(new_height_ok): Call max_height.
    	* tui/tui-data.h (struct tui_win_info, struct tui_cmd_window)
    	<max_height>: New method.

commit 3f02ce1e3df15731872befd2e711854b2b259745
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 15:12:25 2019 -0600

    Introduce set_new_height method
    
    This introduces tui_win_info::set_new_height and implements it in the
    subclasses as appropriate.  This removes another switch on the window
    type.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-win.c (tui_source_window_base::set_new_height)
    	(tui_data_window::set_new_height): New methods.
    	(make_invisible_and_set_new_height): Call set_new_height method.
    	* tui/tui-data.h (struct tui_win_info)
    	(struct tui_source_window_base, struct tui_data_window)
    	<set_new_height>: New method.

commit 1825f487ae903438eb2a9b6f461337d8ec1b06c0
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 14:52:08 2019 -0600

    Introduce the refresh_all method
    
    This introduces the tui_win_info::refresh_all method and implements it
    as needed in subclasses.  The name and comment are a bit of a guess on
    my part.  The main benefit of this patch is removing another switch on
    the type of the window.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui.c (tui_rl_other_window): Call the refresh_all method.
    	* tui/tui-windata.c (tui_data_window::refresh_all): Rename from
    	tui_refresh_data_win.
    	* tui/tui-win.c (tui_source_window_base::refresh_all): New
    	method.
    	(tui_refresh_all_win): Call the refresh_all method.
    	(tui_set_focus): Likewise.
    	* tui/tui-data.h (struct tui_win_info) <refresh_all>: New method.
    	(struct tui_source_window_base, struct tui_data_window) <refresh>:
    	Likewise.

commit ad54d15bdb71b05010ece1ef32ab22ab46794166
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 14:43:56 2019 -0600

    Introduce two TUI source window methods
    
    This adds two methods to the TUI source window.  These are just
    renamings of existing functions.  It also changes the source window
    list to have a more precise type, letting the code be more type-safe.
    This will be useful again later.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (tui_refill_source_window)
    	(tui_set_is_exec_point_at): Don't declare.
    	* tui/tui-winsource.c (tui_update_source_windows_with_addr)
    	(tui_source_window_base::refill): Rename from
    	tui_refill_source_window.
    	(tui_source_window_base::do_scroll_horizontal): Update.
    	(tui_source_window_base::set_is_exec_point_at): Rename from
    	tui_set_is_exec_point_at.
    	(tui_update_all_breakpoint_info): Update.
    	* tui/tui-stack.c (tui_show_frame_info): Update.
    	* tui/tui-layout.c (show_data): Add cast.
    	* tui/tui-hooks.c (tui_redisplay_source): Call refill method.
    	* tui/tui-data.h (struct tui_source_window_base) <refill,
    	set_is_exec_point_at>: New methods.
    	(tui_source_windows, tui_add_to_source_windows): Update types.
    	(tui_add_to_source_windows): Remove redundant declaration.
    	* tui/tui-data.c (source_windows): Store tui_source_window_base.
    	(tui_source_windows): Change return type.
    	(tui_clear_source_windows_detail): Update.
    	(tui_add_to_source_windows): Change type of parameter.
    	(tui_free_all_source_wins_content): Update.

commit 2042b506c85274b4c652fbc9291be65b2550104d
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 14:27:28 2019 -0600

    Introduce the refresh method
    
    This adds tui_win_info::refresh and updates tui_source_window_base to
    implement it as well.  This lets us simplify tui_refresh_all, removing
    a check of the window type.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-wingeneral.c (tui_win_info::refresh)
    	(tui_source_window_base::refresh): New methods.
    	(tui_refresh_all): Call the refresh method.
    	* tui/tui-data.h (struct tui_win_info)
    	(struct tui_source_window_base) <refresh>: New method.

commit 56122977c04496325ca9d83231e7751ab94d6b14
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 14:24:42 2019 -0600

    Use bool for visibility
    
    This changes the visibility-related functions and data members in the
    TUI to use bool rather than int.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui.h (tui_is_window_visible): Return bool.
    	* tui/tui.c (tui_is_window_visible): Return bool.
    	* tui/tui-wingeneral.c (tui_make_window, make_visible)
    	(tui_make_visible, tui_make_invisible)
    	(tui_win_info::make_visible)
    	(tui_source_window_base::make_visible, make_all_visible)
    	(tui_make_all_visible, tui_make_all_invisible): Update.
    	* tui/tui-windata.c (tui_delete_data_content_windows): Update.
    	* tui/tui-data.h (struct tui_gen_win_info) <is_visible>: Now
    	bool.
    	(struct tui_win_info, struct tui_source_window_base)
    	(struct tui_cmd_window) <make_visible>: Change parameter to bool.
    	* tui/tui-data.c (tui_init_generic_part): Update.

commit cda37efbffb63e2634ea0600fdad2de6a8f9f3ad
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 14:22:21 2019 -0600

    Introduce make_visible method
    
    This introduceds the make_visible to tui_win_info and overrides it in
    subclasses as appropriate.  This allows the removal of the
    tui_win_is_source_type, as it is no longer used.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-wingeneral.c (tui_win_info::make_visible)
    	(tui_source_window_base::make_visible): New methods.
    	(make_all_visible): Make method call.
    	* tui/tui-data.h (struct tui_win_info) <make_visible>: New method.
    	(struct tui_source_window_base, struct tui_cmd_window): Override
    	make_visible.
    	(tui_win_is_source_type): Don't declare.
    	* tui/tui-data.c (tui_win_is_source_type): Remove.

commit 6a0ee02c22b78b6d49fda99b6f2f9154d0cb0a47
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 14:14:10 2019 -0600

    Remove an unneeded NULL check
    
    show_source_or_disasm_and_command will either create or reset the
    source window, so the final NULL check is not necessary.  This patch
    removes it.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.c (show_source_or_disasm_and_command): Remove
    	NULL check.

commit 63901aeccf923abaca02c8a58b1141d3859d7247
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 14:06:18 2019 -0600

    Inline constructors and initializers
    
    This inlines the constructors and initializers for tui_cmd_window and
    tui_data_window.  This makes the code a bit simpler.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-data.h (struct tui_data_window, struct tui_cmd_window):
    	Inline constructor.  Add initializers for members.
    	* tui/tui-data.c (tui_data_window, tui_cmd_window): Remove
    	constructors; now inline in class.

commit ceb13a13822b28d8e1cdc2e02975bb6569d3d8e6
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 14:04:11 2019 -0600

    Change tui_data_window::display_regs to bool
    
    This changes tui_data_window::display_regs to bool and updates the
    uses.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-regs.c (tui_show_registers): Update.
    	* tui/tui-data.h (struct tui_data_window) <display_regs>: Now
    	bool.
    	* tui/tui-data.c (tui_data_window::clear_detail)
    	(tui_data_window): Update.

commit 238eb706f902da8afef1d5e3c9fdfeecf688bac3
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 14:03:04 2019 -0600

    Remove struct tui_data_info
    
    Like the previous two patches, this removes struct tui_data_info in
    favor of inlining its contents into tui_data_window.  This was the
    last member of the tui_win_info detail union, so that is removed.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-windata.c (tui_display_all_data)
    	(tui_display_data_from_line, tui_display_data_from)
    	(tui_check_data_values, tui_data_window::do_scroll_vertical):
    	Update.
    	* tui/tui-regs.c (tui_last_regs_line_no)
    	(tui_line_from_reg_element_no, tui_first_reg_element_no_inline)
    	(tui_show_registers, tui_show_register_group)
    	(tui_display_registers_from, tui_display_reg_element_at_line)
    	(tui_display_registers_from_line, tui_check_register_values)
    	(tui_reg_next, tui_reg_prev): Update.
    	* tui/tui-layout.c (tui_set_layout, show_data): Update.
    	* tui/tui-data.h (struct tui_data_info): Remove.  Move contents to
    	tui_data_window.
    	(struct tui_win_info) <detail>: Remove.  Add new fields from
    	tui_data_info.
    	(TUI_DATA_WIN): Add cast.
    	* tui/tui-data.c (tui_data_window::clear_detail, tui_data_window)
    	(~tui_data_window): Simplify.

commit 81491aa0968e5bcab0388914f909ccb12e084e32
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 13:55:51 2019 -0600

    Remove struct tui_command_info
    
    Like the previous patch, this removes tui_command_info in favor of
    putting it elements directly into tui_cmd_window.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.c (show_source_disasm_command)
    	(show_source_or_disasm_and_command): Update.
    	* tui/tui-io.c (update_cmdwin_start_line)
    	(tui_redisplay_readline): Update.
    	* tui/tui-data.h (struct tui_command_info): Remove.
    	(struct tui_win_info) <detail>: Remove command_info member.
    	(struct tui_data_window) <start_line>: New member, from
    	tui_command_info.
    	(TUI_CMD_WIN): Add casts.

commit e6e4150110bcee66adfadb9f126eb3bb1fd7c054
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 13:46:18 2019 -0600

    Remove struct tui_source_info
    
    The tui_source_info struct is used as a member of the "detail" union
    in tui_win_info, and this member of the union is only used by source
    and disassembly windows.  This patch removes tui_source_info and moves
    its members directly to tui_source_window_base.  This simplifies the
    code by removing a layer of references from many places.  In a few
    spots, a new cast was needed, but most of these will be removed by the
    end of the series.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.c (tui_update_source_window)
    	(tui_refill_source_window)
    	(tui_source_window_base::do_scroll_horizontal)
    	(tui_update_breakpoint_info, tui_set_exec_info_content)
    	(tui_show_exec_info_content, tui_erase_exec_info_content)
    	(tui_clear_exec_info_content): Update.
    	* tui/tui-wingeneral.c (make_all_visible, tui_refresh_all):
    	Update.
    	* tui/tui-win.c (make_invisible_and_set_new_height)
    	(make_visible_with_new_height): Update.
    	* tui/tui-source.c (tui_set_source_content)
    	(tui_show_symtab_source): Update.
    	* tui/tui-layout.c (extract_display_start_addr)
    	(show_source_disasm_command, show_data)
    	(make_source_or_disasm_window)
    	(show_source_or_disasm_and_command): Update.
    	* tui/tui-disasm.c (tui_set_disassem_content): Simplify.
    	(tui_disasm_window::do_scroll_vertical): Remove shadowing
    	"gdbarch".
    	* tui/tui-data.h (struct tui_source_info): Remove.  Move contents
    	to tui_source_window_base.
    	(struct tui_win_info) <detail>: Remove source_info member.
    	(struct tui_source_window_base) <has_locator>: Inline.
    	Move contents from tui_source_info; rename has_locator member to
    	m_has_locator.
    	(TUI_SRC_WIN, TUI_DISASM_WIN): Add casts.
    	* tui/tui-data.c (tui_source_window_base::has_locator): Move to
    	header file.
    	(tui_source_window_base::clear_detail, ~tui_source_window_base):
    	Simplify.
    	(tui_free_all_source_wins_content): Cast to
    	tui_source_window_base.

commit 44f0e208eb32a7ac469cef2b6760f72534abac09
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 11:37:49 2019 -0600

    Introduce has_locator method
    
    This changes tui_win_has_locator to be a method on tui_win_info, and
    changes the locator code to use bool rather than int.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-win.c (make_invisible_and_set_new_height)
    	(make_visible_with_new_height): Call has_locator method.
    	* tui/tui-layout.c (show_source_disasm_command, show_data)
    	(show_source_or_disasm_and_command): Update for bool change.
    	* tui/tui-data.h (struct tui_source_info) <has_locator>: Now bool.
    	(tui_win_info) <has_locator>: New method.
    	(struct tui_source_window_base) <has_locator>: New method.
    	(tui_win_has_locator): Don't declare.
    	* tui/tui-data.c (tui_source_window_base::has_locator): Rename
    	from tui_win_has_locator.
    	(tui_source_window_base): Use false, not FALSE.

commit 7778b9128f46b1bb7af965ae3821f63b05c627ef
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 11:29:45 2019 -0600

    Remove tui_clear_win_detail
    
    An earlier patch changed the context of the sole call to
    tui_clear_win_detail to make it clear that this can never be called
    with a NULL window pointer.  So, remove tui_clear_win_detail in favor
    of calling the method directly.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-data.h (tui_clear_win_detail): Don't declare.
    	* tui/tui-data.c (tui_clear_source_windows_detail): Call the
    	clear_detail method directly.
    	(tui_clear_win_detail): Remove.

commit f83d391c5aa3304faf8ef1384a6c64f082653260
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 16:31:56 2019 -0600

    Don't use TUI_DISASM_WIN in tui_disasm_window method
    
    The previous patch made it clear that the diassembly window scrolling
    method was written to assume there could only ever be a single
    disassembly window.  This changes that spot to use "this" rather than
    the TUI_DISASM_WIN global.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-disasm.c (tui_disasm_window::do_scroll_vertical): Use
    	"this", not TUI_DISASM_WIN.

commit 13446e05a363db17f0140b1450fc7df509d2ca37
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 11:22:38 2019 -0600

    Introduce methods for scrolling
    
    This changes the TUI to use virtual methods on the various window
    types for scrolling.  Window-specific functions for this purpose are
    renamed to be methods, and the generic tui_scroll function is removed
    as it is no longer called.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (tui_horizontal_source_scroll):  Don't
    	declare.
    	* tui/tui-winsource.c
    	(tui_source_window_base::do_scroll_horizontal): Rename from
    	tui_horizontal_source_scroll.
    	* tui/tui-windata.h (tui_vertical_data_scroll): Don't declare.
    	* tui/tui-windata.c (tui_data_window::do_scroll_vertical): Rename
    	from tui_vertical_data_scroll.
    	* tui/tui-win.h (tui_scroll): Don't declare.
    	* tui/tui-win.c (tui_win_info::forward_scroll)
    	(tui_win_info::backward_scroll, tui_win_info::left_scroll)
    	(tui_win_info::right_scroll): Rename and update.
    	(tui_scroll_forward_command, tui_scroll_backward_command)
    	(tui_scroll_left_command, tui_scroll_right_command): Update.
    	(tui_scroll): Remove.
    	* tui/tui-source.h: Don't declare tui_vertical_source_scroll.
    	* tui/tui-source.c (tui_source_window::do_scroll_vertical): Rename
    	from tui_vertical_source_scroll.
    	* tui/tui-disasm.h (tui_vertical_disassem_scroll): Don't declare.
    	* tui/tui-disasm.c (tui_disasm_window::do_scroll_vertical): Rename
    	from tui_vertical_disassem_scroll.
    	* tui/tui-data.h (struct tui_win_info) <do_scroll_vertical,
    	do_scroll_horizontal>: New methods.
    	<forward_scroll, backward_scroll, left_scroll, right_scroll>:
    	Likewise.
    	(struct tui_source_window_base): Add do_scroll_horizontal.
    	(struct tui_source_window, struct tui_disasm_window): Add
    	do_scroll_vertical.
    	(struct tui_data_window, struct tui_cmd_window): Add
    	do_scroll_horizontal and do_scroll_vertical.
    	* tui/tui-command.c (tui_dispatch_ctrl_char): Use method calls.

commit 5cf82909a7047cee471ee40cfe623250c258d76e
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 11:08:43 2019 -0600

    Create tui_disasm_window
    
    This introduces the new tui_disasm_window class, which represents a
    disassembly window.  It shares a lot of behavior with the source
    window, so a new tui_source_window_base class is also created.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-data.h (struct tui_source_window_base): New struct.
    	(struct tui_source_window): Derive from tui_source_window_base.
    	(struct tui_disasm_window): New struct.
    	* tui/tui-data.c (tui_source_window_base::clear_detail): Rename
    	from tui_source_window::clear_detail.
    	(tui_source_window_base): Rename from tui_source_window.
    	(~tui_source_window_base): Rename from ~tui_source_window.
    	(tui_alloc_win_info): Create a tui_disasm_window.

commit ee1d42d6c1a05725868a8ea4855eaa81cbbda635
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 10:52:27 2019 -0600

    Split the tui_win_info destructor
    
    This patch adds destructors to tui_source_window and tui_data_window,
    and splits ~tui_win_info as appropriate.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-data.h (struct tui_source_window)
    	(struct tui_data_window): Declare destructors.
    	* tui/tui-data.c (~tui_source_window, ~tui_data_window): New
    	destructors.
    	(tui_win_info): Simplify.

commit b4eb24524b5838141bd3c3998afc81f65302eca1
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 10:49:45 2019 -0600

    Remove tui_list
    
    This removes the tui_list type in favor of a std::vector.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.c (tui_display_main)
    	(tui_update_source_windows_with_addr)
    	(tui_update_all_breakpoint_info): Update.
    	* tui/tui-win.c (tui_resize_all, tui_adjust_win_heights)
    	(new_height_ok, parse_scrolling_args): Update.
    	* tui/tui-stack.c (tui_show_frame_info): Update.
    	* tui/tui-data.h (struct tui_list): Remove.
    	(tui_source_windows): Return a reference to a std::vector.
    	* tui/tui-data.c (source_windows): Now a std::vector.
    	(tui_source_windows): Change return type.
    	(tui_clear_source_windows): Rewrite.
    	(tui_clear_source_windows_detail, tui_add_to_source_windows)
    	(tui_free_all_source_wins_content): Rewrite.

commit 8761a91b2614304963bfe211ff8c682c7eba3b51
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 10:42:09 2019 -0600

    Introduce tui_win_info::clear_detail method
    
    This introduces the clear_detail method and updates the various
    subclasses of tui_win_info to implement it.  A subsequent patch will
    remove tui_clear_win_detail, but that isn't done for now because at
    this point it isn't readily obvious that the NULL check is not needed.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-data.h (struct tui_win_info, struct tui_source_window)
    	(struct tui_data_window, struct tui_cmd_window): Declare
    	clear_detail method.
    	* tui/tui-data.c (tui_source_window::clear_detail)
    	(tui_cmd_window::clear_detail, tui_data_window::clear_detail): New
    	methods.
    	(tui_clear_win_detail): Simplify.

commit 0ed69edaab683b9290a05962faa50d970facfa84
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 10:37:25 2019 -0600

    Simplify source and disassembly window creation
    
    Similar to the previous patch, neither make_source_window nor
    make_disasm_window could be called when *win_info_ptr was non-NULL.
    This patch simplifies the functions by removing the parameter and
    having them return their results directly.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.c (make_source_window, make_disasm_window)
    	(make_source_or_disasm_window): Remove win_info_ptr parameter.
    	Return the new window.
    	(show_source_disasm_command, show_data)
    	(show_source_or_disasm_and_command): Update.

commit 82432e10143669d4936848d77e2a7b78c62c26e0
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 10:32:35 2019 -0600

    Simplify command window creation
    
    make_command_window is never called when *win_info_ptr is non-NULL, so
    this patch simplifies the function by removing the parameter and
    having it return its result directly.  This in turn makes it more
    obvious that a NULL check in show_source_disasm_command can be
    removed.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.c (make_command_window): Remove win_info_ptr
    	parameter.  Return the new window.
    	(show_source_disasm_command): Update and remove NULL check.
    	(show_source_or_disasm_and_command): Update.

commit ec328aa512ee09ab326d59b417836bb950083230
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 10:23:10 2019 -0600

    Remove an unnecessary NULL check from the TUI
    
    In init_and_make_win, opaque_win_info can't be NULL after a new window
    is allocated.  This patch removes an unnecessary NULL check.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-layout.c (init_and_make_win): Remove NULL check.

commit 33b906abfa7721128791883875d90394f8e2e7c2
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 10:13:13 2019 -0600

    Create subclasses for different window types
    
    This changes the TUI so that each different major window type has its
    own subclass.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-data.h (struct tui_win_info): Make constructor
    	protected.  Make destructor virtual.  Add initializers.
    	(tui_source_window, tui_data_window, tui_cmd_window): New
    	classes.
    	* tui/tui-data.c (tui_win_info): Rename from init_win_info.  Now a
    	constructor.  Add "type" parameter.
    	(tui_source_window, tui_data_window, tui_cmd_window): New
    	constructors.
    	(tui_alloc_win_info): Instantiate the appropriate subclass.

commit e7e11af42dca6482302833c4106974176aa66052
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 09:43:21 2019 -0600

    Add destructor to tui_win_info
    
    This changes tui_free_window into a destructor for tui_free_window and
    then updates the users.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-win.c (tui_resize_all): Use delete.
    	* tui/tui-data.h (struct tui_win_info) <~tui_win_info>: Declare
    	destructor.
    	(tui_free_window): Don't declare.
    	* tui/tui-data.c (~tui_win_info): Rename from tui_free_window.
    	Update.

commit 6792b55e08ec49f40916d4f8d7168d0047b9e928
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 09:41:06 2019 -0600

    Use new and delete for TUI windows
    
    This changes tui_win_info to use new and delete, rather than XNEW and
    xfree.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-data.h (struct tui_win_info): Add constructor.
    	* tui/tui-data.c (tui_alloc_win_info): Use new.
    	(tui_free_window): Use delete.

commit 8e5cb9a54e156ba24a439aefa7b35e53b4cb0374
Author: Jan Beulich <jbeulich@novell.com>
Date:   Tue Jun 25 12:02:23 2019 +0200

    ld/plugins: avoid shadowing a C library symbol
    
    With my (oldish) gcc/glibc combination I'm seeing
    
    .../ld/plugin.c: In function ‘get_lto_kind’:
    .../ld/plugin.c:664: error: declaration of ‘index’ shadows a global declaration
    /usr/include/string.h:487: error: shadowed declaration is here
    .../ld/plugin.c: In function ‘get_lto_resolution’:
    .../ld/plugin.c:685: error: declaration of ‘index’ shadows a global declaration
    /usr/include/string.h:487: error: shadowed declaration is here
    .../ld/plugin.c: In function ‘get_lto_visibility’:
    .../ld/plugin.c:711: error: declaration of ‘index’ shadows a global declaration
    /usr/include/string.h:487: error: shadowed declaration is here

commit ab9f654ca3f1222f63533aabfffc223ae1fc69dc
Author: Jan Beulich <jbeulich@novell.com>
Date:   Tue Jun 25 12:01:50 2019 +0200

    bfd/elf-properties: avoid shadowing a C library symbol
    
    With my (oldish) gcc/glibc combination I'm seeing
    
    .../bfd/elf-properties.c: In function ‘elf_find_and_remove_property’:
    .../bfd/elf-properties.c:244: error: declaration of ‘remove’ shadows a global declaration
    /usr/include/stdio.h:157: error: shadowed declaration is here

commit 3e50a591d9f0c0b22bbf93d09eef7d2286f3716c
Author: Jan Beulich <jbeulich@novell.com>
Date:   Tue Jun 25 11:09:22 2019 +0200

    readelf: avoid shadowing a libiberty symbol
    
    With my (oldish) gcc I'm seeing
    
    .../binutils/readelf.c: In function ‘dump_ctf_indent_lines’:
    .../binutils/readelf.c:13851: error: declaration of ‘spaces’ shadows a global declaration
    .../binutils/../include/libiberty.h:253: error: shadowed declaration is here

commit 63160fc99678fd85311ad5c89494164e6f8439d7
Author: Jan Beulich <jbeulich@novell.com>
Date:   Tue Jun 25 11:08:53 2019 +0200

    objdump: avoid shadowing a libiberty symbol
    
    With my (oldish) gcc I'm seeing
    
    .../binutils/objdump.c: In function ‘dump_ctf_indent_lines’:
    .../binutils/objdump.c:3210: error: declaration of ‘spaces’ shadows a global declaration
    .../binutils/../include/libiberty.h:253: error: shadowed declaration is here

commit 2c70385689542a4c4cbe160601e54f9f18a4c4c5
Author: Jan Beulich <jbeulich@novell.com>
Date:   Tue Jun 25 09:41:33 2019 +0200

    x86: correct / adjust debug printing
    
    For quite some time we've been using combinations of bits for
    specifying various registers in operands and templates. I think it was
    Alan who had indicated that likely the debug printing would need
    adjustment as a result. Here we go.
    
    Accumulator handling for GPRs gets changed to match that for FPU regs.
    For this to work, OPERAND_TYPE_ACC{32,64} get repurposed, with their
    original uses replaced by direct checks of the two bits of interest,
    which is cheaper than operand_type_equal() invocations.
    
    For SIMD registers nothing similar appears to be needed, as respective
    operands get stripped from the (copy of the) template before pt() is
    reached.
    
    The type change on pi() is to silence a compiler diagnostic. Arguably
    its other parameter could also be const-qualified.

commit 4970191fa557c4769697fb41db06f2dcb5f7de2e
Author: Jan Beulich <jbeulich@novell.com>
Date:   Tue Jun 25 09:40:44 2019 +0200

    x86: document certain command line options as "dangerous"
    
    Errata BT36, BT41, and BT230 mean that gas may, when using one ofthese
    options, produce code that causes #UD on (at least) SandyBridge systems.

commit 54fbadc0c35f3dad663e2e175ea8d60546ffd710
Author: Jan Beulich <jbeulich@novell.com>
Date:   Tue Jun 25 09:28:33 2019 +0200

    x86: drop dqa_mode
    
    I assume this mode was needed when EVEX.W handling wasn't really correct
    yet for other than 64-bit mode. It's clearly not needed anymore. Its
    elimination also allows dropping the EVEX.W split of VCVT{,U}SI2SS. (For
    the record, the dropped mode would have been wrong if used in any table
    entry not already guaranteeing EVEX.W=1.)

commit a38d71189b5895bae7bb476aa34d8a7ba75376d6
Author: Jan Beulich <jbeulich@novell.com>
Date:   Tue Jun 25 09:27:49 2019 +0200

    x86: don't open code is_any_vex_encoding()

commit a280ab8e81498c6049dca79f64bd0cc02ead01ab
Author: Jan Beulich <jbeulich@novell.com>
Date:   Tue Jun 25 09:27:05 2019 +0200

    x86: simplify OP_I64()
    
    The only meaningful difference from OP_I() is the handling of the
    VEX.W=1 case in 64-bit mode for bytemode being v_mode. Funnel
    everything else into OP_I(), and drop no longer needed local
    variables.

commit e1a1babdad9d14b935cbddc7d63fb76a580a16c5
Author: Jan Beulich <jbeulich@novell.com>
Date:   Tue Jun 25 09:25:26 2019 +0200

    x86: fix (dis)assembly of certain SSE2 insns in 16-bit mode
    
    MOVNTI was wrongly assembled with a 66h prefix. Add IgnoreSize to
    address this. It and the scalar to/from integer conversion insns also
    were also wrongly using Ev / Gv, leading to 16-bit register names being
    printed when 32-bit ones were meant.
    
    Clone the 32-bit SSE2 test to cover both assembler and disassembler.

commit b8364fa775112f036a80e799b70311f69baac131
Author: Jan Beulich <jbeulich@novell.com>
Date:   Tue Jun 25 09:23:48 2019 +0200

    x86-64: also optimize ANDQ with immediate fitting in 7 bits
    
    The same reasoning applies here as did/does for immediates fitting in
    31 bits.

commit 2a410bd1c373d377c221476ccda2156b595e6d6b
Author: Jan Beulich <jbeulich@novell.com>
Date:   Tue Jun 25 09:22:38 2019 +0200

    x86: add CVT{,T}PS2PI cases to xmmwords test
    
    I've (not so) recently noticed this further pair which should be tested
    here.

commit de62696504f96816faf2165132d907924e904649
Author: Alan Modra <amodra@gmail.com>
Date:   Tue Jun 25 16:56:16 2019 +0930

    Fix logical expression in last commit
    
    	* config/tc-ppc.c (ppc_handle_align): Add parentheses.

commit 22f72c4868a1fd55d8d9b1cbabe6e01ed5a6f072
Author: Alan Modra <amodra@gmail.com>
Date:   Tue Jun 25 10:12:58 2019 +0930

    PowerPC nops
    
    This patch corrects ppc rs_align_code handling to choose the alignment
    nops based on the machine in force at the alignment directive rather
    than the machine at the end of file.
    
    	* config/tc-ppc.h (ppc_nop_select): Declare.
    	(NOP_OPCODE): Define.
    	* config/tc-ppc.c (ppc_elf_end, ppc_xcoff_end): Zero ppc_cpu.
    	(ppc_nop_encoding_for_rs_align_code): New enum.
    	(ppc_nop_select): New function.
    	(ppc_handle_align): Don't use ppc_cpu here.  Get nop type from frag.
    	* testsuite/gas/ppc/groupnop.d,
    	* testsuite/gas/ppc/groupnop.s: New test.
    	* testsuite/gas/ppc/ppc.exp: Run it.

commit 2e7c439dec066ac8a597d0b85193b8d3ec8e09eb
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Tue Jun 25 00:00:35 2019 +0000

    Automatic date update in version.in

commit 04b865dc2ede2b8ca8c60f0487a179eb97895fee
Author: Jim Wilson <jimw@sifive.com>
Date:   Mon Jun 24 13:50:10 2019 -0700

    RISC-V: Enable lui relaxation for CODE and MERGE sections.
    
    	2019-06-24  Ilia Diachkov  <ilia.diachkov@optimitech.com>
    	bfd/
    	* elfnn-riscv.c (_bfd_riscv_relax_lui): Delete early exit when
    	SEC_MERGE or SEC_CODE flags are set.
    	(_bfd_riscv_relax_section): New local symtype.  Set sym_sec and
    	symtype consistently.  Don't include sec_addr (sym_sec) in symval.
    	Add check for SEC_INFO_TYPE_MERGE and call _bfd_merged_section_offset.
    	Add sec_addr (sym_sec) after handling merge sections.

commit f93ab3a0b8039a1667a666f013cca50b03d67f9b
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Mon Jun 24 11:08:40 2019 -0700

    elf: Remove the property after reporting its removal
    
    commit d2ef37ebd9f771d06edf1fdea37970f60b242b2d
    Author: H.J. Lu <hjl.tools@gmail.com>
    Date:   Fri Dec 7 08:30:30 2018 -0800
    
        elf: Report property change when merging properties
    
    failed to remove the property after reporting it has been removed.  This
    patch corrects it.
    
    bfd/
    
    	PR ld/24721
    	* elf-properties.c (elf_merge_gnu_property_list): Remove the
    	property after reporting property removal.
    
    ld/
    
    	PR ld/24721
    	* testsuite/ld-x86-64/x86-64.exp: Run PR ld/24721 tests.
    	* testsuite/ld-x86-64/pr24721-x32.d: New file.
    	* testsuite/ld-x86-64/pr24721.d: Likewise.
    	* testsuite/ld-x86-64/pr24721.map: Likewise.
    	* testsuite/ld-x86-64/pr24721a.s: Likewise.
    	* testsuite/ld-x86-64/pr24721b.s: Likewise.

commit 164e3873cf41d01a9a67396575dceef7489cee64
Author: Tom de Vries <tdevries@suse.de>
Date:   Mon Jun 24 18:26:10 2019 +0200

    [gdb/testsuite] Fix label reference in implptr-64bit.exp
    
    When running gdb.dwarf2/implptr-64bit.exp with board cc-with-dwz-m, we run into:
    ...
    dwz: dwz.c:2363: checksum_die: \
      Assertion `\
        ((!op_multifile && !rd_multifile && !fi_multifile) || cu != die_cu (ref)) \
        && (!op_multifile || cu->cu_chunk == die_cu (ref)->cu_chunk)' failed.
    cc-with-tweaks.sh: line 218: 13030 Aborted  \
      $DWZ -m ${output_file}.dwz "$output_file" ${output_file}.alt > /dev/null
    ...
    In other words, PR dwz/24170.
    
    The trigger for the dwz PR is when intra-CU references are encoded using
    section-relative encoding DW_FORM_ref_addr, but could have been encoded using
    CU-relative encoding DW_FORM_ref4.
    
    Fix the intra-CU '%' label reference in implptr-64bit.exp.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-06-24  Tom de Vries  <tdevries@suse.de>
    
    	* gdb.dwarf2/implptr-64bit.exp: Fix intra-CU '%' label reference.

commit 824eacee59ea8c5625b9fad5b6eb0861b4d0f691
Author: Tom de Vries <tdevries@suse.de>
Date:   Mon Jun 24 13:29:23 2019 +0200

    [gdb/testsuite] Fix DW_AT_decl_file in gdb.trace tests
    
    When running gdb.trace/{entry-values.exp,unavailable-dwarf-piece.exp} with
    board cc-with-dwz, we run into two failures related to the DW_AT_decl_file
    attribute:
    - The encoding DW_FOR_sdata is used for DW_AT_decl_file, while the attribute
      is required to have a an "unsigned integer constant" value.
    - The DW_AT_decl_file attributes refer to a file with index one, while there's
      no such file.
    
    Fix this by using DW_FOR_udata and the value 0, meaning "no file specified".
    
    Tested on x86_64-linux with board native-gdbserver.
    
    gdb/testsuite/ChangeLog:
    
    2019-06-24  Tom de Vries  <tdevries@suse.de>
    
    	* gdb.trace/entry-values.exp: Use DW_FORM_udata instead of
    	DW_FOR_sdata for DW_AT_decl_file.  Use 0 for DW_AT_decl_file.
    	* gdb.trace/unavailable-dwarf-piece.exp: Same.

commit 385b97d3ac9c5c57a610d2e5b358ed888008ae31
Author: Tom de Vries <tdevries@suse.de>
Date:   Mon Jun 24 12:20:39 2019 +0200

    [gdb/testsuite] Fix inter-cu refs in inlined_subroutine-inheritance.exp
    
    When running gdb.dwarf2/inlined_subroutine-inheritance.exp with board
    cc-with-dwz, we run into:
    ...
    dwz: inlined_subroutine-inheritance: Couldn't find DIE referenced by \
      DW_AT_abstract_origin
    ...
    
    The problem is that the DW_AT_abstract_origin attributes refer to DIEs in
    other CUs, while the references are encoded using the cu-relative encoding
    DW_FORM_ref4.
    
    Fix this by forcing the references to use DW_FORM_ref_addr.
    
    Tested on x86_64-linux.
    
    Tested with commit c24bdb023c "Introduce dwarf2_cu::get_builder" reverted,
    and verified that the test-case fails in the same way before and after this
    patch.
    
    gdb/testsuite/ChangeLog:
    
    2019-06-24  Tom de Vries  <tdevries@suse.de>
    
    	* gdb.dwarf2/inlined_subroutine-inheritance.exp:

commit a33f989b4ed69c9f8f905360444e3d57a83a0cb6
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Mon Jun 24 00:00:31 2019 +0000

    Automatic date update in version.in

commit bb22a41815facfaa3de621aad5d055eb8e477082
Author: Alan Modra <amodra@gmail.com>
Date:   Sun Jun 23 12:28:39 2019 +0930

    PR24704, Internal error building skiboot for powerpc64-linux-gnu
    
    While the skiboot linker script bears some culpability in this PR,
    it's also true that the GOT indirect to GOT relative optimisation for
    16-bit offsets isn't safe.  At least, it isn't safe to remove the GOT
    entry based on distance between the GOT pointer and symbol calculated
    from the preliminary layout.  So this patch removes that optimisation,
    and reduces the range allowed for 32-bit and 34-bit offsets.
    
    	PR 24704
    bfd/
    	* elf64-ppc.c (R_PPC64_GOT16_DS): Don't set has_gotrel.
    	(ppc64_elf_edit_toc): Don't remove R_PPC64_GOT16_DS got entries.
    	Reduce range of offsets allowed for other GOT relocs.
    ld/
    	* testsuite/ld-powerpc/elfv2exe.d: Update.
    	* testsuite/ld-powerpc/elfv2so.d: Update.

commit 14b2a8e4244a29208ad430167860a0f01b20f215
Author: Alan Modra <amodra@gmail.com>
Date:   Sun Jun 23 12:10:02 2019 +0930

    PR24689 again, string table corruption
    
    Depending on optimisation level and gcc version, git commit 890f750a3b
    introduces a false positive warning that i_shdrp may be used
    uninitialized.
    
    	PR 24689
    	* elfcode.h (elf_object_p): Warning fix.

commit a8d21e9ef0ae63c650e2ffa14edf5b1cd22be5cb
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Sun Jun 23 00:00:55 2019 +0000

    Automatic date update in version.in

commit f95675e12d3ab100ce11257a09663c68df7784ee
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jun 22 11:50:19 2019 -0600

    Remove tui_first_data_element_no_in_line
    
    tui_first_data_element_no_in_line is never used.  This patch removes
    it.  Tested by rebuilding, and by grep.
    
    gdb/ChangeLog
    2019-06-22  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-windata.h (tui_first_data_element_no_in_line): Don't
    	declare.
    	* tui/tui-windata.c (tui_first_data_element_no_in_line): Remove.

commit 5bff081c10ab4debfd3416739fda93b6c275496b
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 10:04:49 2019 -0600

    Remove two unused functions from the TUI
    
    This removes two unused functions from the TUI.  According to
    "git grep -G", they have never been used.
    
    gdb/ChangeLog
    2019-06-22  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-data.h (tui_del_window, tui_del_data_windows): Don't
    	declare.
    	* tui/tui-data.c (tui_del_window, tui_del_data_windows): Remove.

commit 47e3f47487396414ac936e2fd37b870fe08a55d0
Author: Tom de Vries <tdevries@suse.de>
Date:   Sat Jun 22 10:59:37 2019 +0200

    [gdb] Fix s390x -m31 build
    
    When building gdb on s390x with -m31, we run into this Wformat
    warning (which Werror turns into an error):
    ...
    gdb/dwarf2read.c: In function \
      'void create_addrmap_from_aranges(dwarf2_per_objfile*, \
                                        dwarf2_section_info*)':
    gdb/dwarf2read.c:3277:22: error: format '%zu' expects argument of type \
      'size_t', but argument 3 has type 'int' [-Werror=format=]
        warning (_("Section .debug_aranges in %s entry at offset %zu "
    ...
    
    The Wformat warning is triggered in this statement:
    ...
              warning (_("Section .debug_aranges in %s entry at offset %zu "
                         "length %s exceeds section length %s, "
                         "ignoring .debug_aranges."),
                       objfile_name (objfile), entry_addr - section->buffer,
                       plongest (bytes_read + entry_length),
                       pulongest (section->size));
    ...
    where 'entry_addr - section->buffer' is of type ptrdiff_t and '%zu' prints an
    unsigned with the same size as size_t/ssize_t.
    
    On s390x with -m31, we have:
    - size_t   : unsigned long int (32-bit)
    - ptrdiff_t: int               (32-bit)
    
    Wformat warns against this because even though long int and int have the same
    size, the types are not compatible.
    
    [ The Wformat warning is to similar to what we would get for x86_64 -m32
    (where long and int are also the same size) and:
    ...
    int i;
    printf ("%ld", i);
    ... ]
    
    Fix this by using '%s' and plongest instead of '%zu' to print ptrdiff_t.
    
    Build and reg-tested on x86_64.
    
    gdb/ChangeLog:
    
    2019-06-22  Tom de Vries  <tdevries@suse.de>
    
    	* dwarf2read.c (create_addrmap_from_aranges)
    	(read_debug_names_from_section): Print ptrdiff_t using '%s' and plongest
    	instead of '%zu'.

commit 5ec331ef744a495ad35469928564a43a09391562
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Sat Jun 22 00:00:20 2019 +0000

    Automatic date update in version.in

commit c596f180a130c85faf8942d161be9ecf71c6791c
Author: Tom de Vries <tdevries@suse.de>
Date:   Fri Jun 21 23:56:18 2019 +0200

    [gdb/testsuite] Compile index-cache.c with -Wl,--build-id
    
    When testing gdb.base/index-cache.exp using a gcc build without
    --enable-linker-build-id we get:
    ...
    FAIL: gdb.base/index-cache.exp: \
      test_cache_enabled_miss: at least one file was created
    FAIL: gdb.base/index-cache.exp: \
      test_cache_enabled_miss: couldn't get executable build id
    FAIL: gdb.base/index-cache.exp: \
    test_cache_enabled_hit: check index-cache stats
    ...
    
    With "set debug index-cache on" we find:
    ...
    (gdb) file index-cache
    Reading symbols from index-cache...
    index cache: objfile index-cache has no build id
    ...
    
    The problem is that a build-id is required for the index-cache functionality.
    
    Fix this by compiling index-cache.c with -Wl,--build-id.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-06-21  Tom de Vries  <tdevries@suse.de>
    
    	* gdb.base/index-cache.exp: Add additional_flags=-Wl,--build-id.

commit ad692897c12247d1f8fe4e6a2f6e6d9f22703170
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Fri Jun 21 13:18:41 2019 -0700

    i386: Break i386-dis-evex.h into small files
    
    Break i386-dis-evex.h into small files such that each file is included
    just once.
    
    	* i386-dis-evex.h: Break into ...
    	* i386-dis-evex-len.h: New file.
    	* i386-dis-evex-mod.h: Likewise.
    	* i386-dis-evex-prefix.h: Likewise.
    	* i386-dis-evex-reg.h: Likewise.
    	* i386-dis-evex-w.h: Likewise.
    	* i386-dis.c: Include i386-dis-evex-reg.h, i386-dis-evex-prefix.h,
    	i386-dis-evex.h, i386-dis-evex-len.h, i386-dis-evex-w.h and
    	i386-dis-evex-mod.h.

commit fd5866f6aad7336f7a2b59578b9deef81383ea3b
Author: Simon Marchi <simon.marchi@efficios.com>
Date:   Fri Jun 21 14:10:15 2019 -0400

    dwarf2read: Get rid of VEC (dwarf2_section_info_def)
    
    This patch removes uses of VEC (dwarf2_section_info_def) in favor of
    std::vector<dwarf2_section_info>.  The conversion is relatively
    straightforward, no function changes are intended.
    
    gdb/ChangeLog:
    
    	* dwarf2read.h (dwarf2_section_info_def): Remove.
    	(DEF_VEC_O (dwarf2_section_info_def)): Remove.
    	* dwarf2read.c (struct dwo_sections) <types>: Change type to
    	std::vector<dwarf2_section_info>.
    	(struct dwo_file) <~dwo_file>: Remove.
    	(dwarf2_per_objfile::~dwarf2_per_objfile): Don't manually free
    	types field.
    	(dwarf2_per_objfile::locate_sections): Adjust to std::vector.
    	(dwarf2_read_debug_names): Likewise.
    	(create_debug_types_hash_table): Change parameter type to
    	array_view, adjust code accordingly.
    	(dwarf2_locate_dwo_sections): Adjust to std::vector.
    	(partial_die_info::fixup): Likewise.
    	(determine_prefix): Likewise.
    	* dwarf-index-write.c (write_psymtabs_to_index): Adjust.

commit fb1eb2f94a62813ab3daa34da59c035717ffb9da
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date:   Fri Jun 21 14:10:57 2019 -0400

    dwarf2read: Make dwo_file::dbfd a gdb_bfd_ref_ptr
    
    This removes the manual call to gdb_bfd_ref in favor of gdb_bfd_ref_ptr.
    
    gdb/ChangeLog:
    
    	* dwarf2read.c (struct dwo_file) <dbfd>: Change type to
    	gdb_bfd_ref_ptr.
    	<~dwo_file>: Remove call to gdb_bfd_unref.
    	(open_and_init_dwo_file): Move gdb_bfd_ref_ptr into dbfd field. Call
    	gdb_bfd_ref_ptr::get.

commit 51ac9db596ea9f0affa9f7db25bb179cf70beac4
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date:   Fri Jun 21 14:10:14 2019 -0400

    dwarf2read: C++ify dwo_file
    
    This patch changes dwo_file to be allocated/deallocated with new/delete,
    so that we can start using C++ features in it, and in struct
    dwo_sections.
    
    The free_dwo_file function becomes the destructor of struct dwo_file
    (and will disappear in upcoming patches, which will use gdb_bfd_ref_ptr
    for dbfd and an std::vector for sections.types).
    
    gdb/ChangeLog:
    
    	* dwarf2read.h (struct dwarf2_per_objfile) <dwo_files>: Change
    	type to htab_up.
    	* dwarf2read.c (struct dwo_file): Initialize fields.
    	<~dwo_file>: New.
    	(free_dwo_file): Remove, move content to ~dwo_file.
    	(struct dwo_file_deleter): Remove.
    	(dwo_file_up>: Remove custom deleter.
    	(free_dwo_files): Remove.
    	(dwarf2_per_objfile::~dwarf2_per_objfile): Don't explicitly free
    	dwo_files.
    	(process_skeletonless_type_units): Call unique_ptr::get.
    	(allocate_dwo_file_hash_table): Add deleter to created hash
    	table.  Change return type to htab_up.
    	(lookup_dwo_file_slot): Don't memset dwo_file, call
    	unique_ptr::get.
    	(create_dwo_unit_in_dwp_v1): Allocate dwo_file with new.
    	(create_dwo_unit_in_dwp_v2): Likewise.
    	(open_and_init_dwo_file): Likewise.
    	(free_dwo_file_from_slot): Remove.

commit dc4ccb6f7f07e41616fd42625226229f0795d198
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date:   Fri Jun 21 14:10:13 2019 -0400

    dwarf2read: Use bool for dwarf2_section_info fields
    
    Use bool instead of char where applicable in dwarf2_section_info.
    
    No functional changes intended.
    
    gdb/ChangeLog:
    
    	* dwarf2read.h (struct dwarf2_section_info) <readin,
    	is_virtual>: Change type to bool.
    	* dwarf2read.c (dwarf2_read_section, create_dwp_v2_section): Use
    	true instead of 1.

commit b13a7d03c29e28bc0b38ce166ad1907403709d36
Author: Tom de Vries <tdevries@suse.de>
Date:   Fri Jun 21 17:03:27 2019 +0200

    [gdb/testsuite] Mark ptype_union.exp as unsupported for cc-with-gdb-index
    
    When testing gdb with board cc-with-gdb-index, we run into:
    ...
    FAIL: gdb.ada/ptype_union.exp: ptype global
    FAIL: gdb.ada/ptype_union.exp: print global
    ...
    
    The index is not supported for Ada (PR24713), and cc-with-gdb-index does not
    add an index for Ada test-cases.  However, this test-case compiles C sources,
    for which cc-with-gdb-index does add an index.  In gdb we load the executable
    containing the index and set the language to Ada, resulting in gdb trying to
    handle something that is not supported.
    
    Fix the fail by marking this unsupported.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-06-21  Tom de Vries  <tdevries@suse.de>
    
    	PR testsuite/24518
    	PR ada/24713
    	* gdb.ada/ptype_union.exp: Mark as unsupported if executable contains
    	index.

commit be74b5b71481afe03aad074ad1951dcae152b97a
Author: Andreas Schwab <schwab@linux-m68k.org>
Date:   Fri Jun 21 14:42:22 2019 +0200

    Add gnulib to gdb release tarball
    
    * src-release.sh (GDB_SUPPORT_DIRS): Add gnulib.

commit 70175d8d62178279d0fecce661b26a4f5b209fea
Author: Gary Benson <gbenson@redhat.com>
Date:   Fri Jun 21 13:23:59 2019 +0100

    Fix gnulib/update-gnulib.sh
    
    This commit fixes two paths in update-gnulib.sh that weren't updated
    when gnulib was moved to toplevel.
    
    gnulib/ChangeLog:
    
    	* update-gnulib.sh: Adjust paths.

commit cf02c44dfd2876867ebd6baa3ce19cf41ff978e1
Author: Nick Alcock <nick.alcock@oracle.com>
Date:   Wed Jun 19 15:56:52 2019 +0100

    libctf: fix ctf_open endianness problems with raw CTF files
    
    ctf_open (or, rather, ctf_fdopen, which underlies it) has several
    endianness problems, even though it was written after the
    endian-swapping code was implemented, so should have been endian-aware.
    
    Even though the comment right above the relevant check says that it wil
    check for CTF magic in any endianness, it only checks in the native
    endianness, so opening raw LE CTF files on BE, or vice-versa, will fail.
    It also checks the CTF version by hand, without ever endianness-swapping
    the header, so that too will fail, and is entirely redundant because
    ctf_simple_open does the job properly in any case.  We have a similar
    problem in the next if block, which checks for raw CTF archives: we are
    checking in the native endianness while we should be doing a le64toh()
    on it to check in little-endian form only: so opening CTF archives
    created on the local machine will fail if the local machine is
    big-endian.
    
    Adding insult to injury, if ctf_simple_open then fails, we go on and try
    to turn it into a single-element CTF archive regardless, throwing the
    error away.  Since this involves dereferencing null pointers it is not
    likely to work very well.
    
    libctf/
    	* ctf-open-bfd.c: Add swap.h and ctf-endian.h.
    	(ctf_fdopen): Check for endian-swapped raw CTF magic, and
    	little-endian CTF archive magic.  Do not check the CTF version:
    	ctf_simple_open does that in endian-safe ways.  Do not dereference
    	null pointers on open failure.

commit 7cee18263c234073bfe88cbc962b1fc68509df82
Author: Nick Alcock <nick.alcock@oracle.com>
Date:   Wed Jun 19 12:34:56 2019 +0100

    libctf: endianness fixes
    
    Testing of the first code to generate CTF_K_SLICEs on big-endian
    revealed a bunch of new problems in this area.  Most importantly, the
    trick we did earlier to avoid wasting two bytes on padding in the
    ctf_slice_t is best avoided: because it leads to the whole file after
    that point no longer being naturally aligned, all multibyte accesses
    from then on must use memmove() to avoid unaligned access on platforms
    where that is fatal.  In future, this is planned, but for now we are
    still doing direct access in many places, so we must revert to making
    ctf_slice_t properly aligned for storage in an array.
    
    Rather than wasting bytes on padding, we boost the size of cts_offset
    and cts_bits.  This is still a waste of space (we cannot have offsets or
    bits in bitfields > 256) but it cannot be avoided for now, and slices
    are not so common that this will be a serious problem.
    
    A possibly-worse endianness problem fixed at the same time involves
    a codepath used only for foreign-endian, uncompressed CTF files, where
    we were not copying the actual CTF data into the buffer, leading to
    libctf reading only zeroes (or, possibly, uninitialized garbage).
    
    Finally, when we read in a CTF file, we copy the header and work from
    the copy.  We were flipping the endianness of the header copy, and of
    the body of the file buffer, but not of the header in the file buffer
    itself: so if we write the file back out again we end up with an
    unreadable frankenfile with header and body of different endiannesses.
    Fix by flipping both copies of the header.
    
    include/
    	* ctf.h (ctf_slice_t): Make cts_offset and cts_bits unsigned
    	short, so following structures are properly aligned.
    
    libctf/
    	* ctf-open.c (get_vbytes_common): Return the new slice size.
    	(ctf_bufopen): Flip the endianness of the CTF-section header copy.
    	Remember to copy in the CTF data when opening an uncompressed
    	foreign-endian CTF file.  Prune useless variable manipulation.

commit 0b4fa56e07639ed28cbbcd890868e01a82a5e45c
Author: Nick Alcock <nick.alcock@oracle.com>
Date:   Wed Jun 19 12:27:18 2019 +0100

    libctf: unidentified type kinds on open are a sign of file corruption
    
    If we see a CTF type with a kind we do not recognize in its ctt_info
    during opening, we cannot skip it and continue opening the file: if the
    type kind is unknown, we do not know how long its vlen is, and we cannot
    have skipped past it: so if we continue reading we will almost certainly
    read in part of the vlen as if it were a new ctf_type_t.
    
    Avoid this trouble by considering unknown type kinds to be a reason to
    return ECTF_CORRUPT, just like everything else that reads in type kinds
    does.
    
    libctf/
    	* ctf-open.c (ctf_types): Fail when unidentified type kinds are
    	seen.

commit 364620bf636a0a961892c9274616f8d5ad85eecc
Author: Nick Alcock <nick.alcock@oracle.com>
Date:   Wed Jun 19 12:23:38 2019 +0100

    libctf: dump header offsets into the debugging output
    
    This is an essential first piece of info needed to debug both libctf
    writing and reading problems, and we weren't recording it anywhere!
    
    (This is a short-term fix: fairly soon, we will record all of this in a
    form that outlives ctf_bufopen, and then ctf_dump() will be able to dump
    it like it can everything else.)
    
    libctf/
    	* ctf-open.c (ctf_bufopen): Dump header offsets into the debugging
    	output.

commit 65365aa856e5a258329dc350b02bbb51f84b4c16
Author: Nick Alcock <nick.alcock@oracle.com>
Date:   Wed Jun 19 12:20:47 2019 +0100

    libctf: drop mmap()-based CTF data allocator
    
    This allocator has the ostensible benefit that it lets us mprotect() the
    memory used for CTF storage: but in exchange for this it adds
    considerable complexity, since we have to track allocation sizes
    ourselves for use at freeing time, note whether the data we are storing
    was ctf_data_alloc()ed or not so we know if we can safely mprotect()
    it... and while the mprotect()ing has found few bugs, it *has* been the
    cause of more than one due to errors in all this tracking leading to us
    mprotect()ing bits of the heap and stuff like that.
    
    We are about to start composing CTF buffers from pieces so that we can
    do usage-based optimizations on the strtab.  This means we need
    realloc(), which needs nonportable mremap() and *more* tracking of the
    *original* allocation size, and the complexity and bureaucracy of all of
    this is just too high for its negligible benefits.
    
    Drop the whole thing and just use malloc() like everyone else.  It knows
    better than we do when it is safe to use mmap() under the covers,
    anyway.
    
    While we're at it, don't leak the entire buffer if ctf_compress_write()
    fails to compress it.
    
    libctf/
    	* ctf-subr.c (_PAGESIZE): Remove.
    	(ctf_data_alloc): Likewise.
    	(ctf_data_free): Likewise.
    	(ctf_data_protect): Likewise.
    	* ctf-impl.h: Remove declarations.
    	* ctf-create.c (ctf_update): No longer call ctf_data_protect: use
    	ctf_free, not ctf_data_free.
    	(ctf_compress_write): Use ctf_data_alloc, not ctf_alloc.  Free
    	the buffer again on compression error.
    	* ctf-open.c (ctf_set_base): No longer track the size: call
    	ctf_free, not ctf_data_free.
    	(upgrade_types): Likewise.  Call ctf_alloc, not ctf_data_alloc.
    	(ctf_bufopen): Likewise.  No longer call ctf_data_protect.

commit 24865428034f44d9fffe6b2d9a318e1bd507c63a
Author: Nick Alcock <nick.alcock@oracle.com>
Date:   Wed Jun 19 12:14:16 2019 +0100

    libctf: handle errors on dynhash insertion better
    
    We were missing several cases where dynhash insertion might fail, likely
    due to OOM but possibly for other reasons.  Pass the errors on.
    
    libctf/
    	* ctf-create.c (ctf_dtd_insert): Pass on error returns from
    	ctf_dynhash_insert.
    	(ctf_dvd_insert): Likewise.
    	(ctf_add_generic): Likewise.
    	(ctf_add_variable): Likewise.
    	* ctf-impl.h: Adjust declarations.

commit 890f750a3b053532a4b839a2dd6243076de12031
Author: Alan Modra <amodra@gmail.com>
Date:   Fri Jun 21 11:51:38 2019 +0930

    PR24689, string table corruption
    
    The testcase in the PR had a e_shstrndx section of type SHT_GROUP.
    hdr->contents were initialized by setup_group rather than being read
    from the file, thus last byte was not zero and string dereference ran
    off the end of the buffer.
    
    	PR 24689
    	* elfcode.h (elf_object_p): Check type of e_shstrndx section.

commit 2a81e61405262fd0299a5079b29ce417a8edba0c
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Fri Jun 21 00:00:20 2019 +0000

    Automatic date update in version.in

commit 7d10623d3b153d6c15406b203fb1cf111c53f1dd
Author: Tom de Vries <tdevries@suse.de>
Date:   Thu Jun 20 11:31:36 2019 +0200

    [gdbserver] Fix s390x -m31 gdbserver build
    
    When building gdb on s390x with -m31, we run into this error:
    ...
    gdb/gdbserver/linux-s390-ipa.c: \
      In function 'const target_desc* get_ipa_tdesc(int)':
    gdb/gdbserver/linux-s390-ipa.c:371:18: error: 's390_te_ft_collect_regmap' \
      was not declared in this scope
           SET_REGMAP(s390_te_ft_collect_regmap, 0);
    
    The offending line is part of this code snippet:
    ...
        case S390_TDESC_GS:
          SET_REGMAP(s390_te_ft_collect_regmap, 0);
          return tdesc_s390_gs_linux64;
    ...
    introduced in commit ce29f8439f "S390: Make IPA recognize tdescs with guarded
    storage".
    
    The snippet is part of an #ifdef __s390x__ construct, in the false branch, and
    in the true branch we find a snippet introduced by the same commit:
    ...
        case S390_TDESC_GS:
          SET_REGMAP(s390x_te_ft_collect_regmap, 0);
          return tdesc_s390x_gs_linux64;
    ...
    which is paired with a comment update for s390x_te_ft_collect_regmap:
    ...
    -/* Used for s390x-te-linux64, s390x-tevx-linux64.  */
    +/* Used for s390x-te-linux64, s390x-tevx-linux64, and
    +   s390x-gs-linux64.  */
    
     static const int s390x_te_ft_collect_regmap[] = {
    ...
    
    A similar comment update is added in the same commit for
    s390_te_linux64_ft_collect_regmap:
    ...
    -/* Used for s390-te-linux64, s390-tevx-linux64.  */
    +/* Used for s390-te-linux64, s390-tevx-linux64, and s390-gs-linux64.  */
    
     static const int s390_te_linux64_ft_collect_regmap[] = {
    ...
    but not paired with any update.
    
    Fix the build breaker by making the offending SET_REGMAP use the regmap
    indicated by the comment.
    ...
    -      SET_REGMAP(s390_te_ft_collect_regmap, 0);
    +      SET_REGMAP(s390_te_linux64_ft_collect_regmap, 0);
    ...
    
    Build on s390x-linux with -m31.
    
    gdb/gdbserver/ChangeLog:
    
    2019-06-20  Tom de Vries  <tdevries@suse.de>
    
    	* linux-s390-ipa.c (get_ipa_tdesc)[!__s390x__]: Use
    	s390_te_linux64_ft_collect_regmap for S390_TDESC_GS.

commit e6a1c5cbcb9cee5a08d814669419936ee151b19d
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Jun 19 22:24:30 2019 -0600

    Don't declare tui_init_content_element
    
    I noticed that tui_init_content_element is declared but never defined.
    This removes the declaration.  Tested by rebuilding.  (I should have
    merged this with the previous patch but I had forgotten that I found
    two of these.)
    
    gdb/ChangeLog
    2019-06-19  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-data.h (tui_init_content_element): Don't declare.

commit 6f6ffbeb5a6bce5a1274478256937867f337a037
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 16:06:14 2019 -0600

    Don't declare tui_init_win_info
    
    I noticed that tui_init_win_info is declared but never defined.  This
    removes the declaration.  Tested by rebuilding.
    
    gdb/ChangeLog
    2019-06-19  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-data.h (tui_init_win_info): Don't declare.

commit 698dc1d7a269917df6237b80ccbb00733bea52cf
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Thu Jun 20 00:00:18 2019 +0000

    Automatic date update in version.in

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                                          |   92 +
 bfd/ChangeLog                                      |  520 +
 bfd/archive.c                                      |   21 +-
 bfd/archive64.c                                    |    9 +-
 bfd/bfd-in2.h                                      |   10 +
 bfd/bfd.c                                          |    3 +
 bfd/coffcode.h                                     |    8 +
 bfd/coffgen.c                                      |    4 +-
 bfd/compress.c                                     |   20 +
 bfd/config.bfd                                     |    5 -
 bfd/configure                                      |   15 +-
 bfd/configure.ac                                   |   15 +-
 bfd/cpu-aarch64.c                                  |    9 +-
 bfd/dwarf2.c                                       |  347 +-
 bfd/elf-bfd.h                                      |   46 +-
 bfd/elf-hppa.h                                     |    6 +-
 bfd/elf-m10300.c                                   |    6 +-
 bfd/elf-nacl.c                                     |    5 +-
 bfd/elf-nacl.h                                     |    2 +-
 bfd/elf-properties.c                               |   18 +-
 bfd/elf-vxworks.c                                  |   19 +-
 bfd/elf-vxworks.h                                  |    2 +-
 bfd/elf.c                                          |  197 +-
 bfd/elf32-arc.c                                    |  321 +-
 bfd/elf32-arm.c                                    |   98 +-
 bfd/elf32-avr.c                                    |    6 +-
 bfd/elf32-bfin.c                                   |    6 +-
 bfd/elf32-cr16.c                                   |   10 +-
 bfd/elf32-cris.c                                   |    6 +-
 bfd/elf32-d10v.c                                   |    1 -
 bfd/elf32-d30v.c                                   |    1 -
 bfd/elf32-h8300.c                                  |    7 +-
 bfd/elf32-i386.c                                   |    4 -
 bfd/elf32-lm32.c                                   |    5 +-
 bfd/elf32-m32r.c                                   |    6 +-
 bfd/elf32-m68hc11.c                                |    1 -
 bfd/elf32-m68hc12.c                                |    1 -
 bfd/elf32-m68k.c                                   |    6 +-
 bfd/elf32-mips.c                                   |    8 +-
 bfd/elf32-msp430.c                                 |    6 +-
 bfd/elf32-nds32.c                                  |    6 +-
 bfd/elf32-or1k.c                                   |    6 +-
 bfd/elf32-pj.c                                     |    6 +-
 bfd/elf32-ppc.c                                    |   79 +-
 bfd/elf32-s12z.c                                   |    1 -
 bfd/elf32-sparc.c                                  |   18 +-
 bfd/elf32-v850.c                                   |    6 +-
 bfd/elf32-visium.c                                 |    2 +-
 bfd/elf32-xc16x.c                                  |    6 +-
 bfd/elf32-xtensa.c                                 |   77 +-
 bfd/elf64-alpha.c                                  |    2 +-
 bfd/elf64-bpf.c                                    |  282 +-
 bfd/elf64-hppa.c                                   |    4 +-
 bfd/elf64-ia64-vms.c                               |    6 +-
 bfd/elf64-ppc.c                                    |  555 +-
 bfd/elf64-x86-64.c                                 |  153 +-
 bfd/elfcode.h                                      |    7 +-
 bfd/elflink.c                                      |  136 +-
 bfd/elfnn-aarch64.c                                |    2 +-
 bfd/elfnn-ia64.c                                   |    6 +-
 bfd/elfnn-riscv.c                                  |   81 +-
 bfd/elfxx-mips.c                                   |   95 +-
 bfd/elfxx-mips.h                                   |   10 +-
 bfd/elfxx-target.h                                 |    7 +-
 bfd/format.c                                       |    9 +-
 bfd/libbfd-in.h                                    |    2 +-
 bfd/libbfd.h                                       |    9 +-
 bfd/mach-o-arm.c                                   |   22 +
 bfd/mach-o.c                                       |   15 +-
 bfd/peXXigen.c                                     |    7 +
 bfd/reloc.c                                        |   14 +
 bfd/targets.c                                      |    8 +-
 bfd/version.h                                      |    2 +-
 binutils/ChangeLog                                 |  219 +
 binutils/Makefile.am                               |    5 +-
 binutils/Makefile.in                               |   56 +-
 binutils/ar.c                                      |   14 +-
 binutils/bucomm.c                                  |   12 +-
 binutils/doc/binutils.texi                         |   43 +-
 binutils/dwarf.c                                   |   92 +-
 binutils/nm.c                                      |   23 +-
 binutils/objcopy.c                                 |   20 +-
 binutils/objdump.c                                 |   32 +-
 binutils/readelf.c                                 |  246 +-
 binutils/testsuite/binutils-all/arm/in-order-all.d |    1 +
 binutils/testsuite/binutils-all/arm/in-order.d     |    1 +
 .../testsuite/binutils-all/arm/out-of-order-all.d  |    1 +
 binutils/testsuite/binutils-all/arm/out-of-order.d |    1 +
 binutils/testsuite/binutils-all/i386/empty.d       |    2 +-
 binutils/testsuite/binutils-all/i386/ibt.d         |    2 +-
 binutils/testsuite/binutils-all/i386/pr21231a.d    |    2 +-
 binutils/testsuite/binutils-all/i386/pr21231b.d    |    2 +-
 binutils/testsuite/binutils-all/i386/shstk.d       |    2 +-
 binutils/testsuite/binutils-all/note-2-32.d        |    2 +-
 binutils/testsuite/binutils-all/note-2-64.d        |    2 +-
 binutils/testsuite/binutils-all/objcopy.exp        |    4 +-
 binutils/testsuite/binutils-all/objdump.exp        |   71 +
 binutils/testsuite/binutils-all/x86-64/empty-x32.d |    2 +-
 binutils/testsuite/binutils-all/x86-64/empty.d     |    2 +-
 binutils/testsuite/binutils-all/x86-64/ibt-x32.d   |    2 +-
 binutils/testsuite/binutils-all/x86-64/ibt.d       |    2 +-
 binutils/testsuite/binutils-all/x86-64/pr21231a.d  |    2 +-
 binutils/testsuite/binutils-all/x86-64/pr21231b.d  |    2 +-
 .../testsuite/binutils-all/x86-64/pr23494a-x32.d   |    2 +-
 binutils/testsuite/binutils-all/x86-64/pr23494a.d  |    2 +-
 .../testsuite/binutils-all/x86-64/pr23494c-x32.d   |    2 +-
 binutils/testsuite/binutils-all/x86-64/pr23494c.d  |    2 +-
 .../testsuite/binutils-all/x86-64/pr23494d-x32.d   |    2 +-
 binutils/testsuite/binutils-all/x86-64/pr23494d.d  |    2 +-
 .../testsuite/binutils-all/x86-64/pr23494e-x32.d   |    2 +-
 binutils/testsuite/binutils-all/x86-64/pr23494e.d  |    2 +-
 binutils/testsuite/binutils-all/x86-64/shstk-x32.d |    2 +-
 binutils/testsuite/binutils-all/x86-64/shstk.d     |    2 +-
 binutils/testsuite/gentestdlls.c                   |  178 +
 configure                                          |   24 +-
 configure.ac                                       |   16 +-
 cpu/ChangeLog                                      |   15 +
 cpu/bpf.cpu                                        |   71 +-
 elfcpp/ChangeLog                                   |   27 +
 elfcpp/powerpc.h                                   |   35 +
 gas/ChangeLog                                      |  757 +
 gas/NEWS                                           |    6 +
 gas/config/atof-ieee.c                             |   37 +-
 gas/config/obj-elf.c                               |  122 +-
 gas/config/tc-aarch64.c                            |   33 +-
 gas/config/tc-arm.c                                |  210 +-
 gas/config/tc-arm.h                                |    4 +
 gas/config/tc-bpf.c                                |   48 +-
 gas/config/tc-epiphany.c                           |   39 +-
 gas/config/tc-hppa.h                               |    8 +
 gas/config/tc-i386-intel.c                         |    5 +-
 gas/config/tc-i386.c                               |  361 +-
 gas/config/tc-mips.c                               |  105 +-
 gas/config/tc-mips.h                               |    5 +
 gas/config/tc-ppc.c                                |  114 +-
 gas/config/tc-ppc.h                                |    3 +
 gas/doc/as.texi                                    |   10 +-
 gas/doc/c-aarch64.texi                             |   10 +-
 gas/doc/c-arm.texi                                 |   33 +
 gas/doc/c-bpf.texi                                 |   39 +-
 gas/doc/c-i386.texi                                |   47 +-
 gas/doc/c-riscv.texi                               |   14 +-
 gas/po/sv.po                                       | 9960 ++--
 gas/testsuite/gas/aarch64/codealign.d              |    1 +
 gas/testsuite/gas/aarch64/codealign_1.d            |    1 +
 gas/testsuite/gas/aarch64/cpu-cortex-a34.d         |    6 +
 gas/testsuite/gas/aarch64/cpu-cortex-a65.d         |    6 +
 gas/testsuite/gas/aarch64/cpu-cortex-a65ae.d       |    6 +
 gas/testsuite/gas/aarch64/cpu-cortex-a76ae.d       |    6 +
 gas/testsuite/gas/aarch64/cpu-cortex-a77.d         |    6 +
 gas/testsuite/gas/aarch64/diagnostic.l             |    1 +
 gas/testsuite/gas/aarch64/diagnostic.s             |    1 +
 gas/testsuite/gas/aarch64/dwarf.d                  |    2 +-
 gas/testsuite/gas/aarch64/illegal-sve2-aes.d       |    6 +-
 gas/testsuite/gas/aarch64/illegal-sve2-sha3.d      |    2 +-
 gas/testsuite/gas/aarch64/illegal-sve2-sm4.d       |    2 +-
 gas/testsuite/gas/aarch64/illegal-sve2.d           |    2 +-
 gas/testsuite/gas/aarch64/illegal-sve2.l           |   18 +-
 gas/testsuite/gas/aarch64/illegal-sve2.s           |   10 +
 gas/testsuite/gas/aarch64/illegal-sysreg-4.l       |    1 +
 gas/testsuite/gas/aarch64/illegal.l                |    6 +-
 gas/testsuite/gas/aarch64/illegal.s                |    5 +
 gas/testsuite/gas/aarch64/mapmisc.d                |    2 +-
 gas/testsuite/gas/aarch64/mapping.d                |    1 +
 gas/testsuite/gas/aarch64/mapping2.d               |    1 +
 gas/testsuite/gas/aarch64/mapping3.d               |    1 +
 gas/testsuite/gas/aarch64/mapping4.d               |    1 +
 gas/testsuite/gas/aarch64/mapping_5.d              |    1 +
 gas/testsuite/gas/aarch64/mapping_6.d              |    1 +
 gas/testsuite/gas/aarch64/nop-asm.s                |    1 +
 gas/testsuite/gas/aarch64/sve-movprfx_1.d          |    2 +-
 gas/testsuite/gas/aarch64/sve-movprfx_10.d         |    2 +-
 gas/testsuite/gas/aarch64/sve-movprfx_11.d         |    2 +-
 gas/testsuite/gas/aarch64/sve-movprfx_12.d         |    2 +-
 gas/testsuite/gas/aarch64/sve-movprfx_13.d         |    2 +-
 gas/testsuite/gas/aarch64/sve-movprfx_14.d         |    2 +-
 gas/testsuite/gas/aarch64/sve-movprfx_15.d         |    2 +-
 gas/testsuite/gas/aarch64/sve-movprfx_16.d         |    2 +-
 gas/testsuite/gas/aarch64/sve-movprfx_17.d         |    2 +-
 gas/testsuite/gas/aarch64/sve-movprfx_18.d         |    2 +-
 gas/testsuite/gas/aarch64/sve-movprfx_19.d         |    2 +-
 gas/testsuite/gas/aarch64/sve-movprfx_2.d          |    2 +-
 gas/testsuite/gas/aarch64/sve-movprfx_20.d         |    2 +-
 gas/testsuite/gas/aarch64/sve-movprfx_21.d         |    2 +-
 gas/testsuite/gas/aarch64/sve-movprfx_22.d         |    2 +-
 gas/testsuite/gas/aarch64/sve-movprfx_23.d         |    2 +-
 gas/testsuite/gas/aarch64/sve-movprfx_24.d         |    2 +-
 gas/testsuite/gas/aarch64/sve-movprfx_25.d         |    4 +-
 gas/testsuite/gas/aarch64/sve-movprfx_25.l         |    1 -
 gas/testsuite/gas/aarch64/sve-movprfx_25.s         |    2 +-
 gas/testsuite/gas/aarch64/sve-movprfx_26.d         |   42 +-
 gas/testsuite/gas/aarch64/sve-movprfx_26.l         |   12 +-
 gas/testsuite/gas/aarch64/sve-movprfx_26.s         |   28 +-
 gas/testsuite/gas/aarch64/sve-movprfx_27.d         |   14 +
 gas/testsuite/gas/aarch64/sve-movprfx_27.s         |   11 +
 gas/testsuite/gas/aarch64/sve-movprfx_3.d          |    2 +-
 gas/testsuite/gas/aarch64/sve-movprfx_4.d          |    2 +-
 gas/testsuite/gas/aarch64/sve-movprfx_5.d          |    2 +-
 gas/testsuite/gas/aarch64/sve-movprfx_6.d          |    2 +-
 gas/testsuite/gas/aarch64/sve-movprfx_7.d          |    4 +-
 gas/testsuite/gas/aarch64/sve-movprfx_8.d          |    2 +-
 gas/testsuite/gas/aarch64/sve-movprfx_9.d          |    2 +-
 gas/testsuite/gas/aarch64/sve2.d                   |    4 +-
 gas/testsuite/gas/aarch64/sve2.s                   |    4 +
 gas/testsuite/gas/aarch64/symbol-variant_pcs-1.d   |    1 +
 gas/testsuite/gas/aarch64/symbol-variant_pcs-2.d   |    1 +
 gas/testsuite/gas/aarch64/symbol-variant_pcs-3.d   |    1 +
 gas/testsuite/gas/aarch64/sysreg-4.d               |    1 +
 gas/testsuite/gas/aarch64/sysreg-4.s               |    1 +
 gas/testsuite/gas/all/assign.d                     |    1 +
 gas/testsuite/gas/all/none.d                       |    1 +
 gas/testsuite/gas/all/weakref1.d                   |    1 +
 gas/testsuite/gas/arc/nps400-6.d                   |    2 +-
 gas/testsuite/gas/arm/arch6zk.d                    |    4 +-
 gas/testsuite/gas/arm/arch6zk.s                    |    4 +-
 gas/testsuite/gas/arm/float16-bad.d                |    3 +
 gas/testsuite/gas/arm/float16-bad.l                |   10 +
 gas/testsuite/gas/arm/float16-bad.s                |   13 +
 gas/testsuite/gas/arm/float16-be.d                 |   11 +
 .../gas/arm/float16-eabi-alternative-format.d      |   10 +
 gas/testsuite/gas/arm/float16-eabi-ieee-format.d   |   10 +
 gas/testsuite/gas/arm/float16-eabi-no-format.d     |    8 +
 gas/testsuite/gas/arm/float16-eabi.s               |    2 +
 gas/testsuite/gas/arm/float16-format-bad.d         |    3 +
 gas/testsuite/gas/arm/float16-format-bad.l         |    5 +
 gas/testsuite/gas/arm/float16-format-bad.s         |    5 +
 gas/testsuite/gas/arm/float16-format-opt-bad.d     |    4 +
 gas/testsuite/gas/arm/float16-format-opt-bad.l     |    4 +
 gas/testsuite/gas/arm/float16-le.d                 |   11 +
 gas/testsuite/gas/arm/float16.s                    |   25 +
 gas/testsuite/gas/arm/got_prel.d                   |    2 +-
 gas/testsuite/gas/arm/local_function.d             |    1 +
 gas/testsuite/gas/arm/mapdir.d                     |    2 +-
 gas/testsuite/gas/arm/mapmisc.d                    |    2 +-
 gas/testsuite/gas/arm/mapping2.d                   |    1 +
 gas/testsuite/gas/arm/mapping3.d                   |    1 +
 gas/testsuite/gas/arm/mapping4.d                   |    1 +
 gas/testsuite/gas/arm/mapsecs.d                    |    2 +-
 gas/testsuite/gas/arm/mapshort-eabi.d              |    1 +
 gas/testsuite/gas/arm/mve-shift-bad.l              |   10 +-
 gas/testsuite/gas/arm/mve-shift-bad.s              |    6 +
 gas/testsuite/gas/arm/mve-shift.d                  |    6 +-
 gas/testsuite/gas/arm/mve-shift.s                  |    6 +-
 gas/testsuite/gas/arm/mve-vqdmladh-bad.l           |  108 +-
 gas/testsuite/gas/arm/mve-vqdmladh-bad.s           |    8 -
 gas/testsuite/gas/arm/mve-vqdmladh.d               |    6 +
 gas/testsuite/gas/arm/mve-vqdmladh.s               |    6 +
 gas/testsuite/gas/arm/mve-vqdmlah-bad.d            |    3 +
 gas/testsuite/gas/arm/mve-vqdmlah-bad.l            |    7 +
 gas/testsuite/gas/arm/mve-vqdmlah-bad.s            |    4 +
 gas/testsuite/gas/arm/mve-vqdmlah.d                | 1354 +-
 gas/testsuite/gas/arm/mve-vqdmlah.s                |    6 +-
 gas/testsuite/gas/arm/mve-vqdmlash-bad.d           |    3 +
 gas/testsuite/gas/arm/mve-vqdmlash-bad.l           |    7 +
 gas/testsuite/gas/arm/mve-vqdmlash-bad.s           |    4 +
 gas/testsuite/gas/arm/mve-vqdmlash.d               | 1354 +-
 gas/testsuite/gas/arm/mve-vqdmlash.s               |    6 +-
 gas/testsuite/gas/arm/mve-vqdmlsdh-bad.l           |  108 +-
 gas/testsuite/gas/arm/mve-vqdmlsdh-bad.s           |    8 -
 gas/testsuite/gas/arm/mve-vqdmlsdh.d               |    6 +
 gas/testsuite/gas/arm/mve-vqdmlsdh.s               |    6 +
 gas/testsuite/gas/arm/pr24907.d                    |   19 +
 gas/testsuite/gas/arm/pr24907.s                    |   16 +
 gas/testsuite/gas/arm/smc-bad.d                    |    3 +
 gas/testsuite/gas/arm/smc-bad.l                    |    8 +
 gas/testsuite/gas/arm/smc-bad.s                    |   14 +
 gas/testsuite/gas/arm/thumb32.d                    |    2 +-
 gas/testsuite/gas/arm/thumb32.s                    |    2 +-
 gas/testsuite/gas/arm/thumbrel.d                   |    1 +
 gas/testsuite/gas/arm/unwind.d                     |    1 +
 gas/testsuite/gas/bpf/alu-be.d                     |   24 +-
 gas/testsuite/gas/bpf/alu.d                        |   24 +-
 gas/testsuite/gas/bpf/alu32-be.d                   |   26 +-
 gas/testsuite/gas/bpf/alu32.d                      |   26 +-
 gas/testsuite/gas/bpf/bpf.exp                      |    2 +
 gas/testsuite/gas/bpf/data-be.d                    |    9 +
 gas/testsuite/gas/bpf/data.d                       |    8 +
 gas/testsuite/gas/bpf/data.s                       |    4 +
 gas/testsuite/gas/bpf/lddw-be.d                    |    2 +-
 gas/testsuite/gas/bpf/lddw.d                       |    2 +-
 gas/testsuite/gas/bpf/mem-be.d                     |   16 +-
 gas/testsuite/gas/bpf/mem.d                        |   16 +-
 gas/testsuite/gas/bpf/mem.s                        |   16 +-
 gas/testsuite/gas/cfi/cfi-label.d                  |    2 +-
 gas/testsuite/gas/elf/elf.exp                      |   14 +-
 gas/testsuite/gas/elf/section12a.d                 |    5 +-
 gas/testsuite/gas/elf/section12b.d                 |    8 +-
 gas/testsuite/gas/elf/section13.d                  |    2 +
 gas/testsuite/gas/elf/section13.l                  |    2 +-
 gas/testsuite/gas/elf/type-2.e                     |   20 +
 gas/testsuite/gas/elf/type-2.l                     |    3 +
 gas/testsuite/gas/elf/type-2.s                     |   49 +
 gas/testsuite/gas/h8300/h8300.exp                  |   87 +-
 gas/testsuite/gas/h8300/misc.s                     |    4 +-
 gas/testsuite/gas/h8300/misch.s                    |    4 +-
 gas/testsuite/gas/h8300/miscs.s                    |    4 +-
 gas/testsuite/gas/i386/avx-16bit.d                 | 3274 ++
 gas/testsuite/gas/i386/avx-16bit.s                 |    7 +
 gas/testsuite/gas/i386/avx512f-16bit.d             |13297 +++++
 gas/testsuite/gas/i386/avx512f-16bit.s             |    4 +
 gas/testsuite/gas/i386/avx512f_vpclmulqdq-intel.d  |    4 +
 gas/testsuite/gas/i386/avx512f_vpclmulqdq.d        |    4 +
 gas/testsuite/gas/i386/avx512f_vpclmulqdq.s        |    5 +
 gas/testsuite/gas/i386/avx512vl_vpclmulqdq-intel.d |    8 +
 gas/testsuite/gas/i386/avx512vl_vpclmulqdq.d       |    8 +
 gas/testsuite/gas/i386/avx512vl_vpclmulqdq.s       |   10 +
 gas/testsuite/gas/i386/bmi-16bit.d                 |   46 +
 gas/testsuite/gas/i386/bmi-16bit.s                 |    4 +
 gas/testsuite/gas/i386/bmi2-16bit.d                |   51 +
 gas/testsuite/gas/i386/bmi2-16bit.s                |    4 +
 gas/testsuite/gas/i386/bss.d                       |    2 +-
 gas/testsuite/gas/i386/disassem.d                  |    6 +-
 gas/testsuite/gas/i386/disassem.s                  |    2 +
 gas/testsuite/gas/i386/i386.exp                    |   12 +
 gas/testsuite/gas/i386/ifunc-3.d                   |    1 +
 gas/testsuite/gas/i386/ilp32/mixed-mode-reloc64.d  |    1 +
 gas/testsuite/gas/i386/ilp32/quad.d                |    2 +-
 gas/testsuite/gas/i386/ilp32/reloc64.d             |    2 +-
 gas/testsuite/gas/i386/ilp32/x86-64-opcode.d       |  306 +-
 gas/testsuite/gas/i386/ilp32/x86-64-simd-intel.d   |  244 +-
 gas/testsuite/gas/i386/ilp32/x86-64-simd-suffix.d  |  244 +-
 gas/testsuite/gas/i386/ilp32/x86-64-simd.d         |  244 +-
 gas/testsuite/gas/i386/ilp32/x86-64-size-1.d       |    2 +-
 gas/testsuite/gas/i386/ilp32/x86-64-size-3.d       |    2 +-
 gas/testsuite/gas/i386/ilp32/x86-64-size-5.d       |    2 +-
 gas/testsuite/gas/i386/ilp32/x86-64-sse2avx.d      | 1226 +-
 gas/testsuite/gas/i386/ilp32/x86-64-unwind.d       |    2 +-
 gas/testsuite/gas/i386/inval-16.l                  |    2 +-
 gas/testsuite/gas/i386/inval-16.s                  |    2 +-
 gas/testsuite/gas/i386/lwp-16bit.d                 |   74 +
 gas/testsuite/gas/i386/lwp-16bit.s                 |    4 +
 gas/testsuite/gas/i386/mixed-mode-reloc32.d        |    2 +-
 gas/testsuite/gas/i386/mixed-mode-reloc64.d        |    1 +
 gas/testsuite/gas/i386/noextreg.d                  |    1 +
 gas/testsuite/gas/i386/nop-6.d                     |    2 +-
 gas/testsuite/gas/i386/optimize-1.d                |   48 +
 gas/testsuite/gas/i386/optimize-1.s                |   54 +
 gas/testsuite/gas/i386/optimize-1a.d               |   48 +
 gas/testsuite/gas/i386/optimize-2.d                |   70 +
 gas/testsuite/gas/i386/optimize-2.s                |   80 +
 gas/testsuite/gas/i386/optimize-2b.d               |  163 +
 gas/testsuite/gas/i386/optimize-3.d                |    8 +
 gas/testsuite/gas/i386/optimize-3.s                |    9 +
 gas/testsuite/gas/i386/optimize-4.d                |   48 +
 gas/testsuite/gas/i386/optimize-5.d                |   56 +
 gas/testsuite/gas/i386/optimize-5.s                |    9 +
 gas/testsuite/gas/i386/oversized16.l               |   41 +
 gas/testsuite/gas/i386/oversized16.s               |   11 +
 gas/testsuite/gas/i386/oversized64.l               |   40 +
 gas/testsuite/gas/i386/oversized64.s               |   10 +
 gas/testsuite/gas/i386/property-1.d                |    4 +-
 gas/testsuite/gas/i386/property-2.d                |    4 +-
 gas/testsuite/gas/i386/relax.d                     |    2 +-
 gas/testsuite/gas/i386/reloc64.d                   |    2 +-
 gas/testsuite/gas/i386/size-1.d                    |    2 +-
 gas/testsuite/gas/i386/size-3.d                    |    2 +-
 gas/testsuite/gas/i386/sse2-16bit.d                |  167 +
 gas/testsuite/gas/i386/sse2-16bit.s                |    7 +
 gas/testsuite/gas/i386/tbm-16bit.d                 |  170 +
 gas/testsuite/gas/i386/tbm-16bit.s                 |    4 +
 gas/testsuite/gas/i386/vpclmulqdq-intel.d          |    4 +
 gas/testsuite/gas/i386/vpclmulqdq.d                |    4 +
 gas/testsuite/gas/i386/vpclmulqdq.s                |    5 +
 gas/testsuite/gas/i386/x86-64-avx-swap-2.d         |  380 +
 gas/testsuite/gas/i386/x86-64-avx-swap-2.s         |  393 +
 .../gas/i386/x86-64-avx512f_vpclmulqdq-intel.d     |    4 +
 gas/testsuite/gas/i386/x86-64-avx512f_vpclmulqdq.d |    4 +
 gas/testsuite/gas/i386/x86-64-avx512f_vpclmulqdq.s |    5 +
 .../gas/i386/x86-64-avx512vl_vpclmulqdq-intel.d    |    8 +
 .../gas/i386/x86-64-avx512vl_vpclmulqdq.d          |    8 +
 .../gas/i386/x86-64-avx512vl_vpclmulqdq.s          |   10 +
 gas/testsuite/gas/i386/x86-64-disassem.d           |    5 +-
 gas/testsuite/gas/i386/x86-64-disassem.s           |    2 +
 gas/testsuite/gas/i386/x86-64-nop-6.d              |    1 +
 gas/testsuite/gas/i386/x86-64-opcode.d             |    4 +
 gas/testsuite/gas/i386/x86-64-opcode.s             |    4 +
 gas/testsuite/gas/i386/x86-64-optimize-1.d         |    6 +
 gas/testsuite/gas/i386/x86-64-optimize-1.s         |    6 +
 gas/testsuite/gas/i386/x86-64-optimize-2.d         |   48 +
 gas/testsuite/gas/i386/x86-64-optimize-2.s         |   54 +
 gas/testsuite/gas/i386/x86-64-optimize-2a.d        |   48 +
 gas/testsuite/gas/i386/x86-64-optimize-2b.d        |   48 +
 gas/testsuite/gas/i386/x86-64-optimize-3.d         |   80 +
 gas/testsuite/gas/i386/x86-64-optimize-3.s         |   91 +
 gas/testsuite/gas/i386/x86-64-optimize-3b.d        |  199 +
 gas/testsuite/gas/i386/x86-64-optimize-4.d         |    8 +
 gas/testsuite/gas/i386/x86-64-optimize-4.s         |    9 +
 gas/testsuite/gas/i386/x86-64-optimize-5.d         |   48 +
 gas/testsuite/gas/i386/x86-64-optimize-6.d         |   56 +
 gas/testsuite/gas/i386/x86-64-optimize-6.s         |    9 +
 gas/testsuite/gas/i386/x86-64-property-1.d         |    4 +-
 gas/testsuite/gas/i386/x86-64-property-2.d         |    4 +-
 gas/testsuite/gas/i386/x86-64-simd-intel.d         |  132 +-
 gas/testsuite/gas/i386/x86-64-simd-suffix.d        |  132 +-
 gas/testsuite/gas/i386/x86-64-simd.d               |  132 +-
 gas/testsuite/gas/i386/x86-64-size-1.d             |    2 +-
 gas/testsuite/gas/i386/x86-64-size-3.d             |    2 +-
 gas/testsuite/gas/i386/x86-64-size-5.d             |    2 +-
 gas/testsuite/gas/i386/x86-64-sse2avx.d            |   93 +
 gas/testsuite/gas/i386/x86-64-sse2avx.s            |   93 +
 gas/testsuite/gas/i386/x86-64-unwind.d             |    2 +-
 gas/testsuite/gas/i386/x86-64-vpclmulqdq-intel.d   |   16 +-
 gas/testsuite/gas/i386/x86-64-vpclmulqdq.d         |   16 +-
 gas/testsuite/gas/i386/x86-64-vpclmulqdq.s         |   17 +-
 gas/testsuite/gas/i386/xmmword.l                   |    2 +
 gas/testsuite/gas/i386/xmmword.s                   |    4 +
 gas/testsuite/gas/macros/irp.d                     |    1 +
 gas/testsuite/gas/macros/repeat.d                  |    1 +
 gas/testsuite/gas/macros/rept.d                    |    1 +
 gas/testsuite/gas/macros/test2.d                   |    1 +
 gas/testsuite/gas/macros/test3.d                   |    1 +
 gas/testsuite/gas/macros/vararg.d                  |    1 +
 gas/testsuite/gas/mips/insn-isa-mode.d             |   16 +
 gas/testsuite/gas/mips/insn-isa-mode.s             |   14 +
 gas/testsuite/gas/mips/li-d.d                      |   51 +-
 gas/testsuite/gas/mips/li-d.s                      |   39 +
 gas/testsuite/gas/mips/micromips@isa-override-1.d  |   12 +-
 gas/testsuite/gas/mips/mips.exp                    |    1 +
 gas/testsuite/gas/mips/mips32r2@isa-override-1.d   |   12 +-
 gas/testsuite/gas/mips/mips64r2@isa-override-1.d   |   12 +-
 gas/testsuite/gas/ppc/astest2.d                    |    1 +
 gas/testsuite/gas/ppc/astest2_64.d                 |    1 +
 gas/testsuite/gas/ppc/astest64.d                   |    1 +
 gas/testsuite/gas/ppc/groupnop.d                   |   19 +
 gas/testsuite/gas/ppc/groupnop.s                   |   19 +
 gas/testsuite/gas/ppc/power4.d                     |    2 +-
 gas/testsuite/gas/ppc/ppc.exp                      |    2 +
 gas/testsuite/gas/ppc/test1elf64.d                 |    1 +
 gas/testsuite/gas/riscv/alias-csr.d                |   23 +
 gas/testsuite/gas/riscv/alias-csr.s                |   14 +
 gas/testsuite/gas/riscv/insn.d                     |   99 +-
 gas/testsuite/gas/riscv/insn.s                     |   19 +-
 gas/testsuite/gas/riscv/no-aliases-csr.d           |   23 +
 gas/testsuite/gas/riscv/priv-reg.d                 |    2 +-
 gas/testsuite/gas/xstormy16/allinsn.sh             |    2 +-
 gas/testsuite/gas/xstormy16/gcc.sh                 |    2 +-
 gas/write.c                                        |   22 +-
 gdb/ChangeLog                                      | 3758 ++
 gdb/MAINTAINERS                                    |    1 +
 gdb/Makefile.in                                    |  154 +-
 gdb/NEWS                                           |   91 +-
 gdb/README                                         |    3 +-
 gdb/aarch32-linux-nat.h                            |    5 -
 gdb/aarch32-tdep.c                                 |   33 +
 gdb/aarch32-tdep.h                                 |   25 +
 gdb/aarch64-fbsd-nat.c                             |   15 +-
 gdb/aarch64-linux-nat.c                            |   18 +-
 gdb/aarch64-linux-tdep.c                           |    2 +-
 gdb/aarch64-ravenscar-thread.c                     |    1 +
 gdb/aarch64-tdep.c                                 |   73 +-
 gdb/aarch64-tdep.h                                 |    2 +-
 gdb/acinclude.m4                                   |    5 +-
 gdb/ada-exp.y                                      |   22 +-
 gdb/ada-lang.c                                     |  119 +-
 gdb/ada-lang.h                                     |    8 +-
 gdb/ada-tasks.c                                    |   22 +-
 gdb/agent.c                                        |    2 +-
 gdb/alloc.c                                        |    4 +-
 gdb/alpha-bsd-tdep.h                               |    2 +
 gdb/alpha-linux-tdep.c                             |    1 +
 gdb/alpha-mdebug-tdep.c                            |    1 +
 gdb/amd64-darwin-tdep.c                            |    2 +-
 gdb/amd64-dicos-tdep.c                             |    2 +-
 gdb/amd64-fbsd-nat.c                               |    2 +-
 gdb/amd64-fbsd-tdep.c                              |    2 +-
 gdb/amd64-linux-nat.c                              |    2 +-
 gdb/amd64-linux-tdep.c                             |   30 +-
 gdb/amd64-nbsd-tdep.c                              |    2 +-
 gdb/amd64-obsd-tdep.c                              |    2 +-
 gdb/amd64-sol2-tdep.c                              |    2 +-
 gdb/amd64-tdep.c                                   |   27 +-
 gdb/amd64-windows-tdep.c                           |    2 +-
 gdb/annotate.c                                     |   11 +-
 gdb/arch-utils.c                                   |   10 +-
 gdb/arch-utils.h                                   |    7 +-
 gdb/arch/aarch32.c                                 |   43 +
 gdb/arch/aarch32.h                                 |   27 +
 gdb/arch/aarch64-insn.c                            |    2 +-
 gdb/arch/aarch64.c                                 |    2 +-
 gdb/arch/aarch64.h                                 |    2 +-
 gdb/arch/amd64.c                                   |    4 +-
 gdb/arch/amd64.h                                   |    2 +-
 gdb/arch/arm-get-next-pcs.c                        |    9 +-
 gdb/arch/arm-linux.c                               |    6 +-
 gdb/arch/arm.c                                     |   88 +-
 gdb/arch/arm.h                                     |   50 +-
 gdb/arch/i386.c                                    |    6 +-
 gdb/arch/i386.h                                    |    2 +-
 gdb/arch/ppc-linux-common.c                        |    2 +-
 gdb/arch/riscv.c                                   |    2 +-
 gdb/arch/riscv.h                                   |    2 +-
 gdb/arch/tic6x.c                                   |    4 +-
 gdb/arm-fbsd-nat.c                                 |   14 +-
 gdb/arm-fbsd-tdep.c                                |   12 +-
 gdb/arm-linux-nat.c                                |   42 +-
 gdb/arm-linux-tdep.c                               |   54 +-
 gdb/arm-linux-tdep.h                               |   12 +-
 gdb/arm-nbsd-tdep.c                                |    2 +-
 gdb/arm-tdep.c                                     |  485 +-
 gdb/arm-tdep.h                                     |   27 +-
 gdb/arm-wince-tdep.c                               |    2 +-
 gdb/auto-load.c                                    |    6 +-
 gdb/auxv.c                                         |    2 +-
 gdb/ax-gdb.c                                       |    2 +-
 gdb/ax-general.c                                   |    3 +-
 gdb/ax.h                                           |    4 +-
 gdb/block.c                                        |   19 +-
 gdb/block.h                                        |   10 +-
 gdb/blockframe.c                                   |    2 +
 gdb/break-catch-syscall.c                          |    4 +-
 gdb/break-catch-throw.c                            |   35 +-
 gdb/breakpoint.c                                   |  512 +-
 gdb/breakpoint.h                                   |   57 +-
 gdb/btrace.c                                       |    5 +-
 gdb/btrace.h                                       |    4 +-
 gdb/build-id.c                                     |    2 +-
 gdb/build-id.h                                     |    2 +-
 gdb/buildsym-legacy.c                              |    1 +
 gdb/buildsym.c                                     |    5 +-
 gdb/buildsym.h                                     |    2 +
 gdb/c-exp.y                                        |   11 +-
 gdb/c-lang.c                                       |    1 +
 gdb/c-lang.h                                       |    2 +-
 gdb/c-typeprint.c                                  |    2 +-
 gdb/charset.c                                      |    8 +-
 gdb/charset.h                                      |    2 +-
 gdb/cli-out.c                                      |   25 +-
 gdb/cli-out.h                                      |    9 +-
 gdb/cli/cli-cmds.c                                 |  261 +-
 gdb/cli/cli-cmds.h                                 |   22 +-
 gdb/cli/cli-decode.c                               |   33 +-
 gdb/cli/cli-decode.h                               |   10 +-
 gdb/cli/cli-dump.c                                 |    5 +-
 gdb/cli/cli-logging.c                              |    4 +-
 gdb/cli/cli-option.c                               |  171 +-
 gdb/cli/cli-option.h                               |   25 +-
 gdb/cli/cli-script.c                               |    2 +-
 gdb/cli/cli-script.h                               |    2 +
 gdb/cli/cli-setshow.c                              |   79 +-
 gdb/cli/cli-setshow.h                              |    5 +
 gdb/cli/cli-style.c                                |   28 +-
 gdb/cli/cli-style.h                                |    1 +
 gdb/cli/cli-utils.c                                |  158 +-
 gdb/cli/cli-utils.h                                |   51 +-
 gdb/coff-pe-read.c                                 |    2 +-
 gdb/coff-pe-read.h                                 |    1 +
 gdb/coffread.c                                     |   11 +-
 gdb/command.h                                      |   23 +-
 gdb/common/agent.c                                 |  282 -
 gdb/common/agent.h                                 |   68 -
 gdb/common/byte-vector.h                           |   63 -
 gdb/common/common-debug.c                          |   37 -
 gdb/common/common-defs.h                           |  150 -
 gdb/common/common-utils.c                          |  358 -
 gdb/common/common-utils.h                          |  181 -
 gdb/common/common.host                             |   36 -
 gdb/common/create-version.sh                       |   38 -
 gdb/common/def-vector.h                            |   36 -
 gdb/common/environ.c                               |  183 -
 gdb/common/errors.c                                |   69 -
 gdb/common/filestuff.c                             |  503 -
 gdb/common/format.h                                |   96 -
 gdb/common/forward-scope-exit.h                    |  123 -
 gdb/common/gdb_optional.h                          |  219 -
 gdb/common/gdb_tilde_expand.c                      |   95 -
 gdb/common/job-control.c                           |   86 -
 gdb/common/job-control.h                           |   38 -
 gdb/common/netstuff.c                              |  154 -
 gdb/common/pathstuff.c                             |  290 -
 gdb/common/pathstuff.h                             |   95 -
 gdb/common/rsp-low.h                               |  101 -
 gdb/common/scope-exit.h                            |  186 -
 gdb/common/scoped_mmap.c                           |   49 -
 gdb/common/tdesc.c                                 |  401 -
 gdb/common/valid-expr.h                            |  108 -
 gdb/compile/compile-c-support.c                    |    5 +-
 gdb/compile/compile-c.h                            |    2 +-
 gdb/compile/compile-cplus-symbols.c                |    2 +-
 gdb/compile/compile-cplus-types.c                  |    4 +-
 gdb/compile/compile-cplus.h                        |    3 +-
 gdb/compile/compile-loc2c.c                        |    3 +-
 gdb/compile/compile-object-load.c                  |    1 +
 gdb/compile/compile.c                              |   28 +-
 gdb/completer.c                                    |    2 +-
 gdb/completer.h                                    |    2 +-
 gdb/config.in                                      |    3 -
 gdb/configure                                      |  125 +-
 gdb/configure.ac                                   |   50 +-
 gdb/configure.tgt                                  |    8 +-
 gdb/contrib/ari/gdb_ari.sh                         |   50 +-
 gdb/corefile.c                                     |    3 +-
 gdb/corelow.c                                      |    5 +-
 gdb/cp-support.c                                   |   14 +-
 gdb/cp-support.h                                   |    6 +-
 gdb/cp-valprint.c                                  |    5 +-
 gdb/cris-linux-tdep.c                              |    1 +
 gdb/csky-tdep.c                                    |    2 +-
 gdb/ctf.c                                          |    3 +-
 gdb/d-lang.c                                       |    1 +
 gdb/d-namespace.c                                  |    1 +
 gdb/darwin-nat-info.c                              |    5 +-
 gdb/darwin-nat.c                                   |    9 +-
 gdb/dbxread.c                                      |   40 +-
 gdb/dcache.c                                       |    1 +
 gdb/debug.c                                        |    2 +-
 gdb/defs.h                                         |   12 +-
 gdb/dicos-tdep.c                                   |    1 +
 gdb/dictionary.c                                   |    1 +
 gdb/disasm-selftests.c                             |    3 +-
 gdb/disasm.c                                       |   61 +-
 gdb/disasm.h                                       |   22 +-
 gdb/doc/ChangeLog                                  |   74 +
 gdb/doc/gdb.texinfo                                |  233 +-
 gdb/doc/python.texi                                |   45 +-
 gdb/dtrace-probe.c                                 |    2 +-
 gdb/dummy-frame.c                                  |    1 +
 gdb/dummy-frame.h                                  |    1 +
 gdb/dwarf-index-cache.c                            |   10 +-
 gdb/dwarf-index-cache.h                            |    2 +-
 gdb/dwarf-index-write.c                            |   12 +-
 gdb/dwarf2-frame-tailcall.c                        |    1 +
 gdb/dwarf2-frame.c                                 |   10 +-
 gdb/dwarf2expr.c                                   |    3 +-
 gdb/dwarf2loc.c                                    |   53 +-
 gdb/dwarf2loc.h                                    |   36 +-
 gdb/dwarf2read.c                                   |  551 +-
 gdb/dwarf2read.h                                   |   15 +-
 gdb/event-loop.c                                   |    2 +-
 gdb/event-top.c                                    |    2 +-
 gdb/exceptions.c                                   |    2 +-
 gdb/exec.c                                         |    2 +-
 gdb/expression.h                                   |    2 +
 gdb/extension.h                                    |    9 +-
 gdb/f-lang.c                                       |    1 +
 gdb/fbsd-nat.c                                     |    7 +-
 gdb/features/Makefile                              |  113 +-
 gdb/features/aarch64-core.c                        |    9 +-
 gdb/features/aarch64-core.xml                      |   28 +-
 gdb/features/aarch64-fpu.c                         |    2 +-
 gdb/features/aarch64-pauth.c                       |    3 +-
 gdb/features/aarch64-sve.c                         |    2 +-
 gdb/features/aarch64.xml                           |   14 -
 gdb/features/arm/arm-core.c                        |   31 +
 gdb/features/arm/arm-fpa.c                         |   23 +
 gdb/features/arm/arm-m-profile-with-fpa.c          |   39 +
 gdb/features/arm/arm-m-profile-with-fpa.xml        |   39 +
 gdb/features/arm/arm-m-profile.c                   |   31 +
 gdb/features/arm/arm-vfpv2.c                       |   30 +
 gdb/features/arm/arm-vfpv3.c                       |   46 +
 gdb/features/arm/arm-with-iwmmxt.c                 |   83 -
 gdb/features/arm/arm-with-iwmmxt.xml               |   13 -
 gdb/features/arm/arm-with-m-fpa-layout.c           |   46 -
 gdb/features/arm/arm-with-m-fpa-layout.xml         |   46 -
 gdb/features/arm/arm-with-m-vfp-d16.c              |   56 -
 gdb/features/arm/arm-with-m-vfp-d16.xml            |   14 -
 gdb/features/arm/arm-with-m.c                      |   37 -
 gdb/features/arm/arm-with-m.xml                    |   12 -
 gdb/features/arm/arm-with-neon.c                   |   74 -
 gdb/features/arm/arm-with-neon.xml                 |   14 -
 gdb/features/arm/arm-with-vfpv2.c                  |   56 -
 gdb/features/arm/arm-with-vfpv2.xml                |   13 -
 gdb/features/arm/arm-with-vfpv3.c                  |   72 -
 gdb/features/arm/arm-with-vfpv3.xml                |   13 -
 gdb/features/arm/xscale-iwmmxt.c                   |   57 +
 gdb/features/i386/32bit-avx.c                      |    2 +-
 gdb/features/i386/32bit-avx512.c                   |    2 +-
 gdb/features/i386/32bit-core.c                     |    2 +-
 gdb/features/i386/32bit-linux.c                    |    2 +-
 gdb/features/i386/32bit-mpx.c                      |    2 +-
 gdb/features/i386/32bit-pkeys.c                    |    2 +-
 gdb/features/i386/32bit-segments.c                 |    2 +-
 gdb/features/i386/32bit-sse.c                      |    2 +-
 gdb/features/i386/64bit-avx.c                      |    2 +-
 gdb/features/i386/64bit-avx512.c                   |    2 +-
 gdb/features/i386/64bit-core.c                     |    2 +-
 gdb/features/i386/64bit-linux.c                    |    2 +-
 gdb/features/i386/64bit-mpx.c                      |    2 +-
 gdb/features/i386/64bit-pkeys.c                    |    2 +-
 gdb/features/i386/64bit-segments.c                 |    2 +-
 gdb/features/i386/64bit-sse.c                      |    2 +-
 gdb/features/i386/amd64-avx-avx512-linux.xml       |   20 -
 gdb/features/i386/amd64-avx-avx512.xml             |   18 -
 gdb/features/i386/amd64-avx-linux.xml              |   19 -
 .../i386/amd64-avx-mpx-avx512-pku-linux.xml        |   23 -
 gdb/features/i386/amd64-avx-mpx-avx512-pku.xml     |   20 -
 gdb/features/i386/amd64-avx-mpx-linux.xml          |   20 -
 gdb/features/i386/amd64-avx-mpx.xml                |   18 -
 gdb/features/i386/amd64-avx.xml                    |   17 -
 gdb/features/i386/amd64-linux.xml                  |   18 -
 gdb/features/i386/amd64-mpx-linux.xml              |   19 -
 gdb/features/i386/amd64-mpx.xml                    |   17 -
 gdb/features/i386/amd64.xml                        |   16 -
 gdb/features/i386/i386-avx-avx512-linux.xml        |   19 -
 gdb/features/i386/i386-avx-avx512.xml              |   17 -
 gdb/features/i386/i386-avx-linux.xml               |   18 -
 .../i386/i386-avx-mpx-avx512-pku-linux.xml         |   22 -
 gdb/features/i386/i386-avx-mpx-avx512-pku.xml      |   19 -
 gdb/features/i386/i386-avx-mpx-linux.xml           |   19 -
 gdb/features/i386/i386-avx-mpx.xml                 |   17 -
 gdb/features/i386/i386-avx.xml                     |   16 -
 gdb/features/i386/i386-linux.xml                   |   17 -
 gdb/features/i386/i386-mmx-linux.xml               |   16 -
 gdb/features/i386/i386-mmx.xml                     |   14 -
 gdb/features/i386/i386-mpx-linux.xml               |   18 -
 gdb/features/i386/i386-mpx.xml                     |   16 -
 gdb/features/i386/i386.xml                         |   15 -
 gdb/features/i386/x32-avx-avx512-linux.xml         |   20 -
 gdb/features/i386/x32-avx-linux.xml                |   19 -
 gdb/features/i386/x32-core.c                       |    2 +-
 gdb/features/i386/x32-linux.xml                    |   18 -
 gdb/features/riscv/32bit-cpu.c                     |    2 +-
 gdb/features/riscv/32bit-csr.c                     |    2 +-
 gdb/features/riscv/32bit-fpu.c                     |    2 +-
 gdb/features/riscv/64bit-cpu.c                     |    2 +-
 gdb/features/riscv/64bit-csr.c                     |    2 +-
 gdb/features/riscv/64bit-fpu.c                     |    2 +-
 gdb/features/tic6x-c6xp.c                          |    2 +-
 gdb/features/tic6x-core.c                          |    2 +-
 gdb/features/tic6x-gp.c                            |    2 +-
 gdb/filename-seen-cache.h                          |    2 +-
 gdb/filesystem.c                                   |    4 +-
 gdb/findcmd.c                                      |    2 +-
 gdb/findvar.c                                      |    2 +-
 gdb/fork-child.c                                   |    8 +-
 gdb/frame-base.c                                   |    1 +
 gdb/frame-unwind.c                                 |    1 +
 gdb/frame.c                                        |   32 +-
 gdb/frame.h                                        |   54 +-
 gdb/frv-linux-tdep.c                               |    1 +
 gdb/gcore.c                                        |    6 +-
 gdb/gdb-stabs.h                                    |   41 +-
 gdb/gdb_bfd.c                                      |    6 +-
 gdb/gdb_bfd.h                                      |    2 +-
 gdb/gdb_obstack.c                                  |   10 -
 gdb/gdb_obstack.h                                  |   27 +-
 gdb/gdb_proc_service.h                             |    2 +-
 gdb/gdb_regex.c                                    |    2 +-
 gdb/gdb_select.h                                   |    2 +-
 gdb/gdb_usleep.c                                   |    2 +-
 gdb/gdbarch-selftests.c                            |    5 +-
 gdb/gdbarch.c                                      |   55 +
 gdb/gdbarch.h                                      |   36 +
 gdb/gdbarch.sh                                     |   28 +
 gdb/gdbserver/ChangeLog                            |  123 +
 gdb/gdbserver/Makefile.in                          |  136 +-
 gdb/gdbserver/acinclude.m4                         |    5 +-
 gdb/gdbserver/ax.c                                 |   10 +-
 gdb/gdbserver/config.in                            |    3 -
 gdb/gdbserver/configure                            |  165 +-
 gdb/gdbserver/configure.ac                         |   15 +-
 gdb/gdbserver/configure.srv                        |   46 +-
 gdb/gdbserver/debug.c                              |    2 +-
 gdb/gdbserver/debug.h                              |    2 +-
 gdb/gdbserver/event-loop.c                         |    2 +-
 gdb/gdbserver/fork-child.c                         |    2 +-
 gdb/gdbserver/gdb_proc_service.h                   |    2 +-
 gdb/gdbserver/gdbreplay.c                          |    8 +-
 gdb/gdbserver/gdbthread.h                          |    2 +-
 gdb/gdbserver/hostio-errno.c                       |    2 +-
 gdb/gdbserver/hostio.c                             |    2 +-
 gdb/gdbserver/i387-fp.c                            |    2 +-
 gdb/gdbserver/inferiors.c                          |    6 +-
 gdb/gdbserver/inferiors.h                          |    2 +-
 gdb/gdbserver/linux-aarch32-low.c                  |    8 +-
 gdb/gdbserver/linux-aarch32-low.h                  |    2 -
 gdb/gdbserver/linux-aarch32-tdesc.c                |   47 +
 gdb/gdbserver/linux-aarch32-tdesc.h                |   29 +
 gdb/gdbserver/linux-aarch64-low.c                  |   11 +-
 gdb/gdbserver/linux-aarch64-tdesc-selftest.c       |   45 -
 gdb/gdbserver/linux-aarch64-tdesc.h                |    4 -
 gdb/gdbserver/linux-amd64-ipa.c                    |    2 +-
 gdb/gdbserver/linux-arm-low.c                      |  125 +-
 gdb/gdbserver/linux-arm-tdesc.c                    |   62 +
 gdb/gdbserver/linux-arm-tdesc.h                    |   29 +
 gdb/gdbserver/linux-i386-ipa.c                     |    2 +-
 gdb/gdbserver/linux-low.c                          |   20 +-
 gdb/gdbserver/linux-ppc-low.c                      |   22 +-
 gdb/gdbserver/linux-s390-ipa.c                     |    2 +-
 gdb/gdbserver/linux-s390-low.c                     |    4 +-
 gdb/gdbserver/linux-tic6x-low.c                    |    2 +-
 gdb/gdbserver/linux-x86-low.c                      |   16 +-
 gdb/gdbserver/linux-x86-tdesc-selftest.c           |  183 -
 gdb/gdbserver/linux-x86-tdesc.c                    |    2 +-
 gdb/gdbserver/linux-x86-tdesc.h                    |    2 -
 gdb/gdbserver/lynx-i386-low.c                      |    2 +-
 gdb/gdbserver/lynx-low.c                           |    6 +-
 gdb/gdbserver/mem-break.c                          |   30 +-
 gdb/gdbserver/mem-break.h                          |    2 +-
 gdb/gdbserver/nto-x86-low.c                        |    2 +-
 gdb/gdbserver/proc-service.c                       |    2 +-
 gdb/gdbserver/regcache.c                           |   14 +-
 gdb/gdbserver/regcache.h                           |   12 +-
 gdb/gdbserver/remote-utils.c                       |   12 +-
 gdb/gdbserver/server.c                             |   33 +-
 gdb/gdbserver/server.h                             |   15 +-
 gdb/gdbserver/spu-low.c                            |    4 +-
 gdb/gdbserver/symbol.c                             |    4 +-
 gdb/gdbserver/target.c                             |   33 +-
 gdb/gdbserver/target.h                             |    7 +-
 gdb/gdbserver/tdesc.c                              |   12 +-
 gdb/gdbserver/tdesc.h                              |    2 +-
 gdb/gdbserver/thread-db.c                          |    4 +-
 gdb/gdbserver/tracepoint.c                         |   36 +-
 gdb/gdbserver/win32-i386-low.c                     |    2 +-
 gdb/gdbserver/win32-low.c                          |    4 +-
 gdb/gdbsupport/agent.c                             |  282 +
 gdb/gdbsupport/agent.h                             |   68 +
 gdb/{common => gdbsupport}/array-view.h            |    0
 gdb/{common => gdbsupport}/ax.def                  |    0
 gdb/{common => gdbsupport}/break-common.h          |    0
 gdb/{common => gdbsupport}/btrace-common.c         |    0
 gdb/{common => gdbsupport}/btrace-common.h         |    0
 gdb/{common => gdbsupport}/buffer.c                |    0
 gdb/{common => gdbsupport}/buffer.h                |    0
 gdb/gdbsupport/byte-vector.h                       |   63 +
 gdb/{common => gdbsupport}/cleanups.c              |    0
 gdb/{common => gdbsupport}/cleanups.h              |    0
 gdb/gdbsupport/common-debug.c                      |   37 +
 gdb/{common => gdbsupport}/common-debug.h          |    0
 gdb/gdbsupport/common-defs.h                       |  150 +
 gdb/{common => gdbsupport}/common-exceptions.c     |    0
 gdb/{common => gdbsupport}/common-exceptions.h     |    0
 gdb/{common => gdbsupport}/common-gdbthread.h      |    0
 gdb/{common => gdbsupport}/common-inferior.h       |    0
 gdb/{common => gdbsupport}/common-regcache.c       |    0
 gdb/{common => gdbsupport}/common-regcache.h       |    0
 gdb/{common => gdbsupport}/common-types.h          |    0
 gdb/gdbsupport/common-utils.c                      |  417 +
 gdb/gdbsupport/common-utils.h                      |  191 +
 gdb/gdbsupport/common.host                         |   36 +
 gdb/{common => gdbsupport}/common.m4               |    0
 gdb/gdbsupport/create-version.sh                   |   38 +
 gdb/gdbsupport/def-vector.h                        |   36 +
 gdb/{common => gdbsupport}/default-init-alloc.h    |    0
 gdb/{common => gdbsupport}/enum-flags.h            |    0
 gdb/gdbsupport/environ.c                           |  183 +
 gdb/{common => gdbsupport}/environ.h               |    0
 gdb/gdbsupport/errors.c                            |   69 +
 gdb/{common => gdbsupport}/errors.h                |    0
 gdb/{common => gdbsupport}/fileio.c                |    0
 gdb/{common => gdbsupport}/fileio.h                |    0
 gdb/gdbsupport/filestuff.c                         |  503 +
 gdb/{common => gdbsupport}/filestuff.h             |    0
 gdb/{common => gdbsupport}/filtered-iterator.h     |    0
 gdb/{common => gdbsupport}/format.c                |    0
 gdb/gdbsupport/format.h                            |   96 +
 gdb/gdbsupport/forward-scope-exit.h                |  123 +
 gdb/{common => gdbsupport}/function-view.h         |    0
 gdb/{common => gdbsupport}/gdb_assert.h            |    0
 gdb/{common => gdbsupport}/gdb_locale.h            |    0
 gdb/gdbsupport/gdb_optional.h                      |  219 +
 gdb/{common => gdbsupport}/gdb_proc_service.h      |    0
 gdb/{common => gdbsupport}/gdb_ref_ptr.h           |    0
 gdb/{common => gdbsupport}/gdb_setjmp.h            |    0
 gdb/{common => gdbsupport}/gdb_signals.h           |    0
 gdb/{common => gdbsupport}/gdb_splay_tree.h        |    0
 gdb/{common => gdbsupport}/gdb_string_view.h       |    0
 gdb/{common => gdbsupport}/gdb_string_view.tcc     |    0
 gdb/{common => gdbsupport}/gdb_sys_time.h          |    0
 gdb/gdbsupport/gdb_tilde_expand.c                  |   95 +
 gdb/{common => gdbsupport}/gdb_tilde_expand.h      |    0
 gdb/{common => gdbsupport}/gdb_unique_ptr.h        |    0
 gdb/{common => gdbsupport}/gdb_unlinker.h          |    0
 gdb/{common => gdbsupport}/gdb_vecs.c              |    0
 gdb/{common => gdbsupport}/gdb_vecs.h              |    0
 gdb/{common => gdbsupport}/gdb_wait.h              |    0
 gdb/{common => gdbsupport}/hash_enum.h             |    0
 gdb/{common => gdbsupport}/host-defs.h             |    0
 gdb/gdbsupport/job-control.c                       |   86 +
 gdb/gdbsupport/job-control.h                       |   38 +
 gdb/{common => gdbsupport}/mingw-strerror.c        |    0
 gdb/gdbsupport/netstuff.c                          |  154 +
 gdb/{common => gdbsupport}/netstuff.h              |    0
 gdb/{common => gdbsupport}/new-op.c                |    0
 gdb/{common => gdbsupport}/next-iterator.h         |    0
 gdb/{common => gdbsupport}/observable.h            |    0
 gdb/{common => gdbsupport}/offset-type.h           |    0
 gdb/gdbsupport/pathstuff.c                         |  290 +
 gdb/gdbsupport/pathstuff.h                         |   95 +
 gdb/{common => gdbsupport}/poison.h                |    0
 gdb/{common => gdbsupport}/posix-strerror.c        |    0
 gdb/{common => gdbsupport}/preprocessor.h          |    0
 gdb/{common => gdbsupport}/print-utils.c           |    0
 gdb/{common => gdbsupport}/print-utils.h           |    0
 gdb/{common => gdbsupport}/ptid.c                  |    0
 gdb/{common => gdbsupport}/ptid.h                  |    0
 gdb/{common => gdbsupport}/refcounted-object.h     |    0
 gdb/{common => gdbsupport}/rsp-low.c               |    0
 gdb/gdbsupport/rsp-low.h                           |  101 +
 gdb/{common => gdbsupport}/run-time-clock.c        |    0
 gdb/{common => gdbsupport}/run-time-clock.h        |    0
 gdb/{common => gdbsupport}/safe-iterator.h         |    0
 gdb/gdbsupport/scope-exit.h                        |  186 +
 gdb/{common => gdbsupport}/scoped_fd.h             |    0
 gdb/gdbsupport/scoped_mmap.c                       |   49 +
 gdb/{common => gdbsupport}/scoped_mmap.h           |    0
 gdb/{common => gdbsupport}/scoped_restore.h        |    0
 gdb/{common => gdbsupport}/selftest.c              |    0
 gdb/{common => gdbsupport}/selftest.h              |    0
 .../signals-state-save-restore.c                   |    0
 .../signals-state-save-restore.h                   |    0
 gdb/{common => gdbsupport}/signals.c               |    0
 gdb/{common => gdbsupport}/symbol.h                |    0
 gdb/gdbsupport/tdesc.c                             |  401 +
 gdb/{common => gdbsupport}/tdesc.h                 |    0
 gdb/{common => gdbsupport}/traits.h                |    0
 gdb/{common => gdbsupport}/underlying.h            |    0
 gdb/gdbsupport/valid-expr.h                        |  108 +
 gdb/{common => gdbsupport}/vec.c                   |    0
 gdb/{common => gdbsupport}/vec.h                   |    0
 gdb/{common => gdbsupport}/version.h               |    0
 gdb/{common => gdbsupport}/x86-xstate.h            |    0
 gdb/{common => gdbsupport}/xml-utils.c             |    0
 gdb/{common => gdbsupport}/xml-utils.h             |    0
 gdb/gdbthread.h                                    |    8 +-
 gdb/gdbtypes.c                                     |   10 +-
 gdb/gdbtypes.h                                     |   11 +-
 gdb/gnu-nat.c                                      |   12 +-
 gdb/go-lang.c                                      |    1 +
 gdb/go32-nat.c                                     |    2 +-
 gdb/guile/guile.c                                  |    2 +-
 gdb/guile/scm-ports.c                              |    2 +-
 gdb/guile/scm-safe-call.c                          |    2 +-
 gdb/guile/scm-type.c                               |    2 +-
 gdb/h8300-tdep.c                                   |   54 +-
 gdb/hppa-nbsd-tdep.c                               |    1 +
 gdb/hppa-obsd-tdep.c                               |    1 +
 gdb/i386-dicos-tdep.c                              |    1 +
 gdb/i386-fbsd-nat.c                                |    2 +-
 gdb/i386-fbsd-tdep.c                               |    2 +-
 gdb/i386-go32-tdep.c                               |    2 +-
 gdb/i386-linux-nat.c                               |    2 +-
 gdb/i386-linux-tdep.c                              |   32 +-
 gdb/i386-tdep.c                                    |   54 +-
 gdb/i386-tdep.h                                    |    1 +
 gdb/i387-tdep.c                                    |    2 +-
 gdb/ia64-libunwind-tdep.c                          |    2 +-
 gdb/ia64-libunwind-tdep.h                          |    2 +
 gdb/ia64-linux-nat.c                               |    2 +-
 gdb/ia64-vms-tdep.c                                |    1 +
 gdb/inf-child.c                                    |    8 +-
 gdb/inf-ptrace.c                                   |    3 +-
 gdb/infcall.c                                      |    4 +-
 gdb/infcall.h                                      |    2 +-
 gdb/infcmd.c                                       |   13 +-
 gdb/inferior-iter.h                                |    4 +-
 gdb/inferior.c                                     |    8 +-
 gdb/inferior.h                                     |    8 +-
 gdb/inflow.c                                       |    2 +-
 gdb/inflow.h                                       |    2 +-
 gdb/infrun.c                                       |   49 +-
 gdb/infrun.h                                       |    2 +-
 gdb/inline-frame.c                                 |    2 +-
 gdb/interps.c                                      |    9 +-
 gdb/interps.h                                      |    1 +
 gdb/jit.c                                          |   45 +-
 gdb/language.c                                     |    9 +-
 gdb/language.h                                     |    2 +-
 gdb/libmcheck.m4                                   |   43 -
 gdb/linespec.c                                     |    7 +-
 gdb/linux-fork.c                                   |    5 +-
 gdb/linux-nat-trad.c                               |    1 +
 gdb/linux-nat.c                                    |   12 +-
 gdb/linux-record.c                                 |    1 +
 gdb/linux-tdep.c                                   |    4 +-
 gdb/linux-thread-db.c                              |   23 +-
 gdb/location.c                                     |    2 +-
 gdb/location.h                                     |    2 +
 gdb/m2-lang.c                                      |    1 +
 gdb/m32r-linux-tdep.c                              |    1 +
 gdb/machoread.c                                    |    2 +-
 gdb/macrotab.h                                     |    2 +-
 gdb/main.c                                         |   12 +-
 gdb/maint-test-options.c                           |  142 +-
 gdb/maint-test-settings.c                          |  215 +-
 gdb/maint.c                                        |   90 +-
 gdb/maint.h                                        |    2 +-
 gdb/mdebugread.c                                   |   12 +-
 gdb/mem-break.c                                    |    2 +
 gdb/memattr.c                                      |   13 +-
 gdb/memrange.h                                     |    2 +-
 gdb/mi/mi-cmd-break.h                              |    2 +-
 gdb/mi/mi-cmd-env.c                                |    2 +-
 gdb/mi/mi-cmd-file.c                               |    6 +-
 gdb/mi/mi-cmd-stack.c                              |   14 +-
 gdb/mi/mi-cmd-var.c                                |   28 +-
 gdb/mi/mi-interp.c                                 |   12 +-
 gdb/mi/mi-main.c                                   |   48 +-
 gdb/mi/mi-out.c                                    |   25 +-
 gdb/mi/mi-out.h                                    |   12 +-
 gdb/mi/mi-parse.h                                  |    2 +-
 gdb/mi/mi-symbol-cmds.c                            |    2 +-
 gdb/mingw-hdep.c                                   |    9 -
 gdb/minsyms.c                                      |   38 +-
 gdb/minsyms.h                                      |   12 -
 gdb/mips-linux-tdep.c                              |    4 +-
 gdb/mn10300-linux-tdep.c                           |    1 +
 gdb/namespace.c                                    |   13 +-
 gdb/namespace.h                                    |    4 +-
 gdb/nat/aarch64-linux-hw-point.c                   |    6 +-
 gdb/nat/aarch64-linux-hw-point.h                   |    2 +-
 gdb/nat/aarch64-linux.c                            |    4 +-
 gdb/nat/aarch64-sve-linux-ptrace.c                 |    6 +-
 gdb/nat/amd64-linux-siginfo.c                      |    2 +-
 gdb/nat/fork-inferior.c                            |   14 +-
 gdb/nat/linux-btrace.c                             |   12 +-
 gdb/nat/linux-btrace.h                             |    4 +-
 gdb/nat/linux-namespaces.c                         |    8 +-
 gdb/nat/linux-nat.h                                |    2 +-
 gdb/nat/linux-osdata.c                             |    8 +-
 gdb/nat/linux-personality.c                        |    2 +-
 gdb/nat/linux-procfs.c                             |    4 +-
 gdb/nat/linux-ptrace.c                             |    4 +-
 gdb/nat/linux-ptrace.h                             |    2 +-
 gdb/nat/linux-waitpid.c                            |    4 +-
 gdb/nat/mips-linux-watch.c                         |    2 +-
 gdb/nat/mips-linux-watch.h                         |    2 +-
 gdb/nat/ppc-linux.c                                |    2 +-
 gdb/nat/x86-dregs.c                                |    4 +-
 gdb/nat/x86-dregs.h                                |    2 +-
 gdb/nat/x86-linux-dregs.c                          |    2 +-
 gdb/nat/x86-linux.c                                |    2 +-
 gdb/nios2-linux-tdep.c                             |    1 +
 gdb/nto-procfs.c                                   |    4 +-
 gdb/nto-tdep.c                                     |    2 +-
 gdb/objfile-flags.h                                |    2 +-
 gdb/objfiles.c                                     |   10 +-
 gdb/objfiles.h                                     |   13 +-
 gdb/obsd-nat.c                                     |    4 +-
 gdb/observable.h                                   |    2 +-
 gdb/opencl-lang.c                                  |    1 +
 gdb/or1k-linux-tdep.c                              |    1 +
 gdb/osdata.c                                       |    2 +-
 gdb/p-lang.c                                       |    1 +
 gdb/p-valprint.c                                   |    2 +-
 gdb/parse.c                                        |    2 +-
 gdb/parser-defs.h                                  |    3 +-
 gdb/ppc-linux-nat.c                                |    2 +-
 gdb/ppc-tdep.h                                     |    2 +
 gdb/printcmd.c                                     |  195 +-
 gdb/probe.c                                        |    2 +-
 gdb/probe.h                                        |    2 +
 gdb/proc-api.c                                     |    2 +-
 gdb/procfs.c                                       |    8 +-
 gdb/producer.c                                     |    2 +-
 gdb/progspace.c                                    |    2 +-
 gdb/progspace.h                                    |    8 +-
 gdb/psymtab.h                                      |    2 +-
 gdb/python/lib/gdb/__init__.py                     |   16 +-
 gdb/python/lib/gdb/function/strfns.py              |    8 +-
 gdb/python/py-block.c                              |   45 +-
 gdb/python/py-breakpoint.c                         |    8 +-
 gdb/python/py-framefilter.c                        |  106 +-
 gdb/python/py-inferior.c                           |   38 +-
 gdb/python/py-infthread.c                          |    8 +-
 gdb/python/py-objfile.c                            |   80 +-
 gdb/python/py-record-btrace.c                      |    1 +
 gdb/python/py-ref.h                                |    2 +-
 gdb/python/py-symbol.c                             |   40 +
 gdb/python/py-type.c                               |    2 +-
 gdb/python/py-unwind.c                             |    6 +-
 gdb/python/py-value.c                              |    2 +-
 gdb/python/python-internal.h                       |    4 +-
 gdb/python/python.c                                |    8 +-
 gdb/ravenscar-thread.c                             |    8 +-
 gdb/record-btrace.c                                |   41 +-
 gdb/record-full.c                                  |    8 +-
 gdb/record.c                                       |    8 +-
 gdb/record.h                                       |    3 +-
 gdb/regcache-dump.c                                |    7 +-
 gdb/regcache.c                                     |   16 +-
 gdb/regcache.h                                     |   14 +-
 gdb/regformats/aarch64.dat                         |   74 -
 gdb/regformats/i386/amd64-avx-avx512-linux.dat     |  154 -
 gdb/regformats/i386/amd64-avx-linux.dat            |   82 -
 .../i386/amd64-avx-mpx-avx512-pku-linux.dat        |  161 -
 gdb/regformats/i386/amd64-avx-mpx-linux.dat        |   88 -
 gdb/regformats/i386/amd64-linux.dat                |   66 -
 gdb/regformats/i386/amd64-mpx-linux.dat            |   72 -
 gdb/regformats/i386/amd64.dat                      |   65 -
 gdb/regformats/i386/i386-avx-avx512-linux.dat      |   72 -
 gdb/regformats/i386/i386-avx-linux.dat             |   56 -
 .../i386/i386-avx-mpx-avx512-pku-linux.dat         |   79 -
 gdb/regformats/i386/i386-avx-mpx-linux.dat         |   62 -
 gdb/regformats/i386/i386-linux.dat                 |   48 -
 gdb/regformats/i386/i386-mmx-linux.dat             |   48 -
 gdb/regformats/i386/i386-mpx-linux.dat             |   54 -
 gdb/regformats/i386/i386.dat                       |   47 -
 gdb/regformats/i386/x32-avx-avx512-linux.dat       |  154 -
 gdb/regformats/i386/x32-avx-linux.dat              |   82 -
 gdb/regformats/i386/x32-linux.dat                  |   66 -
 gdb/remote-fileio.c                                |    6 +-
 gdb/remote-fileio.h                                |    2 +-
 gdb/remote-sim.c                                   |   81 +-
 gdb/remote.c                                       |   55 +-
 gdb/riscv-fbsd-nat.c                               |   15 +-
 gdb/riscv-fbsd-tdep.c                              |    1 +
 gdb/riscv-linux-tdep.c                             |    1 +
 gdb/riscv-tdep.c                                   |   49 +-
 gdb/rs6000-aix-tdep.c                              |    2 +-
 gdb/rust-exp.y                                     |    7 +-
 gdb/s12z-tdep.c                                    |    4 +-
 gdb/s390-linux-nat.c                               |   81 +-
 gdb/s390-tdep.c                                    |   33 +
 gdb/selftest-arch.c                                |    2 +-
 gdb/ser-base.c                                     |    2 +-
 gdb/ser-event.c                                    |    2 +-
 gdb/ser-pipe.c                                     |    4 +-
 gdb/ser-tcp.c                                      |   22 +-
 gdb/ser-unix.c                                     |    4 +-
 gdb/serial.c                                       |    8 +-
 gdb/sh-linux-tdep.c                                |    1 +
 gdb/sh-nbsd-tdep.c                                 |    1 +
 gdb/skip.c                                         |   34 +-
 gdb/solib-aix.c                                    |  147 +-
 gdb/solib-darwin.c                                 |   24 +-
 gdb/solib-dsbt.c                                   |   40 +-
 gdb/solib-spu.c                                    |   15 +-
 gdb/solib-svr4.c                                   |    3 +-
 gdb/solib-target.c                                 |    2 +-
 gdb/solib.c                                        |    4 +-
 gdb/source-cache.c                                 |  303 +-
 gdb/source-cache.h                                 |   63 +-
 gdb/source.c                                       |  166 +-
 gdb/source.h                                       |    7 +-
 gdb/sparc-nat.c                                    |    2 +-
 gdb/sparc-nbsd-tdep.c                              |    1 +
 gdb/sparc-obsd-tdep.c                              |    1 +
 gdb/sparc-ravenscar-thread.c                       |    1 +
 gdb/sparc64-fbsd-tdep.c                            |    1 +
 gdb/sparc64-linux-tdep.c                           |    6 +-
 gdb/spu-linux-nat.c                                |    2 +-
 gdb/spu-tdep.c                                     |   28 +-
 gdb/stabsread.c                                    |   19 +-
 gdb/stack.c                                        |  321 +-
 gdb/stack.h                                        |   12 +
 gdb/stap-probe.c                                   |   34 +-
 gdb/std-regs.c                                     |    2 +
 gdb/symfile-add-flags.h                            |    2 +-
 gdb/symfile.c                                      |   50 +-
 gdb/symfile.h                                      |    8 +-
 gdb/symtab.c                                       |  387 +-
 gdb/symtab.h                                       |   32 +-
 gdb/target-descriptions.c                          |   28 +-
 gdb/target-descriptions.h                          |    3 +-
 gdb/target-float.c                                 |    2 +-
 gdb/target-memory.c                                |    4 +-
 gdb/target.c                                       |    8 +-
 gdb/target.h                                       |    8 +-
 gdb/target/waitstatus.c                            |    2 +-
 gdb/target/waitstatus.h                            |    2 +-
 gdb/testsuite/ChangeLog                            |  617 +
 gdb/testsuite/gdb.ada/catch_assert_if.exp          |    2 +-
 gdb/testsuite/gdb.ada/catch_ex.exp                 |    8 +-
 gdb/testsuite/gdb.ada/char_enum.exp                |    6 +
 gdb/testsuite/gdb.ada/char_enum/foo.adb            |    6 +-
 gdb/testsuite/gdb.ada/char_enum/pck.ads            |    2 +-
 gdb/testsuite/gdb.ada/display_nested.exp           |   29 +
 gdb/testsuite/gdb.ada/display_nested/foo.adb       |   30 +
 gdb/testsuite/gdb.ada/display_nested/pack.adb      |   23 +
 gdb/testsuite/gdb.ada/display_nested/pack.ads      |   20 +
 gdb/testsuite/gdb.ada/info_auto_lang.exp           |    5 +-
 gdb/testsuite/gdb.ada/length_cond.exp              |    3 +
 gdb/testsuite/gdb.ada/mi_catch_assert.exp          |    2 +-
 gdb/testsuite/gdb.ada/mi_catch_ex.exp              |    8 +-
 gdb/testsuite/gdb.ada/mi_catch_ex_hand.exp         |    4 +-
 gdb/testsuite/gdb.ada/mi_ex_cond.exp               |    2 +-
 gdb/testsuite/gdb.ada/ptype_union.exp              |    5 +
 gdb/testsuite/gdb.arch/aarch64-prologue.c          |   83 +
 gdb/testsuite/gdb.arch/aarch64-prologue.exp        |   36 +
 gdb/testsuite/gdb.arch/amd64-break-on-asm-line.S   |   35 +
 gdb/testsuite/gdb.arch/amd64-break-on-asm-line.exp |   35 +
 gdb/testsuite/gdb.arch/arm-cmse-sgstubs.c          |   50 +
 gdb/testsuite/gdb.arch/arm-cmse-sgstubs.exp        |   50 +
 gdb/testsuite/gdb.arch/i386-pkru.exp               |    2 +-
 gdb/testsuite/gdb.arch/riscv-bp-infcall.c          |   29 +
 gdb/testsuite/gdb.arch/riscv-bp-infcall.exp        |   56 +
 gdb/testsuite/gdb.base/alias.exp                   |   50 +
 gdb/testsuite/gdb.base/batch-exit-status.exp       |   32 +-
 .../gdb.base/batch-preserve-term-settings.exp      |    7 +
 gdb/testsuite/gdb.base/break-idempotent.exp        |   66 +-
 gdb/testsuite/gdb.base/break-interp.exp            |    8 +
 gdb/testsuite/gdb.base/compare-sections.exp        |   11 +-
 gdb/testsuite/gdb.base/define.exp                  |   13 +-
 gdb/testsuite/gdb.base/examine-backward.exp        |    2 +-
 gdb/testsuite/gdb.base/frame-args.exp              |   60 +
 gdb/testsuite/gdb.base/help.exp                    |   62 +-
 gdb/testsuite/gdb.base/index-cache.exp             |    3 +-
 gdb/testsuite/gdb.base/info-macros.exp             |   21 +-
 gdb/testsuite/gdb.base/info-types.c                |  117 +
 gdb/testsuite/gdb.base/info-types.exp              |  131 +
 gdb/testsuite/gdb.base/info_sources.c              |   23 +
 gdb/testsuite/gdb.base/info_sources.exp            |   96 +
 gdb/testsuite/gdb.base/info_sources_base.c         |   22 +
 .../gdb.base/infoline-reloc-main-from-zero.exp     |    2 +-
 gdb/testsuite/gdb.base/maint.exp                   |    6 +-
 gdb/testsuite/gdb.base/options.exp                 |  231 +-
 gdb/testsuite/gdb.base/printcmds.exp               |   58 +-
 gdb/testsuite/gdb.base/settings.exp                |   35 +-
 gdb/testsuite/gdb.base/shell.exp                   |   47 +-
 gdb/testsuite/gdb.base/signals.exp                 |   17 +-
 gdb/testsuite/gdb.base/structs.exp                 |    6 +-
 gdb/testsuite/gdb.base/style.c                     |    7 +-
 gdb/testsuite/gdb.base/style.exp                   |    8 +-
 gdb/testsuite/gdb.base/with.c                      |   41 +
 gdb/testsuite/gdb.base/with.exp                    |  289 +
 gdb/testsuite/gdb.cp/constexpr-field.exp           |    3 +-
 gdb/testsuite/gdb.cp/except-multi-location-lib.cc  |   25 +
 gdb/testsuite/gdb.cp/except-multi-location-main.cc |   36 +
 gdb/testsuite/gdb.cp/except-multi-location.exp     |   87 +
 gdb/testsuite/gdb.cp/exception.exp                 |   18 +-
 gdb/testsuite/gdb.cp/nested-types.exp              |   11 +-
 gdb/testsuite/gdb.dwarf2/ada-linkage-name.c        |   41 +
 gdb/testsuite/gdb.dwarf2/ada-linkage-name.exp      |   95 +
 gdb/testsuite/gdb.dwarf2/dw2-dir-file-name.exp     |    7 +
 gdb/testsuite/gdb.dwarf2/dw2-ranges-func-hi-cold.c |   82 +
 gdb/testsuite/gdb.dwarf2/dw2-ranges-func-lo-cold.c |   82 +
 gdb/testsuite/gdb.dwarf2/dw2-ranges-func.c         |   78 -
 gdb/testsuite/gdb.dwarf2/dw2-ranges-func.exp       |  704 +-
 gdb/testsuite/gdb.dwarf2/dw2-restrict.S            |  509 +-
 gdb/testsuite/gdb.dwarf2/implptr-64bit.exp         |    2 +-
 .../gdb.dwarf2/inlined_subroutine-inheritance.exp  |    6 +-
 gdb/testsuite/gdb.dwarf2/multidictionary.exp       |    6 +
 gdb/testsuite/gdb.dwarf2/varval.exp                |  423 +-
 gdb/testsuite/gdb.fortran/vla-ptype.exp            |   12 +
 gdb/testsuite/gdb.fortran/vla-sizeof.exp           |   10 +
 gdb/testsuite/gdb.fortran/vla-value.exp            |   27 +
 gdb/testsuite/gdb.fortran/vla.f90                  |   15 +
 gdb/testsuite/gdb.gdb/selftest.exp                 |   23 +-
 gdb/testsuite/gdb.linespec/break-ask.exp           |    6 +-
 gdb/testsuite/gdb.linespec/explicit.exp            |   17 +-
 .../gdb.mi/list-thread-groups-available.exp        |   13 +-
 gdb/testsuite/gdb.mi/mi-catch-cpp-exceptions.exp   |  119 +-
 gdb/testsuite/gdb.mi/mi-complete.exp               |    6 +-
 gdb/testsuite/gdb.multi/tids.exp                   |   21 +-
 gdb/testsuite/gdb.objc/basicclass.exp              |    2 +-
 gdb/testsuite/gdb.objc/basicclass.m                |    1 +
 gdb/testsuite/gdb.objc/nondebug.m                  |    1 +
 gdb/testsuite/gdb.objc/objcdecode.m                |    1 +
 gdb/testsuite/gdb.python/py-block.exp              |    5 +
 gdb/testsuite/gdb.python/py-breakpoint.exp         |    5 +-
 gdb/testsuite/gdb.python/py-completion.exp         |   88 +-
 gdb/testsuite/gdb.python/py-events.exp             |    2 +-
 gdb/testsuite/gdb.python/py-evsignal.exp           |    2 +-
 gdb/testsuite/gdb.python/py-evthreads.exp          |    2 +-
 .../gdb.python/py-framefilter-invalidarg.exp       |    4 +-
 gdb/testsuite/gdb.python/py-framefilter.exp        |   86 +-
 .../gdb.python/py-mi-var-info-path-expression.exp  |    3 +-
 gdb/testsuite/gdb.python/py-objfile-script.exp     |    2 +-
 gdb/testsuite/gdb.python/py-objfile.c              |    3 +
 gdb/testsuite/gdb.python/py-objfile.exp            |   35 +-
 gdb/testsuite/gdb.python/py-pp-maint.exp           |    2 +-
 gdb/testsuite/gdb.python/py-pp-registration.exp    |    2 +-
 gdb/testsuite/gdb.python/py-section-script.exp     |   21 +-
 gdb/testsuite/gdb.python/py-symbol.c               |    5 +
 gdb/testsuite/gdb.python/py-symbol.exp             |   24 +
 gdb/testsuite/gdb.python/py-symtab.exp             |    4 +-
 gdb/testsuite/gdb.python/python.exp                |    8 +-
 gdb/testsuite/gdb.server/reconnect-ctrl-c.exp      |    5 +
 gdb/testsuite/gdb.server/unittest.exp              |    2 +-
 .../gdb.testsuite/foreach_with_prefix.exp          |   98 +
 gdb/testsuite/gdb.threads/fork-plus-threads.exp    |    8 +
 gdb/testsuite/gdb.trace/entry-values.exp           |    4 +-
 .../gdb.trace/unavailable-dwarf-piece.exp          |    8 +-
 gdb/testsuite/gdb.tui/basic.exp                    |   55 +
 gdb/testsuite/gdb.tui/empty.exp                    |  101 +
 gdb/testsuite/gdb.tui/list.exp                     |   37 +
 gdb/testsuite/gdb.tui/main.exp                     |   34 +
 gdb/testsuite/gdb.tui/regs.exp                     |   48 +
 gdb/testsuite/gdb.tui/resize.exp                   |   42 +
 gdb/testsuite/lib/completion-support.exp           |   23 +-
 gdb/testsuite/lib/gdb.exp                          |  180 +-
 gdb/testsuite/lib/mi-support.exp                   |    7 +
 gdb/testsuite/lib/pascal.exp                       |    2 +
 gdb/testsuite/lib/read1.c                          |    6 +-
 gdb/testsuite/lib/tuiterm.exp                      |  608 +
 gdb/thread-iter.h                                  |    6 +-
 gdb/thread.c                                       |  102 +-
 gdb/tic6x-linux-tdep.c                             |    1 +
 gdb/tilegx-linux-tdep.c                            |    1 +
 gdb/tilegx-tdep.c                                  |    2 +-
 gdb/top.c                                          |   65 +-
 gdb/top.h                                          |    3 +-
 gdb/tracefile-tfile.c                              |    9 +-
 gdb/tracefile.c                                    |    3 +-
 gdb/tracepoint.c                                   |   59 +-
 gdb/tracepoint.h                                   |    2 +-
 gdb/trad-frame.c                                   |    1 +
 gdb/tui/tui-command.c                              |   92 +-
 gdb/tui/tui-command.h                              |   54 +-
 gdb/tui/tui-data.c                                 |  699 +-
 gdb/tui/tui-data.h                                 |  390 +-
 gdb/tui/tui-disasm.c                               |  155 +-
 gdb/tui/tui-disasm.h                               |   50 +-
 gdb/tui/tui-hooks.c                                |   26 +-
 gdb/tui/tui-interp.c                               |    2 -
 gdb/tui/tui-io.c                                   |   96 +-
 gdb/tui/tui-layout.c                               |  870 +-
 gdb/tui/tui-layout.h                               |    4 +-
 gdb/tui/tui-out.c                                  |    6 +-
 gdb/tui/tui-out.h                                  |    4 +-
 gdb/tui/tui-regs.c                                 |  618 +-
 gdb/tui/tui-regs.h                                 |  107 +-
 gdb/tui/tui-source.c                               |  328 +-
 gdb/tui/tui-source.h                               |   67 +-
 gdb/tui/tui-stack.c                                |  173 +-
 gdb/tui/tui-stack.h                                |   29 +
 gdb/tui/tui-win.c                                  |  683 +-
 gdb/tui/tui-win.h                                  |    2 -
 gdb/tui/tui-windata.c                              |  295 -
 gdb/tui/tui-windata.h                              |   39 -
 gdb/tui/tui-wingeneral.c                           |  167 +-
 gdb/tui/tui-wingeneral.h                           |   15 +-
 gdb/tui/tui-winsource.c                            |  609 +-
 gdb/tui/tui-winsource.h                            |  247 +-
 gdb/tui/tui.c                                      |   25 +-
 gdb/tui/tui.h                                      |   13 +-
 gdb/type-stack.h                                   |    1 +
 gdb/typeprint.c                                    |    5 +-
 gdb/ui-file.c                                      |    2 +-
 gdb/ui-out.c                                       |   24 +-
 gdb/ui-out.h                                       |   20 +-
 gdb/ui-style.c                                     |    1 +
 gdb/unittests/array-view-selftests.c               |    4 +-
 gdb/unittests/child-path-selftests.c               |    4 +-
 gdb/unittests/cli-utils-selftests.c                |    2 +-
 gdb/unittests/common-utils-selftests.c             |    4 +-
 gdb/unittests/copy_bitwise-selftests.c             |    2 +-
 gdb/unittests/environ-selftests.c                  |    4 +-
 gdb/unittests/format_pieces-selftests.c            |    4 +-
 gdb/unittests/function-view-selftests.c            |    4 +-
 gdb/unittests/help-doc-selftests.c                 |  107 +
 gdb/unittests/lookup_name_info-selftests.c         |    2 +-
 gdb/unittests/memory-map-selftests.c               |    2 +-
 gdb/unittests/memrange-selftests.c                 |    2 +-
 gdb/unittests/mkdir-recursive-selftests.c          |    8 +-
 gdb/unittests/observable-selftests.c               |    4 +-
 gdb/unittests/offset-type-selftests.c              |    8 +-
 gdb/unittests/optional-selftests.c                 |    4 +-
 gdb/unittests/parse-connection-spec-selftests.c    |    4 +-
 gdb/unittests/ptid-selftests.c                     |    2 +-
 gdb/unittests/rsp-low-selftests.c                  |    4 +-
 gdb/unittests/scoped_fd-selftests.c                |    6 +-
 gdb/unittests/scoped_mmap-selftests.c              |    8 +-
 gdb/unittests/scoped_restore-selftests.c           |    4 +-
 gdb/unittests/string_view-selftests.c              |    4 +-
 gdb/unittests/style-selftests.c                    |    2 +-
 gdb/unittests/tracepoint-selftests.c               |    2 +-
 gdb/unittests/unpack-selftests.c                   |    2 +-
 gdb/unittests/utils-selftests.c                    |    2 +-
 gdb/unittests/xml-utils-selftests.c                |    4 +-
 gdb/utils.c                                        |   27 +-
 gdb/utils.h                                        |    5 +-
 gdb/valarith.c                                     |    5 +-
 gdb/valops.c                                       |   16 +-
 gdb/valprint.c                                     |    5 +-
 gdb/valprint.h                                     |   13 +-
 gdb/value.c                                        |    4 +-
 gdb/value.h                                        |   10 +-
 gdb/varobj.c                                       |    3 +-
 gdb/varobj.h                                       |    2 +-
 gdb/windows-nat.c                                  |    4 +-
 gdb/x86-linux-nat.c                                |    2 +-
 gdb/x86-tdep.c                                     |    1 +
 gdb/xcoffread.c                                    |    7 +-
 gdb/xml-support.c                                  |    2 +-
 gdb/xml-support.h                                  |    7 +-
 gdb/xml-tdesc.h                                    |    2 +-
 gdb/xstormy16-tdep.c                               |    2 +-
 gdb/xtensa-linux-nat.c                             |    2 +-
 gdb/xtensa-linux-tdep.c                            |    1 +
 gnulib/ChangeLog                                   |    4 +
 gnulib/update-gnulib.sh                            |    8 +-
 gold/ChangeLog                                     |  148 +
 gold/ehframe.cc                                    |   47 +-
 gold/ehframe.h                                     |   25 +-
 gold/layout.cc                                     |    9 +-
 gold/layout.h                                      |   16 +-
 gold/object.cc                                     |   31 +-
 gold/powerpc.cc                                    | 2321 +-
 include/ChangeLog                                  |   73 +
 include/coff/i386.h                                |   19 +
 include/coff/x86_64.h                              |   22 +-
 include/ctf-api.h                                  |    5 +-
 include/ctf.h                                      |   10 +-
 include/elf/internal.h                             |    4 +-
 include/elf/mips.h                                 |    6 +
 include/elf/ppc64.h                                |   10 +-
 include/opcode/aarch64.h                           |    2 +-
 include/opcode/arc.h                               |    2 +
 include/opcode/h8300.h                             |   94 +-
 include/opcode/i386.h                              |    1 +
 ld/ChangeLog                                       |  495 +
 ld/emulparams/armelf.sh                            |   14 +-
 ld/emulparams/elf32bmip.sh                         |    1 +
 ld/emulparams/elf32bmipn32-defs.sh                 |    1 +
 ld/emulparams/elf64bmip-defs.sh                    |    1 +
 ld/emulparams/elf64bpf.sh                          |    3 +-
 ld/emultempl/aarch64elf.em                         |    2 +-
 ld/emultempl/aix.em                                |    5 +-
 ld/emultempl/alphaelf.em                           |    2 +-
 ld/emultempl/elf32.em                              |   17 +-
 ld/emultempl/mipself.em                            |   16 -
 ld/emultempl/mmo.em                                |    2 +-
 ld/emultempl/pe.em                                 |    3 +-
 ld/emultempl/pep.em                                |    3 +-
 ld/emultempl/ppc32elf.em                           |    9 +-
 ld/emultempl/spuelf.em                             |    8 +-
 ld/ldexp.c                                         |   24 +-
 ld/ldlang.c                                        |  301 +-
 ld/ldlang.h                                        |   66 +-
 ld/ldlex.l                                         |    4 +-
 ld/ldmain.c                                        |    2 +-
 ld/lexsup.c                                        |    3 +-
 ld/plugin.c                                        |   30 +-
 ld/scripttempl/elf64bpf.sc                         |  702 +
 ld/testsuite/ld-aarch64/bti-plt-2.d                |    2 +-
 ld/testsuite/ld-aarch64/bti-plt-4.d                |    2 +-
 ld/testsuite/ld-aarch64/bti-plt-6.d                |    2 +-
 ld/testsuite/ld-aarch64/bti-plt-7.d                |    2 +-
 ld/testsuite/ld-aarch64/bti-warn.d                 |    2 +-
 ld/testsuite/ld-aarch64/property-bti-pac1.d        |    2 +-
 ld/testsuite/ld-aarch64/property-bti-pac2.d        |    2 +-
 ld/testsuite/ld-aarch64/property-bti-pac3.d        |    2 +-
 ld/testsuite/ld-arc/relax-local-pic.d              |   14 +
 ld/testsuite/ld-arc/relax-local-pic.s              |   16 +
 ld/testsuite/ld-arm/arm-elf.exp                    |    6 +
 ld/testsuite/ld-arm/cmse_main.s                    |   21 +
 ld/testsuite/ld-arm/cmse_main_sec_debug.d          |   29 +
 ld/testsuite/ld-arm/cmse_sec_debug.s               |  142 +
 ld/testsuite/ld-arm/cortex-a8-fix-b-plt.d          |    2 +-
 ld/testsuite/ld-arm/cortex-a8-fix-b-rel-arm.d      |    2 +-
 ld/testsuite/ld-arm/cortex-a8-fix-bcc-plt.d        |    2 +-
 ld/testsuite/ld-arm/farcall-cond-thumb-arm.d       |    2 +-
 ld/testsuite/ld-arm/farcall-mixed-app.d            |    4 +-
 ld/testsuite/ld-arm/farcall-mixed-app2.d           |    4 +-
 ld/testsuite/ld-arm/farcall-mixed-lib-v4t.d        |   20 +-
 ld/testsuite/ld-arm/farcall-thumb-arm-pic-veneer.d |    2 +-
 ld/testsuite/ld-arm/farcall-thumb-arm-short.d      |    2 +-
 ld/testsuite/ld-arm/farcall-thumb-arm.d            |    4 +-
 .../ld-arm/farcall-thumb-thumb-pic-veneer.d        |    2 +-
 ld/testsuite/ld-arm/farcall-thumb-thumb.d          |    2 +-
 ld/testsuite/ld-arm/fix-arm1176-on.d               |    2 +-
 ld/testsuite/ld-arm/ifunc-10.dd                    |   32 +-
 ld/testsuite/ld-arm/ifunc-2.dd                     |    8 +-
 ld/testsuite/ld-arm/ifunc-4.dd                     |   32 +-
 ld/testsuite/ld-arm/ifunc-6.dd                     |    4 +-
 ld/testsuite/ld-arm/ifunc-8.dd                     |   16 +-
 ld/testsuite/ld-arm/jump-reloc-veneers-long.d      |    2 +-
 ld/testsuite/ld-arm/mixed-app.d                    |    2 +-
 ld/testsuite/ld-arm/thumb2-b-interwork.d           |    2 +-
 ld/testsuite/ld-arm/tls-longplt.d                  |    2 +-
 ld/testsuite/ld-arm/tls-thumb1.d                   |    4 +-
 ld/testsuite/ld-arm/unwind-4.d                     |    2 +
 ld/testsuite/ld-bpf/call-1.d                       |    1 -
 ld/testsuite/ld-bpf/jump-1.d                       |    1 -
 ld/testsuite/ld-cris/tls-dso-dtpoffd2.d            |    8 +-
 ld/testsuite/ld-cris/tls-dso-dtpoffd4.d            |    8 +-
 ld/testsuite/ld-cris/tls-dso-tpoffgotcomm1.d       |   18 +-
 ld/testsuite/ld-cris/tls-gd-1.d                    |   22 +-
 ld/testsuite/ld-cris/tls-gd-1h.d                   |   22 +-
 ld/testsuite/ld-cris/tls-gd-2.d                    |   22 +-
 ld/testsuite/ld-cris/tls-gd-2h.d                   |   22 +-
 ld/testsuite/ld-cris/tls-ie-10.d                   |   20 +-
 ld/testsuite/ld-cris/tls-ie-11.d                   |   24 +-
 ld/testsuite/ld-cris/tls-ie-8.d                    |   20 +-
 ld/testsuite/ld-cris/tls-ie-9.d                    |   24 +-
 ld/testsuite/ld-cris/tls-js1.d                     |   14 +-
 ld/testsuite/ld-cris/tls-ld-4.d                    |   22 +-
 ld/testsuite/ld-cris/tls-ld-5.d                    |   22 +-
 ld/testsuite/ld-cris/tls-ld-6.d                    |   22 +-
 ld/testsuite/ld-cris/tls-ld-7.d                    |   22 +-
 ld/testsuite/ld-cris/tls-ldgd-14.d                 |   28 +-
 ld/testsuite/ld-cris/tls-ldgd-15.d                 |   30 +-
 ld/testsuite/ld-cris/tls-ldgdx-14.d                |   14 +-
 ld/testsuite/ld-cris/tls-ldgdx-15.d                |   16 +-
 ld/testsuite/ld-cris/tls-local-54.d                |    8 +-
 ld/testsuite/ld-cris/tls-local-60.d                |   12 +-
 ld/testsuite/ld-cris/tls-local-61.d                |   12 +-
 ld/testsuite/ld-cris/tls-local-63.d                |   10 +-
 ld/testsuite/ld-cris/tls-local-64.d                |   16 +-
 ld/testsuite/ld-cris/tls-ok-30.d                   |   18 +-
 ld/testsuite/ld-cris/tls-ok-32.d                   |   12 +-
 ld/testsuite/ld-cris/tls-ok-34.d                   |   16 +-
 ld/testsuite/ld-elf/group9.s                       |    2 +-
 ld/testsuite/ld-elf/hash.d                         |    2 +-
 ld/testsuite/ld-elf/pr24819.d                      |    9 +
 ld/testsuite/ld-elf/pr24819.s                      |    4 +
 ld/testsuite/ld-elf/size-1.d                       |   26 +
 ld/testsuite/ld-elf/size-1.s                       |   15 +
 ld/testsuite/ld-elf/size-1.t                       |   16 +
 ld/testsuite/ld-elf/size-2.d                       |   21 +
 ld/testsuite/ld-elf/size-2.s                       |    9 +
 ld/testsuite/ld-elf/size-2.t                       |   20 +
 ld/testsuite/ld-elf/x86-feature-1a.rd              |    2 +-
 ld/testsuite/ld-elf/x86-feature-1b.rd              |    2 +-
 ld/testsuite/ld-elf/x86-feature-1c.rd              |    2 +-
 ld/testsuite/ld-elf/x86-feature-1d.rd              |    2 +-
 ld/testsuite/ld-elf/x86-feature-1e.rd              |    2 +-
 ld/testsuite/ld-i386/ibt-plt-2d.d                  |    2 +-
 ld/testsuite/ld-i386/ibt-plt-3d.d                  |    2 +-
 ld/testsuite/ld-i386/pr23372a.d                    |    2 +-
 ld/testsuite/ld-i386/pr23372c.d                    |    2 +-
 ld/testsuite/ld-i386/pr23486a.d                    |    2 +-
 ld/testsuite/ld-i386/pr23486b.d                    |    2 +-
 ld/testsuite/ld-i386/pr23486c.d                    |    2 +-
 ld/testsuite/ld-i386/pr23486d.d                    |    2 +-
 ld/testsuite/ld-i386/pr24322a.d                    |    2 +-
 ld/testsuite/ld-i386/pr24322b.d                    |    2 +-
 ld/testsuite/ld-i386/property-x86-3.d              |    2 +-
 ld/testsuite/ld-i386/property-x86-4a.d             |    2 +-
 ld/testsuite/ld-i386/property-x86-5.d              |    2 +-
 ld/testsuite/ld-i386/property-x86-cet1.d           |    2 +-
 ld/testsuite/ld-i386/property-x86-cet2a.d          |    2 +-
 ld/testsuite/ld-i386/property-x86-cet5a.d          |    2 +-
 ld/testsuite/ld-i386/property-x86-cet5b.d          |    2 +-
 ld/testsuite/ld-i386/property-x86-ibt1a.d          |    2 +-
 ld/testsuite/ld-i386/property-x86-ibt1b.d          |    2 +-
 ld/testsuite/ld-i386/property-x86-ibt2.d           |    2 +-
 ld/testsuite/ld-i386/property-x86-ibt3a.d          |    2 +-
 ld/testsuite/ld-i386/property-x86-ibt3b.d          |    2 +-
 ld/testsuite/ld-i386/property-x86-ibt4.d           |    2 +-
 ld/testsuite/ld-i386/property-x86-ibt5.d           |    2 +-
 ld/testsuite/ld-i386/property-x86-shstk1a.d        |    2 +-
 ld/testsuite/ld-i386/property-x86-shstk1b.d        |    2 +-
 ld/testsuite/ld-i386/property-x86-shstk2.d         |    2 +-
 ld/testsuite/ld-i386/property-x86-shstk3a.d        |    2 +-
 ld/testsuite/ld-i386/property-x86-shstk3b.d        |    2 +-
 ld/testsuite/ld-i386/property-x86-shstk4.d         |    2 +-
 ld/testsuite/ld-i386/property-x86-shstk5.d         |    2 +-
 ld/testsuite/ld-mips-elf/hash1.d                   |   11 +
 ld/testsuite/ld-mips-elf/hash1.s                   |    8 +-
 ld/testsuite/ld-mips-elf/hash1a.d                  |    5 -
 ld/testsuite/ld-mips-elf/hash1b.d                  |    4 -
 ld/testsuite/ld-mips-elf/hash1c.d                  |    4 -
 ld/testsuite/ld-mips-elf/hash2.d                   |   17 +
 ld/testsuite/ld-mips-elf/mips-elf.exp              |    5 +-
 ld/testsuite/ld-mips-elf/start.s                   |   12 +
 ld/testsuite/ld-mips-elf/tls-multi-got-1.got       |   34 +-
 ld/testsuite/ld-mips-elf/tls-multi-got-1.r         |   16 +-
 ld/testsuite/ld-mips-elf/tlsdyn-pie-o32.d          |    2 +-
 ld/testsuite/ld-mips-elf/tlsdyn-pie-o32.got        |    2 +-
 ld/testsuite/ld-mips-elf/tlslib-o32-hidden.got     |   10 +-
 ld/testsuite/ld-mips-elf/tlslib-o32-ver.got        |   12 +-
 ld/testsuite/ld-mips-elf/tlslib-o32.got            |   12 +-
 ld/testsuite/ld-plugin/lto-3r.d                    |    2 +-
 ld/testsuite/ld-plugin/lto-5r.d                    |    2 +-
 ld/testsuite/ld-powerpc/callstub-1.d               |   29 +
 ld/testsuite/ld-powerpc/callstub-1.s               |    9 +
 ld/testsuite/ld-powerpc/callstub-2.d               |   35 +
 ld/testsuite/ld-powerpc/callstub-2.s               |    8 +
 ld/testsuite/ld-powerpc/elfv2exe.d                 |    2 +-
 ld/testsuite/ld-powerpc/elfv2so.d                  |   12 +-
 ld/testsuite/ld-powerpc/powerpc.exp                |    9 +-
 ld/testsuite/ld-powerpc/tlsgd.d                    |   31 +
 ld/testsuite/ld-powerpc/tlsgd.s                    |   52 +
 ld/testsuite/ld-powerpc/tlsie.d                    |   54 +
 ld/testsuite/ld-powerpc/tlsie.s                    |   77 +
 ld/testsuite/ld-powerpc/tlsld.d                    |   63 +-
 ld/testsuite/ld-powerpc/tlsld.s                    |   86 +-
 ld/testsuite/ld-powerpc/tlsld32.d                  |   44 -
 ld/testsuite/ld-powerpc/tlsldopt.d                 |   43 +
 ld/testsuite/ld-powerpc/{tlsld.s => tlsldopt.s}    |    0
 ld/testsuite/ld-powerpc/tlsldopt32.d               |   44 +
 .../ld-powerpc/{tlsld32.s => tlsldopt32.s}         |    0
 ld/testsuite/ld-powerpc/tlsso.r                    |    8 +-
 ld/testsuite/ld-powerpc/tlsso32.g                  |    2 +-
 ld/testsuite/ld-powerpc/tlsso32.r                  |    7 +-
 ld/testsuite/ld-powerpc/tlstocso.r                 |    2 +-
 ld/testsuite/ld-riscv-elf/c-lui-2.d                |   19 +
 ld/testsuite/ld-riscv-elf/c-lui-2.ld               |    6 +
 ld/testsuite/ld-riscv-elf/c-lui-2.s                |   12 +
 ld/testsuite/ld-riscv-elf/ld-riscv-elf.exp         |    1 +
 ld/testsuite/ld-s390/tlspic.rd                     |    1 -
 ld/testsuite/ld-s390/tlspic_64.rd                  |    1 -
 ld/testsuite/ld-scripts/size-1.d                   |   14 -
 ld/testsuite/ld-scripts/size-1.s                   |    7 -
 ld/testsuite/ld-scripts/size-1.t                   |   10 -
 ld/testsuite/ld-scripts/size-2.d                   |   18 -
 ld/testsuite/ld-scripts/size-2.s                   |    8 -
 ld/testsuite/ld-scripts/size-2.t                   |   22 -
 ld/testsuite/ld-scripts/size.exp                   |   41 -
 ld/testsuite/ld-sparc/tlssunnopic32.rd             |    1 -
 ld/testsuite/ld-sparc/tlssunnopic64.rd             |    1 -
 ld/testsuite/ld-sparc/tlssunpic32.rd               |    1 -
 ld/testsuite/ld-sparc/tlssunpic64.rd               |    1 -
 ld/testsuite/ld-srec/srec.exp                      |    4 +
 ld/testsuite/ld-undefined/undefined.exp            |   14 +-
 ld/testsuite/ld-x86-64/ibt-plt-2d-x32.d            |    2 +-
 ld/testsuite/ld-x86-64/ibt-plt-2d.d                |    2 +-
 ld/testsuite/ld-x86-64/ibt-plt-3d-x32.d            |    2 +-
 ld/testsuite/ld-x86-64/ibt-plt-3d.d                |    2 +-
 ld/testsuite/ld-x86-64/pr23372a-x32.d              |    2 +-
 ld/testsuite/ld-x86-64/pr23372a.d                  |    2 +-
 ld/testsuite/ld-x86-64/pr23372c-x32.d              |    2 +-
 ld/testsuite/ld-x86-64/pr23372c.d                  |    2 +-
 ld/testsuite/ld-x86-64/pr23486a-x32.d              |    2 +-
 ld/testsuite/ld-x86-64/pr23486a.d                  |    2 +-
 ld/testsuite/ld-x86-64/pr23486b-x32.d              |    2 +-
 ld/testsuite/ld-x86-64/pr23486b.d                  |    2 +-
 ld/testsuite/ld-x86-64/pr23486c-x32.d              |    2 +-
 ld/testsuite/ld-x86-64/pr23486c.d                  |    2 +-
 ld/testsuite/ld-x86-64/pr23486d-x32.d              |    2 +-
 ld/testsuite/ld-x86-64/pr23486d.d                  |    2 +-
 ld/testsuite/ld-x86-64/pr24322a-x32.d              |    2 +-
 ld/testsuite/ld-x86-64/pr24322a.d                  |    2 +-
 ld/testsuite/ld-x86-64/pr24322b-x32.d              |    2 +-
 ld/testsuite/ld-x86-64/pr24322b.d                  |    2 +-
 ld/testsuite/ld-x86-64/pr24458a-x32.d              |    2 +-
 ld/testsuite/ld-x86-64/pr24458a.d                  |    2 +-
 ld/testsuite/ld-x86-64/pr24458b-x32.d              |    2 +-
 ld/testsuite/ld-x86-64/pr24458b.d                  |    2 +-
 ld/testsuite/ld-x86-64/pr24458c-x32.d              |    2 +-
 ld/testsuite/ld-x86-64/pr24458c.d                  |    2 +-
 ld/testsuite/ld-x86-64/pr24721-x32.d               |    6 +
 ld/testsuite/ld-x86-64/pr24721.d                   |    6 +
 ld/testsuite/ld-x86-64/pr24721.map                 |    3 +
 ld/testsuite/ld-x86-64/pr24721a.s                  |   34 +
 ld/testsuite/ld-x86-64/pr24721b.s                  |    6 +
 ld/testsuite/ld-x86-64/pr24905-x32.d               |    8 +
 ld/testsuite/ld-x86-64/pr24905.d                   |    7 +
 ld/testsuite/ld-x86-64/pr24905.s                   |    6 +
 ld/testsuite/ld-x86-64/pr24905.t                   |    1 +
 ld/testsuite/ld-x86-64/property-1.r                |    2 +-
 ld/testsuite/ld-x86-64/property-1a.r               |    2 +-
 ld/testsuite/ld-x86-64/property-2.r                |    2 +-
 ld/testsuite/ld-x86-64/property-2a.r               |    2 +-
 ld/testsuite/ld-x86-64/property-3.r                |    2 +-
 ld/testsuite/ld-x86-64/property-3a.r               |    2 +-
 ld/testsuite/ld-x86-64/property-4.r                |    2 +-
 ld/testsuite/ld-x86-64/property-4a.r               |    2 +-
 ld/testsuite/ld-x86-64/property-5.r                |    2 +-
 ld/testsuite/ld-x86-64/property-5a.r               |    2 +-
 ld/testsuite/ld-x86-64/property-6.r                |    2 +-
 ld/testsuite/ld-x86-64/property-7.r                |    2 +-
 ld/testsuite/ld-x86-64/property-7a.r               |    2 +-
 ld/testsuite/ld-x86-64/property-x86-3-x32.d        |    2 +-
 ld/testsuite/ld-x86-64/property-x86-3.d            |    2 +-
 ld/testsuite/ld-x86-64/property-x86-4a-x32.d       |    2 +-
 ld/testsuite/ld-x86-64/property-x86-4a.d           |    2 +-
 ld/testsuite/ld-x86-64/property-x86-5-x32.d        |    2 +-
 ld/testsuite/ld-x86-64/property-x86-5.d            |    2 +-
 ld/testsuite/ld-x86-64/property-x86-cet1-x32.d     |    2 +-
 ld/testsuite/ld-x86-64/property-x86-cet1.d         |    2 +-
 ld/testsuite/ld-x86-64/property-x86-cet2a-x32.d    |    2 +-
 ld/testsuite/ld-x86-64/property-x86-cet2a.d        |    2 +-
 ld/testsuite/ld-x86-64/property-x86-cet5a-x32.d    |    2 +-
 ld/testsuite/ld-x86-64/property-x86-cet5a.d        |    2 +-
 ld/testsuite/ld-x86-64/property-x86-cet5b-x32.d    |    2 +-
 ld/testsuite/ld-x86-64/property-x86-cet5b.d        |    2 +-
 ld/testsuite/ld-x86-64/property-x86-ibt1a-x32.d    |    2 +-
 ld/testsuite/ld-x86-64/property-x86-ibt1a.d        |    2 +-
 ld/testsuite/ld-x86-64/property-x86-ibt1b-x32.d    |    2 +-
 ld/testsuite/ld-x86-64/property-x86-ibt1b.d        |    2 +-
 ld/testsuite/ld-x86-64/property-x86-ibt2-x32.d     |    2 +-
 ld/testsuite/ld-x86-64/property-x86-ibt2.d         |    2 +-
 ld/testsuite/ld-x86-64/property-x86-ibt3a-x32.d    |    2 +-
 ld/testsuite/ld-x86-64/property-x86-ibt3a.d        |    2 +-
 ld/testsuite/ld-x86-64/property-x86-ibt3b-x32.d    |    2 +-
 ld/testsuite/ld-x86-64/property-x86-ibt3b.d        |    2 +-
 ld/testsuite/ld-x86-64/property-x86-ibt4-x32.d     |    2 +-
 ld/testsuite/ld-x86-64/property-x86-ibt4.d         |    2 +-
 ld/testsuite/ld-x86-64/property-x86-ibt5-x32.d     |    2 +-
 ld/testsuite/ld-x86-64/property-x86-ibt5.d         |    2 +-
 ld/testsuite/ld-x86-64/property-x86-shstk1a-x32.d  |    2 +-
 ld/testsuite/ld-x86-64/property-x86-shstk1a.d      |    2 +-
 ld/testsuite/ld-x86-64/property-x86-shstk1b-x32.d  |    2 +-
 ld/testsuite/ld-x86-64/property-x86-shstk1b.d      |    2 +-
 ld/testsuite/ld-x86-64/property-x86-shstk2-x32.d   |    2 +-
 ld/testsuite/ld-x86-64/property-x86-shstk2.d       |    2 +-
 ld/testsuite/ld-x86-64/property-x86-shstk3a-x32.d  |    2 +-
 ld/testsuite/ld-x86-64/property-x86-shstk3a.d      |    2 +-
 ld/testsuite/ld-x86-64/property-x86-shstk3b-x32.d  |    2 +-
 ld/testsuite/ld-x86-64/property-x86-shstk3b.d      |    2 +-
 ld/testsuite/ld-x86-64/property-x86-shstk4-x32.d   |    2 +-
 ld/testsuite/ld-x86-64/property-x86-shstk4.d       |    2 +-
 ld/testsuite/ld-x86-64/property-x86-shstk5-x32.d   |    2 +-
 ld/testsuite/ld-x86-64/property-x86-shstk5.d       |    2 +-
 ld/testsuite/ld-x86-64/x86-64.exp                  |    4 +
 libctf/ChangeLog                                   |  134 +
 libctf/Makefile.am                                 |    2 +-
 libctf/Makefile.in                                 |   12 +-
 libctf/ctf-create.c                                |  234 +-
 libctf/ctf-dump.c                                  |    6 +-
 libctf/ctf-error.c                                 |    2 +-
 libctf/ctf-hash.c                                  |   52 +-
 libctf/ctf-impl.h                                  |   58 +-
 libctf/ctf-lookup.c                                |    2 +-
 libctf/ctf-open-bfd.c                              |   23 +-
 libctf/ctf-open.c                                  |   61 +-
 libctf/ctf-string.c                                |  330 +
 libctf/ctf-subr.c                                  |   51 -
 libctf/ctf-types.c                                 |   85 +
 libctf/ctf-util.c                                  |   35 +-
 libiberty/ChangeLog                                |   75 +
 libiberty/cp-demangle.c                            |   29 +-
 libiberty/cplus-dem.c                              |    1 +
 libiberty/d-demangle.c                             |   20 +-
 libiberty/lrealpath.c                              |   16 +
 libiberty/rust-demangle.c                          |    1 +
 libiberty/rust-demangle.h                          |   45 +
 libiberty/simple-object-elf.c                      |   33 +-
 libiberty/testsuite/d-demangle-expected            |   20 +
 libiberty/testsuite/demangle-expected              |   13 +
 opcodes/ChangeLog                                  |  387 +
 opcodes/aarch64-asm.c                              |    4 +-
 opcodes/aarch64-dis-2.c                            |  594 +-
 opcodes/aarch64-dis.c                              |   13 +-
 opcodes/aarch64-opc.c                              |    9 +-
 opcodes/aarch64-tbl.h                              |   73 +-
 opcodes/arc-dis.c                                  |   41 +-
 opcodes/arc-ext-tbl.h                              |    7 -
 opcodes/arc-opc.c                                  |    4 +-
 opcodes/arc-tbl.h                                  | 3698 +-
 opcodes/arm-dis.c                                  |   36 +-
 opcodes/bpf-desc.c                                 |   68 +-
 opcodes/bpf-opc.c                                  |  104 +-
 opcodes/bpf-opc.h                                  |    7 +-
 opcodes/i386-dis-evex-len.h                        |  315 +
 opcodes/i386-dis-evex-mod.h                        |   42 +
 opcodes/i386-dis-evex-prefix.h                     | 1969 +
 opcodes/i386-dis-evex-reg.h                        |   51 +
 opcodes/i386-dis-evex-w.h                          | 1110 +
 opcodes/i386-dis-evex.h                            | 3397 --
 opcodes/i386-dis.c                                 |  232 +-
 opcodes/i386-gen.c                                 |   42 +-
 opcodes/i386-init.h                                |  213 +-
 opcodes/i386-opc.h                                 |   30 +-
 opcodes/i386-opc.tbl                               |  556 +-
 opcodes/i386-reg.tbl                               |   14 +-
 opcodes/i386-tbl.h                                 |54709 +++++++++-----------
 opcodes/riscv-dis.c                                |    6 +-
 opcodes/riscv-opc.c                                |   62 +-
 readline/.gitignore                                |   37 +
 readline/CHANGELOG                                 |  258 +
 readline/CHANGES                                   |  466 +
 readline/ChangeLog.gdb                             |   34 +
 readline/INSTALL                                   |    2 +-
 readline/MANIFEST                                  |   12 +-
 readline/Makefile.in                               |   91 +-
 readline/NEWS                                      |  375 +-
 readline/README                                    |   11 +-
 readline/aclocal.m4                                |  145 +-
 readline/bind.c                                    | 1069 +-
 readline/callback.c                                |  129 +-
 readline/chardefs.h                                |   20 +-
 readline/colors.c                                  |  294 +
 readline/colors.h                                  |  126 +
 readline/compat.c                                  |   29 +-
 readline/complete.c                                |  685 +-
 readline/config.h.in                               |   53 +-
 readline/configure                                 |  627 +-
 readline/configure.ac                              |  320 +
 readline/configure.in                              |  307 -
 readline/display.c                                 | 1259 +-
 readline/doc/Makefile.in                           |   21 +-
 readline/doc/history.3                             |   46 +-
 readline/doc/history.texi                          |   26 +-
 readline/doc/hstech.texi                           |   49 +-
 readline/doc/hsuser.texi                           |   77 +-
 readline/doc/readline.3                            |  244 +-
 readline/doc/rlman.texi                            |   27 +-
 readline/doc/rltech.texi                           |  363 +-
 readline/doc/rluser.texi                           |  468 +-
 readline/doc/rluserman.texi                        |   27 +-
 readline/doc/texi2dvi                              | 2316 +-
 readline/doc/texi2html                             |    6 +-
 readline/doc/version.texi                          |   12 +-
 readline/emacs_keymap.c                            |    8 +-
 readline/examples/Makefile.in                      |   75 +-
 readline/examples/excallback.c                     |    7 +-
 readline/examples/fileman.c                        |   18 +
 readline/examples/hist_erasedups.c                 |  121 +
 readline/examples/hist_purgecmd.c                  |  151 +
 readline/examples/histexamp.c                      |    3 +
 readline/examples/readlinebuf.h                    |    6 +-
 readline/examples/rl-callbacktest.c                |  115 +
 readline/examples/rl.c                             |    1 +
 readline/examples/rlbasic.c                        |   29 +
 readline/examples/rlcat.c                          |    2 +-
 readline/examples/rlevent.c                        |    7 +
 readline/examples/rlfe/config.h.in                 |    6 +-
 readline/examples/rlfe/configure                   |   15 +-
 readline/examples/rlfe/configure.in                |    4 +-
 readline/examples/rlfe/extern.h                    |    2 +-
 readline/examples/rlfe/os.h                        |    8 +-
 readline/examples/rlfe/rlfe.c                      |    9 +-
 readline/examples/rlkeymaps.c                      |   61 +
 readline/examples/rlptytest.c                      |   14 +-
 readline/examples/rltest.c                         |    1 +
 readline/examples/rlversion.c                      |    1 +
 readline/funmap.c                                  |   24 +-
 readline/histexpand.c                              |  271 +-
 readline/histfile.c                                |  346 +-
 readline/histlib.h                                 |   15 +-
 readline/history.c                                 |  196 +-
 readline/history.h                                 |   30 +-
 readline/histsearch.c                              |  125 +-
 readline/input.c                                   |  181 +-
 readline/isearch.c                                 |  240 +-
 readline/keymaps.c                                 |   30 +-
 readline/keymaps.h                                 |    3 +
 readline/kill.c                                    |  210 +-
 readline/macro.c                                   |  103 +-
 readline/mbutil.c                                  |  167 +-
 readline/misc.c                                    |  122 +-
 readline/nls.c                                     |   82 +-
 readline/parens.c                                  |   41 +-
 readline/parse-colors.c                            |  440 +
 readline/parse-colors.h                            |   46 +
 readline/patchlevel                                |    2 +-
 readline/posixdir.h                                |   14 +-
 readline/posixjmp.h                                |   20 +-
 readline/readline.c                                |  381 +-
 readline/readline.h                                |   88 +-
 readline/readline.pc.in                            |   12 +
 readline/rlconf.h                                  |   24 +-
 readline/rldefs.h                                  |   10 +-
 readline/rlmbutil.h                                |   61 +-
 readline/rlprivate.h                               |   77 +-
 readline/rlstdc.h                                  |   12 +
 readline/rltty.c                                   |  184 +-
 readline/rltypedefs.h                              |   11 +-
 readline/savestring.c                              |    5 +-
 readline/search.c                                  |  230 +-
 readline/shell.c                                   |   64 +-
 readline/shlib/Makefile.in                         |   85 +-
 readline/signals.c                                 |  229 +-
 readline/support/config.guess                      |   56 +-
 readline/support/config.rpath                      |  373 +-
 readline/support/config.sub                        |    5 +-
 readline/support/mkdist                            |   15 +-
 readline/support/shlib-install                     |   11 +-
 readline/support/shobj-conf                        |   71 +-
 readline/tcap.h                                    |    2 +-
 readline/terminal.c                                |  136 +-
 readline/text.c                                    |  407 +-
 readline/tilde.c                                   |   53 +-
 readline/undo.c                                    |  108 +-
 readline/util.c                                    |  127 +-
 readline/vi_keymap.c                               |    7 +-
 readline/vi_mode.c                                 |  805 +-
 readline/xfree.c                                   |   12 +-
 readline/xmalloc.c                                 |   12 +-
 readline/xmalloc.h                                 |    3 -
 src-release.sh                                     |    6 +-
 1846 files changed, 105036 insertions(+), 70466 deletions(-)
 create mode 100644 binutils/testsuite/gentestdlls.c
 create mode 100644 gas/testsuite/gas/aarch64/cpu-cortex-a34.d
 create mode 100644 gas/testsuite/gas/aarch64/cpu-cortex-a65.d
 create mode 100644 gas/testsuite/gas/aarch64/cpu-cortex-a65ae.d
 create mode 100644 gas/testsuite/gas/aarch64/cpu-cortex-a76ae.d
 create mode 100644 gas/testsuite/gas/aarch64/cpu-cortex-a77.d
 create mode 100644 gas/testsuite/gas/aarch64/nop-asm.s
 create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_27.d
 create mode 100644 gas/testsuite/gas/aarch64/sve-movprfx_27.s
 create mode 100644 gas/testsuite/gas/arm/float16-bad.d
 create mode 100644 gas/testsuite/gas/arm/float16-bad.l
 create mode 100644 gas/testsuite/gas/arm/float16-bad.s
 create mode 100644 gas/testsuite/gas/arm/float16-be.d
 create mode 100644 gas/testsuite/gas/arm/float16-eabi-alternative-format.d
 create mode 100644 gas/testsuite/gas/arm/float16-eabi-ieee-format.d
 create mode 100644 gas/testsuite/gas/arm/float16-eabi-no-format.d
 create mode 100644 gas/testsuite/gas/arm/float16-eabi.s
 create mode 100644 gas/testsuite/gas/arm/float16-format-bad.d
 create mode 100644 gas/testsuite/gas/arm/float16-format-bad.l
 create mode 100644 gas/testsuite/gas/arm/float16-format-bad.s
 create mode 100644 gas/testsuite/gas/arm/float16-format-opt-bad.d
 create mode 100644 gas/testsuite/gas/arm/float16-format-opt-bad.l
 create mode 100644 gas/testsuite/gas/arm/float16-le.d
 create mode 100644 gas/testsuite/gas/arm/float16.s
 create mode 100644 gas/testsuite/gas/arm/mve-vqdmlah-bad.d
 create mode 100644 gas/testsuite/gas/arm/mve-vqdmlah-bad.l
 create mode 100644 gas/testsuite/gas/arm/mve-vqdmlah-bad.s
 create mode 100644 gas/testsuite/gas/arm/mve-vqdmlash-bad.d
 create mode 100644 gas/testsuite/gas/arm/mve-vqdmlash-bad.l
 create mode 100644 gas/testsuite/gas/arm/mve-vqdmlash-bad.s
 create mode 100644 gas/testsuite/gas/arm/pr24907.d
 create mode 100644 gas/testsuite/gas/arm/pr24907.s
 create mode 100644 gas/testsuite/gas/arm/smc-bad.d
 create mode 100644 gas/testsuite/gas/arm/smc-bad.l
 create mode 100644 gas/testsuite/gas/arm/smc-bad.s
 create mode 100644 gas/testsuite/gas/bpf/data-be.d
 create mode 100644 gas/testsuite/gas/bpf/data.d
 create mode 100644 gas/testsuite/gas/bpf/data.s
 create mode 100644 gas/testsuite/gas/elf/type-2.e
 create mode 100644 gas/testsuite/gas/elf/type-2.l
 create mode 100644 gas/testsuite/gas/elf/type-2.s
 create mode 100644 gas/testsuite/gas/i386/avx-16bit.d
 create mode 100644 gas/testsuite/gas/i386/avx-16bit.s
 create mode 100644 gas/testsuite/gas/i386/avx512f-16bit.d
 create mode 100644 gas/testsuite/gas/i386/avx512f-16bit.s
 create mode 100644 gas/testsuite/gas/i386/bmi-16bit.d
 create mode 100644 gas/testsuite/gas/i386/bmi-16bit.s
 create mode 100644 gas/testsuite/gas/i386/bmi2-16bit.d
 create mode 100644 gas/testsuite/gas/i386/bmi2-16bit.s
 create mode 100644 gas/testsuite/gas/i386/lwp-16bit.d
 create mode 100644 gas/testsuite/gas/i386/lwp-16bit.s
 create mode 100644 gas/testsuite/gas/i386/optimize-2b.d
 create mode 100644 gas/testsuite/gas/i386/oversized16.l
 create mode 100644 gas/testsuite/gas/i386/oversized16.s
 create mode 100644 gas/testsuite/gas/i386/oversized64.l
 create mode 100644 gas/testsuite/gas/i386/oversized64.s
 create mode 100644 gas/testsuite/gas/i386/sse2-16bit.d
 create mode 100644 gas/testsuite/gas/i386/sse2-16bit.s
 create mode 100644 gas/testsuite/gas/i386/tbm-16bit.d
 create mode 100644 gas/testsuite/gas/i386/tbm-16bit.s
 create mode 100644 gas/testsuite/gas/i386/x86-64-avx-swap-2.d
 create mode 100644 gas/testsuite/gas/i386/x86-64-avx-swap-2.s
 create mode 100644 gas/testsuite/gas/i386/x86-64-optimize-3b.d
 create mode 100644 gas/testsuite/gas/mips/insn-isa-mode.d
 create mode 100644 gas/testsuite/gas/mips/insn-isa-mode.s
 create mode 100644 gas/testsuite/gas/ppc/groupnop.d
 create mode 100644 gas/testsuite/gas/ppc/groupnop.s
 create mode 100644 gas/testsuite/gas/riscv/alias-csr.d
 create mode 100644 gas/testsuite/gas/riscv/alias-csr.s
 create mode 100644 gas/testsuite/gas/riscv/no-aliases-csr.d
 mode change 100644 => 100755 gas/testsuite/gas/xstormy16/allinsn.sh
 mode change 100644 => 100755 gas/testsuite/gas/xstormy16/gcc.sh
 create mode 100644 gdb/aarch32-tdep.c
 create mode 100644 gdb/aarch32-tdep.h
 create mode 100644 gdb/arch/aarch32.c
 create mode 100644 gdb/arch/aarch32.h
 delete mode 100644 gdb/common/agent.c
 delete mode 100644 gdb/common/agent.h
 delete mode 100644 gdb/common/byte-vector.h
 delete mode 100644 gdb/common/common-debug.c
 delete mode 100644 gdb/common/common-defs.h
 delete mode 100644 gdb/common/common-utils.c
 delete mode 100644 gdb/common/common-utils.h
 delete mode 100644 gdb/common/common.host
 delete mode 100755 gdb/common/create-version.sh
 delete mode 100644 gdb/common/def-vector.h
 delete mode 100644 gdb/common/environ.c
 delete mode 100644 gdb/common/errors.c
 delete mode 100644 gdb/common/filestuff.c
 delete mode 100644 gdb/common/format.h
 delete mode 100644 gdb/common/forward-scope-exit.h
 delete mode 100644 gdb/common/gdb_optional.h
 delete mode 100644 gdb/common/gdb_tilde_expand.c
 delete mode 100644 gdb/common/job-control.c
 delete mode 100644 gdb/common/job-control.h
 delete mode 100644 gdb/common/netstuff.c
 delete mode 100644 gdb/common/pathstuff.c
 delete mode 100644 gdb/common/pathstuff.h
 delete mode 100644 gdb/common/rsp-low.h
 delete mode 100644 gdb/common/scope-exit.h
 delete mode 100644 gdb/common/scoped_mmap.c
 delete mode 100644 gdb/common/tdesc.c
 delete mode 100644 gdb/common/valid-expr.h
 delete mode 100644 gdb/features/aarch64.xml
 create mode 100644 gdb/features/arm/arm-core.c
 create mode 100644 gdb/features/arm/arm-fpa.c
 create mode 100644 gdb/features/arm/arm-m-profile-with-fpa.c
 create mode 100644 gdb/features/arm/arm-m-profile-with-fpa.xml
 create mode 100644 gdb/features/arm/arm-m-profile.c
 create mode 100644 gdb/features/arm/arm-vfpv2.c
 create mode 100644 gdb/features/arm/arm-vfpv3.c
 delete mode 100644 gdb/features/arm/arm-with-iwmmxt.c
 delete mode 100644 gdb/features/arm/arm-with-iwmmxt.xml
 delete mode 100644 gdb/features/arm/arm-with-m-fpa-layout.c
 delete mode 100644 gdb/features/arm/arm-with-m-fpa-layout.xml
 delete mode 100644 gdb/features/arm/arm-with-m-vfp-d16.c
 delete mode 100644 gdb/features/arm/arm-with-m-vfp-d16.xml
 delete mode 100644 gdb/features/arm/arm-with-m.c
 delete mode 100644 gdb/features/arm/arm-with-m.xml
 delete mode 100644 gdb/features/arm/arm-with-neon.c
 delete mode 100644 gdb/features/arm/arm-with-neon.xml
 delete mode 100644 gdb/features/arm/arm-with-vfpv2.c
 delete mode 100644 gdb/features/arm/arm-with-vfpv2.xml
 delete mode 100644 gdb/features/arm/arm-with-vfpv3.c
 delete mode 100644 gdb/features/arm/arm-with-vfpv3.xml
 create mode 100644 gdb/features/arm/xscale-iwmmxt.c
 delete mode 100644 gdb/features/i386/amd64-avx-avx512-linux.xml
 delete mode 100644 gdb/features/i386/amd64-avx-avx512.xml
 delete mode 100644 gdb/features/i386/amd64-avx-linux.xml
 delete mode 100644 gdb/features/i386/amd64-avx-mpx-avx512-pku-linux.xml
 delete mode 100644 gdb/features/i386/amd64-avx-mpx-avx512-pku.xml
 delete mode 100644 gdb/features/i386/amd64-avx-mpx-linux.xml
 delete mode 100644 gdb/features/i386/amd64-avx-mpx.xml
 delete mode 100644 gdb/features/i386/amd64-avx.xml
 delete mode 100644 gdb/features/i386/amd64-linux.xml
 delete mode 100644 gdb/features/i386/amd64-mpx-linux.xml
 delete mode 100644 gdb/features/i386/amd64-mpx.xml
 delete mode 100644 gdb/features/i386/amd64.xml
 delete mode 100644 gdb/features/i386/i386-avx-avx512-linux.xml
 delete mode 100644 gdb/features/i386/i386-avx-avx512.xml
 delete mode 100644 gdb/features/i386/i386-avx-linux.xml
 delete mode 100644 gdb/features/i386/i386-avx-mpx-avx512-pku-linux.xml
 delete mode 100644 gdb/features/i386/i386-avx-mpx-avx512-pku.xml
 delete mode 100644 gdb/features/i386/i386-avx-mpx-linux.xml
 delete mode 100644 gdb/features/i386/i386-avx-mpx.xml
 delete mode 100644 gdb/features/i386/i386-avx.xml
 delete mode 100644 gdb/features/i386/i386-linux.xml
 delete mode 100644 gdb/features/i386/i386-mmx-linux.xml
 delete mode 100644 gdb/features/i386/i386-mmx.xml
 delete mode 100644 gdb/features/i386/i386-mpx-linux.xml
 delete mode 100644 gdb/features/i386/i386-mpx.xml
 delete mode 100644 gdb/features/i386/i386.xml
 delete mode 100644 gdb/features/i386/x32-avx-avx512-linux.xml
 delete mode 100644 gdb/features/i386/x32-avx-linux.xml
 delete mode 100644 gdb/features/i386/x32-linux.xml
 create mode 100644 gdb/gdbserver/linux-aarch32-tdesc.c
 create mode 100644 gdb/gdbserver/linux-aarch32-tdesc.h
 delete mode 100644 gdb/gdbserver/linux-aarch64-tdesc-selftest.c
 create mode 100644 gdb/gdbserver/linux-arm-tdesc.c
 create mode 100644 gdb/gdbserver/linux-arm-tdesc.h
 delete mode 100644 gdb/gdbserver/linux-x86-tdesc-selftest.c
 create mode 100644 gdb/gdbsupport/agent.c
 create mode 100644 gdb/gdbsupport/agent.h
 rename gdb/{common => gdbsupport}/array-view.h (100%)
 rename gdb/{common => gdbsupport}/ax.def (100%)
 rename gdb/{common => gdbsupport}/break-common.h (100%)
 rename gdb/{common => gdbsupport}/btrace-common.c (100%)
 rename gdb/{common => gdbsupport}/btrace-common.h (100%)
 rename gdb/{common => gdbsupport}/buffer.c (100%)
 rename gdb/{common => gdbsupport}/buffer.h (100%)
 create mode 100644 gdb/gdbsupport/byte-vector.h
 rename gdb/{common => gdbsupport}/cleanups.c (100%)
 rename gdb/{common => gdbsupport}/cleanups.h (100%)
 create mode 100644 gdb/gdbsupport/common-debug.c
 rename gdb/{common => gdbsupport}/common-debug.h (100%)
 create mode 100644 gdb/gdbsupport/common-defs.h
 rename gdb/{common => gdbsupport}/common-exceptions.c (100%)
 rename gdb/{common => gdbsupport}/common-exceptions.h (100%)
 rename gdb/{common => gdbsupport}/common-gdbthread.h (100%)
 rename gdb/{common => gdbsupport}/common-inferior.h (100%)
 rename gdb/{common => gdbsupport}/common-regcache.c (100%)
 rename gdb/{common => gdbsupport}/common-regcache.h (100%)
 rename gdb/{common => gdbsupport}/common-types.h (100%)
 create mode 100644 gdb/gdbsupport/common-utils.c
 create mode 100644 gdb/gdbsupport/common-utils.h
 create mode 100644 gdb/gdbsupport/common.host
 rename gdb/{common => gdbsupport}/common.m4 (100%)
 create mode 100755 gdb/gdbsupport/create-version.sh
 create mode 100644 gdb/gdbsupport/def-vector.h
 rename gdb/{common => gdbsupport}/default-init-alloc.h (100%)
 rename gdb/{common => gdbsupport}/enum-flags.h (100%)
 create mode 100644 gdb/gdbsupport/environ.c
 rename gdb/{common => gdbsupport}/environ.h (100%)
 create mode 100644 gdb/gdbsupport/errors.c
 rename gdb/{common => gdbsupport}/errors.h (100%)
 rename gdb/{common => gdbsupport}/fileio.c (100%)
 rename gdb/{common => gdbsupport}/fileio.h (100%)
 create mode 100644 gdb/gdbsupport/filestuff.c
 rename gdb/{common => gdbsupport}/filestuff.h (100%)
 rename gdb/{common => gdbsupport}/filtered-iterator.h (100%)
 rename gdb/{common => gdbsupport}/format.c (100%)
 create mode 100644 gdb/gdbsupport/format.h
 create mode 100644 gdb/gdbsupport/forward-scope-exit.h
 rename gdb/{common => gdbsupport}/function-view.h (100%)
 rename gdb/{common => gdbsupport}/gdb_assert.h (100%)
 rename gdb/{common => gdbsupport}/gdb_locale.h (100%)
 create mode 100644 gdb/gdbsupport/gdb_optional.h
 rename gdb/{common => gdbsupport}/gdb_proc_service.h (100%)
 rename gdb/{common => gdbsupport}/gdb_ref_ptr.h (100%)
 rename gdb/{common => gdbsupport}/gdb_setjmp.h (100%)
 rename gdb/{common => gdbsupport}/gdb_signals.h (100%)
 rename gdb/{common => gdbsupport}/gdb_splay_tree.h (100%)
 rename gdb/{common => gdbsupport}/gdb_string_view.h (100%)
 rename gdb/{common => gdbsupport}/gdb_string_view.tcc (100%)
 rename gdb/{common => gdbsupport}/gdb_sys_time.h (100%)
 create mode 100644 gdb/gdbsupport/gdb_tilde_expand.c
 rename gdb/{common => gdbsupport}/gdb_tilde_expand.h (100%)
 rename gdb/{common => gdbsupport}/gdb_unique_ptr.h (100%)
 rename gdb/{common => gdbsupport}/gdb_unlinker.h (100%)
 rename gdb/{common => gdbsupport}/gdb_vecs.c (100%)
 rename gdb/{common => gdbsupport}/gdb_vecs.h (100%)
 rename gdb/{common => gdbsupport}/gdb_wait.h (100%)
 rename gdb/{common => gdbsupport}/hash_enum.h (100%)
 rename gdb/{common => gdbsupport}/host-defs.h (100%)
 create mode 100644 gdb/gdbsupport/job-control.c
 create mode 100644 gdb/gdbsupport/job-control.h
 rename gdb/{common => gdbsupport}/mingw-strerror.c (100%)
 create mode 100644 gdb/gdbsupport/netstuff.c
 rename gdb/{common => gdbsupport}/netstuff.h (100%)
 rename gdb/{common => gdbsupport}/new-op.c (100%)
 rename gdb/{common => gdbsupport}/next-iterator.h (100%)
 rename gdb/{common => gdbsupport}/observable.h (100%)
 rename gdb/{common => gdbsupport}/offset-type.h (100%)
 create mode 100644 gdb/gdbsupport/pathstuff.c
 create mode 100644 gdb/gdbsupport/pathstuff.h
 rename gdb/{common => gdbsupport}/poison.h (100%)
 rename gdb/{common => gdbsupport}/posix-strerror.c (100%)
 rename gdb/{common => gdbsupport}/preprocessor.h (100%)
 rename gdb/{common => gdbsupport}/print-utils.c (100%)
 rename gdb/{common => gdbsupport}/print-utils.h (100%)
 rename gdb/{common => gdbsupport}/ptid.c (100%)
 rename gdb/{common => gdbsupport}/ptid.h (100%)
 rename gdb/{common => gdbsupport}/refcounted-object.h (100%)
 rename gdb/{common => gdbsupport}/rsp-low.c (100%)
 create mode 100644 gdb/gdbsupport/rsp-low.h
 rename gdb/{common => gdbsupport}/run-time-clock.c (100%)
 rename gdb/{common => gdbsupport}/run-time-clock.h (100%)
 rename gdb/{common => gdbsupport}/safe-iterator.h (100%)
 create mode 100644 gdb/gdbsupport/scope-exit.h
 rename gdb/{common => gdbsupport}/scoped_fd.h (100%)
 create mode 100644 gdb/gdbsupport/scoped_mmap.c
 rename gdb/{common => gdbsupport}/scoped_mmap.h (100%)
 rename gdb/{common => gdbsupport}/scoped_restore.h (100%)
 rename gdb/{common => gdbsupport}/selftest.c (100%)
 rename gdb/{common => gdbsupport}/selftest.h (100%)
 rename gdb/{common => gdbsupport}/signals-state-save-restore.c (100%)
 rename gdb/{common => gdbsupport}/signals-state-save-restore.h (100%)
 rename gdb/{common => gdbsupport}/signals.c (100%)
 rename gdb/{common => gdbsupport}/symbol.h (100%)
 create mode 100644 gdb/gdbsupport/tdesc.c
 rename gdb/{common => gdbsupport}/tdesc.h (100%)
 rename gdb/{common => gdbsupport}/traits.h (100%)
 rename gdb/{common => gdbsupport}/underlying.h (100%)
 create mode 100644 gdb/gdbsupport/valid-expr.h
 rename gdb/{common => gdbsupport}/vec.c (100%)
 rename gdb/{common => gdbsupport}/vec.h (100%)
 rename gdb/{common => gdbsupport}/version.h (100%)
 rename gdb/{common => gdbsupport}/x86-xstate.h (100%)
 rename gdb/{common => gdbsupport}/xml-utils.c (100%)
 rename gdb/{common => gdbsupport}/xml-utils.h (100%)
 delete mode 100644 gdb/libmcheck.m4
 delete mode 100644 gdb/regformats/aarch64.dat
 delete mode 100644 gdb/regformats/i386/amd64-avx-avx512-linux.dat
 delete mode 100644 gdb/regformats/i386/amd64-avx-linux.dat
 delete mode 100644 gdb/regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat
 delete mode 100644 gdb/regformats/i386/amd64-avx-mpx-linux.dat
 delete mode 100644 gdb/regformats/i386/amd64-linux.dat
 delete mode 100644 gdb/regformats/i386/amd64-mpx-linux.dat
 delete mode 100644 gdb/regformats/i386/amd64.dat
 delete mode 100644 gdb/regformats/i386/i386-avx-avx512-linux.dat
 delete mode 100644 gdb/regformats/i386/i386-avx-linux.dat
 delete mode 100644 gdb/regformats/i386/i386-avx-mpx-avx512-pku-linux.dat
 delete mode 100644 gdb/regformats/i386/i386-avx-mpx-linux.dat
 delete mode 100644 gdb/regformats/i386/i386-linux.dat
 delete mode 100644 gdb/regformats/i386/i386-mmx-linux.dat
 delete mode 100644 gdb/regformats/i386/i386-mpx-linux.dat
 delete mode 100644 gdb/regformats/i386/i386.dat
 delete mode 100644 gdb/regformats/i386/x32-avx-avx512-linux.dat
 delete mode 100644 gdb/regformats/i386/x32-avx-linux.dat
 delete mode 100644 gdb/regformats/i386/x32-linux.dat
 create mode 100644 gdb/testsuite/gdb.ada/display_nested.exp
 create mode 100644 gdb/testsuite/gdb.ada/display_nested/foo.adb
 create mode 100644 gdb/testsuite/gdb.ada/display_nested/pack.adb
 create mode 100644 gdb/testsuite/gdb.ada/display_nested/pack.ads
 create mode 100644 gdb/testsuite/gdb.arch/aarch64-prologue.c
 create mode 100644 gdb/testsuite/gdb.arch/aarch64-prologue.exp
 create mode 100644 gdb/testsuite/gdb.arch/amd64-break-on-asm-line.S
 create mode 100644 gdb/testsuite/gdb.arch/amd64-break-on-asm-line.exp
 create mode 100644 gdb/testsuite/gdb.arch/arm-cmse-sgstubs.c
 create mode 100644 gdb/testsuite/gdb.arch/arm-cmse-sgstubs.exp
 create mode 100644 gdb/testsuite/gdb.arch/riscv-bp-infcall.c
 create mode 100644 gdb/testsuite/gdb.arch/riscv-bp-infcall.exp
 create mode 100644 gdb/testsuite/gdb.base/info-types.c
 create mode 100644 gdb/testsuite/gdb.base/info-types.exp
 create mode 100644 gdb/testsuite/gdb.base/info_sources.c
 create mode 100644 gdb/testsuite/gdb.base/info_sources.exp
 create mode 100644 gdb/testsuite/gdb.base/info_sources_base.c
 create mode 100644 gdb/testsuite/gdb.base/with.c
 create mode 100644 gdb/testsuite/gdb.base/with.exp
 create mode 100644 gdb/testsuite/gdb.cp/except-multi-location-lib.cc
 create mode 100644 gdb/testsuite/gdb.cp/except-multi-location-main.cc
 create mode 100644 gdb/testsuite/gdb.cp/except-multi-location.exp
 create mode 100644 gdb/testsuite/gdb.dwarf2/ada-linkage-name.c
 create mode 100644 gdb/testsuite/gdb.dwarf2/ada-linkage-name.exp
 create mode 100644 gdb/testsuite/gdb.dwarf2/dw2-ranges-func-hi-cold.c
 create mode 100644 gdb/testsuite/gdb.dwarf2/dw2-ranges-func-lo-cold.c
 delete mode 100644 gdb/testsuite/gdb.dwarf2/dw2-ranges-func.c
 create mode 100644 gdb/testsuite/gdb.testsuite/foreach_with_prefix.exp
 create mode 100644 gdb/testsuite/gdb.tui/basic.exp
 create mode 100644 gdb/testsuite/gdb.tui/empty.exp
 create mode 100644 gdb/testsuite/gdb.tui/list.exp
 create mode 100644 gdb/testsuite/gdb.tui/main.exp
 create mode 100644 gdb/testsuite/gdb.tui/regs.exp
 create mode 100644 gdb/testsuite/gdb.tui/resize.exp
 create mode 100644 gdb/testsuite/lib/tuiterm.exp
 delete mode 100644 gdb/tui/tui-windata.c
 delete mode 100644 gdb/tui/tui-windata.h
 create mode 100644 gdb/unittests/help-doc-selftests.c
 create mode 100644 ld/scripttempl/elf64bpf.sc
 create mode 100644 ld/testsuite/ld-arc/relax-local-pic.d
 create mode 100644 ld/testsuite/ld-arc/relax-local-pic.s
 create mode 100644 ld/testsuite/ld-arm/cmse_main.s
 create mode 100644 ld/testsuite/ld-arm/cmse_main_sec_debug.d
 create mode 100644 ld/testsuite/ld-arm/cmse_sec_debug.s
 create mode 100644 ld/testsuite/ld-elf/pr24819.d
 create mode 100644 ld/testsuite/ld-elf/pr24819.s
 create mode 100644 ld/testsuite/ld-elf/size-1.d
 create mode 100644 ld/testsuite/ld-elf/size-1.s
 create mode 100644 ld/testsuite/ld-elf/size-1.t
 create mode 100644 ld/testsuite/ld-elf/size-2.d
 create mode 100644 ld/testsuite/ld-elf/size-2.s
 create mode 100644 ld/testsuite/ld-elf/size-2.t
 create mode 100644 ld/testsuite/ld-mips-elf/hash1.d
 delete mode 100644 ld/testsuite/ld-mips-elf/hash1a.d
 delete mode 100644 ld/testsuite/ld-mips-elf/hash1b.d
 delete mode 100644 ld/testsuite/ld-mips-elf/hash1c.d
 create mode 100644 ld/testsuite/ld-mips-elf/hash2.d
 create mode 100644 ld/testsuite/ld-mips-elf/start.s
 create mode 100644 ld/testsuite/ld-powerpc/callstub-1.d
 create mode 100644 ld/testsuite/ld-powerpc/callstub-1.s
 create mode 100644 ld/testsuite/ld-powerpc/callstub-2.d
 create mode 100644 ld/testsuite/ld-powerpc/callstub-2.s
 create mode 100644 ld/testsuite/ld-powerpc/tlsgd.d
 create mode 100644 ld/testsuite/ld-powerpc/tlsgd.s
 create mode 100644 ld/testsuite/ld-powerpc/tlsie.d
 create mode 100644 ld/testsuite/ld-powerpc/tlsie.s
 delete mode 100644 ld/testsuite/ld-powerpc/tlsld32.d
 create mode 100644 ld/testsuite/ld-powerpc/tlsldopt.d
 copy ld/testsuite/ld-powerpc/{tlsld.s => tlsldopt.s} (100%)
 create mode 100644 ld/testsuite/ld-powerpc/tlsldopt32.d
 rename ld/testsuite/ld-powerpc/{tlsld32.s => tlsldopt32.s} (100%)
 create mode 100644 ld/testsuite/ld-riscv-elf/c-lui-2.d
 create mode 100644 ld/testsuite/ld-riscv-elf/c-lui-2.ld
 create mode 100644 ld/testsuite/ld-riscv-elf/c-lui-2.s
 delete mode 100644 ld/testsuite/ld-scripts/size-1.d
 delete mode 100644 ld/testsuite/ld-scripts/size-1.s
 delete mode 100644 ld/testsuite/ld-scripts/size-1.t
 delete mode 100644 ld/testsuite/ld-scripts/size-2.d
 delete mode 100644 ld/testsuite/ld-scripts/size-2.s
 delete mode 100644 ld/testsuite/ld-scripts/size-2.t
 delete mode 100644 ld/testsuite/ld-scripts/size.exp
 create mode 100644 ld/testsuite/ld-x86-64/pr24721-x32.d
 create mode 100644 ld/testsuite/ld-x86-64/pr24721.d
 create mode 100644 ld/testsuite/ld-x86-64/pr24721.map
 create mode 100644 ld/testsuite/ld-x86-64/pr24721a.s
 create mode 100644 ld/testsuite/ld-x86-64/pr24721b.s
 create mode 100644 ld/testsuite/ld-x86-64/pr24905-x32.d
 create mode 100644 ld/testsuite/ld-x86-64/pr24905.d
 create mode 100644 ld/testsuite/ld-x86-64/pr24905.s
 create mode 100644 ld/testsuite/ld-x86-64/pr24905.t
 create mode 100644 libctf/ctf-string.c
 create mode 100644 libiberty/rust-demangle.h
 create mode 100644 opcodes/i386-dis-evex-len.h
 create mode 100644 opcodes/i386-dis-evex-mod.h
 create mode 100644 opcodes/i386-dis-evex-prefix.h
 create mode 100644 opcodes/i386-dis-evex-reg.h
 create mode 100644 opcodes/i386-dis-evex-w.h
 create mode 100644 readline/.gitignore
 create mode 100644 readline/colors.c
 create mode 100644 readline/colors.h
 create mode 100644 readline/configure.ac
 delete mode 100644 readline/configure.in
 create mode 100644 readline/examples/hist_erasedups.c
 create mode 100644 readline/examples/hist_purgecmd.c
 create mode 100644 readline/examples/rl-callbacktest.c
 create mode 100644 readline/examples/rlbasic.c
 create mode 100644 readline/examples/rlkeymaps.c
 create mode 100644 readline/parse-colors.c
 create mode 100644 readline/parse-colors.h
 create mode 100644 readline/readline.pc.in

First 500 lines of diff:
diff --git a/ChangeLog b/ChangeLog
index c2d0274..76c121f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,95 @@
+2019-08-19  Tom Tromey  <tom@tromey.com>
+
+	* configure: Rebuild.
+	* configure.ac: Add --with-static-standard-libraries.
+
+2019-08-09  Nick Clifton  <nickc@redhat.com>
+
+	* libiberty: Sync with gcc.  Bring in:
+	2019-08-08  Martin Liska  <mliska@suse.cz>
+
+	PR bootstrap/91352
+	* lrealpath.c (is_valid_fd): New function.
+
+	2019-07-24  Martin Liska  <mliska@suse.cz>
+
+	PR lto/91228
+	* simple-object-elf.c (simple_object_elf_copy_lto_debug_sections):
+	Find first '\0' starting from gnu_lto + 1.
+
+	2019-07-12  Ren Kimura  <rkx1209dev@gmail.com>
+
+	* simple-object-elf.c (simple_object_elf_match): Check zero value shstrndx.
+	This fixes a Bug 90924.
+
+	2019-07-22  Martin Liska  <mliska@suse.cz>
+
+	* simple-object-elf.c (simple_object_elf_copy_lto_debug_sections):
+	Do not search for gnu_lto_v1, but search for first '\0'.
+
+	2019-07-18  Eduard-Mihai Burtescu  <eddyb@lyken.rs>
+
+	* cplus-dem.c: Include rust-demangle.h.
+	* rust-demangle.c: Include rust-demangle.h.
+	* rust-demangle.h: New file.
+
+	2019-05-31  Michael Forney  <mforney@mforney.org>
+
+	* cp-demangle.c: Don't define CP_DYNAMIC_ARRAYS if __STDC_NO_VLA__
+	is non-zero.
+
+	2019-04-30  Ben L  <bobsayshilol@live.co.uk>
+
+	* d-demangle.c (dlang_parse_assocarray): Correctly handle error result.
+	* testsuite/d-demangle-expected: Add testcase.
+
+	* d-demangle.c (dlang_parse_tuple): Correctly handle error result.
+	* testsuite/d-demangle-expected: Add testcase.
+
+	* d-demangle.c (dlang_parse_structlit): Correctly handle error result.
+	* testsuite/d-demangle-expected: Add testcase.
+
+	* d-demangle.c (dlang_parse_arrayliteral): Correctly handle error result.
+	* testsuite/d-demangle-expected: Add testcase.
+
+	* d-demangle.c (dlang_parse_integer): Fix stack underflow.
+	* testsuite/d-demangle-expected: Add testcase.
+
+	* cp-demangle (d_print_comp_inner): Guard against a NULL 'typed_name'.
+	* testsuite/demangle-expected: Add testcase.
+
+	* cp-demangle.c (d_encoding): Guard against NULL return values from
+	d_right (dc).
+	* testsuite/demangle-expected: Add testcase.
+
+	2019-04-29  Ben L  <bobsayshilol@live.co.uk>
+
+	* cp-demangle.c (d_expression_1): Don't peek ahead unless the current
+	char is valid.
+	* testsuite/demangle-expected: Add testcase.
+
+	2019-04-10  Nick Clifton  <nickc@redhat.com>
+
+	PR 89394
+	* cp-demangle.c (cplus_demangle_fill_name): Reject negative
+	lengths.
+	(d_count_templates_scopes): Replace num_templates and num_scopes
+	parameters with a struct d_print_info pointer parameter.  Adjust
+	body of the function accordingly.  Add recursion counter and check
+	that the recursion limit is not reached.
+	(d_print_init): Pass dpi parameter to d_count_templates_scopes.
+	Reset recursion counter afterwards, unless the recursion limit was
+	reached.
+
+2019-07-13  Joel Brobecker  <brobecker@adacore.com>
+
+	* src-release (getver): If $tool/gdbsupport/create-version.sh
+	exists, use that to determine the version number.
+
+2019-06-21  Andreas Schwab  <schwab@linux-m68k.org>
+
+	* src-release.sh (GDB_SUPPORT_DIRS): Add gnulib.
+
 2019-06-14  Tom Tromey  <tom@tromey.com>
 
 	* MAINTAINERS: Add gnulib.
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index f40f6ed..97d3726 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,523 @@
+2019-08-20  Dennis Zhang  <dennis.zhang@arm.com>
+
+	* cpu-aarch64.c: New entries for Cortex-A34, Cortex-A65,
+	 Cortex-A77, cortex-A65AE, and Cortex-A76AE.
+
+2019-08-20  Tamar Christina  <tamar.christina@arm.com>
+
+	* elf32-arm.c (elf32_thumb2_plt_entry, elf32_arm_plt_thumb_stub,
+	elf32_arm_stub_long_branch_v4t_thumb_thumb,
+	elf32_arm_stub_long_branch_v4t_thumb_arm,
+	elf32_arm_stub_short_branch_v4t_thumb_arm,
+	elf32_arm_stub_long_branch_v4t_thumb_arm_pic,
+	elf32_arm_stub_long_branch_v4t_thumb_thumb_pic,
+	elf32_arm_stub_long_branch_v4t_thumb_tls_pic): Change nop to branch to
+	previous instruction.
+
+2019-08-19  Tom Tromey  <tromey@adacore.com>
+
+	* dwarf2.c (_bfd_dwarf2_find_symbol_bias): Create hash table
+	holding symbols.
+
+2019-08-19  Alan Modra  <amodra@gmail.com>
+
+	* elf64-ppc.c (struct ppc64_elf_obj_tdata): Rename has_gotrel
+	to has_optrel.
+	(struct _ppc64_elf_section_data): Likewise.
+	(ppc64_elf_check_relocs): Set has_optrel for more relocs.
+	(ppc64_elf_edit_toc): Do ha/lo insn checks in GOT loop rather
+	than TOC loop.  Check PLT16 insns too.
+
+2019-08-16  H.J. Lu  <hongjiu.lu@intel.com>
+
+	PR ld/24905
+	* elf64-x86-64.c (elf_x86_64_check_relocs): Move PIC check for
+	PC-relative relocations back to ...
+	(elf_x86_64_relocate_section): Here.
+
+2019-08-16  Martin Liska  <mliska@suse.cz>
+
+	PR ld/24912
+	* elflink.c: Report error only for not relocatable.
+	* linker.c (_bfd_generic_link_add_one_symbol): Do not handle
+	here lto_slim_object as it's handled in caller.
+
+2019-08-16  Alan Modra  <amodra@gmail.com>
+
+	* elf32-ppc.c (ppc_elf_relocate_section): Optimize unaligned relocs.
+
+2019-08-15  Jim Wilson  <jimw@sifive.com>
+
+	* elfnn-riscv.c (perform_relocation) <R_RISCV_RVC_LUI>: If
+	RISCV_CONST_HIGH_PART (value) is zero, then convert c.lui instruction
+	to c.li instruction, and use ENCODE_RVC_IMM to set value.
+
+2019-08-15  Tom Tromey  <tromey@adacore.com>
+
+	* dwarf2.c (scan_unit_for_symbols): Check for end of CU, not end
+	of section.
+
+2019-08-14  Alan Modra  <amodra@gmail.com>
+
+	PR 24623
+	* dwarf2.c (stash_comp_unit): New function, extracted from..
+	(_bfd_dwarf2_find_nearest_line): ..here.
+	(find_abstract_instance): Parse comp units and decode line info
+	as needed.
+
+2019-08-14  Alan Modra  <amodra@gmail.com>
+
+	* dwarf2.c (comp_unit_maybe_decode_line_info): Declare.
+	(comp_unit_find_nearest_line): Use it here..
+	(_bfd_dwarf2_find_symbol_bias): ..and here.
+
+2019-08-14  Alan Modra  <amodra@gmail.com>
+
+	* dwarf2.c (_bfd_dwarf2_find_nearest_line): Remove addr_size parameter.
+	* libbfd-in.h  (_bfd_dwarf2_find_nearest_line): Update prototype.
+	* coffgen.c (coff_find_nearest_line_with_names): Adjust
+	_bfd_dwarf2_find_nearest_line calls.
+	* elf.c (_bfd_elf_find_nearest_line, _bfd_elf_find_line): Likewise.
+	* elf32-arm.c (elf32_arm_find_nearest_line): Likewise.
+	* elf64-alpha.c (elf64_alpha_find_nearest_line): Likewise.
+	* elfnn-aarch64.c (elfNN_aarch64_find_nearest_line): Likewise.
+	* elfxx-mips.c (_bfd_mips_elf_find_nearest_line): Likewise.
+	* mach-o.c (bfd_mach_o_find_nearest_line): Likewise.
+	* libbfd.h: Regenerate.
+
+2019-08-09  Mihailo Stojanovic  <mihailo.stojanovic@rt-rk.com>
+
+	* elf-bfd.h (struct elf_backend_data): New members.
+	* elflink.c (_bfd_elf_link_create_dynamic_sections): Create
+	.gnu.hash section if necessary.
+	(struct collect_gnu_hash_codes): New member.
+	(elf_gnu_hash_process_symidx): New function name.
+	(elf_renumber_gnu_hash_syms): Ignore local and undefined
+	symbols. Record xlat location for every symbol which should have
+	a .MIPS.xhash entry.
+	(bfd_elf_size_dynamic_sections): Add DT_GNU_HASH dynamic tag to
+	dynamic section if necessary.
+	(GNU_HASH_SECTION_NAME): New define.
+	(bfd_elf_size_dynsym_hash_dynstr): Get .MIPS.xhash section.
+	Update the section size info.
+	* elfxx-mips.c (struct mips_elf_hash_sort_data): New members.
+	(struct mips_elf_link_hash_entry): New member.
+	(mips_elf_link_hash_newfunc): Initialize .MIPS.xhash translation
+	table location.
+	(mips_elf_sort_hash_table): Initialize the pointer to the
+	.MIPS.xhash section.
+	(mips_elf_sort_hash_table_f): Populate the .MIPS.xhash
+	translation table entry with the symbol dynindx.
+	(_bfd_mips_elf_section_from_shdr): Add SHT_MIPS_XHASH.
+	(_bfd_mips_elf_fake_sections): Initialize .MIPS.xhash section
+	info.
+	(_bfd_mips_elf_create_dynamic_sections): Create .MIPS.xhash
+	section.
+	(_bfd_mips_elf_size_dynamic_sections): Add DT_MIPS_XHASH tag to
+	dynamic section.
+	(_bfd_mips_elf_finish_synamic_sections): Add DT_MIPS_XHASH.
+	(_bfd_mips_elf_final_write_processing): Set .MIPS.xhash section
+	sh_link info.
+	(_bfd_mips_elf_get_target_dtag): Get DT_MIPS_XHASH tag.
+	(MIPS_LIBC_ABI_XHASH): New ABI version enum value.
+	(_bfd_mips_post_process_headers): Mark the ABI version as
+	MIPS_LIBC_ABI_XHASH if there exists a .MIPS.xhash section,
+	but not a .hash section.
+	(_bfd_mips_elf_record_xhash_symbol): New function. Record a
+	position in the translation table, associated with the hash
+	entry.
+	* elfxx-mips.h (literal_reloc_p): Define
+	elf_backend_record_xhash_symbol backend hook.
+	* elfxx-target.h: Initialize elf_backend_record_xhash_symbol
+	backend hook.
+
+2019-08-07  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+	* elf64-bpf.c (bpf_elf_relocate_section): New function.
+	(bpf_elf_insn_disp_reloc): Delete function.
+	(elf_backend_relocate_section): Define.
+
+2019-08-07  Alan Modra  <amodra@gmail.com>
+
+	PR 24644
+	* archive64.c (_bfd_archive_64_bit_slurp_armap): Properly check
+	for overflow in expressions involving nsymz.
+
+2019-08-01  Ilia Diachkov  <ilia.diachkov@optimitech.com>
+
+	* elfnn-riscv.c (_bfd_riscv_relax_lui): Set lui relax safety area to
+	two pages in relro presence.
+
+2019-08-01  Max Filippov  <jcmvbkbc@gmail.com>
+
+	* elf32-xtensa.c (insn_num_slots, get_rsr_lend_opcode)
+	(get_wsr_lbeg_opcode): New functions.
+	(check_loop_aligned): Detect relaxed loops and adjust loop_len
+	and insn_len for the first actual instruction of the loop.
+
+2019-07-30  Alan Modra  <amodra@gmail.com>
+
+	PR 24768
+	* bfd.c (struct bfd): Add lto_slim_object flag.
+	* bfd-in2.h: Regenerate.
+
+2019-07-29  Martin Liska  <mliska@suse.cz>
+
+	PR 24768
+	* archive.c (_bfd_compute_and_write_armap): Come up with
+	report_plugin_err variable.
+	* bfd-in2.h (struct bfd): Add lto_slim_object flag.
+	* elf.c (struct lto_section): New.
+	(_bfd_elf_make_section_from_shdr): Parse content of
+	.gnu_lto_.lto section.
+	* elflink.c: Report error for a missing LTO plugin.
+	* linker.c (_bfd_generic_link_add_one_symbol): Likewise.
+
+2019-07-28  Alan Modra  <amodra@gmail.com>
+
+	PR 24857
+	PR 24339
+	* elflink.c (elf_link_add_object_symbols): Report an informative
+	error on finding local symbols with index equal or greater than
+	symbol table sh_info.  Correct comment.  Allow such symbols in
+	dynamic objects.  Abort on NULL section for symbol.
+
+2019-07-26  Alan Modra  <amodra@gmail.com>
+
+	* elf-bfd.h (struct output_elf_obj_tdata): Delete "linker" field.
+	(elf_linker): Don't define.
+	* elflink.c (bfd_elf_final_link): Don't set elf_linker.
+
+2019-07-25  YunQiang Su  <syq@debian.org>
+
+	PR 24832
+	* elfxx-mips.c (mips_set_isa_flags): Default to MIPS 3 for 64-bit
+	mips inputs.
+
+2019-07-24  Claudiu Zissulescu  <claziss@synopsys.com>
+
+	* elf32-arc.c (bfd_get_32_me): Add a small description, fix
+	formating.
+	(reloc_type_to_name): Fix formating.
+	(arc_elf_object_p): Likewise.
+	(debug_arc_reloc): Likewise.
+	(arc_do_relocation): Likewise.
+
+2019-07-24  Claudiu Zissulescu  <claziss@synopsys.com>
+
+	* elf32-arc.c (bfd_get_32_me): New function.
+	(bfd_put_32_me): Likewise.
+	(arc_elf_relax_section): Likewise.
+	(bfd_elf32_bfd_relax_section): Define.
+
+2019-07-24  Alan Modra  <amodra@gmail.com>
+
+	* elf-bfd.h (struct elf_backend_data): Return bfd_boolean from
+	elf_backend_final_write_processing, don't pass linker arg.
+	(_bfd_elf_final_write_processing): Update prototype.
+	* elf.c (_bfd_elf_write_object_contents): Adjust call.
+	(_bfd_elf_final_write_processing): Return error on incompatible
+	OSABI and has_gnu_osabi.  Remove linker arg.
+	* elf-nacl.h (nacl_final_write_processing): Update prototype.
+	* elf-vxworks.h (elf_vxworks_final_write_processing): Likewise.
+	* elfxx-mips.h (_bfd_mips_final_write_processing): Likewise.
+	(_bfd_mips_elf_final_write_processing): Likewise.
+	* elf-hppa.h (elf_hppa_final_write_processing): Return status
+	and remove linker arg.
+	* elf-m10300.c (_bfd_mn10300_elf_final_write_processing): Likewise.
+	* elf-nacl.c (nacl_final_write_processing): Likewise.
+	* elf-vxworks.c (elf_vxworks_final_write_processing): Likewise.
+	* elf32-arc.c (arc_elf_final_write_processing): Likewise.
+	* elf32-arm.c (arm_final_write_processing): Likewise.
+	(elf32_arm_final_write_processing): Likewise.
+	(elf32_arm_nacl_final_write_processing): Likewise.
+	(elf32_arm_vxworks_final_write_processing): Likewise.
+	* elf32-avr.c (bfd_elf_avr_final_write_processing): Likewise.
+	* elf32-bfin.c (elf32_bfin_final_write_processing): Likewise.
+	* elf32-cr16.c (_bfd_cr16_elf_final_write_processing): Likewise.
+	* elf32-cris.c (cris_elf_final_write_processing): Likewise.
+	* elf32-h8300.c (elf32_h8_final_write_processing): Likewise.
+	* elf32-lm32.c (lm32_elf_final_write_processing): Likewise.
+	* elf32-m32r.c (m32r_elf_final_write_processing): Likewise.
+	* elf32-m68k.c (elf_m68k_final_write_processing): Likewise.
+	* elf32-mips.c (mips_vxworks_final_write_processing): Likewise.
+	* elf32-msp430.c (bfd_elf_msp430_final_write_processing): Likewise.
+	* elf32-nds32.c (nds32_elf_final_write_processing): Likewise.
+	* elf32-or1k.c (or1k_elf_final_write_processing): Likewise.
+	* elf32-pj.c (pj_elf_final_write_processing): Likewise.
+	* elf32-ppc.c (ppc_final_write_processing): Likewise.
+	(ppc_elf_final_write_processing): Likewise.
+	(ppc_elf_vxworks_final_write_processing): Likewise.
+	* elf32-sparc.c (sparc_final_write_processing): Likewise.
+	(elf32_sparc_final_write_processing): Likewise.
+	(elf32_sparc_vxworks_final_write_processing): Likewise.
+	* elf32-v850.c (v850_elf_final_write_processing): Likewise.
+	* elf32-xc16x.c (elf32_xc16x_final_write_processing): Likewise.
+	* elf32-xtensa.c (elf_xtensa_final_write_processing): Likewise.
+	* elf64-ia64-vms.c (elf64_vms_final_write_processing): Likewise.
+	* elfnn-ia64.c (elfNN_ia64_final_write_processing): Likewise.
+	* elfxx-mips.c (_bfd_mips_final_write_processing): Likewise.
+	(_bfd_mips_elf_final_write_processing): Likewise.
+
+2019-07-24  Alan Modra  <amodra@gmail.com>
+
+	* elf-vxworks.c (elf_vxworks_final_write_processing): Don't return
+	early.
+	* elf32-arc.c (arc_elf_final_write_processing): Likewise.
+	* elf32-xtensa.c (elf_xtensa_final_write_processing): Likewise.
+
+2019-07-24  Alan Modra  <amodra@gmail.com>
+
+	* elf32-visium.c (visium_elf_post_process_headers): Don't set
+	EI_OSABI header byte here.
+	(ELF_OSABI): Define.
+
+2019-07-23  Alan Modra  <amodra@gmail.com>
+
+	* elf-bfd.h (enum elf_gnu_osabi): Add elf_gnu_osabi_mbind.
+	* elf.c (_bfd_elf_make_section_from_shdr): Set elf_gnu_osabi_mbind.
+	(get_program_header_size): Formatting.  Only test SH_GNU_MBIND
+	when elf_gnu_osabi_mbind is set.
+	(_bfd_elf_map_sections_to_segments): Likewise.
+	(_bfd_elf_init_private_section_data): Likewise.
+	(_bfd_elf_final_write_processing): Update comment.
+	* elf64-hppa.c (elf64_hppa_special_sections): Move .tbss entry.
+	(elf_backend_special_sections): Define without .tbss for linux.
+
+2019-07-23  Alan Modra  <amodra@gmail.com>
+
+	* elf-bfd.h (enum elf_gnu_osabi): Rename from elf_gnu_symbols.
+	Remove none, any, all enums.
+	(struct elf_obj_tdata): Rename has_gnu_symbols field to has_gnu_osabi.
+	(_bfd_elf_final_write_processing): Declare.
+	* elf.c (_bfd_elf_write_object_contents): Unconditionally call
+	elf_backend_final_write_processing.
+	(_bfd_elf_post_process_headers): Move body of function to..
+	(_bfd_elf_final_write_processing): ..here, but set EI_OSABI byte
+	only when not already set.  Adjust for rename.
+	* elfxx-target.h (elf_backend_final_write_processing): Default to
+	_bfd_elf_final_write_processing.
+	* elf-hppa.h (elf_hppa_final_write_processing): Call
+	_bfd_elf_final_write_processing.
+	* elf-m10300.c (_bfd_mn10300_elf_final_write_processing): Likewise.
+	* elf-nacl.c (nacl_final_write_processing): Likewise.
+	* elf-vxworks.c (elf_vxworks_final_write_processing): Likewise.
+	* elf32-arc.c (arc_elf_final_write_processing): Likewise.
+	* elf32-avr.c (bfd_elf_avr_final_write_processing): Likewise.
+	* elf32-bfin.c (elf32_bfin_final_write_processing): Likewise.
+	* elf32-cr16.c (_bfd_cr16_elf_final_write_processing): Likewise.
+	* elf32-cris.c (cris_elf_final_write_processing): Likewise.
+	* elf32-h8300.c (elf32_h8_final_write_processing): Likewise.
+	* elf32-lm32.c (lm32_elf_final_write_processing): Likewise.
+	* elf32-m32r.c (m32r_elf_final_write_processing): Likewise.
+	* elf32-m68k.c (elf_m68k_final_write_processing): Likewise.
+	* elf32-msp430.c (bfd_elf_msp430_final_write_processing): Likewise.
+	* elf32-nds32.c (nds32_elf_final_write_processing): Likewise.
+	* elf32-or1k.c (or1k_elf_final_write_processing): Likewise.
+	* elf32-pj.c (pj_elf_final_write_processing): Likewise.
+	* elf32-v850.c (v850_elf_final_write_processing): Likewise.
+	* elf32-xc16x.c (elf32_xc16x_final_write_processing): Likewise.
+	* elf32-xtensa.c (elf_xtensa_final_write_processing): Likewise.
+	* elf64-ia64-vms.c (elf64_vms_final_write_processing): Likewise.
+	* elfnn-ia64.c (elfNN_ia64_final_write_processing): Likewise.
+	* elf32-arm.c (arm_final_write_processing): Split out from..
+	(elf32_arm_final_write_processing): ..here.  Call
+	_bfd_elf_final_write_processing.
+	(elf32_arm_nacl_final_write_processing): Adjust.
+	* elfxx-mips.c (_bfd_mips_final_write_processing): Split out from..
+	(_bfd_mips_elf_final_write_processing): ..here.  Call
+	_bfd_elf_final_write_processing.
+	* elfxx-mips.h (_bfd_mips_final_write_processing): Declare.
+	* elf32-mips.c (mips_vxworks_final_write_processing): Adjust.
+	* elf32-ppc.c (ppc_final_write_processing): Split out from..
+	(ppc_elf_final_write_processing): ..here.  Call
+	_bfd_elf_final_write_processing.
+	(ppc_elf_vxworks_final_write_processing): Adjust.
+	* elf32-sparc.c (sparc_final_write_processing): Split out from..
+	(elf32_sparc_final_write_processing): ..here.  Call
+	_bfd_elf_final_write_processing.
+	(elf32_sparc_vxworks_final_write_processing): Adjust.
+	* elf32-d10v.c (elf_backend_final_write_processing): Don't define.
+	* elf32-d30v.c (elf_backend_final_write_processing): Don't define.
+	* elf32-m68hc11.c (elf_backend_final_write_processing): Don't define.
+	* elf32-m68hc12.c (elf_backend_final_write_processing): Don't define.
+	* elf32-s12z.c (elf_backend_final_write_processing): Don't define.
+	* elf32-i386.c (elf_i386_check_relocs): Don't set has_gnu_symbols.
+	* elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
+	* elflink.c (elf_link_add_object_symbols): Likewise.
+	(elf_link_output_symstrtab): Set has_gnu_osabi for symbols here
+	instead.
+
+2019-07-23  Omar Majid  <omajid@redhat.com>
+
+	* coffcode.h (coff_set_arch_mach_hook): Handle I386_APPLE_MAGIC,
+	I386_FREEBSD_MAGIC, I386_LINUX_MAGIC, I386_NETBSD_MAGIC,
+	AMD64_APPLE_MAGIC, AMD64_FREEBSD_MAGIC, AMD64_LINUX_MAGIC,
+	AMD64_NETBSD_MAGIC.
+	* peXXigen.c: Add comment about source of .NET magic numbers.
+
+2019-07-19  Alan Modra  <amodra@gmail.com>
+
+	* reloc.c (BFD_RELOC_PPC64_TPREL34, BFD_RELOC_PPC64_DTPREL34),
+	(BFD_RELOC_PPC64_GOT_TLSGD34, BFD_RELOC_PPC64_GOT_TLSLD34),
+	(BFD_RELOC_PPC64_GOT_TPREL34, BFD_RELOC_PPC64_GOT_DTPREL34),
+	(BFD_RELOC_PPC64_TLS_PCREL): New pcrel tls relocs.
+	* elf64-ppc.c (ppc64_elf_howto_raw): Add howtos for pcrel tls relocs.
+	(ppc64_elf_reloc_type_lookup): Translate pcrel tls relocs.
+	(must_be_dyn_reloc, dec_dynrel_count): Add R_PPC64_TPREL64.
+	(ppc64_elf_check_relocs): Support pcrel tls relocs.
+	(ppc64_elf_tls_optimize, ppc64_elf_relocate_section): Likewise.
+	* bfd-in2.h: Regenerate.
+	* libbfd.h: Regenerate.
+
+2019-07-18  Alan Modra  <amodra@gmail.com>
+
+	* elf64-ppc.c (ppc64_elf_relocate_section): Don't bother selecting
+	a TLS section symbol for edited relocs.  Tighten TLS symbol/reloc
+	match test.
+
+2019-07-18  Alan Modra  <amodra@gmail.com>
+
+	* elf64-ppc.c (TLS_EXPLICIT): Define as 256.
+	(ppc64_elf_check_relocs): Don't store TLS_EXPLICIT even if char
+	is more than 8 bits.
+	(ppc64_elf_tls_optimize): Likewise.  Make tls_set, tls_clear, and
+	tls_type vars unsigned int.
+	(ppc64_elf_relocate_section): Use r_type rather than TLS_EXPLICIT
+	to select r_type edit.
+
+2019-07-18  Alan Modra  <amodra@gmail.com>
+
+	* elf32-ppc.c (TLS_GDIE): Rename from TLS_TPRELGD throughout file.
+	Correct comment.
+	* elf64-ppc.c (TLS_GDIE): Likewise.
+
+2019-07-18  Alan Modra  <amodra@gmail.com>


hooks/post-receive
--
Repository for Project Archer.


^ permalink raw reply	[flat|nested] 3+ messages in thread

* [SCM]  scox/strace: Merge branch 'master' into scox/strace
@ 2019-06-20 20:18 scox
  0 siblings, 0 replies; 3+ messages in thread
From: scox @ 2019-06-20 20:18 UTC (permalink / raw)
  To: archer-commits

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1200692 bytes --]

The branch, scox/strace has been updated
       via  625ae1b6b5d4a9f805d97640ef99c897279324f7 (commit)
       via  680e1beed31da40080f61a35f6ccd626de818056 (commit)
       via  dcf3792354ddcd6e10e59e32060e34b27246e7da (commit)
       via  6f5601c4d0ad43254244f1b624900cdd5afd02ba (commit)
       via  4a4e7361d67cd9262be1413300795eede564f4cb (commit)
       via  312413cb844dcce24b0c30254f5789b77a54b0fc (commit)
       via  494986d596a977e1d24f9f068696f5b3e993ebf7 (commit)
       via  0ed4690a67e2c4703d9088312de652d0d5f1aaaf (commit)
       via  3360b6e7963e3c579e50078e78d226ea63e2960f (commit)
       via  4ed4690fc21b1d052092299f820f48694f3ef3eb (commit)
       via  d20ed5fd574ce1b72543c2963fa53946eb2225de (commit)
       via  86e04673b48d5f8121f28b7958cc5a0d9dd01132 (commit)
       via  5bb4fed3d48e4637015a89e40672c938c7f61e72 (commit)
       via  310b3441a07cb07713a8065a39032504e098047b (commit)
       via  ba9777bef059df0926ad5dd6813d5785cb652ccf (commit)
       via  6e1c90b7f5d60aedc547dd84873d1c9291eefcdc (commit)
       via  39c05d9435893ed0b51c4b5c8e95fe977b983921 (commit)
       via  08bb0061ba5c8826c1ec4d273d539cb32b5c217e (commit)
       via  2b9f6e89d67b342593734d14f328625848fa5156 (commit)
       via  431b3eadc4f842231d404e7e995ae5c1dbd28414 (commit)
       via  d04b44a16cdfde95de487bcedd541c6e71d82676 (commit)
       via  bf5142e7fef4e2eca5d98cf805dbadc737118c1e (commit)
       via  c4973306879b6079bdfc997474a2cbbd89f49bd2 (commit)
       via  395f9c911460b3e868c0b700e831c7f92746fad7 (commit)
       via  cafb34387d063fa47bc2cdb33fc3fe2f13e6cec0 (commit)
       via  93cb9841d68263174a600dc70af742a8e2eabfc6 (commit)
       via  730ead81dfffc181f79a4b79ba8abf6850e63596 (commit)
       via  e79be6e5f33d52b2bbb6aafdc61659a4bbb55849 (commit)
       via  399aaebd1a5e9e3971758396bd0c5c3ec5ae2386 (commit)
       via  6ac6a19371b72f848626666af5301612b76e800e (commit)
       via  584a927c5ad0d18e9995a0049066b6c503bb7482 (commit)
       via  30056ea04ae3ecd828e2a06e12e6f174ae6659c9 (commit)
       via  ec8e2b6d3051f0b4b2a8eee9917898e95046c62f (commit)
       via  0d3abd8cc936360f8c46502135edd2e646473438 (commit)
       via  00df30ae1ea6db8f3693cad8a499f55f1d66e913 (commit)
       via  afda45a206f83389782a400f86668714400a1cb7 (commit)
       via  09e4c4e1f1732ed978db4b8c75877bf8a8097ae9 (commit)
       via  49455d8bbd8eac5b7ce7e26c691af27998647584 (commit)
       via  0735b091aba72d4b35aebb671a02c5cb4a837fe9 (commit)
       via  52ce35e2894e55cea94011dda6443be51e154f37 (commit)
       via  73cc72729a184f00bf6fc4d74684a8516ba6b683 (commit)
       via  f568655424ad268c8c5df3f56e4e19a86b16623d (commit)
       via  a0c1ffedcf1988bc13fc5b6d57d3b74a17b60299 (commit)
       via  7c39e397aafaea64812f2611b061bdd50f30dce4 (commit)
       via  f411722cbc18820e5266ec4c2aadd2269eb15447 (commit)
       via  4268ec187d401b9b132afa1a13c73e0026a53c5d (commit)
       via  abdb711e0855f0597a96db0486b598144b788212 (commit)
       via  9a9e394b05a841bdd9163f280d7ef19cc65634d6 (commit)
       via  e30d1fa1bfb1ff2e225cfac9226c357f2cf07a26 (commit)
       via  bcc5a6eb668e560a0020114b6dc261ef494981ba (commit)
       via  3a3a077c4acaed1ab231a376ff9faf6b71b7a0f1 (commit)
       via  e3fa7860f44b85bc89b09998546fcb09624c3c68 (commit)
       via  d4b87b1eb6439e1cd01d1a9f90dcf19428db4b17 (commit)
       via  f8164777cde276244d015a2411f68f63a4bd28aa (commit)
       via  4c04873103043dc9a1c8d6cdeea1b9b1f545f375 (commit)
       via  57a63d27dcc8c7620f2168b370b649c7458c687e (commit)
       via  3c83b496d4ee7d732b6844c585c3ea9d83ca0f4c (commit)
       via  b4f9e0034660e15d233627f9c5a732ab023b7daf (commit)
       via  f1cc84f59441d59827748e47a5971a12ed1ac283 (commit)
       via  688cea90bc0af3a0188695a25f5c4e8db4ef763b (commit)
       via  7ccbb4437a29896955a6ff3b0406b1cc2a7f6fe2 (commit)
       via  66eb1ed3882aa3c54daa2fe24b7479b5ee0538f2 (commit)
       via  e41d1c49a12aab7db33d7ad66d62f7413b8f0480 (commit)
       via  3345721af145007661f4e7e7f4300470095ba622 (commit)
       via  6206060d9be8da3e701fe0307c6c01390e2b4ae2 (commit)
       via  6665660a411ead049daa85cac5c629d637e22044 (commit)
       via  f7e13587eaf1e2d433e21ac0a9e413a98e53652d (commit)
       via  5d7071341dd3c01d38fc01398ef8b23b1bd3783c (commit)
       via  272d4594343349a713f7d8967d90ae2413ecbc30 (commit)
       via  e2a689da55d3feb7b79a141f69c4049112f59c91 (commit)
       via  90a1ef8762a57f3f57007db2186099c026152034 (commit)
       via  d4c16835cad70bd8c04ff30d5d6f40ac65e7f7e1 (commit)
       via  2daf894ed0baf72dd3f422b7a71630145568db30 (commit)
       via  e6ed716cd5514c08b9d7c469d185b1aa177dbc22 (commit)
       via  7d8062de98203eeec70d4439ab460b9ef50a2e0f (commit)
       via  9d0faba9f52b898f0be539bc4d6fbd084772259d (commit)
       via  2c722807a752ce468b04fcf6d29857f377beeaf5 (commit)
       via  dee7b4c83a636471ee321fb4fe1c3be0a16a9ea7 (commit)
       via  dca0f6c0a4bafff9039d8bdb2a7efec9f70ce82f (commit)
       via  ccf46844d3e5ad4af9f3a10cc0599c939138d566 (commit)
       via  597bf39df91c9a2e27cf1966dd4c942ac645ae33 (commit)
       via  48c410fb70fe09c036e27092880db687e5c2fb0b (commit)
       via  93bcb04349eb500781747a542ececc7a8ba3bd95 (commit)
       via  cbba3ecd36f0f861e4e810fbd5415c9759080cdc (commit)
       via  b9a3f8429b012b753e30a4222bd8e4cbba019fad (commit)
       via  3844e605e61777555aed09ab8ce88db2da95bc0b (commit)
       via  00b56dbe7016bc33f882525a47faab943fdeda9a (commit)
       via  e4c4ac46e8e7ef92311181f85b193af369897151 (commit)
       via  a2e4218f237dd1555249555f8be4165aa8e56b6a (commit)
       via  eb212c84a12bd0adb29792737ab2423d72c182f7 (commit)
       via  d3ad6278d6b977cfeb3156b65862224899549c76 (commit)
       via  6ce26ac7c381c78858b9a7bac344b5cd04bfb03e (commit)
       via  a0e44ef56c4d1a20785fe3bcb368638d1af148cf (commit)
       via  6fbc939cfdbdf02f205c20925583738b0f835e62 (commit)
       via  62e0492f5723dd3db5e5a48a3a0ac161d7ba2701 (commit)
       via  9abca70219e8e15991b9a4d3034672c9f720234f (commit)
       via  c0d38b0ec6756de6a0b68477e47bb8619eef2262 (commit)
       via  540e617049db92b4371fa90cadd4cd994508f86d (commit)
       via  0529f3fe5c33894387df407b2f33879da7778e08 (commit)
       via  d106773eaca95698838b930a7b512469a38a6771 (commit)
       via  a5fd13a91534b1c79a4b61995894a5bb4f08d3b0 (commit)
       via  2057d69dccf36206be3bec5d48ff165621e9a06c (commit)
       via  08f10e02be1bb218d6edcde87b9f59dd11b40a78 (commit)
       via  1c7fe9515dc1e8aa6378075ef56a646c1efdf7f5 (commit)
       via  c93dbb25ac4dba2e959bfd30684a36773298c853 (commit)
       via  89549d7f4d27b63c4aaab4456e21dab1ee96a40a (commit)
       via  fea82da0fe15137fda0056c0f0b92b6e70997ea8 (commit)
       via  86108c1311d82af6707d38e6d3dae1ec0aa92ec9 (commit)
       via  8c2e74f18120dd2f2da7d653466c79dea6841b5e (commit)
       via  b49851c8e2bbb38e0e0f977e3fcc7abe3ad157b5 (commit)
       via  8bbce0c70250334f436b4e52983f3538d3bdb9ce (commit)
       via  a7067863418451b27130bb4300ac1890ff806c12 (commit)
       via  9ab084121f50a6858b7298de6c5326cee3687c43 (commit)
       via  f19e22e9226444ee566b5b5633c0a48a4f981eda (commit)
       via  e99f9db0f5211455ca4256e8db9d9081967d255e (commit)
       via  c6a636ce375d5af4ce0b3aa78b1cc90fd82040bd (commit)
       via  9bf7038bb229d6e46a1f1861c257fc47843f114d (commit)
       via  422186a95cbb02ee1d34388adceeb4bd289074b9 (commit)
       via  58e07198f34c3a8bb7d64392e8b978a0d741244e (commit)
       via  25ce02ee7b7667fb7bb882421ff869c080777bee (commit)
       via  caa429d81a9999699a40b6394c9fb7b258669d54 (commit)
       via  2e02f29632218fc24d71fbbefc368d551d0528a7 (commit)
       via  a3972330f49f81b3bea64af0970d22f42ae56ec3 (commit)
       via  81873cc81effbd657efe5f525d369e430ce77d7a (commit)
       via  a72f8c4ce397a0bbe98281d4151982330ad16f15 (commit)
       via  2e1a984c23da8a9dbd2542e3f506de6a64da670d (commit)
       via  c588b266bf1605b38c5f56a5a847e12e65392e4e (commit)
       via  c1b00498af77c012beed6809175f38923906ecb9 (commit)
       via  942d35f72bea5a0d19a5d0e0a5ca533e37a88b2c (commit)
       via  595a4d439bc5976d5bdf61da6d44337b3995d967 (commit)
       via  f5e73be11b24b6c4b7ecec5f762784c4bb40ec18 (commit)
       via  bec3a0c8224a76b315c1742b8254d04ab06885ac (commit)
       via  4fa0265edea0940b865678d93749e224547dd36a (commit)
       via  1a3da2cd6175e8f25cec95fc685d4f0f43bf6807 (commit)
       via  dd455cf51d2b273edf6173fcb25fc1e3c5b966b2 (commit)
       via  8d01b5310ee3c5f8b62eb1b8177e6ab7f25d4a2c (commit)
       via  3847a7bfbf6340372962c07f31187ff87b4f492c (commit)
       via  237df8fe1863bb47fcf71ce125cd962666173aaa (commit)
       via  8bf6d176b0a442a8091d338d4af971591d19922c (commit)
       via  811731b21b0a5b5459b33bfcbe26f40c6d9bc7c0 (commit)
       via  12efd68d159444ad8dfe24e49965a228ba980b86 (commit)
       via  62d8e3b73139b159963025b5568ec1f5051450f0 (commit)
       via  0088ba596bba2e0b94139f1c2c4f5875848edbd6 (commit)
       via  312617a3d06b8df67b9f4f63f92ebfaa6b591921 (commit)
       via  fbe4d6650d714643fe340d9ccba7fc500c26b91d (commit)
       via  b02f78f9285728ce2d05ce01e7b14880f70cd6e6 (commit)
       via  d3238f7d90715dad7e8da2a8c2486d26124b0c84 (commit)
       via  76fad9996335e52f177c99c1ebf024fc7f761be2 (commit)
       via  63c6fc6cacf82e6b39f7373d44c1e1e1a0a757fa (commit)
       via  ad118caa9f690114d11384b0813f30980cc333f3 (commit)
       via  6b22174ff163b828a2069f22353018ca97fc0fb4 (commit)
       via  941accce38bc70a23c62e3c9439b67bf23298124 (commit)
       via  a610aa4f9cf61d38b8e0fe60dfaac078d636089f (commit)
       via  9186c494a3bb61a55a29ec04aa0d1684a8c46838 (commit)
       via  5d79adc4b22b0abd4f12ea973a00e7fb0c1dad64 (commit)
       via  e1f2e1a2dadbaeffe0a8a6da7aab7effc6b046d2 (commit)
       via  a9d96ab97edabea31bed089bfd4caca80838e31c (commit)
       via  1ff30553d8972fb027d77d76d29643f2173f17d6 (commit)
       via  e664d728038abf414b6fb1a1c8cd3aacd0bb3b67 (commit)
       via  206584bdf15aa19bb3c971b28e2c1fc04f32d027 (commit)
       via  66d8c862859ab241c1db9b40c3981f8a71951bd4 (commit)
       via  9303eb2fb1630678def10613c81215c2bd21d278 (commit)
       via  79b377b3cf3a0e71e1e4710c4ee1e65e7a27a5d4 (commit)
       via  4f6d070adb32e61c3c61e621c6566fc2d5af2232 (commit)
       via  6187fc5364f6cc327805ecb4ba4962953f25122a (commit)
       via  88ed7edbc632245fad33145e723d27976b6732ca (commit)
       via  96605592395fc57e531de249883ccf6fafed540f (commit)
       via  0b62c71c0839764aca82bf32ac6aa339020ae0c8 (commit)
       via  e2c52041c02e2bdee5b28e97c7997caf0ee5bb2d (commit)
       via  708dc93ed0c8ee744e2784a1c349d8129a84200f (commit)
       via  947d39462e26b0edee9b58003ea579552dbf4fa8 (commit)
       via  b8fd091888383703f5d708c597c496d7b9e47a21 (commit)
       via  68bb5386b84af4031175bf186269eb6b54b8611d (commit)
       via  a0486bac41d6ce47f27795a5abbca5cc53ddba00 (commit)
       via  ff4a4474eba6488c8ad3cae51a685fe282ab249a (commit)
       via  4288405d5ec2c68c7e9d8d68a090c6c9ff3825d1 (commit)
       via  bfcdb85206cd3c3b8ad73b13db6bfb2ec608239b (commit)
       via  0ef209f22c24b9243de68c35c576f7111198f915 (commit)
       via  e3f56a99f66298bb505d0426950b9716a853a5df (commit)
       via  ae9ac79e5e291a2bc5c6620a10c37a3558d55d36 (commit)
       via  54a471e5fd44d7a91297ece1383b0ad6d62c7306 (commit)
       via  955b06fa576df1a6954263043ea3f3a5b9ad5940 (commit)
       via  f49055a52f04f75b6560f304eb975128dd82ad68 (commit)
       via  fa9c3fa035433debc24503e32c59688650ffcdbb (commit)
       via  4330d61dfb05d77fd925efdca45091f12e3a6266 (commit)
       via  6ff185b89017b16e9092142515f0a119b684ac72 (commit)
       via  1336939d3cd4cb02670c48ef065bafdf0fdae300 (commit)
       via  33a6bc350f5b4f03d586ba9d32667b6fea1dce4a (commit)
       via  000439d52897541ad00a84026ac471b4f8cb3c97 (commit)
       via  e33f2313bf63b77763739732be14b469b4b647b7 (commit)
       via  f948b2de97884bfb4e5fc11d40a6bea9e0b096ae (commit)
       via  90bd54236cb8b1c31c3662977159be971044c20d (commit)
       via  9698cf9b1c485edbbeabc9f65bfd0fdef92e3854 (commit)
       via  90f879191c1bc8455527f66fb4ab46873aa870aa (commit)
       via  1e129bbefadbf09ace0fc7fcb3cfcda13700e3b8 (commit)
       via  a2f4b66c9eb5210f8ef6038d7194af1e5f314f97 (commit)
       via  c0e70c624fc7d89f5cf281350692de89a063786f (commit)
       via  88981b157b08f2e9a404a2f86d4ee131f17ce3d4 (commit)
       via  7d9813f196bd1a98d49c2b9b7b90351cb2435b0d (commit)
       via  0e65dfbaf3a0299e4837216a103c28625d4b4f1d (commit)
       via  a30b3e182aad25f94de6412efd5d78f7805fb4d3 (commit)
       via  6dbf2b734063522b4f3d7403ce7a2b436802b839 (commit)
       via  6c33b742ce19cc2fd226d84f2991572239199a62 (commit)
       via  c499eb6896cd803d26da8c719bfac9c03e596c08 (commit)
       via  b437bfe0f4cf06559ca4c508a2869383196ddc6b (commit)
       via  316afdb130346e44622229793d1fb8d391059f8d (commit)
       via  143dce8481f09f60704ab52b98cf8fe6d8b29fc9 (commit)
       via  9402cc593f4aa54677203efa9a92c4f28d3033eb (commit)
       via  72f3392127e1892cb203a98092b4ae32485365fe (commit)
       via  47d546f427d0d3bf9f503b5b118ae05b49d73d28 (commit)
       via  a5be9bbe896d4adb6077e9bb2ebcaaa4426bdde1 (commit)
       via  c0754cdd9af6d8259eac5c9daad9f9b0611358dd (commit)
       via  479604f44fc1eaa02a97ebcc1b60f55a606c4046 (commit)
       via  94585e7f93c9477bcf2835d8245e967053ce2b41 (commit)
       via  60da9d955964759b1f52690bff587ad32a198507 (commit)
       via  2e94b05630514109994abb77ee2dae730f17c263 (commit)
       via  fceac76e64b998c9b66a229134a9ead25209e095 (commit)
       via  eabf307f1d77b952dd76f2618e4e6f72d87e5d10 (commit)
       via  65f381e729bedb933f3e1376e7f53f0ff63ac9a8 (commit)
       via  766f883622ef008230250aa5aecef9fb9b29f233 (commit)
       via  0f4a61b42002f568473f821f00dd240413beadd0 (commit)
       via  94667ab146a0c94f87f3d9aa7d1c819663b28338 (commit)
       via  28fbeab8064f97ca5fe1a851fdc4146b7aed8863 (commit)
       via  a0f6fd217fa53ab80a335fb69f12f1f28ac3335a (commit)
       via  c83004d526c9f5e203926a979d405f7b720b9ede (commit)
       via  586338b839d3f65d22eb3baef41f7395974f1f11 (commit)
       via  a7b34aba62ce347b4e64ca197a5c8b997e3b72df (commit)
       via  0eb32b6e1dee07ac199b4bba855205e4de099213 (commit)
       via  58db964680f0f17197849a714c30430deafb8bc7 (commit)
       via  eb41253a15e2c976869ba1b1f0c3c0e60065fd4f (commit)
       via  5f63875b309f3ae9854ac8a12470111b794a70a2 (commit)
       via  61dd8e19a8b43037125d4a767f27e98e9181521b (commit)
       via  ce5aecf87372749a5ec511f218956756aa185d0f (commit)
       via  3d7d6a6ff4678685f86976f08ab4c9c639e262e1 (commit)
       via  d5b7ce35a19350969b609c56a8bfff17f91cca20 (commit)
       via  5b6d4fc74b505850a7849175a800b55aea4d9363 (commit)
       via  b3811e90dc878d2a23737d20c6d55a972e5b0fd6 (commit)
       via  823710d5856996d1f54f04ecb2f7647aeae99b5b (commit)
       via  0b4eac57c44ec4c9e13f5201b40936c3b3e6c639 (commit)
       via  f166ae0188dcb89c5ae925034260a708a254ab2f (commit)
       via  2301ed1c9af1316b4bad3747d2b03f7d44940f87 (commit)
       via  405b5bd86fbcfa9ad5e67e9cdc49dfcdaacf533c (commit)
       via  5a01c34c62ff9085a0f45ec2a43a38e7b455b23b (commit)
       via  04bdff6a76b863e61ee46375dd7cdc9adfb75540 (commit)
       via  4a421c53cf609d68fe956c2e7270d34c0ab8500f (commit)
       via  5663e321848545857a690f30a780187e3366bd2d (commit)
       via  8acf14351c818d956babe50e61711740f378c941 (commit)
       via  dd7efa79151ed5a56caccfac870865764d922a2f (commit)
       via  fcb36d746247a9f5e266afa65019129eee9273f2 (commit)
       via  45d5293f6e098ff7e85a30554fcdc8c7f00db675 (commit)
       via  27830e0d383e4ed5e8d131c38f262d3fcc3eff25 (commit)
       via  aca4efc7a4fc42bac5b7b029c52cbb2a2bc2574b (commit)
       via  8376927b2cc8b80cd5aa1e48aabafc85c0ad4f3e (commit)
       via  f8861f5dc2391e0c46dd118370195e7730ec46ca (commit)
       via  79472b45328232b083e897a511d4160a6dde0463 (commit)
       via  ea195bb04cc5c964126aeff0f87d7161a03ca926 (commit)
       via  fd0de36e274c8141a5dd4579cd04856dc88370da (commit)
       via  8ebe62124023224eafd1b82c8bc2325962711ef8 (commit)
       via  2376c3702e43ad8a717d80888b34e1e7eaeacaa8 (commit)
       via  82d7a6f4e3ccb3d714b5beb03eeb24f7356d4380 (commit)
       via  016181423bff8c04b2808f2dca9a95f0c9d92fe5 (commit)
       via  4ca51187d21562b6626eea2bd0e45f6b64719dfd (commit)
       via  18125b163947bfd0c358d4a5acf4e0e3b43b64cf (commit)
       via  af1a8d038798bef11471e28d999ad1687312a6a7 (commit)
       via  e7fe496b1b8c0dfc44876f86131f756b424d4e70 (commit)
       via  6ec6968b1b259948ba42f0a47a3da048377058bc (commit)
       via  8fca4da0759df376bcb646bc4b79a92ba27e2362 (commit)
       via  b706061469811a16ff2fb8d42f6e98a22e454212 (commit)
       via  0a5954bd5f96dd665cb733b9ab6f2ca67bb4632d (commit)
       via  7166f90a7756a3b68cfb93b5ea4a026e9b5f2459 (commit)
       via  b0f4fbf81a1cf67d49558b2e8890e5c8628f8403 (commit)
       via  9ec2f606ce9ebfe9b7d1c6d3db0614d19bd03a6b (commit)
       via  4decd602d8570eda5d36fd6cca2e50091000fa7a (commit)
       via  22c6ccb89e0f38a70a42fb49eb167e7857d51f5c (commit)
       via  a7df56e5f840e2ce8bb09487ee0b6570cddb1550 (commit)
       via  dc42e902cc54af2b7e7b54a1171d562f867342d5 (commit)
       via  b474a2022dc14fea0dd8ea4cc66b813486132075 (commit)
       via  304f09d0d4b519f143144d213e1280a0691de8ba (commit)
       via  ba6cd17f0a28e54d9b4ef46397d448f1d208d9a0 (commit)
       via  e39c1607a2df3a97bf7b70bef6de5b7a2db55eea (commit)
       via  23d00a419fe67801afc02a87f7ab9c5374b0238e (commit)
       via  cd4797ee054654160fe6c4b6fbecd636b7961e19 (commit)
       via  3734320dc054bd9f6632607e9e5c901c57450791 (commit)
       via  6467207116c66ff2c58f8bc35cb15b2596f5c457 (commit)
       via  fb7806c7a49d6eb75cdbff183d10d00f75968c0f (commit)
       via  669d0468399d8375f4d25289938a0c06d12e7f2e (commit)
       via  8fe9a076adf308ec813246a96f915c5ab5b6a75f (commit)
       via  e6f65e7573a317ac4efff26fe0e49fe1b9e7a596 (commit)
       via  739b5c9c778dee9e2f54d864f83a81ecb0639535 (commit)
       via  fab7c86ea474291776621eba042132f47af124e1 (commit)
       via  ce3ebcaae382a3f95530d633e6875f97e53ef273 (commit)
       via  e2d1595531b62487749e1af680d8f0c48c684feb (commit)
       via  7622049e0bef81fab900860400838bc977449892 (commit)
       via  338ba75534fbfeb64d7009f29a89f25826a1f4d2 (commit)
       via  da0523c66604dc11b8787d3e0123ea80a2503f14 (commit)
       via  302d65e0b264df2db2f42a2ef51fb9d69f3225de (commit)
       via  d87343802b81ad123a27beccb140d406f54727c6 (commit)
       via  cffc205c9eaacfa312323807cd60b9d3d1c26894 (commit)
       via  efa9760914311fdd9b9a299f1e6cd5a85d64c5ff (commit)
       via  999b073bdb188635feaf1f719237b4845b5b06f3 (commit)
       via  2a912e42d7b9aafae0e8507360cbca52cd29fa9a (commit)
       via  1aea5580c4b760e27e480fb4cb82146a2388e504 (commit)
       via  34d11c682fd96c7dbe3ebd6cd9033e65d51ec7a3 (commit)
       via  122cf0f2d93ae6f7a53e8dd643ebb068b79df9cf (commit)
       via  3e2cf42fe5c305ebb5a4a69427a37e950385ea60 (commit)
       via  1c8ce0ebbe603b7016fff924eb7636d8406f44ba (commit)
       via  33d0e35aed8870ad317af7eeca5274cf4fd87d15 (commit)
       via  a45575b0356d671df2c55fcfc66de719b6b2e5e5 (commit)
       via  87781e8475f8ec80463937130cde48540ff87149 (commit)
       via  b420b89e4b321ff31f2e76cac499b908f042069b (commit)
       via  408e9b8b9ebeb854baea9aac52fa8df4d41eb53d (commit)
       via  f9e2e39d23495844d998f54a0fccb9d6be7edb0e (commit)
       via  81f47ac29f8cdb888f2d81c5daa9bfc4747738aa (commit)
       via  29b523140ecf72bc3fdf570c71fbda6fe85cf930 (commit)
       via  ca1285d17534cff3041c07ac7841288e1b3ba19c (commit)
       via  334fe02b5f9cb1dd3abb0f79856ee1f4285f39c1 (commit)
       via  f3a09c800fcd1d597fa2b9578cb59adfc15b698d (commit)
       via  af4fa23fba220c1b26bb3c8a7996b406dcc181cc (commit)
       via  26648588294d039fcf1efbf512d785753cb6286d (commit)
       via  6e035501e15e72398fcd9db88c97dd30e585a9ae (commit)
       via  7d0e2ecedef69de0a242ac49a475f6a3968d4476 (commit)
       via  fb816e8b1c8ef6b7b07eb3612bb61bd7ef1ff94f (commit)
       via  6275948b473f6ed3149e97bc18f6f8de28bb3f04 (commit)
       via  677052f2a5c67f1d9b2e6d1b2a2149b5f0c20cd0 (commit)
       via  f3da9116654bb2e899063a0aa9e11c2606b38fff (commit)
       via  f1bb75ab2a68b7d0878966f5a945eb7d33a48280 (commit)
       via  3ca58cdea13ddad01d70aa170eb419903b241b94 (commit)
       via  af2d9beee989c7b75de849d9c08629a1e3f567ad (commit)
       via  61c9c4212daa0be96503b9069da387aebf9cba04 (commit)
       via  64c350f2b7930050b869fd3268547452316a19ac (commit)
       via  514bbb0fd96e0742bdef8c6c706e5a030323d198 (commit)
       via  4d6ac854515b14ac5304c1553d37f9b1d78ca333 (commit)
       via  14b456f2a011b28d8136a64022f2a418391054e3 (commit)
       via  f49bb598d96fd66bb6f2e9b14951f094e3d29396 (commit)
       via  56858bea624ab405d53379ae25f433880ecafc68 (commit)
       via  e523f10159d469dc0ca77069d092411f200685a1 (commit)
       via  66dcaa5d55eb39471d962bb949df009a9ea3f959 (commit)
       via  d052b9b7cb90e0f76e35b0cf3c44e9b168b158c2 (commit)
       via  ed63aa178c4b5e47eb8658813b2a3b621b7a092b (commit)
       via  897b9bbcffa894bd3f3664d7f1b666379493d9b2 (commit)
       via  1c8f2df85f56d8f3213667e2a11cd480f2a26667 (commit)
       via  d3b6314397347943f40cdbf6efe34e209a162cc0 (commit)
       via  14925797f833c9f4eedab98c7c50961d180aa03f (commit)
       via  c507f10b0711f24e1b82b8bd096e605317cf77fe (commit)
       via  bf0b396de71b76c02f6dd37e61e4044cdccb28d3 (commit)
       via  ef1576a1b5f14276b44ee4c0fc259832ca0dfd99 (commit)
       via  aef6d006581cab8a858e7abd36c57e73ea6e97a2 (commit)
       via  04d54ace12e77deb8b1d26541de0f2cbc11880f5 (commit)
       via  9743db035e9bc256b5accdcbdecd7d1e9b41d4be (commit)
       via  143275ea7e56baf5ad7a736698b79a90b473183a (commit)
       via  f08d8ce3cd39f34f26dbc681d873e59a0d7e6780 (commit)
       via  73cd51e51b294af9591ecc2e8a28a9bec4f466b3 (commit)
       via  1f6234a335eab15c3ad878338b5256b5bdc190ab (commit)
       via  acca5630749e83ce4ec893e650afa015a086cc0f (commit)
       via  5150f0d83e7525e75d900c6859163db8797507c3 (commit)
       via  4401c2414dffebc5c5e4914fb611d1ecc738e3d5 (commit)
       via  a710b305c5ca8307e8b9d14bbb014641f60d3b48 (commit)
       via  4aa88b50c4eec0256bcba33e02135f224a725d68 (commit)
       via  1be7aba392cd32a9a7165ecb4635c2733b5ac7ba (commit)
       via  35d1cfc2000388028c8f032e714b576615e8db02 (commit)
       via  42b16635dd63ab3e71c76af130423e0ef16d5995 (commit)
       via  8b8b22a426d6b2473731176c83b47042bd8184b8 (commit)
       via  3063888ecfd248ebb4a9b9c61819c9b6eb07bef2 (commit)
       via  1a186d296c88d5341d2939eb0eedf792b053f8a5 (commit)
       via  2d78f95bb639209254eb7252f9c48c520bd90d56 (commit)
       via  a8465a06e0986374f501d0e286a5f351af2aa878 (commit)
       via  93925576e90a2d5ce84176bf2638f685d1a13ec6 (commit)
       via  13ccd4c06fdccad1cb97f15878cd411aa22bf12f (commit)
       via  8cd7817067daffd567fbe09a85b215b609c56e1d (commit)
       via  935295b51d80180ecd8c35d0edbd91283ae135a2 (commit)
       via  7df54120334049020e377ec17a0fdf4ecc63d6a7 (commit)
       via  d58196e061969786922cae5cdaa2ade56dadd95f (commit)
       via  b409bdb60e6a5c1b865dd25eb6bae484eb9b1b04 (commit)
       via  f30ee27c150efbdffbca53f84449b2aac605b6c5 (commit)
       via  5d281bf033bbf2018a30183c2009182d947d3dfd (commit)
       via  f601a00c4c70f396defc66d592c4786135616545 (commit)
       via  26c1e780920096772b5735250fa31a4184d2253c (commit)
       via  c2dafc2a05c7bb1a341def59e6f39c1da42984dd (commit)
       via  1b8833198c014f2d7f7a67097061f3b990707084 (commit)
       via  57785aa2ff465ec72baa75bbd62e321a46e0633e (commit)
       via  dd9634d97c05168870624cadf8fddf9b62ee3008 (commit)
       via  f5f10c66f8dc5466536181a1e5cce2419a5bcbd7 (commit)
       via  35c228db7089caf9525c1ef4cb35f6a8335eeea9 (commit)
       via  886e1c739b5441aca92a9725c932d0d446097a32 (commit)
       via  a302e574182dc12e95850dec078dac93701f1bde (commit)
       via  485dee97c6431267b662b723eb092a6abfa4167c (commit)
       via  5ee9134313f9cce06d38144f5bc77c59e04df884 (commit)
       via  a7ad558c377fd5f5cc7bc77837c532f907f2c53b (commit)
       via  a2699ef206aedf8e8d49d8519ae8a535e4b4afe5 (commit)
       via  4d8d49e80ab6964a211ec3507be22c092afcd83a (commit)
       via  14237686d71b6ef1e6a85f2791cb54d1ec019cb1 (commit)
       via  9ddc1af18c31e775ae7b107779addfcde92c723f (commit)
       via  95008a882803920a0faf672dd4a54edcc6ab66a7 (commit)
       via  7bede82892a06e6c26989803e70f53697392dcf9 (commit)
       via  905f5b3f1d20569e2788add66687e6de11130159 (commit)
       via  f6bd0b7677cbe76cab7322974a418e0e539400d6 (commit)
       via  3a1bb98c3c4f983b950fbaf2797ddcd21fcb5211 (commit)
       via  8f02ae5bac22b8d7f57f233ca1957ef9dbe751ab (commit)
       via  ded12894f5a2836b06c997b899d04c9f692004c1 (commit)
       via  c5358db468d582e658488c2bcc1befe6e6e47366 (commit)
       via  e48371ffd5f89a9ceecd6e814b69e26609fd8402 (commit)
       via  c408a94f8115767ea7e6aa1a75bc59ea5ae960fa (commit)
       via  a0a3a1e9d71887bbff54fcd1e33fcefcbc78b603 (commit)
       via  c2509a1cc8beff40b1da8f85a3f27bf9df1d6c02 (commit)
       via  e7bd7fba34ae1f892acf1e13ac86fca55b68026d (commit)
       via  35015cd193be5e603ed31c14472d2d9d17e14e7a (commit)
       via  37d0d09177dc02e0002ab8b90d9b7bc402af9240 (commit)
       via  3076e59490428c9719765f9b007d6d0d0238f006 (commit)
       via  a6d0f2490c0c7969eb60038f01c0ee0f46e4d5fd (commit)
       via  2764128dee821448ba43a50ed8cee387f2ee8dca (commit)
       via  3c2fcaf9132b994ff3dcb19847717f175098289b (commit)
       via  175cbe22a36861976dc328baaf5ebff3fad35ed8 (commit)
       via  30d5f9e82139702e56a862ac19a5b36545fe3de5 (commit)
       via  66b8bb74ca8fb23e407b80e1b0e7c1a433286b41 (commit)
       via  1ace968ad55778bc178ef36182b87ab7e3dad652 (commit)
       via  21c219fd5bbd0720b7adc5f250c91fc2fd1c4941 (commit)
       via  387e762476ff224ee40760910e73a3905a2c380a (commit)
       via  0067be51e9436c5bbd961a4f54c10dbd50c491ea (commit)
       via  55cb8bb5a870380a9d5f45d8002b7ffab529f6ff (commit)
       via  e173ea00c2941af42ea4e2267446d6039a70da6e (commit)
       via  1367480341749b1498a6c5e7a7b79c7a4ab4ed34 (commit)
       via  a9eac7f9b45e92b83db476d167e5ff26607a8b47 (commit)
       via  a97c8e56362b77fcbbf5b57e5053356320273977 (commit)
       via  71bed2dba6c0706633ead4994cc89e063abf28ea (commit)
       via  b8e07335d04f8c8e611a65905598915f68b0b707 (commit)
       via  391bf8918b16f9f3ad1060d5cb0fc0c4048421bb (commit)
       via  24c54127c5c4da81b9e6c248c8e918b3564b271a (commit)
       via  f3e606a3db56db3ce1ab172511a4ffe9310a496f (commit)
       via  bda678b9e5e4a343a9bb2b0fd20cf52035bad78e (commit)
       via  8de09632ff6683a48b8acfb05d3b35b4ab4507fe (commit)
       via  63b667adb4a915f13ec3ace77af4b9cbd76bceac (commit)
       via  e111c7d1eb8404f29c45f3aa5dbc531062ebbd73 (commit)
       via  42e6288f9f9d7dfe560d2bed1fb5e7f27ac3256f (commit)
       via  28ed815ad2b0cb93eede83022269d6a60b9cdf31 (commit)
       via  fd1dc4a0c1b87c1efa7e0398fd47fd1e87fa0fb4 (commit)
       via  31e36ab341498bb477a46a0475100ec5d471c4f2 (commit)
       via  1be5f94f9c85821287b9ae423f738a8bab499526 (commit)
       via  3c17238bc9fe8a078a6199470291f07bab9c64c8 (commit)
       via  cd50a87ae29f163e7d254729a902a5e51fcccbbc (commit)
       via  3c705960ca0e12bb5d3a12d14ca6703006102d98 (commit)
       via  0a57e14ffa4c2900f64780375282dc5dc493e250 (commit)
       via  c469c86473273e115b267a6f8c93c8942deb93c4 (commit)
       via  116adc27470ed3682b6236e44e3b18838673036c (commit)
       via  3bd82c86f0f432bd7653101069bf056fda14b7cd (commit)
       via  adccc50753467ac66573471f180a60d8d96ce223 (commit)
       via  5cd99750959f54fea9e7290ec850df6c96878b56 (commit)
       via  7ce2460a77a8f66a145c11522f494f3262255390 (commit)
       via  dd3189990b1d918b3a9e482ec6e9cc9a8b9e8fe9 (commit)
       via  b42560a24154570a42360294f44ff14a95d795ec (commit)
       via  9cfd2b89bd3fe943a87d5425d0bb0f8b14c85eb6 (commit)
       via  7a1021395e0ef7a92e1653533b753a2221396015 (commit)
       via  924d79e23306bb85fd1dd78564f4779fd3aeec56 (commit)
       via  4c58e3376da3fedaca81f8c9386f3ccb81261f8a (commit)
       via  d772d2abcc163142fc38655896c4704b06dae0b6 (commit)
       via  d11d83f47bad5dfc959ac60b3619017ac60bdaf9 (commit)
       via  9a73f0ad6ca2a9c027f30fca3d79fa958784dcbf (commit)
       via  8127a2fab5780f27a1c9998b0be4d8b5c28c1603 (commit)
       via  91d3055d8b77d56cf64f85ace4237a0ccca98a4a (commit)
       via  31930bd34d15dd22c5ef47b46d8bc95a5ec34d0e (commit)
       via  bdb3ed9e634d3db8164d90dee12bc8b5e2458786 (commit)
       via  f37b313d5cafbed4e724db4724d1ab567b373be4 (commit)
       via  246994051b6659bf9f4c89b5d5ede86717c5bbef (commit)
       via  d4e05d2fea956e65618fc12c57fb81e8788ef07d (commit)
       via  14ef6690f1f24ad6b2f87bac36607146fbda6ccb (commit)
       via  814cf43a1f16157fcbe2c662f567d064393a0fcb (commit)
       via  02dc647ed65b1429b9af4986ed467f90fbe0c33b (commit)
       via  092324387247f92c66f25a3e1927cf8821bb4943 (commit)
       via  7b4a314f8b9b50c2289ca6b5d21513052c48730b (commit)
       via  51d3063a35fad1fa0cd53c167bb5a4325afeea16 (commit)
       via  89fb8848d7f00cabeb56344762860469238c24e1 (commit)
       via  e9b89e2d01043108283df02261ed718aae705bc8 (commit)
       via  8c42777cd8e1557ffb29fe9c172edd8cc1de14b7 (commit)
       via  5bfd760d66c816d53a930635a84990c8536bb545 (commit)
       via  e85e19b4d7d9b3b322f27684f8c0a3a9ac0e57ab (commit)
       via  f6aa7436201194e80e8d7761e6d88ecf0ec1e327 (commit)
       via  6ae614f66a0a86c9e83b9f40ee1f4e105b681f7b (commit)
       via  6509b8ebfb19769d726c16eb3a8967ac6784f621 (commit)
       via  35632941c90f406f69512c9559ae7ba561f7eee8 (commit)
       via  3017b94d60f1e8929886be6992547973ad354f4c (commit)
       via  a32ad8c55c5c6bcdbc6773b6b825c4505fd44c16 (commit)
       via  5f6e90a0cec8c269634ba0bff3c9e549a903c39a (commit)
       via  1bd0c6e4964f68523794aded05aa4d184db44d48 (commit)
       via  2228ef7700e81bfedbffe352f3efa3716224cdbe (commit)
       via  60fcc1c3d0d8f1e271b19210b1707b4aa589f273 (commit)
       via  ed2b7c1703246eef1ce6b393ced99fe267cbeb7b (commit)
       via  b0be6c912f9e901a87740c72f18be1e54ad5267d (commit)
       via  587ee17bd492a324c927437fb561b99b274e1d8e (commit)
       via  ca1df239078318425cf8038995bf02f1b9ab6e50 (commit)
       via  99f20f08682ecc7be882774ff78409530802d000 (commit)
       via  80e55b132940813fa454da2592a31db6c8af85f1 (commit)
       via  9d3421afbb9f3cfc8e67366ba75ea12ed8f732a3 (commit)
       via  844333e24966817fe4d622494a75c8ae0acdb91f (commit)
       via  988915ee7b880ff059f849893b71118d9bd2c4fc (commit)
       via  2379f9c475505ecedc97607b39af7184bd67aa88 (commit)
       via  46752c37b06c83a8cbf6be887beac4092d5e3505 (commit)
       via  79299211a1a9a701f146620d419da6ee0175798c (commit)
       via  762172a4dc4c1a7c25b3ef18f32b6e378cac6487 (commit)
       via  9632a526cae4cb10276e39d8c4bd1f649d13f8e8 (commit)
       via  9420801e573e77f0dd522150932eb27199052a04 (commit)
       via  c91f298b52766b41e9612fabf93f249cd179bdd7 (commit)
       via  b654832d0d514a9fe4bf802751df1a7093666c93 (commit)
       via  7bd55dac80c2faced875119b60acfb51741e397e (commit)
       via  75f06e9dc59d3f810e2afe2f47afbcb74204ef61 (commit)
       via  77e7aaa4bd980fb96244b874bc867e20b399fe60 (commit)
       via  456ba0fa36d17648a6cf32d1561c8c5802103153 (commit)
       via  0f1309c8f7530b31ecc73c55e86572ff72256947 (commit)
       via  26bfd82367d6ffeb1a61495ac445542e757df5b2 (commit)
       via  c0a57f1536fceabe89c4e8100c7170f6dd8bab38 (commit)
       via  e90a813d9660bb9d951963fd7ae03ce004a52ad6 (commit)
       via  41cee0897b670168e0d6f455c9bc45c73f8023df (commit)
       via  be0d3bbbcdbdba83f74d8ad1be6c4c759255af0b (commit)
       via  5a56d6a65f8406f1aadb4569fbb8ff00a6e92d02 (commit)
       via  e1cbf07ac4f8c8525dfadaa19bfb2997a2bfaad9 (commit)
       via  334d91b9407c5f9f37f224b0f43551c01964eff1 (commit)
       via  62e6b7b3b3c6f2fffe9f5863ddebf430533b79f0 (commit)
       via  bd1efd7d2111e37e2471facca117650a213f332e (commit)
       via  1231b7b8255b54993c0afcb0ea40a5a096d67e90 (commit)
       via  89055eaa122ceb99ae20bfe10d028da2ca7fee83 (commit)
       via  5da01df5b5601cae695cee588547fb9ef0967081 (commit)
       via  fbdf05a16ec647358e65582721c4ca7dae15e58d (commit)
       via  06d16ec97736b5fc0f41cb5a43f756b7ba3d974b (commit)
       via  9c056022194f9d1f068885cb45c9d23a2e44db54 (commit)
       via  fa9c2a59e3110d8c7d37c1fa602cb6b25b796dc7 (commit)
       via  e2eb806a17490963f23be1d567cff357537df678 (commit)
       via  6fe876770ad6739a5b3ca50f53dfcfbe433ba0fa (commit)
       via  7f008c9e6a3cbb248f5b6e8638af4b9d5225981b (commit)
       via  b6484282f85bf7f11451b2441599c241d302ad9d (commit)
       via  af97b4161f07a716783183f1b17fa5cac9f99a49 (commit)
       via  9d6d4be89d12747a92629ed1bde1d423e2831de1 (commit)
       via  27cdfa03b5be812683c18e64009a5da042190ae6 (commit)
       via  a288c270991de1578ad28ac312120f4167347234 (commit)
       via  66452beb773568c7f60dbc6b7c70f671a8c9cf4b (commit)
       via  bde09ab7026edf3d79122872b79c6a8f164ee0ff (commit)
       via  b5d5eb444b6443855d65f73ea6b6623f5fbdaa0e (commit)
       via  222a8d255834c717f1690658a9f85501a46f9403 (commit)
       via  fcd60b848ed7619461b0b0e316201e7745cdb61d (commit)
       via  0fdfd794d22b3b516c3031e76afecaa0ed813931 (commit)
       via  353ea2d106a51cfd1680f7d351f35eb8f69c9248 (commit)
       via  5f2459c233faebe8f882e556b2f4a86594a51292 (commit)
       via  41f61c65a2e1cfdb4aca3bccf6e11025495ba02e (commit)
       via  80062eb94959467fb0c27b988b87ac08dada4bd8 (commit)
       via  06f74c5cb868cfd37af3e680d29784c217700bdf (commit)
       via  b8c05e85ef4ce9610a3a43198180cf24aea327cb (commit)
       via  2cdc1a970d3249888524d251abfb87a9bdc77434 (commit)
       via  e37f3ecd59eeb56e08c4a210a6e9764f1cedbc83 (commit)
       via  b83b4b138298d2a6bfab11f533d7e315c0a1c97b (commit)
       via  2ecde2b63245d4794a4967f318772e7166feb310 (commit)
       via  4504bbdec57c77b6468838276e62b2137eedfdd5 (commit)
       via  d48e62f4a263a871b7a62793e8000625735bc2f6 (commit)
       via  25a0274483cb00c27945b0337005be4f169ff09f (commit)
       via  f59f30f55776b10d4f728065e9f9a10cf63a1b29 (commit)
       via  b70bfc540d3fa7759f5957bce23b6a1e6783ccb3 (commit)
       via  640c50672cffe19a58a0296bbf7731b59a013cd5 (commit)
       via  15f18d1467aa08ff7a4793f21e02fd4c2ebc0a0b (commit)
       via  ab4ee6147eb2e8fafd1fb96c945029c789182d3b (commit)
       via  8ed5b76ea2de370265382dab1d538a919e2603ab (commit)
       via  2ff0a947394eebf5ff9cd26088dce60ec8c10b48 (commit)
       via  a776957c8c3a9177345ee7ca91077234ed7f508e (commit)
       via  066f4018ae7822d81cb6747fd9494e5dd63bfecf (commit)
       via  8107ddcea1da07f1c4e902c17f045684beb78079 (commit)
       via  06ddcada14d90c4da28f9585801aaae48304d8ea (commit)
       via  bc68014d16c30a6e90fdf9fc43e98be8cbbead9a (commit)
       via  f1fdc960664c24d911d6189b94e5c054b4bb9053 (commit)
       via  bf7a4de1722a63c8b017d010e75d5e9e5e622f36 (commit)
       via  bbe75b9d00cc6f0694ff26569505c349d55e35f1 (commit)
       via  1db455a76c39e2be6a8a9613b7a19439f24722d0 (commit)
       via  b6d03bb2b65ac5c919f1d08674bbaa2a9bfb2d0c (commit)
       via  83228e93efa82f84a132f7cec44d0e760d4ad22b (commit)
       via  6fdcd7cc87a5e345a1c09fcf898012d80eb43ee1 (commit)
       via  5acad1a18219912bbb83b667c7bb4955d4af10ca (commit)
       via  2e62ab400ff96334c92e5acf0a462cb9dc0d19a7 (commit)
       via  4be290b2517839872ef7de47230be8dbd291a7e5 (commit)
       via  721b08c68679ad4058bfa7ae73811e6f9e845cfd (commit)
       via  fc913e53c353218ba1a9efa423c08767691a682a (commit)
       via  d2b584a55b658fa52ffa3a42b689940d2e98e969 (commit)
       via  4a90ce955e5bcde074b8616ff9d20f9939a9a358 (commit)
       via  637d4b78c55640b9d858546a65d51024a70b5247 (commit)
       via  fa731fa0d400568fb1fd68c247fc0c55b53c2a2f (commit)
       via  4cacd8ca8de0f9c22380e5a68cff7ff9f6bd4704 (commit)
       via  8a522c6cab56bd55f1454638786f999f6f636354 (commit)
       via  136afab8c7d8a8a91dbf38e79be4f9dc4125d552 (commit)
       via  a45328b93bdd5399da8a9e56817e445cc2068edd (commit)
       via  45f0ab12d463cb3999a4286e679bdef05884b3a3 (commit)
       via  7cb22ff84745da0856bf74578b9bd7dff4379ed5 (commit)
       via  c54f15248ee990df6cea0b4730cd61b227a0e082 (commit)
       via  8e1920d611ab3330d6dfa610ff771cf5dc796097 (commit)
       via  a094d01f01688a49810c2cd970086ed22ea617f4 (commit)
       via  152d61760a048909bf93f256063b5657b34ffd4c (commit)
       via  725cbb63263d27e87f5a4f9b73281e7710de53e4 (commit)
       via  3d1cbb78936fbf2985ffd2ebf074841599ead788 (commit)
       via  94aeb44b001ab2d632806242a3bacb0a879abe15 (commit)
       via  680d7fd5fcff860a31021845389d4dfeb7b42e3c (commit)
       via  c6fdd8b2052baa9b7a27d4d34f109c9622b53509 (commit)
       via  cc06b668978e542ecbc2aff1beca40e5baff86b0 (commit)
       via  cf532bd13616fbabe487d98107cde3202ad58ab7 (commit)
       via  82433e3e270973c3f49d55d41266de6adbf9006d (commit)
       via  57e5e645010430b3d73f8c6a757d09f48dc8f8d5 (commit)
       via  dd06d4d6889ee58b76255b775f52ba8e475a7a2d (commit)
       via  6fe014bcd33686cb75e6355f9c36ce483a64ec62 (commit)
       via  723adb650a31859d7cc45832cb8adca0206455ed (commit)
       via  68bb0359eec3093560929b8ad2b3f5d30e7a7e1d (commit)
       via  cd0923370be1a6412e9b8fb5c8e9e39d90f1d3ea (commit)
       via  f88dbe3f8a9cef79a6ff32ba3734a7a308b8ea26 (commit)
       via  38c3873e5d53902cf9cc73a4a5a05adf371296a6 (commit)
       via  1670072efb31e82d52d408940062860e2835d79c (commit)
       via  44ed80923ab89e141120defa8c1209b69869a7ac (commit)
       via  596179f77c803d3fc5586465f4ece6503055d035 (commit)
       via  a59240a41ac34d91e4ef5dd8b484763639388364 (commit)
       via  1b8dd6432644c256ab294d205a8e00f6c6dc5073 (commit)
       via  1903f1385bff910861942743860d8577423bcb6c (commit)
       via  a679f24ecc00ff7df02c5e6e4804fc9f19cbe595 (commit)
       via  d10be0cb9e61f29a0de368ebcc78bba22a902ad5 (commit)
       via  05b1991f1a942f9d13b5363fb4c05e34ea44ef57 (commit)
       via  f872fdbb5b83f39f359bc1cd016dcc0456cb0c0a (commit)
       via  b614e6f3f820fe08d407b57821456f672d4d1a6f (commit)
       via  14faed38e730e3ab2a1aa8d5232b4883638fd857 (commit)
       via  541aad8ac923fa2d4a9d35fdf82b487b9f6e0ea8 (commit)
       via  29222070e410d441108895fcc3011f576bd05461 (commit)
       via  0f534d767b257fffd8a9b231c97ff9ed33688452 (commit)
       via  1ba7b7f9384eafc0748cee4c6731d6bdb717bd20 (commit)
       via  d31f262c36a450fe64e5886228d585c75cfecf14 (commit)
       via  6d14d64dfefef524398f45fd59c1443ebac624f6 (commit)
       via  a40dde9db56ffcea8c2b99e8c4e292ce64f64f9c (commit)
       via  47c47d6907bc44a599baff948d2809616c74c44e (commit)
       via  833a4480dd7cadfd645d7b141168a0e22dc50665 (commit)
       via  3f2cef4945a916e3b566010340bbc70cfe927916 (commit)
       via  96acf8844a655e34de3f3b014a7f64f26266dee1 (commit)
       via  ca0ab0aa8194eda711cf52efe6c26cb821218476 (commit)
       via  c825904428f7c89a65eeb313b243f65e950a0a19 (commit)
       via  27f113c8e9b2361caf3dfcf15437020306bf93b9 (commit)
       via  aee6c3cd1fea463422f19394f95c311f239b6067 (commit)
       via  8e2b5aea9d3f16961f7fac15caec00e955c1dc81 (commit)
       via  43cf3eded2d3ec0af6f5cf534dd89f47d4958a92 (commit)
       via  5e79b7bb69c797c3ca401cfa0f7a616eb2e3efe8 (commit)
       via  89b268d8233e11acdfbc5af196166aacc1440ff3 (commit)
       via  946c28d2f93789ff4eec86a8c321af35759fa20a (commit)
       via  bf12844a68f3f4f267846a19df6a280f53e7ec5f (commit)
       via  ecbc06d2a687f369da7c304201c9f2cbfed80ec6 (commit)
       via  030197b43cd8ccfe6869f798dd39fa27a29c0e01 (commit)
       via  b907456c3eb8a08f6b211f66abb448df962749e1 (commit)
       via  9e97ba436a8e59ac4574001d618240eac0328934 (commit)
       via  5c565afd4c7ab6f3d287c9abd288d1d1e3e7cade (commit)
       via  6892f60143f7809641dc1824e29dcc406a705df6 (commit)
       via  ba22ff8694e366fe5f27824566aae65fc6626841 (commit)
       via  624a24513d2dcf7f2c2d42dbdf6d86be2f6d74aa (commit)
       via  cc9519e7d6251b84dd95c55b562a15b25d703bc0 (commit)
       via  6f38008bb423d71e6984c8ce49b4fc83d2cdaf0d (commit)
       via  336d760da60d93ce76c4560525f65339f3403914 (commit)
       via  4a4153dfc945701938b6f52795cf234fa0a5f5fe (commit)
       via  ad9d13f8e966a844e7e647af6e82259101956f17 (commit)
       via  79b8e8ab453619cb0262e1ad18447d918a605073 (commit)
       via  d70cc3ba8740fc0eb0328da2453cefba8211944b (commit)
       via  7905fc359d6921c411999633e382330e6fd04fb6 (commit)
       via  73f8a5908695e96d8ecd5e0fbe9f1ebb16179547 (commit)
       via  1ce0f4f2422c19a2626c23d88c7dbaf808898b56 (commit)
       via  d6e00f507d764bd8a3b2e55ef9c68a70591098e8 (commit)
       via  f2ae8bc88390f91cca8531823db51a8e35f0a0a0 (commit)
       via  4884b57f24fca3d3abf73515e09a3917ed4f356c (commit)
       via  fb8819867993ee942aacd8ea6d5027b16cecda48 (commit)
       via  8732db6ceb3d5d352685199a15306dbb69c086d6 (commit)
       via  97dfbaddad2b5acf3dd9f2c3e0135b89bde1cbf8 (commit)
       via  b494cdff6922944383ef4dc20fcc90c4d823d315 (commit)
       via  cf250e36790aaa255bb486e2122bb83c95c7669b (commit)
       via  61f4b350419e91560be94e0671a760b2e4902c65 (commit)
       via  189b8c2e104017600104457b97315da74a22f549 (commit)
       via  8ecb59f8567956c1520b491ea31396363efcb1ef (commit)
       via  62160ec9547cdd21ac7334d9a378ca2930aac61c (commit)
       via  ee3c5f8968e7b43854204898fa46933b3a1b5991 (commit)
       via  d563b953142db796f61425a1a300f0feddcdcd55 (commit)
       via  5ce032bdfc60a8f44f6307b2297384c852100f95 (commit)
       via  fce9773608d45757dfb26ef7783f37d432ae9a88 (commit)
       via  e7da54fcdbea8e60c8e577b32b6ed63f8effbfd6 (commit)
       via  36cd4ba59817473935f781174744e7883ff221ee (commit)
       via  dc34c8972ec803b093201c4c12e084f059be32f7 (commit)
       via  85bec12d61ca50669cac5975c88d3a1e377375f9 (commit)
       via  b73715df01e6e9b3de5a49cd7bf4170deef48461 (commit)
       via  5d5b0bd35f1f8b8484349c3ec51aa8e19a1627cf (commit)
       via  05be37e5c34b822ff3032791c2415e652fbf9fbf (commit)
       via  9a7f0679fd3b9815b8eb938bfdad3934b8435419 (commit)
       via  4e84a8f8bbeab52fa7048873655e582ceb92534d (commit)
       via  e25de718de3b613cfafb9c5b28dea8e55a8649b8 (commit)
       via  afff667ae800adee5934020c92012e3ecbf4dabd (commit)
       via  d557977487bc21e8ed19603527949a8541c44832 (commit)
       via  a12e57448ecf2644e3ddc98bbd4bbb914a5f8c92 (commit)
       via  a7e559cc087b10b9ea337b58e52cc13964aae3fb (commit)
       via  aeb2e706e1b9c491d20c88c8ead1ae9df9cee04a (commit)
       via  c1bc0935a4afb513486dc0a479cd57c0924b677c (commit)
       via  1cfe2726f1564df1247f7844077717db04522a88 (commit)
       via  c01660c625766e848195285cc20581b9ed7ecfe2 (commit)
       via  fe7e91e7764d8db4a45c9d7b3dd55cb635f44f5e (commit)
       via  a0fb96150814fef91598e0b528c071201fe18891 (commit)
       via  5bc113360ccc33797a3f882e02824a5c426da175 (commit)
       via  90bd3c903fe76a8a3a5ced98c76e4366c5a0948f (commit)
       via  871a6bd2d852b0fb677386e1be78c3f4c6939b48 (commit)
       via  02e902e1a1ec7b74125f329b3faef1992efb6d51 (commit)
       via  4aa866af6b13c7080c6d92201fc1a2f4ea19998e (commit)
       via  86333705ae268aa00da41b094b0d632eae31e9ae (commit)
       via  48574d91bf1289074f2c88b1f83aa3cd37d524d9 (commit)
       via  4da037ef9dba6c17089250d228efdbe6f7d830c9 (commit)
       via  ccb8d7e8194b848a6c4aa43272540eec0f4f21f2 (commit)
       via  32c36c3ce94becbf0b8e1adad6ff28aa9d5e0b66 (commit)
       via  efd6b3591b4bc8440f4145dfc0e6dbfc0545f7d8 (commit)
       via  6b0dd094741bc5e9963eabc64a7030783e471941 (commit)
       via  4b5a202f107b5393da30fd0b488c3eff2bc758a5 (commit)
       via  60f993ce170b91876ad41e8f7339c24afd63fac2 (commit)
       via  f6b2b12db82f7b76c30ec389a67fbce5d2805323 (commit)
       via  1889da7048b310151d142b100678b6bd6053b548 (commit)
       via  65d1bc05e89e45b102783422c3984ed718547d5c (commit)
       via  1caf72a5849abf9a717ed3e0232abf591ff933e7 (commit)
       via  f1c7f42126274d48f6b0a929e4e15a32193997c6 (commit)
       via  4389b29a5af431eeac517272b66560e12df3c430 (commit)
       via  e5d6e09ee6cea13942a8042945e784f483a6f3af (commit)
       via  e2b0ab597857bfe9d7c8742ff50bbb77c70936c4 (commit)
       via  e12437dc862690eeaa4a487fee35a237703d2b29 (commit)
       via  e0991585ade56ff86a382978bb3b0268d6e1f31c (commit)
       via  031254f2111f945ce6a1b8827e1a58ed7141fefe (commit)
       via  8669f96f0d1fee8eddc4cb56ba68125abfe61f56 (commit)
       via  d94c001b358b1a947a61bafc10a18660bb5eef59 (commit)
       via  798066abd8e5ec2a411979fd34bfe0cd494c1813 (commit)
       via  bdc8beb41b656e8071af275ef0e98c4f2d05e564 (commit)
       via  3315614d19a7fb409227298ead9b356bdbcca3bc (commit)
       via  c40e31a1217f6ec9dd47e2e6806c2562096e31fe (commit)
       via  50ff67e6cf65dbe1b8fbbdb7a6c2e43919af95f4 (commit)
       via  35add35e85c21f02e3e5808273cb77b24069b0aa (commit)
       via  9c9f1b1f39f37ce75c2fc3c378aa059b67df2ea2 (commit)
       via  8114a5c51e6d07e3dfd243eee1cfad6e63cc52aa (commit)
       via  e5a557ac01a775df64ae8149c5fe7d503f46a92f (commit)
       via  d04ebfb8178e56bdcbf925ec0ed55cf14488e3fb (commit)
       via  51196bbc5618a3741bd7bbed01ac76b25a2e6f9c (commit)
       via  3bbec4bd95396936f21dbb07b79d2b6286b4cfec (commit)
       via  e5a1a79a4e0ee33292d45b10a759eb41f7358b7c (commit)
       via  62253a61473764b0d084b01eff06a93fb38bb2e3 (commit)
       via  3822612df0694cc07597e534fa73b34aa2540812 (commit)
       via  a9158a863c18545634cb0f0462b326aeca30634c (commit)
       via  41077b6625d16cc6c0c4b404a177a8850300b8a0 (commit)
       via  9f0272f8548164b024ff9fd151686b2b904a5d59 (commit)
       via  02cf60c7a42710ee0364698c436b6ca5e771374b (commit)
       via  c0b4cd465573f1772927cb3ad5d6e7d17af21622 (commit)
       via  6f2b77153170392f6b6c38367d7e5c4d007a9c49 (commit)
       via  f8aecf3cc9a3c71a0fb9a8ddca8f131dde648276 (commit)
       via  548791769dc737f05cb12e5ee4190b7e853beac9 (commit)
       via  035801cebe9ffbdddb465b81ae514a465ce9c64c (commit)
       via  c30391f893fd99e768c1a6282763ef553c45f1ff (commit)
       via  233a00833b984319d5e94db3f5d5d9a735edc984 (commit)
       via  ca4e63310228df72ba47e5b29f4c275e62496dcf (commit)
       via  b3d7a86748247a68c69939cdf9925d4a78448f2d (commit)
       via  a0ea3a14dc6a6062c0c1f2bfbb7ad0373ec20843 (commit)
       via  9bff840e8cc560f5096a43609ed3e0d980733fd9 (commit)
       via  ce12121b63145322b4961bbb2b94b939cb916ba7 (commit)
       via  bd7ceb8d26e011ff3fd23402ec2587d7c374f090 (commit)
       via  e54010f1aeb050cb9d65862a0afe9095a7a85f27 (commit)
       via  68811f8ff84895ef1cad37ac6947f1a340dd2ae2 (commit)
       via  795e3bb7de9ce2eb1ec3de3faf8f6bc925a58c9e (commit)
       via  3f52fdbcb599f76b4838020721ca6c9f1cc28f84 (commit)
       via  e7f0831be837c00511573e4466a57cc0b8b097d4 (commit)
       via  c1202057eb9161a86af27d867703235fee7b7555 (commit)
       via  e9ad22ee5f0a40dfa1182ee68e3349dd72a42afe (commit)
       via  ee3711344b6e0cffeb237fa6889aab04853f9004 (commit)
       via  bf227d6105cb3908cde816429c84569da12e829c (commit)
       via  b05971a652c35ed72d3c95290e18d8f6e4ef6c46 (commit)
       via  a5def729be2596496aec225e843903b25c672e01 (commit)
       via  e6aded7c34054a2eea55ec56ca3b997ddd0197cf (commit)
       via  53b81c6de19a1f89e3c797631e72d05ba41444dc (commit)
       via  c55b17b8098abde4ae7dfe0ec1f3b22a7fb0a34d (commit)
       via  6feda62721cd6e288f79b0ee5f1489fee8e570ab (commit)
       via  12400dcc0f3a4be8d1d165dc2b3a9f0bb9b579f0 (commit)
       via  789ce185ac3353ed5bc21dd8ea70a8094e4876d5 (commit)
       via  8dc433a0fb04f8fa37530d0788053dd9bea5c37d (commit)
       via  b0319eaaf9d1f4e730c532058f2fff0b4e5ce682 (commit)
       via  9ab8741a48294e19d514721c710c81bba46db7f2 (commit)
       via  9ca1957fcb3c6904d9e5fb0a0e78d4b98f76b1b6 (commit)
       via  e242fd1249ae85a97f08f95d5c61f4cbe3b906e0 (commit)
       via  7e96e219a4fc703282ea5b0cc8845a96c01ca030 (commit)
       via  2b0c8b019996b23fb4717687f5e7ac8c5620c089 (commit)
       via  c369f8f0face23a06e0cf114bf70a024ba9b4959 (commit)
       via  947210e5690c61b395ccd887bc58bcb45ccd357b (commit)
       via  50a82723c446c556287dcabe22183bc5cedab566 (commit)
       via  cf63b0162b6cbf74bdb056609d1ad777c6d48954 (commit)
       via  3d6c62048d8408fbfb6c66830e0c650e36259637 (commit)
       via  462cac5884ed4c38e6180b2e2769aaa5225e695b (commit)
       via  8c402d4151a18c735d1d23ddbe56957d65322064 (commit)
       via  c93c0e7f3f21f809d9390e2e7096f7e2cb8334e2 (commit)
       via  56be6ea89cdf94078d5dff3734b8c1970dbf52fa (commit)
       via  3ae61bb67d62eb53d110835b8b7c3a289e6bce45 (commit)
       via  82b535931242b017a0929460e38c430178b0d72e (commit)
       via  da9b5f7be7cb44e832972252dbaf53d242b0e099 (commit)
       via  6f2791d5de45a9490ba6844617feac038c8da8bd (commit)
       via  eedc3f4f0a02c9774277bd1a34aab6ebdc32f797 (commit)
       via  26003a205e207db7985c32ec1964a04652b68413 (commit)
       via  d272eb370a4c086a1d0f86a7a94e89328ec8d97e (commit)
       via  230d2906b9d1d009b22fd526181bf43e1084ed59 (commit)
       via  a70b814420059e1f2de2130d532ddd7b2b2500fc (commit)
       via  3d6e9d2336c9ffcedb10f89631981a23dd518e8e (commit)
       via  c5c10118216867e133c132b4f46e19fb6aa9258a (commit)
       via  d970ee2bae1925bb9265d37adef0b92e2678d666 (commit)
       via  5f2a6b85105b51f2963aaeb1212c724cab678050 (commit)
       via  5a826ffff854ddcea96dbe9d9ef1592bb3a4ed12 (commit)
       via  48ab418ec75e8b1cbea3e1561de6ec634dad2bf3 (commit)
       via  e392bad3ec99458369723e14ded8c23b5b13073c (commit)
       via  dffaa15c481cea4081732d616334e24abc557fd1 (commit)
       via  07ffcfecac22d21774a110db0f65f0387c8f1102 (commit)
       via  5f60cccf9db8b5f4aa4303f8e4ccc246f723fbe5 (commit)
       via  4de283e4b5f21207fe12f99913d1f28d4f07843c (commit)
       via  5b9c07b2782fb9368f06c2561b7329c384ec5da0 (commit)
       via  d55e5aa6b29906346c51ad00e6a9b112590aa294 (commit)
       via  d128f9b8d41a1e0c38b52d0e752e65f6e5943927 (commit)
       via  4ef40579f9d4d89e59f6cc0923130e48e4309bbf (commit)
       via  d6aab7a11b8bd85de43f9fe6b1cea95b504e73ad (commit)
       via  0570503dd31bc20294e228339fcbdd39b19608cc (commit)
       via  227a9e65b91958cb414ade82c614717579d8849e (commit)
       via  699bd4cfa8895d0767d491a3e44ac09d3f4d1801 (commit)
       via  dac43e327d002107f6bc9481749de039f410df73 (commit)
       via  2a61252965c91540133bece7deb92eb22e3cf929 (commit)
       via  43476f0b1b628352ad8e3064e50128cb3461d3d0 (commit)
       via  5776fca307b8af3d852525b77e9b917a9aa97370 (commit)
       via  8621b685bfdcb8773b8177fb2b89e45499902868 (commit)
       via  28aaf3fdf9562c018dcf6ab4d0a4c644fff8d696 (commit)
       via  1e58a4a4db997cf09315c22f3da725d1da7f9ee7 (commit)
       via  37eedb39824dc26c82a92b5515a352d7de0c9b5b (commit)
       via  73923d7eedc7ab52144308ef7e9c12cbe4341bca (commit)
       via  fa9f5be6830e9245ee1ad1eab9725cc039d45d07 (commit)
       via  1201a264c8fd227737342345ab54e938295188b6 (commit)
       via  e3980ce2a9bf19ade17fdd9817765f2d1e17a0d8 (commit)
       via  bec858ea4d0cef2d8be47b96669b803f73902014 (commit)
       via  66e85460855837af3a3b0224f7846c436cc7d1e0 (commit)
       via  c2b1c2754526acff8aae2fe8f5a56c2dd11d0b7f (commit)
       via  82477cd28aac011c884d75a429d47a0523cbac26 (commit)
       via  aae9718e4d4e8d01dcee22684e82b000203d3e52 (commit)
       via  e9f8e3f109d57c119eaaa1e56378926f7f20863f (commit)
       via  e691a46f7db8db7c126f06551e3cec47f875f512 (commit)
       via  403b0b61f6d4358aee8493cb1d11814e368942c9 (commit)
       via  1c6aafe894645ca1da5c0dd0661bca19caf37ad0 (commit)
       via  092da96ac4fc1bfa4c794320f538edb4e8d4fcfd (commit)
       via  4b24dd1acad5c133d12aab6a575c83269336e47f (commit)
       via  49149495dabc2ef54b7cd38a9346a8696b205da7 (commit)
       via  87f98bacb76001157d5a26555a41738ac3841a56 (commit)
       via  4c7c79dd9858438a25fcc37ba419baa00d31978d (commit)
       via  d7df654955c2423190b05b2507caf624ce3d65bc (commit)
       via  8bdc16587e26100282094c8eaa8e83180ba57afd (commit)
       via  c29705b71a8ec966478c0dc4712194a95291c6de (commit)
       via  05caa1d236440cd8967f8804be8dbcf27fb490b6 (commit)
       via  9d1447e09d4aa673826039321163b5a684e8e043 (commit)
      from  90309e60ba3d5ddd633266743104b390270be73d (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email.

- Log -----------------------------------------------------------------
commit 625ae1b6b5d4a9f805d97640ef99c897279324f7
Merge: 90309e6 680e1be
Author: Stan Cox <scox@redhat.com>
Date:   Thu Jun 20 16:15:47 2019 -0400

    Merge branch 'master' into scox/strace

commit 680e1beed31da40080f61a35f6ccd626de818056
Author: Tom Tromey <tromey@adacore.com>
Date:   Thu May 30 14:13:10 2019 -0600

    Fix crash when setting breakpoint condition
    
    gdb could crash when setting a breakpoint condition on a breakpoint
    when using the Ada language.  The problem occurred because the
    ada_evaluate_subexp would try to evaluate the array to compute its
    attributes, but evaluating can't really be done at this time.
    
    This patch fixes the problem by arranging not to try to evaluate in
    EVAL_AVOID_SIDE_EFFECTS mode when computing an attribute.
    
    Tested on x86-64 Fedora 29.  Because this is Ada-specific, and because
    Joel approved it internally, I am checking it in.
    
    gdb/ChangeLog
    2019-06-19  Tom Tromey  <tromey@adacore.com>
    
    	* ada-lang.c (ada_evaluate_subexp) <case OP_ATR_FIRST>: Handle
    	EVAL_AVOID_SIDE_EFFECTS specially.
    
    gdb/testsuite/ChangeLog
    2019-06-19  Tom Tromey  <tromey@adacore.com>
    
    	* gdb.ada/length_cond.exp: New file.
    	* gdb.ada/length_cond/length_cond.adb: New file.
    	* gdb.ada/length_cond/pck.adb: New file.
    	* gdb.ada/length_cond/pck.ads: New file.

commit dcf3792354ddcd6e10e59e32060e34b27246e7da
Author: Tom Tromey <tromey@adacore.com>
Date:   Tue Jun 18 12:18:24 2019 -0600

    Instantiate a single source highlighter
    
    It occurred to me that there's no reason to make a new source
    highlighter each time gdb needs to highlight some source code.
    Instead, a single one can be created and then simply reused each time.
    
    This patch implements this idea.  Tested on x86-64 Fedora 29.
    
    gdb/ChangeLog
    2019-06-19  Tom Tromey  <tromey@adacore.com>
    
    	* source-cache.c (highlighter): New global.
    	(source_cache::get_source_lines): Create a highlighter on demand.

commit 6f5601c4d0ad43254244f1b624900cdd5afd02ba
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Jun 19 13:55:59 2019 +0930

    PR24697, R_PPC_EMB_SDA21 relocation
    
    	PR 24697
    	* elf32-ppc.c (ppc_elf_relocate_section): Don't read insn for
    	R_PPC_EMB_RELSDA.  Mask low bit of R_PPC_EMB_SDA21 r_offset.

commit 4a4e7361d67cd9262be1413300795eede564f4cb
Author: Alan Modra <amodra@gmail.com>
Date:   Tue Jun 18 10:34:14 2019 +0930

    PowerPC64 notoc calls
    
    Calls from functions that don't have a valid toc pointer in r2 (these
    calls are marked with _NOTOC relocs) to functions that require r2
    valid must go via the callee global entry point.  This patch corrects
    the condition the linker was using to detect functions that require r2
    to be valid.  Values of both zero and one in st_other local entry bits
    mean a function doesn't care about r2.
    
    	* elf64-ppc.c (ppc64_elf_inline_plt): Correct st_other test for
    	functions that require r2 valid to use local entry.
    	(ppc64_elf_size_stubs, ppc64_elf_relocate_section): Likewise.

commit 312413cb844dcce24b0c30254f5789b77a54b0fc
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Wed Jun 19 00:00:31 2019 +0000

    Automatic date update in version.in

commit 494986d596a977e1d24f9f068696f5b3e993ebf7
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Tue Jun 18 13:08:36 2019 +0100

    gdb: Remove use of deprecated_interactive_hook
    
    The deprecated_interactive_hook is not used within GDB.  It is used in
    gdbtk, however this patch removes that use:
    
      https://sourceware.org/ml/insight/2019-q2/msg00001.html
    
    So I think there is no longer a reason to keep this hook around.
    
    This patch removes it.  There should be no user visible changes after
    this commit.
    
    gdb/ChangeLog:
    
    	* defs.h (deprecated_interactive_hook): Delete declaration.
    	* interps.c (clear_interpreter_hooks): Remove use of
    	deprecated_interactive_hook.
    	* top.c (deprecated_interactive_hook): Delete definition.
    	* utils.c (maybe_quit): Remove use of deprecated_interactive_hook.

commit 0ed4690a67e2c4703d9088312de652d0d5f1aaaf
Author: Tom de Vries <tdevries@suse.de>
Date:   Tue Jun 18 19:03:38 2019 +0200

    [gdb/testsuite] Use -fuse-ld=gold in fission.exp
    
    The target board fission.exp requires the gold linker (because it supports
    --gdb-index).
    
    When running the target board on a system where the default linker is not
    gold, most tests will fail to compile.
    
    Fix this by adding "-fuse-ld=gold" ( supported in gcc since version 4.8).
    
    gdb/testsuite/ChangeLog:
    
    2019-06-18  Tom de Vries  <tdevries@suse.de>
    
    	* boards/fission.exp (debug_flags): Add "-fuse-ld=gold".

commit 3360b6e7963e3c579e50078e78d226ea63e2960f
Author: Tom de Vries <tdevries@suse.de>
Date:   Tue Jun 18 18:59:51 2019 +0200

    [gdb] Fix abstract_to_concrete type
    
    The test-case varval.exp fails here:
    ...
    FAIL: gdb.dwarf2/varval.exp: print varval2
    ...
    with boards readnow/cc-with-gdb-index/cc-with-debug-names, as well as if gdb
    is build with -fsanitize=address -lasan.
    
    The problem is that the abstract_to_concrete map in which we track the
    association of abstract to concrete DIEs (for DW_OP_GNU_variable_value
    support) has type std::unordered_map<die_info_ptr, std::vector<die_info_ptr>>,
    and the die_info_ptrs that we register in the map may be invalid by the time
    that we start to lookup DIEs in the map.
    
    Fix this by using the sect_offset instead to identify the DIEs in the map.
    
    Build and tested on x86_64-linux.
    
    gdb/ChangeLog:
    
    2019-06-18  Tom de Vries  <tdevries@suse.de>
    
    	PR gdb/24515
    	* dwarf2read.h (abstract_to_concrete): Change type from
    	std::unordered_map<die_info_ptr, std::vector<die_info_ptr>> to
    	std::unordered_map<sect_offset, std::vector<sect_offset>>.
    	* dwarf2read.c (read_variable): Update.
    	(dwarf2_fetch_die_loc_sect_off): Update.

commit 4ed4690fc21b1d052092299f820f48694f3ef3eb
Author: Simon Marchi <simon.marchi@efficios.com>
Date:   Tue Jun 18 12:40:13 2019 -0400

    doc: fix false claim about second argument to gdb
    
    Section "Invoking GDB" of the manual states that if you try to launch
    gdb with:
    
      gdb program 1234
    
    it will try to attach to the process with id 1234, unless there is a
    file named 1234 in the current working directory, in which case it will
    try to open that file as a core.  In fact, when the second argument
    starts with a digit, GDB tries to attach to process 1234 first, before
    trying to open file 1234 as a core.  So that last remark is not true and
    therefore this patch removes it.
    
    The same remark is present in the man page, so it is removed there too.
    
    Section "Choosing Files" correctly states:
    
      If the second argument begins with a decimal digit, GDB will first
      attempt to attach to it as a process, and if that fails, attempt to
      open it as a corefile.
    
    so it is unchanged.
    
    Finally, the man page has an additional detail compared to section
    "Invoking GDB", regarding the use of the -p switch, so I added the same
    detail to the "Invoking GDB" section.
    
    gdb/doc/ChangeLog:
    
    	* gdb.texinfo (Invoking GDB): Remove sentence about how GDB
    	deals with a file that has the same name as the specified pid to
    	attach to.  Add example using -p option.
    	(gdb man): Remove same sentence as in previous item.

commit d20ed5fd574ce1b72543c2963fa53946eb2225de
Author: Tom Tromey <tromey@adacore.com>
Date:   Tue Jun 18 09:27:45 2019 -0600

    Add comment to list0.h
    
    Pedro suggested adding a comment to list0.h to explain the control
    character.
    
    Tested on x86-64 Fedora 29.
    
    gdb/testsuite/ChangeLog
    2019-06-18  Tom Tromey  <tromey@adacore.com>
    
    	* gdb.base/list0.h: Add comment explaining control character.

commit 86e04673b48d5f8121f28b7958cc5a0d9dd01132
Author: Tom de Vries <tdevries@suse.de>
Date:   Tue Jun 18 08:52:16 2019 +0200

    [gdb/testsuite] Break up long debug_flags line in fission.exp
    
    gdb/testsuite/ChangeLog:
    
    2019-06-18  Tom de Vries  <tdevries@suse.de>
    
    	* boards/fission.exp: Break up long debug_flags line.

commit 5bb4fed3d48e4637015a89e40672c938c7f61e72
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Tue Jun 18 00:00:13 2019 +0000

    Automatic date update in version.in

commit 310b3441a07cb07713a8065a39032504e098047b
Author: Tom de Vries <tdevries@suse.de>
Date:   Mon Jun 17 22:25:06 2019 +0200

    [gdb] Fix heap-buffer-overflow in child_path
    
    When compiling gdb with '-lasan -fsanitizer=address' and running tests with:
    - export ASAN_OPTIONS="detect_leaks=0:alloc_dealloc_mismatch=0", and
    - a target board using local-board.exp, which sets sysroot to ""
    we run into a heap-buffer-overflow in child_path for f.i. gdb.arch/amd64-byte:
    ...
    ==3997==ERROR: AddressSanitizer: heap-buffer-overflow on address \
      0x60200002abcf at pc 0x5602acdf6872 bp 0x7ffe5237a090 sp 0x7ffe5237a080
    READ of size 1 at 0x60200002abcf thread T0
        #0 0x5602acdf6871 in child_path(char const*, char const*) \
                          gdb/common/pathstuff.c:161
        #1 0x5602adb06587 in find_separate_debug_file gdb/symfile.c:1483
        #2 0x5602adb06f2f in find_separate_debug_file_by_debuglink[abi:cxx11](...) \
                          gdb/symfile.c:1563
        #3 0x5602ad13b743 in elf_symfile_read gdb/elfread.c:1293
        #4 0x5602adb01cfa in read_symbols gdb/symfile.c:798
        #5 0x5602adb03769 in syms_from_objfile_1 gdb/symfile.c:1000
        #6 0x5602adb039d0 in syms_from_objfile gdb/symfile.c:1017
        #7 0x5602adb04551 in symbol_file_add_with_addrs gdb/symfile.c:1124
        #8 0x5602adb04ebf in symbol_file_add_from_bfd(...) gdb/symfile.c:1204
        #9 0x5602ada5a78d in solib_read_symbols(...) gdb/solib.c:695
        #10 0x5602ada5bdae in solib_add(char const*, int, int) gdb/solib.c:1004
        #11 0x5602ada49bcd in enable_break gdb/solib-svr4.c:2394
        #12 0x5602ada4dae9 in svr4_solib_create_inferior_hook gdb/solib-svr4.c:3028
        #13 0x5602ada5d4f1 in solib_create_inferior_hook(int) gdb/solib.c:1215
        #14 0x5602ad347f66 in post_create_inferior(target_ops*, int) \
                              gdb/infcmd.c:467
        #15 0x5602ad348b3c in run_command_1 gdb/infcmd.c:663
        #16 0x5602ad348e55 in run_command gdb/infcmd.c:686
        #17 0x5602acd7d32b in do_const_cfunc gdb/cli/cli-decode.c:106
        #18 0x5602acd84bfe in cmd_func(cmd_list_element*, char const*, int) \
                              gdb/cli/cli-decode.c:1892
        #19 0x5602adc62a90 in execute_command(char const*, int) gdb/top.c:630
        #20 0x5602ad5053e6 in catch_command_errors gdb/main.c:372
        #21 0x5602ad507eb1 in captured_main_1 gdb/main.c:1138
        #22 0x5602ad5081ec in captured_main gdb/main.c:1163
        #23 0x5602ad508281 in gdb_main(captured_main_args*) gdb/main.c:1188
        #24 0x5602ac9ddc3a in main gdb/gdb.c:32
        #25 0x7f582b56eb96 in __libc_start_main \
                           (/lib/x86_64-linux-gnu/libc.so.6+0x21b96)
        #26 0x5602ac9dda09 in _start \
                           (/home/smarchi/build/binutils-gdb/gdb/gdb+0x19a2a09)
    
    0x60200002abcf is located 1 bytes to the left of 1-byte region \
      [0x60200002abd0,0x60200002abd1)
    allocated by thread T0 here:
        #0 0x7f582e0e4b50 in __interceptor_malloc \
                          (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xdeb50)
        #1 0x5602acdd3656 in xmalloc gdb/common/common-utils.c:44
        #2 0x5602aefe17d1 in xstrdup libiberty/xstrdup.c:34
        #3 0x5602acdf61f6 in gdb_realpath(char const*) gdb/common/pathstuff.c:80
        #4 0x5602adb06278 in find_separate_debug_file gdb/symfile.c:1444
        #5 0x5602adb06f2f in find_separate_debug_file_by_debuglink[abi:cxx11](...) \
                          gdb/symfile.c:1563
        #6 0x5602ad13b743 in elf_symfile_read gdb/elfread.c:1293
        #7 0x5602adb01cfa in read_symbols gdb/symfile.c:798
        #8 0x5602adb03769 in syms_from_objfile_1 gdb/symfile.c:1000
        #9 0x5602adb039d0 in syms_from_objfile gdb/symfile.c:1017
        #10 0x5602adb04551 in symbol_file_add_with_addrs gdb/symfile.c:1124
        #11 0x5602adb04ebf in symbol_file_add_from_bfd(...) gdb/solib.c:695
        #13 0x5602ada5bdae in solib_add(char const*, int, int) gdb/solib.c:1004
        #14 0x5602ada49bcd in enable_break gdb/solib-svr4.c:2394
        #15 0x5602ada4dae9 in svr4_solib_create_inferior_hook gdb/solib-svr4.c:3028
        #16 0x5602ada5d4f1 in solib_create_inferior_hook(int) gdb/solib.c:1215
        #17 0x5602ad347f66 in post_create_inferior(target_ops*, int) \
                           gdb/infcmd.c:467
        #18 0x5602ad348b3c in run_command_1 gdb/infcmd.c:663
        #19 0x5602ad348e55 in run_command gdb/infcmd.c:686
        #20 0x5602acd7d32b in do_const_cfunc gdb/cli/cli-decode.c:106
        #21 0x5602acd84bfe in cmd_func(cmd_list_element*, char const*, int) \
                           gdb/cli/cli-decode.c:1892
        #22 0x5602adc62a90 in execute_command(char const*, int) gdb/top.c:630
        #23 0x5602ad5053e6 in catch_command_errors gdb/main.c:372
        #24 0x5602ad507eb1 in captured_main_1 gdb/main.c:1138
        #25 0x5602ad5081ec in captured_main gdb/main.c:1163
        #26 0x5602ad508281 in gdb_main(captured_main_args*) gdb/main.c:1188
        #27 0x5602ac9ddc3a in main gdb/gdb.c:32
        #28 0x7f582b56eb96 in __libc_start_main \
                           (/lib/x86_64-linux-gnu/libc.so.6+0x21b96)
    
    SUMMARY: AddressSanitizer: heap-buffer-overflow gdb/common/pathstuff.c:161 \
      in child_path(char const*, char const*)
    Shadow bytes around the buggy address:
      0x0c047fffd520: fa fa fd fd fa fa fd fd fa fa fd fa fa fa fd fa
      0x0c047fffd530: fa fa fd fa fa fa fd fa fa fa fd fa fa fa fd fa
      0x0c047fffd540: fa fa fd fa fa fa fd fa fa fa fd fa fa fa fd fa
      0x0c047fffd550: fa fa fd fd fa fa fd fd fa fa fd fd fa fa fd fa
      0x0c047fffd560: fa fa fd fa fa fa fd fa fa fa fd fa fa fa 00 00
    =>0x0c047fffd570: fa fa 07 fa fa fa 00 fa fa[fa]01 fa fa fa fa fa
      0x0c047fffd580: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
      0x0c047fffd590: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
      0x0c047fffd5a0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
      0x0c047fffd5b0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
      0x0c047fffd5c0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
    Shadow byte legend (one shadow byte represents 8 application bytes):
      Addressable:           00
      Partially addressable: 01 02 03 04 05 06 07
      Heap left redzone:       fa
      Freed heap region:       fd
      Stack left redzone:      f1
      Stack mid redzone:       f2
      Stack right redzone:     f3
      Stack after return:      f5
      Stack use after scope:   f8
      Global redzone:          f9
      Global init order:       f6
      Poisoned by user:        f7
      Container overflow:      fc
      Array cookie:            ac
      Intra object redzone:    bb
      ASan internal:           fe
      Left alloca redzone:     ca
      Right alloca redzone:    cb
    ==3997==ABORTING
    ...
    
    The direct cause is that child_path gets called with parent == "", so this
    test:
    ...
      if (IS_DIR_SEPARATOR (parent[parent_len - 1]))
    ...
    accesses parent[-1].
    
    [ There is an open discussion (1) about whether an empty sysroot should indeed
    be represented internally as "".  But this patch focuses on fixing the
    heap-buffer-overflow without any redesign. ]
    
    Fix this by guarding the test with 'parent_len > 0'.
    
    Note that the fix makes child_path behave the same for:
    - parent == "/" && child == "/foo" (returns "foo")
    - parent == "" and child == "/foo" (returns "foo").
    
    Build and reg-tested on x86_64-linux.
    
    (1) https://sourceware.org/ml/gdb-patches/2019-05/msg00193.html
    
    gdb/ChangeLog:
    
    2019-06-17  Tom de Vries  <tdevries@suse.de>
    
    	PR gdb/24617
    	* common/pathstuff.c (child_path): Make sure parent_len > 0 before
    	accessing parent[parent_len - 1].

commit ba9777bef059df0926ad5dd6813d5785cb652ccf
Author: Paul Pluzhnikov <ppluzhnikov@google.com>
Date:   Mon Jun 17 10:49:15 2019 -0700

    PR gdb/24364: Don't call dtrace_process_dof with NULL dof.

commit 6e1c90b7f5d60aedc547dd84873d1c9291eefcdc
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Mon Jun 17 10:20:04 2019 -0700

    i386: Check vector length for vshufXXX/vinsertXXX/vextractXXX
    
    Since not all vector lengths are supported by vshufXXX, vinsertXXX and
    vextractXXX, decode them only with supported vector lengths.
    
    gas/
    
    	PR binutils/24691
    	* testsuite/gas/i386/disassem.s: Add test for vshuff32x4 with
    	invalid vector length.
    	* testsuite/gas/i386/x86-64-disassem.s: Likewise.
    	* testsuite/gas/i386/disassem.d: Updated.
    	* testsuite/gas/i386/x86-64-disassem.d: Likewise.
    
    opcodes/
    
    	PR binutils/24691
    	* i386-dis-evex.h (evex_table): Update EVEX_W_0F3A23_P_2,
    	EVEX_W_0F3A38_P_2, EVEX_W_0F3A39_P_2, EVEX_W_0F3A3A_P_2,
    	EVEX_W_0F3A3B_P_2 and EVEX_W_0F3A43_P_2.
    	(evex_len_table): Add EVEX_LEN_0F3A23_P_2_W_0,
    	EVEX_LEN_0F3A23_P_2_W_1, EVEX_LEN_0F3A38_P_2_W_0,
    	EVEX_LEN_0F3A38_P_2_W_1, EVEX_LEN_0F3A39_P_2_W_0,
    	EVEX_LEN_0F3A39_P_2_W_1, EVEX_LEN_0F3A3A_P_2_W_0,
    	EVEX_LEN_0F3A3A_P_2_W_1, EVEX_LEN_0F3A3B_P_2_W_0,
    	EVEX_LEN_0F3A3B_P_2_W_1, EVEX_LEN_0F3A43_P_2_W_0 and
    	EVEX_LEN_0F3A43_P_2_W_1.
    	* i386-dis.c (EVEX_LEN_0F3A23_P_2_W_0): New enum.
    	(EVEX_LEN_0F3A23_P_2_W_1): Likewise.
    	(EVEX_LEN_0F3A38_P_2_W_0): Likewise.
    	(EVEX_LEN_0F3A38_P_2_W_1): Likewise.
    	(EVEX_LEN_0F3A39_P_2_W_0): Likewise.
    	(EVEX_LEN_0F3A39_P_2_W_1): Likewise.
    	(EVEX_LEN_0F3A3A_P_2_W_0): Likewise.
    	(EVEX_LEN_0F3A3A_P_2_W_1): Likewise.
    	(EVEX_LEN_0F3A3B_P_2_W_0): Likewise.
    	(EVEX_LEN_0F3A3B_P_2_W_1): Likewise.
    	(EVEX_LEN_0F3A43_P_2_W_0): Likewise.
    	(EVEX_LEN_0F3A43_P_2_W_1): Likewise.

commit 39c05d9435893ed0b51c4b5c8e95fe977b983921
Author: Szabolcs Nagy <szabolcs.nagy@arm.com>
Date:   Mon Jun 10 16:40:54 2019 +0100

    aarch64: remove unnecessary loc_hash_table traversal
    
    The loc_hash_table should only contain local ifunc symbols. The current
    code already aborts if there is anything else and for defined ifunc
    symbols elfNN_aarch64_allocate_dynrelocs is a no-op.
    
    bfd/ChangeLog:
    
    	* elfnn-aarch64.c (elfNN_aarch64_allocate_local_dynrelocs): Remove.
    	(elfNN_aarch64_size_dynamic_sections): Remove loc_hash_table traversal
    	with elfNN_aarch64_allocate_local_dynrelocs.

commit 08bb0061ba5c8826c1ec4d273d539cb32b5c217e
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Mon Jun 17 00:00:13 2019 +0000

    Automatic date update in version.in

commit 2b9f6e89d67b342593734d14f328625848fa5156
Author: Tom de Vries <tdevries@suse.de>
Date:   Sun Jun 16 23:57:17 2019 +0200

    [gdb/contrib] Fix gdb/contrib/gdb-add-index.sh for dwz-m-ed execs
    
    Atm gdb-add-index.exp fails with target board cc-with-dwz-m.
    
    Fix this by updating gdb/contrib/gdb-add-index.sh to handle a dwz-m-ed
    executable.
    
    Tested on x86_64-linux.
    
    gdb/ChangeLog:
    
    2019-06-16  Tom de Vries  <tdevries@suse.de>
    
    	PR gdb/24445
    	* contrib/gdb-add-index.sh: Update to handle dwz-m-ed executable.

commit 431b3eadc4f842231d404e7e995ae5c1dbd28414
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 14:10:25 2019 -0600

    Don't cast a tui_win_info directly to tui_gen_win_info
    
    I found a few spots that directly cast a tui_win_info to a
    tui_gen_win_info.  However, I think it's a bit better here to take the
    address of the "generic" member.  As far as I know, nothing relies on
    being able to downcast here, so this gives us the freedom to rearrange
    the structure.
    
    gdb/ChangeLog
    2019-06-16  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-wingeneral.c (tui_unhighlight_win, tui_highlight_win)
    	(make_all_visible): Use address of member.

commit d04b44a16cdfde95de487bcedd541c6e71d82676
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 13:48:21 2019 -0600

    Remove more unnecessary casts of NULL
    
    I found a few more spots that unnecessarily cast NULL to a pointer
    type.  My earlier search included a "*" in the cast, but these use a
    typedef to a pointer type instead.  This patch removes these casts.
    
    gdb/ChangeLog
    2019-06-16  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-data.c (tui_clear_win_detail, init_win_info)
    	(tui_free_window, free_content, free_content_elements): Remove
    	unnecessary cast.
    	* tui/tui-windata.c (tui_display_all_data): Remove unnecessary
    	cast.
    	* tui/tui-regs.c (tui_show_register_group)
    	(tui_display_registers_from, tui_display_reg_element_at_line):
    	Remove unnecessary cast.

commit bf5142e7fef4e2eca5d98cf805dbadc737118c1e
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Sun Jun 16 17:34:22 2019 +0100

    gdb: Remove unused signal mask
    
    In the following commit:
    
        commit 7feb7d068ae65557ede03c36468ebac61b0939ca
        Date:   Mon May 11 12:08:03 2009 +0000
    
    The last useful uses of normal_mask in linux-nat.c were removed, since
    then this variable has sat around being initialised, but never used.
    There should be no user visible changes after this commit.
    
    gdb/ChangeLog:
    
    	* linux-nat.c (normal_mask): Delete.
    	(_initialize_linux_nat): Don't initialise normal_mask.

commit c4973306879b6079bdfc997474a2cbbd89f49bd2
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date:   Sun Jun 16 10:13:56 2019 -0400

    Write index for dwz -m file
    
    PR 24445 ("dwz multifile index not written to index cache") exposed the
    fact that we are not doing things right when we generate an index for an
    object file that has is linked to a dwz file.  The same happens whether
    the index is generated with the intent of populating the index cache or
    using the save gdb-index command.
    
    The problem can be observed when running these tests with the
    cc-with-dwz-m board:
    
        FAIL: gdb.base/index-cache.exp: test_cache_enabled_hit: check index-cache stats
        FAIL: gdb.dwarf2/gdb-index.exp: index used
        FAIL: gdb.dwarf2/gdb-index.exp: index used after symbol reloading
    
    When generating the index for such file and inspecting the CU list of the
    resulting index (with readelf --debug-dump=gdb_index), we can see something
    like:
    
        CU table:
        [  0] 0x0 - 0xb9
        [  1] 0x0 - 0x44
    
    This is supposed to be a sorted list of the ranges of all CUs in the
    file this index represents, so already having some overlap is a red
    flag.  It turns out that we save the ranges of CUs coming from both the
    main file and the dwz file in the same index.
    
    After digging a little bit, it became quite obvious that the index in
    the main file should only list the CUs present in the main file, and a
    separate index should be generated for the dwz file, listing the CUs
    present in that file.
    
    First, that's what happens if you run dwz on a file that already has a
    GDB index embedded.  Second, dwarf2read.c has code to read an index from
    a dwz file.  The index in the dwz file is actually required to be
    present, if the main file has an index.
    
    So this patch changes write_psymtabs_to_index to generate an index for
    the dwz file, if present.  That index only contains a CU list, just like
    what the dwz tool does when processing a file that already contains an
    index.
    
    Some notes about the implementation:
    
    - The file management (creating a temp file, make sure it's
      close/removed on error - in the right order) is a bit heavy in
      write_psymtabs_to_index, and I needed to add a third file.  I factored
      this pattern in a separate class, index_wip_file.
    - It became a bit tedious to keep the call to assert_file_size in
      write_psymtabs_to_index, write_gdbindex would have had to return two
      sizes.  Instead, I moved the calls to assert_file_size where the file
      is written.  The downside is that we lose the filename at this point,
      but it was only used for the very improbable case of ftell failing, so
      I think it's not a problem.
    - The actual writing of the index file is factored out to
      write_gdbindex_1, so it can be re-used for both index files.
    - While the "save gdb-index" command will now write two .gdb-index
      files, this patch does not update the gdb-add-index.sh script, this
      will come in a later patch.
    
    gdb/ChangeLog:
    
    YYYY-MM-DD  Simon Marchi  <simon.marchi@efficios.com>
    
    	PR gdb/24445
    	* dwarf-index-write.h (write_psymtabs_to_index): Add
    	dwz_basename parameter.
    	* dwarf-index-write.c (write_gdbindex): Move file writing to
    	write_gdbindex_1.  Change return type void.
    	(assert_file_size): Move up, remove filename parameter.
    	(write_gdbindex_1): New function.
    	(write_debug_names): Change return type to void, call
    	assert_file_size.
    	(struct index_wip_file): New struct.
    	(write_psymtabs_to_index): Add dwz_basename parameter.  Move
    	file logic to index_wip_file.  Write index for dwz file if
    	needed.
    	(save_gdb_index_command): Pass basename of dwz file, if present.
    	* dwarf-index-cache.c (index_cache::store): Obtain and pass
    	build-id of dwz file, if present.
    	* dwarf2read.c (struct dwz_file): Move to dwarf2read.h.
    	(dwarf2_get_dwz_file): Likewise.
    	* dwarf2read.h (struct dwz_file): Move from dwarf2read.c.
    	(dwarf2_get_dwz_file): Likewise.
    
    gdb/testsuite/ChangeLog:
    
    YYYY-MM-DD  Tom de Vries  <tdevries@suse.de>
    
    	PR gdb/24445
    	* gdb.dwarf2/gdb-index.exp (add_gdb_index): Update dwz file with
    	generated index.

commit 395f9c911460b3e868c0b700e831c7f92746fad7
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 10:00:52 2019 -0600

    Replace uses of concat with xstrdup
    
    I noticed a couple of spots using concat that could use xstrdup
    instead.  This patch fixes these.
    
    gdb/ChangeLog
    2019-06-16  Tom Tromey  <tom@tromey.com>
    
    	* coffread.c (process_coff_symbol): Use xstrdup.
    	* value.c (create_internalvar): Use xstrdup.

commit cafb34387d063fa47bc2cdb33fc3fe2f13e6cec0
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 09:56:35 2019 -0600

    Remove unnecessary casts of NULL
    
    I noticed some unnecessary casts of NULL.  This removes all the
    unnecessary ones, leaving only ones where we must ensure that NULL has
    pointer type for passing through varargs.
    
    I removed a couple of useless casts of 0 that I noticed while writing
    this.
    
    Tested by rebuilding.
    
    gdb/ChangeLog
    2019-06-16  Tom Tromey  <tom@tromey.com>
    
    	* valops.c (value_cast, value_slice): Remove unnecessary cast.
    	* breakpoint.c (stopin_command, stopat_command)
    	(until_break_command, decode_location_default): Remove unnecessary
    	cast.
    	* utils.c (subset_compare): Remove unnecessary cast.
    	* ada-lang.c (ada_update_initial_language): Remove unnecessary
    	cast.
    	* linespec.c (decode_line_with_last_displayed): Remove unnecessary
    	cast.
    	* infcmd.c (path_command): Remove unnecessary cast.
    	* coffread.c (decode_type): Remove unnecessary cast.
    	* xcoffread.c (read_xcoff_symtab): Remove unnecessary cast.
    	* mipsread.c (mipscoff_symfile_read): Remove unnecessary cast.
    	* tui/tui-stack.c (tui_show_locator_content)
    	(tui_show_frame_info): Remove unnecessary cast.
    	* tui/tui-win.c (tui_scroll_forward_command)
    	(tui_scroll_backward_command, tui_set_focus, tui_set_win_height)
    	(parse_scrolling_args): Remove unnecessary cast.
    	* tui/tui-data.c (init_win_info, tui_del_window)
    	(tui_free_window, tui_del_data_windows, tui_free_data_content)
    	(free_content_elements): Remove unnecessary cast.
    	* tui/tui-windata.c (tui_first_data_item_displayed): Remove
    	unnecessary cast.
    	* tui/tui-source.c (tui_set_source_content)
    	(tui_vertical_source_scroll): Remove unnecessary cast.
    	* tui/tui-layout.c (tui_default_win_height): Remove unnecessary
    	cast.
    	* tui/tui-io.c (tui_initialize_io): Remove unnecessary cast.
    	* tui/tui-regs.c (tui_display_registers_from)
    	(tui_display_register): Remove unnecessary cast.
    	* tui/tui-wingeneral.c (tui_refresh_win, tui_delete_win)
    	(tui_unhighlight_win, tui_highlight_win, tui_make_window)
    	(make_visible): Remove unnecessary cast.
    	* tui/tui-winsource.c (tui_erase_source_content)
    	(tui_update_breakpoint_info, tui_set_exec_info_content): Remove
    	unnecessary cast.
    	* ax-gdb.c (agent_command_1): Remove unnecessary cast.
    	* cli/cli-setshow.c (cmd_show_list): Remove unnecessary cast.
    	* stabsread.c (read_type, read_array_type, read_range_type):
    	Remove unnecessary cast.
    	* mdebugread.c (mdebug_build_psymtabs): Remove unnecessary cast.
    	(parse_symbol, parse_type, upgrade_type, parse_external)
    	(parse_partial_symbols, psymtab_to_symtab_1, cross_ref): Remove
    	unnecessary cast.
    	* gdb_bfd.c (gdb_bfd_map_section): Remove unnecessary cast.

commit 93cb9841d68263174a600dc70af742a8e2eabfc6
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Sun Jun 16 16:17:59 2019 +0100

    gdb/testsuite: Improve detection of bug gdb/24541
    
    In bug gdb/24686 a testsuite failure was reported, this failure was
    actually just another instance of bug gdb/24541, however, due to the
    non-deterministic nature of bug gdb/24541 the testsuite pattern that
    was intended to catch this bug failed.
    
    This commit adds a second pattern to help detect gdb/24541, which
    should change the FAIL reported in gdb/24686 into a KFAIL.
    
    gdb/testsuite/ChangeLog:
    
    	PR gdb/24686
    	* gdb.mi/mi-catch-cpp-exceptions.exp: Add an extra pattern to
    	improve detection of bug gdb/24541.

commit 730ead81dfffc181f79a4b79ba8abf6850e63596
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Jun 15 16:06:27 2019 -0600

    Remove some NULL checks from the TUI
    
    I found a few spots in the TUI that were NULL-checking the result of
    XNEW.  This cannot return NULL, so this patch removes the checks.
    
    gdb/ChangeLog
    2019-06-16  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-data.c (tui_alloc_generic_win_info)
    	(tui_alloc_win_info, tui_add_content_elements): Remove NULL
    	checks.

commit e79be6e5f33d52b2bbb6aafdc61659a4bbb55849
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date:   Sun Jun 16 10:00:39 2019 -0400

    Fix some whitespace issues in gdb ChangeLogs

commit 399aaebd1a5e9e3971758396bd0c5c3ec5ae2386
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date:   Sun Jun 16 09:07:16 2019 -0400

    Make gdb.base/index-cache.exp work with readnow board (PR 24669)
    
    The gdb.base/index-cache.exp test fails with the readnow board:
    
      $ make check TESTS="gdb.base/index-cache.exp" RUNTESTFLAGS="--target_board=readnow"
      FAIL: gdb.base/index-cache.exp: test_cache_enabled_miss: at least one file was created
      FAIL: gdb.base/index-cache.exp: test_cache_enabled_miss: expected file is there
      FAIL: gdb.base/index-cache.exp: test_cache_enabled_miss: check index-cache stats
      FAIL: gdb.base/index-cache.exp: test_cache_enabled_hit: check index-cache stats
    
    The problem is similar to what was fixed in
    
      5a56d6a65f84 ("[gdb/testsuite] Fix index-cache.exp with cc-with-{gdb-index,debug-names}")
    
    In that commit, gdb.base/index-cache.exp was modified to account for the
    fact that the index cache is not used when the binary already has an
    embedded index.
    
    The same situation happens when GDB is started with the -readnow flag:
    it bypasses indices and partial symbols.  So this patch updates the test
    to also expect the index cache not to be used if -readnow is present in
    $GDBFLAGS,
    
    gdb/testsuite/ChangeLog:
    
    	PR gdb/24669
    	* gdb.base/index-cache.exp (uses_readnow,
    	expecting_index_cache_use): Define global variable.
    	(test_cache_enabled_miss, test_cache_enabled_hit): Use
    	expecting_index_cache_use.

commit 6ac6a19371b72f848626666af5301612b76e800e
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Sun Jun 16 00:01:04 2019 +0000

    Automatic date update in version.in

commit 584a927c5ad0d18e9995a0049066b6c503bb7482
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Fri Mar 1 11:12:33 2019 +0000

    gdb/fortran: Show the type for non allocated / associated types
    
    Show the type of not-allocated and/or not-associated types.  For array
    types and pointer to array types we are going to print the number of
    ranks.
    
    Consider this Fortran program:
    
      program test
        integer, allocatable :: vla (:)
        logical l
        allocate (vla(5:12))
        l = allocated (vla)
      end program test
    
    And this GDB session with current HEAD:
    
      (gdb) start
      ...
      2	  integer, allocatable :: vla (:)
      (gdb) n
      4	  allocate (vla(5:12))
      (gdb) ptype vla
      type = <not allocated>
      (gdb) p vla
      $1 = <not allocated>
      (gdb)
    
    And the same session with this patch applied:
    
      (gdb) start
      ...
      2	  integer, allocatable :: vla (:)
      (gdb) n
      4	  allocate (vla(5:12))
      (gdb) ptype vla
      type = integer(kind=4), allocatable (:)
      (gdb) p vla
      $1 = <not allocated>
      (gdb)
    
    The type of 'vla' is now printed correctly, while the value itself
    still shows as '<not allocated>'.  How GDB prints the type of
    associated pointers has changed in a similar way.
    
    gdb/ChangeLog:
    
    	* f-typeprint.c (f_print_type): Don't return early for not
    	associated or not allocated types.
    	(f_type_print_varspec_suffix): Add print_rank parameter and print
    	ranks of array types in case they dangling.
    	(f_type_print_base): Add print_rank parameter.
    
    gdb/testsuite/ChangeLog:
    
    	* gdb.fortran/pointers.f90: New file.
    	* gdb.fortran/print_type.exp: New file.
    	* gdb.fortran/vla-ptype.exp: Adapt expected results.
    	* gdb.fortran/vla-type.exp: Likewise.
    	* gdb.fortran/vla-value.exp: Likewise.
    	* gdb.mi/mi-vla-fortran.exp: Likewise.

commit 30056ea04ae3ecd828e2a06e12e6f174ae6659c9
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Wed May 8 19:01:36 2019 +0100

    gdb/mi: New commands to catch C++ exceptions
    
    Adds some MI commands to catch C++ exceptions.  The new commands are
    -catch-throw, -catch-rethrow, and -catch-catch, these all correspond
    to the CLI commands 'catch throw', 'catch rethrow', and 'catch catch'.
    
    Each MI command takes two optional arguments, '-t' has the effect of
    calling 'tcatch' instead of 'catch', for example:
    
       (gdb)
       -catch-throw -t
    
    Is the same as:
    
       (gdb) tcatch throw
    
    There is also a '-r REGEXP' argument that can supply a regexp to match
    against the exception type, so:
    
       (gdb)
       -catch-catch -r PATTERN
    
    Is the same as:
    
       (gdb) catch catch PATTERN
    
    The change in print_mention_exception_catchpoint might seem a little
    strange; changing the output from using ui_out::field_int and
    ui_out::text to using  ui_out::message.
    
    The print_mention_exception_catchpoint is used as the 'print_mention'
    method for the exception catchpoint breakpoint object.  Most of the
    other 'print_mention' methods (see breakpoint.c) use either
    printf_filtered, of ui_out::message.  Using field_int was causing an
    unexpected field to be added to the MI output.  Here's the output
    without the change in print_mention_exception_catchpoint:
    
        (gdb)
        -catch-throw
        ^done,bkptno="1",bkpt={number="1",type="breakpoint",disp="keep",
                               enabled="y",addr="0x00000000004006c0",
                               what="exception throw",catch-type="throw",
                               thread-groups=["i1"],times="0"}
    
    Notice the breakpoint number appears in both the 'bkptno' field, and
    the 'number' field within the 'bkpt' tuple.  Here's the output with
    the change in print_mention_exception_catchpoint:
    
        (gdb)
        -catch-throw
        ^done,bkpt={number="1",type="breakpoint",disp="keep",
                    enabled="y",addr="0x00000000004006c0",
                    what="exception throw",catch-type="throw",
                    thread-groups=["i1"],times="0"}
    
    gdb/ChangeLog:
    
    	* NEWS: Mention new MI commands.
    	* break-catch-throw.c (enum exception_event_kind): Move to
    	breakpoint.h.
    	(print_mention_exception_catchpoint): Output text as a single
    	message.
    	(catch_exception_command_1): Rename to...
    	(catch_exception_event): ...this, make non-static, update header
    	command, and change some parameter types.
    	(catch_catch_command): Update for changes to
    	catch_exception_command_1.
    	(catch_throw_command): Likewise.
    	(catch_rethrow_command): Likewise.
    	* breakpoint.c (enum exception_event_kind): Delete.
    	* breakpoint.h (enum exception_event_kind): Moved here from
    	break-catch-throw.c.
    	(catch_exception_event): Declare.
    	* mi/mi-cmd-catch.c (mi_cmd_catch_exception_event): New function.
    	(mi_cmd_catch_throw): New function.
    	(mi_cmd_catch_rethrow): New function.
    	(mi_cmd_catch_catch): New function.
    	* mi/mi-cmds.c (mi_cmds): Add 'catch-throw', 'catch-rethrow', and
    	'catch-catch' entries.
    	* mi/mi-cmds.h (mi_cmd_catch_throw): Declare.
    	(mi_cmd_catch_rethrow): Declare.
    	(mi_cmd_catch_catch): Declare.
    
    gdb/doc/ChangeLog:
    
    	* gdb.texinfo (GDB/MI Catchpoint Commands): Add menu entry to new
    	node.
    	(C++ Exception GDB/MI Catchpoint Commands): New node to describe
    	new MI commands.
    
    gdb/testsuite/ChangeLog:
    
    	* gdb.mi/mi-catch-cpp-exceptions.cc: New file.
    	* gdb.mi/mi-catch-cpp-exceptions.exp: New file.
    	* lib/mi-support.exp (mi_expect_stop): Handle 'exception-caught'
    	as a stop reason.

commit ec8e2b6d3051f0b4b2a8eee9917898e95046c62f
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Fri Jun 14 23:43:00 2019 +0100

    gdb: Don't allow annotations to influence what else GDB prints
    
    The annotations should be additional information printed by GDB to be
    consumed by users (GUIs), but GDB shouldn't reduce what it prints
    based on whether annotations are on or not.  However, this is what
    happens for annotate_source_line.
    
    This commit makes annotate_source_line a void function that simply
    outputs the annotation information, GDB will then print the contents
    of the source line to the terminal in the normal way.
    
    Some tests needed to be updated after this commit.
    
    gdb/ChangeLog:
    
    	* annotate.c (annotate_source_line): Change return type to void,
    	update implementation to match.
    	* annotate.h (annotate_source_line): Change return type to void,
    	update header comment.
    	* stack.c (print_frame_info): Don't change what frame information
    	is printed based on whether annotations are on or not.
    
    gdb/testsuite/ChangeLog:
    
    	* gdb.base/annota1.exp: Update expected results.
    	* gdb.cp/annota2.exp: Likewise.
    	* gdb.cp/annota3.exp: Likewise.

commit 0d3abd8cc936360f8c46502135edd2e646473438
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Wed Jun 12 22:34:26 2019 +0100

    gdb: Remove an update of current_source_line and current_source_symtab
    
    While reviewing some of the annotation code I noticed that
    identify_source_line (in source.c) sets current_source_line,
    current_source_symtab, and also calls clear_lines_listed_range.  This
    seems a little strange, identify_source_line is really a wrapper
    around annotate_source, and is only called when annotation_level is
    greater than 0 (so annotations are turned on).
    
    It seems weird (to me) that when annotations are on we update GDB's
    idea of the "current" line/symtab, but when they are off we don't,
    given that annotations are really about communicating GDB's state to a
    user (GUI) and surely shouldn't be changing GDB's behaviour.
    
    This commit removes from identify_source_line all of the setting of
    current line/symtab and the call to clear_lines_listed_range, after
    doing this GDB still passes all tests, so I don't believe these lines
    were actually required.
    
    With this code removed identify_source_line is only a wrapper around
    annotate_source, so I moved identify_source_line to annotate.c and
    renamed it to annotate_source_line.
    
    gdb/ChangeLog:
    
    	* annotate.c: Add 'source.h' and 'objfiles.h' includes.
    	(annotate_source): Make static.
    	(annotate_source_line): Moved from source.c and renamed from
    	identify_source_line.  Update the return type.
    	* annotate.h (annotate_source): Delete declaration.
    	(annotate_source_line): Declaration moved from source.h, and
    	renamed from identify_source_line.  Return type updated.
    	* source.c (identify_source_line): Moved to annotate.c and renamed
    	to annotate_source_line.
    	(info_line_command): Remove check of annotation_level.
    	* source.h (identify_source_line): Move declaration to annotate.h
    	and rename to annotate_source_line.
    	* stack.c: Add 'annotate.h' include.
    	(print_frame_info): Remove check of annotation_level before
    	calling annotate_source_line.

commit 00df30ae1ea6db8f3693cad8a499f55f1d66e913
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Fri Jun 14 22:16:52 2019 +0100

    gdb: New function to open source file and compute line charpos data
    
    Every place that a symtab's line_charpos data is loaded always follows
    the same pattern, so create a new function to contain this logic and
    make use of it throughout GDB.
    
    There should be no user visible changes after this commit.
    
    gdb/ChangeLog:
    
    	* source-cache.c (source_cache::get_plain_source_lines): Use
    	open_source_file_with_line_charpos instead of just
    	open_source_file, remove call to find_source_lines.
    	(source_cache::get_source_lines): Likewise.
    	* source.c (find_source_lines): Make static.
    	(get_filename_and_charpos): Renamed into...
    	(open_source_file_with_line_charpos): ..this along with changes to
    	return a scoped_fd, and some other minor clean ups.
    	(identify_source_line): Use open_source_file_with_line_charpos.
    	(search_command_helper): Use open_source_file_with_line_charpos
    	instead of just open_source_file, remove call to
    	find_source_lines.
    	* source.h (open_source_file_with_line_charpos): Declare new
    	function.
    	(find_source_lines): Delete declaration.

commit afda45a206f83389782a400f86668714400a1cb7
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Fri Jun 14 21:57:42 2019 +0100

    gdb: Remove unused parameter
    
    The parameter 'fullname' is always passed as NULL to the function
    get_filename_and_charpos in source.c, so lets remove the parameter.
    There should be no user visible changes after this commit.
    
    gdb/ChangeLog:
    
    	* source.c (get_filename_and_charpos): Remove fullname
    	parameter.
    	(identify_source_line): Update call to get_filename_and_charpos.

commit 09e4c4e1f1732ed978db4b8c75877bf8a8097ae9
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Fri Jun 14 23:31:10 2019 +0100

    gdb: Remove file path from test name
    
    Having paths in test names makes comparing sum files difficult, rename
    a test to avoid paths in test names.
    
    gdb/testsuite/ChangeLog:
    
    	* gdb.base/style-logging.exp: Remove path from test name.

commit 49455d8bbd8eac5b7ce7e26c691af27998647584
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Sat Jun 15 00:00:41 2019 +0000

    Automatic date update in version.in

commit 0735b091aba72d4b35aebb671a02c5cb4a837fe9
Author: Tom Tromey <tromey@adacore.com>
Date:   Tue Apr 30 11:17:15 2019 -0600

    Do not emit style escape sequences to log file
    
    PR gdb/24502 requests that the "set logging" log file not contain
    style escape sequences emitted by gdb.
    
    This seemed like a reasonable request to me, so this patch implements
    filtering for the log file.
    
    This also updates a comment in ui-style.h that I noticed while writing
    the patch.
    
    Tested on x86-64 Fedora 29.
    
    gdb/ChangeLog
    2019-06-14  Tom Tromey  <tromey@adacore.com>
    
    	PR gdb/24502:
    	* ui-style.h (skip_ansi_escape): Update comment.
    	* ui-file.h (class no_terminal_escape_file): New class.
    	* ui-file.c (no_terminal_escape_file::write)
    	(no_terminal_escape_file::puts): New methods.
    	* cli/cli-logging.c (handle_redirections): Use
    	no_terminal_escape_file.
    
    gdb/testsuite/ChangeLog
    2019-06-14  Tom Tromey  <tromey@adacore.com>
    
    	PR gdb/24502:
    	* gdb.base/style-logging.exp: New file.

commit 52ce35e2894e55cea94011dda6443be51e154f37
Author: Tom Tromey <tromey@adacore.com>
Date:   Fri Jun 14 12:30:17 2019 -0600

    Minor NEWS rearrangement
    
    I noticed that a NEWS item about Python scripting changes appeared
    between an item about a convenience function and an item about a
    convenience variable.  I think it's better for the latter to be next
    to each other.
    
    gdb/ChangeLog
    2019-06-14  Tom Tromey  <tromey@adacore.com>
    
    	* NEWS: Move convenience variable news above Python news.

commit 73cc72729a184f00bf6fc4d74684a8516ba6b683
Author: Tom Tromey <tom@tromey.com>
Date:   Sun May 5 17:35:20 2019 -0600

    Move gnulib to top level
    
    This patch moves the gdb/gnulib subdirectory to the top level.
    
    It adjusts the top-level build system to build gnulib when necessary,
    and changes gdb to use this.  However, gdbserver still builds its own
    copy of gnulib, just from the new source location.
    
    A small hack was needed to ensure that gnulib is only built when gdb
    is enabled.  The Makefile only provides an ordering -- the directory
    must be mentioned in configdirs to actually be compiled at all.
    
    Most of the patch is just a "git mv" of gnulib, though a few minor
    path adjustments were needed in some files there.
    
    Tested by the buildbot.
    
    ChangeLog
    2019-06-14  Tom Tromey  <tom@tromey.com>
    
    	* MAINTAINERS: Add gnulib.
    	* gnulib: New directory, move from gdb/gnulib.
    	* configure.ac (host_libs): Add gnulib.
    	* configure: Rebuild.
    	* Makefile.def (host_modules, dependencies): Add gnulib.
    	* Makefile.in: Rebuild.
    
    gdb/ChangeLog
    2019-06-14  Tom Tromey  <tom@tromey.com>
    
    	* gnulib: Move directory to top-level.
    	* configure.ac: Don't configure gnulib.
    	* configure: Rebuild.
    	* common/common-defs.h: Use new path to gnulib.
    	* Makefile.in (GNULIB_BUILDDIR): Now ../gnulib.
    	(GNULIB_H): Remove.
    	(INCGNU): Look in new gnulib location.
    	(HFILES_NO_SRCDIR): Remove gnulib files.
    	(SUBDIR, REQUIRED_SUBDIRS): Remove gnulib.
    	(generated_files): Remove GNULIB_H.
    	($(LIBGNU), all-lib): Remove targets.
    	(distclean): Don't mention GNULIB_BUILDDIR.
    	($(GNULIB_BUILDDIR)/Makefile): Remove target.
    
    gdb/gdbserver/ChangeLog
    2019-06-14  Tom Tromey  <tom@tromey.com>
    
    	* configure.ac: Use new path to gnulib.
    	* configure: Rebuild.
    	* Makefile.in (INCGNU, $(GNULIB_BUILDDIR)/Makefile): Use new path
    	to gnulib.
    
    gnulib/ChangeLog
    2019-06-14  Tom Tromey  <tom@tromey.com>
    
    	* update-gnulib.sh: Adjust paths.
    	* Makefile.in: Adjust paths.
    	* configure.ac: Adjust paths.  Use ACX_LARGEFILE.
    	* configure: Rebuild.

commit f568655424ad268c8c5df3f56e4e19a86b16623d
Author: Tom Tromey <tromey@adacore.com>
Date:   Tue Jun 4 13:35:44 2019 -0600

    Warn if add-symbol-file does not provide any symbols
    
    A user suggested that add-symbol-file ought to warn if the file does
    not in fact provide any symbols.  This seemed like a decent idea, so
    this patch implements this idea.
    
    Tested on x86-64 Fedora 29.
    
    gdb/ChangeLog
    2019-06-14  Tom Tromey  <tromey@adacore.com>
    
    	* symfile.c (add_symbol_file_command): Remove obsolete comment.
    	Warn if symbol file does not provide any symbols.
    
    gdb/testsuite/ChangeLog
    2019-06-14  Tom Tromey  <tromey@adacore.com>
    
    	* gdb.base/symfile-warn.exp: New file.
    	* gdb.base/symfile-warn.c: New file.

commit a0c1ffedcf1988bc13fc5b6d57d3b74a17b60299
Author: Tom Tromey <tromey@adacore.com>
Date:   Thu May 30 10:59:03 2019 -0600

    Only compute realpath when basenames_may_differ is set
    
    A user noted that, when sources are symlinked, gdb annotations will
    print the real path, rather than the name of the symlink.
    
    It seems to me that it is better to print the name of the file that
    was actually used in the build, unless there is some reason not to.
    
    This patch implements this, with the caveat that it will not work when
    basenames-may-differ is enabled.  The way this mode is currently
    implemented, returning the symbolic (not real) path is not possible.
    
    While I think it would be good to redo the source file name cache and
    perhaps integrate it with class source_cache, I haven't done so here.
    
    Regression tested on x86-64 Fedora 29.
    
    gdb/ChangeLog
    2019-06-14  Tom Tromey  <tromey@adacore.com>
    
    	* source.c (find_and_open_source): Respect basenames_may_differ.
    
    gdb/testsuite/ChangeLog
    2019-06-14  Tom Tromey  <tromey@adacore.com>
    
    	* gdb.base/annotate-symlink.exp: New file.

commit 7c39e397aafaea64812f2611b061bdd50f30dce4
Author: Andrew Burgess <andrew.burgess@embecosm.com>
Date:   Thu Jun 13 22:13:28 2019 +0100

    gdb: Use scoped_restore_terminal_state in annotate.c
    
    In a couple of places in annotate.c we are manually backing up and
    restoring the terminal ownership, we could instead make use of
    scoped_restore_terminal_state.
    
    gdb/ChangeLog:
    
    	* annotate.c (annotate_breakpoints_invalid): Make use of
    	scoped_restore_terminal_state.
    	(annotate_frames_invalid): Likewise.

commit f411722cbc18820e5266ec4c2aadd2269eb15447
Author: Tom Tromey <tromey@adacore.com>
Date:   Wed Jun 5 10:53:16 2019 -0600

    Allow re-assigning to convenience variables
    
    In Ada mode, re-assigning an array of a different size to a
    convenience variable will cause an error:
    
        (gdb) set lang ada
        (gdb) set $v := "abc"
        (gdb) set $v := "abcd"
        cannot assign arrays of different length
    
    However, this does not really make sense -- instead, it should always
    be possible to overwrite a convenience variable.
    
    This patch fixes this bug.
    
    This was reviewed off-list by Joel.  I'm checking it in.
    
    gdb/ChangeLog
    2019-06-14  Tom Tromey  <tromey@adacore.com>
    
    	* ada-lang.c (ada_evaluate_subexp) <case BINOP_ASSIGN>: Always
    	allow assignment to an internalvar.
    
    gdb/testsuite/ChangeLog
    2019-06-14  Tom Tromey  <tromey@adacore.com>
    
    	* gdb.ada/set_wstr.exp: Add reassignment test.

commit 4268ec187d401b9b132afa1a13c73e0026a53c5d
Author: Tom Tromey <tromey@adacore.com>
Date:   Fri Jun 7 11:29:36 2019 -0600

    Recognize _ in attribute names
    
    Ada attribute names can contain "_", but the lexer currently does not
    allow this -- even though the "attributes" array lists some attributes
    spelled this way.
    
    This patch fixes the bug and adds test cases for the existing
    attributes.
    
    This was reviewed off-list by Joel.  I'm checking it in.
    
    gdb/ChangeLog
    2019-06-14  Tom Tromey  <tromey@adacore.com>
    
    	* ada-lex.l: Allow "_" in attribute names.
    
    gdb/testsuite/ChangeLog
    2019-06-14  Tom Tromey  <tromey@adacore.com>
    
    	* gdb.ada/formatted_ref.exp (test_p_x_addr): Check
    	'unchecked_access and 'unrestricted_access as well.

commit abdb711e0855f0597a96db0486b598144b788212
Author: Tom Tromey <tromey@adacore.com>
Date:   Tue Jun 11 06:59:38 2019 -0600

    Remove alloca(0) calls
    
    PR gdb/24653 points out that a gcc snapshot will complain about the
    calls to alloca(0) in gdb.
    
    These calls are only needed when using the C alloca.  I'm inclined to
    think that no current platform needs this, so this patch removes the
    calls.
    
    Let me know what you think.
    
    gdb/ChangeLog
    2019-06-14  Tom Tromey  <tromey@adacore.com>
    
    	PR gdb/24653:
    	* regcache.c (registers_changed): Don't call alloca.
    	* top.c (execute_command): Don't call alloca.

commit 9a9e394b05a841bdd9163f280d7ef19cc65634d6
Author: Tom Tromey <tromey@adacore.com>
Date:   Wed May 29 10:21:52 2019 -0600

    Fix gdb.ada/vla.exp
    
    PR ada/24539 concerns a test failure in gdb.ada/vla.exp.
    
    The problem here is that different versions of Gnat emit the
    structure's fields in different orders -- with the order currently
    failing actually being the correct one.
    
    Joel pointed out that this can be fixed by simply adding the
    No_Component_Reordering pragma to the type in question, which is what
    this patch does.
    
    I've reported a Gnat compiler bug internally in hopes of getting the
    underlying problem fixed.
    
    gdb/testsuite/ChangeLog
    2019-06-14  Tom Tromey  <tromey@adacore.com>
    
    	PR ada/24539:
    	* gdb.ada/vla.exp: Update tests.
    	* gdb.ada/vla/vla.adb (Record_Type): Use No_Component_Reordering
    	pragma.

commit e30d1fa1bfb1ff2e225cfac9226c357f2cf07a26
Author: Szabolcs Nagy <szabolcs.nagy@arm.com>
Date:   Wed Nov 28 19:35:04 2018 +0000

    Add R_AARCH64_P32_MOVW_PREL_* ELF32 relocs
    
    These ilp32 relocations were missing for some reason.
    
    bfd/ChangeLog:
    
    	* elfnn-aarch64.c: Enable MOVW_PREL relocs for ELF32.
    
    include/ChangeLog:
    
    	* elf/aarch64.h (R_AARCH64_P32_MOVW_PREL_G0): Define.
    	(R_AARCH64_P32_MOVW_PREL_G0_NC): Define.
    	(R_AARCH64_P32_MOVW_PREL_G1): Define.
    
    ld/ChangeLog:
    
    	* testsuite/ld-aarch64/aarch64-elf.exp: Add emit-relocs-22 and -23.
    	* testsuite/ld-aarch64/emit-relocs-22.d: New test.
    	* testsuite/ld-aarch64/emit-relocs-22.s: New test.
    	* testsuite/ld-aarch64/emit-relocs-23.d: New test.
    	* testsuite/ld-aarch64/emit-relocs-23.s: New test.

commit bcc5a6eb668e560a0020114b6dc261ef494981ba
Author: Nick Clifton <nickc@redhat.com>
Date:   Fri Jun 14 11:43:53 2019 +0100

    Updated French translation for the opcodes subdirectory.
    
    	* po/fr.po; Updated French translation.

commit 3a3a077c4acaed1ab231a376ff9faf6b71b7a0f1
Author: Alan Modra <amodra@gmail.com>
Date:   Fri Jun 14 10:30:35 2019 +0930

    Regenerate with approved autotools version
    
    bfd/
    	* Makefile.in: Regenerate.
    	* configure: Regenerate.
    binutils/
    	* Makefile.in: Regenerate.
    	* aclocal.m4: Regenerate.
    	* doc/Makefile.in: Regenerate.
    gas/
    	* Makefile.in: Regenerate.
    	* configure: Regenerate.
    	* doc/Makefile.in: Regenerate.
    ld/
    	* Makefile.in: Regenerate.
    	* configure: Regenerate.
    libctf/
    	* configure: Regenerate.

commit e3fa7860f44b85bc89b09998546fcb09624c3c68
Author: Alan Modra <amodra@gmail.com>
Date:   Fri Jun 14 10:23:20 2019 +0930

    Fix alpha testsuite regression
    
    readelf st_other display improved for alpha.
    
    	PR 24662
    	* testsuite/ld-alpha/tlsbin.rd: Update.
    	* testsuite/ld-alpha/tlsbinr.rd: Update.
    	* testsuite/ld-alpha/tlspic.rd: Update.

commit d4b87b1eb6439e1cd01d1a9f90dcf19428db4b17
Author: Alan Modra <amodra@gmail.com>
Date:   Fri Jun 14 10:22:49 2019 +0930

    PowerPC comment fixes
    
    "paddi rt,sym@pcrel" as an abbreviation for "paddi rt,0,sym@pcrel,1"
    is invalid, so replace with "pla rt,sym@pcrel" which is a valid form
    of "pla rt,sym@pcrel(0),1".
    
    	* elf64-ppc.c: Fix comments involving paddi.

commit f8164777cde276244d015a2411f68f63a4bd28aa
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Fri Jun 14 00:00:18 2019 +0000

    Automatic date update in version.in

commit 4c04873103043dc9a1c8d6cdeea1b9b1f545f375
Author: Pedro Alves <palves@redhat.com>
Date:   Thu Jun 13 15:22:44 2019 +0100

    Fix "set integer-command unlimited junk"
    
    With integer commands that support "unlimited", we currently fail to
    notice junk after "unlimited":
    
     (gdb) show print elements
     Limit on string chars or array elements to print is 200.
     (gdb) set print elements unlimited foo
     (gdb) show print elements
     Limit on string chars or array elements to print is unlimited.
    
    This commit fixes that.  After, we get:
    
     (gdb) set print elements unlimited foo
     Junk after "unlimited": foo
    
    gdb/ChangeLog:
    2019-06-13  Pedro Alves  <palves@redhat.com>
    
    	* cli/cli-setshow.c (cli/cli-setshow.c): New parameter
    	'expression'.  When parsing an expression, error out if there's
    	junk after "unlimited".
    	(parse_cli_var_uinteger, parse_cli_var_zuinteger_unlimited)
    	(do_set_command): Adjust calls to is_unlimited_literal.
    
    gdb/testsuite/ChangeLog:
    2019-06-13  Pedro Alves  <palves@redhat.com>
    
    	* gdb.base/settings.exp (test-integer): Test junk after
    	"unlimited".

commit 57a63d27dcc8c7620f2168b370b649c7458c687e
Author: Stafford Horne <shorne@gmail.com>
Date:   Thu Jun 13 21:27:10 2019 +0900

    sim/testsuite/or1k: Add tests for unordered compares
    
    Add tests for 32-bit and 64-bit unordered compare instructions.
    
    sim/testsuite/sim/or1k/ChangeLog:
    
    yyyy-mm-dd  Stafford Horne  <shorne@gmail.com>
    
    	* fpu-unordered.S: New file.
    	* fpu64a32-unordered.S: New file.

commit 3c83b496d4ee7d732b6844c585c3ea9d83ca0f4c
Author: Stafford Horne <shorne@gmail.com>
Date:   Thu Jun 13 21:27:10 2019 +0900

    sim/testsuite/or1k: Add test case for l.adrp instruction
    
    This is a simple test to ensure that the l.adrp instruction can be assembled and
    simulated correctly.
    
    sim/testsuite/sim/or1k/ChangeLog:
    
    yyyy-mm-dd  Stafford Horne  <shorne@gmail.com>
    
    	* adrp.S: New file.

commit b4f9e0034660e15d233627f9c5a732ab023b7daf
Author: Stafford Horne <shorne@gmail.com>
Date:   Thu Jun 13 21:27:10 2019 +0900

    sim/testsuite/or1k: Add test for 64-bit fpu operations
    
    This is a very basic test but it ensure the machine is wired up
    correctly and that the assembler works.
    
    sim/testsuite/sim/or1k/ChangeLog:
    
    yyyy-mm-dd  Stafford Horne  <shorne@gmail.com>
    
    	* fpu64a32.S: New file.

commit f1cc84f59441d59827748e47a5971a12ed1ac283
Author: Stafford Horne <shorne@gmail.com>
Date:   Thu Jun 13 21:27:10 2019 +0900

    sim/common: wire up new unordered comparisons
    
    Define and wire up unordered floating point comparison operations for cgen
    targets.  This patch depends on my posted cgen patches[0].
    
    [0] https://www.sourceware.org/ml/cgen/2019-q2/msg00013.html
    
    sim/common/ChangeLog:
    
    yyyy-mm-dd  Stafford Horne  <shorne@gmail.com>
    
    	* cgen-accfp.c (unorderedsf, unordereddf): New functions.
    	(cgen_init_accurate_fpu): Wire up unorderedsf and unordereddf.
    	* cgen-fpu.h (cgen_fp_ops): Define fields unorderedsf and unordereddf.

commit 688cea90bc0af3a0188695a25f5c4e8db4ef763b
Author: Stafford Horne <shorne@gmail.com>
Date:   Thu Jun 13 21:27:10 2019 +0900

    sim/common: Wire in df/di conversion
    
    Up until now these have not been used in any CGEN targets, add them as
    they are now used by OpenRISC.
    
    sim/common/ChangeLog:
    
    	* cgen-accfp.c (floatdidf, fixdfdi): New functions.
    	(cgen_init_accurate_fpu): Add floatdidf and fixdfdi.

commit 7ccbb4437a29896955a6ff3b0406b1cc2a7f6fe2
Author: Stafford Horne <shorne@gmail.com>
Date:   Thu Jun 13 21:27:09 2019 +0900

    sim/or1k: Regenerate sim
    
    This picks up changes for:
    
     - new orfpx64a32 spec
     - new unordered instructions
     - documentation and symbol updates
    
    sim/ChangeLog:
    
    	* or1k/cpu.c: Regenerate.
    	* or1k/cpu.h: Regenerate.
    	* or1k/decode.c: Regenerate.
    	* or1k/decode.h: Regenerate.
    	* or1k/model.c: Regenerate.
    	* or1k/sem-switch.c: Regenerate.
    	* or1k/sem.c: Regenerate.

commit 66eb1ed3882aa3c54daa2fe24b7479b5ee0538f2
Author: Pedro Alves <palves@redhat.com>
Date:   Thu Jun 13 08:58:54 2019 +0100

    Fix gdb build with -std=gnu++11
    
    The options framework series broken the build with gcc 4.8, or any
    other compiler were we end up forcing -std=gnu++11, causing errors
    like these:
    
     ../../binutils-gdb/gdb/compile/compile.c: In function gdb::option::option_def_group make_compile_options_def_group(compile_options*):
     ../../binutils-gdb/gdb/compile/compile.c:266:44: error: could not convert (const gdb::option::option_def*)(& compile_command_option_defs) from const gdb::option::option_def* to gdb::array_view<const gdb::option::option_def>
        return {compile_command_option_defs, opts};
    					     ^
       CXX    copying.o
     ../../binutils-gdb/gdb/compile/compile.c:267:1: error: control reaches end of non-void function [-Werror=return-type]
      }
      ^
    
    This is a C++11 vs C++14 difference -- C++14 relaxed the rules for
    eliding braces.
    
    This commit fixes it by adding the missing (in C++11) braces.  Tested
    with g++ 4.8.
    
    gdb/ChangeLog:
    2019-06-13  Pedro Alves  <palves@redhat.com>
    
    	* compile/compile.c (make_compile_options_def_group): Add braces
    	around array_view initializer.
    	* thread.c (make_thread_apply_all_options_def_group)
    	(make_thread_apply_all_options_def_group): Likewise.

commit e41d1c49a12aab7db33d7ad66d62f7413b8f0480
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Thu Jun 13 00:00:38 2019 +0000

    Automatic date update in version.in

commit 3345721af145007661f4e7e7f4300470095ba622
Author: Pedro Alves <palves@redhat.com>
Date:   Thu Jun 13 00:06:54 2019 +0100

    NEWS and manual changes for command options changes
    
    gdb/ChangeLog:
    2019-06-13  Pedro Alves  <palves@redhat.com>
    
    	* NEWS (New commands): Mention "maint test-options
    	require-delimiter", "maint test-options unknown-is-error", "maint
    	test-options unknown-is-operand" and "maint show
    	test-options-completion-result".
    	(New command options, command completion): New section.
    	(Completion improvements): New section.
    	Mention that you can abbreviate "unlimited".
    
    gdb/doc/ChangeLog:
    2019-06-13  Pedro Alves  <palves@redhat.com>
    
    	* gdb.texinfo (Command Completion): Mention command options too.
    	(Command Options): New node.
    	(Threads): Add anchors.  Extend descriptions of the "taas" and
    	"tfaas" commands.
    	(Backtrace): Describe new options of the "backtrace" command.  Add
    	anchors.
    	(Frame Apply): Describe new options of the "frame apply" and
    	"faas" commands.  Add anchors.
    	(Data): Describe new options of the "print" command.  Add anchors.
    	(Compiling and Injecting Code): Mention options of the "compile
    	print" command.
    	(Maintenance Commands): Mention "maint test-options" subcommands
    	and the "maint show test-options-completion-result" command.

commit 6206060d9be8da3e701fe0307c6c01390e2b4ae2
Author: Pedro Alves <palves@redhat.com>
Date:   Thu Jun 13 00:06:54 2019 +0100

    Delete parse_flags/parse_flags_qcs
    
    Now that "thread/frame apply" have been converted to the gdb::option
    framework, these functions are no longer used.
    
    For a while, I thought about keeping the unit tests, by making a local
    version of parse_flags_qcs in the unit tests file.  But all that would
    really test that is used by GDB itself, is the validate_flags_qcs
    function.  So in the end, I went through all the unit tests, and
    converted any that wasn't already covered to gdb.base/options.exp
    tests.  And those have all already been added in previous patches.
    
    gdb/ChangeLog:
    2019-06-13  Pedro Alves  <palves@redhat.com>
    
    	* cli/cli-utils.c (parse_flags, parse_flags_qcs): Delete.
    	* cli/cli-utils.h (parse_flags, parse_flags_qcs): Delete.
    	* unittests/cli-utils-selftests.c (test_parse_flags)
    	(test_parse_flags_qcs): Delete.
    	(test_cli_utils): Don't call deleted functions.

commit 6665660a411ead049daa85cac5c629d637e22044
Author: Pedro Alves <palves@redhat.com>
Date:   Thu Jun 13 00:06:54 2019 +0100

    Make "thread apply" use the gdb::option framework
    
    Similarly to the "frame apply" patch, this makes the "thread apply"
    family of commands -- "thread apply TID", "thread apply all" and
    "taas" use the gdb::option framework for '-'-style options.
    
    No new options are added, but there are some user-visible changes:
    
    - Can now abbreviate and complete "-ascending"
    
    - We now have a completer for "thread apply" commands
    
      Can now complete options ("thread apply all -[TAB]"), and also,
      'thread apply all COMMAND[TAB]' now does what you'd expect, by
      making use of the new complete_command routine.
    
    - "help" output tweaked with auto-generated option descriptions:
    
       ~~~
       Usage: thread apply all [OPTION]... COMMAND
       Prints per-inferior thread number and target system's thread id
       followed by COMMAND output.
    
       By default, an error raised during the execution of COMMAND
       aborts "thread apply".
    
       Options:
         -ascending
           Call COMMAND for all threads in ascending order.
           The default is descending order.
    
         -q
           Disables printing the thread information.
    
         -c
           Print any error raised by COMMAND and continue.
    
         -s
           Silently ignore any errors or empty output produced by COMMAND.
       ~~~
    
      The "By default ..." sentence is new as well.
    
    gdb/ChangeLog:
    2019-06-13  Pedro Alves  <palves@redhat.com>
    
    	* thread.c: Include "cli/cli-option.h".
    	(tp_array_compar_ascending): Global.
    	(tp_array_compar): Delete function.
    	(tp_array_compar_ascending, tp_array_compar_descending): New
    	functions.
    	(ascending_option_def, qcs_flag_option_def)
    	(thr_qcs_flags_option_defs)
    	(make_thread_apply_all_options_def_group)
    	(make_thread_apply_options_def_group): New.
    	(thread_apply_all_command): Use gdb::option::process_options.
    	(thread_apply_command_completer)
    	(thread_apply_all_command_completer): New.
    	(thread_apply_command): Use gdb::option::process_options.
    	(_initialize_thread): Delete THREAD_APPLY_FLAGS_HELP, replace it
    	with a new THREAD_APPLY_OPTION_HELP.  Use gdb::option::build_help
    	to generate help text of "thread apply".  Adjust "taas"'s help.
    	* tid-parse.c (tid_range_parser::in_thread_range): New method.
    	* tid-parse.h (tid_range_parser::in_thread_range): New method.
    
    gdb/testsuite/ChangeLog:
    2019-06-13  Pedro Alves  <palves@redhat.com>
    
    	* gdb.base/options.exp (test-thread-apply): New.
    	(top level): Call it.

commit f7e13587eaf1e2d433e21ac0a9e413a98e53652d
Author: Pedro Alves <palves@redhat.com>
Date:   Thu Jun 13 00:06:54 2019 +0100

    "thread apply 1 -- -" vs "frame apply level 0 -- -"
    
    With the following patch, we'll be able to explicitly tell "thread
    apply" where options end, using the "--" delimiter.  A test added by
    that patch caught a pre-existing inconsistency:
    
     (gdb) thread apply 1 -- -
     Invalid thread ID: -
    
     (gdb) frame apply level 0 -- -
     #0  main () at threads.c:55
     Cannot enable the TUI when output is not a terminal
    
    Above, "thread apply" did not try to run the command, while "frame
    apply level" did.  ("-" is a valid TUI command.)
    
    That "-" is past "--", so it should have not been confused with an
    invalid TID, in the "thread apply" case.
    
    That error actually doesn't come from the TID parser, but instead from
    thread_apply_command directly.
    
    So that error/check needs tweaking.  The next question is what to
    tweak it to.
    
    "-" is actually a valid TUI command:
    
     (gdb) help -
     Scroll window backward.
     Usage: - [WIN] [N]
    
    (gdb) frame apply level 0 -- -
    #0  main () at threads.c:55
    Cannot enable the TUI when output is not a terminal
    
    While I don't imagine it being useful to use that "-" command with
    "thread apply" or "frame apply level", the fact is that you can use it
    with "frame apply level", but not with "thread apply".  And since it's
    an actual command, pedantically it seems right to allow it.
    
    That's what this commit does.
    
    Note: simply removing the "isalpha" check regresses
    gdb.multi/tids.exp -- see related commit 3f5b7598805c.
    
    gdb/ChangeLog:
    2019-06-13  Pedro Alves  <palves@redhat.com>
    
    	* thread.c (thread_apply_command): Check for invalid TID with
    	isdigit instead of !isalpha.

commit 5d7071341dd3c01d38fc01398ef8b23b1bd3783c
Author: Pedro Alves <palves@redhat.com>
Date:   Thu Jun 13 00:06:53 2019 +0100

    Make "frame apply" support -OPT options
    
    This adds support for '-'-style options to the "frame apply" family of
    commands -- "frame apply COUNT", "frame apply level", "frame apply
    all", "faas" and "tfaas".
    
    The -q/-c/-s flags were already supported, -past-main/-past-entry is
    new:
    
    ~~~
    (gdb) help frame apply all
    Apply a command to all frames.
    
    Usage: frame apply all [OPTION]... COMMAND
    Prints the frame location information followed by COMMAND output.
    
    By default, an error raised during the execution of COMMAND
    aborts "frame apply".
    
    Options:
      -q
        Disables printing the frame location information.
    
      -c
        Print any error raised by COMMAND and continue.
    
      -s
        Silently ignore any errors or empty output produced by COMMAND.
    
      -past-main [on|off]
        Set whether backtraces should continue past "main".
        Normally the caller of "main" is not of interest, so GDB will terminate
        the backtrace at "main".  Set this if you need to see the rest
        of the stack trace.
    
      -past-entry [on|off]
        Set whether backtraces should continue past the entry point of a program.
        Normally there are no callers beyond the entry point of a program, so GDB
        will terminate the backtrace there.  Set this if you need to see
        the rest of the stack trace.
    ~~~
    
    TAB completion of options is now supported.  Also, TAB completion of
    COMMAND in "frame apply all COMMAND" does the right thing now, making
    use of complete_command, added by the previous patch.  E.g.:
    
     (gdb) thread apply all -ascending frame apply all -past-main print -[TAB]
     -address         -elements        -pretty          -symbol
     -array           -null-stop       -repeats         -union
     -array-indexes   -object          -static-members  -vtbl
     (gdb) thread apply all -ascending frame apply all -past-main print glo[TAB]
     global1         global2
    
    The change to tfaas_command is necessary because otherwise you get
    this:
    
     (gdb) tfaas --
     Unrecognized option at: frame apply all -s --
    
    That's because the above is equivalent to:
    
     (gdb) thread apply all -s frame apply all -s --
    
    and the "--" instructs "thread apply" to consider everything up to
    "--" as its command options.  And from that view, "frame" is an
    invalid option.
    
    The change makes tfaas be equivalent to:
    
     (gdb) thread apply all -s -- frame apply all -s --
    
    gdb/ChangeLog:
    2019-06-13  Pedro Alves  <palves@redhat.com>
    
    	* cli/cli-utils.c (parse_flags_qcs): Use validate_flags_qcs.
    	(validate_flags_qcs): New.
    	* cli/cli-utils.h (struct qcs_flags): Change field types to int.
    	(validate_flags_qcs): Declare.
    	* stack.c (qcs_flag_option_def, fr_qcs_flags_option_defs): New.
    	(make_frame_apply_options_def_group): New.
    	(frame_apply_command_count): Process options with
    	gdb::option::process_options.
    	(frame_apply_completer): New.
    	(frame_apply_level_completer, frame_apply_all_completer)
    	(frame_apply_completer): New.
    	(_initialize_stack): Update help of "frame apply", "frame apply
    	level", "frame apply all" and "faas" to mention supported options
    	and install command completers.
    	* stack.h (frame_apply_all_completer): Declare.
    	* thread.c: Include "stack.h".
    	(tfaas_command): Add "--".
    	(_initialize_thread): Update help "tfaas" to mention supported
    	options and install command completer.
    
    gdb/testsuite/ChangeLog:
    2019-06-13  Pedro Alves  <palves@redhat.com>
    
    	* gdb.base/options.exp (test-frame-apply): New.
    	(top level): Test print commands with different "frame apply"
    	prefixes.

commit 272d4594343349a713f7d8967d90ae2413ecbc30
Author: Pedro Alves <palves@redhat.com>
Date:   Thu Jun 13 00:06:53 2019 +0100

    Introduce complete_nested_command_line
    
    This adds a completion helper routine that makes it possible for a
    command that takes another command as argument, such as "frame apply
    all COMMAND" as "thread apply all COMMAND", to complete on COMMAND,
    and have the completion machinery recurse and complete COMMAND as if
    you tried to complete "(gdb) COMMAND".  I.e., we'll be able to
    complete like this, for example:
    
     (gdb) thread apply all -[TAB]
     -c           -ascending   -q           -s
     (gdb) thread apply all -ascending frame apply all -[TAB]
     -c           -limit       -past-entry  -past-main   -q           -s
     (gdb) thread apply all -ascending frame apply all -past-main print -[TAB]
     -address         -elements        -pretty          -symbol
     -array           -null-stop       -repeats         -union
     -array-indexes   -object          -static-members  -vtbl
     (gdb) thread apply all -ascending frame apply all -past-main print glo[TAB]
     global1         global2
    
    Above, the completer function understands that "thread apply all" is a
    command, and then parses "-ascending" successfully and understand that
    the rest of the string is "thread apply all"'s operand.  And then, the
    process repeats for the "frame apply" command, and on and on.
    
    gdb/ChangeLog:
    2019-06-13  Pedro Alves  <palves@redhat.com>
    
    	* completer.c (complete_nested_command_line): New.
    	(gdb_completion_word_break_characters_throw): Add assertion.
    	* completer.h (complete_nested_command_line): Declare.

commit e2a689da55d3feb7b79a141f69c4049112f59c91
Author: Pedro Alves <palves@redhat.com>
Date:   Thu Jun 13 00:06:53 2019 +0100

    lib/completion-support.exp: Add test_gdb_completion_offers_commands
    
    This adds a procedure to the collection of completion-testing
    routines, that allows checking whether completion offers all commands
    as completion candidates.  This will be used for testing completing
    "frame apply all [TAB]", "thread apply all [TAB]", etc.
    
    gdb/testsuite/ChangeLog:
    2019-06-13  Pedro Alves  <palves@redhat.com>
    
            * lib/completion-support.exp (test_gdb_complete_tab_multiple)
    	(test_gdb_complete_cmd_multiple, test_gdb_complete_multiple): Add
    	'max_completions' parameter and handle it.
    	(test_gdb_completion_offers_commands): New.

commit 90a1ef8762a57f3f57007db2186099c026152034
Author: Pedro Alves <palves@redhat.com>
Date:   Thu Jun 13 00:06:53 2019 +0100

    "backtrace full/no-filters/hide" completer
    
    "backtrace"'s completer now completes on command options:
    
     (gdb) bt -[TAB]
     -entry-values         -full                 -no-filters           -past-main
     -frame-arguments      -hide                 -past-entry           -raw-frame-arguments
    
    But it doesn't know how to complete on qualifiers:
    
     (gdb) bt fu[TAB]
     funlockfile       futimens          futimes.c
     funlockfile.c     futimens.c        futimesat
     futex-internal.h  futimes           futimesat.c
    
    This commit fixes that:
    
     (gdb) bt fu[TAB]ll
     (gdb) bt n[TAB]o-filters
     (gdb) bt h[TAB]ide
    
    I considered teaching the gdb::option framework to handle non-'-'
    options, but decided it wasn't worth it for this special case, and I'd
    rather not make it easy to add new qualifier-like options.
    
    gdb/ChangeLog:
    2019-06-13  Pedro Alves  <palves@redhat.com>
    
    	* stack.c (parse_backtrace_qualifiers): New.
    	(backtrace_command): Use it.
    	(backtrace_command_completer): Complete on qualifiers.
    
    gdb/testsuite/ChangeLog:
    2019-06-13  Pedro Alves  <palves@redhat.com>
    
    	* gdb.base/options.exp (test-backtrace): Test completing qualifiers.

commit d4c16835cad70bd8c04ff30d5d6f40ac65e7f7e1
Author: Pedro Alves <palves@redhat.com>
Date:   Thu Jun 13 00:06:53 2019 +0100

    Make "backtrace" support -OPT options
    
    This adds support for comand options to the "backtrace" command.  We'll get:
    
      (gdb) bt -
      -entry-values         -hide                 -past-main
      -frame-arguments      -no-filters           -raw-frame-arguments
      -full                 -past-entry
    
    ~~~~
    (gdb) help backtrace
    Print backtrace of all stack frames, or innermost COUNT frames.
    Usage: backtrace [OPTION]... [QUALIFIER]... [COUNT | -COUNT]
    
    Options:
      -entry-values no|only|preferred|if-needed|both|compact|default
        Set printing of function arguments at function entry
        GDB can sometimes determine the values of function arguments at entry,
        in addition to their current values.  This option tells GDB whether
        to print the current value, the value at entry (marked as val@entry),
        or both.  Note that one or both of these values may be <optimized out>.
    
      -frame-arguments all|scalars|none
        Set printing of non-scalar frame arguments
    
      -raw-frame-arguments [on|off]
        Set whether to print frame arguments in raw form.
        If set, frame arguments are printed in raw form, bypassing any
        pretty-printers for that value.
    
      -past-main [on|off]
        Set whether backtraces should continue past "main".
        Normally the caller of "main" is not of interest, so GDB will terminate
        the backtrace at "main".  Set this if you need to see the rest
        of the stack trace.
    
      -past-entry [on|off]
        Set whether backtraces should continue past the entry point of a program.
        Normally there are no callers beyond the entry point of a program, so GDB
        will terminate the backtrace there.  Set this if you need to see
        the rest of the stack trace.
    
      -full
        Print values of local variables.
    
      -no-filters
        Prohibit frame filters from executing on a backtrace.
    
      -hide
        Causes Python frame filter elided frames to not be printed.
    
    For backward compatibility, the following qualifiers are supported:
    
       full       - same as -full option.
       no-filters - same as -no-filters option.
       hide       - same as -hide.
    
    With a negative COUNT, print outermost -COUNT frames.
    ~~~~
    
    Implementation wise, this:
    
    - Moves relevant options/settings globals to structures.
    - Tweaks a number of functions to pass down references to such structures.
    - Adds option_def structures describing the options/settings.
    - Makes backtrace_command parse the options, with gdb::option::process_options.
    - Tweaks "backtrace"'s help to describe the new options.
    - Adds testcases.
    
    Note that backtrace is a PROCESS_OPTIONS_UNKNOWN_IS_OPERAND command,
    because of the "-COUNT" argument.
    
    The COUNT/-COUNT argument is currently parsed as an expression.  I
    considered whether it would be prudent here to require "--", but
    concluded that the risk of causing a significant breakage here is much
    lower compared to "print", since printing the expression is not the
    whole point of the "backtrace" command.  Seems OK to me to require
    typing "backtrace -past-main -- -p" if the user truly wants to refer
    to the negative of a backtrace count stored in an inferior variable
    called "p".
    
    gdb/ChangeLog:
    2019-06-13  Pedro Alves  <palves@redhat.com>
    
    	* frame.c: Include "cli/cli-option.h.
    	(user_set_backtrace_options): New.
    	(backtrace_past_main, backtrace_past_entry, backtrace_limit):
    	Delete.
    	(get_prev_frame): Adjust.
    	(boolean_option_def, uinteger_option_def)
    	(set_backtrace_option_defs): New.
    	(_initialize_frame): Adjust and use
    	gdb::option::add_setshow_cmds_for_options to install "set
    	backtrace past-main" and "set backtrace past-entry".
    	* frame.h: Include "cli/cli-option.h".
    	(struct frame_print_options): Forward declare.
    	(print_frame_arguments_all, print_frame_arguments_scalars)
    	(print_frame_arguments_none): Declare.
    	(print_entry_values): Delete declaration.
    	(struct frame_print_options, user_frame_print_options): New.
    	(struct set_backtrace_options): New.
    	(set_backtrace_option_defs, user_set_backtrace_options): Declare.
    	* mi/mi-cmd-stack.c (mi_cmd_stack_list_frames)
    	(mi_cmd_stack_list_locals, mi_cmd_stack_list_args)
    	(mi_cmd_stack_list_variables): Pass down USER_FRAME_PRINT_OPTIONS.
    	(list_args_or_locals): Add frame_print_options parameter.
    	(mi_cmd_stack_info_frame): Pass down USER_FRAME_PRINT_OPTIONS.
    	* python/py-framefilter.c (enumerate_args): Pass down
    	USER_FRAME_PRINT_OPTIONS.
    	* stack.c: Include "cli/cli-option.h".
    	(print_frame_arguments_all, print_frame_arguments_scalars)
    	(print_frame_arguments_none): Declare.
    	(print_raw_frame_arguments, print_entry_values): Delete.
    	(user_frame_print_options): New.
    	(boolean_option_def, enum_option_def, frame_print_option_defs):
    	New.
    	(struct backtrace_cmd_options): New.
    	(bt_flag_option_def): New.
    	(backtrace_command_option_defs): New.
    	(print_stack_frame): Pass down USER_FRAME_PRINT_OPTIONS.
    	(print_frame_arg, read_frame_arg, print_frame_args)
    	(print_frame_info, print_frame): Add frame_print_options parameter
    	and use it.
    	(info_frame_command_core): Pass down USER_FRAME_PRINT_OPTIONS.
    	(backtrace_command_1): Add frame_print_options and
    	backtrace_cmd_options parameters and use them.
    	(make_backtrace_options_def_group): New.
    	(backtrace_command): Process command options with
    	gdb::option::process_options.
    	(backtrace_command_completer): New.
    	(_initialize_stack): Extend "backtrace"'s help to mention
    	supported options.  Install completer for "backtrace".
    	Install some settings commands with add_setshow_cmds_for_options.
    
    gdb/testsuite/ChangeLog:
    2019-06-13  Pedro Alves  <palves@redhat.com>
    
    	* gdb.base/options.exp (test-backtrace): New.
    	(top level): Call it.

commit 2daf894ed0baf72dd3f422b7a71630145568db30
Author: Pedro Alves <palves@redhat.com>
Date:   Thu Jun 13 00:06:53 2019 +0100

    "set print raw frame-arguments" -> "set print raw-frame-arguments"
    
    A following patch will introduce options for the "backtrace" command,
    based on some "set print" and "set backtrace" settings.  There's one
    setting in particular that is a bit annoying if we want to describe
    the backtrace options and the settings commands using the same data
    structures:
    
      "set print raw frame-arguments"
    
    The problem is that space between "raw" and "frame-arguments".
    
    Calling the option
    
      "bt -raw frame-arguments"
    
    would be odd.  So I'm calling the option
    
      "bt -raw-frame-arguments"
    
    instead.
    
    And for consistency, this patch renames the set/show commands to:
    
     "set print raw-frame-arguments"
     "show print raw-frame-arguments"
    
    I.e., dash instead of space.  The old commands are left in place, but
    marked deprecated.
    
    We need to adjust a couple testcases, because the relevant tests use
    gdb_test_no_output and the old commands are no longer silent:
    
      (gdb) set print raw frame-arguments on
      Warning: command 'set print raw frame-arguments' is deprecated.
      Use 'set print raw-frame-arguments'.
    
    gdb/ChangeLog:
    2019-06-13  Pedro Alves  <palves@redhat.com>
    
    	* NEWS (Changed commands): Mention set/show print raw-frame-arguments,
    	and that "set/show print raw frame-arguments" are now deprecated.
    
    	* cli/cli-decode.c (add_setshow_boolean_cmd): Now returns the
    	command.
    	* command.h (add_setshow_boolean_cmd): Return cmd_list_element *.
    	* stack.c (_initialize_stack): Install "set/show print
    	raw-frame-arguments", and deprecate "set/show print raw
    	frame-arguments".
    	* valprint.c (_initialize_valprint): Deprecate "set/show print
    	raw".
    
    gdb/doc/ChangeLog:
    2019-06-13  Pedro Alves  <palves@redhat.com>
    
    	* gdb.texinfo (Print Settings): Document "set/show print
    	raw-frame-arguments" instead of "set/show print raw
    	frame-arguments".
    
    gdb/testsuite/ChangeLog:
    2019-06-13  Pedro Alves  <palves@redhat.com>
    
    	* gdb.guile/scm-frame-args.exp: Use "set print
    	raw-frame-arguments" instead of "set print raw frame-arguments".
    	* gdb.python/py-frame-args.exp: Likewise.

commit e6ed716cd5514c08b9d7c469d185b1aa177dbc22
Author: Pedro Alves <palves@redhat.com>
Date:   Thu Jun 13 00:06:53 2019 +0100

    Migrate rest of compile commands to new options framework
    
    As I was in the neighbourhood, I converted the other "compile"
    subcommands to the new options framework too.  Specifically, "compile
    code" and "compile file".
    
    The user-visible changes are:
    
      - All abbreviations of "-raw" are accepted now, instead of just -r.
        Obviously that means "-ra" is now accepted.
    
      - Option completion now works.
    
      - "compile file" did not have a completer yet, and now it knows to
        complete on filenames.
    
      - You couldn't use "compile file" with a file named "-something".
        You can now, with "compile file -- -something".
    
    gdb/ChangeLog:
    2019-06-13  Pedro Alves  <palves@redhat.com>
    
    	* compile/compile.c (struct compile_options): New.
    	(compile_flag_option_def, compile_command_option_defs)
    	(make_compile_options_def_group): New.
    	(compile_file_command): Handle options with
    	gdb::option::process_options.
    	(compile_file_command_completer): New function.
    	(compile_code_command): Handle options with
    	gdb::option::process_options.
    	(compile_code_command_completer): New function.
    	(_initialize_compiler): Install completers for "compile code" and
    	"compile file".  Mention available options in "compile code" and
    	"compile code"'s help.
    	* completer.c (advance_to_completion_word): New, factored out from
    	...
    	(advance_to_expression_complete_word_point): ... this.
    	(advance_to_filename_complete_word_point): New.
    	* completer.h (advance_to_filename_complete_word_point): New
    	declaration.
    
    gdb/testsuite/ChangeLog:
    2019-06-13  Pedro Alves  <palves@redhat.com>
    
    	* gdb.compile/compile.exp: Adjust expected output to option
    	processing changes.

commit 7d8062de98203eeec70d4439ab460b9ef50a2e0f
Author: Pedro Alves <palves@redhat.com>
Date:   Thu Jun 13 00:06:53 2019 +0100

    Make "print" and "compile print" support -OPT options
    
    This patch adds support for "print -option optval --", etc.
    Likewise for "compile print".
    
    We'll get:
    
    ~~~~~~
    (gdb) help print
    Print value of expression EXP.
    Usage: print [[OPTION]... --] [/FMT] [EXP]
    
    Options:
      -address [on|off]
        Set printing of addresses.
    
      -array [on|off]
        Set pretty formatting of arrays.
    
      -array-indexes [on|off]
        Set printing of array indexes.
    
      -elements NUMBER|unlimited
        Set limit on string chars or array elements to print.
        "unlimited" causes there to be no limit.
    
      -max-depth NUMBER|unlimited
        Set maximum print depth for nested structures, unions and arrays.
        When structures, unions, or arrays are nested beyond this depth then they
        will be replaced with either '{...}' or '(...)' depending on the language.
        Use "unlimited" to print the complete structure.
    
      -null-stop [on|off]
        Set printing of char arrays to stop at first null char.
    
      -object [on|off]
        Set printing of C++ virtual function tables.
    
      -pretty [on|off]
        Set pretty formatting of structures.
    
      -repeats NUMBER|unlimited
        Set threshold for repeated print elements.
        "unlimited" causes all elements to be individually printed.
    
      -static-members [on|off]
        Set printing of C++ static members.
    
      -symbol [on|off]
        Set printing of symbol names when printing pointers.
    
      -union [on|off]
        Set printing of unions interior to structures.
    
      -vtbl [on|off]
        Set printing of C++ virtual function tables.
    
    Note: because this command accepts arbitrary expressions, if you
    specify any command option, you must use a double dash ("--")
    to mark the end of option processing.  E.g.: "print -o -- myobj".
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    I want to highlight the comment above about "--".
    
    At first, I thought we could make the print command parse the options,
    and if the option wasn't recognized, fallback to parsing as an
    expression.  Then, if the user wanted to disambiguate, he'd use the
    "--" option delimiter.  For example, if you had a variable called
    "object" and you wanted to print its negative, you'd have to do:
    
      (gdb) print -- -object
    
    After getting that working, I saw that gdb.pascal/floats.exp
    regressed, in these tests:
    
     gdb_test "print -r" " = -1\\.2(499.*|5|500.*)"
     gdb_test "print -(r)" " = -1.2(499.*|5|500.*)"
     gdb_test "print -(r + s)" " = -3\\.4(499.*|5|500.*)"
    
    It's the first one that I found most concerning.  It regressed because
    "-r" is the abbreviation of "-raw".  I realized then that the behavior
    change was a bit risker than I'd like, considering scripts, wrappers
    around gdb, etc., and even user expectation.  So instead, I made the
    print command _require_ the "--" options delimiter if you want to
    specify any option.  So:
    
      (gdb) print -r
    
    is parsed as an expression, and
    
      (gdb) print -r --
    
    is parsed as an option.
    
    I noticed that that's also what lldb's expr (the equivalent of print)
    does to handle the same problem.
    
    Going back the options themselves, note that:
    
     - you can shorten option names, as long as unambiguous.
     - For boolean options, 0/1 stand for off/on.
     - For boolean options, "true" is implied.
    
    So these are all equivalent:
    
     (gdb) print -object on -static-members off -pretty on -- foo
     (gdb) print -object -static-members off -pretty -- foo
     (gdb) print -object -static-members 0 -pretty -- foo
     (gdb) print -o -st 0 -p -- foo
    
    TAB completion is fully supported:
    
      (gdb) p -[TAB]
      -address         -elements        -pretty          -symbol
      -array           -null-stop       -repeats         -union
      -array-indexes   -object          -static-members  -vtbl
    
    Note that the code is organized such that some of the options and the
    "set/show" commands code is shared.  In particular, the "print"
    options and the corresponding "set print" commands are defined with
    the same structures.  The commands are installed with the
    gdb::option::add_setshow_cmds_for_options function.
    
    gdb/ChangeLog:
    2019-06-13  Pedro Alves  <palves@redhat.com>
    
    	* compile/compile.c: Include "cli/cli-option.h".
    	(compile_print_value): Scope data pointer is now a
    	value_print_options pointer; adjust.
    	(compile_print_command): Process options.  Scope data pointer is
    	now a value_print_options pointer; adjust.
    	(_initialize_compile): Update "compile print"'s help to include
    	supported options.  Install a completer for "compile print".
    	* cp-valprint.c (show_vtblprint, show_objectprint)
    	(show_static_field_print): Delete.
    	(_initialize_cp_valprint): Don't install "set print
    	static-members", "set print vtbl", "set print object" here.
    	* printcmd.c: Include "cli/cli-option.h" and
    	"common/gdb_optional.h".
    	(print_command_parse_format): Rework to fill in a
    	value_print_options instead of a format_data.
    	(print_value): Change parameter type from format_data pointer to
    	value_print_options reference.  Adjust.
    	(print_command_1): Process options.  Adjust to pass down a
    	value_print_options.
    	(print_command_completer): New.
    	(_initialize_printcmd): Install print_command_completer as
    	handle_brkchars completer for the "print" command.  Update
    	"print"'s help to include supported options.
    	* valprint.c: Include "cli/cli-option.h".
    	(show_vtblprint, show_objectprint, show_static_field_print): Moved
    	here from cp-valprint.c.
    	(boolean_option_def, uinteger_option_def)
    	(value_print_option_defs, make_value_print_options_def_group):
    	New.  Use gdb::option::add_setshow_cmds_for_options to install
    	"set print elements", "set print null-stop", "set print repeats",
    	"set print pretty", "set print union", "set print array", "set
    	print address", "set print symbol", "set print array-indexes".
    	* valprint.h: Include <string> and "cli/cli-option.h".
    	(make_value_print_options_def_group): Declare.
    	(print_value): Change parameter type from format_data pointer to
    	value_print_options reference.
    	(print_command_completer): Declare.
    
    gdb/testsuite/ChangeLog:
    2019-06-13  Pedro Alves  <palves@redhat.com>
    
    	* gdb.base/options.exp: Build executable.
    	(test-print): New procedure.
    	(top level): Call it, once for "print" and another for "compile
    	print".

commit 9d0faba9f52b898f0be539bc4d6fbd084772259d
Author: Pedro Alves <palves@redhat.com>
Date:   Thu Jun 13 00:06:53 2019 +0100

    Introduce generic command options framework
    
    This commit adds a generic command options framework, that makes it
    easy enough to add '-'-style options to commands in a uniform way,
    instead of each command implementing option parsing in its own way.
    
    Options are defined in arrays of option_def objects (for option
    definition), and the same options definitions are used for supporting
    TAB completion, and also for generating the relevant help fragment of
    the "help" command.  See the gdb::options::build_help function, which
    returns a string with the result of replacing %OPTIONS% in a template
    string with an auto-generated "help" string fragment for all the
    passed-in options.
    
    Since most options in GDB are in the form of "-OPT", with a single
    dash, this is the format that the framework supports.
    
    I like to think of gdb's "-OPT" as the equivalent to getopt's long
    options format ("--OPT"), and gdb's "/" as the equivalent to getopt's
    short options format.  getopt's short options format allows mixing
    several one-character options, like "ls -als", kind of similar to
    gdb's "x /FMT" and "disassemble /MOD"