[Patch] [Thumbv8] Prevent bundling inst that sets CPSR
Weiming Zhao
weimingz at codeaurora.org
Wed Jan 22 10:51:10 PST 2014
Ping?
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by
The Linux Foundation
From: Weiming Zhao [mailto:weimingz at codeaurora.org]
Sent: Friday, January 03, 2014 12:21 PM
To: llvm-commits at cs.uiuc.edu
Subject: [Patch] [Thumbv8] Prevent bundling inst that sets CPSR
Hi,
Currently, for thumbv8, an extra pass "Thumb2SizeReduction" is run before
IfConv.
However, Thumb2SizeReduction may set CPSR for converted instrs (e.g. mul ->
muls) and such instrs may get bundled later on in IfConv pass, which causes
some illegal instructions. See http://llvm.org/bugs/show_bug.cgi?id=18370
This patch adds checks for the eligibility of IT blocks: if an instruction
already sets CPSR, then don't bundle it. Please help to review it.
Thanks,
Weiming
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by
The Linux Foundation
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140122/a9d16979/attachment.html>
More information about the llvm-commits
mailing list