aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
diff options
context:
space:
mode:
authorAndrew Litteken <andrew_litteken@apple.com>2020-09-16 20:24:29 -0500
committerAndrew Litteken <andrew_litteken@apple.com>2020-09-16 20:49:21 -0500
commitb04c1a9d3127730c05e8a22a0e931a12a39528df (patch)
tree925559d56132dd736a658385612983b0ac69406e /llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
parentf4ea0f98142a97666cd0478757570e819923a829 (diff)
downloadllvm-b04c1a9d3127730c05e8a22a0e931a12a39528df.zip
llvm-b04c1a9d3127730c05e8a22a0e931a12a39528df.tar.gz
llvm-b04c1a9d3127730c05e8a22a0e931a12a39528df.tar.bz2
[IRSim] Adding IR Instruction Mapper
This introduces the IRInstructionMapper, and the associated wrapper for instructions, IRInstructionData, that maps IR level Instructions to unsigned integers. Mapping is done mainly by using the "isSameOperationAs" comparison between two instructions. If they return true, the opcode, result type, and operand types of the instruction are used to hash the instruction with an unsigned integer. The mapper accepts instruction ranges, and adds each resulting integer to a list, and each wrapped instruction to a separate list. At present, branches, phi nodes are not mapping and exception handling is illegal. Debug instructions are not considered. The different mapping schemes are tested in unittests/Analysis/IRSimilarityIdentifierTest.cpp Differential Revision: https://reviews.llvm.org/D86968
Diffstat (limited to 'llvm/lib/Bitcode/Writer/BitcodeWriter.cpp')
0 files changed, 0 insertions, 0 deletions