summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/AVR/instrumentation
diff options
context:
space:
mode:
authorDylan McKay <dylanmckay34@gmail.com>2016-12-15 11:02:41 +0000
committerDylan McKay <dylanmckay34@gmail.com>2016-12-15 11:02:41 +0000
commit4f590f28e7739f139f6a23ebe426fd4e1557d470 (patch)
treec1e9b194454006a04a295da0a6c1928fba8a1723 /llvm/test/CodeGen/AVR/instrumentation
parentf34964bdd7423869ab3359b4f168fec7b22e4e9f (diff)
downloadbcm5719-llvm-4f590f28e7739f139f6a23ebe426fd4e1557d470.tar.gz
bcm5719-llvm-4f590f28e7739f139f6a23ebe426fd4e1557d470.zip
[AVR] Support floats in the instrumention pass
This also refactors some common code into the 'GetTypeName' method. llvm-svn: 289803
Diffstat (limited to 'llvm/test/CodeGen/AVR/instrumentation')
-rw-r--r--llvm/test/CodeGen/AVR/instrumentation/basic.ll25
1 files changed, 21 insertions, 4 deletions
diff --git a/llvm/test/CodeGen/AVR/instrumentation/basic.ll b/llvm/test/CodeGen/AVR/instrumentation/basic.ll
index 232868a97f7..f8a0321d417 100644
--- a/llvm/test/CodeGen/AVR/instrumentation/basic.ll
+++ b/llvm/test/CodeGen/AVR/instrumentation/basic.ll
@@ -14,17 +14,17 @@ define i8 @do_something(i16 %a, i16 %b) {
; CHECK-NEXT: call void @avr_instrumentation_begin_signature(i8* %0, i16 2)
; CHECK-NEXT: %1 = getelementptr inbounds [2 x i8], [2 x i8]* @1, i8 0, i8 0
- ; CHECK-NEXT: call void @avr_instrumentation_argument_i16(i8* %1, i16 %a)
+ ; CHECK-NEXT: call void @avr_instrumentation_argument_i16(i8* %1, i8 0, i16 %a)
; CHECK-NEXT: %2 = getelementptr inbounds [2 x i8], [2 x i8]* @2, i8 0, i8 0
- ; CHECK-NEXT: call void @avr_instrumentation_argument_i16(i8* %2, i16 %b)
+ ; CHECK-NEXT: call void @avr_instrumentation_argument_i16(i8* %2, i8 1, i16 %b)
; CHECK-NEXT: %3 = getelementptr inbounds [13 x i8], [13 x i8]* @3, i8 0, i8 0
; CHECK-NEXT: call void @avr_instrumentation_end_signature(i8* %3, i16 2)
; CHECK-NEXT: br label %4
- ; CHECK: call void @avr_instrumentation_result_u8(i8 1)
+ ; CHECK: call void @avr_instrumentation_result_i8(i8 1)
; CHECK-NEXT: ret i8 1
ret i8 1
}
@@ -39,7 +39,24 @@ define i32 @foo() {
; CHECK-NEXT: br label %2
- ; CHECK: call void @avr_instrumentation_result_u32(i32 50)
+ ; CHECK: call void @avr_instrumentation_result_i32(i32 50)
; CHECK-NEXT: ret i32 50
ret i32 50
}
+
+; CHECK-LABEL: floaty
+define float @floaty(float %a) {
+ ; CHECK: instrumentation_entry:
+ ; CHECK-NEXT: %0 = getelementptr inbounds [7 x i8], [7 x i8]* @6, i8 0, i8 0
+ ; CHECK-NEXT: call void @avr_instrumentation_begin_signature(i8* %0, i16 1)
+ ; CHECK-NEXT: %1 = getelementptr inbounds [2 x i8], [2 x i8]* @7, i8 0, i8 0
+ ; CHECK-NEXT: call void @avr_instrumentation_argument_f32(i8* %1, i8 0, float %a)
+ ; CHECK-NEXT: %2 = getelementptr inbounds [7 x i8], [7 x i8]* @8, i8 0, i8 0
+ ; CHECK-NEXT: call void @avr_instrumentation_end_signature(i8* %2, i16 1)
+
+ ; CHECK-NEXT: br label %3
+ ;
+ ; CHECK: call void @avr_instrumentation_result_f32(float 1.200000e+01)
+ ; CHECK-NEXT: ret float 1.200000e+01
+ ret float 12.0
+}
OpenPOWER on IntegriCloud