Skip to content

ci: Enable autodiff tests on x86_64 linux#157776

Draft
sgasho wants to merge 5 commits into
rust-lang:mainfrom
sgasho:linux_autodiff_tests_ci
Draft

ci: Enable autodiff tests on x86_64 linux#157776
sgasho wants to merge 5 commits into
rust-lang:mainfrom
sgasho:linux_autodiff_tests_ci

Conversation

@sgasho

@sgasho sgasho commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

Maybe we should move this to auto jobs
Testing on stage2 would be better but I want to see if the job works properly for the first run anyway.

@rustbot rustbot added A-CI Area: Our Github Actions CI A-testsuite Area: The testsuite used to check the correctness of rustc S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue. labels Jun 11, 2026
@rust-log-analyzer

This comment has been minimized.

@sgasho

sgasho commented Jun 12, 2026

Copy link
Copy Markdown
Contributor Author

expected behaviour.

  • build succeeded
  • some tests failed
スクリーンショット 2026-06-12 21 40 31

@sgasho sgasho force-pushed the linux_autodiff_tests_ci branch from a5999ca to 7da709a Compare June 12, 2026 12:41
@sgasho

sgasho commented Jun 12, 2026

Copy link
Copy Markdown
Contributor Author

I executed git pull --rebase origin main to see if build steps in autodiff job finish successfully after enzyme submodule update

#157716

@rust-log-analyzer

This comment has been minimized.

@sgasho

sgasho commented Jun 12, 2026

Copy link
Copy Markdown
Contributor Author

I executed git pull --rebase origin main to see if build steps in autodiff job finish successfully after enzyme submodule update

No problem found

@sgasho sgasho force-pushed the linux_autodiff_tests_ci branch from 851ebe4 to 33566ea Compare June 30, 2026 14:07
@rust-log-analyzer

This comment has been minimized.

@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

The job x86_64-gnu-autodiff failed! Check out the build log: (web) (plain enhanced) (plain)

Click to see the possible cause of the failure (guessed by this bot)
[0/2] Re-checking globbed directories...
[1/40] Building CXX object tools/enzyme-tblgen/CMakeFiles/enzyme-tblgen.dir/caching.cpp.o
[2/40] Building CXX object tools/enzyme-tblgen/CMakeFiles/enzyme-tblgen.dir/datastructures.cpp.o
[3/40] Building CXX object tools/enzyme-tblgen/CMakeFiles/enzyme-tblgen.dir/blas-tblgen.cpp.o
/checkout/src/tools/enzyme/enzyme/tools/enzyme-tblgen/blas-tblgen.cpp: In function 'llvm::SmallString<80> ValueType_helper(const TGPattern&, ssize_t, const llvm::DagInit*)':
/checkout/src/tools/enzyme/enzyme/tools/enzyme-tblgen/blas-tblgen.cpp:810:15: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'ssize_t' {aka 'long int'} [-Wsign-compare]
  810 |       if (pos == actPos || actPos == -1) {
      |           ~~~~^~~~~~~~~
/checkout/src/tools/enzyme/enzyme/tools/enzyme-tblgen/blas-tblgen.cpp:822:69: warning: comparison of integer expressions of different signedness: 'ssize_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  822 |           (!ruleDag || hasAdjoint(pattern, ruleDag, name) || actPos == pos)
      |                                                              ~~~~~~~^~~~~~
/checkout/src/tools/enzyme/enzyme/tools/enzyme-tblgen/blas-tblgen.cpp:826:15: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'ssize_t' {aka 'long int'} [-Wsign-compare]
  826 |       if (pos == actPos || actPos == -1) {
      |           ~~~~^~~~~~~~~
/checkout/src/tools/enzyme/enzyme/tools/enzyme-tblgen/blas-tblgen.cpp:840:68: warning: comparison of integer expressions of different signedness: 'ssize_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  840 |       if (!ruleDag || hasAdjoint(pattern, ruleDag, name) || actPos == pos) {
      |                                                             ~~~~~~~^~~~~~
[4/40] Building CXX object tools/enzyme-tblgen/CMakeFiles/enzyme-tblgen.dir/enzyme-tblgen.cpp.o
/checkout/src/tools/enzyme/enzyme/tools/enzyme-tblgen/enzyme-tblgen.cpp: In function 'bool handle(const llvm::Twine&, const llvm::Twine&, llvm::raw_ostream&, const llvm::Record*, const llvm::Init*, llvm::StringRef, VariableSetting&, bool, llvm::ArrayRef<unsigned int>, llvm::StringRef, bool, ActionType)':
/checkout/src/tools/enzyme/enzyme/tools/enzyme-tblgen/enzyme-tblgen.cpp:385:30: warning: 'llvm::ArrayRef<const llvm::Init*> llvm::ListInit::getValues() const' is deprecated: Use getElements instead [-Wdeprecated-declarations]
  385 |       if (indicesP->getValues().size() == 1 &&
      |           ~~~~~~~~~~~~~~~~~~~^~
In file included from /checkout/src/tools/enzyme/enzyme/tools/enzyme-tblgen/enzyme-tblgen.cpp:27:
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/TableGen/Record.h:780:26: note: declared here
  780 |   ArrayRef<const Init *> getValues() const { return getElements(); }
      |                          ^~~~~~~~~
/checkout/src/tools/enzyme/enzyme/tools/enzyme-tblgen/enzyme-tblgen.cpp:386:44: warning: 'llvm::ArrayRef<const llvm::Init*> llvm::ListInit::getValues() const' is deprecated: Use getElements instead [-Wdeprecated-declarations]
  386 |           cast<IntInit>(indicesP->getValues()[0])->getValue() == -1) {
      |                         ~~~~~~~~~~~~~~~~~~~^~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/TableGen/Record.h:780:26: note: declared here
  780 |   ArrayRef<const Init *> getValues() const { return getElements(); }
      |                          ^~~~~~~~~
/checkout/src/tools/enzyme/enzyme/tools/enzyme-tblgen/enzyme-tblgen.cpp:389:44: warning: 'llvm::ArrayRef<const llvm::Init*> llvm::ListInit::getValues() const' is deprecated: Use getElements instead [-Wdeprecated-declarations]
  389 |         for (auto res : indicesP->getValues()) {
      |                         ~~~~~~~~~~~~~~~~~~~^~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/TableGen/Record.h:780:26: note: declared here
  780 |   ArrayRef<const Init *> getValues() const { return getElements(); }
      |                          ^~~~~~~~~
/checkout/src/tools/enzyme/enzyme/tools/enzyme-tblgen/enzyme-tblgen.cpp: In function 'void emitDerivatives(const llvm::RecordKeeper&, llvm::raw_ostream&, ActionType)':
/checkout/src/tools/enzyme/enzyme/tools/enzyme-tblgen/enzyme-tblgen.cpp:2050:57: warning: 'llvm::ArrayRef<const llvm::Init*> llvm::ListInit::getValues() const' is deprecated: Use getElements instead [-Wdeprecated-declarations]
 2050 |         StringRef name = cast<StringInit>(lst->getValues()[0])->getValue();
      |                                           ~~~~~~~~~~~~~~^~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/TableGen/Record.h:780:26: note: declared here
  780 |   ArrayRef<const Init *> getValues() const { return getElements(); }
      |                          ^~~~~~~~~
/checkout/src/tools/enzyme/enzyme/tools/enzyme-tblgen/enzyme-tblgen.cpp:2052:53: warning: 'llvm::ArrayRef<const llvm::Init*> llvm::ListInit::getValues() const' is deprecated: Use getElements instead [-Wdeprecated-declarations]
 2052 |           auto min = cast<StringInit>(lst->getValues()[1])->getValue();
      |                                       ~~~~~~~~~~~~~~^~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/TableGen/Record.h:780:26: note: declared here
  780 |   ArrayRef<const Init *> getValues() const { return getElements(); }
      |                          ^~~~~~~~~
/checkout/src/tools/enzyme/enzyme/tools/enzyme-tblgen/enzyme-tblgen.cpp:2058:55: warning: 'llvm::ArrayRef<const llvm::Init*> llvm::ListInit::getValues() const' is deprecated: Use getElements instead [-Wdeprecated-declarations]
 2058 |             auto max = cast<StringInit>(lst->getValues()[2])->getValue();
      |                                         ~~~~~~~~~~~~~~^~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/TableGen/Record.h:780:26: note: declared here
  780 |   ArrayRef<const Init *> getValues() const { return getElements(); }
      |                          ^~~~~~~~~
/checkout/src/tools/enzyme/enzyme/tools/enzyme-tblgen/enzyme-tblgen.cpp: In function 'void emitDiffUse(const llvm::RecordKeeper&, llvm::raw_ostream&, ActionType)':
/checkout/src/tools/enzyme/enzyme/tools/enzyme-tblgen/enzyme-tblgen.cpp:2942:57: warning: 'llvm::ArrayRef<const llvm::Init*> llvm::ListInit::getValues() const' is deprecated: Use getElements instead [-Wdeprecated-declarations]
 2942 |         StringRef name = cast<StringInit>(lst->getValues()[0])->getValue();
      |                                           ~~~~~~~~~~~~~~^~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/TableGen/Record.h:780:26: note: declared here
  780 |   ArrayRef<const Init *> getValues() const { return getElements(); }
      |                          ^~~~~~~~~
/checkout/src/tools/enzyme/enzyme/tools/enzyme-tblgen/enzyme-tblgen.cpp:2944:53: warning: 'llvm::ArrayRef<const llvm::Init*> llvm::ListInit::getValues() const' is deprecated: Use getElements instead [-Wdeprecated-declarations]
 2944 |           auto min = cast<StringInit>(lst->getValues()[1])->getValue();
      |                                       ~~~~~~~~~~~~~~^~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/TableGen/Record.h:780:26: note: declared here
  780 |   ArrayRef<const Init *> getValues() const { return getElements(); }
      |                          ^~~~~~~~~
/checkout/src/tools/enzyme/enzyme/tools/enzyme-tblgen/enzyme-tblgen.cpp:2953:55: warning: 'llvm::ArrayRef<const llvm::Init*> llvm::ListInit::getValues() const' is deprecated: Use getElements instead [-Wdeprecated-declarations]
 2953 |             auto max = cast<StringInit>(lst->getValues()[2])->getValue();
      |                                         ~~~~~~~~~~~~~~^~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/TableGen/Record.h:780:26: note: declared here
  780 |   ArrayRef<const Init *> getValues() const { return getElements(); }
      |                          ^~~~~~~~~
In file included from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/ADT/SmallString.h:18,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/ADT/StringExtras.h:19,
                 from /checkout/src/tools/enzyme/enzyme/tools/enzyme-tblgen/enzyme-tblgen.cpp:15:
In constructor 'constexpr llvm::StringRef::StringRef(const char*)',
    inlined from 'void emitDiffUse(const llvm::RecordKeeper&, llvm::raw_ostream&, ActionType)' at /checkout/src/tools/enzyme/enzyme/tools/enzyme-tblgen/enzyme-tblgen.cpp:2891:63:
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/ADT/StringRef.h:93:69: warning: 'patternNames' may be used uninitialized [-Wmaybe-uninitialized]
   93 |         : StringRef(Str ? std::string_view(Str) : std::string_view()) {}
      |                                                                     ^
/checkout/src/tools/enzyme/enzyme/tools/enzyme-tblgen/enzyme-tblgen.cpp: In function 'void emitDiffUse(const llvm::RecordKeeper&, llvm::raw_ostream&, ActionType)':
/checkout/src/tools/enzyme/enzyme/tools/enzyme-tblgen/enzyme-tblgen.cpp:2869:15: note: 'patternNames' was declared here
 2869 |   const char *patternNames;
      |               ^~~~~~~~~~~~
---
/checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/../Utils.h:2556:13: warning: 'bool hasTerminator(llvm::BasicBlock*)' defined but not used [-Wunused-function]
 2556 | static bool hasTerminator(llvm::BasicBlock *BB) {
      |             ^~~~~~~~~~~~~
[15/40] Building CXX object Enzyme/CMakeFiles/Enzyme-22.dir/CacheUtility.cpp.o
/checkout/src/tools/enzyme/enzyme/Enzyme/CacheUtility.cpp: In function 'std::pair<llvm::PHINode*, llvm::Instruction*> FindCanonicalIV(llvm::Loop*, llvm::Type*)':
/checkout/src/tools/enzyme/enzyme/Enzyme/CacheUtility.cpp:198:22: warning: 'void llvm::Instruction::moveBefore(llvm::Instruction*)' is deprecated: Use iterators as instruction positions [-Wdeprecated-declarations]
  198 |       Inc->moveBefore(getFirstNonPHIOrDbg(Header));
      |       ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DebugProgramInstruction.h:55,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:23,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/Function.h:27,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/InstrTypes.h:28,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/ConstantRange.h:35,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/Analysis/ScalarEvolution.h:32,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/CacheUtility.h:33,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/CacheUtility.cpp:27:
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/Instruction.h:246:37: note: declared here
  246 |                            "") void moveBefore(Instruction *MovePos);
      |                                     ^~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/CacheUtility.cpp: In function 'void RemoveRedundantIVs(llvm::BasicBlock*, llvm::PHINode*, llvm::Instruction*, MustExitScalarEvolution&, llvm::function_ref<void(llvm::Instruction*, llvm::Value*)>, llvm::function_ref<void(llvm::Instruction*)>)':
/checkout/src/tools/enzyme/enzyme/Enzyme/CacheUtility.cpp:259:68: warning: 'llvm::Instruction* llvm::BasicBlock::getFirstNonPHI()' is deprecated: Use iterators as instruction positions instead [-Wdeprecated-declarations]
  259 |         Exp.expandCodeFor(S, Tmp->getType(), Header->getFirstNonPHI());
      |                                              ~~~~~~~~~~~~~~~~~~~~~~^~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:284:61: note: declared here
  284 |                            "getFirstNonPHIIt") Instruction *getFirstNonPHI();
      |                                                             ^~~~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/CacheUtility.cpp:286:64: warning: 'llvm::Instruction* llvm::BasicBlock::getFirstNonPHI()' is deprecated: Use iterators as instruction positions instead [-Wdeprecated-declarations]
  286 |   Increment->moveAfter(CanonicalIV->getParent()->getFirstNonPHI());
      |                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:284:61: note: declared here
  284 |                            "getFirstNonPHIIt") Instruction *getFirstNonPHI();
      |                                                             ^~~~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/CacheUtility.cpp: In function 'void CanonicalizeLatches(const llvm::Loop*, llvm::BasicBlock*, llvm::BasicBlock*, llvm::PHINode*, MustExitScalarEvolution&, CacheUtility&, llvm::Instruction*, llvm::ArrayRef<llvm::BasicBlock*>)':
/checkout/src/tools/enzyme/enzyme/Enzyme/CacheUtility.cpp:400:66: warning: 'llvm::Instruction* llvm::BasicBlock::getFirstNonPHI()' is deprecated: Use iterators as instruction positions instead [-Wdeprecated-declarations]
  400 |     Increment->moveAfter(CanonicalIV->getParent()->getFirstNonPHI());
      |                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:284:61: note: declared here
  284 |                            "getFirstNonPHIIt") Instruction *getFirstNonPHI();
      |                                                             ^~~~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/CacheUtility.cpp: In member function 'void CacheUtility::storeInstructionInCache(LimitContext, llvm::Instruction*, llvm::AllocaInst*, llvm::MDNode*)':
/checkout/src/tools/enzyme/enzyme/Enzyme/CacheUtility.cpp:1489:69: warning: 'llvm::Instruction* llvm::BasicBlock::getFirstNonPHI()' is deprecated: Use iterators as instruction positions instead [-Wdeprecated-declarations]
 1489 |                                 ? (inst->getParent()->getFirstNonPHI())
      |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:284:61: note: declared here
  284 |                            "getFirstNonPHIIt") Instruction *getFirstNonPHI();
      |                                                             ^~~~~~~~~~~~~~
In file included from /checkout/src/tools/enzyme/enzyme/Enzyme/FunctionUtils.h:43,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/CacheUtility.h:52:
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.h: At global scope:
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.h:2556:13: warning: 'bool hasTerminator(llvm::BasicBlock*)' defined but not used [-Wunused-function]
---
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/CApi.cpp:56:
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/Analysis/CFG.h:142:1: warning: multi-line comment [-Wcomment]
  142 | ///  /   \
      | ^
/checkout/src/tools/enzyme/enzyme/Enzyme/CApi.cpp: In function 'void EnzymeMoveBefore(LLVMValueRef, LLVMValueRef, LLVMBuilderRef)':
/checkout/src/tools/enzyme/enzyme/Enzyme/CApi.cpp:1011:19: warning: 'void llvm::Instruction::moveBefore(llvm::Instruction*)' is deprecated: Use iterators as instruction positions [-Wdeprecated-declarations]
 1011 |     I1->moveBefore(I2);
      |     ~~~~~~~~~~~~~~^~~~
In file included from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DebugProgramInstruction.h:55,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:23,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/Function.h:27,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/Analysis/AliasAnalysis.h:43,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/Utils.h:32,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/CApi.cpp:25:
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/Instruction.h:246:37: note: declared here
  246 |                            "") void moveBefore(Instruction *MovePos);
      |                                     ^~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/CApi.cpp: At global scope:
/checkout/src/tools/enzyme/enzyme/Enzyme/CApi.cpp:1147:19: warning: 'ID' initialized and declared 'extern'
 1147 | extern "C++" char MyAttributorLegacyPass::ID = 0;
      |                   ^~~~~~~~~~~~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.h:2556:13: warning: 'bool hasTerminator(llvm::BasicBlock*)' defined but not used [-Wunused-function]
 2556 | static bool hasTerminator(llvm::BasicBlock *BB) {
      |             ^~~~~~~~~~~~~
[18/40] Building CXX object Enzyme/CMakeFiles/Enzyme-22.dir/DiffeGradientUtils.cpp.o
/checkout/src/tools/enzyme/enzyme/Enzyme/DiffeGradientUtils.cpp: In lambda function:
/checkout/src/tools/enzyme/enzyme/Enzyme/DiffeGradientUtils.cpp:1017:34: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 1017 |             ptr, PointerType::get(
      |                  ~~~~~~~~~~~~~~~~^
 1018 |                      i8, cast<PointerType>(ptr->getType())->getAddressSpace()));
      |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/InstrTypes.h:26,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/ConstantRange.h:35,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/Analysis/ScalarEvolution.h:32,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/GradientUtils.h:39,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/DiffeGradientUtils.h:31,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/DiffeGradientUtils.cpp:30:
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/DiffeGradientUtils.cpp:1024:34: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 1024 |             ptr, PointerType::get(
      |                  ~~~~~~~~~~~~~~~~^
 1025 |                      addingType,
      |                      ~~~~~~~~~~~  
 1026 |                      cast<PointerType>(ptr->getType())->getAddressSpace()));
      |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/DiffeGradientUtils.cpp: In member function 'void DiffeGradientUtils::addToInvertedPtrDiffe(llvm::Instruction*, llvm::Value*, llvm::Type*, unsigned int, unsigned int, llvm::Value*, llvm::Value*, llvm::IRBuilder<>&, llvm::MaybeAlign, llvm::Value*)':
/checkout/src/tools/enzyme/enzyme/Enzyme/DiffeGradientUtils.cpp:1031:25: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 1031 |         PointerType::get(
      |         ~~~~~~~~~~~~~~~~^
 1032 |             addingType,
      |             ~~~~~~~~~~~  
 1033 |             isa<PointerType>(origptr->getType())
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1034 |                 ? cast<PointerType>(origptr->getType())->getAddressSpace()
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1035 |                 : 0),
      |                 ~~~~     
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/DiffeGradientUtils.cpp: In lambda function:
/checkout/src/tools/enzyme/enzyme/Enzyme/DiffeGradientUtils.cpp:1119:61: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 1119 |                                             PointerType::get(addingType, 1));
      |                                             ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/DiffeGradientUtils.cpp: In member function 'void DiffeGradientUtils::addToInvertedPtrDiffe(llvm::Instruction*, llvm::Value*, llvm::Type*, unsigned int, unsigned int, llvm::Value*, llvm::Value*, llvm::IRBuilder<>&, llvm::MaybeAlign, llvm::Value*)':
/checkout/src/tools/enzyme/enzyme/Enzyme/DiffeGradientUtils.cpp:1122:42: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 1122 |           applyChainRule(PointerType::get(addingType, 1), BuilderM, rule, ptr);
      |                          ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/DiffeGradientUtils.cpp: In member function 'void DiffeGradientUtils::addToInvertedPtrDiffe(llvm::Instruction*, llvm::Value*, TypeTree, unsigned int, llvm::Value*, llvm::Value*, llvm::IRBuilder<>&, llvm::MaybeAlign, llvm::Value*)':
/checkout/src/tools/enzyme/enzyme/Enzyme/DiffeGradientUtils.cpp:1344:33: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 1344 |                 PointerType::get(
      |                 ~~~~~~~~~~~~~~~~^
 1345 |                     i8,
      |                     ~~~          
 1346 |                     cast<PointerType>(tostore->getType())->getAddressSpace()));
      |                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/DiffeGradientUtils.cpp:1354:31: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 1354 |               PointerType::get(
      |               ~~~~~~~~~~~~~~~~^
 1355 |                   AT,
      |                   ~~~          
 1356 |                   cast<PointerType>(tostore->getType())->getAddressSpace()));
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
In file included from /checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/TypeAnalysis.h:56,
---
      | ^
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/Analysis/BranchProbabilityInfo.h:88:1: warning: multi-line comment [-Wcomment]
   88 | ///     /   \
      | ^
/checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp: In function 'bool {anonymous}::ReplaceOriginalCall(llvm::IRBuilder<>&, llvm::Value*, llvm::Type*, llvm::Value*, llvm::Instruction*, DerivativeMode)':
/checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp:350:69: warning: 'llvm::Instruction* llvm::BasicBlock::getFirstNonPHI()' is deprecated: Use iterators as instruction positions instead [-Wdeprecated-declarations]
  350 |     IRBuilder<> EB(CI->getFunction()->getEntryBlock().getFirstNonPHI());
      |                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
In file included from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/Function.h:27,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/InstrTypes.h:28,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/ConstantRange.h:35,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/Analysis/ScalarEvolution.h:32,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp:31:
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:284:61: note: declared here
  284 |                            "getFirstNonPHIIt") Instruction *getFirstNonPHI();
      |                                                             ^~~~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp: In static member function 'static std::optional<{anonymous}::EnzymeBase::Options> {anonymous}::EnzymeBase::handleArguments(llvm::IRBuilder<>&, llvm::CallInst*, llvm::Function*, DerivativeMode, bool, std::vector<DIFFE_TYPE>&, llvm::SmallVectorImpl<llvm::Value*>&, std::map<int, llvm::Type*>&)':
/checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp:617:37: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
  617 |             sretPt, PointerType::get(Ty, pty->getAddressSpace()));
      |                     ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/InstrTypes.h:26:
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp:621:30: warning: 'void llvm::Instruction::insertBefore(llvm::Instruction*)' is deprecated: Use iterators as instruction positions [-Wdeprecated-declarations]
  621 |         primalA->insertBefore(CI);
      |         ~~~~~~~~~~~~~~~~~~~~~^~~~
In file included from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DebugProgramInstruction.h:55,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:23:
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/Instruction.h:217:37: note: declared here
  217 |                            "") void insertBefore(Instruction *InsertPos);
      |                                     ^~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp:634:39: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
  634 |               sretPt, PointerType::get(Ty, pty->getAddressSpace()));
      |                       ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp:641:33: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
  641 |                 PointerType::get(Ty, pty->getAddressSpace()), width));
      |                 ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp:906:29: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
  906 |             PointerType::get(
      |             ~~~~~~~~~~~~~~~~^
  907 |                 subTy, cast<PointerType>(res->getType())->getAddressSpace()));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp:1054:44: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 1054 |                   element, PointerType::get(Type::getInt8Ty(CI->getContext()),
      |                            ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1055 |                                             elementPtrTy->getAddressSpace()));
      |                                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp: In member function 'bool {anonymous}::EnzymeBase::HandleBatch(llvm::CallInst*)':
/checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp:1374:44: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 1374 |                   element, PointerType::get(Type::getInt8Ty(CI->getContext()),
      |                            ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1375 |                                             elementPtrTy->getAddressSpace()));
      |                                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp: In member function 'bool {anonymous}::EnzymeBase::HandleAutoDiff(llvm::Instruction*, llvm::CallingConv::ID, llvm::Value*, llvm::Type*, llvm::SmallVectorImpl<llvm::Value*>&, const std::map<int, llvm::Type*>&, const std::vector<DIFFE_TYPE>&, llvm::Function*, DerivativeMode, Options&, bool, llvm::SmallVectorImpl<llvm::CallInst*>&)':
/checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp:1681:35: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 1681 |             tape, PointerType::get(
      |                   ~~~~~~~~~~~~~~~~^
 1682 |                       tapeType,
      |                       ~~~~~~~~~    
 1683 |                       cast<PointerType>(tape->getType())->getAddressSpace()));
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp:1757:33: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 1757 |                 PointerType::get(
      |                 ~~~~~~~~~~~~~~~~^
 1758 |                     tapeRes->getType(),
      |                     ~~~~~~~~~~~~~~~~~~~
 1759 |                     cast<PointerType>(tape->getType())->getAddressSpace())));
      |                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp: In member function 'bool {anonymous}::EnzymeBase::HandleProbProg(llvm::CallInst*, ProbProgMode, llvm::SmallVectorImpl<llvm::CallInst*>&)':
/checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp:1896:62: warning: 'llvm::Instruction* llvm::BasicBlock::getFirstNonPHI()' is deprecated: Use iterators as instruction positions instead [-Wdeprecated-declarations]
 1896 |     IRBuilder<> AllocaBuilder(CI->getParent()->getFirstNonPHI());
      |                               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:284:61: note: declared here
  284 |                            "getFirstNonPHIIt") Instruction *getFirstNonPHI();
      |                                                             ^~~~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp: In member function 'bool {anonymous}::EnzymeBase::lowerEnzymeCalls(llvm::Function&, std::set<llvm::Function*>&)':
/checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp:2086:29: warning: 'llvm::InsertPosition::InsertPosition(llvm::Instruction*)' is deprecated: Use BasicBlock::iterators for insertion instead [-Wdeprecated-declarations]
 2086 |             CallInst::Create(II->getFunctionType(), II->getCalledOperand(),
      |             ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 2087 |                              CallArgs, OpBundles, "", II);
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/Instruction.h:58:7: note: declared here
   58 |       InsertPosition(Instruction *InsertBefore);
      |       ^~~~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp:2095:27: warning: 'llvm::InsertPosition::InsertPosition(llvm::Instruction*)' is deprecated: Use BasicBlock::iterators for insertion instead [-Wdeprecated-declarations]
 2095 |         BranchInst::Create(II->getNormalDest(), II);
      |         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/Instruction.h:58:7: note: declared here
   58 |       InsertPosition(Instruction *InsertBefore);
      |       ^~~~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp:2509:33: warning: 'void llvm::Instruction::insertBefore(llvm::Instruction*)' is deprecated: Use iterators as instruction positions [-Wdeprecated-declarations]
 2509 |             cloned->insertBefore(B1);
      |             ~~~~~~~~~~~~~~~~~~~~^~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/Instruction.h:217:37: note: declared here
  217 |                            "") void insertBefore(Instruction *InsertPos);
      |                                     ^~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp:2513:27: warning: 'void llvm::Instruction::moveBefore(llvm::Instruction*)' is deprecated: Use iterators as instruction positions [-Wdeprecated-declarations]
 2513 |             CI->moveBefore(B2);
      |             ~~~~~~~~~~~~~~^~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/Instruction.h:246:37: note: declared here
  246 |                            "") void moveBefore(Instruction *MovePos);
      |                                     ^~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp:2516:49: warning: 'llvm::Instruction* llvm::BasicBlock::getFirstNonPHI()' is deprecated: Use iterators as instruction positions instead [-Wdeprecated-declarations]
 2516 |               IRBuilder<> P(post->getFirstNonPHI());
      |                             ~~~~~~~~~~~~~~~~~~~~^~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:284:61: note: declared here
  284 |                            "getFirstNonPHIIt") Instruction *getFirstNonPHI();
      |                                                             ^~~~~~~~~~~~~~
In file included from /checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/TypeAnalysis.h:56,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/ActivityAnalysis.h:49,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp:76:
/checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/../Utils.h: At global scope:
/checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/../Utils.h:2556:13: warning: 'bool hasTerminator(llvm::BasicBlock*)' defined but not used [-Wunused-function]
 2556 | static bool hasTerminator(llvm::BasicBlock *BB) {
      |             ^~~~~~~~~~~~~
In file included from /usr/include/c++/13/map:63,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/../Utils.h:58:
In member function 'std::map<_Key, _Tp, _Compare, _Alloc>::const_iterator std::map<_Key, _Tp, _Compare, _Alloc>::find(const key_type&) const [with _Key = AugmentedStruct; _Tp = int; _Compare = std::less<AugmentedStruct>; _Alloc = std::allocator<std::pair<const AugmentedStruct, int> >]',
    inlined from 'bool {anonymous}::EnzymeBase::HandleAutoDiff(llvm::Instruction*, llvm::CallingConv::ID, llvm::Value*, llvm::Type*, llvm::SmallVectorImpl<llvm::Value*>&, const std::map<int, llvm::Type*>&, const std::vector<DIFFE_TYPE>&, llvm::Function*, DerivativeMode, Options&, bool, llvm::SmallVectorImpl<llvm::CallInst*>&)' at /checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp:1744:28:
/usr/include/c++/13/bits/stl_map.h:1245:25: warning: 'aug' may be used uninitialized [-Wmaybe-uninitialized]
 1245 |       { return _M_t.find(__x); }
      |                ~~~~~~~~~^~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp: In member function 'bool {anonymous}::EnzymeBase::HandleAutoDiff(llvm::Instruction*, llvm::CallingConv::ID, llvm::Value*, llvm::Type*, llvm::SmallVectorImpl<llvm::Value*>&, const std::map<int, llvm::Type*>&, const std::vector<DIFFE_TYPE>&, llvm::Function*, DerivativeMode, Options&, bool, llvm::SmallVectorImpl<llvm::CallInst*>&)':
/checkout/src/tools/enzyme/enzyme/Enzyme/Enzyme.cpp:1473:28: note: 'aug' was declared here
 1473 |     const AugmentedReturn *aug;
      |                            ^~~
[21/40] Building CXX object Enzyme/CMakeFiles/Enzyme-22.dir/FixupJuliaCallingConvention.cpp.o
/checkout/src/tools/enzyme/enzyme/Enzyme/FixupJuliaCallingConvention.cpp: In function 'bool needsReRooting(llvm::Argument*, bool&, llvm::Type*)':
/checkout/src/tools/enzyme/enzyme/Enzyme/FixupJuliaCallingConvention.cpp:85:69: warning: 'static llvm::PointerType* llvm::PointerType::getUnqual(llvm::Type*)' is deprecated: PointerType::getUnqual with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
   85 |         auto nullp = ConstantPointerNull::get(PointerType::getUnqual(SRetType));
      |                                               ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
In file included from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/InstrTypes.h:26,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/ConstantRange.h:35,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/Analysis/ScalarEvolution.h:32,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/FunctionUtils.h:35,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/FixupJuliaCallingConvention.cpp:2:
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:722:23: note: declared here
  722 |   static PointerType *getUnqual(Type *ElementType) {
      |                       ^~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/FixupJuliaCallingConvention.cpp:88:67: warning: 'static llvm::PointerType* llvm::PointerType::getUnqual(llvm::Type*)' is deprecated: PointerType::getUnqual with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
   88 |         if (gep == ConstantPointerNull::get(PointerType::getUnqual(PT))) {
      |                                             ~~~~~~~~~~~~~~~~~~~~~~^~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:722:23: note: declared here
  722 |   static PointerType *getUnqual(Type *ElementType) {
      |                       ^~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/FixupJuliaCallingConvention.cpp: In function 'void EnzymeFixupJuliaCallingConvention(llvm::Function*, bool)':
/checkout/src/tools/enzyme/enzyme/Enzyme/FixupJuliaCallingConvention.cpp:716:38: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
  716 |   auto T_prjlvalue = PointerType::get(T_jlvalue, AddressSpace::Tracked);
      |                      ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
In file included from /checkout/src/tools/enzyme/enzyme/Enzyme/FunctionUtils.h:43:
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.h: At global scope:
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.h:2556:13: warning: 'bool hasTerminator(llvm::BasicBlock*)' defined but not used [-Wunused-function]
 2556 | static bool hasTerminator(llvm::BasicBlock *BB) {
      |             ^~~~~~~~~~~~~
[22/40] Building CXX object Enzyme/CMakeFiles/Enzyme-22.dir/FunctionUtils.cpp.o
/checkout/src/tools/enzyme/enzyme/Enzyme/FunctionUtils.cpp: In function 'void RecursivelyReplaceAddressSpace(llvm::SmallVector<std::tuple<llvm::Value*, llvm::Value*, llvm::Instruction*>, 1>&, llvm::SmallVector<llvm::Instruction*, 1>&, bool)':
/checkout/src/tools/enzyme/enzyme/Enzyme/FunctionUtils.cpp:513:33: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
  513 |                 PointerType::get(StructType::get(SI->getContext(), {}), 10);
      |                 ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/InstrTypes.h:26,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/ConstantRange.h:35,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/Analysis/ScalarEvolution.h:32,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/FunctionUtils.h:35,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/FunctionUtils.cpp:25:
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/FunctionUtils.cpp: In function 'void SimplifyMPIQueries(llvm::Function&, llvm::FunctionAnalysisManager&)':
/checkout/src/tools/enzyme/enzyme/Enzyme/FunctionUtils.cpp:1436:59: warning: 'llvm::Instruction* llvm::BasicBlock::getFirstNonPHI()' is deprecated: Use iterators as instruction positions instead [-Wdeprecated-declarations]
 1436 |       B.SetInsertPoint(II->getNormalDest()->getFirstNonPHI());
      |                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
In file included from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/Function.h:27,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/InstrTypes.h:28:
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:284:61: note: declared here
  284 |                            "getFirstNonPHIIt") Instruction *getFirstNonPHI();
      |                                                             ^~~~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/FunctionUtils.cpp:1452:61: warning: 'llvm::Instruction* llvm::BasicBlock::getFirstNonPHI()' is deprecated: Use iterators as instruction positions instead [-Wdeprecated-declarations]
 1452 |         B.SetInsertPoint(II->getNormalDest()->getFirstNonPHI());
      |                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:284:61: note: declared here
  284 |                            "getFirstNonPHIIt") Instruction *getFirstNonPHI();
      |                                                             ^~~~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/FunctionUtils.cpp: In function 'std::optional<std::__cxx11::basic_string<char> > fixSparse_inner(llvm::Instruction*, llvm::Function&, QueueType&, llvm::DominatorTree&, llvm::ScalarEvolution&, llvm::LoopInfo&, const llvm::DataLayout&)':
/checkout/src/tools/enzyme/enzyme/Enzyme/FunctionUtils.cpp:6470:53: warning: 'llvm::Instruction* llvm::BasicBlock::getFirstNonPHI()' is deprecated: Use iterators as instruction positions instead [-Wdeprecated-declarations]
 6470 |     B.SetInsertPoint(PN->getParent()->getFirstNonPHI());
      |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:284:61: note: declared here
  284 |                            "getFirstNonPHIIt") Instruction *getFirstNonPHI();
      |                                                             ^~~~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/FunctionUtils.cpp:6495:53: warning: 'llvm::Instruction* llvm::BasicBlock::getFirstNonPHI()' is deprecated: Use iterators as instruction positions instead [-Wdeprecated-declarations]
 6495 |         auto point = PN->getParent()->getFirstNonPHI();
      |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:284:61: note: declared here
  284 |                            "getFirstNonPHIIt") Instruction *getFirstNonPHI();
      |                                                             ^~~~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/FunctionUtils.cpp:7011:30: warning: 'void llvm::Instruction::moveBefore(llvm::Instruction*)' is deprecated: Use iterators as instruction positions [-Wdeprecated-declarations]
 7011 |           (*iter)->moveBefore(br);
      |           ~~~~~~~~~~~~~~~~~~~^~~~
In file included from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DebugProgramInstruction.h:55,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:23:
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/Instruction.h:246:37: note: declared here
  246 |                            "") void moveBefore(Instruction *MovePos);
      |                                     ^~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/FunctionUtils.cpp: In function 'void fixSparseIndices(llvm::Function&, llvm::FunctionAnalysisManager&, llvm::SetVector<llvm::BasicBlock*>&)':
/checkout/src/tools/enzyme/enzyme/Enzyme/FunctionUtils.cpp:8463:51: warning: 'llvm::Instruction* llvm::BasicBlock::getFirstNonPHI()' is deprecated: Use iterators as instruction positions instead [-Wdeprecated-declarations]
 8463 |       IRBuilder<> B(L->getHeader()->getFirstNonPHI());
      |                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:284:61: note: declared here
  284 |                            "getFirstNonPHIIt") Instruction *getFirstNonPHI();
      |                                                             ^~~~~~~~~~~~~~
In file included from /checkout/src/tools/enzyme/enzyme/Enzyme/FunctionUtils.h:43:
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.h: At global scope:
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.h:2556:13: warning: 'bool hasTerminator(llvm::BasicBlock*)' defined but not used [-Wunused-function]
 2556 | static bool hasTerminator(llvm::BasicBlock *BB) {
---
[25/40] Building CXX object Enzyme/CMakeFiles/Enzyme-22.dir/EnzymeLogic.cpp.o
In file included from /checkout/src/tools/enzyme/enzyme/Enzyme/AdjointGenerator.h:4216,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/EnzymeLogic.cpp:32:
/checkout/obj/build/x86_64-unknown-linux-gnu/enzyme/build/Enzyme/BlasDerivatives.inc: In lambda function:
/checkout/obj/build/x86_64-unknown-linux-gnu/enzyme/build/Enzyme/BlasDerivatives.inc:7269:35: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 7269 |           tozero, PointerType::get(Type::getInt8Ty(PT->getContext()),
      |                   ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7270 |                                    PT->getAddressSpace()));
      |                                    ~~~~~~~~~~~~~~~~~~~~~~
In file included from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/Function.h:29,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/EnzymeLogic.h:37,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/EnzymeLogic.cpp:30:
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/EnzymeLogic.cpp: In function 'void cleanupInversionAllocs(DiffeGradientUtils*, llvm::BasicBlock*)':
/checkout/src/tools/enzyme/enzyme/Enzyme/EnzymeLogic.cpp:1809:23: warning: 'void llvm::Instruction::moveBefore(llvm::Instruction*)' is deprecated: Use iterators as instruction positions [-Wdeprecated-declarations]
 1809 |       inst->moveBefore(&gutils->newFunc->getEntryBlock().front());
      |       ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DebugProgramInstruction.h:55,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:23,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/Function.h:27:
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/Instruction.h:246:37: note: declared here
  246 |                            "") void moveBefore(Instruction *MovePos);
      |                                     ^~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/EnzymeLogic.cpp: In function 'void restoreCache(DiffeGradientUtils*, const std::map<std::pair<llvm::Instruction*, CacheType>, int>&, const llvm::SmallPtrSetImpl<llvm::BasicBlock*>&)':
/checkout/src/tools/enzyme/enzyme/Enzyme/EnzymeLogic.cpp:1847:67: warning: 'llvm::Instruction* llvm::BasicBlock::getFirstNonPHI()' is deprecated: Use iterators as instruction positions instead [-Wdeprecated-declarations]
 1847 |               cast<Instruction>(newi)->getParent()->getFirstNonPHI());
      |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:284:61: note: declared here
  284 |                            "getFirstNonPHIIt") Instruction *getFirstNonPHI();
      |                                                             ^~~~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/EnzymeLogic.cpp: In member function 'const AugmentedReturn& EnzymeLogic::CreateAugmentedPrimal(RequestContext, llvm::Function*, DIFFE_TYPE, llvm::ArrayRef<DIFFE_TYPE>, TypeAnalysis&, bool, bool, const FnTypeInfo&, bool, std::vector<bool>, bool, bool, bool, unsigned int, bool, bool)':
/checkout/src/tools/enzyme/enzyme/Enzyme/EnzymeLogic.cpp:2615:71: warning: 'llvm::Instruction* llvm::BasicBlock::getFirstNonPHI()' is deprecated: Use iterators as instruction positions instead [-Wdeprecated-declarations]
 2615 |                   cast<Instruction>(newi)->getParent()->getFirstNonPHI());
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:284:61: note: declared here
  284 |                            "getFirstNonPHIIt") Instruction *getFirstNonPHI();
      |                                                             ^~~~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/EnzymeLogic.cpp:2910:54: warning: 'llvm::Instruction* llvm::BasicBlock::getFirstNonPHI()' is deprecated: Use iterators as instruction positions instead [-Wdeprecated-declarations]
 2910 |   IRBuilder<> ib(NewF->getEntryBlock().getFirstNonPHI());
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:284:61: note: declared here
  284 |                            "getFirstNonPHIIt") Instruction *getFirstNonPHI();
      |                                                             ^~~~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/EnzymeLogic.cpp:2978:62: warning: 'llvm::Instruction* llvm::BasicBlock::getFirstNonPHI()' is deprecated: Use iterators as instruction positions instead [-Wdeprecated-declarations]
 2978 |           ib.SetInsertPoint(inst->getParent()->getFirstNonPHI());
      |                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:284:61: note: declared here
  284 |                            "getFirstNonPHIIt") Instruction *getFirstNonPHI();
      |                                                             ^~~~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/EnzymeLogic.cpp: In member function 'llvm::Function* EnzymeLogic::CreatePrimalAndGradient(RequestContext, const ReverseCacheKey&&, TypeAnalysis&, const AugmentedReturn*, bool)':
/checkout/src/tools/enzyme/enzyme/Enzyme/EnzymeLogic.cpp:3817:35: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 3817 |             tape, PointerType::get(
      |                   ~~~~~~~~~~~~~~~~^
 3818 |                       aug.tapeType,
      |                       ~~~~~~~~~~~~~
 3819 |                       cast<PointerType>(tape->getType())->getAddressSpace()));
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/EnzymeLogic.cpp:4353:29: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 4353 |             PointerType::get(augmenteddata->tapeType,
      |             ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
 4354 |                              cast<PointerType>(additionalValue->getType())
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 4355 |                                  ->getAddressSpace()));
      |                                  ~~~~~~~~~~~~~~~~~~~~
---
/checkout/src/tools/enzyme/enzyme/Enzyme/EnzymeLogic.cpp:5221:28: warning: 'void llvm::Instruction::insertBefore(llvm::Instruction*)' is deprecated: Use iterators as instruction positions [-Wdeprecated-declarations]
 5221 |       ClonedI->insertBefore(Return);
      |       ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/Instruction.h:217:37: note: declared here
  217 |                            "") void insertBefore(Instruction *InsertPos);
      |                                     ^~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/EnzymeLogic.cpp: In member function 'llvm::Function* EnzymeLogic::CreateBatch(RequestContext, llvm::Function*, unsigned int, llvm::ArrayRef<BATCH_TYPE>, BATCH_TYPE)':
/checkout/src/tools/enzyme/enzyme/Enzyme/EnzymeLogic.cpp:5992:45: warning: 'llvm::Instruction* llvm::BasicBlock::getFirstNonPHI()' is deprecated: Use iterators as instruction positions instead [-Wdeprecated-declarations]
 5992 |   IRBuilder<> Builder2(entry->getFirstNonPHI());
      |                        ~~~~~~~~~~~~~~~~~~~~~^~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:284:61: note: declared here
  284 |                            "getFirstNonPHIIt") Instruction *getFirstNonPHI();
      |                                                             ^~~~~~~~~~~~~~
In file included from /checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/TypeAnalysis.h:56,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/ActivityAnalysis.h:49,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/EnzymeLogic.h:47:
/checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/../Utils.h: At global scope:
/checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/../Utils.h:2556:13: warning: 'bool hasTerminator(llvm::BasicBlock*)' defined but not used [-Wunused-function]
 2556 | static bool hasTerminator(llvm::BasicBlock *BB) {
      |             ^~~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/EnzymeLogic.cpp: In member function 'const AugmentedReturn& EnzymeLogic::CreateAugmentedPrimal(RequestContext, llvm::Function*, DIFFE_TYPE, llvm::ArrayRef<DIFFE_TYPE>, TypeAnalysis&, bool, bool, const FnTypeInfo&, bool, std::vector<bool>, bool, bool, bool, unsigned int, bool, bool)':
/checkout/src/tools/enzyme/enzyme/Enzyme/EnzymeLogic.cpp:2982:29: warning: 'tapeMemory' may be used uninitialized [-Wmaybe-uninitialized]
 2982 |           gep = ib.CreateGEP(tapeType, tapeMemory, Idxs, "");
      |                 ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/EnzymeLogic.cpp:2915:12: note: 'tapeMemory' was declared here
 2915 |     Value *tapeMemory;
      |            ^~~~~~~~~~
[26/40] Building CXX object Enzyme/CMakeFiles/Enzyme-22.dir/MustExitScalarEvolution.cpp.o
In file included from /checkout/src/tools/enzyme/enzyme/Enzyme/FunctionUtils.h:43,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/MustExitScalarEvolution.cpp:29:
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.h:2556:13: warning: 'bool hasTerminator(llvm::BasicBlock*)' defined but not used [-Wunused-function]
 2556 | static bool hasTerminator(llvm::BasicBlock *BB) {
      |             ^~~~~~~~~~~~~
[27/40] Building CXX object Enzyme/CMakeFiles/Enzyme-22.dir/GradientUtils.cpp.o
/checkout/src/tools/enzyme/enzyme/Enzyme/GradientUtils.cpp: In member function 'llvm::Value* GradientUtils::getOrInsertTotalMultiplicativeProduct(llvm::Value*, LoopContext&)':
/checkout/src/tools/enzyme/enzyme/Enzyme/GradientUtils.cpp:487:52: warning: 'llvm::Instruction* llvm::BasicBlock::getFirstNonPHI()' is deprecated: Use iterators as instruction positions instead [-Wdeprecated-declarations]
  487 |   lbuilder.SetInsertPoint(lc.header->getFirstNonPHI());
      |                           ~~~~~~~~~~~~~~~~~~~~~~~~~^~
In file included from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/Function.h:27,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/InstrTypes.h:28,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/ConstantRange.h:35,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/Analysis/ScalarEvolution.h:32,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/GradientUtils.h:39,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/GradientUtils.cpp:33:
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:284:61: note: declared here
  284 |                            "getFirstNonPHIIt") Instruction *getFirstNonPHI();
      |                                                             ^~~~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/GradientUtils.cpp: In lambda function:
/checkout/src/tools/enzyme/enzyme/Enzyme/GradientUtils.cpp:5046:31: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 5046 |               PointerType::get(
      |               ~~~~~~~~~~~~~~~~^
 5047 |                   i8, cast<PointerType>(ptr->getType())->getAddressSpace()));
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/InstrTypes.h:26:
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/GradientUtils.cpp:5054:31: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 5054 |               PointerType::get(
      |               ~~~~~~~~~~~~~~~~^
 5055 |                   i8, cast<PointerType>(valptr->getType())->getAddressSpace()));
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/GradientUtils.cpp:5073:34: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 5073 |             ptr, PointerType::get(
      |                  ~~~~~~~~~~~~~~~~^
 5074 |                      ty, cast<PointerType>(ptr->getType())->getAddressSpace()));
      |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/GradientUtils.cpp:5077:29: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 5077 |             PointerType::get(
      |             ~~~~~~~~~~~~~~~~^
 5078 |                 ty, cast<PointerType>(valptr->getType())->getAddressSpace()));
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/GradientUtils.cpp:5088:44: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 5088 |         auto T_prjlvalue = PointerType::get(T_jlvalue, 10);
      |                            ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/GradientUtils.cpp: In member function 'llvm::Value* GradientUtils::invertPointerM(llvm::Value*, llvm::IRBuilder<>&, TypeTree)':
/checkout/src/tools/enzyme/enzyme/Enzyme/GradientUtils.cpp:6475:62: warning: 'llvm::Instruction* llvm::BasicBlock::getFirstNonPHI()' is deprecated: Use iterators as instruction positions instead [-Wdeprecated-declarations]
 6475 |         IRBuilder<> postPhi(NewV->getParent()->getFirstNonPHI());
      |                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:284:61: note: declared here
  284 |                            "getFirstNonPHIIt") Instruction *getFirstNonPHI();
      |                                                             ^~~~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/GradientUtils.cpp: In function 'void SubTransferHelper(GradientUtils*, DerivativeMode, llvm::Type*, llvm::Intrinsic::ID, unsigned int, unsigned int, unsigned int, bool, llvm::Value*, llvm::Value*, bool, llvm::Value*, llvm::Value*, llvm::Value*, llvm::Value*, llvm::CallInst*, bool, bool, bool)':
/checkout/src/tools/enzyme/enzyme/Enzyme/GradientUtils.cpp:9112:37: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 9112 |               dsto, PointerType::get(secretty, dstaddr));
      |                     ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/GradientUtils.cpp:9124:37: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 9124 |               srco, PointerType::get(secretty, srcaddr));
      |                     ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/GradientUtils.cpp:9142:58: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 9142 |                                          PointerType::get(secretty, dstaddr)),
      |                                          ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/GradientUtils.cpp:9144:58: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 9144 |                                          PointerType::get(secretty, srcaddr)),
      |                                          ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
[28/40] Building CXX object Enzyme/CMakeFiles/Enzyme-22.dir/PreserveNVVM.cpp.o
In file included from /checkout/src/tools/enzyme/enzyme/Enzyme/PreserveNVVM.cpp:49:
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.h:2556:13: warning: 'bool hasTerminator(llvm::BasicBlock*)' defined but not used [-Wunused-function]
 2556 | static bool hasTerminator(llvm::BasicBlock *BB) {
      |             ^~~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/PreserveNVVM.cpp: In function 'bool preserveNVVM(bool, llvm::Module&)':
/checkout/src/tools/enzyme/enzyme/Enzyme/PreserveNVVM.cpp:951:19: warning: 'val' may be used uninitialized [-Wmaybe-uninitialized]
  951 |       F.setLinkage((Function::LinkageTypes)val);
      |       ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/PreserveNVVM.cpp:949:15: note: 'val' was declared here
  949 |       int64_t val;
      |               ^~~
[29/40] Building CXX object Enzyme/CMakeFiles/Enzyme-22.dir/SimpleGVN.cpp.o
/checkout/src/tools/enzyme/enzyme/Enzyme/SimpleGVN.cpp: In function 'llvm::Value* {anonymous}::extractValue(llvm::IRBuilder<>&, llvm::Value*, llvm::Type*, const llvm::DataLayout&, llvm::APInt, llvm::APInt, uint64_t)':
/checkout/src/tools/enzyme/enzyme/Enzyme/SimpleGVN.cpp:127:45: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
  127 |         Type *T_prjlvalue = PointerType::get(T_jlvalue, 11); // Derived is 11
      |                             ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
In file included from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/InstrTypes.h:26,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/ConstantRange.h:35,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/Constants.h:29,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/SimpleGVN.cpp:61:
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/SimpleGVN.cpp:128:44: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
  128 |         Type *T_pjlvalue = PointerType::get(T_jlvalue, 0);
      |                            ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/SimpleGVN.cpp:136:38: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
  136 |           StoredVal, PointerType::get(T_jlvalue, 11));
      |                      ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/SimpleGVN.cpp:190:47: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
  190 |         Type *PtrAddrSpace0 = PointerType::get(EmptyStructTy, 0);
      |                               ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
In file included from /checkout/src/tools/enzyme/enzyme/Enzyme/SimpleGVN.cpp:87:
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.h: At global scope:
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.h:2556:13: warning: 'bool hasTerminator(llvm::BasicBlock*)' defined but not used [-Wunused-function]
 2556 | static bool hasTerminator(llvm::BasicBlock *BB) {
      |             ^~~~~~~~~~~~~
[30/40] Building CXX object Enzyme/CMakeFiles/Enzyme-22.dir/TraceInterface.cpp.o
/checkout/src/tools/enzyme/enzyme/Enzyme/TraceInterface.cpp: In member function 'llvm::Function* DynamicTraceInterface::MaterializeInterfaceFunction(llvm::IRBuilder<>&, llvm::Value*, llvm::FunctionType*, unsigned int, llvm::Module&, const llvm::Twine&)':
/checkout/src/tools/enzyme/enzyme/Enzyme/TraceInterface.cpp:371:30: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
  371 |   auto pty = PointerType::get(FTy, load->getPointerAddressSpace());
      |              ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/InstrTypes.h:26,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/ConstantFold.h:24,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/ConstantFolder.h:21,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/IRBuilder.h:24,
---
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/InstVisitor.h:13,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/TraceGenerator.h:29:
In constructor 'llvm::Twine::Twine(const char*)',
    inlined from 'void TraceGenerator::handleSampleCall(llvm::CallInst&, llvm::CallInst*)' at /checkout/src/tools/enzyme/enzyme/Enzyme/TraceGenerator.cpp:216:7:
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/ADT/Twine.h:258:14: warning: 'mode_str' may be used uninitialized [-Wmaybe-uninitialized]
  258 |     if (Str[0] != '\0') {
      |         ~~~~~^
/checkout/src/tools/enzyme/enzyme/Enzyme/TraceGenerator.cpp: In member function 'void TraceGenerator::handleSampleCall(llvm::CallInst&, llvm::CallInst*)':
/checkout/src/tools/enzyme/enzyme/Enzyme/TraceGenerator.cpp:203:15: note: 'mode_str' was declared here
  203 |   const char *mode_str;
      |               ^~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/TraceGenerator.cpp: In member function 'void TraceGenerator::handleArbitraryCall(llvm::CallInst&, llvm::CallInst*)':
/checkout/src/tools/enzyme/enzyme/Enzyme/TraceGenerator.cpp:393:24: warning: 'replacement' may be used uninitialized [-Wmaybe-uninitialized]
  393 |   replacement->takeName(new_call);
      |   ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/TraceGenerator.cpp:303:16: note: 'replacement' was declared here
  303 |   Instruction *replacement;
      |                ^~~~~~~~~~~
[32/40] Building CXX object Enzyme/CMakeFiles/Enzyme-22.dir/TraceUtils.cpp.o
In file included from /checkout/src/tools/enzyme/enzyme/Enzyme/TraceUtils.h:41,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/TraceUtils.cpp:27:
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.h:2556:13: warning: 'bool hasTerminator(llvm::BasicBlock*)' defined but not used [-Wunused-function]
 2556 | static bool hasTerminator(llvm::BasicBlock *BB) {
      |             ^~~~~~~~~~~~~
In file included from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:18,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/TraceUtils.h:32:
In constructor 'llvm::Twine::Twine(const char*)',
    inlined from 'static TraceUtils* TraceUtils::FromClone(ProbProgMode, const llvm::SmallPtrSetImpl<llvm::Function*>&, const llvm::SmallPtrSetImpl<llvm::Function*>&, TraceInterface*, llvm::Function*, llvm::ValueToValueMapTy&)' at /checkout/src/tools/enzyme/enzyme/Enzyme/TraceUtils.cpp:102:7:
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/ADT/Twine.h:258:14: warning: 'mode_str' may be used uninitialized [-Wmaybe-uninitialized]
  258 |     if (Str[0] != '\0') {
      |         ~~~~~^
/checkout/src/tools/enzyme/enzyme/Enzyme/TraceUtils.cpp: In static member function 'static TraceUtils* TraceUtils::FromClone(ProbProgMode, const llvm::SmallPtrSetImpl<llvm::Function*>&, const llvm::SmallPtrSetImpl<llvm::Function*>&, TraceInterface*, llvm::Function*, llvm::ValueToValueMapTy&)':
/checkout/src/tools/enzyme/enzyme/Enzyme/TraceUtils.cpp:87:15: note: 'mode_str' was declared here
   87 |   const char *mode_str;
      |               ^~~~~~~~
[33/40] Building CXX object Enzyme/CMakeFiles/Enzyme-22.dir/TypeAnalysis/TypeTree.cpp.o
In file included from /checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/TypeTree.h:41,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/TypeTree.cpp:36:
/checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/../Utils.h:2556:13: warning: 'bool hasTerminator(llvm::BasicBlock*)' defined but not used [-Wunused-function]
---
/checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/../TypeAnalysis/../Utils.h:2556:13: warning: 'bool hasTerminator(llvm::BasicBlock*)' defined but not used [-Wunused-function]
 2556 | static bool hasTerminator(llvm::BasicBlock *BB) {
      |             ^~~~~~~~~~~~~
[35/40] Building CXX object Enzyme/CMakeFiles/Enzyme-22.dir/Utils.cpp.o
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.cpp: In function 'llvm::Function* getOrInsertExponentialAllocator(llvm::Module&, llvm::Function*, bool, llvm::Type*)':
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.cpp:544:25: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
  544 |         PointerType::get(Type::getInt8Ty(gVal->getContext()),
      |         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  545 |                          cast<PointerType>(gVal->getType())->getAddressSpace());
      |                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/Function.h:29,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/Analysis/AliasAnalysis.h:43,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/Utils.h:32,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/Utils.cpp:25:
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.cpp: In function 'llvm::Value* CreateAllocation(llvm::IRBuilder<>&, llvm::Type*, llvm::Value*, const llvm::Twine&, llvm::CallInst**, llvm::Instruction**, bool)':
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.cpp:728:35: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
  728 |           tozero, PointerType::get(Type::getInt8Ty(PT->getContext()),
      |                   ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  729 |                                    PT->getAddressSpace()));
      |                                    ~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.cpp: In function 'llvm::Function* getOrInsertDifferentialFloatMemcpy(llvm::Module&, llvm::Type*, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, bool)':
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.cpp:1027:49: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 1027 |   std::vector<Type *> argTys = {PointerType::get(elementType, dstaddr),
      |                                 ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.cpp:1028:49: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 1028 |                                 PointerType::get(elementType, srcaddr),
      |                                 ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.cpp:1093:32: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 1093 |           dst, PointerType::get(Type::getInt8Ty(M.getContext()), dstaddr));
      |                ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.cpp: In function 'void callSPMVDiagUpdate(llvm::IRBuilder<>&, llvm::Module&, BlasInfo, llvm::IntegerType*, llvm::Type*, llvm::Type*, llvm::Type*, llvm::Type*, llvm::Type*, llvm::ArrayRef<llvm::Value*>, llvm::ArrayRef<llvm::OperandBundleDefT<llvm::Value*> >, bool, bool)':
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.cpp:1491:27: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 1491 |           PointerType::get(
      |           ~~~~~~~~~~~~~~~~^
 1492 |               fpTy,
      |               ~~~~~        
 1493 |               cast<PointerType>(blasalpha->getType())->getAddressSpace()));
      |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.cpp:1502:25: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 1502 |         PointerType::get(
      |         ~~~~~~~~~~~~~~~~^
 1503 |             fpTy, cast<PointerType>(blasx->getType())->getAddressSpace()));
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.cpp:1506:25: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 1506 |         PointerType::get(
      |         ~~~~~~~~~~~~~~~~^
 1507 |             fpTy, cast<PointerType>(blasdy->getType())->getAddressSpace()));
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.cpp:1510:25: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 1510 |         PointerType::get(
      |         ~~~~~~~~~~~~~~~~^
 1511 |             fpTy, cast<PointerType>(blasdAP->getType())->getAddressSpace()));
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.cpp: In function 'llvm::CallInst* getorInsertInnerProd(llvm::IRBuilder<>&, llvm::Module&, BlasInfo, llvm::IntegerType*, llvm::Type*, llvm::Type*, llvm::Type*, llvm::ArrayRef<llvm::Value*>, llvm::ArrayRef<llvm::OperandBundleDefT<llvm::Value*> >, bool, bool, bool)':
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.cpp:1670:31: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 1670 |         matA, PointerType::get(
      |               ~~~~~~~~~~~~~~~~^
 1671 |                   fpTy, cast<PointerType>(matA->getType())->getAddressSpace()));
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.cpp:1673:31: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 1673 |         matB, PointerType::get(
      |               ~~~~~~~~~~~~~~~~^
 1674 |                   fpTy, cast<PointerType>(matB->getType())->getAddressSpace()));
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.cpp: In function 'llvm::Value* load_if_ref(llvm::IRBuilder<>&, llvm::Type*, llvm::Value*, bool)':
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.cpp:4124:28: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 4124 |         V, PointerType::get(
      |            ~~~~~~~~~~~~~~~~^
 4125 |                intType, cast<PointerType>(V->getType())->getAddressSpace()));
      |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.cpp: In function 'llvm::Value* moveSRetToFromRoots(llvm::IRBuilder<>&, llvm::Type*, llvm::Value*, llvm::Type*, llvm::Value*, size_t, SRetRootMovement)':
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.cpp:4794:37: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 4794 |             outloc, PointerType::get(StructType::get(outloc->getContext(), {}),
      |                     ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 4795 |                                      Tracked));
      |                                      ~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.cpp:4861:34: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 4861 |       auto JLT = PointerType::get(StructType::get(PT->getContext(), {}), 10);
      |                  ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DerivedTypes.h:713:32: note: declared here
  713 |   LLVM_ABI static PointerType *get(Type *ElementType, unsigned AddressSpace);
      |                                ^~~
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.h: At global scope:
/checkout/src/tools/enzyme/enzyme/Enzyme/Utils.h:2556:13: warning: 'bool hasTerminator(llvm::BasicBlock*)' defined but not used [-Wunused-function]
 2556 | static bool hasTerminator(llvm::BasicBlock *BB) {
      |             ^~~~~~~~~~~~~
[36/40] Building CXX object Enzyme/CMakeFiles/Enzyme-22.dir/TypeAnalysis/RustDebugInfo.cpp.o
/checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/RustDebugInfo.cpp: In function 'TypeTree parseDIType(llvm::DICompositeType&, llvm::Instruction&, llvm::DataLayout&)':
/checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/RustDebugInfo.cpp:68:63: warning: 'T llvm::PointerUnion<PTs>::get() const [with T = llvm::ConstantInt*; PTs = {llvm::ConstantInt*, llvm::DIVariable*, llvm::DIExpression*}]' is deprecated: Use cast instead [-Wdeprecated-declarations]
   68 |       if (auto Count = Subrange->getCount().get<ConstantInt *>()) {
      |                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
In file included from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DebugInfoMetadata.h:18,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DIBuilder.h:24,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/RustDebugInfo.cpp:27:
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/ADT/PointerUnion.h:155:12: note: declared here
---
/checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/../Utils.h:2556:13: warning: 'bool hasTerminator(llvm::BasicBlock*)' defined but not used [-Wunused-function]
 2556 | static bool hasTerminator(llvm::BasicBlock *BB) {
      |             ^~~~~~~~~~~~~
[37/40] Building CXX object Enzyme/CMakeFiles/Enzyme-22.dir/TypeAnalysis/TypeAnalysis.cpp.o
/checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/TypeAnalysis.cpp: In function 'void getConstantAnalysis(llvm::Constant*, TypeAnalyzer&, std::map<llvm::Value*, TypeTree>&)':
/checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/TypeAnalysis.cpp:858:20: warning: 'void llvm::Instruction::insertBefore(llvm::Instruction*)' is deprecated: Use iterators as instruction positions [-Wdeprecated-declarations]
  858 |     I->insertBefore(TA.fntypeinfo.Function->getEntryBlock().getTerminator());
      |     ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/DebugProgramInstruction.h:55,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/BasicBlock.h:23,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/Function.h:27,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/InstrTypes.h:28,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/ConstantRange.h:35,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/Constants.h:29,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/TypeAnalysis.cpp:33:
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/Instruction.h:217:37: note: declared here
  217 |                            "") void insertBefore(Instruction *InsertPos);
      |                                     ^~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/TypeAnalysis.cpp: In member function 'void TypeAnalyzer::visitConstantExpr(llvm::ConstantExpr&)':
/checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/TypeAnalysis.cpp:1873:18: warning: 'void llvm::Instruction::insertBefore(llvm::Instruction*)' is deprecated: Use iterators as instruction positions [-Wdeprecated-declarations]
 1873 |   I->insertBefore(fntypeinfo.Function->getEntryBlock().getTerminator());
      |   ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/Instruction.h:217:37: note: declared here
  217 |                            "") void insertBefore(Instruction *InsertPos);
      |                                     ^~~~~~~~~~~~
In file included from /checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/../TypeAnalysis/TypeAnalysis.h:56,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/../ActivityAnalysis.h:49,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/../EnzymeLogic.h:47,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/TypeAnalysis.cpp:54:
---
[38/40] Building CXX object Enzyme/CMakeFiles/Enzyme-22.dir/CallDerivatives.cpp.o
In file included from /checkout/src/tools/enzyme/enzyme/Enzyme/AdjointGenerator.h:4216,
                 from /checkout/src/tools/enzyme/enzyme/Enzyme/CallDerivatives.cpp:27:
/checkout/obj/build/x86_64-unknown-linux-gnu/enzyme/build/Enzyme/BlasDerivatives.inc: In lambda function:
/checkout/obj/build/x86_64-unknown-linux-gnu/enzyme/build/Enzyme/BlasDerivatives.inc:7269:35: warning: 'static llvm::PointerType* llvm::PointerType::get(llvm::Type*, unsigned int)' is deprecated: PointerType::get with pointee type is pending removal. Use Context overload. [-Wdeprecated-declarations]
 7269 |           tozero, PointerType::get(Type::getInt8Ty(PT->getContext()),
      |                   ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7270 |                                    PT->getAddressSpace()));
      |                                    ~~~~~~~~~~~~~~~~~~~~~~
In file included from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/InstrTypes.h:26,
                 from /checkout/obj/build/x86_64-unknown-linux-gnu/llvm/include/llvm/IR/ConstantRange.h:35,
---
/checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/../Utils.h: At global scope:
/checkout/src/tools/enzyme/enzyme/Enzyme/TypeAnalysis/../Utils.h:2556:13: warning: 'bool hasTerminator(llvm::BasicBlock*)' defined but not used [-Wunused-function]
 2556 | static bool hasTerminator(llvm::BasicBlock *BB) {
      |             ^~~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/CallDerivatives.cpp: In member function 'bool AdjointGenerator::handleKnownCallDerivatives(llvm::CallInst&, llvm::Function*, llvm::StringRef, bool, const std::vector<bool>&, llvm::CallInst*)':
/checkout/src/tools/enzyme/enzyme/Enzyme/CallDerivatives.cpp:3954:42: warning: 'val' may be used uninitialized [-Wmaybe-uninitialized]
 3954 |           Value *tofree = gutils->lookupM(val, Builder2, ValueToValueMapTy(),
      |                           ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 3955 |                                           /*tryLegalRecompute*/ false);
      |                                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/checkout/src/tools/enzyme/enzyme/Enzyme/CallDerivatives.cpp:3837:12: note: 'val' was declared here
 3837 |     Value *val;
      |            ^~~
[39/40] Linking CXX shared library Enzyme/libEnzyme-22.so
---

---- [codegen] tests/codegen-llvm/autodiff/abi_handling.rs#release stdout ----
------FileCheck stdout------------------------------

------FileCheck stderr------------------------------
/checkout/tests/codegen-llvm/autodiff/abi_handling.rs:61:18: error: release-NEXT: expected string not found in input
// release-NEXT: define internal fastcc noundef float
                 ^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/autodiff/abi_handling.release/abi_handling.ll:122:17: note: scanning from here
; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable
                ^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/autodiff/abi_handling.release/abi_handling.ll:123:1: note: possible intended match here
define internal fastcc float @_RNvCslprwek9b7NP_12abi_handling3df2(float noundef %x) unnamed_addr #3 {
^
/checkout/tests/codegen-llvm/autodiff/abi_handling.rs:80:18: error: release-NEXT: expected string not found in input
// release-NEXT: define internal fastcc float
                 ^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/autodiff/abi_handling.release/abi_handling.ll:139:17: note: scanning from here
; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable
                ^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/autodiff/abi_handling.release/abi_handling.ll:140:1: note: possible intended match here
define internal fastcc { float, float } @_RNvCslprwek9b7NP_12abi_handling3df3(float %x.0.val) unnamed_addr #3 {
^

Input file: /checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/autodiff/abi_handling.release/abi_handling.ll
Check file: /checkout/tests/codegen-llvm/autodiff/abi_handling.rs

-dump-input=help explains the following input dump.

Input was:
<<<<<<
           .
           .
           .
          22: @alloc_3ead134d5948a9f1bd2042fea45445d8 = private unnamed_addr constant [80 x i8] c"G[/checkout/tests/codegen-llvm/autodiff/abi_handling.rs:209:5] res_f7 = \C1 \00\80`\01\0A\00", align 1 
          23:  
          24: ; std::sys::backtrace::__rust_begin_short_backtrace::<fn(), ()> 
          25: ; Function Attrs: noinline nonlazybind uwtable 
          26: define internal fastcc void @_RINvNtNtCs7uNLBI2Wu2_3std3sys9backtrace28___rust_begin_short_backtraceFEuuECslprwek9b7NP_12abi_handling(ptr noundef nonnull readonly captures(none) %f) unnamed_addr #0 { 
          27: start: 
          28:  tail call void %f() 
          29:  tail call void asm sideeffect "", "~{memory}"() #7, !srcloc !5 
          30:  ret void 
          31: } 
          32:  
          33: ; std::rt::lang_start::<()>::{closure#0} 
          34: ; Function Attrs: inlinehint nonlazybind uwtable 
          35: define internal noundef i32 @_RNCINvNtCs7uNLBI2Wu2_3std2rt10lang_startuE0Cslprwek9b7NP_12abi_handling(ptr noalias nofree noundef readonly align 8 captures(none) dereferenceable(8) %_1) unnamed_addr #1 { 
          36: start: 
          37:  %_4 = load ptr, ptr %_1, align 8, !nonnull !6, !noundef !6 
          38: ; call std::sys::backtrace::__rust_begin_short_backtrace::<fn(), ()> 
          39:  tail call fastcc void @_RINvNtNtCs7uNLBI2Wu2_3std3sys9backtrace28___rust_begin_short_backtraceFEuuECslprwek9b7NP_12abi_handling(ptr noundef nonnull %_4) #8 
          40:  ret i32 0 
          41: } 
          42:  
          43: ; <std::rt::lang_start<()>::{closure#0} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} 
          44: ; Function Attrs: inlinehint nonlazybind uwtable 
          45: define internal noundef i32 @_RNSNvYNCINvNtCs7uNLBI2Wu2_3std2rt10lang_startuE0INtNtNtCsci9RURGgrrM_4core3ops8function6FnOnceuE9call_once6vtableCslprwek9b7NP_12abi_handling(ptr noundef readonly captures(none) %_1) unnamed_addr #1 personality ptr @rust_eh_personality { 
          46: start: 
          47:  %0 = load ptr, ptr %_1, align 8, !nonnull !6, !noundef !6 
          48: ; call std::sys::backtrace::__rust_begin_short_backtrace::<fn(), ()> 
          49:  tail call fastcc void @_RINvNtNtCs7uNLBI2Wu2_3std3sys9backtrace28___rust_begin_short_backtraceFEuuECslprwek9b7NP_12abi_handling(ptr noundef nonnull readonly %0) #8, !noalias !7 
          50:  ret i32 0 
          51: } 
          52:  
          53: ; <&dyn core::fmt::Debug as core::fmt::Debug>::fmt 
          54: ; Function Attrs: nonlazybind uwtable 
          55: define internal noundef zeroext i1 @_RNvXs1g_NtCsci9RURGgrrM_4core3fmtRDNtB6_5DebugEL_Bx_3fmtCslprwek9b7NP_12abi_handling(ptr noalias nofree noundef readonly align 8 captures(none) dereferenceable(16) %self, ptr noalias nofree noundef align 8 dereferenceable(24) %f) unnamed_addr #2 { 
          56: start: 
          57:  %_3.0 = load ptr, ptr %self, align 8, !nonnull !6, !noundef !6 
          58:  %0 = getelementptr inbounds nuw i8, ptr %self, i64 8 
          59:  %_3.1 = load ptr, ptr %0, align 8, !nonnull !6, !align !10, !noundef !6 
          60:  %1 = getelementptr inbounds nuw i8, ptr %_3.1, i64 24 
          61:  %2 = load ptr, ptr %1, align 8, !invariant.load !6, !nonnull !6 
          62:  %_0 = tail call noundef zeroext i1 %2(ptr noundef nonnull %_3.0, ptr noalias nofree noundef nonnull align 8 dereferenceable(24) %f) #9 
          63:  ret i1 %_0 
          64: } 
          65:  
          66: ; <&(f32, f32) as core::fmt::Debug>::fmt 
          67: ; Function Attrs: nonlazybind uwtable 
          68: define internal noundef zeroext i1 @_RNvXs1g_NtCsci9RURGgrrM_4core3fmtRTffENtB6_5Debug3fmtCslprwek9b7NP_12abi_handling(ptr noalias nofree noundef readonly align 8 captures(none) dereferenceable(8) %self, ptr noalias nofree noundef align 8 dereferenceable(24) %f) unnamed_addr #2 { 
          69: start: 
          70:  %T.i = alloca [8 x i8], align 8 
          71:  %U.i = alloca [8 x i8], align 8 
          72:  %builder.i = alloca [24 x i8], align 8 
          73:  %_3 = load ptr, ptr %self, align 8, !nonnull !6, !align !11, !noundef !6 
          74:  call void @llvm.lifetime.start.p0(ptr nonnull %builder.i), !noalias !12 
          75: ; call <core::fmt::Formatter>::debug_tuple 
          76:  call void @_RNvMsa_NtCsci9RURGgrrM_4core3fmtNtB5_9Formatter11debug_tuple(ptr noalias nofree noundef nonnull sret([24 x i8]) align 8 captures(address) dereferenceable(24) %builder.i, ptr noalias nofree noundef nonnull align 8 dereferenceable(24) %f, ptr noalias nofree noundef nonnull readonly captures(address, read_provenance) inttoptr (i64 1 to ptr), i64 noundef 0), !noalias !16 
          77:  call void @llvm.lifetime.start.p0(ptr nonnull %U.i), !noalias !12 
          78:  store ptr %_3, ptr %U.i, align 8, !noalias !12 
          79:  call void @llvm.lifetime.start.p0(ptr nonnull %T.i), !noalias !12 
          80:  %0 = getelementptr inbounds nuw i8, ptr %_3, i64 4 
          81:  store ptr %0, ptr %T.i, align 8, !noalias !12 
          82: ; call <core::fmt::builders::DebugTuple>::field 
          83:  %_6.i = call noundef nonnull align 8 ptr @_RNvMs2_NtNtCsci9RURGgrrM_4core3fmt8buildersNtB5_10DebugTuple5field(ptr noalias nofree noundef nonnull align 8 dereferenceable(24) %builder.i, ptr noundef nonnull %U.i, ptr noalias nofree noundef readonly align 8 captures(address, read_provenance) dereferenceable(32) @vtable.1) 
          84: ; call <core::fmt::builders::DebugTuple>::field 
          85:  %_10.i = call noundef nonnull align 8 ptr @_RNvMs2_NtNtCsci9RURGgrrM_4core3fmt8buildersNtB5_10DebugTuple5field(ptr noalias nofree noundef nonnull align 8 dereferenceable(24) %builder.i, ptr noundef nonnull %T.i, ptr noalias nofree noundef readonly align 8 captures(address, read_provenance) dereferenceable(32) @vtable.1) 
          86: ; call <core::fmt::builders::DebugTuple>::finish 
          87:  %_0.i = call noundef zeroext i1 @_RNvMs2_NtNtCsci9RURGgrrM_4core3fmt8buildersNtB5_10DebugTuple6finish(ptr noalias nofree noundef nonnull align 8 dereferenceable(24) %builder.i) 
          88:  call void @llvm.lifetime.end.p0(ptr nonnull %T.i), !noalias !12 
          89:  call void @llvm.lifetime.end.p0(ptr nonnull %U.i), !noalias !12 
          90:  call void @llvm.lifetime.end.p0(ptr nonnull %builder.i), !noalias !12 
          91:  ret i1 %_0.i 
          92: } 
          93:  
          94: ; <&f32 as core::fmt::Debug>::fmt 
          95: ; Function Attrs: nonlazybind uwtable 
          96: define internal noundef zeroext i1 @_RNvXs1g_NtCsci9RURGgrrM_4core3fmtRfNtB6_5Debug3fmtCslprwek9b7NP_12abi_handling(ptr noalias nofree noundef readonly align 8 captures(none) dereferenceable(8) %self, ptr noalias nofree noundef align 8 dereferenceable(24) %f) unnamed_addr #2 { 
          97: start: 
          98:  %_3 = load ptr, ptr %self, align 8, !nonnull !6, !align !11, !noundef !6 
          99: ; call <f32 as core::fmt::Debug>::fmt 
         100:  %_0 = tail call noundef zeroext i1 @_RNvXs2_NtNtCsci9RURGgrrM_4core3fmt5floatfNtB7_5Debug3fmt(ptr noalias nofree noundef nonnull readonly align 4 captures(address, read_provenance) dereferenceable(4) %_3, ptr noalias nofree noundef nonnull align 8 dereferenceable(24) %f) 
         101:  ret i1 %_0 
         102: } 
         103:  
         104: ; abi_handling::df1 
         105: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable 
         106: define internal fastcc float @_RNvCslprwek9b7NP_12abi_handling3df1(float %x.0.val, float %x.4.val) unnamed_addr #3 { 
         107: start: 
         108:  %0 = tail call fastcc { float, float } @fwddiffe_RNvCslprwek9b7NP_12abi_handling2f1(float %x.0.val, float %x.4.val) 
         109:  %oldret = extractvalue { float, float } %0, 0 
         110:  ret float %oldret 
         111: } 
         112:  
         113: ; abi_handling::f1 
         114: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable 
         115: define internal fastcc noundef float @_RNvCslprwek9b7NP_12abi_handling2f1(float %x.0.val, float %x.4.val) unnamed_addr #3 { 
         116: start: 
         117:  %_0 = fadd float %x.0.val, %x.4.val 
         118:  ret float %_0 
         119: } 
         120:  
         121: ; abi_handling::df2 
         122: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable 
next:61'0                     X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
         123: define internal fastcc float @_RNvCslprwek9b7NP_12abi_handling3df2(float noundef %x) unnamed_addr #3 { 
next:61'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
next:61'1     ?                                                                                                       possible intended match
         124: start: 
next:61'0     ~~~~~~~
         125:  %0 = tail call fastcc { float, float } @diffe_RNvCslprwek9b7NP_12abi_handling2f2(float %x) 
next:61'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         126:  %oldret = extractvalue { float, float } %0, 0 
next:61'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         127:  ret float %oldret 
next:61'0     ~~~~~~~~~~~~~~~~~~~
         128: } 
next:61'0     ~~
         129:  
next:61'0     ~
         130: ; abi_handling::f2 
next:61'0     ~~~~~~~~~~~~~~~~~~
         131: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable 
         132: define internal fastcc noundef float @_RNvCslprwek9b7NP_12abi_handling2f2(float noundef %x) unnamed_addr #3 { 
         133: start: 
         134:  %_0.i = fmul float %x, %x 
         135:  ret float %_0.i 
         136: } 
         137:  
         138: ; abi_handling::df3 
         139: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable 
next:80'0                     X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
         140: define internal fastcc { float, float } @_RNvCslprwek9b7NP_12abi_handling3df3(float %x.0.val) unnamed_addr #3 { 
next:80'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
next:80'1     ?                                                                                                                possible intended match
         141: start: 
next:80'0     ~~~~~~~
         142:  %0 = tail call fastcc { float, float } @fwddiffe_RNvCslprwek9b7NP_12abi_handling2f3(float %x.0.val) 
next:80'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         143:  ret { float, float } %0 
next:80'0     ~~~~~~~~~~~~~~~~~~~~~~~~~
         144: } 
next:80'0     ~~
         145:  
next:80'0     ~
         146: ; abi_handling::f3 
next:80'0     ~~~~~~~~~~~~~~~~~~
         147: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable 
         148: define internal fastcc noundef float @_RNvCslprwek9b7NP_12abi_handling2f3(float %x.0.val) unnamed_addr #3 { 
         149: start: 
         150:  %_0 = fmul float %x.0.val, 0x40099999A0000000 
         151:  ret float %_0 
         152: } 
         153:  
         154: ; abi_handling::df4 
         155: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable 
         156: define internal fastcc { float, float } @_RNvCslprwek9b7NP_12abi_handling3df4(float noundef %x.0, float noundef %x.1) unnamed_addr #3 { 
         157: start: 
         158:  %0 = tail call fastcc { float, float } @fwddiffe_RNvCslprwek9b7NP_12abi_handling2f4(float %x.0, float %x.1) 
         159:  ret { float, float } %0 
         160: } 
         161:  
         162: ; abi_handling::f4 
         163: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable 
         164: define internal fastcc noundef float @_RNvCslprwek9b7NP_12abi_handling2f4(float noundef %x.0, float noundef %x.1) unnamed_addr #3 { 
         165: start: 
         166:  %_0 = fmul float %x.0, %x.1 
         167:  ret float %_0 
         168: } 
         169:  
         170: ; abi_handling::df5 
         171: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable 
         172: define internal fastcc { float, float } @_RNvCslprwek9b7NP_12abi_handling3df5(float noundef %i.0, float noundef %i.1) unnamed_addr #3 { 
         173: start: 
         174:  %0 = tail call fastcc { float, float } @fwddiffe_RNvCslprwek9b7NP_12abi_handling2f5(float %i.0, float %i.1) 
         175:  ret { float, float } %0 
         176: } 
         177:  
         178: ; abi_handling::f5 
         179: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable 
         180: define internal fastcc noundef float @_RNvCslprwek9b7NP_12abi_handling2f5(float noundef %i.0, float noundef %i.1) unnamed_addr #3 { 
         181: start: 
         182:  %_0 = fadd float %i.0, %i.1 
         183:  ret float %_0 
         184: } 
         185:  
         186: ; abi_handling::df6 
         187: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable 
         188: define internal fastcc { float, float } @_RNvCslprwek9b7NP_12abi_handling3df6(float noundef %i.0, float noundef %i.1, float noundef %bi_0.0, float noundef %bi_0.1) unnamed_addr #3 { 
         189: start: 
         190:  %0 = tail call fast fastcc { float, float } @fwddiffe_RNvCslprwek9b7NP_12abi_handling2f6(float %i.0, float %i.1, float %bi_0.0, float %bi_0.1) 
         191:  ret { float, float } %0 
         192: } 
         193:  
         194: ; abi_handling::f6 
         195: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable 
         196: define internal fastcc noundef float @_RNvCslprwek9b7NP_12abi_handling2f6(float noundef %i.0, float noundef %i.1) unnamed_addr #3 { 
         197: start: 
         198:  %_3 = fmul float %i.1, %i.1 
         199:  %_0 = fadd float %i.0, %_3 
         200:  ret float %_0 
         201: } 
         202:  
         203: ; abi_handling::df7 
         204: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable 
         205: define internal fastcc { float, float } @_RNvCslprwek9b7NP_12abi_handling3df7(float %x.0.0.val, float %x.1.0.val) unnamed_addr #3 { 
         206: start: 
         207:  %0 = tail call fastcc { float, float } @fwddiffe_RNvCslprwek9b7NP_12abi_handling2f7(float %x.0.0.val, float %x.1.0.val) 
         208:  ret { float, float } %0 
         209: } 
         210:  
         211: ; abi_handling::f7 
         212: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable 
         213: define internal fastcc noundef float @_RNvCslprwek9b7NP_12abi_handling2f7(float %x.0.0.val, float %x.1.0.val) unnamed_addr #3 { 
         214: start: 
         215:  %_0 = fmul float %x.0.0.val, %x.1.0.val 
         216:  ret float %_0 
         217: } 
         218:  
         219: ; abi_handling::main 
         220: ; Function Attrs: nonlazybind uwtable 
         221: define internal void @_RNvCslprwek9b7NP_12abi_handling4main() unnamed_addr #2 { 
         222: start: 
         223:  %args26 = alloca [16 x i8], align 8 
         224:  %_171 = alloca [8 x i8], align 8 
         225:  %_169 = alloca [16 x i8], align 8 
         226:  %tmp25 = alloca [8 x i8], align 4 
         227:  %args24 = alloca [16 x i8], align 8 
         228:  %_159 = alloca [8 x i8], align 8 
         229:  %_157 = alloca [16 x i8], align 8 
         230:  %tmp23 = alloca [4 x i8], align 4 
         231:  %args22 = alloca [16 x i8], align 8 
         232:  %_145 = alloca [8 x i8], align 8 
         233:  %_143 = alloca [16 x i8], align 8 
         234:  %tmp21 = alloca [8 x i8], align 4 
         235:  %args20 = alloca [16 x i8], align 8 
         236:  %_132 = alloca [8 x i8], align 8 
         237:  %_130 = alloca [16 x i8], align 8 
         238:  %tmp19 = alloca [4 x i8], align 4 
         239:  %args18 = alloca [16 x i8], align 8 
         240:  %_119 = alloca [8 x i8], align 8 
           .
           .
           .
>>>>>>

------------------------------------------

error in revision `release`: verification with 'FileCheck' failed
status: exit status: 1
command: "/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/build/bin/FileCheck" "--input-file" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/autodiff/abi_handling.release/abi_handling.ll" "/checkout/tests/codegen-llvm/autodiff/abi_handling.rs" "--check-prefix=CHECK" "--check-prefix" "release" "--allow-unused-prefixes" "--dump-input-context" "100"
stdout: none
--- stderr -------------------------------
/checkout/tests/codegen-llvm/autodiff/abi_handling.rs:61:18: error: release-NEXT: expected string not found in input
// release-NEXT: define internal fastcc noundef float
                 ^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/autodiff/abi_handling.release/abi_handling.ll:122:17: note: scanning from here
; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable
                ^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/autodiff/abi_handling.release/abi_handling.ll:123:1: note: possible intended match here
define internal fastcc float @_RNvCslprwek9b7NP_12abi_handling3df2(float noundef %x) unnamed_addr #3 {
^
/checkout/tests/codegen-llvm/autodiff/abi_handling.rs:80:18: error: release-NEXT: expected string not found in input
// release-NEXT: define internal fastcc float
                 ^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/autodiff/abi_handling.release/abi_handling.ll:139:17: note: scanning from here
; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable
                ^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/autodiff/abi_handling.release/abi_handling.ll:140:1: note: possible intended match here
define internal fastcc { float, float } @_RNvCslprwek9b7NP_12abi_handling3df3(float %x.0.val) unnamed_addr #3 {
^

Input file: /checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/autodiff/abi_handling.release/abi_handling.ll
Check file: /checkout/tests/codegen-llvm/autodiff/abi_handling.rs

-dump-input=help explains the following input dump.

Input was:
<<<<<<
           .
           .
           .
          22: @alloc_3ead134d5948a9f1bd2042fea45445d8 = private unnamed_addr constant [80 x i8] c"G[/checkout/tests/codegen-llvm/autodiff/abi_handling.rs:209:5] res_f7 = \C1 \00\80`\01\0A\00", align 1 
          23:  
          24: ; std::sys::backtrace::__rust_begin_short_backtrace::<fn(), ()> 
          25: ; Function Attrs: noinline nonlazybind uwtable 
          26: define internal fastcc void @_RINvNtNtCs7uNLBI2Wu2_3std3sys9backtrace28___rust_begin_short_backtraceFEuuECslprwek9b7NP_12abi_handling(ptr noundef nonnull readonly captures(none) %f) unnamed_addr #0 { 
          27: start: 
          28:  tail call void %f() 
          29:  tail call void asm sideeffect "", "~{memory}"() #7, !srcloc !5 
          30:  ret void 
          31: } 
          32:  
          33: ; std::rt::lang_start::<()>::{closure#0} 
          34: ; Function Attrs: inlinehint nonlazybind uwtable 
          35: define internal noundef i32 @_RNCINvNtCs7uNLBI2Wu2_3std2rt10lang_startuE0Cslprwek9b7NP_12abi_handling(ptr noalias nofree noundef readonly align 8 captures(none) dereferenceable(8) %_1) unnamed_addr #1 { 
          36: start: 
          37:  %_4 = load ptr, ptr %_1, align 8, !nonnull !6, !noundef !6 
          38: ; call std::sys::backtrace::__rust_begin_short_backtrace::<fn(), ()> 
          39:  tail call fastcc void @_RINvNtNtCs7uNLBI2Wu2_3std3sys9backtrace28___rust_begin_short_backtraceFEuuECslprwek9b7NP_12abi_handling(ptr noundef nonnull %_4) #8 
          40:  ret i32 0 
          41: } 
          42:  
          43: ; <std::rt::lang_start<()>::{closure#0} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} 
          44: ; Function Attrs: inlinehint nonlazybind uwtable 
          45: define internal noundef i32 @_RNSNvYNCINvNtCs7uNLBI2Wu2_3std2rt10lang_startuE0INtNtNtCsci9RURGgrrM_4core3ops8function6FnOnceuE9call_once6vtableCslprwek9b7NP_12abi_handling(ptr noundef readonly captures(none) %_1) unnamed_addr #1 personality ptr @rust_eh_personality { 
          46: start: 
          47:  %0 = load ptr, ptr %_1, align 8, !nonnull !6, !noundef !6 
          48: ; call std::sys::backtrace::__rust_begin_short_backtrace::<fn(), ()> 
          49:  tail call fastcc void @_RINvNtNtCs7uNLBI2Wu2_3std3sys9backtrace28___rust_begin_short_backtraceFEuuECslprwek9b7NP_12abi_handling(ptr noundef nonnull readonly %0) #8, !noalias !7 
          50:  ret i32 0 
          51: } 
          52:  
          53: ; <&dyn core::fmt::Debug as core::fmt::Debug>::fmt 
          54: ; Function Attrs: nonlazybind uwtable 
          55: define internal noundef zeroext i1 @_RNvXs1g_NtCsci9RURGgrrM_4core3fmtRDNtB6_5DebugEL_Bx_3fmtCslprwek9b7NP_12abi_handling(ptr noalias nofree noundef readonly align 8 captures(none) dereferenceable(16) %self, ptr noalias nofree noundef align 8 dereferenceable(24) %f) unnamed_addr #2 { 
          56: start: 
          57:  %_3.0 = load ptr, ptr %self, align 8, !nonnull !6, !noundef !6 
          58:  %0 = getelementptr inbounds nuw i8, ptr %self, i64 8 
          59:  %_3.1 = load ptr, ptr %0, align 8, !nonnull !6, !align !10, !noundef !6 
          60:  %1 = getelementptr inbounds nuw i8, ptr %_3.1, i64 24 
          61:  %2 = load ptr, ptr %1, align 8, !invariant.load !6, !nonnull !6 
          62:  %_0 = tail call noundef zeroext i1 %2(ptr noundef nonnull %_3.0, ptr noalias nofree noundef nonnull align 8 dereferenceable(24) %f) #9 
          63:  ret i1 %_0 
          64: } 
          65:  
          66: ; <&(f32, f32) as core::fmt::Debug>::fmt 
          67: ; Function Attrs: nonlazybind uwtable 
          68: define internal noundef zeroext i1 @_RNvXs1g_NtCsci9RURGgrrM_4core3fmtRTffENtB6_5Debug3fmtCslprwek9b7NP_12abi_handling(ptr noalias nofree noundef readonly align 8 captures(none) dereferenceable(8) %self, ptr noalias nofree noundef align 8 dereferenceable(24) %f) unnamed_addr #2 { 
          69: start: 
          70:  %T.i = alloca [8 x i8], align 8 
          71:  %U.i = alloca [8 x i8], align 8 
          72:  %builder.i = alloca [24 x i8], align 8 
          73:  %_3 = load ptr, ptr %self, align 8, !nonnull !6, !align !11, !noundef !6 
          74:  call void @llvm.lifetime.start.p0(ptr nonnull %builder.i), !noalias !12 
          75: ; call <core::fmt::Formatter>::debug_tuple 
          76:  call void @_RNvMsa_NtCsci9RURGgrrM_4core3fmtNtB5_9Formatter11debug_tuple(ptr noalias nofree noundef nonnull sret([24 x i8]) align 8 captures(address) dereferenceable(24) %builder.i, ptr noalias nofree noundef nonnull align 8 dereferenceable(24) %f, ptr noalias nofree noundef nonnull readonly captures(address, read_provenance) inttoptr (i64 1 to ptr), i64 noundef 0), !noalias !16 
          77:  call void @llvm.lifetime.start.p0(ptr nonnull %U.i), !noalias !12 
          78:  store ptr %_3, ptr %U.i, align 8, !noalias !12 
          79:  call void @llvm.lifetime.start.p0(ptr nonnull %T.i), !noalias !12 
          80:  %0 = getelementptr inbounds nuw i8, ptr %_3, i64 4 
          81:  store ptr %0, ptr %T.i, align 8, !noalias !12 
          82: ; call <core::fmt::builders::DebugTuple>::field 
          83:  %_6.i = call noundef nonnull align 8 ptr @_RNvMs2_NtNtCsci9RURGgrrM_4core3fmt8buildersNtB5_10DebugTuple5field(ptr noalias nofree noundef nonnull align 8 dereferenceable(24) %builder.i, ptr noundef nonnull %U.i, ptr noalias nofree noundef readonly align 8 captures(address, read_provenance) dereferenceable(32) @vtable.1) 
          84: ; call <core::fmt::builders::DebugTuple>::field 
          85:  %_10.i = call noundef nonnull align 8 ptr @_RNvMs2_NtNtCsci9RURGgrrM_4core3fmt8buildersNtB5_10DebugTuple5field(ptr noalias nofree noundef nonnull align 8 dereferenceable(24) %builder.i, ptr noundef nonnull %T.i, ptr noalias nofree noundef readonly align 8 captures(address, read_provenance) dereferenceable(32) @vtable.1) 
          86: ; call <core::fmt::builders::DebugTuple>::finish 
          87:  %_0.i = call noundef zeroext i1 @_RNvMs2_NtNtCsci9RURGgrrM_4core3fmt8buildersNtB5_10DebugTuple6finish(ptr noalias nofree noundef nonnull align 8 dereferenceable(24) %builder.i) 
          88:  call void @llvm.lifetime.end.p0(ptr nonnull %T.i), !noalias !12 
          89:  call void @llvm.lifetime.end.p0(ptr nonnull %U.i), !noalias !12 
          90:  call void @llvm.lifetime.end.p0(ptr nonnull %builder.i), !noalias !12 
          91:  ret i1 %_0.i 
          92: } 
          93:  
          94: ; <&f32 as core::fmt::Debug>::fmt 
          95: ; Function Attrs: nonlazybind uwtable 
          96: define internal noundef zeroext i1 @_RNvXs1g_NtCsci9RURGgrrM_4core3fmtRfNtB6_5Debug3fmtCslprwek9b7NP_12abi_handling(ptr noalias nofree noundef readonly align 8 captures(none) dereferenceable(8) %self, ptr noalias nofree noundef align 8 dereferenceable(24) %f) unnamed_addr #2 { 
          97: start: 
          98:  %_3 = load ptr, ptr %self, align 8, !nonnull !6, !align !11, !noundef !6 
          99: ; call <f32 as core::fmt::Debug>::fmt 
         100:  %_0 = tail call noundef zeroext i1 @_RNvXs2_NtNtCsci9RURGgrrM_4core3fmt5floatfNtB7_5Debug3fmt(ptr noalias nofree noundef nonnull readonly align 4 captures(address, read_provenance) dereferenceable(4) %_3, ptr noalias nofree noundef nonnull align 8 dereferenceable(24) %f) 
         101:  ret i1 %_0 
         102: } 
         103:  
         104: ; abi_handling::df1 
         105: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable 
         106: define internal fastcc float @_RNvCslprwek9b7NP_12abi_handling3df1(float %x.0.val, float %x.4.val) unnamed_addr #3 { 
         107: start: 
         108:  %0 = tail call fastcc { float, float } @fwddiffe_RNvCslprwek9b7NP_12abi_handling2f1(float %x.0.val, float %x.4.val) 
         109:  %oldret = extractvalue { float, float } %0, 0 
         110:  ret float %oldret 
         111: } 
         112:  
         113: ; abi_handling::f1 
         114: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable 
         115: define internal fastcc noundef float @_RNvCslprwek9b7NP_12abi_handling2f1(float %x.0.val, float %x.4.val) unnamed_addr #3 { 
         116: start: 
         117:  %_0 = fadd float %x.0.val, %x.4.val 
         118:  ret float %_0 
         119: } 
         120:  
         121: ; abi_handling::df2 
         122: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable 
next:61'0                     X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
         123: define internal fastcc float @_RNvCslprwek9b7NP_12abi_handling3df2(float noundef %x) unnamed_addr #3 { 
next:61'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
next:61'1     ?                                                                                                       possible intended match
         124: start: 
next:61'0     ~~~~~~~
         125:  %0 = tail call fastcc { float, float } @diffe_RNvCslprwek9b7NP_12abi_handling2f2(float %x) 
next:61'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         126:  %oldret = extractvalue { float, float } %0, 0 
next:61'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         127:  ret float %oldret 
next:61'0     ~~~~~~~~~~~~~~~~~~~
         128: } 
next:61'0     ~~
         129:  
next:61'0     ~
         130: ; abi_handling::f2 
next:61'0     ~~~~~~~~~~~~~~~~~~
         131: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable 
         132: define internal fastcc noundef float @_RNvCslprwek9b7NP_12abi_handling2f2(float noundef %x) unnamed_addr #3 { 
         133: start: 
         134:  %_0.i = fmul float %x, %x 
         135:  ret float %_0.i 
         136: } 
         137:  
         138: ; abi_handling::df3 
         139: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable 
next:80'0                     X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
         140: define internal fastcc { float, float } @_RNvCslprwek9b7NP_12abi_handling3df3(float %x.0.val) unnamed_addr #3 { 
next:80'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
next:80'1     ?                                                                                                                possible intended match
         141: start: 
next:80'0     ~~~~~~~
         142:  %0 = tail call fastcc { float, float } @fwddiffe_RNvCslprwek9b7NP_12abi_handling2f3(float %x.0.val) 
next:80'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         143:  ret { float, float } %0 
next:80'0     ~~~~~~~~~~~~~~~~~~~~~~~~~
         144: } 
next:80'0     ~~
         145:  
next:80'0     ~
         146: ; abi_handling::f3 
next:80'0     ~~~~~~~~~~~~~~~~~~
         147: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable 
         148: define internal fastcc noundef float @_RNvCslprwek9b7NP_12abi_handling2f3(float %x.0.val) unnamed_addr #3 { 
         149: start: 
         150:  %_0 = fmul float %x.0.val, 0x40099999A0000000 
         151:  ret float %_0 
         152: } 
         153:  
         154: ; abi_handling::df4 
         155: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable 
         156: define internal fastcc { float, float } @_RNvCslprwek9b7NP_12abi_handling3df4(float noundef %x.0, float noundef %x.1) unnamed_addr #3 { 
         157: start: 
         158:  %0 = tail call fastcc { float, float } @fwddiffe_RNvCslprwek9b7NP_12abi_handling2f4(float %x.0, float %x.1) 
         159:  ret { float, float } %0 
         160: } 
         161:  
         162: ; abi_handling::f4 
         163: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable 
         164: define internal fastcc noundef float @_RNvCslprwek9b7NP_12abi_handling2f4(float noundef %x.0, float noundef %x.1) unnamed_addr #3 { 
         165: start: 
         166:  %_0 = fmul float %x.0, %x.1 
         167:  ret float %_0 
         168: } 
         169:  
         170: ; abi_handling::df5 
         171: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable 
         172: define internal fastcc { float, float } @_RNvCslprwek9b7NP_12abi_handling3df5(float noundef %i.0, float noundef %i.1) unnamed_addr #3 { 
         173: start: 
         174:  %0 = tail call fastcc { float, float } @fwddiffe_RNvCslprwek9b7NP_12abi_handling2f5(float %i.0, float %i.1) 
         175:  ret { float, float } %0 
         176: } 
         177:  
         178: ; abi_handling::f5 
         179: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable 
         180: define internal fastcc noundef float @_RNvCslprwek9b7NP_12abi_handling2f5(float noundef %i.0, float noundef %i.1) unnamed_addr #3 { 
         181: start: 
         182:  %_0 = fadd float %i.0, %i.1 
         183:  ret float %_0 
         184: } 
         185:  
         186: ; abi_handling::df6 
         187: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind nonlazybind willreturn memory(none) uwtable 
         188: define internal fastcc { float, float } @_RNvCslprwek9b7NP_12abi_handling3df6(float noundef %i.0, float noundef %i.1, float noundef %bi_0.0, float noundef %bi_0.1) unnamed_addr #3 { 
         189: start: 
---
[TIMING:end] test::Ui { test_compiler: Compiler { stage: 1, host: x86_64-unknown-linux-gnu, forced_compiler: false }, target: x86_64-unknown-linux-gnu } -- 0.000

1 command(s) did not execute successfully:

  - env -u CARGO DOC_RUST_LANG_ORG_CHANNEL="https://doc.rust-lang.org/nightly" LD_LIBRARY_PATH="" RUSTC="/checkout/obj/build/x86_64-unknown-linux-gnu/stage0/bin/rustc" RUSTC_BOOTSTRAP="1" RUSTC_FORCE_RUSTC_VERSION="compiletest" RUST_TEST_THREADS="4" RUST_TEST_TMPDIR="/checkout/obj/build/tmp" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage1-tools-bin/compiletest" "--stage" "1" "--stage-id" "stage1-x86_64-unknown-linux-gnu" "--compile-lib-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage1/lib" "--run-lib-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage1/lib/rustlib/x86_64-unknown-linux-gnu/lib" "--rustc-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage1/bin/rustc" "--minicore-path" "/checkout/tests/auxiliary/minicore.rs" "--src-root" "/checkout" "--src-test-suite-root" "/checkout/tests/codegen-llvm" "--build-root" "/checkout/obj/build" "--build-test-suite-root" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm" "--sysroot-base" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage1" "--suite" "codegen-llvm" "--mode" "codegen" "--target" "x86_64-unknown-linux-gnu" "--host" "x86_64-unknown-linux-gnu" "--llvm-filecheck" "/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/build/bin/FileCheck" "--default-codegen-backend" "llvm" "--has-enzyme" "--optimize-tests" "--host-rustcflags" "-Crpath" "--host-rustcflags" "-Cdebuginfo=0" "--target-rustcflags" "-Crpath" "--target-rustcflags" "-Cdebuginfo=0" "--python" "/usr/bin/python3" "autodiff" "--verbose-run-make-subprocess-output" "--with-rustc-debug-assertions" "--with-std-debug-assertions" "--jobs" "4" "--llvm-version" "22.1.8-rust-1.98.0-nightly" "--llvm-components" "aarch64 aarch64asmparser aarch64codegen aarch64desc aarch64disassembler aarch64info aarch64utils abi aggressiveinstcombine all all-targets amdgpu amdgpuasmparser amdgpucodegen amdgpudesc amdgpudisassembler amdgpuinfo amdgputargetmca amdgpuutils analysis arm armasmparser armcodegen armdesc armdisassembler arminfo armutils asmparser asmprinter avr avrasmparser avrcodegen avrdesc avrdisassembler avrinfo binaryformat bitreader bitstreamreader bitwriter bpf bpfasmparser bpfcodegen bpfdesc bpfdisassembler bpfinfo cas cfguard cgdata codegen codegentypes core coroutines coverage csky cskyasmparser cskycodegen cskydesc cskydisassembler cskyinfo debuginfobtf debuginfocodeview debuginfodwarf debuginfodwarflowlevel debuginfogsym debuginfologicalview debuginfomsf debuginfopdb demangle dlltooldriver dtlto dwarfcfichecker dwarflinker dwarflinkerclassic dwarflinkerparallel dwp engine executionengine extensions filecheck frontendatomic frontenddirective frontenddriver frontendhlsl frontendoffloading frontendopenacc frontendopenmp fuzzercli fuzzmutate globalisel hexagon hexagonasmparser hexagoncodegen hexagondesc hexagondisassembler hexagoninfo hipstdpar instcombine instrumentation interfacestub interpreter ipo irprinter irreader jitlink libdriver lineeditor linker loongarch loongarchasmparser loongarchcodegen loongarchdesc loongarchdisassembler loongarchinfo lto m68k m68kasmparser m68kcodegen m68kdesc m68kdisassembler m68kinfo mc mca mcdisassembler mcjit mcparser mips mipsasmparser mipscodegen mipsdesc mipsdisassembler mipsinfo mirparser msp430 msp430asmparser msp430codegen msp430desc msp430disassembler msp430info native nativecodegen nvptx nvptxcodegen nvptxdesc nvptxinfo objcarcopts objcopy object objectyaml option orcdebugging orcjit orcshared orctargetprocess passes plugins powerpc powerpcasmparser powerpccodegen powerpcdesc powerpcdisassembler powerpcinfo profiledata remarks riscv riscvasmparser riscvcodegen riscvdesc riscvdisassembler riscvinfo riscvtargetmca runtimedyld sandboxir scalaropts selectiondag sparc sparcasmparser sparccodegen sparcdesc sparcdisassembler sparcinfo support supportlsp symbolize systemz systemzasmparser systemzcodegen systemzdesc systemzdisassembler systemzinfo tablegen target targetparser telemetry textapi textapibinaryreader transformutils vectorize webassembly webassemblyasmparser webassemblycodegen webassemblydesc webassemblydisassembler webassemblyinfo webassemblyutils windowsdriver windowsmanifest x86 x86asmparser x86codegen x86desc x86disassembler x86info x86targetmca xray xtensa xtensaasmparser xtensacodegen xtensadesc xtensadisassembler xtensainfo" "--cc" "" "--cxx" "" "--cflags" "" "--cxxflags" "" "--channel" "nightly" "--git-hash" "--nightly-branch" "main" "--git-merge-commit-email" "bors@rust-lang.org" (failure_mode=Exit)
Bootstrap failed while executing `test --stage 1 --no-fail-fast tests/codegen-llvm/autodiff tests/pretty/autodiff tests/ui/autodiff tests/ui/feature-gates/feature-gate-autodiff.rs`
Build completed unsuccessfully in 0:00:48
  local time: Wed Jul  1 12:27:55 UTC 2026
  network time: Wed, 01 Jul 2026 12:27:55 GMT
##[error]Process completed with exit code 1.
##[group]Run echo "disk usage:"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-CI Area: Our Github Actions CI A-testsuite Area: The testsuite used to check the correctness of rustc S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants