| include ../tools.mk |
| |
| # only-linux |
| |
| all: |
| # `-Ccodegen-units=16 -Copt-level=2` is used here to trigger thin LTO |
| # across codegen units to test deduplication of the named metadata |
| # (see `LLVMRustPrepareThinLTOImport` for details). |
| echo 'fn main(){}' | $(RUSTC) - --emit=link,obj -Csave-temps -Ccodegen-units=16 -Copt-level=2 --target=$(TARGET) |
| |
| # `llvm-dis` is used here since `--emit=llvm-ir` does not emit LLVM IR |
| # for temporary outputs. |
| "$(LLVM_BIN_DIR)"/llvm-dis $(TMPDIR)/*.bc |
| |
| # Check LLVM IR files (including temporary outputs) have `!llvm.ident` |
| # named metadata, reusing the related codegen test. |
| set -e; for f in $(TMPDIR)/*.ll; do \ |
| $(LLVM_FILECHECK) --input-file $$f ../../codegen/llvm-ident.rs; \ |
| done |