about summary refs log tree commit diff
path: root/tests/codegen/intrinsics/cold_path3.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/codegen/intrinsics/cold_path3.rs')
-rw-r--r--tests/codegen/intrinsics/cold_path3.rs87
1 files changed, 0 insertions, 87 deletions
diff --git a/tests/codegen/intrinsics/cold_path3.rs b/tests/codegen/intrinsics/cold_path3.rs
deleted file mode 100644
index bf3347de665..00000000000
--- a/tests/codegen/intrinsics/cold_path3.rs
+++ /dev/null
@@ -1,87 +0,0 @@
-//@ compile-flags: -O
-#![crate_type = "lib"]
-#![feature(core_intrinsics)]
-
-use std::intrinsics::cold_path;
-
-#[inline(never)]
-#[no_mangle]
-pub fn path_a() {
-    println!("path a");
-}
-
-#[inline(never)]
-#[no_mangle]
-pub fn path_b() {
-    println!("path b");
-}
-
-#[inline(never)]
-#[no_mangle]
-pub fn path_c() {
-    println!("path c");
-}
-
-#[inline(never)]
-#[no_mangle]
-pub fn path_d() {
-    println!("path d");
-}
-
-#[no_mangle]
-pub fn test(x: Option<u32>) {
-    match x {
-        Some(0) => path_a(),
-        Some(1) => {
-            cold_path();
-            path_b()
-        }
-        Some(2) => path_c(),
-        Some(3) => {
-            cold_path();
-            path_d()
-        }
-        _ => path_a(),
-    }
-
-    // CHECK-LABEL: @test(
-    // CHECK: switch i32 %1, label %bb1 [
-    // CHECK: i32 0, label %bb6
-    // CHECK: i32 1, label %bb5
-    // CHECK: i32 2, label %bb4
-    // CHECK: i32 3, label %bb3
-    // CHECK: ], !prof ![[NUM1:[0-9]+]]
-}
-
-#[no_mangle]
-pub fn test2(x: Option<u32>) {
-    match x {
-        Some(10) => path_a(),
-        Some(11) => {
-            cold_path();
-            path_b()
-        }
-        Some(12) => {
-            unsafe { core::intrinsics::unreachable() };
-            path_c()
-        }
-        Some(13) => {
-            cold_path();
-            path_d()
-        }
-        _ => {
-            cold_path();
-            path_a()
-        }
-    }
-
-    // CHECK-LABEL: @test2(
-    // CHECK: switch i32 %1, label %bb1 [
-    // CHECK: i32 10, label %bb5
-    // CHECK: i32 11, label %bb4
-    // CHECK: i32 13, label %bb3
-    // CHECK: ], !prof ![[NUM2:[0-9]+]]
-}
-
-// CHECK: ![[NUM1]] = !{!"branch_weights", i32 2000, i32 2000, i32 1, i32 2000, i32 1}
-// CHECK: ![[NUM2]] = !{!"branch_weights", i32 1, i32 2000, i32 1, i32 1}