Infrastructure for MEM tracking

Richard Kenner kenner@vlsi1.ultra.nyu.edu
Mon Oct 1 06:25:00 GMT 2001


    This breaks the bootstrap for i686.

    > 	(MEM_ALIAS_SET): Use MEM_ATTRS.

Sorry.  I though I'd gotten all of them, but apparently some more snuck
back.  Fixed this way:

Mon Oct  1 09:26:41 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>

	* config/i386/i386.c (ix86_va_arg): Call set_mem_alias_set.
	(ix86_setup_incoming_varargs): Likewise.

*** config/i386/i386.c	2001/09/29 16:33:18	1.312
--- config/i386/i386.c	2001/10/01 13:20:15
*************** ix86_setup_incoming_varargs (cum, mode, 
*** 2174,2178 ****
        mem = gen_rtx_MEM (Pmode,
  			 plus_constant (save_area, i * UNITS_PER_WORD));
!       MEM_ALIAS_SET (mem) = set;
        emit_move_insn (mem, gen_rtx_REG (Pmode,
  					x86_64_int_parameter_registers[i]));
--- 2174,2178 ----
        mem = gen_rtx_MEM (Pmode,
  			 plus_constant (save_area, i * UNITS_PER_WORD));
!       set_mem_alias_set (mem, set);
        emit_move_insn (mem, gen_rtx_REG (Pmode,
  					x86_64_int_parameter_registers[i]));
*************** ix86_setup_incoming_varargs (cum, mode, 
*** 2215,2219 ****
  			     plus_constant (save_area, 8 * REGPARM_MAX + 127)));
        mem = gen_rtx_MEM (BLKmode, plus_constant (tmp_reg, -127));
!       MEM_ALIAS_SET (mem) = set;
  
        /* And finally do the dirty job!  */
--- 2215,2219 ----
  			     plus_constant (save_area, 8 * REGPARM_MAX + 127)));
        mem = gen_rtx_MEM (BLKmode, plus_constant (tmp_reg, -127));
!       set_mem_alias_set(mem, set);
  
        /* And finally do the dirty job!  */
*************** ix86_va_arg (valist, type)
*** 2427,2431 ****
  
  	  mem = assign_temp (type, 0, 1, 0);
! 	  MEM_ALIAS_SET (mem) = get_varargs_alias_set ();
  	  addr_rtx = XEXP (mem, 0);
  	  for (i = 0; i < XVECLEN (container, 0); i++)
--- 2427,2431 ----
  
  	  mem = assign_temp (type, 0, 1, 0);
! 	  set_mem_alias_set (mem, get_varargs_alias_set ());
  	  addr_rtx = XEXP (mem, 0);
  	  for (i = 0; i < XVECLEN (container, 0); i++)
*************** ix86_va_arg (valist, type)
*** 2450,2454 ****
  		}
  	      src_mem = gen_rtx_MEM (mode, src_addr);
! 	      MEM_ALIAS_SET (src_mem) = get_varargs_alias_set ();
  	      src_mem = adjust_address (src_mem, mode, src_offset);
  	      dest_mem = adjust_address (mem, mode, INTVAL (XEXP (slot, 1)));
--- 2450,2454 ----
  		}
  	      src_mem = gen_rtx_MEM (mode, src_addr);
! 	      set_mem_alias_set (src_mem, get_varargs_alias_set ());
  	      src_mem = adjust_address (src_mem, mode, src_offset);
  	      dest_mem = adjust_address (mem, mode, INTVAL (XEXP (slot, 1)));
*************** ix86_va_arg (valist, type)
*** 2514,2518 ****
        abort ();
        r = gen_rtx_MEM (Pmode, addr_rtx);
!       MEM_ALIAS_SET (r) = get_varargs_alias_set ();
        emit_move_insn (addr_rtx, r);
      }
--- 2514,2518 ----
        abort ();
        r = gen_rtx_MEM (Pmode, addr_rtx);
!       set_mem_alias_set (r, get_varargs_alias_set ());
        emit_move_insn (addr_rtx, r);
      }



More information about the Gcc-patches mailing list