- May 18, 2011
-
-
Fariborz Jahanian authored
user specified string class via -fconstant-string-class option. pr9914. llvm-svn: 131496
-
Argyrios Kyrtzidis authored
1. We would assume that the length of the string literal token was at least 2 2. We would allocate a buffer with size length-2 And when the stars aligned (one of which would be an invalid source location due to stale PCH) The length would be 0 and we would try to allocate a 4GB buffer. Add checks for this corner case and a bunch of asserts. (We really really should have had an assert for 1.). Note that there's no test case since I couldn't get one (it was major PITA to reproduce), maybe later. llvm-svn: 131492
-
Argyrios Kyrtzidis authored
llvm-svn: 131491
-
- May 17, 2011
-
-
Eli Friedman authored
For calls returning first-class aggregates, store by element instead of creating aggregate stores in common cases. This is more friendly to fast-isel. llvm-svn: 131490
-
John McCall authored
optimization for abstract classes; there was a misunderstanding, and it turns out that there are no kexts which rely on this. llvm-svn: 131489
-
Alexis Hunt authored
constructors, including two more FIXMEs (one of which I don't actually understand). llvm-svn: 131487
-
Alexis Hunt authored
I have on that's #if 0'ed out, and I don't know why it's failing to delete the constructor. I'd appreciate if someone familiar with access control could look into ShouldDeleteDefaultConstructor - thanks. llvm-svn: 131486
-
Rafael Espindola authored
llvm-svn: 131478
-
Rafael Espindola authored
darwin assembler can handle cfi. Add a test. llvm-svn: 131464
-
Argyrios Kyrtzidis authored
llvm-svn: 131450
-
Argyrios Kyrtzidis authored
llvm-svn: 131447
-
Argyrios Kyrtzidis authored
llvm-svn: 131446
-
Devang Patel authored
Radar 9440721 llvm-svn: 131441
-
Alexis Hunt authored
suppress an error we were previously emitting on valid union code. llvm-svn: 131440
-
Ted Kremenek authored
llvm-svn: 131435
-
John McCall authored
reasons that honestly really, really need to be looked into. llvm-svn: 131434
-
Alexis Hunt authored
my defaulted constructor tests stop yelling at me about them. llvm-svn: 131432
-
- May 16, 2011
-
-
Manuel Klimek authored
Pulls the common part of the clang-check example into Tooling, to allow new tools to be implemented without duplicating the boilerplate. llvm-svn: 131425
-
Joerg Sonnenberger authored
Preserve the original triple in the NetBSD toolchain when using -m32 or -m64 and the resulting effective target is different from the triple it started with. This allows -m32 to use the same assembler/linking in cross-compiling mode and avoids confusion about passing down target specific flags in that case like --32. llvm-svn: 131404
-
Rafael Espindola authored
llvm-svn: 131403
-
Rafael Espindola authored
131365 caused PR9927. llvm-svn: 131401
-
Anders Carlsson authored
optimization. Make sure to require a vtable when trying to get the address of a VTT, otherwise we would never end up emitting the VTT. llvm-svn: 131400
-
John McCall authored
llvm-svn: 131396
-
John McCall authored
operators; their semantics are guaranteed by the language. If someone wants to argue that freestanding compiles shouldn't recognize this, I might be convinceable. llvm-svn: 131395
-
- May 15, 2011
-
-
Alexis Hunt authored
build. llvm-svn: 131390
-
John McCall authored
placement allocation or deallocation functions. These functions cannot be replaced by the user and are exempt from the normal requirements on allocation functions (e.g. that they must return unaliased memory). llvm-svn: 131386
-
Anders Carlsson authored
llvm-svn: 131385
-
Douglas Gregor authored
nested-name-specifier, re-evaluate the nested-name-specifier as if we were entering that context (which we did!), so that we'll resolve a template-id to a particular class template partial specialization. Fixes PR9913. llvm-svn: 131383
-
John McCall authored
It can be larger, it can be smaller, it can be signed, whatever. Handle all the crazy cases with grace and spirit. llvm-svn: 131378
-
Argyrios Kyrtzidis authored
llvm-svn: 131377
-
John McCall authored
hasAggregateLLVMType. llvm-svn: 131375
-
John McCall authored
llvm-svn: 131374
-
John McCall authored
types. Also, cache a translation of 'void' in CGM and provide a ptrdiff_t alias. No functionality change. llvm-svn: 131373
-
Anders Carlsson authored
llvm-svn: 131372
-
Argyrios Kyrtzidis authored
Also follow gcc in that arrays of elements with zero size are encoded as arrays with zero elements. llvm-svn: 131369
-
Anders Carlsson authored
that the destructor body is trivial and that all member variables also have either trivial destructors or trivial destructor bodies, we don't need to initialize the vtable pointers since no virtual member functions will be called on the destructor. Fixes PR9181. llvm-svn: 131368
-
- May 14, 2011
-
-
Nico Weber authored
llvm-svn: 131367
-
John McCall authored
send if the receiver is null. Normally it's not worthwhile to check this, but avoiding the null-initialization is nice, and this also avoids nasty problems where the null-initialization is visible within the call because we use an aliased result buffer. rdar://problem/9402992 llvm-svn: 131366
-
rdar://9357400Argyrios Kyrtzidis authored
Go through and expand the members of bases into the encoding string (and encode the VTable as well). Unlike gcc which expands virtual bases as many times as they appear in the hierarchy, clang will only expand them once at the end, to reflect the actual layout. Note that there doesn't seem to be a way to indicate in the encoding that packing/alignment of members is different that normal, in which case the encoding will be out-of-sync with the real layout. If the runtime switches to just consider the size of types without taking into account alignment, we could easily make padding explicit in the encoding (e.g. using arrays of chars). The encoding strings would be longer then though. Also encode a flexible array member as array of 0 size, like gcc, not as a pointer. llvm-svn: 131365
-
Argyrios Kyrtzidis authored
There are APIs, e.g. [NSValue valueWithBytes:objCType:], which use the encoding to find out the size of an object pointed to by a pointer. Make things safer by making it illegal to @encode incomplete types. llvm-svn: 131364
-