Sun Oct 26 09:21:40 1997 Jeffrey A Law (law@cygnus.com)
+ * alias.c (find_base_value): Handle PRE_INC, PRE_DEC, POST_INC,
+ and POS_DEC.
+ (find_base_term): Likewise.
+
+ * alias.c (true_dependence): Fix typo.
+
* toplev.c (flag_rerun_loop_opt): New variable.
(f_options): Handle -frerun-loop-opt.
(rest_of_compilation): If -frerun-loop-opt, then run the loop
case LABEL_REF:
return src;
+ case PRE_INC:
+ case PRE_DEC:
+ case POST_INC:
+ case POST_DEC:
+ src = XEXP (src, 0);
+ /* fall through */
+
case REG:
/* At the start of a function argument registers have known base
values which may be lost later. Returning an ADDRESS
case HIGH:
return find_base_term (XEXP (x, 0));
+ case PRE_INC:
+ case PRE_DEC:
+ case POST_INC:
+ case POST_DEC:
+ return find_base_term (XEXP (x, 0));
+
case CONST:
x = XEXP (x, 0);
if (GET_CODE (x) != PLUS && GET_CODE (x) != MINUS)
if (mem_mode == VOIDmode)
mem_mode = GET_MODE (mem);
- if (! memrefs_conflict_p (mem_mode, mem_addr, SIZE_FOR_MODE (x), x_addr, 0))
+ if (! memrefs_conflict_p (SIZE_FOR_MODE (mem_mode), mem_addr,
+ SIZE_FOR_MODE (x), x_addr, 0))
return 0;
/* If both references are struct references, or both are not, nothing