about summary refs log tree commit diff
path: root/compiler/rustc_codegen_llvm/src
diff options
context:
space:
mode:
authorDevJPM <jean-pierre.muench@web.de>2020-10-26 08:15:23 +0100
committerDevJPM <jean-pierre.muench@web.de>2020-10-26 08:36:14 +0100
commit3daa93f555f4dab102da2a8d05cc38c4087166af (patch)
tree890729ebc92c6e8e6085156c67914b1bd23209db /compiler/rustc_codegen_llvm/src
parentcd95e939bb9bef598be54067e93ac712d43fba71 (diff)
downloadrust-3daa93f555f4dab102da2a8d05cc38c4087166af.tar.gz
rust-3daa93f555f4dab102da2a8d05cc38c4087166af.zip
Updated documentation, x86 feature detection testing, and removed LLVM 9 exclusive features
Updated the added documentation in llvm_util.rs to note which copies of LLVM need to be inspected.
Removed avx512bf16 and avx512vp2intersect because they are unsupported before LLVM 9 with the build with external LLVM 8 being supported
Re-introduced detection testing previously removed for un-requestable features tsc and mmx
Diffstat (limited to 'compiler/rustc_codegen_llvm/src')
-rw-r--r--compiler/rustc_codegen_llvm/src/llvm_util.rs5
1 files changed, 5 insertions, 0 deletions
diff --git a/compiler/rustc_codegen_llvm/src/llvm_util.rs b/compiler/rustc_codegen_llvm/src/llvm_util.rs
index 2cc2825cf32..91686d27442 100644
--- a/compiler/rustc_codegen_llvm/src/llvm_util.rs
+++ b/compiler/rustc_codegen_llvm/src/llvm_util.rs
@@ -139,6 +139,11 @@ pub fn time_trace_profiler_finish(file_name: &str) {
 // array, leading to crashes.
 // To find a list of LLVM's names, check llvm-project/llvm/include/llvm/Support/*TargetParser.def
 // where the * matches the architecture's name
+// Beware to not use the llvm github project for this, but check the git submodule
+// found in src/llvm-project
+// Though note that Rust can also be build with an external precompiled version of LLVM
+// which might lead to failures if the oldest tested / supported LLVM version
+// doesn't yet support the relevant intrinsics
 pub fn to_llvm_feature<'a>(sess: &Session, s: &'a str) -> &'a str {
     let arch = if sess.target.arch == "x86_64" { "x86" } else { &*sess.target.arch };
     match (arch, s) {