* i386.c (distance_non_agu_define): Fix insn attr check.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181713
138bc75d-0d04-0410-961f-
82ee72b054a4
+2011-11-24 Enkovich Ilya <ilya.enkovich@intel.com>
+
+ PR target/51287
+ * i386.c (distance_non_agu_define): Fix insn attr check.
+
2011-11-24 Andrew MacLeod <amacleod@redhat.com>
* optab.c (maybe_emit_atomic_exchange): New. Try to emit an
basic_block bb = start ? BLOCK_FOR_INSN (start) : NULL;
rtx prev = start;
rtx next = NULL;
- enum attr_type insn_type;
*found = false;
distance = increase_distance (prev, next, distance);
if (insn_defines_reg (regno1, regno2, prev))
{
- insn_type = get_attr_type (prev);
- if (insn_type != TYPE_LEA)
+ if (recog_memoized (prev) < 0
+ || get_attr_type (prev) != TYPE_LEA)
{
*found = true;
return distance;