On Fri, Sep 21, 2012 at 04:22:53PM -0700, Richard Henderson wrote:
On 09/21/2012 12:43 PM, Aurelien Jarno wrote:
+tmp = ((1ull args[4]) - 1);
+tmp = (temps[args[1]].val ~(tmp args[3]))
+ | ((temps[args[2]].val tmp) args[3]);
+
On 2012-09-22 02:41, Aurelien Jarno wrote:
On Fri, Sep 21, 2012 at 04:22:53PM -0700, Richard Henderson wrote:
On 09/21/2012 12:43 PM, Aurelien Jarno wrote:
+tmp = ((1ull args[4]) - 1);
+tmp = (temps[args[1]].val ~(tmp args[3]))
+ |
On Sat, Sep 22, 2012 at 9:41 AM, Aurelien Jarno aurel...@aurel32.net wrote:
On Fri, Sep 21, 2012 at 04:22:53PM -0700, Richard Henderson wrote:
On 09/21/2012 12:43 PM, Aurelien Jarno wrote:
+tmp = ((1ull args[4]) - 1);
+tmp = (temps[args[1]].val ~(tmp
Signed-off-by: Aurelien Jarno aurel...@aurel32.net
---
tcg/optimize.c | 20
1 file changed, 20 insertions(+)
diff --git a/tcg/optimize.c b/tcg/optimize.c
index c8ae50b..35532a1 100644
--- a/tcg/optimize.c
+++ b/tcg/optimize.c
@@ -668,6 +668,26 @@ static TCGArg
On 09/21/2012 12:43 PM, Aurelien Jarno wrote:
+tmp = ((1ull args[4]) - 1);
+tmp = (temps[args[1]].val ~(tmp args[3]))
+ | ((temps[args[2]].val tmp) args[3]);
+tcg_opt_gen_movi(gen_args, args[0], tmp);
We do have a