History log of /llvm-project/mlir/lib/IR/Operation.cpp (Results 251 – 275 of 306)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 5b9c3f7c 29-Dec-2018 Chris Lattner <clattner@google.com>

Tidy up references to "basic blocks" that should refer to blocks now. NFC.

PiperOrigin-RevId: 227196077


# 456ad6a8 29-Dec-2018 Chris Lattner <clattner@google.com>

Standardize naming of statements -> instructions, revisting the code base to be
consistent and moving the using declarations over. Hopefully this is the last
truly massive patch in this refactoring.

Standardize naming of statements -> instructions, revisting the code base to be
consistent and moving the using declarations over. Hopefully this is the last
truly massive patch in this refactoring.

This is step 21/n towards merging instructions and statements, NFC.

PiperOrigin-RevId: 227178245

show more ...


# 315a466a 28-Dec-2018 Chris Lattner <clattner@google.com>

Rename BasicBlock and StmtBlock to Block, and make a pass cleaning it up. I did not make an effort to rename all of the 'bb' names in the codebase, since they are still correct and any specific miss

Rename BasicBlock and StmtBlock to Block, and make a pass cleaning it up. I did not make an effort to rename all of the 'bb' names in the codebase, since they are still correct and any specific missed once can be fixed up on demand.

The last major renaming is Statement -> Instruction, which is why Statement and
Stmt still appears in various places.

This is step 19/n towards merging instructions and statements, NFC.

PiperOrigin-RevId: 227163082

show more ...


# d798f9ba 28-Dec-2018 Chris Lattner <clattner@google.com>

Rename BBArgument -> BlockArgument, Op::getOperation -> Op::getInst(),
StmtResult -> InstResult, StmtOperand -> InstOperand, and remove the old names.

This is step 17/n towards merging instructions

Rename BBArgument -> BlockArgument, Op::getOperation -> Op::getInst(),
StmtResult -> InstResult, StmtOperand -> InstOperand, and remove the old names.

This is step 17/n towards merging instructions and statements, NFC.

PiperOrigin-RevId: 227121537

show more ...


# 5187cfcf 28-Dec-2018 Chris Lattner <clattner@google.com>

Merge Operation into OperationInst and standardize nomenclature around
OperationInst. This is a big mechanical patch.

This is step 16/n towards merging instructions and statements, NFC.

PiperOrigi

Merge Operation into OperationInst and standardize nomenclature around
OperationInst. This is a big mechanical patch.

This is step 16/n towards merging instructions and statements, NFC.

PiperOrigin-RevId: 227093712

show more ...


# 471c9764 28-Dec-2018 Chris Lattner <clattner@google.com>

Rework inherentance hierarchy: Operation now derives from Statement, and
OperationInst derives from it. This allows eliminating some forwarding
functions, other complex code handling multiple paths,

Rework inherentance hierarchy: Operation now derives from Statement, and
OperationInst derives from it. This allows eliminating some forwarding
functions, other complex code handling multiple paths, and the 'isStatement'
bit tracked by Operation.

This is the last patch I think I can make before the big mechanical change
merging Operation into OperationInst, coming next.

This is step 15/n towards merging instructions and statements, NFC.

PiperOrigin-RevId: 227077411

show more ...


# 3f190312 27-Dec-2018 Chris Lattner <clattner@google.com>

Merge SSAValue, CFGValue, and MLValue together into a single Value class, which
is the new base of the SSA value hierarchy. This CL also standardizes all the
nomenclature and comments to use 'Value'

Merge SSAValue, CFGValue, and MLValue together into a single Value class, which
is the new base of the SSA value hierarchy. This CL also standardizes all the
nomenclature and comments to use 'Value' where appropriate. This also eliminates a large number of cast<MLValue>(x)'s, which is very soothing.

This is step 11/n towards merging instructions and statements, NFC.

PiperOrigin-RevId: 227064624

show more ...


# 776b0356 27-Dec-2018 Chris Lattner <clattner@google.com>

Eliminate the Instruction, BasicBlock, CFGFunction, MLFunction, and ExtFunction classes, using the Statement/StmtBlock hierarchy and Function instead.

This *only* changes the internal data structure

Eliminate the Instruction, BasicBlock, CFGFunction, MLFunction, and ExtFunction classes, using the Statement/StmtBlock hierarchy and Function instead.

This *only* changes the internal data structures, it does not affect the user visible syntax or structure of MLIR code. Function gets new "isCFG()" sorts of predicates as a transitional measure.

This patch is gross in a number of ways, largely in an effort to reduce the amount of mechanical churn in one go. It introduces a bunch of using decls to keep the old names alive for now, and a bunch of stuff needs to be renamed.

This is step 10/n towards merging instructions and statements, NFC.

PiperOrigin-RevId: 227044402

show more ...


# abf72a8b 27-Dec-2018 Chris Lattner <clattner@google.com>

Rename findFunction from the ML side of the house to be named getFunction(),
making it more similar to the CFG side of things. It is true that in a deeply
nested case that this is not a guaranteed O

Rename findFunction from the ML side of the house to be named getFunction(),
making it more similar to the CFG side of things. It is true that in a deeply
nested case that this is not a guaranteed O(1) time operation, and that 'get'
could lead compiler hackers to think this is cheap, but we need to merge these
and we can look into solutions for this in the future if it becomes a problem
in practice.

This is step 9/n towards merging instructions and statements, NFC.

PiperOrigin-RevId: 226983931

show more ...


# d613f5ab 26-Dec-2018 Chris Lattner <clattner@google.com>

Refactor MLFunction to contain a StmtBlock for its body instead of inheriting
from it. This is necessary progress to squaring away the parent relationship
that a StmtBlock has with its enclosing if/

Refactor MLFunction to contain a StmtBlock for its body instead of inheriting
from it. This is necessary progress to squaring away the parent relationship
that a StmtBlock has with its enclosing if/for/fn, and makes room for functions
to have more than one block in the future. This also removes IfClause and ForStmtBody.

This is step 5/n towards merging instructions and statements, NFC.

PiperOrigin-RevId: 226936541

show more ...


# 9a4060d3 26-Dec-2018 Chris Lattner <clattner@google.com>

Eliminate the ability to add operands to an instruction, used in a narrow case
for SSA values in terminators, but easily worked around. At the same time,
move the StmtOperand list in a OperationStmt

Eliminate the ability to add operands to an instruction, used in a narrow case
for SSA values in terminators, but easily worked around. At the same time,
move the StmtOperand list in a OperationStmt to the end of its trailing
objects list so we can *reduce* the number of operands, without affecting
offsets to the other stuff in the allocation.

This is important because we want OperationStmts to be consequtive, including
their operands - we don't want to use an std::vector of operands like
Instructions have.

This is patch 4/n towards merging instructions and statements, NFC.

PiperOrigin-RevId: 226865727

show more ...


Revision tags: llvmorg-7.0.1, llvmorg-7.0.1-rc3
# adca59e4 07-Dec-2018 Smit Hinsu <hinsu@google.com>

Return bool from all emitError methods similar to Operation::emitOpError

This simplifies call-sites returning true after emitting an error. After the
conversion, dropped braces around single stateme

Return bool from all emitError methods similar to Operation::emitOpError

This simplifies call-sites returning true after emitting an error. After the
conversion, dropped braces around single statement blocks as that seems more
common.

Also, switched to emitError method instead of emitting Error kind using the
emitDiagnostic method.

TESTED with existing unit tests

PiperOrigin-RevId: 224527868

show more ...


# b5723228 05-Dec-2018 Lei Zhang <antiagainst@google.com>

Add isIntOrIndex() and isIntOrIndexOrFloat() into Type

The checks for `isa<IndexType>() || isa<IntegerType>()` and
`isa<IndexType>() || isa<IntegerType>() || isa<FloatType>()`
are frequently used, s

Add isIntOrIndex() and isIntOrIndexOrFloat() into Type

The checks for `isa<IndexType>() || isa<IntegerType>()` and
`isa<IndexType>() || isa<IntegerType>() || isa<FloatType>()`
are frequently used, so it's useful to have some helper
methods for them.

PiperOrigin-RevId: 224133596

show more ...


# 1f5330ac 28-Nov-2018 Lei Zhang <antiagainst@google.com>

Verify CmpIOp's result type to be bool-like

This CL added two new traits, SameOperandsAndResultShape and
ResultsAreBoolLike, and changed CmpIOp to embody these two
traits. As a consequence, CmpIOp's

Verify CmpIOp's result type to be bool-like

This CL added two new traits, SameOperandsAndResultShape and
ResultsAreBoolLike, and changed CmpIOp to embody these two
traits. As a consequence, CmpIOp's result type now is verified
to be bool-like.

PiperOrigin-RevId: 223208438

show more ...


# 759fd1c6 27-Nov-2018 River Riddle <riverriddle@google.com>

Add support for setting the location of an IROperandOwner.

PiperOrigin-RevId: 222995814


# a9d3e5ee 20-Nov-2018 Feng Liu <fengliuai@google.com>

Adds ConstantFoldHook registry in MLIRContext

This reverts the previous method which needs to create a new dialect with the
constant fold hook from TensorFlow. This new method uses a function object

Adds ConstantFoldHook registry in MLIRContext

This reverts the previous method which needs to create a new dialect with the
constant fold hook from TensorFlow. This new method uses a function object in
dialect to store the constant fold hook. Once a hook is registered to the
dialect, this function object will be assigned when the dialect is added to the
MLIRContext.

For the operations which are not registered, a new method getRegisteredDialects
is added to the MLIRContext to query the dialects which matches their op name
prefixes.

PiperOrigin-RevId: 222310149

show more ...


# 5041e13c 20-Nov-2018 River Riddle <riverriddle@google.com>

Add functionality for erasing terminator successor operands and basic block arguments.

PiperOrigin-RevId: 222303233


# d63ab4b4 20-Nov-2018 River Riddle <riverriddle@google.com>

Add support for Operation::moveBefore(Operation *).

PiperOrigin-RevId: 222252521


# 8b6bc09f 16-Nov-2018 River Riddle <riverriddle@google.com>

Merge OperationInst functionality into Instruction.

We do some limited renaming here but define an alias for OperationInst so that a follow up cl can solely perform the large scale renaming.

PiperO

Merge OperationInst functionality into Instruction.

We do some limited renaming here but define an alias for OperationInst so that a follow up cl can solely perform the large scale renaming.

PiperOrigin-RevId: 221726963

show more ...


# c7df0651 15-Nov-2018 River Riddle <riverriddle@google.com>

[MLIR] Merge terminator and uses into BasicBlock operations list handling.

PiperOrigin-RevId: 221700132


# 503caf07 15-Nov-2018 River Riddle <riverriddle@google.com>

Replace TerminatorInst with builtin terminator operations.

Note: Terminators will be merged into the operations list in a follow up patch.
PiperOrigin-RevId: 221670037


# de828dd2 15-Nov-2018 River Riddle <riverriddle@google.com>

Fix variables only used in assertions.

PiperOrigin-RevId: 221660580


# 1807ba3c 15-Nov-2018 River Riddle <riverriddle@google.com>

Add functionality for parsing/managing operation terminator successors.

Follow up patches will work to remove TerminatorInst.

PiperOrigin-RevId: 221640621


# 8659f3fa 13-Nov-2018 River Riddle <riverriddle@google.com>

Start the plumbing for removing TerminatorInst.
* Add skeleton br/cond_br builtin ops.
* Add a terminator trait for operations.
* Mark ReturnOp as a Terminator.

The functionality for managing/parsin

Start the plumbing for removing TerminatorInst.
* Add skeleton br/cond_br builtin ops.
* Add a terminator trait for operations.
* Mark ReturnOp as a Terminator.

The functionality for managing/parsing/verifying successors will be added in a follow up cl.

PiperOrigin-RevId: 221283000

show more ...


# f8f723cf 09-Nov-2018 Feng Liu <fengliuai@google.com>

Falls back to dialect constant folding hook

PiperOrigin-RevId: 220861133


1...<<111213