github-actions[bot] wrote:
<!--LLVM IDS CHECK COMMENT-->
:warning: LLVM ABI annotation checker, ids-check found issues in your code.
:warning:
<details>
<summary>
You can test this locally with the following command:
</summary>
``````````bash
git diff origin/main HEAD -- 'llvm/include/llvm/**/*.h'
'llvm/include/llvm-c/**/*.h' 'llvm/include/llvm/Demangle/**/*.h'
Then run idt on the changed files with appropriate --export-macro and
--include-header flags.
``````````
:warning:
The reproduction instructions above might return results for more than one PR
in a stack if you are using a stacked PR workflow. You can limit the results by
changing `origin/main` to the base branch/commit you want to compare against.
:warning:
</details>
<details>
<summary>
View the diff from ids-check here.
</summary>
``````````diff
diff --git a/llvm/include/llvm/Transforms/Utils/CodeExtractor.h
b/llvm/include/llvm/Transforms/Utils/CodeExtractor.h
index 87e611650..abbb0523a 100644
--- a/llvm/include/llvm/Transforms/Utils/CodeExtractor.h
+++ b/llvm/include/llvm/Transforms/Utils/CodeExtractor.h
@@ -85,7 +85,7 @@ public:
/// function to arguments.
/// 3) Add allocas for any scalar outputs, adding all of the outputs' allocas
/// as arguments, and inserting stores to the arguments for any scalars.
- class CodeExtractor {
+ class LLVM_ABI CodeExtractor {
using ValueSet = SetVector<Value *>;
// Various bits of state computed on construction.
@@ -161,7 +161,7 @@ public:
/// replacement block. If ArgsInZeroAddressSpace param is set to true, then
/// the aggregate param pointer of the outlined function is declared in
zero
/// address space.
- LLVM_ABI
+
CodeExtractor(ArrayRef<BasicBlock *> BBs, DominatorTree *DT = nullptr,
bool AggregateArgs = false, BlockFrequencyInfo *BFI =
nullptr,
BranchProbabilityInfo *BPI = nullptr,
@@ -171,13 +171,13 @@ public:
ArrayRef<BasicBlock *> DeallocationBlocks = {},
std::string Suffix = "", bool ArgsInZeroAddressSpace =
false);
- LLVM_ABI virtual ~CodeExtractor() = default;
+ virtual ~CodeExtractor() = default;
/// Perform the extraction, returning the new function.
///
/// Returns zero when called on a CodeExtractor instance where isEligible
/// returns false.
- LLVM_ABI Function *
+ Function *
extractCodeRegion(const CodeExtractorAnalysisCache &CEAC);
/// Perform the extraction, returning the new function and providing an
@@ -191,13 +191,13 @@ public:
/// newly outlined function.
/// \returns zero when called on a CodeExtractor instance where isEligible
/// returns false.
- LLVM_ABI Function *extractCodeRegion(const CodeExtractorAnalysisCache
&CEAC,
+ Function *extractCodeRegion(const CodeExtractorAnalysisCache &CEAC,
ValueSet &Inputs, ValueSet &Outputs);
/// Verify that assumption cache isn't stale after a region is extracted.
/// Returns true when verifier finds errors. AssumptionCache is passed as
/// parameter to make this function stateless.
- LLVM_ABI static bool verifyAssumptionCache(const Function &OldFunc,
+ static bool verifyAssumptionCache(const Function &OldFunc,
const Function &NewFunc,
AssumptionCache *AC);
@@ -208,7 +208,7 @@ public:
///
/// Checks that varargs handling (with vastart and vaend) is only done in
/// the outlined blocks.
- LLVM_ABI bool isEligible() const;
+ bool isEligible() const;
/// Compute the set of input values and output values for the code.
///
@@ -218,7 +218,7 @@ public:
/// a code sequence, that sequence is modified, including changing these
/// sets, before extraction occurs. These modifications won't have any
/// significant impact on the cost however.
- LLVM_ABI void findInputsOutputs(ValueSet &Inputs, ValueSet &Outputs,
+ void findInputsOutputs(ValueSet &Inputs, ValueSet &Outputs,
const ValueSet &Allocas,
bool CollectGlobalInputs = false) const;
@@ -226,7 +226,7 @@ public:
/// region.
///
/// Returns true if it is safe to do the code motion.
- LLVM_ABI bool
+ bool
isLegalToShrinkwrapLifetimeMarkers(const CodeExtractorAnalysisCache &CEAC,
Instruction *AllocaAddr) const;
@@ -238,7 +238,7 @@ public:
/// are used by the lifetime markers are also candidates for shrink-
/// wrapping. The instructions that need to be sunk are collected in
/// 'Allocas'.
- LLVM_ABI void findAllocas(const CodeExtractorAnalysisCache &CEAC,
+ void findAllocas(const CodeExtractorAnalysisCache &CEAC,
ValueSet &SinkCands, ValueSet &HoistCands,
BasicBlock *&ExitBlock) const;
@@ -250,23 +250,23 @@ public:
/// inside the region that is the predecessor of CommonExitBlock, that
block
/// will be returned. Otherwise CommonExitBlock will be split and the
/// original block will be added to the outline region.
- LLVM_ABI BasicBlock *
+ BasicBlock *
findOrCreateBlockForHoisting(BasicBlock *CommonExitBlock);
/// Exclude a value from aggregate argument passing when extracting a code
/// region, passing it instead as a scalar.
- LLVM_ABI void excludeArgFromAggregate(Value *Arg);
+ void excludeArgFromAggregate(Value *Arg);
protected:
/// Allocate an intermediate variable at the specified point.
- LLVM_ABI virtual Instruction *
+ virtual Instruction *
allocateVar(BasicBlock *BB, BasicBlock::iterator AllocIP, Type *VarType,
const Twine &Name = Twine(""),
AddrSpaceCastInst **CastedAlloc = nullptr);
/// Deallocate a previously-allocated intermediate variable at the
specified
/// point.
- LLVM_ABI virtual Instruction *deallocateVar(BasicBlock *BB,
+ virtual Instruction *deallocateVar(BasicBlock *BB,
BasicBlock::iterator DeallocIP,
Value *Var, Type *VarType);
``````````
</details>
https://github.com/llvm/llvm-project/pull/154752
_______________________________________________
llvm-branch-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits