Question:
Is this expected where DXE files differed in every build of the same source code on the same machine except timestamps?
Answer:
There can be legitimate reasons for DXEs differing. Normally the differing DXE issue is seen when building the code on different machines (but same versions of tools). Some of the expected differences between builds can be due to the compiler and assembler embedding some annotation information into the object files, such as a timestamp and the command line used.
We can check by running “${CCES}/elfdump.exe –all ${DXE}> info.txt” to extract the symbols from dxe for each dxe and differentiate the output from that.
Here we can see that differences are only in the command lines, annotations and timestamps and that the code/data itself is identical.
Also, The DXE contains GUID which is unique(Ex. link-project-guid) and generated for every build. So, this also might be the difference in DXE.