Lines Matching defs:ER
352 bool operator==(const ExtRoot &ER) const {
353 return Kind == ER.Kind && V.ImmVal == ER.V.ImmVal;
355 bool operator!=(const ExtRoot &ER) const {
356 return !operator==(ER);
358 bool operator<(const ExtRoot &ER) const;
366 ExtValue(const ExtRoot &ER, int32_t Off) : ExtRoot(ER), Offset(Off) {}
401 void assignInits(const ExtRoot &ER, unsigned Begin, unsigned End,
427 friend raw_ostream &operator<< (raw_ostream &OS, const ExtRoot &ER);
510 raw_ostream &operator<< (raw_ostream &OS, const HCE::ExtRoot &ER) {
511 switch (ER.Kind) {
513 OS << "imm:" << ER.V.ImmVal;
516 OS << "fpi:" << *ER.V.CFP;
519 OS << "sym:" << *ER.V.SymbolName;
522 OS << "gad:" << ER.V.GV->getName();
525 OS << "blk:" << *ER.V.BA;
528 OS << "tgi:" << ER.V.ImmVal;
531 OS << "cpi:" << ER.V.ImmVal;
534 OS << "jti:" << ER.V.ImmVal;
537 OS << "???:" << ER.V.ImmVal;
719 bool HCE::ExtRoot::operator< (const HCE::ExtRoot &ER) const {
720 if (Kind != ER.Kind)
721 return Kind < ER.Kind;
727 return V.ImmVal < ER.V.ImmVal;
730 const APFloat &OtherF = ER.V.CFP->getValueAPF();
734 return StringRef(V.SymbolName) < StringRef(ER.V.SymbolName);
740 assert(!V.GV->getName().empty() && !ER.V.GV->getName().empty());
741 return V.GV->getName() < ER.V.GV->getName();
744 const BasicBlock *OtherB = ER.V.BA->getBasicBlock();
751 return V.ImmVal < ER.V.ImmVal;
767 const ExtRoot &ER = *this;
768 if (!(ER == ExtRoot(EV)))
769 return ER < EV;
1222 ExtRoot ER(ED.getOp());
1223 if (ER.Kind == MachineOperand::MO_GlobalAddress)
1224 if (ER.V.GV->getName().empty())
1227 if (ER.Kind == MachineOperand::MO_BlockAddress)
1228 if (ER.V.BA->getFunction() != &(MI.getMF()->getFunction()))
1261 void HCE::assignInits(const ExtRoot &ER, unsigned Begin, unsigned End,
1264 // share the same root ER.
1266 assert(ER == ExtRoot(Extenders[I].getOp()));
1269 // a register Reg = ER+P can be used in place of Extender[I]. If the
1400 ExtValue BestV(ER, Best);