brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.8 KiB · 5d45ece Raw
115 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc < %s -mtriple=avr | FileCheck %s3 4define i8 @loadx(ptr %0) {5; CHECK-LABEL: loadx:6; CHECK:       ; %bb.0:7; CHECK-NEXT:    mov r26, r248; CHECK-NEXT:    mov r27, r259; CHECK-NEXT:    ;APP10; CHECK-NEXT:    ld r24, X11; CHECK-NEXT:    ;NO_APP12; CHECK-NEXT:    ret13  %2 = tail call i8 asm sideeffect "ld $0, ${1:a}", "=r,x"(ptr %0)14  ret i8 %215}16 17define i8 @loady(ptr %0) {18; CHECK-LABEL: loady:19; CHECK:       ; %bb.0:20; CHECK-NEXT:    push r2821; CHECK-NEXT:    push r2922; CHECK-NEXT:    mov r28, r2423; CHECK-NEXT:    mov r29, r2524; CHECK-NEXT:    ;APP25; CHECK-NEXT:    ld r24, Y26; CHECK-NEXT:    ;NO_APP27; CHECK-NEXT:    pop r2928; CHECK-NEXT:    pop r2829; CHECK-NEXT:    ret30  %2 = tail call i8 asm sideeffect "ld $0, ${1:a}", "=r,y"(ptr %0)31  ret i8 %232}33 34define i8 @loadz(ptr %0) {35; CHECK-LABEL: loadz:36; CHECK:       ; %bb.0:37; CHECK-NEXT:    mov r30, r2438; CHECK-NEXT:    mov r31, r2539; CHECK-NEXT:    ;APP40; CHECK-NEXT:    ld r24, Z41; CHECK-NEXT:    ;NO_APP42; CHECK-NEXT:    ret43  %2 = tail call i8 asm sideeffect "ld $0, ${1:a}", "=r,z"(ptr %0)44  ret i8 %245}46 47define i8 @load_ptr_imm() {48; CHECK-LABEL: load_ptr_imm:49; CHECK:       ; %bb.0:50; CHECK-NEXT:    ldi r26, 21051; CHECK-NEXT:    ldi r27, 452; CHECK-NEXT:    ;APP53; CHECK-NEXT:    ld r24, X54; CHECK-NEXT:    ;NO_APP55; CHECK-NEXT:    ret56  %1 = tail call i8 asm sideeffect "ld $0, $1", "=r,e"(i16 1234)57  ret i8 %158}59 60define void @storex(ptr %0, i8 %1) {61; CHECK-LABEL: storex:62; CHECK:       ; %bb.0:63; CHECK-NEXT:    mov r26, r2464; CHECK-NEXT:    mov r27, r2565; CHECK-NEXT:    ;APP66; CHECK-NEXT:    st X, r2267; CHECK-NEXT:    ;NO_APP68; CHECK-NEXT:    ret69  tail call void asm sideeffect "st ${0:a}, $1", "x,r"(ptr %0, i8 %1)70  ret void71}72 73define void @storey(ptr %0, i8 %1) {74; CHECK-LABEL: storey:75; CHECK:       ; %bb.0:76; CHECK-NEXT:    push r2877; CHECK-NEXT:    push r2978; CHECK-NEXT:    mov r28, r2479; CHECK-NEXT:    mov r29, r2580; CHECK-NEXT:    ;APP81; CHECK-NEXT:    st Y, r2282; CHECK-NEXT:    ;NO_APP83; CHECK-NEXT:    pop r2984; CHECK-NEXT:    pop r2885; CHECK-NEXT:    ret86  tail call void asm sideeffect "st ${0:a}, $1", "y,r"(ptr %0, i8 %1)87  ret void88}89 90define void @storez(ptr %0, i8 %1) {91; CHECK-LABEL: storez:92; CHECK:       ; %bb.0:93; CHECK-NEXT:    mov r30, r2494; CHECK-NEXT:    mov r31, r2595; CHECK-NEXT:    ;APP96; CHECK-NEXT:    st Z, r2297; CHECK-NEXT:    ;NO_APP98; CHECK-NEXT:    ret99  tail call void asm sideeffect "st ${0:a}, $1", "z,r"(ptr %0, i8 %1)100  ret void101}102 103define void @store_ptr_imm(i8 %0) {104; CHECK-LABEL: store_ptr_imm:105; CHECK:       ; %bb.0:106; CHECK-NEXT:    ldi r26, 210107; CHECK-NEXT:    ldi r27, 4108; CHECK-NEXT:    ;APP109; CHECK-NEXT:    st X, r24110; CHECK-NEXT:    ;NO_APP111; CHECK-NEXT:    ret112  tail call void asm sideeffect "st $0, $1", "e,r"(i16 1234, i8 %0)113  ret void114}115