[PATCH] D134548: [NVPTX] Fix a segfault for bitcasted calls with byval params

Artem Belevich via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 23 11:24:44 PDT 2022


tra accepted this revision.
tra added a comment.
This revision is now accepted and ready to land.

LGTM with few nits.



================
Comment at: llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp:1429
       // Check if we have call alignment metadata
       if (getAlign(*CI, Idx, Alignment))
         return Align(Alignment);
----------------
Would we ever have an instruction other than `Call` which would also carry explicit alignment metadata? 


================
Comment at: llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp:4329
   // must use default ABI alignment as external users rely on it.
-  if (!F->hasLocalLinkage())
+  if (!F || !F->hasLocalLinkage())
     return Align(ABITypeAlign);
----------------
Nit: `if (!(F && F->hasLocalLinkage()))` would be a bit easier to understand, IMO. 



================
Comment at: llvm/lib/Target/NVPTX/NVPTXUtilities.cpp:328
+Function *getMaybeBitcastedCallee(const CallBase *CB) {
+  if (Function *DirectCallee = CB->getCalledFunction()) {
+    return DirectCallee;
----------------
Style nit: no braces for single-statement if bodies. https://llvm.org/docs/CodingStandards.html#don-t-use-braces-on-simple-single-statement-bodies-of-if-else-loop-statements


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D134548



More information about the llvm-commits mailing list