- Jun 24, 2013
-
-
Reid Kleckner authored
All of LLVM's Python scripts only support Python 2 for widely understood reasons. Patch by Yonggang Luo. llvm-svn: 184732
-
NAKAMURA Takumi authored
llvm-svn: 184731
-
NAKAMURA Takumi authored
llvm-svn: 184730
-
NAKAMURA Takumi authored
llvm-svn: 184729
-
NAKAMURA Takumi authored
NVPTXTargetObjectFile.h: Initialize some pointers as NULL in the constructor of NVPTXTargetObjectFile. ~NVPTXTargetObjectFile() tries to delete them. It caused crash on some hosts since r184595. llvm-svn: 184728
-
NAKAMURA Takumi authored
FIXME: A couple of tests have been suppressed. I know it'd be bad with _MSC_VER here, though. llvm-svn: 184727
-
NAKAMURA Takumi authored
llvm-svn: 184726
-
Ulrich Weigand authored
[PowerPC] Add t/f branch mnemonics to asm parser This adds the bt/bf/bd(n)zt/bd(n)zf mnemonics as aliases for the asm parser, resolving to the generic conditional patterns. llvm-svn: 184725
-
Arnold Schwaighofer authored
This should hopefully have fixed the stage2/stage3 miscompare on the dragonegg testers. "LoopVectorize: Use the dependence test utility class We now no longer need alias analysis - the cases that alias analysis would handle are now handled as accesses with a large dependence distance. We can now vectorize loops with simple constant dependence distances. for (i = 8; i < 256; ++i) { a[i] = a[i+4] * a[i+8]; } for (i = 8; i < 256; ++i) { a[i] = a[i-4] * a[i-8]; } We would be able to vectorize about 200 more loops (in many cases the cost model instructs us no to) in the test suite now. Results on x86-64 are a wash. I have seen one degradation in ammp. Interestingly, the function in which we now vectorize a loop is never executed so we probably see some instruction cache effects. There is a 2% improvement in h264ref. There is one or the other TSCV loop kernel that speeds up. radar://13681598" llvm-svn: 184724
-
Arnold Schwaighofer authored
We are creating the runtime checks using this set so we need a deterministic iteration order. llvm-svn: 184723
-
Ulrich Weigand authored
[PowerPC] Support generic conditional branches in asm parser This adds instruction patterns to cover the generic forms of the conditional branch instructions. This allows the assembler to support the generic mnemonics. The compiler will still generate the various specific forms of the instruction that were already supported. llvm-svn: 184722
-
Ulrich Weigand authored
[PowerPC] Support absolute branches There is currently only limited support for the "absolute" variants of branch instructions. This patch adds support for the absolute variants of all branches that are currently otherwise supported. This requires adding new fixup types so that the correct variant of relocation type can be selected by the object writer. While the compiler will continue to usually choose the relative branch variants, this will allow the asm parser to fully support the absolute branches, with either immediate (numerical) or symbolic target addresses. No change in code generation intended. llvm-svn: 184721
-
Ulrich Weigand authored
[PowerPC] Support bd(n)zl and bd(n)zlrl This adds support for the bd(n)zl and bd(n)zlrl instructions. The patterns are currently used for the asm parser only. llvm-svn: 184720
-
Ulrich Weigand authored
[PowerPC] Support b(cond)l in the asm parser This patch adds support for the conditional variants of bl. The pattern is currently used by the asm parser only. llvm-svn: 184719
-
Ulrich Weigand authored
[PowerPC] Support blrl and variants in the asm parser This patch adds support for blrl and its conditional variants. The patterns are (currently) used for the asm parser only. llvm-svn: 184718
-
Evgeniy Stepanov authored
llvm-svn: 184717
-
Vladimir Medic authored
This patch introduces RegisterOperand class into Mips FPU instruction definitions and adds dedicated parser methods to MipsAsmParser. It is the first in a series of patches that should fix the problems with parsing Mips FPU instructions and optimize the code in MipsAsmParser. llvm-svn: 184716
-
Michael Gottesman authored
llvm-svn: 184715
-
Michael Gottesman authored
[APFloat] Added a large unittest for APFloat.add that checks that special values are computed correctly. llvm-svn: 184714
-
Michael Gottesman authored
llvm-svn: 184713
-
Michael Gottesman authored
llvm-svn: 184712
-
Michael Gottesman authored
[APFloat] Removed a assert from significandParts() which says that one can only access the significand of FiniteNonZero/NaN floats. The method significandParts() is a helper method meant to ease access to APFloat's significand by allowing the user to not need to be aware of whether or not the APFloat is using memory allocated in the instance itself or in an external array. This assert says that one can only access the significand of FiniteNonZero/NaN floats. This makes it cumbersome and more importantly dangerous when one wishes to zero out the significand of a zero/infinity value since one will have to deal with the aforementioned quandary related to how the memory in APFloat is allocated. llvm-svn: 184711
-
Michael Gottesman authored
[APFloat] Rename macro convolve => PackCategoriesIntoKey so that it is clear what APFloat is actually using said macro for. In the context of APFloat, seeing a macro called convolve suggests that APFloat is using said value in some sort of convolution somewhere in the source code. This is misleading. I also added a documentation comment to the macro. llvm-svn: 184710
-
Andrew Trick authored
llvm-svn: 184709
-
Chandler Carruth authored
atexit. llvm-svn: 184708
-
Amaury de la Vieuville authored
When encoded to thumb, VFP instruction and VMOV/VDUP between scalar and core registers, must have their predicate bit to 0b1110. llvm-svn: 184707
-
Amaury de la Vieuville authored
llvm-svn: 184706
-
Andrew Trick authored
Sorry for the unit test churn. I'll try to make the change permanently next time. llvm-svn: 184705
-
Sergey Matveev authored
llvm-svn: 184704
-
Amaury de la Vieuville authored
In thumb1, NOP is a pseudo-instruction equivalent to mov r8, r8. However the disassembler should not use this alias. llvm-svn: 184703
-
Amaury de la Vieuville authored
mask == 0 -> UNPRED llvm-svn: 184702
-
Amaury de la Vieuville authored
llvm-svn: 184701
-
Sergey Matveev authored
Also clean up LSan code, fix some comments and replace void* with uptr to bring down the number of reinterpret_casts. llvm-svn: 184700
-
Tobias Grosser authored
llvm-svn: 184699
-
Chandler Carruth authored
CGSCC pass manager. This should insulate the inlining decisions from the vectorization decisions, however it may have both compile time and code size problems so it is just an experimental option right now. Adding this based on a discussion with Arnold and it seems at least worth having this flag for us to both run some experiments to see if this strategy is workable. It may solve some of the regressions seen with the loop vectorizer. llvm-svn: 184698
-
Chandler Carruth authored
There is some hope of eventually supporting a unified build with it, but until then this lets me (and others) check it out in this location without things breaking. llvm-svn: 184697
-
Richard Smith authored
constructing a lookup table. Previously, buildLookup would add lookup table entries for each item lexically within the DC, and adding the first entry with a given name would trigger the external source to add all its entries with that name. Then buildLookup would carry on and re-add those entries all over again. Instead, follow a simple rule: a declaration from an external source is only ever made visible by the external source. One exception to this: since we don't usually build a lookup table for the TU in C, and we never serialize one, we don't expect the external source to provide lookups in the TU in C, so we build those ones ourselves. llvm-svn: 184696
-
David Blaikie authored
There's still a problem here - since we're not appropriately using the signedness/range of the enum to chooset the encoding and emission of enumerators, but GCC has some bugs around this too so I assume that's not /such/ a high priority though I may get to it soon out of completeness. llvm-svn: 184695
-
David Blaikie authored
llvm-svn: 184694
-
David Blaikie authored
The assembly generation testing has been moved to an LLVM test case. llvm-svn: 184693
-