pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: pkg/47906: lang/g95: SEGV occurs when stack address is notaligned 8 bytes at main().

On Thu, Jul 11, 2013 at 02:15:01PM +0000, Izumi Tsutsui wrote:
>  The all things posted in this PR are:
>  - g95 has code that adjusts stackpointer for the performance reasons.

As I said before, it is very questionable that it matters if the data is
in the L1 cache. The referenced SO post is not relevant, as the top of
the stack is pretty much guaranteed to be in the L1 cache all the time.

>  - g95 also has a silly bug that doesn't restore adjusted stackpointer.
>    It's quite likely because nowadays there are few users who still use
>    32 bit x86 for math simulations etc.
>  - Nonaka's patch just fixes g95 sources to restore the stackpointer.
>    It is a quite "right" and reasonable to fix the original problem.

Trying to adjust the stack pointer is not going to help if the stack is
not kept aligned. The SYSV ABI does not guarantee that, so it is
somewhat silly to do so in first place.

>  It looks you are the guy who can't admit own stupid and wrong comment
>  and then posts random irrelevant claims to beg the original issue.
>  That's quite annoying for all communities.
>  Please stop that.  pkgsrc is not your personal sandbox.
>  Please try to keep positive discussions, and pay your respect
>  to all other developers and contributers, to keep their motivations.

Excuse me? I know the motivation behind the "align the stack in main"
and that was more the start of the original switch by the Linux folks to
a different, undocumented ABI. All I have said in this PR is essentially
that g95 shouldn't have done the stack adjustment in the first place and
whether it provides any benefit at all is quite questionable. I am
opposing questionable changes to the ABI like this because they have
bitten us in the past and the GCC base version used here is broken if it
ever tries to depend on the incorrect stack alignment.


Home | Main Index | Thread Index | Old Index