- Apr 27, 2011
-
-
Douglas Gregor authored
in the classification of template names and using declarations. We now properly typo-correct the leading identifiers in statements to types, templates, values, etc. As an added bonus, this reduces the number of lookups required for disambiguation. llvm-svn: 130288
-
Anders Carlsson authored
When compiling with -fno-threadsafe-statics, guard variables for globals with internal linkage don't have to be i64, i8 works just fine! llvm-svn: 130286
-
Douglas Gregor authored
llvm-svn: 130285
-
Douglas Gregor authored
looking at the context and the correction and using a custom diagnostic. Also, enable some Fix-It tests that were somewhat lamely disabled. llvm-svn: 130283
-
Douglas Gregor authored
llvm-svn: 130280
-
Nick Lewycky authored
C89 doesn't have an inline keyword. llvm-svn: 130279
-
Eli Friedman authored
length. (I'm planning to use this to implement byval.) llvm-svn: 130274
-
Rafael Espindola authored
step towards using .cfi_* on OS X. llvm-svn: 130273
-
Eli Friedman authored
rdar://problem/9303306 . llvm-svn: 130272
-
Andrew Trick authored
Fix for PR9633 [indvars] Assertion `isa<X>(Val) && "cast<Ty>() argument of incompatible type!"' failed. Added a type check in ScalarEvolution::computeSCEVAtScope to handle the case in which operands of an AddRecExpr in the current scope are folded. llvm-svn: 130271
-
John McCall authored
instance methods to have bound-member type. Fixing that broke __unknown_anytype, which I've in turn fixed. llvm-svn: 130266
-
Douglas Gregor authored
determine which is a better conversion to "void*", be sure to perform the comparison using the safe-for-id ASTContext::canAssignObjCInterfaces() rather than the asserts-with-id ASTContext::canAssignObjCInterfaces(). Fixes <rdar://problem/9327203>. llvm-svn: 130259
-
Johnny Chen authored
for lldb objects which can contain other lldb objects. Examples are: SBTarget contains SBModule, SBModule contains SBSymbols, SBProcess contains SBThread, SBThread contains SBFrame, etc. llvm-svn: 130258
-
Fariborz Jahanian authored
non-bitfield members are ignore. // rdar://8823265 wip llvm-svn: 130257
-
Greg Clayton authored
Switch the EmulateInstruction to use the standard RegisterInfo structure that is defined in the lldb private types intead of passing the reg kind and reg num everywhere. EmulateInstruction subclasses also need to provide RegisterInfo structs given a reg kind and reg num. This eliminates the need for the GetRegisterName() virtual function and allows more complete information to be passed around in the read/write register callbacks. Subclasses should always provide RegiterInfo structs with the generic register info filled in as well as at least one kind of register number in the RegisterInfo.kinds[] array. llvm-svn: 130256
-
Douglas Gregor authored
the qualifiers (e.g., GC qualifiers) on the type we're converting from, rather than just blindly adopting the qualifiers of the type we're converting to or dropping qualifiers altogether. As an added bonus, properly diagnose GC qualifier mismatches to eliminate a crash in the overload resolution failure diagnostics. llvm-svn: 130255
-
Johnny Chen authored
llvm-svn: 130254
-
Johnny Chen authored
llvm-svn: 130253
-
Johnny Chen authored
llvm-svn: 130252
-
Johnny Chen authored
llvm-svn: 130251
-
Chris Lattner authored
an earlier load could be widened to encompass a later load. For example, if we see: X = load i8* P, align 4 Y = load i8* (P+3), align 1 and we have a 32-bit native integer type, we can widen the former load to i32 which then makes the second load redundant. GVN can't actually do anything with this load/load relation yet, so this isn't testable, but it is the next step to resolving PR6627, and a fairly general class of "merge neighboring loads" missed optimizations. llvm-svn: 130250
-
Jakob Stoklund Olesen authored
The number of blocks covered by a live range must be strictly decreasing when splitting, otherwise we can't allow repeated splitting. llvm-svn: 130249
-
- Apr 26, 2011
-
-
Chris Lattner authored
llvm-svn: 130248
-
Chris Lattner authored
work-in-progress that is not progressing, and it has issues. llvm-svn: 130247
-
Manuel Klimek authored
includes get resolved, especially when they are found relatively to another include file. We also try to get it working for framework includes, but that part of the code is untested, as I don't have a code base that uses it. llvm-svn: 130246
-
Evan Cheng authored
more callee-saved registers and introduce copies. Only allows it if scheduling a node above calls would end up lessen register pressure. Call operands also has added ABI restrictions for register allocation, so be extra careful with hoisting them above calls. rdar://9329627 llvm-svn: 130245
-
Devang Patel authored
llvm-svn: 130244
-
Evan Cheng authored
This test should be in MC. It breaks with changes to scheduling / register allocation so it's being removed. llvm-svn: 130243
-
Argyrios Kyrtzidis authored
The size of the array may not be aligned according to alignment of its elements if an alignment attribute is specified in a typedef. Fixes rdar://8665729 & http://llvm.org/PR5637. llvm-svn: 130242
-
Chris Lattner authored
1. Only run the early (in the module pass pipe) instcombine/simplifycfg if the "unit at a time" passes they are cleaning up after runs. 2. Move the "clean up after the unroller" pass to the very end of the function-level pass pipeline. Loop unroll uses instsimplify now, so it doesn't create a ton of trash. Moving instcombine later allows it to clean up after opportunities are exposed by GVN, DSE, etc. 3. Introduce some phase ordering tests for things that are specifically intended to be simplified by the full optimizer as a whole. This resolves PR2338, and is progress towards PR6627, which will be generating code that looks similar to test2. llvm-svn: 130241
-
Johnny Chen authored
llvm-svn: 130240
-
John McCall authored
member function, i.e. something of the form 'x.f' where 'f' is a non-static member function. Diagnose this in the general case. Some of the new diagnostics are probably worse than the old ones, but we now get this right much more universally, and there's certainly room for improvement in the diagnostics. llvm-svn: 130239
-
Chris Lattner authored
when X has multiple uses. This is useful for exposing secondary optimizations, but the X86 backend isn't ready for this when X has a single use. For example, this can disable load folding. This is inching towards resolving PR6627. llvm-svn: 130238
-
Chris Lattner authored
llvm-svn: 130237
-
Chris Lattner authored
predicate that matches if the subexpr has a single use. llvm-svn: 130235
-
Jim Grosbach authored
rdar://9326019 llvm-svn: 130234
-
Daniel Dunbar authored
llvm-svn: 130233
-
Rafael Espindola authored
llvm-svn: 130232
-
Devang Patel authored
llvm-svn: 130231
-
Jakob Stoklund Olesen authored
This has two effects: 1. We never inflate to a larger register class than what the sub-target can handle. 2. Completely unconstrained virtual registers get the largest possible register class. llvm-svn: 130229
-