81 lines · plain
1; RUN: llc < %s -mtriple=avr | FileCheck %s2 3define i8 @or8_reg_reg(i8 %a, i8 %b) {4; CHECK-LABEL: or8_reg_reg:5; CHECK: or r24, r226 %result = or i8 %a, %b7 ret i8 %result8}9 10define i8 @or8_reg_imm(i8 %a) {11; CHECK-LABEL: or8_reg_imm:12; CHECK: ori r24, 513 %result = or i8 %a, 514 ret i8 %result15}16 17define i16 @or16_reg_reg(i16 %a, i16 %b) {18; CHECK-LABEL: or16_reg_reg:19; CHECK: or r24, r2220; CHECK: or r25, r2321 %result = or i16 %a, %b22 ret i16 %result23}24 25define i16 @or16_reg_imm(i16 %a) {26; CHECK-LABEL: or16_reg_imm:27; CHECK: ori r24, 21028; CHECK: ori r25, 429 %result = or i16 %a, 123430 ret i16 %result31}32 33define i32 @or32_reg_reg(i32 %a, i32 %b) {34; CHECK-LABEL: or32_reg_reg:35; CHECK: or r22, r1836; CHECK: or r23, r1937; CHECK: or r24, r2038; CHECK: or r25, r2139 %result = or i32 %a, %b40 ret i32 %result41}42 43define i32 @or32_reg_imm(i32 %a) {44; CHECK-LABEL: or32_reg_imm:45; CHECK: ori r22, 2146; CHECK: ori r23, 20547; CHECK: ori r24, 9148; CHECK: ori r25, 749 %result = or i32 %a, 12345678950 ret i32 %result51}52 53define i64 @or64_reg_reg(i64 %a, i64 %b) {54; CHECK-LABEL: or64_reg_reg:55; CHECK: or r18, r1056; CHECK: or r19, r1157; CHECK: or r20, r1258; CHECK: or r21, r1359; CHECK: or r22, r1460; CHECK: or r23, r1561; CHECK: or r24, r1662; CHECK: or r25, r1763 %result = or i64 %a, %b64 ret i64 %result65}66 67define i64 @or64_reg_imm(i64 %a) {68; CHECK-LABEL: or64_reg_imm:69; CHECK: ori r18, 20470; CHECK: ori r19, 20471; CHECK: ori r20, 20472; CHECK: ori r21, 20473; CHECK: ori r22, 20474; CHECK: ori r23, 20475; CHECK: ori r24, 20476; CHECK: ori r25, 20477 %result = or i64 %a, 1475739525896764129278 ret i64 %result79}80 81