History log of /llvm-project/llvm/lib/Target/Mips/MipsDelaySlotFiller.cpp (Results 101 – 125 of 154)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 50e174d9 01-Mar-2013 Akira Hatanaka <ahatanaka@mips.com>

[mips] Rename function findDelayInstr to searchBackward.

llvm-svn: 176317


# eb33ced0 01-Mar-2013 Akira Hatanaka <ahatanaka@mips.com>

[mips] Define class MemDefsUses.

This class tracks dependence between memory instructions using underlying
objects of memory operands.

llvm-svn: 176313


# 979899e5 26-Feb-2013 Akira Hatanaka <ahatanaka@mips.com>

[mips] Use class RegDefsUses to track register defs and uses.

No functionality change.

llvm-svn: 176070


# 30f05f3d 14-Feb-2013 Akira Hatanaka <ahatanaka@mips.com>

[mips] Disallow moving load/store instructions past volatile instructions.

Unfortunately, I wasn't able to create a test case that demonstrates the
problem I was trying to fix with this patch.

llvm

[mips] Disallow moving load/store instructions past volatile instructions.

Unfortunately, I wasn't able to create a test case that demonstrates the
problem I was trying to fix with this patch.

llvm-svn: 175226

show more ...


# 06bd138d 14-Feb-2013 Akira Hatanaka <ahatanaka@mips.com>

[mips] Replace usage of SmallSet with BitVector, which is used to keep track of
defined and used registers. Also add a few helper functions to simplify the
code.

llvm-svn: 175224


# 1083eb17 14-Feb-2013 Akira Hatanaka <ahatanaka@mips.com>

[mips] Fix comments and coding style violations. Declare functions to be const.

llvm-svn: 175222


# dfd2f24d 14-Feb-2013 Akira Hatanaka <ahatanaka@mips.com>

[mips] Simplify code in function Filler::findDelayInstr.

1. Define and use function terminateSearch.
2. Use MachineBasicBlock::iterator instead of MachineBasicBlock::instr_iterator.
3. Delete the li

[mips] Simplify code in function Filler::findDelayInstr.

1. Define and use function terminateSearch.
2. Use MachineBasicBlock::iterator instead of MachineBasicBlock::instr_iterator.
3. Delete the line which checks whether an instruction is a pseudo.

llvm-svn: 175219

show more ...


# a0612815 07-Feb-2013 Akira Hatanaka <ahatanaka@mips.com>

[mips] Make Filler a class and reduce indentation.

llvm-svn: 174666


Revision tags: llvmorg-3.2.0
# 97030e0c 07-Dec-2012 Jakob Stoklund Olesen <stoklund@2pi.dk>

Use the new MIBundleBuilder class in the Mips target.

This is the preferred way of creating bundled machine instructions.

llvm-svn: 169585


Revision tags: llvmorg-3.2.0-rc3
# ed0881b2 03-Dec-2012 Chandler Carruth <chandlerc@gmail.com>

Use the new script to sort the includes of every file under lib.

Sooooo many of these had incorrect or strange main module includes.
I have manually inspected all of these, and fixed the main module

Use the new script to sort the includes of every file under lib.

Sooooo many of these had incorrect or strange main module includes.
I have manually inspected all of these, and fixed the main module
include to be the nearest plausible thing I could find. If you own or
care about any of these source files, I encourage you to take some time
and check that these edits were sensible. I can't have broken anything
(I strictly added headers, and reordered them, never removed), but they
may not be the headers you'd really like to identify as containing the
API being implemented.

Many forward declarations and missing includes were added to a header
files to allow them to parse cleanly when included first. The main
module rule does in fact have its merits. =]

llvm-svn: 169131

show more ...


Revision tags: llvmorg-3.2.0-rc2
# 907f5f0c 16-Nov-2012 Akira Hatanaka <ahatanaka@mips.com>

[mips] Fix delay slot filler so that instructions with register operand $1 are
allowed in branch delay slot.

llvm-svn: 168131


Revision tags: llvmorg-3.2.0-rc1
# 4a08a4a8 24-Aug-2012 Akira Hatanaka <ahatanaka@mips.com>

Disable Mips' delay slot filler when optimization level is O0.

llvm-svn: 162589


# 9d957842 22-Aug-2012 Akira Hatanaka <ahatanaka@mips.com>

Add option disable-mips-delay-filler. Turn on mips' delay slot filler by
default.

Patch by Carl Norum.

llvm-svn: 162339


# 5fd22485 14-Jun-2012 Akira Hatanaka <ahatanaka@mips.com>

Fix coding style violations. Remove white spaces and tabs.

llvm-svn: 158471


# 5ac78681 13-Jun-2012 Akira Hatanaka <ahatanaka@mips.com>

Bundle jump/branch instructions with the instructions in the delay slot in
delay slot filler pass of MIPS, per suggestion of Jakob Stoklund Olesen.

This change, along with the fix in r158154, enable

Bundle jump/branch instructions with the instructions in the delay slot in
delay slot filler pass of MIPS, per suggestion of Jakob Stoklund Olesen.

This change, along with the fix in r158154, enables machine verification
to be run after delay slot filling.

llvm-svn: 158426

show more ...


# 92a00839 01-Jun-2012 Jakob Stoklund Olesen <stoklund@2pi.dk>

Switch some getAliasSet clients to MCRegAliasIterator.

MCRegAliasIterator can optionally visit the register itself, allowing
for simpler code.

llvm-svn: 157837


# 4773e67e 14-May-2012 Akira Hatanaka <ahatanaka@mips.com>

Add a command line option to skip the delay slot filler pass entirely for Mips.

The purpose of this option is to silence error messages issued by machine
verifier passes and enable them to run to th

Add a command line option to skip the delay slot filler pass entirely for Mips.

The purpose of this option is to silence error messages issued by machine
verifier passes and enable them to run to the end. If this option is not
provided, -verify-machineinstrs complains when it discovers there is a
non-terminator instruction (an instruction that is in a delay slot) after the
first terminator in a basic block.

llvm-svn: 156790

show more ...


Revision tags: llvmorg-3.1.0, llvmorg-3.1.0-rc3, llvmorg-3.1.0-rc2, llvmorg-3.1.0-rc1
# 1d326588 04-Mar-2012 Craig Topper <craig.topper@gmail.com>

Use uint16_t to store register overlaps to reduce static data.

llvm-svn: 152001


# f54f60f3 28-Feb-2012 Jia Liu <proljc@gmail.com>

remove blanks, and some code format

llvm-svn: 151625


# 9f610119 17-Feb-2012 Jia Liu <proljc@gmail.com>

remove Emacs-tag form .cpp files in Mips Backend, and fix some typo.

llvm-svn: 150805


# dd6c1cd4 17-Feb-2012 Jia Liu <proljc@gmail.com>

add Emacs tag and fix some comment error in file headers

llvm-svn: 150775


# 9e1d369e 19-Dec-2011 Akira Hatanaka <ahatanaka@mips.com>

Tidy up. Simplify logic. No functional change intended.

llvm-svn: 146896


# 7f8e563a 07-Dec-2011 Evan Cheng <evan.cheng@apple.com>

Add bundle aware API for querying instruction properties and switch the code
generator to it. For non-bundle instructions, these behave exactly the same
as the MC layer API.

For properties like mayL

Add bundle aware API for querying instruction properties and switch the code
generator to it. For non-bundle instructions, these behave exactly the same
as the MC layer API.

For properties like mayLoad / mayStore, look into the bundle and if any of the
bundled instructions has the property it would return true.
For properties like isPredicable, only return true if *all* of the bundled
instructions have the property.
For properties like canFoldAsLoad, isCompare, conservatively return false for
bundles.

llvm-svn: 146026

show more ...


Revision tags: llvmorg-3.0.0, llvmorg-3.0.0-rc4, llvmorg-3.0.0-rc3, llvmorg-3.0.0-rc2, llvmorg-3.0.0-rc1
# c6b742f9 05-Oct-2011 Akira Hatanaka <ahatanaka@mips.com>

Fix assertion string.

llvm-svn: 141197


# 426a8048 05-Oct-2011 Akira Hatanaka <ahatanaka@mips.com>

Make sure candidate for delay slot filler is not a return instruction.

llvm-svn: 141196


1234567