aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPekka Enberg <penberg@kernel.org>2012-08-17 12:45:07 +0300
committerPekka Enberg <penberg@kernel.org>2012-08-17 12:46:34 +0300
commit0ad3b910dd6e749441382cb3e4537b95a315556b (patch)
tree717af35adacfa2379c008b3587a82b6204f1f6b0
parent3c35348a83a87e68ce6f0447ffbbf2482bcb9e30 (diff)
downloadjato-0ad3b910dd6e749441382cb3e4537b95a315556b.tar.gz
jit: Move get_pure_expr() to jit/ostack-bc.c
Remove a dependency from the more generic jit/expression.c to a BC2IR specific function that depends on dup_expr(). This makes it easier to remove obsolete BC2IR test cases. Signed-off-by: Pekka Enberg <penberg@kernel.org>
-rw-r--r--jit/expression.c14
-rw-r--r--jit/ostack-bc.c14
2 files changed, 14 insertions, 14 deletions
diff --git a/jit/expression.c b/jit/expression.c
index 06f7dcd2..2f0365c1 100644
--- a/jit/expression.c
+++ b/jit/expression.c
@@ -19,20 +19,6 @@
#include <string.h>
#include <glib.h>
-/**
- * Returns a pure expression for given expression. If @expr is not
- * pure we need to save it's value to a temporary and return the
- * temporary.
- */
-struct expression *
-get_pure_expr(struct parse_context *ctx, struct expression *expr)
-{
- if (expr_is_pure(expr))
- return expr;
-
- return dup_expr(ctx, expr);
-}
-
/* How many child expressions are used by each type of expression. */
int expr_nr_kids(struct expression *expr)
{
diff --git a/jit/ostack-bc.c b/jit/ostack-bc.c
index 905aa7ab..b294b348 100644
--- a/jit/ostack-bc.c
+++ b/jit/ostack-bc.c
@@ -66,6 +66,20 @@ dup_expr(struct parse_context *ctx, struct expression *expr)
return dest;
}
+/**
+ * Returns a pure expression for given expression. If @expr is not
+ * pure we need to save it's value to a temporary and return the
+ * temporary.
+ */
+struct expression *
+get_pure_expr(struct parse_context *ctx, struct expression *expr)
+{
+ if (expr_is_pure(expr))
+ return expr;
+
+ return dup_expr(ctx, expr);
+}
+
static int __convert_dup(struct parse_context *ctx, struct expression *value)
{
struct expression *dup;