[project @ 2000-08-21 15:40:14 by sewardj]
authorsewardj <unknown>
Mon, 21 Aug 2000 15:40:15 +0000 (15:40 +0000)
committersewardj <unknown>
Mon, 21 Aug 2000 15:40:15 +0000 (15:40 +0000)
Make the register allocator deal properly with switch tables.
Previously, it didn't calculate the correct flow edges away from the
indirect jump (in fact it didn't reckon there were any flow edges
leaving it :) which makes a nonsense of the live variable analysis in
the branches.

A jump insn can now optionally be annotated with a list of destination
labels, and if so, the register allocator creates flow edges to all of
them.

Jump tables are now re-enabled.  They remain disabled for 4.08.1,
since we aren't fixing the problem properly on that branch.

I assume this problem wasn't exposed by the old register allocator
because of the live-range-approximation hacks used in it.  Since it
was undocumented, we'll never know.

Sparc builds will now break until I fix them.


No differences found