diff options
author | Tom Stellard <thomas.stellard@amd.com> | 2013-04-29 22:23:54 +0000 |
---|---|---|
committer | Tom Stellard <thomas.stellard@amd.com> | 2013-04-29 22:23:54 +0000 |
commit | 015f586bc9665192b6814e91bf47552265ee0617 (patch) | |
tree | 9bf968d8a11eaed57eb0271cafe84251eaca41ac | |
parent | 8393b99ed0fb60a966bc40610b8a63029f85962c (diff) | |
download | external_llvm-015f586bc9665192b6814e91bf47552265ee0617.zip external_llvm-015f586bc9665192b6814e91bf47552265ee0617.tar.gz external_llvm-015f586bc9665192b6814e91bf47552265ee0617.tar.bz2 |
R600: Fix encoding of CF_END_{EG, R600} instructions
The EOP bit was not being encoded.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180734 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Target/R600/R600Instructions.td | 1 | ||||
-rw-r--r-- | test/CodeGen/R600/cf_end.ll | 6 |
2 files changed, 7 insertions, 0 deletions
diff --git a/lib/Target/R600/R600Instructions.td b/lib/Target/R600/R600Instructions.td index f74c5a6..5757f64 100644 --- a/lib/Target/R600/R600Instructions.td +++ b/lib/Target/R600/R600Instructions.td @@ -906,6 +906,7 @@ class CF_WORD1_EG { let Word1{9-8} = COND; let Word1{15-10} = COUNT; let Word1{20} = VALID_PIXEL_MODE; + let Word1{21} = END_OF_PROGRAM; let Word1{29-22} = CF_INST; let Word1{31} = BARRIER; } diff --git a/test/CodeGen/R600/cf_end.ll b/test/CodeGen/R600/cf_end.ll new file mode 100644 index 0000000..67d5e3e --- /dev/null +++ b/test/CodeGen/R600/cf_end.ll @@ -0,0 +1,6 @@ +; RUN: llc < %s -march=r600 -mcpu=redwood --show-mc-encoding | FileCheck %s + +; CHECK: CF_END ; encoding: [0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x80] +define void @eop() { + ret void +} |