Re: [PATCH 08/11] x86: use asm .macro instead of cpp #define in entry_32.S

Tejun Heo
2009-02-10T01:14:57Z

Jeremy Fitzhardinge wrote:
> Tejun Heo wrote:
>> Impact: cleanup
>>
>> Use .macro instead of cpp #define where approriate. This cleans up
>> code and will ease future changes.
>>
>
> I agree with this in principle - cpp macros are indeed very ugly - but
> in practise I've found asm macros to be very hard to work with. When
> things go wrong, the gas error messages are completely useless (it only
> reports the error on the line where the macro was used, without any
> detail about where in the macro the problem lies), and as far as I know,
> there's no way to see the source with macros expanded.

Hmm... I originally did the conversion because I had some .if trick in
SAVE_ALL which got removed later. Even after the removal, it
generally looked like a good idea as x86_64 asm was primarily using
.macro too. I do like being able to see the post-processing output of
cpp too but for assembler disassembling the output often seem to give
enough clue, so I don't think it's a deal breaker. So, lacking
decisive technical merit either way, I was aiming for consistency with
x86_64 (and I already had the patch in queue so...).

Ingo, what do you think?

Thanks.

--
tejun