summary refs log tree commit diff stats
path: root/target/openrisc/helper.h
diff options
context:
space:
mode:
authorRichard Henderson <rth@twiddle.net>2015-04-07 13:31:50 -0700
committerRichard Henderson <rth@twiddle.net>2017-02-14 08:14:59 +1100
commit9ecaa27e7123211f45ca723a736ffae14f6c1f42 (patch)
treec8bf8f3ba1f9c636c86ad110c9269425dc82f734 /target/openrisc/helper.h
parent6da544a6c4572ed11931218e940f45d00b1fe3a7 (diff)
downloadfocaccia-qemu-9ecaa27e7123211f45ca723a736ffae14f6c1f42.tar.gz
focaccia-qemu-9ecaa27e7123211f45ca723a736ffae14f6c1f42.zip
target/openrisc: Streamline arithmetic and OVE
Fix incorrect overflow calculation.  Move overflow exception check
to a helper function, to eliminate inline branches.  Remove some
incorrect special casing of R0.  Implement multiply inline.

Reviewed-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
Signed-off-by: Richard Henderson <rth@twiddle.net>
Diffstat (limited to 'target/openrisc/helper.h')
-rw-r--r--target/openrisc/helper.h4
1 files changed, 1 insertions, 3 deletions
diff --git a/target/openrisc/helper.h b/target/openrisc/helper.h
index bcc7245fc3..c2c8098243 100644
--- a/target/openrisc/helper.h
+++ b/target/openrisc/helper.h
@@ -19,6 +19,7 @@
 
 /* exception */
 DEF_HELPER_FLAGS_2(exception, 0, void, env, i32)
+DEF_HELPER_FLAGS_2(ove, TCG_CALL_NO_WG, void, env, tl)
 
 /* float */
 DEF_HELPER_FLAGS_2(itofd, 0, i64, env, i64)
@@ -53,9 +54,6 @@ FOP_CMP(gt)
 FOP_CMP(ge)
 #undef FOP_CMP
 
-/* int */
-DEF_HELPER_FLAGS_3(mul32, 0, i32, env, i32, i32)
-
 /* interrupt */
 DEF_HELPER_FLAGS_1(rfe, 0, void, env)