* differences in binaries
@ 1996-10-14 0:00 Craig Moore
1996-10-14 0:00 ` Robert S. White
0 siblings, 1 reply; 3+ messages in thread
From: Craig Moore @ 1996-10-14 0:00 UTC (permalink / raw)
I have had something interesting pointed out to me about Ada which the
collective wisdom of this newsgroup may be able to explain.
When doing a byte-by-byte comparison of seemingly identical binaries
(ie compile, move the resulting binary to binary.old, then compile again and compare)
there seems to be all sorts on differences between the two files, even though
they were only just re-linked.
I guess it is just timestamp information but can anyone point me to some
doco's that possibly explain what the differences are ??
We are using SunAda 1.1 but I'm sure this occurs with other versions of Ada.
Thanks,
Craig.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: differences in binaries
1996-10-14 0:00 differences in binaries Craig Moore
@ 1996-10-14 0:00 ` Robert S. White
0 siblings, 0 replies; 3+ messages in thread
From: Robert S. White @ 1996-10-14 0:00 UTC (permalink / raw)
To: craigm
Craig Moore wrote:
> When doing a byte-by-byte comparison of seemingly identical binaries
> (ie compile, move the resulting binary to binary.old, then compile
> again and compare) there seems to be all sorts on differences
> between the two files, even though they were only just re-linked.
>
> I guess it is just timestamp information but can anyone point me to
> some doco's that possibly explain what the differences are ??
>
> We are using SunAda 1.1 but I'm sure this occurs with other
> versions of Ada.
When I use a version of DDC-I Ada 83 and run a tool on the linker
output to prepare the result for ROM programming, I can get exact
compares of load modules. This works if the command file for the
linker lists the object modules in the same order and the
elaboration code calls all of the component elaboratiions in the
same order.
Changing a Ada spec can cause a re-build of just the neccessary
modules to have a different command file to the linker and different
elaboration code than if one deleted all object and other
intermediate files and did an entire rebuild from scratch. But I
have seen mulitiple rebuilds from scratch generate identical code
for ROM programming for the particular compiler I use for some
target systems. Your mileage may vary.
Previous threads on this subject about a year ago talked about
different host computer resources causing modules to be built in
different orders if I recall correctly. DEC Ada?
_______________________________________________________________________
Robert S. White | Opinions expressed are my own.
whiter@crpl.cedar-rapids.lib.ia.us | An Embedded Systems programmer
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: differences in binaries
@ 1996-10-14 0:00 tmoran
0 siblings, 0 replies; 3+ messages in thread
From: tmoran @ 1996-10-14 0:00 UTC (permalink / raw)
>When doing a byte-by-byte comparison of seemingly identical binaries
>(ie compile, move the resulting binary to binary.old, then compile again and compare)
>there seems to be all sorts on differences between the two files, even though
>they were only just re-linked.
>We are using SunAda 1.1 but I'm sure this occurs with other versions of Ada.
I just tried this re-linking with Janus Ada for Windows. It has three
steps: compile, bind the Ada parts into a .obj file, use Microsoft's
linker to add windows stuff producing a .exe file. A re-bind produced an
identical binary .obj file. A relink produced an .exe that differed in
two bytes, widely separated in the .exe file.
I don't know what might be happening in SunAda, but it clearly doesn't
'occurs with other versions of Ada'.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~1996-10-14 0:00 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1996-10-14 0:00 differences in binaries Craig Moore
1996-10-14 0:00 ` Robert S. White
-- strict thread matches above, loose matches on Subject: below --
1996-10-14 0:00 tmoran
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox