- Mar 27, 2014
-
-
NAKAMURA Takumi authored
llvm-svn: 204915
-
NAKAMURA Takumi authored
llvm-svn: 204914
-
Erik Verbruggen authored
Transform: icmp X+Cst2, Cst into: icmp X, Cst-Cst2 when Cst-Cst2 does not overflow, and the add has nsw. llvm-svn: 204912
-
Daniel Sanders authored
[mips] Stop caching the result of hasMips64(), isABI_O32(), isABI_N32(), and isABI_N64() from MipsSubTarget in MipsTargetLowering Summary: The short name is quite convenient so provide an accessor for them instead. No functional change Depends on D3177 Reviewers: matheusalmeida Reviewed By: matheusalmeida Differential Revision: http://llvm-reviews.chandlerc.com/D3178 llvm-svn: 204911
-
Chandler Carruth authored
differences from subsequent diffs, and ease review. Going to be performing some major surgery to simplify this stuff. llvm-svn: 204908
-
Chandler Carruth authored
rewrite some of them to be more clear. The terminology being used in our allocators is making me really sad. We call things slab allocators that aren't at all slab allocators. It is quite confusing. llvm-svn: 204907
-
Elena Demikhovsky authored
By Robert Khasanov rob.khasanov@gmail.com llvm-svn: 204906
-
Timur Iskhodzhanov authored
llvm-svn: 204904
-
Timur Iskhodzhanov authored
llvm-svn: 204902
-
Stepan Dyatkovskiy authored
llvm-svn: 204901
-
Stepan Dyatkovskiy authored
llvm-svn: 204900
-
Stepan Dyatkovskiy authored
Fix description: Expressions like 'cmp r0, #(l1 - l2) >> 3' could not be evaluated on asm parsing stage, since it is impossible to resolve labels on this stage. In the end of stage we still have expression (MCExpr). Then, when we want to encode it, we expect it to be an immediate, but it still an expression. Patch introduces a Fixup (MCFixup instance), that is processed after main encoding stage. llvm-svn: 204899
-
Jiangning Liu authored
solved as a constant at compilation time. llvm-svn: 204898
-
Lang Hames authored
llvm-svn: 204894
-
Lang Hames authored
RelocationInfo argument. llvm-svn: 204893
-
Lang Hames authored
it to be out-of-line. llvm-svn: 204892
-
Lang Hames authored
they take ownership of the RelocationInfo they're constructed with. llvm-svn: 204891
-
Reid Kleckner authored
llvm-svn: 204890
-
Reid Kleckner authored
llvm-svn: 204889
-
Reid Kleckner authored
The LangRef warning wasn't formatting the way I intended it to anyway. Surprisingly inalloca appears to work, even when optimizations are enabled. We generate very bad code for it, but we can self-host and run lots of big tests. llvm-svn: 204888
-
Lang Hames authored
No functional change. llvm-svn: 204885
-
Quentin Colombet authored
and v4i64->v4f64. The new costs match what we did for SSE2 and reflect the reality of our codegen. <rdar://problem/16381225> llvm-svn: 204884
-
Rafael Espindola authored
This also finally removes a bogus call to AliasedSymbol. llvm-svn: 204883
-
Jim Grosbach authored
llvm-svn: 204882
-
Justin Bogner authored
It seems that gcov, when faced with a string that is apparently zero length, just keeps reading words until it finds a length it likes better. I'm not really sure why this is, but it's simple enough to make llvm-cov follow suit. llvm-svn: 204881
-
Jim Grosbach authored
Fix the cost model to reflect the reality of our codegen. rdar://16370633 llvm-svn: 204880
-
Nick Lewycky authored
llvm-svn: 204876
-
Eric Christopher authored
paste. llvm-svn: 204875
-
- Mar 26, 2014
-
-
Hal Finkel authored
llvm-svn: 204873
-
Justin Bogner authored
llvm-cov tests are sensitive to line number changes, so putting this at the end will limit churn when we fix the XFAIL. llvm-svn: 204871
-
Justin Bogner authored
llvm-svn: 204868
-
Reid Kleckner authored
Summary: Tested with a unit test because we don't appear to have any transforms that use this other than ASan, I think. Fixes PR17935. Reviewers: nicholas CC: llvm-commits Differential Revision: http://llvm-reviews.chandlerc.com/D3194 llvm-svn: 204866
-
Ekaterina Romanova authored
This is a fix for PR# 19051. I noticed code gen differences due to code motion when running tests with and without the debug info at O2. The problem is in branch folding. A loop wanted to skip the debug info, but actually it didn't do so. llvm-svn: 204865
-
Manman Ren authored
llvm-svn: 204864
-
Justin Bogner authored
Functions may in an instrumented binary but not in the original source when they're inserted by the compiler or the runtime. These functions aren't meaningful to the user, so teach llvm-cov to skip over them instead of crashing. llvm-svn: 204863
-
Kevin Enderby authored
vector list parameter that is using all lanes "{d0[], d2[]}" but can match and instruction with a ”{d0, d2}" parameter. I’m finishing up a fix for proper checking of the unsupported alignments on vld/vst instructions and ran into this. Thus I don’t have a test case at this time. And adding all code that will demonstrate the bug would obscure the very simple one line fix. So if you would indulge me on not having a test case at this time I’ll instead offer up a detailed explanation of what is going on in this commit message. This instruction: vld2.8 {d0[], d2[]}, [r4:64] is not legal as the alignment can only be 16 when the size is 8. Per this documentation: A8.8.325 VLD2 (single 2-element structure to all lanes) <align> The alignment. It can be one of: 16 2-byte alignment, available only if <size> is 8, encoded as a = 1. 32 4-byte alignment, available only if <size> is 16, encoded as a = 1. 64 8-byte alignment, available only if <size> is 32, encoded as a = 1. omitted Standard alignment, see Unaligned data access on page A3-108. So when code is added to the llvm integrated assembler to not match that instruction because of the alignment it then goes on to try to match other instructions and comes across this: vld2.8 {d0, d2}, [r4:64] and and matches it. This is because of the method ARMOperand::isVecListDPairSpaced() is missing the check of the Kind. In this case the Kind is k_VectorListAllLanes . While the name of the method may suggest that this is OK it really should check that the Kind is k_VectorList. As the method ARMOperand::isDoubleSpacedVectorAllLanes() is what was used to match {d0[], d2[]} and correctly checks the Kind: bool isDoubleSpacedVectorAllLanes() const { return Kind == k_VectorListAllLanes && VectorList.isDoubleSpaced; } where the original ARMOperand::isVecListDPairSpaced() does not check the Kind: bool isVecListDPairSpaced() const { if (isSingleSpacedVectorList()) return false; return (ARMMCRegisterClasses[ARM::DPairSpcRegClassID] .contains(VectorList.RegNum)); } Jim Grosbach has reviewed the change and said: Yep, that sounds right. … And by "right" I mean, "wow, that's a nasty latent bug I'm really, really glad to see fixed." :) rdar://16436683 llvm-svn: 204861
-
Eli Bendersky authored
The tests are refactored to use the same fixture. llvm-svn: 204860
-
Arnold Schwaighofer authored
This commit consist of two parts. The first part fix the PR15967. The wrong conclusion was made when the MaxLookup limit was reached. The fix introduce a out parameter (MaxLookupReached) to DecomposeGEPExpression that the function aliasGEP can act upon. The second part is introducing the constant MaxLookupSearchDepth to make sure that DecomposeGEPExpression and GetUnderlyingObject use the same search depth. This is a small cleanup to clarify the original algorithm. Patch by Karl-Johan Karlsson! llvm-svn: 204859
-
Lang Hames authored
llvm-svn: 204857
-
Eli Bendersky authored
Makes sure the Call dies before the Function llvm-svn: 204856
-