Auto merge of #129176 - EnzymeAD:enzyme-backend, r=albertlarsan68

Autodiff Upstreaming - enzyme backend

Tracking issue: https://github.com/rust-lang/rust/issues/124509

Part of https://github.com/rust-lang/rust/pull/129175

This PR should allow building Enzyme from source on Tier 1 targets (when also building LLVM), except MSVC.
It's only a small fraction (~200 lines) of the whole upstream PR, but due to bootstrapping and the number of configurations in which rustc can be build I assume that this will be the hardest to merge, so I'm starting with it.
Happy to hear what changes are required to be able to upstream this code.

**Content:**
It contains a new configure flag `--enable-llvm-enzyme`, and will build the new Enzyme submodule when it is set.

**Discussion:**
Apparently Rust CI isn't able to clone repositories outside the rust-lang org? At least I'm seeing this error in CI:
```
git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
```
Does that mean we would need to mirror github.com/EnzymeAD/Enzyme in rust-lang, until LLVM upgrades Enzyme from an Incubator project to something that ships as part of the monorepo?

Tracking:

- https://github.com/rust-lang/rust/issues/124509
This commit is contained in:
bors 2024-09-06 09:42:37 +00:00
commit 1b9b8e1684

Diff content is not available