Author: zoltan
Date: 2005-04-15 18:21:35 -0400 (Fri, 15 Apr 2005)
New Revision: 43084

Modified:
   branches/vargaz/mini-xp-local-regalloc/mono/mono/mini/ChangeLog
   branches/vargaz/mini-xp-local-regalloc/mono/mono/mini/mini-amd64.c
   branches/vargaz/mini-xp-local-regalloc/mono/mono/mini/mini-amd64.h
   branches/vargaz/mini-xp-local-regalloc/mono/mono/mini/mini-codegen.c
Log:
2005-04-16  Zoltan Varga  <[EMAIL PROTECTED]>

        * mini-codegen.c (alloc_int_reg): Fix bug in preferred register
        allocation.

        * mini-amd64.c (mono_arch_emit_this_vret_args): Fix warning.

        * mini-amd64.h (MONO_ARCH_INST_IS_REGPAIR_REG2): Add macros needed
        by the new allocator.


Modified: branches/vargaz/mini-xp-local-regalloc/mono/mono/mini/ChangeLog
===================================================================
--- branches/vargaz/mini-xp-local-regalloc/mono/mono/mini/ChangeLog     
2005-04-15 21:56:41 UTC (rev 43083)
+++ branches/vargaz/mini-xp-local-regalloc/mono/mono/mini/ChangeLog     
2005-04-15 22:21:35 UTC (rev 43084)
@@ -1,5 +1,15 @@
+2005-04-16  Zoltan Varga  <[EMAIL PROTECTED]>
+
+       * mini-codegen.c (alloc_int_reg): Fix bug in preferred register
+       allocation.
+
+       * mini-amd64.c (mono_arch_emit_this_vret_args): Fix warning.
+
+       * mini-amd64.h (MONO_ARCH_INST_IS_REGPAIR_REG2): Add macros needed
+       by the new allocator.
+
 2005-04-15  Zoltan Varga  <[EMAIL PROTECTED]>
-
+       
        * linear-scan.c (mono_linear_scan): Only enable the temporary->regvar
        optimization if using the new allocator.
 

Modified: branches/vargaz/mini-xp-local-regalloc/mono/mono/mini/mini-amd64.c
===================================================================
--- branches/vargaz/mini-xp-local-regalloc/mono/mono/mini/mini-amd64.c  
2005-04-15 21:56:41 UTC (rev 43083)
+++ branches/vargaz/mini-xp-local-regalloc/mono/mono/mini/mini-amd64.c  
2005-04-15 22:21:35 UTC (rev 43084)
@@ -4660,7 +4660,6 @@
 {
        MonoCallInst *call = (MonoCallInst*)inst;
        int out_reg = param_regs [0];
-       guint64 regpair;
 
        if (vt_reg != -1) {
                CallInfo * cinfo = get_call_info (inst->signature, FALSE);

Modified: branches/vargaz/mini-xp-local-regalloc/mono/mono/mini/mini-amd64.h
===================================================================
--- branches/vargaz/mini-xp-local-regalloc/mono/mono/mini/mini-amd64.h  
2005-04-15 21:56:41 UTC (rev 43083)
+++ branches/vargaz/mini-xp-local-regalloc/mono/mono/mini/mini-amd64.h  
2005-04-15 22:21:35 UTC (rev 43084)
@@ -87,7 +87,7 @@
 #define MONO_ARCH_CALLEE_SAVED_REGS AMD64_CALLEE_SAVED_REGS
 
 /* Setting this to FALSE means using SSE2 instructions for fp arithmetic */
-#define MONO_ARCH_USE_FPSTACK FALSE
+#define MONO_ARCH_USE_FPSTACK TRUE
 #define MONO_ARCH_FPSTACK_SIZE 6
 
 #define MONO_ARCH_INST_FIXED_REG(desc) ((desc == 's') ? AMD64_RCX : ((desc == 
'a') ? AMD64_RAX : ((desc == 'd') ? AMD64_RDX : -1)))
@@ -96,6 +96,7 @@
 #define MONO_ARCH_INST_SREG2_MASK(ins) (((ins [MONO_INST_CLOB] == 'a') || (ins 
[MONO_INST_CLOB] == 'd')) ? (1 << AMD64_RDX) : 0)
 
 #define MONO_ARCH_INST_IS_REGPAIR(desc) FALSE
+#define MONO_ARCH_INST_IS_REGPAIR_REG2(desc,hreg1) (-1)
 
 #define MONO_ARCH_FRAME_ALIGNMENT 16
 

Modified: branches/vargaz/mini-xp-local-regalloc/mono/mono/mini/mini-codegen.c
===================================================================
--- branches/vargaz/mini-xp-local-regalloc/mono/mono/mini/mini-codegen.c        
2005-04-15 21:56:41 UTC (rev 43083)
+++ branches/vargaz/mini-xp-local-regalloc/mono/mono/mini/mini-codegen.c        
2005-04-15 22:21:35 UTC (rev 43084)
@@ -483,7 +483,7 @@
        int val;
 
        if (info && info->preferred_mask) {
-               val = mono_regstate_alloc_int (cfg->rs, info->preferred_mask);
+               val = mono_regstate_alloc_int (cfg->rs, info->preferred_mask & 
dest_mask);
                if (val >= 0) {
                        DEBUG (g_print ("\tallocated preferred reg R%d to 
%s\n", sym_reg, mono_arch_regname (val)));
                        return val;

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to