From e8cb195c6d9bb9072896e15416f4207ccffdd919 Mon Sep 17 00:00:00 2001 From: Homer Hsing Date: Fri, 28 Sep 2012 14:05:51 +0800 Subject: [PATCH] Support Gen6 WHILE instruction --- assembler/src/gram.y | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/assembler/src/gram.y b/assembler/src/gram.y index 03b77417..1b409886 100644 --- a/assembler/src/gram.y +++ b/assembler/src/gram.y @@ -545,7 +545,10 @@ loopinstruction: predicate WHILE execsize relativelocation instoptions set_instruction_src1(&$$, &$4); $$.first_reloc_target = $4.reloc_target; $$.first_reloc_offset = $4.imm32; - } else if (gen_level == 7) { // TODO: Gen6 also OK? + } else if (gen_level >= 6) { + /* Gen6 spec: + dest must have the same element size as src0. + dest horizontal stride must be 1. */ memset(&$$, 0, sizeof($$)); set_instruction_predicate(&$$, &$1); $$.header.opcode = $2;