Skip to content

Commit ff7bf79

Browse files
committed
Migrate inline_compatibility.rs test to FileCheck
1 parent 98b4a64 commit ff7bf79

11 files changed

+34
-226
lines changed

tests/mir-opt/inline/inline_compatibility.inlined_no_sanitize.Inline.panic-abort.diff

-21
This file was deleted.

tests/mir-opt/inline/inline_compatibility.inlined_no_sanitize.Inline.panic-unwind.diff

-21
This file was deleted.

tests/mir-opt/inline/inline_compatibility.inlined_target_feature.Inline.panic-abort.diff

-21
This file was deleted.

tests/mir-opt/inline/inline_compatibility.inlined_target_feature.Inline.panic-unwind.diff

-21
This file was deleted.

tests/mir-opt/inline/inline_compatibility.not_inlined_c_variadic.Inline.panic-abort.diff

-22
This file was deleted.

tests/mir-opt/inline/inline_compatibility.not_inlined_c_variadic.Inline.panic-unwind.diff

-22
This file was deleted.

tests/mir-opt/inline/inline_compatibility.not_inlined_no_sanitize.Inline.panic-abort.diff

-19
This file was deleted.

tests/mir-opt/inline/inline_compatibility.not_inlined_no_sanitize.Inline.panic-unwind.diff

-19
This file was deleted.

tests/mir-opt/inline/inline_compatibility.not_inlined_target_feature.Inline.panic-abort.diff

-19
This file was deleted.

tests/mir-opt/inline/inline_compatibility.not_inlined_target_feature.Inline.panic-unwind.diff

-19
This file was deleted.

tests/mir-opt/inline/inline_compatibility.rs

+34-22
Original file line numberDiff line numberDiff line change
@@ -1,51 +1,63 @@
1-
// skip-filecheck
21
// Checks that only functions with compatible attributes are inlined.
3-
//
42
// only-x86_64
5-
// EMIT_MIR_FOR_EACH_PANIC_STRATEGY
3+
// compile-flags: -Cpanic=abort
64

75
#![crate_type = "lib"]
86
#![feature(no_sanitize)]
97
#![feature(target_feature_11)]
108
#![feature(c_variadic)]
119

12-
// EMIT_MIR inline_compatibility.inlined_target_feature.Inline.diff
10+
#[inline]
11+
#[target_feature(enable = "sse2")]
12+
unsafe fn sse2() {}
13+
14+
#[inline]
15+
fn nop() {}
16+
17+
// CHECK-LABEL: fn f0()
18+
// CHECK: bb0: {
19+
// CHECK-NEXT: return;
1320
#[target_feature(enable = "sse2")]
14-
pub unsafe fn inlined_target_feature() {
15-
target_feature();
21+
pub unsafe fn f0() {
22+
sse2();
1623
}
1724

18-
// EMIT_MIR inline_compatibility.not_inlined_target_feature.Inline.diff
19-
pub unsafe fn not_inlined_target_feature() {
20-
target_feature();
25+
// CHECK-LABEL: fn f1()
26+
// CHECK: bb0: {
27+
// CHECK-NEXT: sse2()
28+
pub unsafe fn f1() {
29+
sse2();
2130
}
2231

23-
// EMIT_MIR inline_compatibility.inlined_no_sanitize.Inline.diff
32+
#[inline]
33+
#[no_sanitize(address)]
34+
pub unsafe fn no_sanitize() {}
35+
36+
// CHECK-LABEL: fn inlined_no_sanitize()
37+
// CHECK: bb0: {
38+
// CHECK-NEXT: return;
2439
#[no_sanitize(address)]
2540
pub unsafe fn inlined_no_sanitize() {
2641
no_sanitize();
2742
}
2843

29-
// EMIT_MIR inline_compatibility.not_inlined_no_sanitize.Inline.diff
44+
// CHECK-LABEL: fn not_inlined_no_sanitize()
45+
// CHECK: bb0: {
46+
// CHECK-NEXT: no_sanitize()
3047
pub unsafe fn not_inlined_no_sanitize() {
3148
no_sanitize();
3249
}
3350

34-
#[inline]
35-
#[target_feature(enable = "sse2")]
36-
pub unsafe fn target_feature() {}
37-
38-
#[inline]
39-
#[no_sanitize(address)]
40-
pub unsafe fn no_sanitize() {}
41-
42-
// EMIT_MIR inline_compatibility.not_inlined_c_variadic.Inline.diff
51+
// CHECK-LABEL: fn not_inlined_c_variadic()
52+
// CHECK: bb0: {
53+
// CHECK-NEXT: StorageLive(_1)
54+
// CHECK-NEXT: _1 = sum
4355
pub unsafe fn not_inlined_c_variadic() {
44-
let s = sum(4u32, 4u32, 30u32, 200u32, 1000u32);
56+
let _ = sum(4u32, 4u32, 30u32, 200u32, 1000u32);
4557
}
4658

47-
#[no_mangle]
4859
#[inline(always)]
60+
#[no_mangle]
4961
unsafe extern "C" fn sum(n: u32, mut vs: ...) -> u32 {
5062
let mut s = 0;
5163
let mut i = 0;

0 commit comments

Comments
 (0)