- Jun 19, 2013
-
-
Bill Wendling authored
llvm-svn: 184338
-
- May 05, 2013
-
-
Arnold Schwaighofer authored
llvm-svn: 181147
-
Arnold Schwaighofer authored
Add support for matching 'ordered' and 'unordered' floating point min/max constructs. In LLVM we can express min/max functions as a combination of compare and select. We have support for matching such constructs for integers but not for floating point. In floating point math there is no total order because of the presence of 'NaN'. Therefore, we have to be careful to preserve the original fcmp semantics when interpreting floating point compare select combinations as a minimum or maximum function. The resulting 'ordered/unordered' floating point maximum function has to select the same value as the select/fcmp combination it is based on. ordered_max(x,y) = max(x,y) iff x and y are not NaN, y otherwise unordered_max(x,y) = max(x,y) iff x and y are not NaN, x otherwise ordered_min(x,y) = min(x,y) iff x and y are not NaN, y otherwise unordered_min(x,y) = min(x,y) iff x and y are not NaN, x otherwise This matches the behavior of the underlying select(fcmp(olt/ult/.., L, R), L, R) construct. Any code using this predicate has to preserve this semantics. A follow-up patch will use this to implement floating point min/max reductions in the vectorizer. radar://13723044 llvm-svn: 181143
-
- Apr 12, 2013
-
-
Benjamin Kramer authored
Fix a disconcerting bug in Value::isUsedInBasicBlock, which gave wrong answers for blocks larger than 3 instrs. Also add a unit test. PR15727. llvm-svn: 179370
-
- Jan 31, 2013
-
-
Dan Gohman authored
reference to a pointer, so that it can handle the case where DataLayout is not available and behave conservatively. llvm-svn: 174024
-
- Jan 27, 2013
-
-
Bill Wendling authored
llvm-svn: 173608
-
- Jan 23, 2013
-
-
NAKAMURA Takumi authored
llvm-svn: 173240
-
NAKAMURA Takumi authored
llvm-svn: 173239
-
NAKAMURA Takumi authored
llvm-svn: 173238
-
NAKAMURA Takumi authored
It fixes --vg-leak. llvm-svn: 173237
-
NAKAMURA Takumi authored
IRTests/ConstantsTest.cpp: AsInstructionsTest: Delete each instruction immediately if it is not linked. llvm-svn: 173236
-
NAKAMURA Takumi authored
llvm-svn: 173235
-
NAKAMURA Takumi authored
llvm-svn: 173233
-
- Jan 16, 2013
-
-
Evgeniy Stepanov authored
llvm-svn: 172615
-
Evgeniy Stepanov authored
llvm-svn: 172614
-
- Jan 14, 2013
-
-
Dmitri Gribenko authored
llvm-svn: 172474
-
David Greene authored
Use const_cast<> to avoid cast-away-const errors. llvm-svn: 172464
-
- Jan 12, 2013
-
-
Benjamin Kramer authored
The folding set details can be subtle and broke twice in the last couple of weeks. llvm-svn: 172313
-
- Jan 07, 2013
-
-
Chandler Carruth authored
library rename. llvm-svn: 171747
-