This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: (i386-linux x sh-elf) More weak stack addressing
On Thu, Jul 20, 2000 at 03:06:35PM -0700, Toshiyasu Morita wrote:
> Maybe I'm missing something, but it seems peeking beyond labels is
> extremely important for the Hitachi SH. Forgive me for overexplaining
> a bit - I'm basically explaining my assumptions to see if people
> can spot any glaring oversights.
>
> Consider:
>
> The SH uses pc-relative addressing to load large constants,
> therefore it generates literal pools in the .text segment. These
> literal pools must be "jumped around" to continue execution.
>
> >From a code analysis perspective, these jumps aren't really jumps
> since they jump to a label accessed by only a single jump. Therefore
> the jump destination can be considered in the same block as the jump
> source.
>
> If an optimization pass assumes a jump ends a basic block, it will miss
> many potential optimiations.
Essentially you want the various optimization passes to operate on EBB
(extended basic blocks) where possible. This is a worthwhile goal,
but it will take a lot of work to get there.
-Clint