- Mar 01, 2014
-
-
Matt Arsenault authored
Simple cases hit a variety of problems at -O0. llvm-svn: 202601
-
Hal Finkel authored
This generalizes the code to eliminate extra truncs/exts around i1 bit operations to also do the same on PPC64 for i32 bit operations. This eliminates a fairly prevalent code wart: int foo(int a) { return a == 5 ? 7 : 8; } On PPC64, because of the extension implied by the ABI, this would generate: cmplwi 0, 3, 5 li 12, 8 li 4, 7 isel 3, 4, 12, 2 rldicl 3, 3, 0, 32 blr where the 'rldicl 3, 3, 0, 32', the extension, is completely unnecessary. At least for the single-BB case (which is all that the DAG combine mechanism can handle), this unnecessary extension is no longer generated. llvm-svn: 202600
-
Venkatraman Govindaraju authored
llvm-svn: 202599
-
Venkatraman Govindaraju authored
llvm-svn: 202598
-
Venkatraman Govindaraju authored
llvm-svn: 202597
-
Benjamin Kramer authored
llvm-svn: 202596
-
Benjamin Kramer authored
llvm-svn: 202595
-
Sasa Stankovic authored
llvm-svn: 202594
-
Joerg Sonnenberger authored
llvm-svn: 202593
-
Joerg Sonnenberger authored
llvm-svn: 202592
-
Joerg Sonnenberger authored
Move prototypes into headers and fix a few inconsistencies. llvm-svn: 202591
-
Benjamin Kramer authored
No functionality change. llvm-svn: 202590
-
NAKAMURA Takumi authored
FIXME: Give appropriate \param to llvm::ArrayRef<SubmoduleID> Overrides. llvm-svn: 202589
-
Benjamin Kramer authored
No intended functionality change. llvm-svn: 202588
-
Chandler Carruth authored
llvm-svn: 202587
-
Chandler Carruth authored
to the build being C++11. There is clearly still plenty of simplification than can be done here by using standard type traits instead of rolling our own in many places. llvm-svn: 202586
-
Chandler Carruth authored
LLVM_HAS_RVALUE_REFERENCES macro. llvm-svn: 202585
-
Chandler Carruth authored
is now always 1, as we're requiring C++11 now! llvm-svn: 202584
-
Chandler Carruth authored
llvm-svn: 202583
-
Chandler Carruth authored
the core LLVM libraries. llvm-svn: 202582
-
Venkatraman Govindaraju authored
llvm-svn: 202581
-
Chandler Carruth authored
libraries. It is now always 1 in LLVM builds. llvm-svn: 202580
-
Chandler Carruth authored
on unconditionally. Continuing to break down the C++98 support, hopefully without breaking anything. llvm-svn: 202579
-
Venkatraman Govindaraju authored
llvm-svn: 202578
-
Venkatraman Govindaraju authored
llvm-svn: 202577
-
Andrew Trick authored
llvm-svn: 202576
-
Venkatraman Govindaraju authored
llvm-svn: 202575
-
Chandler Carruth authored
on the fact that we now build in C++11 mode with modern compilers. This should flush out any issues. If the build bots are happy with this, I'll GC all the code for coping without R-value references. llvm-svn: 202574
-
Venkatraman Govindaraju authored
llvm-svn: 202573
-
Venkatraman Govindaraju authored
llvm-svn: 202572
-
Venkatraman Govindaraju authored
llvm-svn: 202571
-
Mark Seaborn authored
lib/Support/RWMutex.cpp contains an implementation of RWMutex that uses pthread_rwlock, but when pthread_rwlock is not available (such as under NaCl, when using newlib), it silently falls back to using the no-op definition in lib/Support/Unix/RWMutex.inc, which is not thread-safe. Fix this case to be thread-safe by using a normal mutex. Differential Revision: http://llvm-reviews.chandlerc.com/D2892 llvm-svn: 202570
-
Chandler Carruth authored
baseline is now C++11, and we unconditionally add -std=c++11 to the flags. This has the dim potential to break some non-GNU-compatible compiler (in terms of -std flags) using the makefiles, but those makefiles are littered with GNU-style compile flags so it would be very surprising to me for it to actually happen in practice. As always, do let me know if there is a toolchain you're using where this doesn't work, and I'll be watching the bots. llvm-svn: 202569
-
Chandler Carruth authored
C++11. I'm not sure that this is a good idea, but I know some crazy folks on the core working group who like to live dangerously, and they should still be able to build LLD. =D llvm-svn: 202568
-
Chandler Carruth authored
LLVM_ENABLE_CXX1Y (default *off*). =D C++98 is dead. Long live C++11. I don't exactly recommend using C++1y just yet though... llvm-svn: 202567
-
Chandler Carruth authored
The switch has been thrown. While I'm still watching for any failures or problems with this, the documentation can go ahead and move forward. llvm-svn: 202566
-
Venkatraman Govindaraju authored
llvm-svn: 202565
-
Venkatraman Govindaraju authored
llvm-svn: 202564
-
Venkatraman Govindaraju authored
[Sparc] Emit 'restore' instead of 'restore %g0, %g0, %g0'. This improves the readability of the generated code. llvm-svn: 202563
-
Warren Hunt authored
When lowering a bitfield, CGRecordLowering would assign the wrong storage type to a bitfield in some cases and trigger an assertion. In these cases the layout was still correct, just the bitfield info was wrong. llvm-svn: 202562
-