[LLVMdev] thumb2 has divide instructions

Bagel bagel99 at gmail.com
Tue Dec 1 15:04:53 PST 2009


OK, here's a patch that follows your suggestion.  I'm not an authorized 
developer, so I can't commit it myself.  The test case is also attached again.

bagel

Jim Grosbach wrote:
 > Ah, ok. I was comparing v7-A and v7-R only. The M3 is described in
 > separate documentation (mostly since it lacks the ARM mode instructions,
 > I suspect). In any case, as far as I can tell, not all v7 processors
 > support the hardware divide instructions.
 >
 > It's definitely desirable to support them for processors which do have
 > them, but they need to be conditionalized such that they're only used
 > when they're available. The instruction predicates are the best way to
 > do that. For now, I would suggest adding a predicate such as
 > "HasThumb2HardwareDivide" and hooking it up to a command line option to
 > enable (see UseNEONFP in ARMSubTarget.cpp for an example of how to do
 > that). You can then auto-enable it when the CPU string is "cortex-m3",
 > as is done for the UseNEONFP option on the A8 (see the bottom of the
 > ARMSubtarget::ARMSubtarget() constructor in ARMSubTarget.cpp).
 >
 > Thanks for looking at this!
 >
 > -Jim
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: div-v2.diff
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20091201/1b324257/attachment.ksh>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: div.ll
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20091201/1b324257/attachment-0001.ksh>


More information about the llvm-dev mailing list