1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 03:02:36 +01:00

[AArch64][GlobalISel] Make <8 x s8> of G_BUILD_VECTOR legal.

This commit is contained in:
Amara Emerson 2020-09-18 10:23:35 -07:00
parent 1be91f6af0
commit 09bd06838e
2 changed files with 18 additions and 1 deletions

View File

@ -599,7 +599,8 @@ AArch64LegalizerInfo::AArch64LegalizerInfo(const AArch64Subtarget &ST)
});
getActionDefinitionsBuilder(G_BUILD_VECTOR)
.legalFor({{v16s8, s8},
.legalFor({{v8s8, s8},
{v16s8, s8},
{v4s16, s16},
{v8s16, s16},
{v2s32, s32},

View File

@ -72,3 +72,19 @@ body: |
$q0 = COPY %2(<16 x s8>)
RET_ReallyLR
...
---
name: legal_v8s8
body: |
bb.0:
; CHECK-LABEL: name: legal_v8s8
; CHECK: [[DEF:%[0-9]+]]:_(s8) = G_IMPLICIT_DEF
; CHECK: [[DEF1:%[0-9]+]]:_(s8) = G_IMPLICIT_DEF
; CHECK: [[BUILD_VECTOR:%[0-9]+]]:_(<8 x s8>) = G_BUILD_VECTOR [[DEF]](s8), [[DEF1]](s8), [[DEF]](s8), [[DEF1]](s8), [[DEF]](s8), [[DEF1]](s8), [[DEF]](s8), [[DEF1]](s8)
; CHECK: $d0 = COPY [[BUILD_VECTOR]](<8 x s8>)
; CHECK: RET_ReallyLR
%0:_(s8) = G_IMPLICIT_DEF
%1:_(s8) = G_IMPLICIT_DEF
%2:_(<8 x s8>) = G_BUILD_VECTOR %0(s8), %1(s8), %0(s8), %1(s8), %0(s8), %1(s8), %0(s8), %1(s8)
$d0 = COPY %2(<8 x s8>)
RET_ReallyLR
...