One must pick the same name as the one referenced in CodeGenFunction when
generating .inline version of an inline builtin, otherwise they are not
correctly replaced.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
clang/test/CodeGen/asm-label-inline-builtins.c | ||
---|---|---|
19–21 | please be consistent wrt. the trailing open paren (. Let's add a check for the declaration of @vprintf.inline? |
clang/lib/CodeGen/CGExpr.cpp | ||
---|---|---|
5056–5057 | I think you could use: if (auto *A = FD->getAttr<AsmLabelAttr>()) FDInlineName = A->getLabel().str(); else ... |
clang/lib/CodeGen/CGExpr.cpp | ||
---|---|---|
5057 | This is throwing away the ".inline" suffix? Is that intentional? |
Comment Actions
Please make sure to mark comments as "Done" in phab to help reviewers skip over stale feedback.
clang/lib/CodeGen/CGExpr.cpp | ||
---|---|---|
5055–5059 | Might be able to DRY this up slightly more: auto *A = FD->getAttr<AsmLabelAttr>(); StringRef Ident = A ? A->getLabel() : FD->getName(); std::string FDInlineName = (Ident + ".inline").str(); |
I think you could use: