[PATCH] D84345: [AMDGPU] Set the default globals address space to 1

Alexander Richardson via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 23 03:20:06 PDT 2020


arichardson marked an inline comment as done.
arichardson added inline comments.


================
Comment at: llvm/lib/IR/AutoUpgrade.cpp:4297
+  // address space of 1.
+  if (T.isAMDGPU() && !DL.contains("-G") && !DL.startswith("G")) {
+    return DL.empty() ? std::string("G1") : (DL + "-G1").str();
----------------
akhuang wrote:
> arichardson wrote:
> > arsenm wrote:
> > > I would expect datalayout upgrades to work by parsing the old string, and checking the field values inside. I guess directly checking the string isn't a new problem here
> > I agree that would be less error prone. I wonder if there are cases where the old string may fail to parse so you have to do the textual upgrade first. I'm happy to make this change.
> > 
> > @akhuang is there a reason you used string parsing in D67631? Any objections to changing the code to parse the datalayout and add missing attributes?
> I don't think so; parsing the datalayout sounds better to me too. 
I just looked into parsing the DataLayout instead. Unfortunately the resulting code is more complicated since there are no setters in DataLayout and no way to create a normalized representation.
There's also no way to differentiate between no `-G ` passed and `-G0` so  something like `e-p:64:64-G0` will be converted to `e-p:64:64-G0-G1`



Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D84345/new/

https://reviews.llvm.org/D84345





More information about the llvm-commits mailing list