You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
59 lines
1.3 KiB
59 lines
1.3 KiB
4 months ago
|
# RUN: llc -march=amdgcn -mcpu=hawaii -run-pass=none -o - %s | FileCheck -check-prefix=MCPU %s
|
||
|
# RUN: llc -march=amdgcn -mattr=+unaligned-access-mode -run-pass=none -o - %s | FileCheck -check-prefix=MATTR %s
|
||
|
|
||
|
# FIXME: This overrides attributes that already are present. It should probably
|
||
|
# only touch functions without an existing attribute.
|
||
|
|
||
|
# MCPU: @with_cpu_attr() #0 {
|
||
|
# MCPU: @no_cpu_attr() #1 {
|
||
|
|
||
|
# MCPU: attributes #0 = { "target-cpu"="fiji" }
|
||
|
# MCPU: attributes #1 = { "target-cpu"="hawaii" }
|
||
|
|
||
|
# MATTR: attributes #0 = { "target-cpu"="fiji" "target-features"="+unaligned-access-mode" }
|
||
|
# MATTR: attributes #1 = { "target-features"="+unaligned-access-mode" }
|
||
|
|
||
|
--- |
|
||
|
define amdgpu_kernel void @with_cpu_attr() #0 {
|
||
|
ret void
|
||
|
}
|
||
|
|
||
|
define amdgpu_kernel void @no_cpu_attr() {
|
||
|
ret void
|
||
|
}
|
||
|
|
||
|
attributes #0 = { "target-cpu"="fiji" }
|
||
|
...
|
||
|
|
||
|
---
|
||
|
name: with_cpu_attr
|
||
|
legalized: true
|
||
|
regBankSelected: true
|
||
|
tracksRegLiveness: true
|
||
|
|
||
|
body: |
|
||
|
bb.0:
|
||
|
liveins: $sgpr0, $sgpr1
|
||
|
|
||
|
%0:sgpr(s32) = COPY $sgpr0
|
||
|
%1:sgpr(s32) = COPY $sgpr1
|
||
|
%2:vgpr(s32) = G_OR %0, %1
|
||
|
S_ENDPGM 0, implicit %2
|
||
|
...
|
||
|
|
||
|
---
|
||
|
name: no_cpu_attr
|
||
|
legalized: true
|
||
|
regBankSelected: true
|
||
|
tracksRegLiveness: true
|
||
|
|
||
|
body: |
|
||
|
bb.0:
|
||
|
liveins: $sgpr0, $sgpr1
|
||
|
|
||
|
%0:sgpr(s32) = COPY $sgpr0
|
||
|
%1:sgpr(s32) = COPY $sgpr1
|
||
|
%2:vgpr(s32) = G_OR %0, %1
|
||
|
S_ENDPGM 0, implicit %2
|
||
|
...
|