98 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -O0 -mtriple=mipsel-linux-gnu -run-pass=regbankselect -verify-machineinstrs %s -o - | FileCheck %s -check-prefixes=MIPS323# RUN: llc -O0 -mtriple=mipsel-linux-gnu -run-pass=regbankselect -mcpu=mips32r6 -verify-machineinstrs %s -o - | FileCheck %s -check-prefixes=MIPS32R64--- |5 6 @float_align1 = common global float 0.000000e+00, align 17 @float_align4 = common global float 0.000000e+00, align 48 @i32_align8 = common global i32 0, align 89 10 define float @load_float_align1() {11 entry:12 %0 = load float, ptr @float_align1, align 113 ret float %014 }15 16 define float @load_float_align4() {17 entry:18 %0 = load float, ptr @float_align4, align 419 ret float %020 }21 22 define i32 @load_i32_align8() {23 entry:24 %0 = load i32, ptr @i32_align8, align 825 ret i32 %026 }27 28...29---30name: load_float_align131alignment: 432legalized: true33tracksRegLiveness: true34body: |35 bb.1.entry:36 ; MIPS32-LABEL: name: load_float_align137 ; MIPS32: [[GV:%[0-9]+]]:gprb(p0) = G_GLOBAL_VALUE @float_align138 ; MIPS32: [[LOAD:%[0-9]+]]:gprb(s32) = G_LOAD [[GV]](p0) :: (dereferenceable load (s32) from @float_align1, align 1)39 ; MIPS32: $f0 = COPY [[LOAD]](s32)40 ; MIPS32: RetRA implicit $f041 ; MIPS32R6-LABEL: name: load_float_align142 ; MIPS32R6: [[GV:%[0-9]+]]:gprb(p0) = G_GLOBAL_VALUE @float_align143 ; MIPS32R6: [[LOAD:%[0-9]+]]:fprb(s32) = G_LOAD [[GV]](p0) :: (dereferenceable load (s32) from @float_align1, align 1)44 ; MIPS32R6: $f0 = COPY [[LOAD]](s32)45 ; MIPS32R6: RetRA implicit $f046 %1:_(p0) = G_GLOBAL_VALUE @float_align147 %0:_(s32) = G_LOAD %1(p0) :: (dereferenceable load (s32) from @float_align1, align 1)48 $f0 = COPY %0(s32)49 RetRA implicit $f050 51...52---53name: load_float_align454alignment: 455legalized: true56tracksRegLiveness: true57body: |58 bb.1.entry:59 ; MIPS32-LABEL: name: load_float_align460 ; MIPS32: [[GV:%[0-9]+]]:gprb(p0) = G_GLOBAL_VALUE @float_align461 ; MIPS32: [[LOAD:%[0-9]+]]:fprb(s32) = G_LOAD [[GV]](p0) :: (dereferenceable load (s32) from @float_align4)62 ; MIPS32: $f0 = COPY [[LOAD]](s32)63 ; MIPS32: RetRA implicit $f064 ; MIPS32R6-LABEL: name: load_float_align465 ; MIPS32R6: [[GV:%[0-9]+]]:gprb(p0) = G_GLOBAL_VALUE @float_align466 ; MIPS32R6: [[LOAD:%[0-9]+]]:fprb(s32) = G_LOAD [[GV]](p0) :: (dereferenceable load (s32) from @float_align4)67 ; MIPS32R6: $f0 = COPY [[LOAD]](s32)68 ; MIPS32R6: RetRA implicit $f069 %1:_(p0) = G_GLOBAL_VALUE @float_align470 %0:_(s32) = G_LOAD %1(p0) :: (dereferenceable load (s32) from @float_align4)71 $f0 = COPY %0(s32)72 RetRA implicit $f073 74...75---76name: load_i32_align877alignment: 478legalized: true79tracksRegLiveness: true80body: |81 bb.1.entry:82 ; MIPS32-LABEL: name: load_i32_align883 ; MIPS32: [[GV:%[0-9]+]]:gprb(p0) = G_GLOBAL_VALUE @i32_align884 ; MIPS32: [[LOAD:%[0-9]+]]:gprb(s32) = G_LOAD [[GV]](p0) :: (dereferenceable load (s32) from @i32_align8, align 8)85 ; MIPS32: $v0 = COPY [[LOAD]](s32)86 ; MIPS32: RetRA implicit $v087 ; MIPS32R6-LABEL: name: load_i32_align888 ; MIPS32R6: [[GV:%[0-9]+]]:gprb(p0) = G_GLOBAL_VALUE @i32_align889 ; MIPS32R6: [[LOAD:%[0-9]+]]:gprb(s32) = G_LOAD [[GV]](p0) :: (dereferenceable load (s32) from @i32_align8, align 8)90 ; MIPS32R6: $v0 = COPY [[LOAD]](s32)91 ; MIPS32R6: RetRA implicit $v092 %1:_(p0) = G_GLOBAL_VALUE @i32_align893 %0:_(s32) = G_LOAD %1(p0) :: (dereferenceable load (s32) from @i32_align8, align 8)94 $v0 = COPY %0(s32)95 RetRA implicit $v096 97...98