This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Remove E6500 insns from PPC_OPCODE_ALTIVEC2


On 4/7/17 8:07 PM, Alan Modra wrote:
> On another subject, I'd like your opinion on removing -[mM]htm options
> from gas and the disassembler.  I think now that it was a mistake to
> add them in the first place (and every other use of .sticky except for
> -mall and -mraw).  I would have liked to remove -[mM]vsx too, but
> "gcc -mvsx" passes on -mvsx to gas, and has done so for quite some
> time.  So -mvsx looks impossible to remove without breaking gcc.
> "gcc -mhtm" on the other hand, passes -mpower8 to gas, and it's been
> that way since -mhtm was added to gcc.

I was going to say you cannot remove it, because we use gcc's -mhtm
option to build LIBITM, but if we're passing -mpower8 to the assembler
when using gcc's -mhtm option, then I guess it's ok if there are no
users outside of binutils that use the -mhtm gas option (kernel?).
I'm sure I was going to have gcc pass -mhtm to gas instead of -mpower8,
but since I didn't , I guess this is ok.

I agree, we're stuck keeping -mvsx.



> Also, I'm intending to remove some of PPC_OPCODE_*, for instance
> PPC_OPCODE_ALTIVEC2 can disappear and we then use
> 
> #define PPCVEC2 (PPC_OPCODE_POWER8 | PPC_OPCODE_E6500)
> #define PPCVEC3 PPC_OPCODE_POWER9
> 
> in opcodes/ppc-opc.c which should improve gas opcode checks vs. cpu.
> Dodgy gcc output would then be found at compile time rather than run
> time 

Looking at how PPCVEC2 and PPCVEC3 are used, yeah, that should work.
I also like that we can reclaim some bits in the cpu mask, since
there are only a limited amount of them.

Can we also get rid of PPC_OPCODE_HTM and use...?

#define PPCHTM PPC_OPCODE_POWER8


> (assuming -many is removed from powerpc gcc, another little
> project of mine).

I never liked gcc always passing -many to the assembler, so if
you can remove it, I'm all for it!

Peter




Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]