[cfe-dev] [llvm-commits] [PATCH] Fix build on MinGW

Eli Friedman eli.friedman at gmail.com
Thu Jun 23 12:19:34 PDT 2011


On Thu, Jun 23, 2011 at 12:07 PM, Ruben Van Boxem
<vanboxem.ruben at gmail.com> wrote:
> 2011/6/23 Eli Friedman <eli.friedman at gmail.com>:
>> On Wed, Jun 22, 2011 at 8:33 AM, Ruben Van Boxem
>> <vanboxem.ruben at gmail.com> wrote:
>>> 2011/6/22 Ruben Van Boxem <vanboxem.ruben at gmail.com>
>>>>
>>>> Hi,
>>>>
>>>> Attached is a patch for MinGW.
>>>>
>>>> The first bit selects the correct _mkdir function for all Windows platforms, not just MSVC, which is wrong, and makes the MinGW build fail.
>>>>
>>>> The second bit is about this bug: http://llvm.org/bugs/show_bug.cgi?id=8850
>>>> The patch only affects MinGW on x86_64, which is localized to exactly where the crash occurs.
>>>>
>>>> Please apply these as soon as you have time. Thanks!
>>>>
>>>> Ruben
>>>
>>> I'm terribly sorry, but the second bit was wrong in my first patch.
>>> Attached is the correct version.
>>
>> Applied the first bit; in the future, please say something sooner if
>> someone says "please commit" and you don't have commit rights. :)
>>
>> As for the second bit, the proposed fix is really just a workaround...
>> I would prefer some analysis of why exactly TableGen needs so much
>> stack space.
>>
>> -Eli
>>
>
> Thanks for committing! I'll remember to shout louder next time ;-)
>
> How would I go about analysing tablegen? I filed a bug on this here:
> http://llvm.org/bugs/show_bug.cgi?id=8850
>
> It only crashes on the CellSPU target. If I disable that, it does
> exactly what it's supposed to do.

I took a quick look (using "ulimit -s"); it looks like the functions
in utils/TableGen/DAGISelMatcherOpt.cpp are very deeply recursive; not
sure why the CellSPU stuff in particular requires more stack space.

-Eli



More information about the cfe-dev mailing list