|  | Commit message (Collapse) | Author | Age | Files | Lines | 
|---|
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | to reflect the new license.
We understand that people may be surprised that we're moving the header
entirely to discuss the new license. We checked this carefully with the
Foundation's lawyer and we believe this is the correct approach.
Essentially, all code in the project is now made available by the LLVM
project under our new license, so you will see that the license headers
include that license only. Some of our contributors have contributed
code under our old license, and accordingly, we have retained a copy of
our old license notice in the top-level files in each project and
repository.
llvm-svn: 351636 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| | - Check if an operand is an immediate before calling getImm. Some operands
  that take constant values can actually have global symbols or other
  constant expressions.
- When a load-constant instruction can be folded into users, make sure to
  only delete it when all users have been successfully converted.
llvm-svn: 348802 | 
| | 
| 
| 
| 
| 
| | This reverts r348787. The patch wasn't quite correct.
llvm-svn: 348792 | 
| | 
| 
| 
| | llvm-svn: 348787 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | The DEBUG() macro is very generic so it might clash with other projects.
The renaming was done as follows:
- git grep -l 'DEBUG' | xargs sed -i 's/\bDEBUG\s\?(/LLVM_DEBUG(/g'
- git diff -U0 master | ../clang/tools/clang-format/clang-format-diff.py -i -p1 -style LLVM
- Manual change to APInt
- Manually chage DOCS as regex doesn't match it.
In the transition period the DEBUG() macro is still present and aliased
to the LLVM_DEBUG() one.
Differential Revision: https://reviews.llvm.org/D43624
llvm-svn: 332240 | 
| | 
| 
| 
| | llvm-svn: 328356 | 
| | 
| 
| 
| 
| 
| 
| 
| | Optimize Ry = add(Rx,#n); memw(Ry+#0) = Rz  =>  memw(Rx,#n) = Rz.
Patch by Jyotsna Verma.
llvm-svn: 328355 | 
| | 
| 
| 
| 
| 
| | The Function can never be nullptr so we can return a reference.
llvm-svn: 320884 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | As part of the unification of the debug format and the MIR format, print
MBB references as '%bb.5'.
The MIR printer prints the IR name of a MBB only for block definitions.
* find . \( -name "*.mir" -o -name "*.cpp" -o -name "*.h" -o -name "*.ll" \) -type f -print0 | xargs -0 sed -i '' -E 's/BB#" << ([a-zA-Z0-9_]+)->getNumber\(\)/" << printMBBReference(*\1)/g'
* find . \( -name "*.mir" -o -name "*.cpp" -o -name "*.h" -o -name "*.ll" \) -type f -print0 | xargs -0 sed -i '' -E 's/BB#" << ([a-zA-Z0-9_]+)\.getNumber\(\)/" << printMBBReference(\1)/g'
* find . \( -name "*.txt" -o -name "*.s" -o -name "*.mir" -o -name "*.cpp" -o -name "*.h" -o -name "*.ll" \) -type f -print0 | xargs -0 sed -i '' -E 's/BB#([0-9]+)/%bb.\1/g'
* grep -nr 'BB#' and fix
Differential Revision: https://reviews.llvm.org/D40422
llvm-svn: 319665 | 
| | 
| 
| 
| 
| 
| 
| 
| | All these headers already depend on CodeGen headers so moving them into
CodeGen fixes the layering (since CodeGen depends on Target, not the
other way around).
llvm-svn: 318490 | 
| | 
| 
| 
| | llvm-svn: 316170 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | The new format is changeAddrMode_xx_yy, where xx is the current mode,
and yy is the new one.
Old name:               New name:
getBaseWithImmOffset    changeAddrMode_abs_io
getAbsoluteForm         changeAddrMode_io_abs
getBaseWithRegOffset    changeAddrMode_io_rr
xformRegToImmOffset     changeAddrMode_rr_io
getBaseWithLongOffset   changeAddrMode_rr_ur
getRegShlForm           changeAddrMode_ur_rr
llvm-svn: 315013 | 
| | 
| 
| 
| 
| 
| | warnings; other minor fixes (NFC).
llvm-svn: 309469 | 
| | 
| 
| 
| | llvm-svn: 307947 | 
| | 
| 
| 
| 
| 
| 
| | The dead phis are needed for finding correct would-be reaching defs
in register propagation.
llvm-svn: 306690 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| | Also, make a few changes to allow using the pass in .mir testcases.
Among other things, change the abbreviation from opt-amode to amode-opt,
because otherwise lit would expand the "opt" part to the full path to
the opt binary.
llvm-svn: 300707 | 
| | 
| 
| 
| | llvm-svn: 300706 | 
| | 
| 
| 
| 
| 
| 
| | This avoids many complications related to the complex register
aliasing schemes.
llvm-svn: 300345 | 
| | 
| 
| 
| | llvm-svn: 300329 | 
| | 
| 
| 
| 
| 
| 
| | For large programs this function can take significant amounts of time.
Let it abort gracefully when the program is too complex.
llvm-svn: 296662 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| | Defining nodes should not alias with one another, while clobbering
nodes can. When pushing defs on stacks, push clobbers first, link
non-clobbering defs, then push the defs.
The data flow in a statement is now: uses -> clobbers -> defs.
llvm-svn: 295356 | 
| | 
| 
| 
| 
| 
| | Remove the duplicate from DFG and make some members of PRI private.
llvm-svn: 295351 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | Rename from addOperand to just add, to match the other method that has been
added to MachineInstrBuilder for adding more than just 1 operand.
See https://reviews.llvm.org/D28057 for the whole discussion.
Differential Revision: https://reviews.llvm.org/D28556
llvm-svn: 291891 | 
| | 
| 
| 
| 
| 
| | other minor fixes (NFC).
llvm-svn: 289907 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| | This required reengineering of some of the part of liveness calculation,
including fixing some issues caused by the limitations of the previous
approach. The current code is not necessarily the fastest, but it should
be functionally correct (at least more so than before). The compile-time
performance will be addressed in the future.
llvm-svn: 284609 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| | Use PackedRegisterRef to store the register information in the graph nodes.
This commit also removes support for virtual registers. It has never been
tested or used. It will be possible to add it back if there is a need.
llvm-svn: 284255 | 
| | 
| 
| 
| | llvm-svn: 283122 | 
| | 
| 
| 
| | llvm-svn: 283004 | 
| | 
| 
| 
| | llvm-svn: 277220 | 
| | 
| 
| 
| 
| 
| | Found by gcc 6.
llvm-svn: 273322 | 
| | 
| 
| 
| | llvm-svn: 270459 | 
| | 
| 
| 
| | llvm-svn: 268057 | 
|  | Patch by Jyotsna Verma.
llvm-svn: 268051 |