This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC 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: Deprecating basic asm in a function - What now?


On Wed, Jun 22, 2016 at 12:26 PM, Manuel LÃpez-IbÃÃez
<lopezibanez@gmail.com> wrote:
> On 22 June 2016 at 19:05, Andrew Pinski <pinskia@gmail.com> wrote:
>> On Wed, Jun 22, 2016 at 10:59 AM, Manuel LÃpez-IbÃÃez
>> <lopezibanez@gmail.com> wrote:
>>> On 22/06/16 10:02, Florian Weimer wrote:
>>>> GCC could parse the assembly instructions and figure out the clobbers.
>>>
>>>
>>> Which is also needed for various things, such as providing better
>>> diagnostics:
>>>
>>> http://permalink.gmane.org/gmane.comp.compilers.llvm.cvs/70335
>>
>> Actually GCC outputs markers that modern gas understands and you get
>> much better diagnostic already compared to what was reported above.
>
> We get better diagnostics than in the past, but not as good as
> Clang's. And there are many limitations of the "markers" approach: Not
> only there is no column info, line info is often wrong:
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57950
>
> And there remains a lot of work to get GAS to output diagnostics like
> GCC does nowadays (colors, caret, fix-it hints, etc.). And additional
> work to make GAS obey GCC settings (if GCC disables colors, then GAS
> should not output colors). Most of that work will be duplication of
> what GCC already does.
>
> Besides diagnostics, the integrated assembler is faster (as proven by
> David Malcom's experiments) and it provides additional info to GCC
> (the point raised by Florian).
>
>> Note each target in gas has its own way of parsing assembly code which
>> is one of the reason why it is so hard todo the above and also each
>> target has its own wording which can confuse people.  I think if you
>
> I didn't say it was easy. Yet, Clang/LLVM did it.

That is because there are less targets on the Clang/LLVM side of things.


>
>> want better diagnostic from assembly code, then working on binutils to
>> unify things including error messages (and subtarget support) would be
>> a much better use of time than integrating binutils into gcc.
>
> Unifying error messages does not seem to be a feature used to
> advertise Clang as a replacement for GCC. It doesn't seem to be what
> users discuss in various forums (including the reddit thread I quoted
> above). It won't help with the issues discussed in this thread.
>
> Cheers,
>
> Manuel.


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