Skip to content

Commit

Permalink
test: codegen: riscv64-abi: print value numbers for unnamed func args
Browse files Browse the repository at this point in the history
LLVM 10 includes a009a60 which will
print value numbers for unnamed func args.

Update these tests to be in line with the referenced clang tests.
  • Loading branch information
tblah committed Jun 4, 2020
1 parent 95e9768 commit c872dcf
Show file tree
Hide file tree
Showing 3 changed files with 41 additions and 41 deletions.
14 changes: 7 additions & 7 deletions src/test/codegen/riscv-abi/riscv64-lp64-lp64f-lp64d-abi.rs
Original file line number Diff line number Diff line change
Expand Up @@ -39,12 +39,12 @@ pub extern "C" fn f_scalar_4(x: i64) -> i64 {
x
}

// CHECK: define float @f_fp_scalar_1(float)
// CHECK: define float @f_fp_scalar_1(float %0)
#[no_mangle]
pub extern "C" fn f_fp_scalar_1(x: f32) -> f32 {
x
}
// CHECK: define double @f_fp_scalar_2(double)
// CHECK: define double @f_fp_scalar_2(double %0)
#[no_mangle]
pub extern "C" fn f_fp_scalar_2(x: f64) -> f64 {
x
Expand All @@ -67,7 +67,7 @@ pub struct Tiny {
d: u16,
}

// CHECK: define void @f_agg_tiny(i64)
// CHECK: define void @f_agg_tiny(i64 %0)
#[no_mangle]
pub extern "C" fn f_agg_tiny(mut e: Tiny) {
e.a += e.b;
Expand All @@ -86,7 +86,7 @@ pub struct Small {
b: *mut i64,
}

// CHECK: define void @f_agg_small([2 x i64])
// CHECK: define void @f_agg_small([2 x i64] %0)
#[no_mangle]
pub extern "C" fn f_agg_small(mut x: Small) {
x.a += unsafe { *x.b };
Expand All @@ -104,7 +104,7 @@ pub struct SmallAligned {
a: i128,
}

// CHECK: define void @f_agg_small_aligned(i128)
// CHECK: define void @f_agg_small_aligned(i128 %0)
#[no_mangle]
pub extern "C" fn f_agg_small_aligned(mut x: SmallAligned) {
x.a += x.a;
Expand All @@ -130,7 +130,7 @@ pub extern "C" fn f_agg_large_ret(i: i32, j: i8) -> Large {
Large { a: 1, b: 2, c: 3, d: 4 }
}

// CHECK: define void @f_scalar_stack_1(i64, [2 x i64], i128, %Large* {{.*}}%d, i8 zeroext %e, i8 signext %f, i8 %g, i8 %h)
// CHECK: define void @f_scalar_stack_1(i64 %0, [2 x i64] %1, i128 %2, %Large* {{.*}}%d, i8 zeroext %e, i8 signext %f, i8 %g, i8 %h)
#[no_mangle]
pub extern "C" fn f_scalar_stack_1(
a: Tiny,
Expand All @@ -144,7 +144,7 @@ pub extern "C" fn f_scalar_stack_1(
) {
}

// CHECK: define void @f_scalar_stack_2(%Large* {{.*}}sret{{.*}}, i64 %a, i128, i128, i64 %d, i8 zeroext %e, i8 %f, i8 %g)
// CHECK: define void @f_scalar_stack_2(%Large* {{.*}}sret{{.*}} %0, i64 %a, i128 %1, i128 %2, i64 %d, i8 zeroext %e, i8 %f, i8 %g)
#[no_mangle]
pub extern "C" fn f_scalar_stack_2(
a: u64,
Expand Down
34 changes: 17 additions & 17 deletions src/test/codegen/riscv-abi/riscv64-lp64d-abi.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
// only-linux
#![crate_type = "lib"]

// CHECK: define void @f_fpr_tracking(double, double, double, double, double, double, double, double, i8 zeroext %i)
// CHECK: define void @f_fpr_tracking(double %0, double %1, double %2, double %3, double %4, double %5, double %6, double %7, i8 zeroext %i)
#[no_mangle]
pub extern "C" fn f_fpr_tracking(
a: f64,
Expand Down Expand Up @@ -36,7 +36,7 @@ pub struct DoubleFloat {
g: f32,
}

// CHECK: define void @f_double_s_arg(double)
// CHECK: define void @f_double_s_arg(double %0)
#[no_mangle]
pub extern "C" fn f_double_s_arg(a: Double) {}

Expand All @@ -46,7 +46,7 @@ pub extern "C" fn f_ret_double_s() -> Double {
Double { f: 1. }
}

// CHECK: define void @f_double_double_s_arg({ double, double })
// CHECK: define void @f_double_double_s_arg({ double, double } %0)
#[no_mangle]
pub extern "C" fn f_double_double_s_arg(a: DoubleDouble) {}

Expand All @@ -56,7 +56,7 @@ pub extern "C" fn f_ret_double_double_s() -> DoubleDouble {
DoubleDouble { f: 1., g: 2. }
}

// CHECK: define void @f_double_float_s_arg({ double, float })
// CHECK: define void @f_double_float_s_arg({ double, float } %0)
#[no_mangle]
pub extern "C" fn f_double_float_s_arg(a: DoubleFloat) {}

Expand All @@ -66,7 +66,7 @@ pub extern "C" fn f_ret_double_float_s() -> DoubleFloat {
DoubleFloat { f: 1., g: 2. }
}

// CHECK: define void @f_double_double_s_arg_insufficient_fprs(double, double, double, double, double, double, double, [2 x i64])
// CHECK: define void @f_double_double_s_arg_insufficient_fprs(double %0, double %1, double %2, double %3, double %4, double %5, double %6, [2 x i64] %7)
#[no_mangle]
pub extern "C" fn f_double_double_s_arg_insufficient_fprs(
a: f64,
Expand Down Expand Up @@ -104,7 +104,7 @@ pub struct DoubleInt64 {
i: i64,
}

// CHECK: define void @f_double_int8_s_arg({ double, i8 })
// CHECK: define void @f_double_int8_s_arg({ double, i8 } %0)
#[no_mangle]
pub extern "C" fn f_double_int8_s_arg(a: DoubleInt8) {}

Expand All @@ -114,7 +114,7 @@ pub extern "C" fn f_ret_double_int8_s() -> DoubleInt8 {
DoubleInt8 { f: 1., i: 2 }
}

// CHECK: define void @f_double_int32_s_arg({ double, i32 })
// CHECK: define void @f_double_int32_s_arg({ double, i32 } %0)
#[no_mangle]
pub extern "C" fn f_double_int32_s_arg(a: DoubleInt32) {}

Expand All @@ -124,7 +124,7 @@ pub extern "C" fn f_ret_double_int32_s() -> DoubleInt32 {
DoubleInt32 { f: 1., i: 2 }
}

// CHECK: define void @f_double_uint8_s_arg({ double, i8 })
// CHECK: define void @f_double_uint8_s_arg({ double, i8 } %0)
#[no_mangle]
pub extern "C" fn f_double_uint8_s_arg(a: DoubleUInt8) {}

Expand All @@ -134,7 +134,7 @@ pub extern "C" fn f_ret_double_uint8_s() -> DoubleUInt8 {
DoubleUInt8 { f: 1., i: 2 }
}

// CHECK: define void @f_double_int64_s_arg({ double, i64 })
// CHECK: define void @f_double_int64_s_arg({ double, i64 } %0)
#[no_mangle]
pub extern "C" fn f_double_int64_s_arg(a: DoubleInt64) {}

Expand All @@ -144,7 +144,7 @@ pub extern "C" fn f_ret_double_int64_s() -> DoubleInt64 {
DoubleInt64 { f: 1., i: 2 }
}

// CHECK: define void @f_double_int8_s_arg_insufficient_gprs(i32 signext %a, i32 signext %b, i32 signext %c, i32 signext %d, i32 signext %e, i32 signext %f, i32 signext %g, i32 signext %h, [2 x i64])
// CHECK: define void @f_double_int8_s_arg_insufficient_gprs(i32 signext %a, i32 signext %b, i32 signext %c, i32 signext %d, i32 signext %e, i32 signext %f, i32 signext %g, i32 signext %h, [2 x i64] %0)
#[no_mangle]
pub extern "C" fn f_double_int8_s_arg_insufficient_gprs(
a: i32,
Expand All @@ -159,7 +159,7 @@ pub extern "C" fn f_double_int8_s_arg_insufficient_gprs(
) {
}

// CHECK: define void @f_struct_double_int8_insufficient_fprs(float, double, double, double, double, double, double, double, [2 x i64])
// CHECK: define void @f_struct_double_int8_insufficient_fprs(float %0, double %1, double %2, double %3, double %4, double %5, double %6, double %7, [2 x i64] %8)
#[no_mangle]
pub extern "C" fn f_struct_double_int8_insufficient_fprs(
a: f32,
Expand All @@ -179,7 +179,7 @@ pub struct DoubleArr1 {
a: [f64; 1],
}

// CHECK: define void @f_doublearr1_s_arg(double)
// CHECK: define void @f_doublearr1_s_arg(double %0)
#[no_mangle]
pub extern "C" fn f_doublearr1_s_arg(a: DoubleArr1) {}

Expand All @@ -194,7 +194,7 @@ pub struct DoubleArr2 {
a: [f64; 2],
}

// CHECK: define void @f_doublearr2_s_arg({ double, double })
// CHECK: define void @f_doublearr2_s_arg({ double, double } %0)
#[no_mangle]
pub extern "C" fn f_doublearr2_s_arg(a: DoubleArr2) {}

Expand All @@ -214,7 +214,7 @@ pub struct DoubleArr2Tricky1 {
g: [Tricky1; 2],
}

// CHECK: define void @f_doublearr2_tricky1_s_arg({ double, double })
// CHECK: define void @f_doublearr2_tricky1_s_arg({ double, double } %0)
#[no_mangle]
pub extern "C" fn f_doublearr2_tricky1_s_arg(a: DoubleArr2Tricky1) {}

Expand All @@ -233,7 +233,7 @@ pub struct DoubleArr2Tricky2 {
g: [Tricky1; 2],
}

// CHECK: define void @f_doublearr2_tricky2_s_arg({ double, double })
// CHECK: define void @f_doublearr2_tricky2_s_arg({ double, double } %0)
#[no_mangle]
pub extern "C" fn f_doublearr2_tricky2_s_arg(a: DoubleArr2Tricky2) {}

Expand Down Expand Up @@ -267,7 +267,7 @@ pub struct CharCharDouble {
c: f64,
}

// CHECK: define void @f_char_char_double_s_arg([2 x i64])
// CHECK: define void @f_char_char_double_s_arg([2 x i64] %0)
#[no_mangle]
pub extern "C" fn f_char_char_double_s_arg(a: CharCharDouble) {}

Expand All @@ -282,7 +282,7 @@ pub union DoubleU {
a: f64,
}

// CHECK: define void @f_double_u_arg(i64)
// CHECK: define void @f_double_u_arg(i64 %0)
#[no_mangle]
pub extern "C" fn f_double_u_arg(a: DoubleU) {}

Expand Down
34 changes: 17 additions & 17 deletions src/test/codegen/riscv-abi/riscv64-lp64f-lp64d-abi.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
// only-linux
#![crate_type = "lib"]

// CHECK: define void @f_fpr_tracking(float, float, float, float, float, float, float, float, i8 zeroext %i)
// CHECK: define void @f_fpr_tracking(float %0, float %1, float %2, float %3, float %4, float %5, float %6, float %7, i8 zeroext %i)
#[no_mangle]
pub extern "C" fn f_fpr_tracking(
a: f32,
Expand All @@ -30,7 +30,7 @@ pub struct FloatFloat {
g: f32,
}

// CHECK: define void @f_float_s_arg(float)
// CHECK: define void @f_float_s_arg(float %0)
#[no_mangle]
pub extern "C" fn f_float_s_arg(a: Float) {}

Expand All @@ -40,7 +40,7 @@ pub extern "C" fn f_ret_float_s() -> Float {
Float { f: 1. }
}

// CHECK: define void @f_float_float_s_arg({ float, float })
// CHECK: define void @f_float_float_s_arg({ float, float } %0)
#[no_mangle]
pub extern "C" fn f_float_float_s_arg(a: FloatFloat) {}

Expand All @@ -50,7 +50,7 @@ pub extern "C" fn f_ret_float_float_s() -> FloatFloat {
FloatFloat { f: 1., g: 2. }
}

// CHECK: define void @f_float_float_s_arg_insufficient_fprs(float, float, float, float, float, float, float, i64)
// CHECK: define void @f_float_float_s_arg_insufficient_fprs(float %0, float %1, float %2, float %3, float %4, float %5, float %6, i64 %7)
#[no_mangle]
pub extern "C" fn f_float_float_s_arg_insufficient_fprs(
a: f32,
Expand Down Expand Up @@ -88,7 +88,7 @@ pub struct FloatInt64 {
i: i64,
}

// CHECK: define void @f_float_int8_s_arg({ float, i8 })
// CHECK: define void @f_float_int8_s_arg({ float, i8 } %0)
#[no_mangle]
pub extern "C" fn f_float_int8_s_arg(a: FloatInt8) {}

Expand All @@ -98,7 +98,7 @@ pub extern "C" fn f_ret_float_int8_s() -> FloatInt8 {
FloatInt8 { f: 1., i: 2 }
}

// CHECK: define void @f_float_int32_s_arg({ float, i32 })
// CHECK: define void @f_float_int32_s_arg({ float, i32 } %0)
#[no_mangle]
pub extern "C" fn f_float_int32_s_arg(a: FloatInt32) {}

Expand All @@ -108,7 +108,7 @@ pub extern "C" fn f_ret_float_int32_s() -> FloatInt32 {
FloatInt32 { f: 1., i: 2 }
}

// CHECK: define void @f_float_uint8_s_arg({ float, i8 })
// CHECK: define void @f_float_uint8_s_arg({ float, i8 } %0)
#[no_mangle]
pub extern "C" fn f_float_uint8_s_arg(a: FloatUInt8) {}

Expand All @@ -118,7 +118,7 @@ pub extern "C" fn f_ret_float_uint8_s() -> FloatUInt8 {
FloatUInt8 { f: 1., i: 2 }
}

// CHECK: define void @f_float_int64_s_arg({ float, i64 })
// CHECK: define void @f_float_int64_s_arg({ float, i64 } %0)
#[no_mangle]
pub extern "C" fn f_float_int64_s_arg(a: FloatInt64) {}

Expand All @@ -128,7 +128,7 @@ pub extern "C" fn f_ret_float_int64_s() -> FloatInt64 {
FloatInt64 { f: 1., i: 2 }
}

// CHECK: define void @f_float_int8_s_arg_insufficient_gprs(i32 signext %a, i32 signext %b, i32 signext %c, i32 signext %d, i32 signext %e, i32 signext %f, i32 signext %g, i32 signext %h, i64)
// CHECK: define void @f_float_int8_s_arg_insufficient_gprs(i32 signext %a, i32 signext %b, i32 signext %c, i32 signext %d, i32 signext %e, i32 signext %f, i32 signext %g, i32 signext %h, i64 %0)
#[no_mangle]
pub extern "C" fn f_float_int8_s_arg_insufficient_gprs(
a: i32,
Expand All @@ -143,7 +143,7 @@ pub extern "C" fn f_float_int8_s_arg_insufficient_gprs(
) {
}

// CHECK: define void @f_struct_float_int8_insufficient_fprs(float, float, float, float, float, float, float, float, i64)
// CHECK: define void @f_struct_float_int8_insufficient_fprs(float %0, float %1, float %2, float %3, float %4, float %5, float %6, float %7, i64 %8)
#[no_mangle]
pub extern "C" fn f_struct_float_int8_insufficient_fprs(
a: f32,
Expand All @@ -163,7 +163,7 @@ pub struct FloatArr1 {
a: [f32; 1],
}

// CHECK: define void @f_floatarr1_s_arg(float)
// CHECK: define void @f_floatarr1_s_arg(float %0)
#[no_mangle]
pub extern "C" fn f_floatarr1_s_arg(a: FloatArr1) {}

Expand All @@ -178,7 +178,7 @@ pub struct FloatArr2 {
a: [f32; 2],
}

// CHECK: define void @f_floatarr2_s_arg({ float, float })
// CHECK: define void @f_floatarr2_s_arg({ float, float } %0)
#[no_mangle]
pub extern "C" fn f_floatarr2_s_arg(a: FloatArr2) {}

Expand All @@ -198,7 +198,7 @@ pub struct FloatArr2Tricky1 {
g: [Tricky1; 2],
}

// CHECK: define void @f_floatarr2_tricky1_s_arg({ float, float })
// CHECK: define void @f_floatarr2_tricky1_s_arg({ float, float } %0)
#[no_mangle]
pub extern "C" fn f_floatarr2_tricky1_s_arg(a: FloatArr2Tricky1) {}

Expand All @@ -217,7 +217,7 @@ pub struct FloatArr2Tricky2 {
g: [Tricky1; 2],
}

// CHECK: define void @f_floatarr2_tricky2_s_arg({ float, float })
// CHECK: define void @f_floatarr2_tricky2_s_arg({ float, float } %0)
#[no_mangle]
pub extern "C" fn f_floatarr2_tricky2_s_arg(a: FloatArr2Tricky2) {}

Expand All @@ -234,7 +234,7 @@ pub struct IntFloatInt {
c: i32,
}

// CHECK: define void @f_int_float_int_s_arg([2 x i64])
// CHECK: define void @f_int_float_int_s_arg([2 x i64] %0)
#[no_mangle]
pub extern "C" fn f_int_float_int_s_arg(a: IntFloatInt) {}

Expand All @@ -251,7 +251,7 @@ pub struct CharCharFloat {
c: f32,
}

// CHECK: define void @f_char_char_float_s_arg(i64)
// CHECK: define void @f_char_char_float_s_arg(i64 %0)
#[no_mangle]
pub extern "C" fn f_char_char_float_s_arg(a: CharCharFloat) {}

Expand All @@ -266,7 +266,7 @@ pub union FloatU {
a: f32,
}

// CHECK: define void @f_float_u_arg(i64)
// CHECK: define void @f_float_u_arg(i64 %0)
#[no_mangle]
pub extern "C" fn f_float_u_arg(a: FloatU) {}

Expand Down

0 comments on commit c872dcf

Please sign in to comment.