[llvm-commits] [llvm] r148686 - in /llvm/trunk: include/llvm/MC/MCAsmInfo.h lib/CodeGen/AsmPrinter/ARMException.cpp lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp test/CodeGen/ARM/ehabi-unwind.ll

Evgeniy Stepanov eugeni.stepanov at gmail.com
Tue Jan 24 00:48:49 PST 2012


On Tue, Jan 24, 2012 at 9:10 AM, Anton Korobeynikov
<anton at korobeynikov.info> wrote:
> Hi Chandler,
>
>> Frankly, I think you stumbled on a much bigger layering problem: if
>> ARMException.cpp (and related utilities in lib/CodeGen/AsmPrinter) are
>> needed by various parts of the MC library, they should all be moved down
>> into the MC library. That's the library resposible for asm printing these
>> days. I've looped in the MC experts on this thread to provide more insights.
> Thanks on checking this! I somehow missed the violation, my fault...
> Also, all the stuff inside ARMException is not needed by MC in any way.

The problem is, ARM-specific code in ARMException.cpp can not depend
on ARM-specific code in ARM/MCTargetDesc, because the former is, at
the same time, a part of the platform-independent libLLVMAsmPrinter.a.
So we can not move the option back to MC, either.

I think it would be better to return to the idea of 2 options:
-arm-enable-ehabi and -arm-enable-ehabi-descriptors. Note that these
are hidden options for partially implemented functionality, so the
long and maybe cumbersome names do not really matter.

WDYT?



More information about the llvm-commits mailing list