This is the mail archive of the
mailing list for the GCC project.
Re: gcc-4.9.1 generating different code between two successive builds
- From: Andrew Haley <aph at redhat dot com>
- To: Georg-Johann Lay <avr at gjlay dot de>, Cole <cole at opteqint dot net>
- Cc: gcc at gcc dot gnu dot org
- Date: Thu, 31 Dec 2015 10:17:16 +0000
- Subject: Re: gcc-4.9.1 generating different code between two successive builds
- Authentication-results: sourceware.org; auth=none
- References: <CACsf_wwETk+L6eq0HoL0Hz8sa-CZdntZVtjGk4aY8D1989vMqw at mail dot gmail dot com> <5683F967 dot 4090309 at gjlay dot de>
On 30/12/15 15:33, Georg-Johann Lay wrote:
> Some parts of the compiler use the address of objects to compute
> hashes, but I don't remember which part(s) actually do this. That
> technique can lead to different code for different runs of the
> compiler even on the same system. This is hard to reproduce as it
> depends on how the OS is supplying memory, and it might depend on
> the "history" of the machine and the actual OS.
... and many Linux kernels deliberately randomize memory layout to
provide some protection from buffer overflow attacks.