forked from OSchip/llvm-project
58 lines
1.8 KiB
Plaintext
58 lines
1.8 KiB
Plaintext
|
#RUN: not llc -o - -run-pass=none -verify-machineinstrs %s 2>&1 | FileCheck %s
|
||
|
# REQUIRES: global-isel, aarch64-registered-target
|
||
|
|
||
|
---
|
||
|
name: test_addrspacecast
|
||
|
legalized: true
|
||
|
regBankSelected: false
|
||
|
selected: false
|
||
|
tracksRegLiveness: true
|
||
|
liveins:
|
||
|
body: |
|
||
|
bb.0:
|
||
|
|
||
|
%0:_(s64) = G_IMPLICIT_DEF
|
||
|
%1:_(p0) = G_IMPLICIT_DEF
|
||
|
%2:_(<2 x s64>) = G_IMPLICIT_DEF
|
||
|
%3:_(<2 x p0>) = G_IMPLICIT_DEF
|
||
|
|
||
|
; CHECK: Bad machine code: Too few operands
|
||
|
%4:_(s64) = G_ADDRSPACE_CAST
|
||
|
|
||
|
; CHECK: Bad machine code: Too few operands
|
||
|
; CHECK: Bad machine code: Explicit definition marked as use
|
||
|
G_ADDRSPACE_CAST %1
|
||
|
|
||
|
; CHECK: Bad machine code: addrspacecast types must be pointers
|
||
|
%5:_(p0) = G_ADDRSPACE_CAST %0
|
||
|
|
||
|
; CHECK: Bad machine code: addrspacecast types must be pointers
|
||
|
%6:_(s64) = G_ADDRSPACE_CAST %1
|
||
|
|
||
|
; CHECK: Bad machine code: addrspacecast types must be pointers
|
||
|
%7:_(<2 x s64>) = G_ADDRSPACE_CAST %1
|
||
|
|
||
|
; CHECK: Bad machine code: addrspacecast types must be pointers
|
||
|
%8:_(<2 x p0>) = G_ADDRSPACE_CAST %2
|
||
|
|
||
|
; CHECK: Bad machine code: operand types must be all-vector or all-scalar
|
||
|
%9:_(<2 x p1>) = G_ADDRSPACE_CAST %1
|
||
|
|
||
|
; CHECK: Bad machine code: operand types must be all-vector or all-scalar
|
||
|
%10:_(p1) = G_ADDRSPACE_CAST %3
|
||
|
|
||
|
; CHECK: Bad machine code: operand types must preserve number of vector elements
|
||
|
%11:_(<4 x p1>) = G_ADDRSPACE_CAST %3
|
||
|
|
||
|
; CHECK: Bad machine code: operand types must preserve number of vector elements
|
||
|
%12:_(<4 x p1>) = G_IMPLICIT_DEF
|
||
|
%13:_(<2 x p0>) = G_ADDRSPACE_CAST %12
|
||
|
|
||
|
; CHECK: Bad machine code: addrspacecast must convert different address spaces
|
||
|
%14:_(p0) = G_ADDRSPACE_CAST %1
|
||
|
|
||
|
; CHECK: Bad machine code: addrspacecast must convert different address spaces
|
||
|
%15:_(<2 x p0>) = G_ADDRSPACE_CAST %3
|
||
|
|
||
|
...
|