1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-26 04:32:44 +01:00

AMDGPU/GlobalISel: Make i32 xor legal

llvm-svn: 326466
This commit is contained in:
Matt Arsenault 2018-03-01 19:09:21 +00:00
parent 2869f6a9d5
commit 565e3b87de
2 changed files with 20 additions and 2 deletions

View File

@ -35,6 +35,8 @@ AMDGPULegalizerInfo::AMDGPULegalizerInfo() {
setAction({G_ADD, S32}, Legal);
setAction({G_AND, S32}, Legal);
setAction({G_OR, S32}, Legal);
setAction({G_XOR, S32}, Legal);
setAction({G_BITCAST, V2S16}, Legal);
setAction({G_BITCAST, 1, S32}, Legal);
@ -79,8 +81,6 @@ AMDGPULegalizerInfo::AMDGPULegalizerInfo() {
setAction({G_LOAD, 1, P1}, Legal);
setAction({G_LOAD, 1, P2}, Legal);
setAction({G_OR, S32}, Legal);
setAction({G_SELECT, S32}, Legal);
setAction({G_SELECT, 1, S1}, Legal);

View File

@ -0,0 +1,18 @@
# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
# RUN: llc -mtriple=amdgcn-mesa-mesa3d -mcpu=fiji -O0 -run-pass=legalizer -global-isel %s -o - | FileCheck %s
---
name: test_xor
body: |
bb.0:
liveins: $vgpr0, $vgpr1
; CHECK-LABEL: name: test_xor
; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY $vgpr0
; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY $vgpr1
; CHECK: [[XOR:%[0-9]+]]:_(s32) = G_XOR [[COPY]], [[COPY1]]
%0:_(s32) = COPY $vgpr0
%1:_(s32) = COPY $vgpr1
%2:_(s32) = G_XOR %0, %1
$vgpr0 = COPY %2
...