mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-13 04:30:23 +00:00
Implement checking for new instructions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
8b9f7c0a65
commit
0bd654a049
@ -25,7 +25,7 @@
|
||||
#include "llvm/iOther.h"
|
||||
#include "llvm/iTerminators.h"
|
||||
#include "llvm/Tools/STLExtras.h"
|
||||
//#include "llvm/Assembly/Writer.h"
|
||||
#include "llvm/Assembly/Writer.h"
|
||||
#include <algorithm>
|
||||
#include <map>
|
||||
#include <set>
|
||||
@ -430,7 +430,7 @@ void SCCP::UpdateInstruction(Instruction *I) {
|
||||
//===-------------------------------------------------------------------===//
|
||||
// Handle Unary instructions...
|
||||
//
|
||||
if (I->isUnaryOp()) {
|
||||
if (I->isUnaryOp() || I->getOpcode() == Instruction::Cast) {
|
||||
Value *V = I->getOperand(0);
|
||||
InstVal &VState = getValueState(V);
|
||||
if (VState.isOverdefined()) { // Inherit overdefinedness of operand
|
||||
@ -456,7 +456,8 @@ void SCCP::UpdateInstruction(Instruction *I) {
|
||||
//===-----------------------------------------------------------------===//
|
||||
// Handle Binary instructions...
|
||||
//
|
||||
if (I->isBinaryOp()) {
|
||||
if (I->isBinaryOp() || I->getOpcode() == Instruction::Shl ||
|
||||
I->getOpcode() == Instruction::Shr) {
|
||||
Value *V1 = I->getOperand(0);
|
||||
Value *V2 = I->getOperand(1);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user