brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.4 KiB · 3ed8468 Raw
50 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 42; RUN: llc < %s -mtriple=aarch64 | FileCheck %s3 4define void @f(i16 %arg, ptr %arg1) {5; CHECK-LABEL: f:6; CHECK:       // %bb.0:7; CHECK-NEXT:    ubfx w8, w0, #8, #68; CHECK-NEXT:    strb w0, [x1]9; CHECK-NEXT:    strb w8, [x1, #1]10; CHECK-NEXT:    ret11bb:12  %i = trunc i16 %arg to i813  %i2 = trunc i16 %arg to i1414  %i3 = lshr i14 %i2, 815  store i8 %i, ptr %arg1, align 116  %i4 = getelementptr i8, ptr %arg1, i64 117  %i5 = trunc i14 %i3 to i818  store i8 %i5, ptr %i4, align 119  ret void20}21 22define void @g(i32 %arg, ptr %arg1) {23; CHECK-LABEL: g:24; CHECK:       // %bb.0: // %bb25; CHECK-NEXT:    lsr w8, w0, #826; CHECK-NEXT:    lsr w9, w0, #1627; CHECK-NEXT:    strb w0, [x1]28; CHECK-NEXT:    strb wzr, [x1, #3]29; CHECK-NEXT:    strb w8, [x1, #1]30; CHECK-NEXT:    strb w9, [x1, #2]31; CHECK-NEXT:    ret32bb:33  %i = trunc i32 %arg to i834  store i8 %i, ptr %arg1, align 135  %i2 = lshr i32 %arg, 836  %i3 = trunc i32 %i2 to i837  %i4 = getelementptr i8, ptr %arg1, i64 138  store i8 %i3, ptr %i4, align 139  %i5 = lshr i32 %arg, 1640  %i6 = trunc i32 %i5 to i841  %i7 = getelementptr i8, ptr %arg1, i64 242  store i8 %i6, ptr %i7, align 143  %i8 = zext i8 %i to i3244  %i9 = lshr i32 %i8, 2445  %i10 = getelementptr i8, ptr %arg1, i64 346  %i11 = trunc i32 %i9 to i847  store i8 %i11, ptr %i10, align 148  ret void49}50