From patchwork Sat Oct 9 07:32:24 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Xiang, Haihao" X-Patchwork-Id: 243151 Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by demeter1.kernel.org (8.14.4/8.14.3) with ESMTP id o997YS0k005435 for ; Sat, 9 Oct 2010 07:34:48 GMT Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 2E4009E910 for ; Sat, 9 Oct 2010 00:34:28 -0700 (PDT) X-Original-To: intel-gfx@lists.freedesktop.org Delivered-To: intel-gfx@lists.freedesktop.org Received: from mga03.intel.com (mga03.intel.com [143.182.124.21]) by gabe.freedesktop.org (Postfix) with ESMTP id DE6DC9E7E2 for ; Sat, 9 Oct 2010 00:32:52 -0700 (PDT) Received: from azsmga001.ch.intel.com ([10.2.17.19]) by azsmga101.ch.intel.com with ESMTP; 09 Oct 2010 00:32:52 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="4.57,307,1283756400"; d="scan'208";a="334055527" Received: from xhh-ilk32.sh.intel.com (HELO localhost.localdomain) ([10.239.36.8]) by azsmga001.ch.intel.com with ESMTP; 09 Oct 2010 00:32:52 -0700 From: "Xiang, Haihao" To: intel-gfx@lists.freedesktop.org Date: Sat, 9 Oct 2010 15:32:24 +0800 Message-Id: <1286609550-16083-5-git-send-email-haihao.xiang@intel.com> X-Mailer: git-send-email 1.7.0.4 In-Reply-To: <1286609550-16083-1-git-send-email-haihao.xiang@intel.com> References: <1286609550-16083-1-git-send-email-haihao.xiang@intel.com> Subject: [Intel-gfx] [PATCH 04/10] add AccWrCtrl flag on Sandybridge X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: intel-gfx-bounces+patchwork-intel-gfx=patchwork.kernel.org@lists.freedesktop.org Errors-To: intel-gfx-bounces+patchwork-intel-gfx=patchwork.kernel.org@lists.freedesktop.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.3 (demeter1.kernel.org [140.211.167.41]); Sat, 09 Oct 2010 07:34:48 +0000 (UTC) diff --git a/src/brw_defines.h b/src/brw_defines.h index 7812d72..4921d34 100644 --- a/src/brw_defines.h +++ b/src/brw_defines.h @@ -552,6 +552,9 @@ #define BRW_MASK_ENABLE 0 #define BRW_MASK_DISABLE 1 +#define BRW_ACCWRCTRL_NONE 0 +#define BRW_ACCWRCTRL_ACCWRCTRL 1 + #define BRW_OPCODE_MOV 1 #define BRW_OPCODE_SEL 2 #define BRW_OPCODE_NOT 4 diff --git a/src/brw_structs.h b/src/brw_structs.h index 32a52df..515d2aa 100644 --- a/src/brw_structs.h +++ b/src/brw_structs.h @@ -1054,7 +1054,8 @@ struct brw_instruction GLuint predicate_inverse:1; /* 0x00100000 */ GLuint execution_size:3; /* 0x00e00000 */ GLuint destreg__conditionalmod:4; /* destreg - send, conditionalmod - others */ - GLuint pad0:2; /* 0x30000000 */ + GLuint acc_wr_control:1; /* 0x10000000 */ + GLuint pad0:1; /* 0x20000000 */ GLuint debug_control:1; /* 0x40000000 */ GLuint saturate:1; /* 0x80000000 */ } header; diff --git a/src/gram.y b/src/gram.y index f57e97c..fcbbd81 100644 --- a/src/gram.y +++ b/src/gram.y @@ -88,7 +88,7 @@ void set_direct_src_operand(struct src_operand *src, struct direct_reg *reg, %token TYPE_VF TYPE_HF TYPE_V TYPE_F %token ALIGN1 ALIGN16 SECHALF COMPR SWITCH ATOMIC NODDCHK NODDCLR -%token MASK_DISABLE BREAKPOINT EOT +%token MASK_DISABLE BREAKPOINT ACCWRCTRL EOT %token SEQ ANY2H ALL2H ANY4H ALL4H ANY8H ALL8H ANY16H ALL16H ANYV ALLV %token ZERO EQUAL NOT_ZERO NOT_EQUAL GREATER GREATER_EQUAL LESS LESS_EQUAL @@ -1605,6 +1605,9 @@ instoption_list: case BREAKPOINT: $$.header.debug_control = BRW_DEBUG_BREAKPOINT; break; + case ACCWRCTRL: + $$.header.acc_wr_control = BRW_ACCWRCTRL_ACCWRCTRL; + break; case EOT: /* XXX: EOT shouldn't be an instoption, I don't think */ $$.bits3.generic.end_of_thread = 1; @@ -1627,6 +1630,7 @@ instoption: ALIGN1 { $$ = ALIGN1; } | NODDCLR { $$ = NODDCLR; } | MASK_DISABLE { $$ = MASK_DISABLE; } | BREAKPOINT { $$ = BREAKPOINT; } + | ACCWRCTRL { $$ = ACCWRCTRL; } | EOT { $$ = EOT; } ; diff --git a/src/lex.l b/src/lex.l index 8d7a4f0..ead12af 100644 --- a/src/lex.l +++ b/src/lex.l @@ -269,6 +269,7 @@ extern char *input_filename; "mask_disable" { return MASK_DISABLE; } "nomask" { return MASK_DISABLE; } "breakpoint" { return BREAKPOINT; } +"accwrctrl" { return ACCWRCTRL; } "EOT" { return EOT; } /* extended math functions */