| OLD | NEW | 
|---|
| 1 //===- subzero/src/IceInstX8632.cpp - X86-32 instruction implementation ---===// | 1 //===- subzero/src/IceInstX8632.cpp - X86-32 instruction implementation ---===// | 
| 2 // | 2 // | 
| 3 //                        The Subzero Code Generator | 3 //                        The Subzero Code Generator | 
| 4 // | 4 // | 
| 5 // This file is distributed under the University of Illinois Open Source | 5 // This file is distributed under the University of Illinois Open Source | 
| 6 // License. See LICENSE.TXT for details. | 6 // License. See LICENSE.TXT for details. | 
| 7 // | 7 // | 
| 8 //===----------------------------------------------------------------------===// | 8 //===----------------------------------------------------------------------===// | 
| 9 /// | 9 /// | 
| 10 /// \file | 10 /// \file | 
| (...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 182     if (getBase()) | 182     if (getBase()) | 
| 183       Str << "+"; | 183       Str << "+"; | 
| 184     if (getShift() > 0) | 184     if (getShift() > 0) | 
| 185       Str << (1u << getShift()) << "*"; | 185       Str << (1u << getShift()) << "*"; | 
| 186     if (Func) | 186     if (Func) | 
| 187       getIndex()->dump(Func); | 187       getIndex()->dump(Func); | 
| 188     else | 188     else | 
| 189       getIndex()->dump(Str); | 189       getIndex()->dump(Str); | 
| 190     Dumped = true; | 190     Dumped = true; | 
| 191   } | 191   } | 
|  | 192   if (Disp) { | 
|  | 193     if (Disp > 0) | 
|  | 194       Str << "+"; | 
|  | 195     Str << Disp; | 
|  | 196     Dumped = true; | 
|  | 197   } | 
| 192   // Pretty-print the Offset. | 198   // Pretty-print the Offset. | 
| 193   bool OffsetIsZero = false; | 199   bool OffsetIsZero = false; | 
| 194   bool OffsetIsNegative = false; | 200   bool OffsetIsNegative = false; | 
| 195   if (getOffset() == 0 && Disp == 0) { | 201   if (getOffset() == nullptr) { | 
| 196     OffsetIsZero = true; | 202     OffsetIsZero = true; | 
| 197   } else if (getOffset() == 0 && Disp != 0) { |  | 
| 198     OffsetIsZero = (Disp == 0); |  | 
| 199     OffsetIsNegative = (Disp < 0); |  | 
| 200   } else if (const auto *CI = llvm::dyn_cast<ConstantInteger32>(getOffset())) { | 203   } else if (const auto *CI = llvm::dyn_cast<ConstantInteger32>(getOffset())) { | 
| 201     OffsetIsZero = (CI->getValue() + Disp == 0); | 204     OffsetIsZero = (CI->getValue() == 0); | 
| 202     OffsetIsNegative = (static_cast<int32_t>(CI->getValue()) + Disp < 0); | 205     OffsetIsNegative = (static_cast<int32_t>(CI->getValue()) < 0); | 
| 203   } else { | 206   } else { | 
| 204     assert(llvm::isa<ConstantRelocatable>(getOffset()) && Disp == 0); | 207     assert(llvm::isa<ConstantRelocatable>(getOffset())); | 
| 205   } | 208   } | 
| 206   if (Dumped) { | 209   if (Dumped) { | 
| 207     if (!OffsetIsZero) {     // Suppress if Offset is known to be 0 | 210     if (!OffsetIsZero) {     // Suppress if Offset is known to be 0 | 
| 208       if (!OffsetIsNegative) // Suppress if Offset is known to be negative | 211       if (!OffsetIsNegative) // Suppress if Offset is known to be negative | 
| 209         Str << "+"; | 212         Str << "+"; | 
| 210       getOffset()->dump(Func, Str); | 213       getOffset()->dump(Func, Str); | 
| 211     } | 214     } | 
| 212   } else { | 215   } else { | 
| 213     // There is only the offset. | 216     // There is only the offset. | 
| 214     getOffset()->dump(Func, Str); | 217     getOffset()->dump(Func, Str); | 
| (...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 314     Var->dump(Func); | 317     Var->dump(Func); | 
| 315   else | 318   else | 
| 316     Var->dump(Str); | 319     Var->dump(Str); | 
| 317   Str << ")"; | 320   Str << ")"; | 
| 318 } | 321 } | 
| 319 | 322 | 
| 320 } // namespace X86Internal | 323 } // namespace X86Internal | 
| 321 } // end of namespace Ice | 324 } // end of namespace Ice | 
| 322 | 325 | 
| 323 X86INSTS_DEFINE_STATIC_DATA(TargetX8632) | 326 X86INSTS_DEFINE_STATIC_DATA(TargetX8632) | 
| OLD | NEW | 
|---|