79 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc -O0 -mtriple=mipsel-linux-gnu -global-isel -verify-machineinstrs %s -o -| FileCheck %s -check-prefixes=MIPS323 4define i8 @load1_s8_to_load1_s32(ptr %px) {5; MIPS32-LABEL: load1_s8_to_load1_s32:6; MIPS32: # %bb.0: # %entry7; MIPS32-NEXT: lbu $2, 0($4)8; MIPS32-NEXT: jr $ra9; MIPS32-NEXT: nop10entry:11 %0 = load i8, ptr %px12 ret i8 %013}14 15define i16 @load2_s16_to_load2_s32(ptr %px) {16; MIPS32-LABEL: load2_s16_to_load2_s32:17; MIPS32: # %bb.0: # %entry18; MIPS32-NEXT: lhu $2, 0($4)19; MIPS32-NEXT: jr $ra20; MIPS32-NEXT: nop21entry:22 %0 = load i16, ptr %px23 ret i16 %024}25 26define void @load_store_i1(ptr %px, ptr %py) {27; MIPS32-LABEL: load_store_i1:28; MIPS32: # %bb.0: # %entry29; MIPS32-NEXT: lbu $1, 0($5)30; MIPS32-NEXT: andi $1, $1, 131; MIPS32-NEXT: andi $1, $1, 132; MIPS32-NEXT: sb $1, 0($4)33; MIPS32-NEXT: jr $ra34; MIPS32-NEXT: nop35entry:36 %0 = load i1, ptr %py37 store i1 %0, ptr %px38 ret void39}40 41define void @load_store_i8(ptr %px, ptr %py) {42; MIPS32-LABEL: load_store_i8:43; MIPS32: # %bb.0: # %entry44; MIPS32-NEXT: lbu $1, 0($5)45; MIPS32-NEXT: sb $1, 0($4)46; MIPS32-NEXT: jr $ra47; MIPS32-NEXT: nop48entry:49 %0 = load i8, ptr %py50 store i8 %0, ptr %px51 ret void52}53 54define void @load_store_i16(ptr %px, ptr %py) {55; MIPS32-LABEL: load_store_i16:56; MIPS32: # %bb.0: # %entry57; MIPS32-NEXT: lhu $1, 0($5)58; MIPS32-NEXT: sh $1, 0($4)59; MIPS32-NEXT: jr $ra60; MIPS32-NEXT: nop61entry:62 %0 = load i16, ptr %py63 store i16 %0, ptr %px64 ret void65}66 67define void @load_store_i32(ptr %px, ptr %py) {68; MIPS32-LABEL: load_store_i32:69; MIPS32: # %bb.0: # %entry70; MIPS32-NEXT: lw $1, 0($5)71; MIPS32-NEXT: sw $1, 0($4)72; MIPS32-NEXT: jr $ra73; MIPS32-NEXT: nop74entry:75 %0 = load i32, ptr %py76 store i32 %0, ptr %px77 ret void78}79