1; RUN: llc -march=avr < %s | FileCheck %s
2
3define i8 @sign_extended_1_to_8(i1) {
4; CHECK-LABEL: sign_extended_1_to_8
5entry-block:
6  %1 = sext i1 %0 to i8
7  ret i8 %1
8}
9
10define i16 @sign_extended_1_to_16(i1) {
11; CHECK-LABEL: sign_extended_1_to_16
12entry-block:
13  %1 = sext i1 %0 to i16
14  ret i16 %1
15}
16
17define i16 @sign_extended_8_to_16(i8) {
18; CHECK-LABEL: sign_extended_8_to_16
19entry-block:
20  %1 = sext i8 %0 to i16
21  ret i16 %1
22}
23
24define i32 @sign_extended_1_to_32(i1) {
25; CHECK-LABEL: sign_extended_1_to_32
26entry-block:
27  %1 = sext i1 %0 to i32
28  ret i32 %1
29}
30
31define i32 @sign_extended_8_to_32(i8) {
32; CHECK-LABEL: sign_extended_8_to_32
33entry-block:
34  %1 = sext i8 %0 to i32
35  ret i32 %1
36}
37
38define i32 @sign_extended_16_to_32(i16) {
39; CHECK-LABEL: sign_extended_16_to_32
40entry-block:
41  %1 = sext i16 %0 to i32
42  ret i32 %1
43}
44
45define i64 @sign_extended_1_to_64(i1) {
46; CHECK-LABEL: sign_extended_1_to_64
47entry-block:
48  %1 = sext i1 %0 to i64
49  ret i64 %1
50}
51
52define i64 @sign_extended_8_to_64(i8) {
53; CHECK-LABEL: sign_extended_8_to_64
54entry-block:
55  %1 = sext i8 %0 to i64
56  ret i64 %1
57}
58
59define i64 @sign_extended_16_to_64(i16) {
60; CHECK-LABEL: sign_extended_16_to_64
61entry-block:
62  %1 = sext i16 %0 to i64
63  ret i64 %1
64}
65
66define i64 @sign_extended_32_to_64(i32) {
67; CHECK-LABEL: sign_extended_32_to_64
68entry-block:
69  %1 = sext i32 %0 to i64
70  ret i64 %1
71}
72