- May 04, 2012
-
-
Sebastian Pop authored
Added missing CMN case in Thumb2SizeReduction pass so that LLVM emits 16-bits encoding of CMN instructions. llvm-svn: 156195
-
Preston Gurd authored
llvm-svn: 156194
-
Jim Ingham authored
Fix a think in Mutex::Locker::Locker(pthread_mutex_t *) Really should lock the mutex handed in, not the m_mutex_ptr that you've set to NULL... Rework the Host.cpp::ThreadNameAccessor to use ThreadSafeSTLMap - we've got it so we might as well use it. Also works around a problem with the Mutex::Locker class raising fallacious asserts in debug mode when used with pthread_mutex_t's that weren't backed by Mutex objects. llvm-svn: 156193
-
Richard Smith authored
llvm-svn: 156192
-
Matt Beaumont-Gay authored
llvm-svn: 156189
-
Argyrios Kyrtzidis authored
llvm-svn: 156188
-
Douglas Gregor authored
that bridging between the two is free. Saves ~4k of code size, although I don't see any measurable performance difference (unfortunately). llvm-svn: 156187
-
Sean Callanan authored
getTypeSourceInfo() without checking for NULL. FieldDecls may have NULL TypeSourceInfo, and in fact some FieldDecls generated by Clang -- and all FieldDecls generated by LLDB -- have no TypeSourceInfo. This patch makes IsTailPaddedMemberArray check for NULL. llvm-svn: 156186
-
Argyrios Kyrtzidis authored
Part of rdar://11353109. llvm-svn: 156185
-
Sebastian Pop authored
llvm-svn: 156184
-
Anna Zaks authored
llvm-svn: 156183
-
Howard Hinnant authored
Constrain __bind functor constructor such that it won't accidentally get used as a copy constructor from a non-const lvalue. Fixes <rdar://problem/11359080>. llvm-svn: 156182
-
Douglas Gregor authored
llvm-svn: 156180
-
Douglas Gregor authored
llvm-svn: 156178
-
Douglas Gregor authored
off PartialDiagnostic. PartialDiagnostic is rather heavyweight for something that is in the critical path and is rarely used. So, switch over to an abstract-class-based callback mechanism that delays most of the work until a diagnostic is actually produced. Good for ~11k code size reduction in the compiler and 1% speedup in -fsyntax-only on the code in <rdar://problem/11004361>. llvm-svn: 156176
-
DeLesley Hutchins authored
llvm-svn: 156175
-
Chad Rosier authored
Patch by Jordy Rose. llvm-svn: 156172
-
Tobias Grosser authored
Reported by: Andreas Simbuerger llvm-svn: 156171
-
Tobias Grosser authored
llvm-svn: 156170
-
James Molloy authored
Add a predefine __WINT_UNSIGNED__, similar to __WCHAR_UNSIGNED__, and test them both for ARM and X86. Use this to fully fix Sema/format-strings.c for non-x86 platforms. Reviewed by Chandler on IRC. llvm-svn: 156169
-
Chandler Carruth authored
of the CodeExtractor utility. This allows speculatively computing input and output sets to measure the likely size impact of the code extraction. These sets cannot be reused sadly -- we mutate the function prior to forming the final sets used by the actual extraction. The interface has been revamped slightly to make it easier to use correctly by making the interface const and sinking the computation of the number of exit blocks into the full extraction function and away from the rest of this logic which just computed two output parameters. llvm-svn: 156168
-
Chandler Carruth authored
blocks, assert that this doesn't happen. We don't want to bother trying to support this call pattern as it isn't necessary. llvm-svn: 156167
-
Chandler Carruth authored
detect an in-eligible block rather than just breaking out of the loop. llvm-svn: 156166
-
James Molloy authored
Fix handling of wint_t - we can't assume wint_t is purely an integer promotion of wchar_t - they may differ in signedness. Teach ASTContext about WIntType, and have it taken from TargetInfo like WCharType. Should fix test/Sema/format-strings.c for ARM, with the exception of one subtest which will fail if wint_t and wchar_t are the same size and wint_t is signed, wchar_t is unsigned. There'll be a followup commit to fix that. Reviewed by Chandler and Hans at http://llvm.org/reviews/r/8 llvm-svn: 156165
-
Chandler Carruth authored
of the extractor itself. llvm-svn: 156164
-
Chandler Carruth authored
and expose it as a utility class rather than as free function wrappers. The simple free-function interface works well for the bugpoint-specific pass's uses of code extraction, but in an upcoming patch for more advanced code extraction, they simply don't expose a rich enough interface. I need to expose various stages of the process of doing the code extraction and query information to decide whether or not to actually complete the extraction or give up. Rather than build up a new predicate model and pass that into these functions, just take the class that was actually implementing the functions and lift it up into a proper interface that can be used to perform code extraction. The interface is cleaned up and re-documented to work better in a header. It also is now setup to accept the blocks to be extracted in the constructor rather than in a method. In passing this essentially reverts my previous commit here exposing a block-level query for eligibility of extraction. That is no longer necessary with the more rich interface as clients can query the extraction object for eligibility directly. This will reduce the number of walks of the input basic block sequence by quite a bit which is useful if this enters the normal optimization pipeline. llvm-svn: 156163
-
Hans Wennborg authored
This moves the logic for selecting a TLS model to a single place, instead of the previous three (ARM, Mips, and X86 which already uses this function). llvm-svn: 156162
-
Jean-Daniel Dupas authored
CC1 supports only the joined format. llvm-svn: 156161
-
Alexey Samsonov authored
It reduces the amount of emitted debug information: 1) DIEs in .debug_info have types DW_TAG_compile_unit, DW_TAG_subprogram, DW_TAG_inlined_subroutine (for opt builds) and DW_TAG_lexical_block only. 2) .debug_str contains only function names. 3) No debug data for types/namespaces/variables is emitted. 4) The data in .debug_line is enough to produce valid stack traces with function names and line numbers. Reviewed by Eric Christopher. llvm-svn: 156160
-
Craig Topper authored
llvm-svn: 156159
-
Craig Topper authored
llvm-svn: 156158
-
Craig Topper authored
llvm-svn: 156157
-
Craig Topper authored
llvm-svn: 156156
-
Bill Wendling authored
Also combine the code in the 'assert' statement. llvm-svn: 156155
-
Craig Topper authored
llvm-svn: 156154
-
NAKAMURA Takumi authored
llvm-svn: 156153
-
Jakob Stoklund Olesen authored
This information in now computed by TableGen. llvm-svn: 156152
-
Jakob Stoklund Olesen authored
This manually enumerated list of super-register classes has been superceeded by the automatically computed super-register class masks available through SuperRegClassIterator. llvm-svn: 156151
-
Rafael Espindola authored
using cmake+ninja, since ninja buffers the compiler output. llvm-svn: 156150
-
-