Please use GitHub pull requests for new patches. Phabricator shutdown timeline
Changeset View
Changeset View
Standalone View
Standalone View
llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ashr.mir
Show First 20 Lines • Show All 1,226 Lines • ▼ Show 20 Lines | |||||
body: | | body: | | ||||
bb.0: | bb.0: | ||||
liveins: $vgpr0_vgpr1_vgpr2_vgpr3, $vgpr4 | liveins: $vgpr0_vgpr1_vgpr2_vgpr3, $vgpr4 | ||||
; SI-LABEL: name: test_ashr_s128_s32_0 | ; SI-LABEL: name: test_ashr_s128_s32_0 | ||||
; SI: liveins: $vgpr0_vgpr1_vgpr2_vgpr3, $vgpr4 | ; SI: liveins: $vgpr0_vgpr1_vgpr2_vgpr3, $vgpr4 | ||||
; SI-NEXT: {{ $}} | ; SI-NEXT: {{ $}} | ||||
; SI-NEXT: [[COPY:%[0-9]+]]:_(s128) = COPY $vgpr0_vgpr1_vgpr2_vgpr3 | ; SI-NEXT: [[COPY:%[0-9]+]]:_(s128) = COPY $vgpr0_vgpr1_vgpr2_vgpr3 | ||||
; SI-NEXT: [[UV:%[0-9]+]]:_(s64), [[UV1:%[0-9]+]]:_(s64) = G_UNMERGE_VALUES [[COPY]](s128) | ; SI-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = COPY [[COPY]](s128) | ||||
; SI-NEXT: [[MV:%[0-9]+]]:_(s128) = G_MERGE_VALUES [[UV]](s64), [[UV1]](s64) | |||||
; SI-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = COPY [[MV]](s128) | |||||
; VI-LABEL: name: test_ashr_s128_s32_0 | ; VI-LABEL: name: test_ashr_s128_s32_0 | ||||
; VI: liveins: $vgpr0_vgpr1_vgpr2_vgpr3, $vgpr4 | ; VI: liveins: $vgpr0_vgpr1_vgpr2_vgpr3, $vgpr4 | ||||
; VI-NEXT: {{ $}} | ; VI-NEXT: {{ $}} | ||||
; VI-NEXT: [[COPY:%[0-9]+]]:_(s128) = COPY $vgpr0_vgpr1_vgpr2_vgpr3 | ; VI-NEXT: [[COPY:%[0-9]+]]:_(s128) = COPY $vgpr0_vgpr1_vgpr2_vgpr3 | ||||
; VI-NEXT: [[UV:%[0-9]+]]:_(s64), [[UV1:%[0-9]+]]:_(s64) = G_UNMERGE_VALUES [[COPY]](s128) | ; VI-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = COPY [[COPY]](s128) | ||||
; VI-NEXT: [[MV:%[0-9]+]]:_(s128) = G_MERGE_VALUES [[UV]](s64), [[UV1]](s64) | |||||
; VI-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = COPY [[MV]](s128) | |||||
; GFX9PLUS-LABEL: name: test_ashr_s128_s32_0 | ; GFX9PLUS-LABEL: name: test_ashr_s128_s32_0 | ||||
; GFX9PLUS: liveins: $vgpr0_vgpr1_vgpr2_vgpr3, $vgpr4 | ; GFX9PLUS: liveins: $vgpr0_vgpr1_vgpr2_vgpr3, $vgpr4 | ||||
; GFX9PLUS-NEXT: {{ $}} | ; GFX9PLUS-NEXT: {{ $}} | ||||
; GFX9PLUS-NEXT: [[COPY:%[0-9]+]]:_(s128) = COPY $vgpr0_vgpr1_vgpr2_vgpr3 | ; GFX9PLUS-NEXT: [[COPY:%[0-9]+]]:_(s128) = COPY $vgpr0_vgpr1_vgpr2_vgpr3 | ||||
; GFX9PLUS-NEXT: [[UV:%[0-9]+]]:_(s64), [[UV1:%[0-9]+]]:_(s64) = G_UNMERGE_VALUES [[COPY]](s128) | ; GFX9PLUS-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = COPY [[COPY]](s128) | ||||
; GFX9PLUS-NEXT: [[MV:%[0-9]+]]:_(s128) = G_MERGE_VALUES [[UV]](s64), [[UV1]](s64) | |||||
; GFX9PLUS-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = COPY [[MV]](s128) | |||||
%0:_(s128) = COPY $vgpr0_vgpr1_vgpr2_vgpr3 | %0:_(s128) = COPY $vgpr0_vgpr1_vgpr2_vgpr3 | ||||
%1:_(s32) = G_CONSTANT i32 0 | %1:_(s32) = G_CONSTANT i32 0 | ||||
%3:_(s128) = G_ASHR %0, %1 | %3:_(s128) = G_ASHR %0, %1 | ||||
$vgpr0_vgpr1_vgpr2_vgpr3 = COPY %3 | $vgpr0_vgpr1_vgpr2_vgpr3 = COPY %3 | ||||
... | ... | ||||
--- | --- | ||||
▲ Show 20 Lines • Show All 961 Lines • Show Last 20 Lines |