- Jan 20, 2011
-
-
Devang Patel authored
llvm-svn: 123856
-
Greg Clayton authored
llvm-svn: 123855
-
- Jan 19, 2011
-
-
Douglas Gregor authored
Turn on the __has_feature switch for variadic templates, document their completion, and put the ExtWarn into the c++0x-extensions warning group. llvm-svn: 123854
-
Jakob Stoklund Olesen authored
Region splitting includes loop splitting as a subset, and it is more generic. The splitting heuristics for variables that are live in more than one block are now: 1. Try to create a region that covers multiple basic blocks. 2. Try to create a new live range for each block with multiple uses. 3. Spill. Steps 2 and 3 are similar to what the standard spiller is doing. llvm-svn: 123853
-
Douglas Gregor authored
ExtWarn. We want variadic templates to be usable in libc++/libstdc++ headers even when we're in C++98/03 mode, since it's the only clean way to implement TR1 <functional>. llvm-svn: 123852
-
Douglas Gregor authored
reuse it for BlockDeclRefExpr. Do so, fixing the dependence calculate for BlockDeclRefExpr. llvm-svn: 123851
-
Douglas Gregor authored
together. In particular: - Handle the use of captured parameter pack names within blocks (BlockDeclRefExpr understands parameter packs now) - Handle the declaration and expansion of parameter packs within a block's parameter list, e.g., ^(Args ...args) { ... }) - Handle instantiation of blocks where the return type was not explicitly specified. (unrelated, but necessary for my tests). Together, these fixes should make blocks and variadic templates work reasonably well together. Note that BlockDeclRefExpr is still broken w.r.t. its computation of type and value dependence, which will still cause problems for blocks in templates. llvm-svn: 123849
-
Douglas Gregor authored
llvm-svn: 123848
-
Douglas Gregor authored
llvm-svn: 123846
-
Douglas Gregor authored
a pack expansion, e.g., the parameter pack Values in: template<typename ...Types> struct Outer { template<Types ...Values> struct Inner; }; This new implementation approach introduces the notion of an "expanded" non-type template parameter pack, for which we have already expanded the types of the parameter pack (to, say, "int*, float*", for Outer<int*, float*>) but have not yet expanded the values. Aside from creating these expanded non-type template parameter packs, this patch updates template argument checking and non-type template parameter pack instantiation to make use of the appropriate types in the parameter pack. llvm-svn: 123845
-
Johnny Chen authored
llvm-svn: 123844
-
Johnny Chen authored
since different options can affect the run time. llvm-svn: 123843
-
Nick Lewycky authored
llvm-svn: 123842
-
Sean Callanan authored
making it way too big. llvm-svn: 123841
-
Johnny Chen authored
llvm-svn: 123840
-
Douglas Gregor authored
in pretending otherwise. llvm-svn: 123839
-
Nick Lewycky authored
by indvars through the scev expander. trunc(add x, y) --> add(trunc x, y). Currently SCEV largely folds the other way which is probably wrong, but preserved to minimize churn. Instcombine doesn't do this fold either, demonstrating a missed optz'n opportunity on code doing add+trunc+add. llvm-svn: 123838
-
Bruno Cardoso Lopes authored
llvm-svn: 123837
-
Douglas Gregor authored
a typo for !=). Fixes PR9001, from Hans Wennborg! llvm-svn: 123836
-
Douglas Gregor authored
definition, rather than complaining about it. Problem reported by Marshall Clow. llvm-svn: 123835
-
Rafael Espindola authored
llvm-svn: 123834
-
Douglas Gregor authored
llvm-svn: 123833
-
Nick Lewycky authored
llvm-svn: 123832
-
Daniel Dunbar authored
llvm-svn: 123823
-
John McCall authored
there's a respectable point of instantiation. Also, make sure we do this operation even when instantiating a dependently-typed variable. llvm-svn: 123818
-
John McCall authored
outermost array types and not on the element type. Move the CanonicalType member from Type to ExtQualsTypeCommonBase; the canonical type on an ExtQuals node includes the qualifiers on the ExtQuals. Assorted optimizations enabled by this change. getQualifiers(), hasQualifiers(), etc. should all now implicitly look through array types. llvm-svn: 123817
-
Jim Ingham authored
llvm-svn: 123816
-
Greg Clayton authored
500 ms. Make MachThreadList more threadsafe. Added code to make sure the thread register state was properly flushed for x86_64. Fixed an missing return code for the current thread in the new thread suffix code. Improved debugserver logging. llvm-svn: 123815
-
John McCall authored
thousand other things which were (generally inadvertantly) relying on that. llvm-svn: 123814
-
Nick Lewycky authored
llvm-svn: 123813
-
Andrew Trick authored
of the floating point types less than 64-bits. It's somewhat of a temporary hack but forces more accurate modeling of register pressure and results in fewer spills. llvm-svn: 123811
-
Andrew Trick authored
llvm-svn: 123810
-
Evan Cheng authored
Don't forget to emit the load from indirect symbol when using movw + movt to materialize GA indirect symbols. llvm-svn: 123809
-
Johnny Chen authored
module. On my MBP running SnowLeopard: $ DOTEST_PROFILE=YES DOTEST_SCRIPT_DIR=/Volumes/data/lldb/svn/trunk/test /System/Library/Frameworks/Python.framework/Versions/Current/lib/python2.6/cProfile.py -o my.profile ./dotest.py -v -w 2> ~/Developer/Log/lldbtest.log After that, I used the pstats.py module to browse the statistics recorded in the my.profile file. llvm-svn: 123807
-
Johnny Chen authored
"process launch" or "run" interpreter command. Let's do the sleep only if the process launch failed. This saves about 135 seconds from the whole test suite run time. llvm-svn: 123806
-
Ken Dyck authored
counterparts where char units are needed. llvm-svn: 123805
-
Ken Dyck authored
llvm-svn: 123804
-
Stephen Wilson authored
This patch removes a potential race condition between a process monitor thread and its parent waiting to interrogate the success/failure of the launch. llvm-svn: 123803
-
Devang Patel authored
llvm-svn: 123802
-
Stephen Wilson authored
llvm-svn: 123801
-