[llvm] r199245 - Fix a low hanging use of hasRawTextSupport.

Doug Gilmore Doug.Gilmore at imgtec.com
Tue Jan 14 19:27:26 PST 2014


On 01/14/2014 06:48 PM, Rafael EspĂ­ndola wrote:
>> The problem appears to be that symbols are being marked micromips when they should not be.
>>
>> Reverting r199245 and r199181 fixes the issues.
>>
>> Is it OK if we revert these changes and then diagnose the issue at hand?
> 
> It is not r199245, since that one only change how assembly is printed.
> The object streamer methods are stubs.
> 
> r199181 is a good candidate.
I think so too.
> I am a bit reluctant to revert it now
> that I know that the old streamer API doesn't match what gas does and
> patches using it were being proposed.The issue is very likely a
> missing .set nomicromips that would show up when using gas. Would you
> mind doing a few tests first?
Thanks, I am testing it at this moment:

https://dmz-portal.mips.com/bb/builders/LLVM%20with%20delay%20slot%20optimizer%20and%20direct%20object%20emitter/builds/1448
> 
> What symbols are incorrectly marked as micromips? Other functions? Can
> you test the attached patch? The comment is out of date (I found about
> the syntax in the gas manual after all) and with it we will disable
> micromips before printing a function that doesn't use it.
> 
> Cheers,
> Rafael
> ...
It appears that everything is getting marked as micromips:
$ cat foobar.c
void foo() {}
void bar() {}
$ clang -O3 -target mipsel-linux-gnu -EL -gcc-toolchain /mips/arch/overflow/codesourcery/mips-linux-gnu/pro/release/2011.09-90/Linux  -integrated-as  -fomit-frame-pointer foobar.c -c
$ readelf -s foobar.o

Symbol table '.symtab' contains 9 entries:
   Num:    Value  Size Type    Bind   Vis      Ndx Name
     0: 00000000     0 NOTYPE  LOCAL  DEFAULT  UND 
     1: 00000000     0 FILE    LOCAL  DEFAULT  ABS foobar.c
     2: 00000000     0 SECTION LOCAL  DEFAULT    1 
     3: 00000000     0 SECTION LOCAL  DEFAULT    2 
     4: 00000000     0 SECTION LOCAL  DEFAULT    3 
     5: 00000000     0 SECTION LOCAL  DEFAULT    4 
     6: 00000000     0 SECTION LOCAL  DEFAULT    5 
     7: 00000008     8 FUNC    GLOBAL DEFAULT [MICROMIPS]     1 bar
     8: 00000000     8 FUNC    GLOBAL DEFAULT [MICROMIPS]     1 foo

Thanks again,

Doug





More information about the llvm-commits mailing list