brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.9 KiB · 938c5a6 Raw
138 lines · plain
1; RUN: llc -mtriple=avr -filetype=asm -O1 < %s | FileCheck %s2 3define void @check60(ptr %1) {4; CHECK-LABEL: check60:5; CHECK-NEXT: %bb.06; CHECK-NEXT: ldi r18, 07; CHECK-NEXT: ldi r19, 08; CHECK-NEXT: mov r30, r249; CHECK-NEXT: mov r31, r2510; CHECK-NEXT: std Z+63, r1911; CHECK-NEXT: std Z+62, r1812; CHECK-NEXT: ldi r24, 21013; CHECK-NEXT: ldi r25, 414; CHECK-NEXT: std Z+61, r2515; CHECK-NEXT: std Z+60, r2416; CHECK-NEXT: ret17 18bb0:19  %2 = getelementptr i8, ptr %1, i8 6020  store i32 1234, ptr %221  ret void22}23 24define void @check61(ptr %1) {25; CHECK-LABEL: check61:26; CHECK-NEXT: %bb.027; CHECK-NEXT: ldi r18, 21028; CHECK-NEXT: ldi r19, 429; CHECK-NEXT: mov r30, r2430; CHECK-NEXT: mov r31, r2531; CHECK-NEXT: std Z+62, r1932; CHECK-NEXT: std Z+61, r1833; CHECK-NEXT: adiw r24, 6334; CHECK-NEXT: ldi r18, 035; CHECK-NEXT: ldi r19, 036; CHECK-NEXT: mov r30, r2437; CHECK-NEXT: mov r31, r2538; CHECK-NEXT: std Z+1, r1939; CHECK-NEXT: st Z, r1840 41bb0:42  %2 = getelementptr i8, ptr %1, i8 6143  store i32 1234, ptr %244  ret void45}46 47define void @check62(ptr %1) {48; CHECK-LABEL: check62:49; CHECK-NEXT: %bb.050; CHECK-NEXT: ldi r18, 21051; CHECK-NEXT: ldi r19, 452; CHECK-NEXT: mov r30, r2453; CHECK-NEXT: mov r31, r2554; CHECK-NEXT: std Z+63, r1955; CHECK-NEXT: std Z+62, r1856; CHECK-NEXT: adiw r24, 6257; CHECK-NEXT: ldi r18, 058; CHECK-NEXT: ldi r19, 059; CHECK-NEXT: mov r30, r2460; CHECK-NEXT: mov r31, r2561; CHECK-NEXT: std Z+3, r1962; CHECK-NEXT: std Z+2, r1863; CHECK-NEXT: ret64 65bb0:66  %2 = getelementptr i8, ptr %1, i8 6267  store i32 1234, ptr %268  ret void69}70 71define void @check63(ptr %1) {72; CHECK-LABEL: check63:73; CHECK-NEXT: %bb.074; CHECK-NEXT: adiw r24, 6375; CHECK-NEXT: ldi r18, 076; CHECK-NEXT: ldi r19, 077; CHECK-NEXT: mov r30, r2478; CHECK-NEXT: mov r31, r2579; CHECK-NEXT: std Z+3, r1980; CHECK-NEXT: std Z+2, r1881; CHECK-NEXT: ldi r24, 21082; CHECK-NEXT: ldi r25, 483; CHECK-NEXT: std Z+1, r2584; CHECK-NEXT: st Z, r2485; CHECK-NEXT: ret86 87bb0:88  %2 = getelementptr i8, ptr %1, i8 6389  store i32 1234, ptr %290  ret void91}92 93define void @check64(ptr %1) {94; CHECK-LABEL: check64:95; CHECK-NEXT: %bb.096; CHECK-NEXT: subi r24, 19297; CHECK-NEXT: sbci r25, 25598; CHECK-NEXT: ldi r18, 099; CHECK-NEXT: ldi r19, 0100; CHECK-NEXT: mov r30, r24101; CHECK-NEXT: mov r31, r25102; CHECK-NEXT: std Z+3, r19103; CHECK-NEXT: std Z+2, r18104; CHECK-NEXT: ldi r24, 210105; CHECK-NEXT: ldi r25, 4106; CHECK-NEXT: std Z+1, r25107; CHECK-NEXT: st Z, r24108; CHECK-NEXT: ret109 110bb0:111  %2 = getelementptr i8, ptr %1, i8 64112  store i32 1234, ptr %2113  ret void114}115 116define void @check65(ptr %1) {117; CHECK-LABEL: check65:118; CHECK-NEXT: %bb.0119; CHECK-NEXT: subi r24, 191120; CHECK-NEXT: sbci r25, 255121; CHECK-NEXT: ldi r18, 0122; CHECK-NEXT: ldi r19, 0123; CHECK-NEXT: mov r30, r24124; CHECK-NEXT: mov r31, r25125; CHECK-NEXT: std Z+3, r19126; CHECK-NEXT: std Z+2, r18127; CHECK-NEXT: ldi r24, 210128; CHECK-NEXT: ldi r25, 4129; CHECK-NEXT: std Z+1, r25130; CHECK-NEXT: st Z, r24131; CHECK-NEXT: ret132 133bb0:134  %2 = getelementptr i8, ptr %1, i8 65135  store i32 1234, ptr %2136  ret void137}138