Skip to content

std::autodiff should work with download-llvm #147535

@ZuseZ4

Description

@ZuseZ4

Summary

The current build instructions for rustc with std::autodiff enabled are given here:
https://rustc-dev-guide.rust-lang.org/autodiff/installation.html#build-instructions
Especially

./configure --enable-llvm-link-shared --enable-llvm-plugins --enable-llvm-enzyme --release-channel=nightly --enable-llvm-assertions --enable-clang --enable-lld --enable-option-checking --enable-ninja --disable-docs

We can already drop the --enable-llvm-plugins, as well as --enable-llvm-assertions --enable-clang --enable-lld
They are for convenience, but not strictly needed.

Command used

./x build --stage 1 library
./x test --stage 1 tests/codegen-llvm/autodiff
./x test --stage 1 tests/pretty/autodiff
./x test --stage 1 tests/ui/autodiff
./x test --stage 1 tests/ui/feature-gates/feature-gate-autodiff.rs

Expected behaviour

It should build rustc and pass all autodiff tests

Actual behaviour

The last time I tested the build failed. Building Enzyme in bootstrap requires the path to LLVM, and that path is different when we build LLVM vs when we download it.
We should handle both cases.

Bootstrap configuration (bootstrap.toml)

<config>

Operating system

HEAD

Additional context

Build Log

Metadata

Metadata

Assignees

No one assigned

    Labels

    C-bugCategory: This is a bug.E-easyCall for participation: Easy difficulty. Experience needed to fix: Not much. Good first issue.T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions