This is the mail archive of the
mailing list for the binutils project.
[Backport Ping][AArch64] PR target/20666, fix wrong encoding of new introduced BFC pseudo
- From: Jiong Wang <jiong dot wang at foss dot arm dot com>
- To: gingold at adacore dot com
- Cc: "Richard Earnshaw (lists)" <Richard dot Earnshaw at arm dot com>, "binutils at sourceware dot org" <binutils at sourceware dot org>
- Date: Wed, 19 Oct 2016 14:29:48 +0100
- Subject: [Backport Ping][AArch64] PR target/20666, fix wrong encoding of new introduced BFC pseudo
- Authentication-results: sourceware.org; auth=none
- References: <firstname.lastname@example.org> <email@example.com> <firstname.lastname@example.org>
On 11/10/16 10:41, Richard Earnshaw (lists) wrote:
On 10/10/16 17:40, Jiong Wang wrote:
On 24/11/15 11:17, Matthew Wahab wrote:
2015-11-24 Matthew Wahab <email@example.com>
* aarch64-asm-2.c: Regenerate.
* aarch64-asm.c (convert_bfc_to_bfm): New.
There looks like a copy & paste error in this function, and caused PR
+convert_bfc_to_bfm (aarch64_inst *inst)
+ int64_t lsb, width;
+ /* Insert XZR. */
+ copy_operand_info (inst, 3, 2);
+ copy_operand_info (inst, 2, 1);
+ copy_operand_info (inst, 2, 0);
^~~~~~~ should be "0".
"BFC Xd, lsb, width" is simplified form of "BFI Xd, XZR, lsb, width",
are alias and will be transformed into "BFM Xd, XZR, immr, imms" during
we inserting XZR into operand 1 of BFM, and the operand 0 (Xd) is not
The expected results in the testcase are also wrong. Both fixed.
OK for master?
OK. You'll need Tristan's ack for the backports, but as a wrong code
bug I hope he'll approve.
Tristan, OK to backport? This is an important wrong encoding fix.
I want to backport to 2.26 and 2.27. Patch applies cleanly on both.