From d0b5c65b16507d10962d4a4c228b755fdcc6d827 Mon Sep 17 00:00:00 2001 From: Akira Hatanaka Date: Wed, 28 Mar 2012 00:21:37 +0000 Subject: [PATCH] Mark flag neverHasSideEffects of pattern-less instructions that do not have any side effects. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153551 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/Mips/MipsInstrInfo.td | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lib/Target/Mips/MipsInstrInfo.td b/lib/Target/Mips/MipsInstrInfo.td index bc85fa675d4..96f43313b65 100644 --- a/lib/Target/Mips/MipsInstrInfo.td +++ b/lib/Target/Mips/MipsInstrInfo.td @@ -365,6 +365,7 @@ class LoadUpper op, string instr_asm, RegisterClass RC, Operand Imm>: FI { let rs = 0; + let neverHasSideEffects = 1; } class FMem op, dag outs, dag ins, string asmstr, list pattern, @@ -555,6 +556,7 @@ class Mult func, string instr_asm, InstrItinClass itin, let shamt = 0; let isCommutable = 1; let Defs = DefRegs; + let neverHasSideEffects = 1; } class Mult32 func, string instr_asm, InstrItinClass itin>: @@ -582,6 +584,7 @@ class MoveFromLOHI func, string instr_asm, RegisterClass RC, let rt = 0; let shamt = 0; let Uses = UseRegs; + let neverHasSideEffects = 1; } class MoveToLOHI func, string instr_asm, RegisterClass RC, @@ -592,6 +595,7 @@ class MoveToLOHI func, string instr_asm, RegisterClass RC, let rd = 0; let shamt = 0; let Defs = DefRegs; + let neverHasSideEffects = 1; } class EffectiveAddress : @@ -635,6 +639,7 @@ class SubwordSwap func, bits<5> sa, string instr_asm, RegisterClass RC>: let rs = 0; let shamt = sa; let Predicates = [HasSwap]; + let neverHasSideEffects = 1; } // Read Hardware