[PATCH] [mips] [IAS] Implement the .asciiz directive.

Daniel Sanders daniel.sanders at imgtec.com
Tue Mar 10 03:38:48 PDT 2015


In http://reviews.llvm.org/D7530#136916, @tomatabacu wrote:

> In http://reviews.llvm.org/D7530#136593, @dsanders wrote:
>
> > We'd need binutils to agree to drop support for it though. Otherwise, any patch to switch .asciiz to .asciz will find it difficult to get merged.
>
>
> I don't think we *need* GAS to agree to drop support for .asciiz.
>
> To me, this .asciiz situation feels like the VLAIS situation in Clang.


The difference between the two is that lack of support for VLAIS is easy to justify on the ground that it requires a significant rework to the way all structure members are accessed. On the other hand, it's easy to look at the .asciiz directive and think "surely that's a trivial change, why don't you fix your assembler?".

In short, the battle is worth fighting for VLAIS but it's not worth it for .asciiz.

> It's true that if GAS stopped supporting .asciiz, it would force everyone to switch, but I think we need to be convincing the developers to actively use and

>  support the IAS (and the whole Clang/LLVM toolchain), instead of convincing GAS to conform to our implementation.

> 

> In this regard, Linux is more problematic, as it seems to me like Clang/LLVM is used by a small subset of their dev community at the moment.


You won't be able to get everyone to agree to support both assemblers. It's hard enough to convince the developers within a single company to support multiple tools for the same purpose. You'll always have a subset that cares about building with GAS, as subset that cares about IAS, and maybe a subset that cares about both. Together, the three groups will move in the general direction of compatibility but it will break every so often.

> Also, I don't see why people would oppose switching to .asciz. GAS also supports .asciz for MIPS assembly, so there's no friction in switching.


Me neither, but we've both witnessed first hand how difficult it is to get the other clang compatibility fixes merged into Linux. It will be a lot easier to support .asciiz in IAS. Not supporting .asciiz is an option, but the battle will be hard (and neverending) while GAS continues to support both directives.


http://reviews.llvm.org/D7530

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/






More information about the llvm-commits mailing list