Jeff Law wrote:
I think John's argument is worth pondering though. I'm having trouble
coming up with any reasonably common case where user code would be peeking
at the alignment of a function (by peeking at the low order bits of its
address). Sure you can do it, but in what context is it generally useful
and are those cases worth worrying about from an optimization standpoint.
I'd bet that on the ARM people have code that manually looks at the
addresses to determine whether a given pointer is ARM vs. Thumb. I can't
really justify this too well, either, but it seems a shame for the compiler
to lose information that might be useful in performing an optimization.