summaryrefslogtreecommitdiff
path: root/dev-lang/rust/files/1.43.0-llvm10.patch
diff options
context:
space:
mode:
Diffstat (limited to 'dev-lang/rust/files/1.43.0-llvm10.patch')
-rw-r--r--dev-lang/rust/files/1.43.0-llvm10.patch194
1 files changed, 0 insertions, 194 deletions
diff --git a/dev-lang/rust/files/1.43.0-llvm10.patch b/dev-lang/rust/files/1.43.0-llvm10.patch
deleted file mode 100644
index 14940716abf6..000000000000
--- a/dev-lang/rust/files/1.43.0-llvm10.patch
+++ /dev/null
@@ -1,194 +0,0 @@
-From fe83c6cd5922fd6f964fa40ca704fb7f92426202 Mon Sep 17 00:00:00 2001
-From: Nikita Popov <nikita.ppv@gmail.com>
-Date: Tue, 4 Feb 2020 19:23:45 +0100
-Subject: [PATCH 2/7] Remove trailing newline from llvm-config output
-
----
- src/bootstrap/test.rs | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/src/bootstrap/test.rs b/src/bootstrap/test.rs
-index 4cfda606c4bc8..aaec10ff10b38 100644
---- a/src/bootstrap/test.rs
-+++ b/src/bootstrap/test.rs
-@@ -1142,6 +1142,8 @@ impl Step for Compiletest {
- let llvm_config = builder.ensure(native::Llvm { target: builder.config.build });
- if !builder.config.dry_run {
- let llvm_version = output(Command::new(&llvm_config).arg("--version"));
-+ // Remove trailing newline from llvm-config output.
-+ let llvm_version = llvm_version.trim_end();
- cmd.arg("--llvm-version").arg(llvm_version);
- }
- if !builder.is_rust_llvm(target) {
-
-From 545f18e8f1c2227b74091fbca5c73595f65eeeed Mon Sep 17 00:00:00 2001
-From: Nikita Popov <nikita.ppv@gmail.com>
-Date: Sat, 18 Jan 2020 23:00:30 +0100
-Subject: [PATCH 3/7] Fix LLVM version handling in compiletest
-
-Convert version string to integer before comparing. Otherwise
-we get into trouble with double digit versions ;)
----
- src/tools/compiletest/src/header.rs | 27 +++++++++++++++++++++------
- 1 file changed, 21 insertions(+), 6 deletions(-)
-
-diff --git a/src/tools/compiletest/src/header.rs b/src/tools/compiletest/src/header.rs
-index 2a24a8c3c9485..cb648db8830ef 100644
---- a/src/tools/compiletest/src/header.rs
-+++ b/src/tools/compiletest/src/header.rs
-@@ -191,6 +191,7 @@ impl EarlyProps {
- return true;
- }
- if let Some(ref actual_version) = config.llvm_version {
-+ let actual_version = version_to_int(actual_version);
- if line.starts_with("min-llvm-version") {
- let min_version = line
- .trim_end()
-@@ -199,7 +200,7 @@ impl EarlyProps {
- .expect("Malformed llvm version directive");
- // Ignore if actual version is smaller the minimum required
- // version
-- &actual_version[..] < min_version
-+ actual_version < version_to_int(min_version)
- } else if line.starts_with("min-system-llvm-version") {
- let min_version = line
- .trim_end()
-@@ -208,7 +209,7 @@ impl EarlyProps {
- .expect("Malformed llvm version directive");
- // Ignore if using system LLVM and actual version
- // is smaller the minimum required version
-- config.system_llvm && &actual_version[..] < min_version
-+ config.system_llvm && actual_version < version_to_int(min_version)
- } else if line.starts_with("ignore-llvm-version") {
- // Syntax is: "ignore-llvm-version <version1> [- <version2>]"
- let range_components = line
-@@ -219,15 +220,15 @@ impl EarlyProps {
- .take(3) // 3 or more = invalid, so take at most 3.
- .collect::<Vec<&str>>();
- match range_components.len() {
-- 1 => &actual_version[..] == range_components[0],
-+ 1 => actual_version == version_to_int(range_components[0]),
- 2 => {
-- let v_min = range_components[0];
-- let v_max = range_components[1];
-+ let v_min = version_to_int(range_components[0]);
-+ let v_max = version_to_int(range_components[1]);
- if v_max < v_min {
- panic!("Malformed LLVM version range: max < min")
- }
- // Ignore if version lies inside of range.
-- &actual_version[..] >= v_min && &actual_version[..] <= v_max
-+ actual_version >= v_min && actual_version <= v_max
- }
- _ => panic!("Malformed LLVM version directive"),
- }
-@@ -238,6 +239,20 @@ impl EarlyProps {
- false
- }
- }
-+
-+ fn version_to_int(version: &str) -> u32 {
-+ let version_without_suffix = version.split('-').next().unwrap();
-+ let components: Vec<u32> = version_without_suffix
-+ .split('.')
-+ .map(|s| s.parse().expect("Malformed version component"))
-+ .collect();
-+ match components.len() {
-+ 1 => components[0] * 10000,
-+ 2 => components[0] * 10000 + components[1] * 100,
-+ 3 => components[0] * 10000 + components[1] * 100 + components[2],
-+ _ => panic!("Malformed version"),
-+ }
-+ }
- }
- }
-
-
-From e06fff0609fedf95b826d82ff32ff836b0e3f3da Mon Sep 17 00:00:00 2001
-From: Nikita Popov <nikita.ppv@gmail.com>
-Date: Sun, 19 Jan 2020 22:47:45 +0100
-Subject: [PATCH 4/7] Adjust data layout in test
-
----
- .../run-make-fulldeps/target-specs/my-awesome-platform.json | 2 +-
- .../target-specs/my-x86_64-unknown-linux-gnu-platform.json | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/test/run-make-fulldeps/target-specs/my-awesome-platform.json b/src/test/run-make-fulldeps/target-specs/my-awesome-platform.json
-index 8d028280a8da7..00de3de05f07a 100644
---- a/src/test/run-make-fulldeps/target-specs/my-awesome-platform.json
-+++ b/src/test/run-make-fulldeps/target-specs/my-awesome-platform.json
-@@ -1,5 +1,5 @@
- {
-- "data-layout": "e-m:e-p:32:32-f64:32:64-f80:32-n8:16:32-S128",
-+ "data-layout": "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-f64:32:64-f80:32-n8:16:32-S128",
- "linker-flavor": "gcc",
- "llvm-target": "i686-unknown-linux-gnu",
- "target-endian": "little",
-diff --git a/src/test/run-make-fulldeps/target-specs/my-x86_64-unknown-linux-gnu-platform.json b/src/test/run-make-fulldeps/target-specs/my-x86_64-unknown-linux-gnu-platform.json
-index 48040ae3da0ef..6d5e964ed4fee 100644
---- a/src/test/run-make-fulldeps/target-specs/my-x86_64-unknown-linux-gnu-platform.json
-+++ b/src/test/run-make-fulldeps/target-specs/my-x86_64-unknown-linux-gnu-platform.json
-@@ -1,6 +1,6 @@
- {
- "pre-link-args": {"gcc": ["-m64"]},
-- "data-layout": "e-m:e-i64:64-f80:128-n8:16:32:64-S128",
-+ "data-layout": "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128",
- "linker-flavor": "gcc",
- "llvm-target": "x86_64-unknown-linux-gnu",
- "target-endian": "little",
-
-From 724b7ee92f3e83af2a451b726ad990fe7db54528 Mon Sep 17 00:00:00 2001
-From: Nikita Popov <nikita.ppv@gmail.com>
-Date: Tue, 4 Feb 2020 20:35:50 +0100
-Subject: [PATCH 5/7] Fix timeTraceProfilerInitialize for LLVM 10
-
----
- src/rustllvm/PassWrapper.cpp | 6 +++++-
- 1 file changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/src/rustllvm/PassWrapper.cpp b/src/rustllvm/PassWrapper.cpp
-index 65071c3ed86e0..ebf4d4017a813 100644
---- a/src/rustllvm/PassWrapper.cpp
-+++ b/src/rustllvm/PassWrapper.cpp
-@@ -67,7 +67,11 @@ extern "C" void LLVMInitializePasses() {
- }
-
- extern "C" void LLVMTimeTraceProfilerInitialize() {
--#if LLVM_VERSION_GE(9, 0)
-+#if LLVM_VERSION_GE(10, 0)
-+ timeTraceProfilerInitialize(
-+ /* TimeTraceGranularity */ 0,
-+ /* ProcName */ "rustc");
-+#elif LLVM_VERSION_GE(9, 0)
- timeTraceProfilerInitialize();
- #endif
- }
-
-From aed9cf36bb4b9c6b357e395552dbb5e1802feec9 Mon Sep 17 00:00:00 2001
-From: Nikita Popov <nikita.ppv@gmail.com>
-Date: Mon, 2 Mar 2020 22:37:55 +0100
-Subject: [PATCH 6/7] Update CreateMemSet() usage for LLVM 10
-
----
- src/rustllvm/RustWrapper.cpp | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/src/rustllvm/RustWrapper.cpp b/src/rustllvm/RustWrapper.cpp
-index 49b6e1bfec38d..002eb031dac64 100644
---- a/src/rustllvm/RustWrapper.cpp
-+++ b/src/rustllvm/RustWrapper.cpp
-@@ -1300,8 +1300,13 @@ extern "C" LLVMValueRef LLVMRustBuildMemSet(LLVMBuilderRef B,
- LLVMValueRef Dst, unsigned DstAlign,
- LLVMValueRef Val,
- LLVMValueRef Size, bool IsVolatile) {
-+#if LLVM_VERSION_GE(10, 0)
-+ return wrap(unwrap(B)->CreateMemSet(
-+ unwrap(Dst), unwrap(Val), unwrap(Size), MaybeAlign(DstAlign), IsVolatile));
-+#else
- return wrap(unwrap(B)->CreateMemSet(
- unwrap(Dst), unwrap(Val), unwrap(Size), DstAlign, IsVolatile));
-+#endif
- }
-
- extern "C" LLVMValueRef