forked from OSchip/llvm-project
59 lines
1.3 KiB
YAML
59 lines
1.3 KiB
YAML
# RUN: llc -march=amdgcn -mcpu=hawaii -run-pass=none -o - %s | FileCheck -check-prefix=MCPU %s
|
|
# RUN: llc -march=amdgcn -mattr=+unaligned-buffer-access -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-buffer-access" }
|
|
# MATTR: attributes #1 = { "target-features"="+unaligned-buffer-access" }
|
|
|
|
--- |
|
|
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
|
|
...
|