On Sun, Jan 5, 2014 at 11:13 PM, Niels Möller nisse@lysator.liu.se wrote:
Nikos Mavrogiannopoulos nmav@gnutls.org writes:
I couldn't deduce that from your description. Why are these reads legal?
Because they are read at a word aligned address.
Irrespective of the C standard, why do you think that accessing this byte outside the buffer boundary is valid? I guess you rely that pages will be of an aligned size anyway?
I expect that every byte of memory which is accessible at all is accessible using an aligned read access of a full word. I view byte-sized loads in the instruction set as mostly syntactic sugar for word-sized loads and masking.
I understand your argumentation, but is there some fact on that? Is that part of the x86 or (e.g. the arm) specification? Moreover should nettle install a valgrind suppression file? That way projects that are affected will not fail any valgrind tests.
regards, Nikos