AMDGPU: Implement AMDGPUOperand::print()
authorMatt Arsenault <Matthew.Arsenault@amd.com>
Sat, 8 Aug 2015 00:41:51 +0000 (00:41 +0000)
committerMatt Arsenault <Matthew.Arsenault@amd.com>
Sat, 8 Aug 2015 00:41:51 +0000 (00:41 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@244381 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp

index 0ea3d1e715210adeca1f42f01bda62895b82e128..df6f396a403f3f2154a81183b2e0381877f07fd8 100644 (file)
@@ -251,7 +251,22 @@ public:
     return EndLoc;
   }
 
-  void print(raw_ostream &OS) const override { }
+  void print(raw_ostream &OS) const override {
+    switch (Kind) {
+    case Register:
+      OS << "<register " << getReg() << '>';
+      break;
+    case Immediate:
+      OS << getImm();
+      break;
+    case Token:
+      OS << '\'' << getToken() << '\'';
+      break;
+    case Expression:
+      OS << "<expr " << *Expr << '>';
+      break;
+    }
+  }
 
   static std::unique_ptr<AMDGPUOperand> CreateImm(int64_t Val, SMLoc Loc,
                                                   enum ImmTy Type = ImmTyNone,