- Nov 12, 2013
-
-
Andrew Trick authored
I still don't know how to refer to the fixed operands symbolically. I plan to look into it. llvm-svn: 194529
-
Sebastian Pop authored
print the name of the function on which the dependence analysis is performed such that changes to the testcase are easier to review. llvm-svn: 194528
-
Sebastian Pop authored
llvm-svn: 194527
-
Sebastian Pop authored
llvm-svn: 194526
-
Nadav Rotem authored
Fold (iszero(A&K1) | iszero(A&K2)) -> (A&(K1|K2)) != (K1|K2) if we know that K1 and K2 are 'one-hot' (only one bit is on). llvm-svn: 194525
-
Nadav Rotem authored
FoldBranchToCommonDest merges branches into a single branch with or/and of the condition. It has a heuristics for estimating when some of the dependencies are processed by out-of-order processors. This patch adds another rule to the heuristics that says that if the "BonusInstruction" that we speculatively execute is used by the condition of the second branch then it is okay to hoist it. This change exposes more opportunities for other passes to transform the code. It does not matter that much that we if-convert the code because the selectiondag builder splits or/and branches into multiple branches when profitable. llvm-svn: 194524
-
Hans Wennborg authored
llvm-svn: 194523
-
Akira Hatanaka authored
argument was not being passed in $f14. llvm-svn: 194522
-
Dmitri Gribenko authored
llvm-svn: 194521
-
Rafael Espindola authored
The problem was that given template<typename T> struct foo { ~foo() {} }; template class foo<int>; We would produce a alias, creating a comdat with D0 and D1, since the symbols have to be weak. Another TU is not required to have a explicit template instantiation definition or an explict template instantiation declaration and for template<typename T> struct foo { ~foo() {} }; foo<int> a; we would produce a comdat with only one symbol in it. llvm-svn: 194520
-
Akira Hatanaka authored
llvm-svn: 194519
-
Eric Christopher authored
llvm-svn: 194515
-
Justin Bogner authored
Add user-supplied C runtime and compiler-rt library functions to llvm.compiler.used to protect them from premature optimization by passes like -globalopt and -ipsccp. Calls to (seemingly unused) runtime library functions can be added by -instcombine and instruction lowering. Patch by Duncan Exon Smith, thanks! Fixes <rdar://problem/14740087> llvm-svn: 194514
-
Weiming Zhao authored
llvm-svn: 194513
-
Tim Northover authored
The system LDM and STM instructions can't usually writeback to the base register. The one exception is when an LDM is actually an exception-return (i.e. contains PC in the register list). (There's already a test that "ldm sp!, {r0-r3, pc}^" works, which is why there is no positive test). rdar://problem/15223374 llvm-svn: 194512
-
Akira Hatanaka authored
llvm-svn: 194511
-
Akira Hatanaka authored
llvm-svn: 194510
-
Peter Zotov authored
This commit significantly speeds up both bytecode and native builds of LLVM clients (from ~20 second to sub-second link time), and allows to invoke LLVM functions from OCaml toplevel. The behavior for --disable-shared builds is unchanged. llvm-svn: 194509
-
Peter Zotov authored
llvm-svn: 194508
-
Fariborz Jahanian authored
is further restricted in legacy runtime to deployment target of 10.7 and later. // rdar://15363492 llvm-svn: 194507
-
Rafael Espindola authored
Constant merge can merge a constant with implicit alignment with one that has explicit alignment. Before this change it was assuming that the explicit alignment was higher than the implicit one, causing the result to be under aligned in some cases. Fixes pr17815. Patch by Chris Smowton! llvm-svn: 194506
-
Weiming Zhao authored
llvm-svn: 194505
-
John Thompson authored
Extended moduleImport test to test a module with more than one path component. This required a change to the includes test, because of the change to the headers. llvm-svn: 194504
-
Fariborz Jahanian authored
"atomic" or "nonatomic" for properties is NS_NONATOMIC_IOSONLY. Use it if available. // rdar://15442742 llvm-svn: 194503
-
Hans Wennborg authored
llvm-svn: 194502
-
Chad Rosier authored
copy in MC layer. Added the MC layer tests. Fixed triple setting in test cases. Patch by Ana Pazos <apazos@codeaurora.org>. llvm-svn: 194501
-
Roman Divacky authored
llvm-svn: 194500
-
Yuchen Wu authored
This function will be called by GCOVProfiling to write and update object and program summaries to be read in by llvm-cov. llvm-svn: 194499
-
Sylvestre Ledru authored
llvm-svn: 194498
-
Andrew Trick authored
We already know how to fold a reload from a frameindex without analyzing the load instruction. Generalize this to handle any frameindex load. This streamlines the logic for rematerializing loads from stack arguments. As a side effect, it allows stackmaps to record a stack argument location without spilling it. Verified no effect on codegen for llvm test-suite. llvm-svn: 194497
-
Andrew Trick authored
llvm-svn: 194496
-
Andrew Trick authored
llvm-svn: 194495
-
Manuel Klimek authored
As suggested by pcc on 194226. llvm-svn: 194494
-
Alexander Kornienko authored
Summary: Solves the problem described in http://llvm.org/PR17756 Reviewers: klimek Reviewed By: klimek CC: cfe-commits, klimek Differential Revision: http://llvm-reviews.chandlerc.com/D2131 llvm-svn: 194493
-
Rui Ueyama authored
llvm-svn: 194492
-
Alexander Kornienko authored
Summary: This solves http://llvm.org/PR17536 Reviewers: klimek, djasper Reviewed By: klimek CC: cfe-commits, klimek Differential Revision: http://llvm-reviews.chandlerc.com/D2142 llvm-svn: 194491
-
Andy Gibbs authored
llvm-svn: 194490
-
Fariborz Jahanian authored
r194450 with a modified test. // rdar://15363492 llvm-svn: 194489
-
Manuel Klimek authored
Now we can compile a VSPackage that works with VS 2010-2013 from within VS 2012. llvm-svn: 194488
-
Ed Maste authored
In order to help track down llvm.org/pr17226. llvm-svn: 194487
-