I've noticed a few things in doing the above.  GCC 4.x doesn't seems to
do CSE on addresses.  Because the VAX binutils doesn't support non-local
symbols with a non-zero addend in the GOT, PIC will do a define_expand
so that (const (plus (symbol_ref) (const_int))) will be split into
separate instructions.  However, gcc doesn't seem to be able to take
advantage of that.  For instance, gcc emits:

File a PR, CC me and ping me when your patches are in.  I
can take a look and see whether it's the responsibility of
the VAX backend to provide more correct costs, or whether
fwprop could do something it's not doing.

Paolo

Reply via email to