This is the mail archive of the binutils@sources.redhat.com 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: ia64: add option to suppress warnings about A/B-step errata


Jim Wilson <wilson@specifixinc.com> writes:

> On Sat, 2004-04-10 at 11:48, Zack Weinberg wrote:
>> Unfortunately the assembler does not ignore unrecognized -m options,
>> so there is a compatibility issue if I make GCC 3.4 (say) start
>> passing -mb-step along to the assembler, but it will only affect
>> people who want to use brand new GCC to generate code for these old
>> chips - I think it can be handled with a release note.
>
> This means the linux kernel may be silently miscompiled/misassembled,
> when configured with B-step support, which is not a very good option.  I
> think it would be better to have gcc emit the new assembler option, and
> if someone complains, we tell them to update their assembler. 

I wasn't clear enough.  If I make GCC 3.4 start passing -mb-step along
to the assembler, then if someone uses GCC 3.4 with binutils <=2.14
and provides -mb-step, the assembler will exit unsuccessfully without
printing any error message, which isn't exactly the most helpful
thing, but it won't produce a silent miscompilation either, and
there's nothing that can be done now about this behavior of old
assemblers.

I think this is what you are asking for, and it is what I intended to
do all along.  (The release note is to tell people what's going on
when this happens.)  If that's not what you were asking for, please
clarify.  One thing I do NOT want to do is have gcc give as -mb-step
by default, because the whole point of this exercise is that the
majority of ia64 users don't care about B-step chips so the warnings
are just noise.

>> Comments?  Where should this be documented?  How do I add test cases?
>
> Document it in gas/doc/c-ia64.texi.
>
> Test cases are added like we do for gcc.  You add a file that is similar
> to existing ones.  See gas/testsuite/gas/ia64.

Specifically, how do I write a test case that looks for a diagnostic
message when and only when assembled with specific options?  I see how
to write an expected-diagnostic test case but not how to run it with
specific options, and it is not clear to me whether an
expected-diagnostic test case must always fail to assemble.

zw


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