nv50/ir: print function inputs and outputs
authorChristoph Bumiller <e0425955@student.tuwien.ac.at>
Wed, 27 Feb 2013 20:02:29 +0000 (21:02 +0100)
committerChristoph Bumiller <e0425955@student.tuwien.ac.at>
Tue, 12 Mar 2013 11:55:36 +0000 (12:55 +0100)
src/gallium/drivers/nv50/codegen/nv50_ir_print.cpp

index a2b61104f6fbc22e16f6c258371aa4b2b4c3a65c..1c3b768259a380f215a0bca1503e4a4c62d44d72 100644 (file)
@@ -602,7 +602,28 @@ private:
 bool
 PrintPass::visit(Function *fn)
 {
-   INFO("\n%s:%i\n", fn->getName(), fn->getLabel());
+   char str[16];
+
+   INFO("\n%s:%i (", fn->getName(), fn->getLabel());
+
+   if (!fn->outs.empty())
+      INFO("out");
+   for (std::deque<ValueRef>::iterator it = fn->outs.begin();
+        it != fn->outs.end();
+        ++it) {
+      it->get()->print(str, sizeof(str), typeOfSize(it->get()->reg.size));
+      INFO(" %s", str);
+   }
+
+   if (!fn->ins.empty())
+      INFO("%s%sin", colour[TXT_DEFAULT], fn->outs.empty() ? "" : ", ");
+   for (std::deque<ValueDef>::iterator it = fn->ins.begin();
+        it != fn->ins.end();
+        ++it) {
+      it->get()->print(str, sizeof(str), typeOfSize(it->get()->reg.size));
+      INFO(" %s", str);
+   }
+   INFO("%s)\n", colour[TXT_DEFAULT]);
 
    return true;
 }