[PATCH] D53554: [Argument Promotion] Only promote args when function attributes are compatible

Chandler Carruth via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Nov 13 16:46:52 PST 2018


chandlerc requested changes to this revision.
chandlerc added inline comments.
This revision now requires changes to proceed.


================
Comment at: include/llvm/Analysis/TargetTransformInfoImpl.h:533
+    return areInlineCompatible(Caller, Callee) &&
+           AttributeFuncs::areInlineCompatible(*Caller, *Callee);
+  }
----------------
While this may be sufficient, it isn't necessary and seems a but of a conflation...

I'd much rather this be sunk into the codegen layers basic TTI impl so that targets can override it cleanly.

Also, I don't think byval and normal arguments have the same constraints.

Also, I'd really like to ensure that basic integers that are valid to promote across subtargets still get promoted even when inlining wouldn't be valid.


Repository:
  rL LLVM

https://reviews.llvm.org/D53554





More information about the llvm-commits mailing list