diff src/octave-value/ov.cc @ 15140:6ea86e1d0f5f

Support +=, -=, *=, ect. in JIT * pt-jit.cc (jit-convert::visit_simple_assignment): Support more assignment operators. * ov.cc (octave_value::assign_op_to_binary_op): New function. * ov.h (octave_value::assign_op_to_binary_op): New declaration.
author Max Brister <max@2bass.com>
date Fri, 10 Aug 2012 12:23:32 -0500
parents 46b19589b593
children
line wrap: on
line diff
--- a/src/octave-value/ov.cc	Thu Aug 09 16:44:14 2012 -0500
+++ b/src/octave-value/ov.cc	Fri Aug 10 12:23:32 2012 -0500
@@ -483,6 +483,45 @@
   return retval;
 }
 
+octave_value::binary_op
+octave_value::assign_op_to_binary_op (assign_op op)
+{
+  switch (op)
+    {
+    case op_add_eq:
+      return op_add;
+    case op_sub_eq:
+      return op_sub;
+    case op_mul_eq:
+      return op_mul;
+    case op_div_eq:
+      return op_div;
+    case op_ldiv_eq:
+      return op_ldiv;
+    case op_pow_eq:
+      return op_pow;
+    case op_lshift_eq:
+      return op_lshift;
+    case op_rshift_eq:
+      return op_rshift;
+    case op_el_mul_eq:
+      return op_el_mul;
+    case op_el_div_eq:
+      return op_el_div;
+    case op_el_ldiv_eq:
+      return op_el_ldiv;
+    case op_el_pow_eq:
+      return op_el_pow;
+    case op_el_and_eq:
+      return op_el_and;
+    case op_el_or_eq:
+      return op_el_or;
+    default:
+      return unknown_binary_op;
+    }
+
+}
+
 octave_value::assign_op
 octave_value::binary_op_to_assign_op (binary_op op)
 {