[llvm-commits] [llvm] r169886 - /llvm/trunk/lib/MC/MCAssembler.cpp

Timur Iskhodzhanov timurrrr at google.com
Fri Dec 21 07:13:07 PST 2012


For example, if fails to build this test on my ASan/Win bot:
http://code.google.com/p/address-sanitizer/source/browse/trunk/win/tests/malloc_right_oob_crash.cpp
this also fires up an assertion message box which hangs the bot :(

Is it possible to quick-fix this or revert?

Timur Iskhodzhanov,
Google Russia



2012/12/21 Timur Iskhodzhanov <timurrrr at google.com>

> Hi Eli,
>
> I hit this assertion when compiling on Windows with -Xclang -cxx-abi
> -Xclang microsoft.
> Any ideas how to fix?
>
> > These fragments aren't even generated when RelaxAll is set
> Is this true for a WinCOFFStreamer?
>
> --
> Thanks,
> Timur
>
> Timur Iskhodzhanov,
> Google Russia
>
>
>
> 2012/12/11 Eli Bendersky <eliben at google.com>
>
>> Author: eliben
>> Date: Tue Dec 11 11:16:00 2012
>> New Revision: 169886
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=169886&view=rev
>> Log:
>> Remove the RelaxAll overrule in MCAssembler::fixupNeedsRelaxation,
>> because that method is only getting called for MCInstFragment. These
>> fragments aren't even generated when RelaxAll is set, which is why the
>> flag reference here is superfluous. Removing it simplifies the code
>> with no harmful effects.
>>
>> An assertion is added higher up to make sure this path is never
>> reached.
>>
>> Modified:
>>     llvm/trunk/lib/MC/MCAssembler.cpp
>>
>> Modified: llvm/trunk/lib/MC/MCAssembler.cpp
>> URL:
>> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MC/MCAssembler.cpp?rev=169886&r1=169885&r2=169886&view=diff
>>
>> ==============================================================================
>> --- llvm/trunk/lib/MC/MCAssembler.cpp (original)
>> +++ llvm/trunk/lib/MC/MCAssembler.cpp Tue Dec 11 11:16:00 2012
>> @@ -657,9 +657,6 @@
>>  bool MCAssembler::fixupNeedsRelaxation(const MCFixup &Fixup,
>>                                         const MCInstFragment *DF,
>>                                         const MCAsmLayout &Layout) const {
>> -  if (getRelaxAll())
>> -    return true;
>> -
>>    // If we cannot resolve the fixup value, it requires relaxation.
>>    MCValue Target;
>>    uint64_t Value;
>> @@ -780,6 +777,8 @@
>>      default:
>>        break;
>>      case MCFragment::FT_Inst:
>> +      assert(!getRelaxAll() &&
>> +             "Did not expect a MCInstFragment in RelaxAll mode");
>>        RelaxedFrag = relaxInstruction(Layout, *cast<MCInstFragment>(I));
>>        break;
>>      case MCFragment::FT_Dwarf:
>>
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20121221/93876cc2/attachment.html>


More information about the llvm-commits mailing list