summaryrefslogtreecommitdiff
path: root/ir_print_visitor.cpp
diff options
context:
space:
mode:
authorIan Romanick <ian.d.romanick@intel.com>2010-03-19 16:44:52 -0700
committerIan Romanick <ian.d.romanick@intel.com>2010-03-19 16:44:52 -0700
commit9578c87ce23a98472d52f15b0a7063f4df036c4d (patch)
tree324d084fab5fcdc5cc1901015ac91786f3a758e0 /ir_print_visitor.cpp
parent3359e58eac19dd7771a78310c8a0e3d3ded55063 (diff)
Implement IR return instructions
Diffstat (limited to 'ir_print_visitor.cpp')
-rw-r--r--ir_print_visitor.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/ir_print_visitor.cpp b/ir_print_visitor.cpp
index b1c718d..f9f3d3f 100644
--- a/ir_print_visitor.cpp
+++ b/ir_print_visitor.cpp
@@ -142,3 +142,18 @@ ir_print_visitor::visit(ir_call *ir)
printf("(call FINISHME: function name here\n");
printf(" (FINISHME: function paramaters here))\n");
}
+
+
+void
+ir_print_visitor::visit(ir_return *ir)
+{
+ printf("(return");
+
+ ir_expression *const value = ir->get_value();
+ if (value) {
+ printf(" ");
+ value->accept(this);
+ }
+
+ printf(")\n");
+}