Bump version to 19.1.0-rc3
[llvm-project.git] / llvm / test / CodeGen / AArch64 / asm-ld1-wrong-constraint.ll
blobb62c18ccfbcd296031df56932505c872e944f488
1 ; RUN: not llc < %s -o - 2>&1 | FileCheck %s
3 target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128-Fn32"
4 target triple = "arm64-apple-macosx"
6 %struct.uint64x2x4_t = type { [4 x <2 x i64>] }
8 define i64 @rdar130887714(ptr noundef %0) {
9   %2 = alloca ptr, align 8
10   %3 = alloca %struct.uint64x2x4_t, align 16
11   store ptr %0, ptr %2, align 8
12   %4 = load ptr, ptr %2, align 8
13   call void asm sideeffect "ld1 { $0.2d, ${0:T}.2d, ${0:U}.2d, ${0:V}.2d} , [$1]", "*w,r"(ptr elementtype(%struct.uint64x2x4_t) %3, ptr %4) #0, !srcloc !0
14 ; CHECK: error: Don't know how to handle indirect register inputs yet for constraint 'w' at line 250
16   %5 = getelementptr inbounds %struct.uint64x2x4_t, ptr %3, i32 0, i32 0
17   %6 = getelementptr inbounds [4 x <2 x i64>], ptr %5, i64 0, i64 0
18   %7 = load <2 x i64>, ptr %6, align 16
19   %8 = extractelement <2 x i64> %7, i32 1
20   ret i64 %8
23 !0 = !{i64 250}