[LLVMdev] ARM thumb-2 instruction used for non-thumb2 CPUs

Jim Grosbach grosbach at apple.com
Wed Jun 22 08:50:59 PDT 2011


On Jun 22, 2011, at 8:39 AM, Damjan Marion wrote:

> 
> On Jun 22, 2011, at 5:29 PM, Jim Grosbach wrote:
> 
>> 
>> On Jun 22, 2011, at 7:22 AM, Renato Golin wrote:
>> 
>>> On 22 June 2011 14:33, Damjan Marion <damjan.marion at gmail.com> wrote:
>>>> Problem is that in case when old binutils are used (in my case freebsd is using old one due to license upgrade to GPLv3) AS doesn't understand new mnemonics and fails.
>>> 
>>> Indeed, this is new in ARM ARM v7.
>>> 
>>> 
>>>> Can we change to old mnemonic at least when ARMv4 and ARMv5 code is generated?
>>> 
>>> We definitely should. Feel free to send a patch if you already have,
>>> or create a bug in bugzilla. Shouldn't be too hard to add it.
>> 
>> LLVM always uses unified syntax, including updated mnemonics for older instructions. Older binutils aren't supported. This is unlikely to change.
>> 
> 
> This sounds like a dead end as newer binutils are GPLv3.

Yeah, that's definitely a very real concern and a big motivation to get the MC based asm parser whipped into usable shape. We're much more in control of our own destiny then.

> What is the status of integrated-as for arm, is it stable?


The encoding information in the back end is generally in pretty decent shape for direct object file emission. Some of the folks working on the ELF emitter would be better able to tell you how that part of the things is working. The asm parser, on the other hand, is still in pretty rough shape.

That said, I'm hoping to get back to that stuff near future, so it's still under active development.

-Jim



More information about the llvm-dev mailing list