about summary refs log tree commit diff
path: root/src/test/codegen
diff options
context:
space:
mode:
authorpawanbisht62 <36775517+pawanbisht62@users.noreply.github.com>2020-08-06 17:00:51 +0530
committerGitHub <noreply@github.com>2020-08-06 17:00:51 +0530
commitbac939edcf2137f625cfd7b56dfa4aa7b814868f (patch)
treebbeab2a9f6869b0be809a8e7029a62a77c8e22da /src/test/codegen
parentfdfbd89946ca34d12eec658d111ce9a85cd23df0 (diff)
parent3cfc7fe78eccc754b16981704a098d7bd520e2fd (diff)
downloadrust-bac939edcf2137f625cfd7b56dfa4aa7b814868f.tar.gz
rust-bac939edcf2137f625cfd7b56dfa4aa7b814868f.zip
Merge branch 'master' into feature/incorporate-tracing
Diffstat (limited to 'src/test/codegen')
-rw-r--r--src/test/codegen/abi-efiapi.rs8
-rw-r--r--src/test/codegen/avr/avr-func-addrspace.rs1
-rw-r--r--src/test/codegen/wasm_casts_trapping.rs48
3 files changed, 31 insertions, 26 deletions
diff --git a/src/test/codegen/abi-efiapi.rs b/src/test/codegen/abi-efiapi.rs
index 7c61b780990..1c0b77ad9c7 100644
--- a/src/test/codegen/abi-efiapi.rs
+++ b/src/test/codegen/abi-efiapi.rs
@@ -1,12 +1,14 @@
 // Checks if the correct annotation for the efiapi ABI is passed to llvm.
 
-// revisions:x86_64 i686 arm
-
+// revisions:x86_64 i686 aarch64 arm riscv
 // min-llvm-version: 9.0
+// needs-llvm-components: aarch64 arm riscv
 
 //[x86_64] compile-flags: --target x86_64-unknown-uefi
 //[i686] compile-flags: --target i686-unknown-linux-musl
+//[aarch64] compile-flags: --target aarch64-unknown-none
 //[arm] compile-flags: --target armv7r-none-eabi
+//[riscv] compile-flags: --target riscv64gc-unknown-none-elf
 // compile-flags: -C no-prepopulate-passes
 
 #![crate_type = "lib"]
@@ -22,6 +24,8 @@ trait Copy { }
 
 //x86_64: define win64cc void @has_efiapi
 //i686: define void @has_efiapi
+//aarch64: define void @has_efiapi
 //arm: define void @has_efiapi
+//riscv: define void @has_efiapi
 #[no_mangle]
 pub extern "efiapi" fn has_efiapi() {}
diff --git a/src/test/codegen/avr/avr-func-addrspace.rs b/src/test/codegen/avr/avr-func-addrspace.rs
index 7759d9603a5..6d25ca56f14 100644
--- a/src/test/codegen/avr/avr-func-addrspace.rs
+++ b/src/test/codegen/avr/avr-func-addrspace.rs
@@ -1,4 +1,5 @@
 // compile-flags: -O --target=avr-unknown-unknown --crate-type=rlib
+// needs-llvm-components: avr
 
 // This test validates that function pointers can be stored in global variables
 // and called upon. It ensures that Rust emits function pointers in the correct
diff --git a/src/test/codegen/wasm_casts_trapping.rs b/src/test/codegen/wasm_casts_trapping.rs
index b7f8522fdfb..ed51faa7be1 100644
--- a/src/test/codegen/wasm_casts_trapping.rs
+++ b/src/test/codegen/wasm_casts_trapping.rs
@@ -5,72 +5,72 @@
 // CHECK-LABEL: @cast_f64_i64
 #[no_mangle]
 pub fn cast_f64_i64(a: f64) -> i64 {
-    // CHECK-NOT: {{.*}} call {{.*}} @llvm.wasm.trunc.{{.*}}
-    // CHECK: fptosi double {{.*}} to i64
-    // CHECK-NEXT: select i1 {{.*}}, i64 {{.*}}, i64 {{.*}}
+    // CHECK-NOT: fptosi double {{.*}} to i64
+    // CHECK-NOT: select i1 {{.*}}, i64 {{.*}}, i64 {{.*}}
+    // CHECK: {{.*}} call {{.*}} @llvm.wasm.trunc.{{.*}}
     a as _
 }
 
 // CHECK-LABEL: @cast_f64_i32
 #[no_mangle]
 pub fn cast_f64_i32(a: f64) -> i32 {
-    // CHECK-NOT: {{.*}} call {{.*}} @llvm.wasm.trunc.{{.*}}
-    // CHECK: fptosi double {{.*}} to i32
-    // CHECK-NEXT: select i1 {{.*}}, i32 {{.*}}, i32 {{.*}}
+    // CHECK-NOT: fptosi double {{.*}} to i32
+    // CHECK-NOT: select i1 {{.*}}, i32 {{.*}}, i32 {{.*}}
+    // CHECK: {{.*}} call {{.*}} @llvm.wasm.trunc.{{.*}}
     a as _
 }
 
 // CHECK-LABEL: @cast_f32_i64
 #[no_mangle]
 pub fn cast_f32_i64(a: f32) -> i64 {
-    // CHECK-NOT: {{.*}} call {{.*}} @llvm.wasm.trunc.{{.*}}
-    // CHECK: fptosi float {{.*}} to i64
-    // CHECK-NEXT: select i1 {{.*}}, i64 {{.*}}, i64 {{.*}}
+    // CHECK-NOT: fptosi float {{.*}} to i64
+    // CHECK-NOT: select i1 {{.*}}, i64 {{.*}}, i64 {{.*}}
+    // CHECK: {{.*}} call {{.*}} @llvm.wasm.trunc.{{.*}}
     a as _
 }
 
 // CHECK-LABEL: @cast_f32_i32
 #[no_mangle]
 pub fn cast_f32_i32(a: f32) -> i32 {
-    // CHECK-NOT: {{.*}} call {{.*}} @llvm.wasm.trunc.{{.*}}
-    // CHECK: fptosi float {{.*}} to i32
-    // CHECK-NEXT: select i1 {{.*}}, i32 {{.*}}, i32 {{.*}}
+    // CHECK-NOT: fptosi float {{.*}} to i32
+    // CHECK-NOT: select i1 {{.*}}, i32 {{.*}}, i32 {{.*}}
+    // CHECK: {{.*}} call {{.*}} @llvm.wasm.trunc.{{.*}}
     a as _
 }
 
 // CHECK-LABEL: @cast_f64_u64
 #[no_mangle]
 pub fn cast_f64_u64(a: f64) -> u64 {
-    // CHECK-NOT: {{.*}} call {{.*}} @llvm.wasm.trunc.{{.*}}
-    // CHECK: fptoui double {{.*}} to i64
-    // CHECK-NEXT: select i1 {{.*}}, i64 {{.*}}, i64 {{.*}}
+    // CHECK-NOT: fptoui double {{.*}} to i64
+    // CHECK-NOT: select i1 {{.*}}, i64 {{.*}}, i64 {{.*}}
+    // CHECK: {{.*}} call {{.*}} @llvm.wasm.trunc.{{.*}}
     a as _
 }
 
 // CHECK-LABEL: @cast_f64_u32
 #[no_mangle]
 pub fn cast_f64_u32(a: f64) -> u32 {
-    // CHECK-NOT: {{.*}} call {{.*}} @llvm.wasm.trunc.{{.*}}
-    // CHECK: fptoui double {{.*}} to i32
-    // CHECK-NEXT: select i1 {{.*}}, i32 {{.*}}, i32 {{.*}}
+    // CHECK-NOT: fptoui double {{.*}} to i32
+    // CHECK-NOT: select i1 {{.*}}, i32 {{.*}}, i32 {{.*}}
+    // CHECK: {{.*}} call {{.*}} @llvm.wasm.trunc.{{.*}}
     a as _
 }
 
 // CHECK-LABEL: @cast_f32_u64
 #[no_mangle]
 pub fn cast_f32_u64(a: f32) -> u64 {
-    // CHECK-NOT: {{.*}} call {{.*}} @llvm.wasm.trunc.{{.*}}
-    // CHECK: fptoui float {{.*}} to i64
-    // CHECK-NEXT: select i1 {{.*}}, i64 {{.*}}, i64 {{.*}}
+    // CHECK-NOT: fptoui float {{.*}} to i64
+    // CHECK-NOT: select i1 {{.*}}, i64 {{.*}}, i64 {{.*}}
+    // CHECK: {{.*}} call {{.*}} @llvm.wasm.trunc.{{.*}}
     a as _
 }
 
 // CHECK-LABEL: @cast_f32_u32
 #[no_mangle]
 pub fn cast_f32_u32(a: f32) -> u32 {
-    // CHECK-NOT: {{.*}} call {{.*}} @llvm.wasm.trunc.{{.*}}
-    // CHECK: fptoui float {{.*}} to i32
-    // CHECK-NEXT: select i1 {{.*}}, i32 {{.*}}, i32 {{.*}}
+    // CHECK-NOT: fptoui float {{.*}} to i32
+    // CHECK-NOT: select i1 {{.*}}, i32 {{.*}}, i32 {{.*}}
+    // CHECK: {{.*}} call {{.*}} @llvm.wasm.trunc.{{.*}}
     a as _
 }