[PATCH] Scale DW_CFA_advance_loc[124] output values
John David Anglin
dave@hiauly1.hia.nrc.ca
Tue Nov 18 16:25:00 GMT 2008
> Yeah, seems ehopt.c is broken in many places too, at least in
> check_eh_frame, eh_frame_estimate_size_before_relax and
> eh_frame_convert_frag. Fortunately gcc was always using code
> alignment factor 1, so it didn't matter.
I'm thinking the optimization in check_eh_frame is only valid when
the code alignment factor is 1. That's the only time the advance
can be represented as a difference of symbols.
The standard is clear that the new location is computed by adding
check_eh_frame in all four cases.
Dave
--
J. David Anglin dave.anglin@nrc-cnrc.gc.ca
National Research Council of Canada (613) 990-0752 (FAX: 952-6602)
More information about the Binutils
mailing list