[llvm-commits] Fixing Bug 13662: paired register for inline asm with 64-bit data on ARM
Weiming Zhao
weimingz at codeaurora.org
Wed Oct 31 15:15:01 PDT 2012
Hi Jakob,
I'm changing the ldrexd/strexd of ARMInstrInfo.td to
def LDREXD: AIldrex<0b01, (outs GPRPair:$Rt),(ins addr_offset_none:$addr),
NoItinerary, "ldrexd", "\t$Rt, $addr", []> {
let DecoderMethod = "DecodeDoubleRegLoad";
}
def STREXD : AIstrex<0b01, (outs GPR:$Rd),
(ins GPRPair:$Rt, addr_offset_none:$addr),
NoItinerary, "strexd", "\t$Rd, $Rt, $addr", []> {
let DecoderMethod = "DecodeDoubleRegStore";
}
Is this the way you're referring to?
So far, it almost works but I need to deal with printing "R0_R1" for the
GPRPair reg name. I'm planning to do it in
InstPrinter/ARMInstPrinter.cpp::printOperand(). If we can let TableGen
generate names like "R0, R1" instead of "R0_R1", it would be easier.
Thanks,
Weiming
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by
The Linux Foundation
-----Original Message-----
From: Weiming Zhao [mailto:weimingz at codeaurora.org]
Sent: Friday, October 26, 2012 5:54 PM
To: 'Jakob Stoklund Olesen'
Cc: 'Jim Grosbach'; 'llvm-commits at cs.uiuc.edu'; 'zinob at codeaurora.org'
Subject: RE: [llvm-commits] Fixing Bug 13662: paired register for inline asm
with 64-bit data on ARM
Hi Jakob,
Attached is my 2nd patch that replaces hard coded [R0, R1] of
Intrinsic::arm_ldrexd and [R2, R3] of Intrinsic::arm_strexd I plan to
include the inlineASM fix into next patch.
This patch passes the unit tests especially test/CodeGen/ARM/ldstrexd.ll
Please help to review it.
Thanks,
Weiming
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by
The Linux Foundation
-----Original Message-----
From: Jakob Stoklund Olesen [mailto:stoklund at 2pi.dk]
Sent: Thursday, October 25, 2012 9:31 AM
To: weimingz at codeaurora.org
Cc: 'Jim Grosbach'; llvm-commits at cs.uiuc.edu; zinob at codeaurora.org
Subject: Re: [llvm-commits] Fixing Bug 13662: paired register for inline asm
with 64-bit data on ARM
On Oct 23, 2012, at 2:57 PM, Weiming Zhao <weimingz at codeaurora.org> wrote:
> When I run "make check", even without my patch, I still see 93
> unexpected failures. So maybe I ignored that failure.
Please get that fixed before sending more patches. I can't do basic checking
for you.
/jakob
More information about the llvm-commits
mailing list