| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
| |
"thread continue" uses zero based thread indexes, not the thread index ID.
Also fixed "thread until" if it uses the -t option.
llvm-svn: 157724
|
| |
|
|
|
|
| |
template declaration which introduced them. Patch by Yang Chen!
llvm-svn: 157723
|
| |
|
|
|
|
| |
As per comments following r157659.
llvm-svn: 157722
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Follow up in r155693, r155680.
Prevents a hard to reproduce crash with the following stack trace:
3 libsystem_c.dylib 0x00007ff55a835050 _sigtramp + 18446744029881443184
4 clang 0x0000000106218e97 (anonymous
namespace)::AnalysisConsumer::HandleTranslationUnit(clang::ASTContext&)
+ 519
5 clang 0x0000000105cf3002 clang::ParseAST(clang::Sema&,
bool, bool) + 690
6 clang 0x00000001059a41d8
clang::ASTFrontendAction::ExecuteAction() + 312
7 clang 0x00000001059a3df7 clang::FrontendAction::Execute()
+ 231
8 clang 0x00000001059b0ecc
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 860
9 clang 0x000000010595e451
clang::ExecuteCompilerInvocation(clang::CompilerInstance*) + 961
10 clang 0x0000000105947f29 cc1_main(char const**, char
const**, char const*, void*) + 969
11 clang 0x0000000105958259 main + 473
12 clang 0x0000000105947b34 start + 52
llvm-svn: 157721
|
| |
|
|
|
|
| |
This code is covered by test/CodeGen/ARM/arm-modifier.ll.
llvm-svn: 157720
|
| |
|
|
| |
llvm-svn: 157718
|
| |
|
|
|
|
| |
Switch to MCSuperRegIterator while we're there.
llvm-svn: 157717
|
| |
|
|
| |
llvm-svn: 157716
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
It helps compile exotic inline asm. In the test case, normal GR32
virtual registers use up eax-edx so the final GR32_ABCD live range has
no registers left. Since all the live ranges were tiny, we had no way of
prioritizing the smaller register class.
This patch allows tiny unspillable live ranges to be evicted by tiny
unspillable live ranges from a smaller register class.
<rdar://problem/11542429>
llvm-svn: 157715
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This is a large class of false positives where anonymous enums are used to
declare constants (see Clang's Diagnostics.h for example). A small number of
true positives could probably be found in this bucket by still warning if the
anonymous enum is used in a declarator (enum { ... } x;) but so far we don't
believe this to be a source of significant benefit so I haven't bothered to
preserve those cases.
General offline review/acknowledgment by rtrieu.
llvm-svn: 157713
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixed an issue with the symbol table parsing of files that have STAB entries in them where there are two N_SO entries where the first has a directory, and the second contains a full path:
[ 0] 00000002 64 (N_SO ) 00 0000 0000000000000000 '/Volumes/data/src/'
[ 1] 0000001e 64 (N_SO ) 00 0000 0000000000000000 '/Volumes/data/src/Source/main.m'
[ 2] 00000047 66 (N_OSO ) 09 0001 000000004fc642d2 '/tmp/main.o'
[ 3] 00000001 2e (N_BNSYM ) 01 0000 0000000000003864
[ 4] 000000bd 24 (N_FUN ) 01 0000 0000000000003864 '_main'
[ 5] 00000001 24 (N_FUN ) 00 0000 00000000000000ae
[ 6] 00000001 4e (N_ENSYM ) 01 0000 00000000000000ae
[ 7] 00000001 64 (N_SO ) 01 0000 0000000000000000
We now correctly combine entries 0 and 1 into a single entry.
llvm-svn: 157712
|
| |
|
|
|
|
| |
It seems I broke C++11.
llvm-svn: 157711
|
| |
|
|
|
|
| |
Patch by Jack Carter.
llvm-svn: 157709
|
| |
|
|
|
|
| |
wrote and the usual LLVM convention.
llvm-svn: 157708
|
| |
|
|
|
|
| |
operands of an FMA node.
llvm-svn: 157707
|
| |
|
|
| |
llvm-svn: 157706
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This broke in r144788 when the CodeGenOpt option was moved from everywhere else
(specifically, from addPassesToEmitFile) to createTargetMachine. Since
LTOCodeGenerator wasn't passing the 4th argument, when the 4th parameter became
the 3rd, it silently continued to compile (int->bool conversion) but meant
something completely different.
This change preserves the existing (accidental) and previous (default)
semantics of the addPassesToEmitFile and restores the previous/intended
CodeGenOpt argument by passing it appropriately to createTargetMachine.
(discovered by pending changes to -Wconversion to catch constant->bool
conversions)
llvm-svn: 157705
|
| |
|
|
| |
llvm-svn: 157704
|
| |
|
|
|
|
|
| |
It is better to address sub-registers directly by name instead of
relying on their position in the sub-register list.
llvm-svn: 157703
|
| |
|
|
|
|
|
| |
An empty list is not represented as a null pointer. Let TRI do its own
shortcuts.
llvm-svn: 157702
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This also required making recursive simplifications until
nothing changes or a hard limit (currently 3) is hit.
With the simplification in place indvars can canonicalize
loops of the form
for (unsigned i = 0; i < a-b; ++i)
into
for (unsigned i = 0; i != a-b; ++i)
which used to fail because SCEV created a weird umax expr
for the backedge taken count.
llvm-svn: 157701
|
| |
|
|
| |
llvm-svn: 157700
|
| |
|
|
|
|
| |
just for 64-bit registers is silly. Just optimize 3 more.
llvm-svn: 157699
|
| |
|
|
|
|
|
|
|
|
|
|
| |
two values in
integer registers. This is already supported by the fastcc convention, but it doesn't
hurt to support it in the standard conventions as well.
In cases where we can cheat at the calling convention, this allows us to avoid returning
things through memory in more cases.
llvm-svn: 157698
|
| |
|
|
|
|
| |
and reported as PR12959. // rdar://11499742
llvm-svn: 157697
|
| |
|
|
|
|
| |
Patch by Jush Lu <jush.msn@gmail.com>.
llvm-svn: 157696
|
| |
|
|
|
|
|
|
|
|
|
| |
Also add subclasses MCSubRegIterator, MCSuperRegIterator, and
MCRegAliasIterator.
These iterators provide an abstract interface to the MCRegisterInfo
register lists so the internal representation can be changed without
changing all clients.
llvm-svn: 157695
|
| |
|
|
|
|
| |
Adds missing header guards to Refactoring.h.
llvm-svn: 157694
|
| |
|
|
| |
llvm-svn: 157693
|
| |
|
|
|
|
|
|
| |
key=value string
instead of the first character of the value.
llvm-svn: 157692
|
| |
|
|
| |
llvm-svn: 157691
|
| |
|
|
| |
llvm-svn: 157690
|
| |
|
|
|
|
|
|
| |
The "llvm.codegen" intrinsic patch is a patch to LLVM, which is used
to generate code for embedded LLVM-IR strings. In Polly, we use it
to generate ptx assembly text for GPGPU code generation.
llvm-svn: 157689
|
| |
|
|
| |
llvm-svn: 157688
|
| |
|
|
| |
llvm-svn: 157687
|
| |
|
|
|
|
| |
montavista gcc toolchain is recognized
llvm-svn: 157686
|
| |
|
|
| |
llvm-svn: 157685
|
| |
|
|
| |
llvm-svn: 157684
|
| |
|
|
| |
llvm-svn: 157683
|
| |
|
|
|
|
| |
generated debug information. Reviewed by chandlerc@ and echristo@.
llvm-svn: 157681
|
| |
|
|
|
|
| |
missing break at the end of btver1 feature list.
llvm-svn: 157680
|
| |
|
|
|
|
| |
function to clang.
llvm-svn: 157679
|
| |
|
|
| |
llvm-svn: 157678
|
| |
|
|
| |
llvm-svn: 157677
|
| |
|
|
| |
llvm-svn: 157676
|
| |
|
|
| |
llvm-svn: 157675
|
| |
|
|
| |
llvm-svn: 157674
|
| |
|
|
|
|
|
|
|
| |
If integer overflow causes one of the terms to reach zero, that can
force the entire expression to zero.
Fixes PR12929: cast<Ty>() argument of incompatible type
llvm-svn: 157673
|
| |
|
|
|
|
| |
No functionality.
llvm-svn: 157672
|
| |
|
|
| |
llvm-svn: 157669
|