brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.1 KiB · 5478291 Raw
51 lines · plain
1; RUN: llc < %s -mtriple=xcore | FileCheck %s2 3define i32 @load32(ptr %p, i32 %offset) nounwind {4entry:5; CHECK-LABEL: load32:6; CHECK: ldw r0, r0[r1]7	%0 = getelementptr i32, ptr %p, i32 %offset8	%1 = load i32, ptr %0, align 49	ret i32 %110}11 12define i32 @load32_imm(ptr %p) nounwind {13entry:14; CHECK-LABEL: load32_imm:15; CHECK: ldw r0, r0[11]16	%0 = getelementptr i32, ptr %p, i32 1117	%1 = load i32, ptr %0, align 418	ret i32 %119}20 21define i32 @load16(ptr %p, i32 %offset) nounwind {22entry:23; CHECK-LABEL: load16:24; CHECK: ld16s r0, r0[r1]25; CHECK-NOT: sext26	%0 = getelementptr i16, ptr %p, i32 %offset27	%1 = load i16, ptr %0, align 228	%2 = sext i16 %1 to i3229	ret i32 %230}31 32define i32 @load8(ptr %p, i32 %offset) nounwind {33entry:34; CHECK-LABEL: load8:35; CHECK: ld8u r0, r0[r1]36; CHECK-NOT: zext37	%0 = getelementptr i8, ptr %p, i32 %offset38	%1 = load i8, ptr %0, align 139	%2 = zext i8 %1 to i3240	ret i32 %241}42 43@GConst = internal constant i32 4244define i32 @load_cp() nounwind {45entry:46; CHECK-LABEL: load_cp:47; CHECK: ldw r0, cp[GConst]48  %0 = load i32, ptr @GConst49  ret i32 %050}51