From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 5131 invoked by alias); 18 Feb 2005 02:05:37 -0000 Mailing-List: contact binutils-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: binutils-owner@sources.redhat.com Received: (qmail 4442 invoked from network); 18 Feb 2005 02:05:27 -0000 Received: from unknown (HELO bluesmobile.specifixinc.com) (64.220.152.98) by sourceware.org with SMTP; 18 Feb 2005 02:05:27 -0000 Received: from [127.0.0.1] (bluesmobile.corp.specifixinc.com [192.168.1.2]) by bluesmobile.specifixinc.com (Postfix) with ESMTP id A3BBB16797; Thu, 17 Feb 2005 18:05:26 -0800 (PST) Subject: Re: PATCH: Disable hint in B unit for Montecito From: James E Wilson To: "H. J. Lu" Cc: binutils@sources.redhat.com In-Reply-To: <20050217222654.GA9640@lucon.org> References: <20050216170229.GA16645@lucon.org> <1108597856.27293.70.camel@aretha.corp.specifixinc.com> <20050217020214.GA24401@lucon.org> <20050217044311.GA26612@lucon.org> <20050217184731.GA6409@lucon.org> <1108674344.5617.64.camel@aretha.corp.specifixinc.com> <20050217222654.GA9640@lucon.org> Content-Type: multipart/mixed; boundary="=-Ebz1Atxznr7vBOt5wlaS" Message-Id: <1108692326.5617.89.camel@aretha.corp.specifixinc.com> Mime-Version: 1.0 Date: Fri, 18 Feb 2005 04:43:00 -0000 X-SW-Source: 2005-02/txt/msg00426.txt.bz2 --=-Ebz1Atxznr7vBOt5wlaS Content-Type: text/plain Content-Transfer-Encoding: 7bit Content-length: 413 On Thu, 2005-02-17 at 14:26, H. J. Lu wrote: > This patch makes dv-srlz.o much larger and fails We failed to correctly set user_template when manually inserting serialization instructions. This is trivial to fix. We just need to set user_template to -1 after clearing CURR_SLOT. The following patch passes the testsuite, and has been checked in. -- Jim Wilson, GNU Tools Support, http://www.SpecifixInc.com --=-Ebz1Atxznr7vBOt5wlaS Content-Disposition: attachment; filename=patch.insn.bundling.2 Content-Type: text/x-troff-man; name=patch.insn.bundling.2; charset=utf-8 Content-Transfer-Encoding: 7bit Content-length: 2131 2005-02-17 James E Wilson * config/tc-ia64.c (emit_one_bundle): Stop filling a bundle if we see an instruction that specifies a template. Index: tc-ia64.c =================================================================== RCS file: /cvs/src/src/gas/config/tc-ia64.c,v retrieving revision 1.144 diff -p -p -r1.144 tc-ia64.c *** tc-ia64.c 17 Feb 2005 07:43:11 -0000 1.144 --- tc-ia64.c 18 Feb 2005 01:46:57 -0000 *************** *** 1,5 **** /* tc-ia64.c -- Assembler for the HP/Intel IA-64 architecture. ! Copyright 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. Contributed by David Mosberger-Tang --- 1,5 ---- /* tc-ia64.c -- Assembler for the HP/Intel IA-64 architecture. ! Copyright 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. Contributed by David Mosberger-Tang *************** emit_one_bundle () *** 6564,6569 **** --- 6564,6574 ---- break; /* Need to start a new bundle. */ } + /* If this instruction specifies a template, then it must be the first + instruction of a bundle. */ + if (curr != first && md.slot[curr].user_template >= 0) + break; + if (idesc->flags & IA64_OPCODE_SLOT2) { if (manual_bundling && !manual_bundling_off) *************** remove_marked_resource (rs) *** 10103,10108 **** --- 10108,10114 ---- struct slot oldslot = CURR_SLOT; /* Manually jam a srlz.i insn into the stream */ memset (&CURR_SLOT, 0, sizeof (CURR_SLOT)); + CURR_SLOT.user_template = -1; CURR_SLOT.idesc = ia64_find_opcode ("srlz.i"); instruction_serialization (); md.curr_slot = (md.curr_slot + 1) % NUM_SLOTS; *************** remove_marked_resource (rs) *** 10124,10129 **** --- 10130,10136 ---- struct slot oldslot = CURR_SLOT; /* Manually jam a srlz.d insn into the stream */ memset (&CURR_SLOT, 0, sizeof (CURR_SLOT)); + CURR_SLOT.user_template = -1; CURR_SLOT.idesc = ia64_find_opcode ("srlz.d"); data_serialization (); md.curr_slot = (md.curr_slot + 1) % NUM_SLOTS; --=-Ebz1Atxznr7vBOt5wlaS--