Test results gpc-20060325 on gcc-4.1.1 P.S.
mtodorov at alu.hr
Wed Feb 14 16:06:26 CET 2007
On Wed, 14 Feb 2007, Waldek Hebisch wrote:
> Mirsad Todorovac wrote:
>> BUT THE GOOD NEWS is that there are no longer "Killed" error messages, so
>> I think we've found the murderer: it was Linux's PAX kernel extension!
>> chpax has following options, so you will see why it could have affected
>> nonlocal gotos:
>> -E emulate trampolines
>> -e do not emulate trampolines
>> -M restrict mprotect()
>> -m do not restrict mprotect()
> I wrote previously about nonlocal gotos. But now I think that the
> problem is with trampolines (problems with nonlocal gotos and trampolines
> are frequently related). Description of PAX extension makes clear
> that by default trampolines do not work if the extension is active,
> and the affected tests use trampolines. On other (non-Linux) platforms
> the compiler emits 'mprotect' calls to allows trampolines to work
> (on Linux trampolines are supposed to work even without 'mprotect' call).
> So, the best solution would be to modify gcc so that 'mprotect' gets
> called and to tell PAX to respect 'mprotect' calls.
This means using /sbin/chpax ...
>> This far we have located fault on PAX process killer, so I think the
>> further work is the question whether to allow post-processing command to
>> be executed in test_run script in a general manner, so chpax could be
>> safely executed whenever $PC is.
> Some time ago I modified test_run script to allow a runner program: instead
> of running test directly we would call runner program giving it the
> name of executable and the argument list. This was needed for testing
> cross-compilers (so that runner could launch apropriate emulator), in
> particular I used this to test djgpp and mingw ports (using dosemu and
> wine). I could probably dig out (or recreate) the patch, but I am
> not sure if such change is worth including in the standard version.
... which would IMHO make a runner program very useful in standard
distribution. I hope to see it included soon, so we avoid duplicating of
More information about the Gpc