[llvm-commits] Mip MC - Submission request for initial 64 bit direct object support

Carter, Jack jcarter at mips.com
Thu Mar 29 14:23:48 PDT 2012


Sorry, misunderstood the question.

The mips assembler (actually gas for mips) has the following:

-call_shared : generate SVR4 position independent code. 
-call_nonpic : generate non-PIC code that can operate with DSOs. This was -cpic in the sgi assembler.
-non_shared: do not generated code that can operate with DSOs. I believe this is -static in llvm.

There are other more eccentric variations that eventually we may have to support.

I believe that for Mips/llvm the default is to generate PIC (-call_shared) and with -static generate non-shared.

The FIXME was to instead of passing this information in a collection of parameters, pass a const *MipsSubtarget object that already has any number of esoteric target specific options already set. Actually it would be Subtarget and get dynamically cast to target specific one upon arrival.

The information is already gathered, I just can't get to it right now and thus FIXME so I don't forget.


From: Rafael EspĂ­ndola [rafael.espindola at gmail.com]
Sent: Thursday, March 29, 2012 1:39 PM
To: Carter, Jack
Cc: llvm-commits at cs.uiuc.edu
Subject: Re: [llvm-commits] Mip MC - Submission request for initial 64 bit direct object support

2012/3/29 Carter, Jack <jcarter at mips.com>:
> As requested the test case has been incorporated into elf-basic.s with added comments to point out which assembler invocations generates which code and also annotated the CHECK calls themselves.

This patch is OK. The only bit I find strange is the FIXME you added

+  // FIXME: We can't tell if we are PIC (dynamic) or CPIC (static)

Does the mips assembler have a command line option telling it if the
code is PIC or not?

> Cheers,
> Jack


More information about the llvm-commits mailing list