sarnex wrote: > Is it possible that we could just skip generating the builtin IDs at all for > the aux target? Or does that break something.
Seems like we can't, I tried this: ``` diff --git a/clang/lib/Basic/Builtins.cpp b/clang/lib/Basic/Builtins.cpp index c6e54b89e848..904c64f05c36 100644 --- a/clang/lib/Basic/Builtins.cpp +++ b/clang/lib/Basic/Builtins.cpp @@ -64,8 +64,8 @@ void Builtin::Context::InitializeTarget(const TargetInfo &Target, const TargetInfo *AuxTarget) { assert(TSRecords.empty() && "Already initialized target?"); TSRecords = Target.getTargetBuiltins(); - if (AuxTarget) - AuxTSRecords = AuxTarget->getTargetBuiltins(); + // if (AuxTarget) + // AuxTSRecords = AuxTarget->getTargetBuiltins(); } ``` and got these failures ``` Failed Tests (3): Clang :: CodeGenHipStdPar/unsupported-builtins.cpp Clang :: Headers/__cpuidex_conflict.c Clang :: Sema/builtin-spirv-amdgcn-atomic-inc-dec-failure.cpp ``` and then reverted that and tried this ``` diff --git a/clang/lib/Basic/Builtins.cpp b/clang/lib/Basic/Builtins.cpp index c6e54b89e848..34e1d0aa4b68 100644 --- a/clang/lib/Basic/Builtins.cpp +++ b/clang/lib/Basic/Builtins.cpp @@ -153,9 +153,9 @@ void Builtin::Context::initializeBuiltins(IdentifierTable &Table, Table.get(TSRecords[i].Name).setBuiltinID(i + Builtin::FirstTSBuiltin); // Step #3: Register target-specific builtins for AuxTarget. - for (unsigned i = 0, e = AuxTSRecords.size(); i != e; ++i) - Table.get(AuxTSRecords[i].Name) - .setBuiltinID(i + Builtin::FirstTSBuiltin + TSRecords.size()); + //for (unsigned i = 0, e = AuxTSRecords.size(); i != e; ++i) + // Table.get(AuxTSRecords[i].Name) + // .setBuiltinID(i + Builtin::FirstTSBuiltin + TSRecords.size()); // Step #4: Unregister any builtins specified by -fno-builtin-foo. for (llvm::StringRef Name : LangOpts.NoBuiltinFuncs) { ``` and got it broke the same tests ``` Failed Tests (3): Clang :: CodeGenHipStdPar/unsupported-builtins.cpp Clang :: Headers/__cpuidex_conflict.c Clang :: Sema/builtin-spirv-amdgcn-atomic-inc-dec-failure.cpp ``` https://github.com/llvm/llvm-project/pull/121839 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits