Lines Matching defs:operand

51 std::ostream& operator<<(std::ostream& os, const Operand& operand) {
52 if (operand.IsImmediate()) {
53 return os << "#" << operand.GetImmediate();
55 if (operand.IsImmediateShiftedRegister()) {
56 if ((operand.GetShift().IsLSL() || operand.GetShift().IsROR()) &&
57 (operand.GetShiftAmount() == 0)) {
58 return os << operand.GetBaseRegister();
60 if (operand.GetShift().IsRRX()) {
61 return os << operand.GetBaseRegister() << ", rrx";
63 return os << operand.GetBaseRegister() << ", " << operand.GetShift() << " #"
64 << operand.GetShiftAmount();
66 if (operand.IsRegisterShiftedRegister()) {
67 return os << operand.GetBaseRegister() << ", " << operand.GetShift() << " "
68 << operand.GetShiftRegister();
100 std::ostream& operator<<(std::ostream& os, const SOperand& operand) {
101 if (operand.IsImmediate()) {
102 return os << operand.GetNeonImmediate();
104 return os << operand.GetRegister();
109 std::ostream& operator<<(std::ostream& os, const DOperand& operand) {
110 if (operand.IsImmediate()) {
111 return os << operand.GetNeonImmediate();
113 return os << operand.GetRegister();
118 std::ostream& operator<<(std::ostream& os, const QOperand& operand) {
119 if (operand.IsImmediate()) {
120 return os << operand.GetNeonImmediate();
122 return os << operand.GetRegister();
518 std::ostream& operator<<(std::ostream& os, const MemOperand& operand) {
519 os << "[" << operand.GetBaseRegister();
520 if (operand.GetAddrMode() == PostIndex) {
522 if (operand.IsRegisterOnly()) return os << "!";
524 if (operand.IsImmediate()) {
525 if ((operand.GetOffsetImmediate() != 0) || operand.GetSign().IsMinus() ||
526 ((operand.GetAddrMode() != Offset) && !operand.IsRegisterOnly())) {
527 if (operand.GetOffsetImmediate() == 0) {
528 os << ", #" << operand.GetSign() << operand.GetOffsetImmediate();
530 os << ", #" << operand.GetOffsetImmediate();
533 } else if (operand.IsPlainRegister()) {
534 os << ", " << operand.GetSign() << operand.GetOffsetRegister();
535 } else if (operand.IsShiftedRegister()) {
536 os << ", " << operand.GetSign() << operand.GetOffsetRegister()
537 << ImmediateShiftOperand(operand.GetShift(), operand.GetShiftAmount());
542 if (operand.GetAddrMode() == Offset) {
544 } else if (operand.GetAddrMode() == PreIndex) {
550 std::ostream& operator<<(std::ostream& os, const AlignedMemOperand& operand) {
551 os << "[" << operand.GetBaseRegister() << operand.GetAlignment() << "]";
552 if (operand.GetAddrMode() == PostIndex) {
553 if (operand.IsPlainRegister()) {
554 os << ", " << operand.GetOffsetRegister();