]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
o Fix _longjmp() to return 1 when the return value is given as 0.
authorMarcel Moolenaar <marcel@FreeBSD.org>
Thu, 14 Nov 2002 06:40:23 +0000 (06:40 +0000)
committerMarcel Moolenaar <marcel@FreeBSD.org>
Thu, 14 Nov 2002 06:40:23 +0000 (06:40 +0000)
commit122dd01309e30819a589db6b287eaf7bdbddaecc
tree49e1c1b348b431ba43148e35744edd8c5a88af6c
parentca161eb6e938b6ab3f688ece75ce30bcd2c6f147
o  Fix _longjmp() to return 1 when the return value is given as 0.
o  Remove the unwanted smartness in _longjmp() where it compares
   the current ar.bspstore with the saved ar.bspstore and restores
   ar.rnat based on it. This either avoids saving ar.rnat in the
   jmp_buf or is the consequence of not saving ar.rnat. All this
   complexity breaks libc_r where we use longjmp() to switch to
   different threads and the current ar.bspstore has no relation
   to the saved ar.bspstore. Thus: we save ar.rnat in setjmp()
   and simply restore ar.bspstore and ar.rnat in longjmp().

This code needs a cleanup.
lib/libc/ia64/gen/_setjmp.S