tree 61bc78547b9170cef3518757705193879fecf8b1
parent d055e58334a91dcbaee22eb87bcdae85a1f33cd4
author Kazu Hirata <kazu@google.com> 1743132863 -0700
committer GitHub <noreply@github.com> 1743132863 -0700
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJn5hi/CRC1aQ7uu5UhlAAAoB8QAJxrPSj6Iv//nlql9fZFCrFz
 XcYbOJEtFzQY7B6zNb48gL1FR0EN9cyqLSrYGdhRhSyrORevNCxV6CGEQvkBkA2W
 ZVqkTLlDMFeCfNaqUmGPjC2qDs4gl0IZO6mFXbQekeHMiMZ0Ekm/YURZqU0EZmds
 y+6ppjBuO2wW56GMLmc8iyS5RHu5zuQi5x0ogpZfr2Ilkj1UMkLiPoo9tM43ZPsk
 XEly0qWGvBJ0tIfEkZd1UNfl0f4Md4cvBoGADPfF2p/XXxtOta6IipAhP8dlm/3F
 wJJGFtLJuhkXSKCAAtuIG21/Q0dB1EOYxtLZpZcW86qqURzRI2QwNCKwp6LVP08B
 nfkT1HlS0pgtdNPbYOp65U+HGNBK7hZi+b+jlbFEMWpzw9BRsjeQKCMP+pjXr81q
 lNFiF66RWyWtQYxAKnHXv0gldnqmdn7dsW6NQNOQ2fDNio2AncPjJ0wx80dLw45B
 bFdHzcYnFSB4+fjyT3o22ZODDzw/xhV6gN4cg3fPdwwpxIwFWeuyb7vaF68Nq+9C
 ap7zWEBn1a91aCOPUfB1liiAPO9W4dJDBRV4ZzUzfyhHWVUcmsDDr0RxaNt5lBbG
 sMnq9N3bLpQ34soq3yu9pguX3UBVD8aBKcTjHNsyaZG33z03IhMAS3++xVwIIY8h
 HhaY6mkFHhBtwYVl6D9T
 =qS1q
 -----END PGP SIGNATURE-----
 

[AMDGPU] Use MapVector instead of DenseMap (NFC) (#133356)

This patch combines:

  DenseMap<MachineBasicBlock *, bool> ReachableMap;
  SmallVector<MachineBasicBlock *, 4> ReachableOrdered;

into:

  MapVector<MachineBasicBlock *, bool> ReachableMap;

because we add elements to the two data structures in lockstep, and we
care about preserving the insertion order.

As a side benefit, we get to avoid hash lookups at:

  ReachableMap[MBB] = true;