2016-11-17 05:58:04 +08:00
|
|
|
; RUN: llc < %s -march=avr | FileCheck %s
|
|
|
|
|
|
|
|
; zext R25:R24, R24
|
|
|
|
; eor R25, R25
|
|
|
|
define i16 @zext1(i8 %x) {
|
|
|
|
; CHECK-LABEL: zext1:
|
2017-11-24 23:36:43 +08:00
|
|
|
; CHECK: clr r25
|
2016-11-17 05:58:04 +08:00
|
|
|
%1 = zext i8 %x to i16
|
|
|
|
ret i16 %1
|
|
|
|
}
|
|
|
|
|
|
|
|
; zext R25:R24, R20
|
|
|
|
; mov R24, R20
|
2017-11-24 23:36:43 +08:00
|
|
|
; clr R25
|
2016-11-17 05:58:04 +08:00
|
|
|
define i16 @zext2(i8 %x, i8 %y) {
|
|
|
|
; CHECK-LABEL: zext2:
|
|
|
|
; CHECK: mov r24, r22
|
2017-11-24 23:36:43 +08:00
|
|
|
; CHECK: clr r25
|
2016-11-17 05:58:04 +08:00
|
|
|
%1 = zext i8 %y to i16
|
|
|
|
ret i16 %1
|
|
|
|
}
|
|
|
|
|
|
|
|
; zext R25:R24, R24
|
2017-11-24 23:36:43 +08:00
|
|
|
; clr R25
|
2016-11-17 05:58:04 +08:00
|
|
|
define i16 @zext_i1(i1 %x) {
|
|
|
|
; CHECK-LABEL: zext_i1:
|
2018-03-06 04:56:25 +08:00
|
|
|
; CHECK: andi r25, 0
|
2016-11-17 05:58:04 +08:00
|
|
|
%1 = zext i1 %x to i16
|
|
|
|
ret i16 %1
|
|
|
|
}
|
|
|
|
|