diff options
author | Pekka Jääskeläinen <pekka.jaaskelainen@parmance.com> | 2018-05-04 19:46:16 +0000 |
---|---|---|
committer | Pekka Jääskeläinen <visit0r@gcc.gnu.org> | 2018-05-04 19:46:16 +0000 |
commit | 73def6eadc7a1f3e3465b972b774f26fcf8446bf (patch) | |
tree | ccd1bcb8de4753d06372dde559faa64c155a313b /gcc/brig/brigfrontend | |
parent | 080dc24383a602a5a4095eb05b04100f15ba1ad4 (diff) | |
download | gcc-73def6eadc7a1f3e3465b972b774f26fcf8446bf.zip gcc-73def6eadc7a1f3e3465b972b774f26fcf8446bf.tar.gz gcc-73def6eadc7a1f3e3465b972b774f26fcf8446bf.tar.bz2 |
[BRIGFE] Fix handling of NOPs.
From-SVN: r259958
Diffstat (limited to 'gcc/brig/brigfrontend')
-rw-r--r-- | gcc/brig/brigfrontend/brig-basic-inst-handler.cc | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/gcc/brig/brigfrontend/brig-basic-inst-handler.cc b/gcc/brig/brigfrontend/brig-basic-inst-handler.cc index c8224ae..75e1cfa 100644 --- a/gcc/brig/brigfrontend/brig-basic-inst-handler.cc +++ b/gcc/brig/brigfrontend/brig-basic-inst-handler.cc @@ -447,6 +447,8 @@ size_t brig_basic_inst_handler::operator () (const BrigBase *base) { const BrigInstBase *brig_inst = (const BrigInstBase *) base; + if (brig_inst->opcode == BRIG_OPCODE_NOP) + return base->byteCount; tree_stl_vec operands = build_operands (*brig_inst); @@ -466,11 +468,9 @@ brig_basic_inst_handler::operator () (const BrigBase *base) BrigType16_t brig_inst_type = brig_inst->type; - if (brig_inst->opcode == BRIG_OPCODE_NOP) - return base->byteCount; - else if (brig_inst->opcode == BRIG_OPCODE_FIRSTBIT - || brig_inst->opcode == BRIG_OPCODE_LASTBIT - || brig_inst->opcode == BRIG_OPCODE_SAD) + if (brig_inst->opcode == BRIG_OPCODE_FIRSTBIT + || brig_inst->opcode == BRIG_OPCODE_LASTBIT + || brig_inst->opcode == BRIG_OPCODE_SAD) /* These instructions are reported to be always 32b in HSAIL, but we want to treat them according to their input argument's type to select the correct instruction/builtin. */ |