Commit bb6cf069 authored by Matthias Braun's avatar Matthias Braun
Browse files

disable reload folding for x87 nodes for now

We have a bad situation here as at the time of reload folding we can't
predict yet whether the spillslot coalescer must enlarge the spillslot
to 80bit precision.
For now I fix it by not folding reloads into x87 nodes. The better
alternative which I didn't do yet are:
- Move the spillslot coalescing to an earlier place before reload
  folding. This is somewhat tricky as the reload folding is implemented
  in generic code, while coalescing is backend specific.
- Revert folded AM when the spillslot is widened.
parent fded1491
......@@ -353,6 +353,11 @@ static int ia32_possible_memory_operand(const ir_node *irn, unsigned int i)
if (mode_is_float(mode)) {
if (mode != ia32_mode_float64 && mode != mode_F)
return 0;
/* Don't do reload folding for x87 nodes for now, as we can't predict
* yet wether the spillslot must be widened to 80bit for which no AM
* operations exist. */
if (is_ia32_fld(load))
return 0;
}
switch (get_ia32_am_support(irn)) {
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment