From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1059) id 46543386180E; Fri, 28 Aug 2020 15:59:06 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 46543386180E DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1598630346; bh=vaK2//iuNjlYNKMGt3vckWmDZO0gRDZT/jM+/cPQsqE=; h=From:To:Subject:Date:From; b=TYPE5drY6Nt/1HhI8BPT2KN8OWM1QdviSXu0+36xNDmjnsHffe5TWgGbPu04TQO1l 9e4IGGe8x1h/Wy1WQVfamYpTa55OQxQNEOF3Q0MSk8Ygs75wI8Zomv6UIWhLymOEaR 370QWA8tnnucxwNPZ85vfGTzV7siNszlIfAYMIkk= Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Nathan Sidwell To: gcc-cvs@gcc.gnu.org Subject: [gcc/devel/c++-modules] According to instruction_tables.pdf X-Act-Checkin: gcc X-Git-Author: liuhongt X-Git-Refname: refs/heads/devel/c++-modules X-Git-Oldrev: 2d2bc36c4440c126decee5a8379c158d9012adfc X-Git-Newrev: 16516644d8f5c13e666251470d604778d347f796 Message-Id: <20200828155906.46543386180E@sourceware.org> Date: Fri, 28 Aug 2020 15:59:06 +0000 (GMT) X-BeenThere: gcc-cvs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 28 Aug 2020 15:59:06 -0000 https://gcc.gnu.org/g:16516644d8f5c13e666251470d604778d347f796 commit 16516644d8f5c13e666251470d604778d347f796 Author: liuhongt Date: Thu Oct 24 11:13:00 2019 +0800 According to instruction_tables.pdf 1. Set cost of movement inside mask registers a bit higher than gpr's. 2. Set cost of movement between mask register and gpr much higher than movement inside gpr, but still less equal than load/store. 3. Set cost of mask register load/store a bit higher than gpr load/store. gcc/ * config/i386/x86-tune-costs.h (skylake_cost): Adjust cost model. Diff: --- gcc/config/i386/x86-tune-costs.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gcc/config/i386/x86-tune-costs.h b/gcc/config/i386/x86-tune-costs.h index 256c84e364e..a782a9dd9e3 100644 --- a/gcc/config/i386/x86-tune-costs.h +++ b/gcc/config/i386/x86-tune-costs.h @@ -1727,12 +1727,12 @@ struct processor_costs skylake_cost = { {8, 8, 8, 12, 24}, /* cost of storing SSE registers in 32,64,128,256 and 512-bit */ 6, 6, /* SSE->integer and integer->SSE moves */ - 2, 2, /* mask->integer and integer->mask moves */ - {4, 4, 4}, /* cost of loading mask register + 4, 6, /* mask->integer and integer->mask moves */ + {6, 6, 6}, /* cost of loading mask register in QImode, HImode, SImode. */ - {6, 6, 6}, /* cost if storing mask register + {8, 8, 8}, /* cost if storing mask register in QImode, HImode, SImode. */ - 2, /* cost of moving mask register. */ + 3, /* cost of moving mask register. */ /* End of register allocator costs. */ },