[llvm-commits] [llvm] r156905 - in /llvm/trunk: lib/VMCore/Function.cpp utils/TableGen/IntrinsicEmitter.cpp
Chris Lattner
sabre at nondot.org
Wed May 16 20:46:19 PDT 2012
On May 16, 2012, at 8:03 PM, Francois Pichet wrote:
> On Wed, May 16, 2012 at 2:34 AM, Chris Lattner <sabre at nondot.org> wrote:
>> Author: lattner
>> Date: Wed May 16 01:34:44 2012
>> New Revision: 156905
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=156905&view=rev
>> Log:
>> Significantly reduce the compiled size of Functions.cpp by turning a big blob of tblgen
>> generated code (for Intrinsic::getType) into a table. This handles common cases right now,
>> but I plan to extend it to handle all cases and merge in type verification logic as well
>> in follow-on patches.
>> +static void EncodeFixedType(Record *R, SmallVectorImpl<unsigned> &Sig) {
>> +
>> + if (R->isSubClassOf("LLVMMatchType")) {
>> + return Sig.push_back(~0U);
>
> You are too powerful for MSVC:
>
> 1>c:\dev\llvm\llvm_trunk2\utils\tablegen\intrinsicemitter.cpp(472):
> fatal error C1001: An internal error has occurred in the compiler.
> 1> (compiler file
> 'f:\dd\vctools\compiler\utc\src\p2\main.c[0x695A85AC:0x00000018]',
> line 183)
Ok, that's weird. Can you wrap the pragmas with the appropriate MSVC ifdefs?
-Chris
More information about the llvm-commits
mailing list