- Aug 08, 2010
-
-
Eric Christopher authored
llvm-svn: 110530
-
- Aug 07, 2010
-
-
Douglas Gregor authored
an lvalue of another, compatible Objective-C object type (e.g., a subclass). Introduce a new initialization sequence step kind to describe this binding, along with a new cast kind. Fixes PR7741. llvm-svn: 110513
-
John McCall authored
to avoid the awesome-but-wrong-in-this-case assertion in the canon EAC. Fixes PR7834. Also fix a subtle address-space bug in the memset path. llvm-svn: 110511
-
John McCall authored
This takes some trickery since CastExpr has subclasses (and indeed, is abstract). Also, smoosh the CastKind into the bitfield from Expr. Drops two words of storage from Expr in the common case of expressions which don't need inheritance paths. Avoids a separate allocation and another word of overhead in cases needing inheritance paths. Also has the advantage of not leaking memory, since destructors for AST nodes are never run. llvm-svn: 110507
-
Chris Lattner authored
__overflow_handler entrypoint that David Chisnall made up. Calling __overflow_handler is not part of the contract of -ftrapv provided by GCC, and should never have been checked in in the first place. According to: http://permalink.gmane.org/gmane.comp.compilers.clang.devel/8699 David is using this for some of arbitrary precision integer stuff or something, which is not an appropriate thing to implement on this. llvm-svn: 110490
-
- Aug 06, 2010
-
-
Eli Friedman authored
way to tell gcc "really, values outside the enum aren't valid". llvm-svn: 110450
-
Fariborz Jahanian authored
union type variables and their nesting inside other aggregate types. llvm-svn: 110448
-
Nate Begeman authored
<rdar://problem/8278732> llvm-svn: 110420
-
Eli Friedman authored
llvm-svn: 110418
-
John McCall authored
these, but it's convenient to mangle them when deferring them (in the 99.99% case where it's not an anonymous union, of course). llvm-svn: 110381
-
- Aug 05, 2010
-
-
Fariborz Jahanian authored
(objc gc and blocks in NeXt runtime). llvm-svn: 110377
-
John McCall authored
do the right thing with mixed-visibility symbols, so disable the visibility optimization where that's possible, i.e. with template classes (since it's possible that an arbitrary template might be subject to an explicit instantiation elsewhere). 447.dealII actually does this. I've put the code under an option that's currently not hooked up to anything. llvm-svn: 110374
-
John McCall authored
llvm-svn: 110354
-
John McCall authored
llvm-svn: 110347
-
Fariborz Jahanian authored
(objc gc specific). llvm-svn: 110340
-
Fariborz Jahanian authored
llvm-svn: 110339
-
Eli Friedman authored
llvm-svn: 110326
-
Eli Friedman authored
llvm-svn: 110315
-
Fariborz Jahanian authored
llvm-svn: 110290
-
Fariborz Jahanian authored
llvm-svn: 110287
-
John McCall authored
functions with in-line definitions, since such thunks will be emitted at any use of the function. Completes the feature work for rdar://problem/7523229. llvm-svn: 110285
-
- Aug 04, 2010
-
-
Fariborz Jahanian authored
llvm-svn: 110239
-
Fariborz Jahanian authored
for objective-c/c++ blocks (NeXt runtime). llvm-svn: 110213
-
John McCall authored
Apply hidden visibility to most RTTI; libstdc++ does not rely on exact pointer equality for the type info (just the type info names). Apply the same optimization to RTTI that we do to vtables. Fixes PR5962. llvm-svn: 110192
-
John McCall authored
haven't been explicitly instantiated. llvm-svn: 110189
-
John McCall authored
ObjC exceptions: - don't enter a try for the catch blocks unless there's a finally - put the setjmp buffer in the locals set for liveness reasons - dump the sync object into an alloca in the locals set for liveness reasons Some of this can go away if the backend starts to properly calculate liveness in the presence of setjmp (which would also be a *much* stabler solution). llvm-svn: 110188
-
John McCall authored
mark it nounwind based on whether it contains any non-nounwind calls. <rdar://problem/8087431> llvm-svn: 110163
-
- Aug 03, 2010
-
-
Nate Begeman authored
llvm-svn: 110153
-
John McCall authored
llvm-svn: 110107
-
- Aug 02, 2010
-
-
John McCall authored
initializations now. llvm-svn: 110063
-
- Aug 01, 2010
-
-
John McCall authored
the magic of inline assembly. Essentially we use read and write hazards on the set of local variables to force flushing locals to memory immediately before any protected calls and to inhibit optimizing locals across the setjmp->catch edge. Fixes rdar://problem/8160285 llvm-svn: 109960
-
- Jul 30, 2010
-
-
John McCall authored
an initializer requiring temporary object disposal. Fixes rdar:://problem/8246444. llvm-svn: 109849
-
Chris Lattner authored
The X86-64 ABI code didn't handle the case when a struct would get classified and turn up as "NoClass INTEGER" for example. This is perfectly possible when the first slot is all padding (e.g. due to empty base classes). In this situation, the first 8-byte doesn't take a register at all, only the second 8-byte does. This fixes this by enhancing the x86-64 abi stuff to allow and handle this case, reverts the broken fix for PR5831, and enhances the target independent stuff to be able to handle an argument value in registers being accessed at an offset from the memory value. This is the last x86-64 calling convention related miscompile that I'm aware of. llvm-svn: 109848
-
Daniel Dunbar authored
sections on", this change uncovered a possible linker bug which resulted in the wrong messages getting dispatched. Backing this out while we investigate... llvm-svn: 109817
-
Nate Begeman authored
llvm-svn: 109814
-
- Jul 29, 2010
-
-
Chris Lattner authored
that needs it and remove getCoerceResult. llvm-svn: 109807
-
Chris Lattner authored
llvm-svn: 109805
-
Chris Lattner authored
float, the special case hack in getCoerceResult can go away. llvm-svn: 109804
-
Argyrios Kyrtzidis authored
llvm-svn: 109797
-
Chris Lattner authored
<2 x float> instead of double. This works but can't be turned on until I teach codegen to pass <2 x float> as one XMM register instead of two. llvm-svn: 109790
-