- Apr 15, 2013
-
-
Andy Gibbs authored
This is a rework of the broken parts in r179373 which were subsequently reverted in r179374 due to incompatibility with C++98 compilers. This version should be ok under C++98. llvm-svn: 179520
-
Tim Northover authored
This is no longer true. llvm-svn: 179519
-
Tim Northover authored
llvm-svn: 179518
-
Richard Smith authored
Local thread_local variables are implicitly 'static'. (This doesn't apply to _Thread_local nor __thread.) llvm-svn: 179517
-
Richard Smith authored
llvm-svn: 179516
-
Richard Smith authored
llvm-svn: 179515
-
Richard Smith authored
llvm-svn: 179514
-
Eric Christopher authored
I can fix the testcases here: http://lab.llvm.org:8011/builders/clang-native-arm-cortex-a9/builds/6952 This reverts commit r179512 due to testcases specifying triples that they didn't actually mean and causing failures on other platforms. llvm-svn: 179513
-
Eric Christopher authored
llvm-svn: 179512
-
Nadav Rotem authored
llvm-svn: 179511
-
Nadav Rotem authored
Docs: merge the description of the BB and SLP vectorizers and document the -fslp-vectorize-aggressive flag. llvm-svn: 179510
-
Nadav Rotem authored
Add an option -vectorize-slp-aggressive for running the BB vectorizer. Make -fslp-vectorize run the slp-vectorizer. llvm-svn: 179508
-
Nadav Rotem authored
llvm-svn: 179507
-
Nadav Rotem authored
llvm-svn: 179506
-
Nadav Rotem authored
llvm-svn: 179505
-
Nadav Rotem authored
llvm-svn: 179504
-
Jia Liu authored
llvm-svn: 179503
-
Hal Finkel authored
Now that the CR spilling issues have been resolved, we can remove the unmodeled-side-effect attributes from the comparison instructions (and also mark them as isCompare). By allowing these, by default, to have unmodeled side effects, we were hiding problems with CR spilling; but everything seems much happier now. llvm-svn: 179502
-
Dmitri Gribenko authored
llvm-svn: 179501
-
Hal Finkel authored
This fixes an ABI bug for non-Darwin PPC64. For the callee-saved condition registers, the spill location is specified relative to the stack pointer (SP + 8). However, this is not relative to the SP after the new stack frame is established, but instead relative to the caller's stack pointer (it is stored into the linkage area of the parent's stack frame). So, like with the link register, we don't directly spill the CRs with other callee-saved registers, but just mark them to be spilled during prologue generation. In practice, this reverts r179457 for PPC64 (but leaves it in place for PPC32). llvm-svn: 179500
-
Eric Christopher authored
This reverts commit r179497 and the accompanying commit as it broke random platforms that aren't osx. llvm-svn: 179499
-
Eric Christopher authored
llvm-svn: 179498
-
Eric Christopher authored
and use that as the default triple for the module and target data layout. llvm-svn: 179497
-
Richard Smith authored
non-constant constructors or non-trivial destructors. Plus bugfixes for thread_local references bound to temporaries (the temporaries themselves are lifetime-extended to become thread_local), and the corresponding case for std::initializer_list. llvm-svn: 179496
-
Rafael Espindola authored
llvm-svn: 179495
-
- Apr 14, 2013
-
-
Nico Rieck authored
llvm-svn: 179494
-
David Majnemer authored
One performs: (X == 13 | X == 14) -> X-13 <u 2 The other: (A == C1 || A == C2) -> (A & ~(C1 ^ C2)) == C1 The problem is that there are certain values of C1 and C2 that trigger both transforms but the first one blocks out the second, this generates suboptimal code. Reordering the transforms should be better in every case and allows us to do interesting stuff like turn: %shr = lshr i32 %X, 4 %and = and i32 %shr, 15 %add = add i32 %and, -14 %tobool = icmp ne i32 %add, 0 into: %and = and i32 %X, 240 %tobool = icmp ne i32 %and, 224 llvm-svn: 179493
-
Nadav Rotem authored
llvm-svn: 179492
-
Richard Smith authored
or non-trivial destructor. llvm-svn: 179491
-
Anna Zaks authored
llvm-svn: 179490
-
Simon Atanasyan authored
llvm-svn: 179489
-
Simon Atanasyan authored
llvm-svn: 179488
-
Simon Atanasyan authored
AddTargetFeature() routine to handle -msingle-float / -mdouble-float options. llvm-svn: 179487
-
Simon Atanasyan authored
independent of float ABI feature in the MipsTargetInfoBase class. llvm-svn: 179486
-
Tobias Grosser authored
We do not only need to understand that 'k * p' is a parameter expression, but also need to store this expression in the set of parameters. Before this patch we wrongly stored the two individual parameters %k and %p. Reported by: Sebastian Pop <spop@codeaurora.org> llvm-svn: 179485
-
Rafael Espindola authored
llvm-svn: 179484
-
Benjamin Kramer authored
llvm-svn: 179483
-
John McCall authored
Invalid redeclarations of valid explicit declarations shouldn't take the same path as redeclarations of implicit declarations, and invalid local extern declarations shouldn't foul things up for everybody else. llvm-svn: 179482
-
Simon Atanasyan authored
two new options –msingle-float and –mdouble-float. These options can be used simultaneously with float ABI selection options (-mfloat-abi, -mhard-float, -msoft-float). They mark whether a floating-point coprocessor supports double-precision operations. llvm-svn: 179481
-
Nadav Rotem authored
llvm-svn: 179480
-