* gendef (stabilize_sig_stack): Correctly align this pointer for call to
_cygtls::call_signal_handler. * gentls_offsets: Output sizeof field. * tlsoffsets.h: Regenerate.
This commit is contained in:
parent
2f27f08520
commit
241f503c75
|
@ -1,3 +1,10 @@
|
||||||
|
2004-02-24 Christopher Faylor <cgf@redhat.com>
|
||||||
|
|
||||||
|
* gendef (stabilize_sig_stack): Correctly align this pointer for call
|
||||||
|
to _cygtls::call_signal_handler.
|
||||||
|
* gentls_offsets: Output sizeof field.
|
||||||
|
* tlsoffsets.h: Regenerate.
|
||||||
|
|
||||||
2004-02-24 Christopher Faylor <cgf@redhat.com>
|
2004-02-24 Christopher Faylor <cgf@redhat.com>
|
||||||
|
|
||||||
* dcrt0.cc (_dll_crt0): Don't check sync_startup if threadfunc_ix is set.
|
* dcrt0.cc (_dll_crt0): Don't check sync_startup if threadfunc_ix is set.
|
||||||
|
|
|
@ -249,8 +249,9 @@ stabilize_sig_stack:
|
||||||
jmp 1b
|
jmp 1b
|
||||||
2: cmpl \$0,$tls::sig(%edx)
|
2: cmpl \$0,$tls::sig(%edx)
|
||||||
jz 3f
|
jz 3f
|
||||||
decl $tls::stacklock(%edx)
|
decl $tls::stacklock(%edx) # unlock
|
||||||
movl %edx,%eax
|
movl \$-$tls::sizeof__cygtls,%eax # point to beginning
|
||||||
|
addl %edx,%eax # of tls block
|
||||||
call __ZN7_cygtls19call_signal_handlerEv
|
call __ZN7_cygtls19call_signal_handlerEv
|
||||||
jmp 1b
|
jmp 1b
|
||||||
3: ret
|
3: ret
|
||||||
|
|
|
@ -53,6 +53,7 @@ main(int argc, char **argv)
|
||||||
# define poffset(f) (((char *) &(foo->f)) - ((char *) foo))
|
# define poffset(f) (((char *) &(foo->f)) - ((char *) foo))
|
||||||
EOF
|
EOF
|
||||||
print TMP 'puts ("//;# autogenerated: Do not edit.\n");', "\n\n";
|
print TMP 'puts ("//;# autogenerated: Do not edit.\n");', "\n\n";
|
||||||
|
print TMP "printf (\"//; \$tls::sizeof_$struct = %d;\\n\", sizeof($struct\));\n";
|
||||||
for my $f (@fields) {
|
for my $f (@fields) {
|
||||||
print TMP ' printf ("//; $tls::', $f, ' = %d;\n", ', "offset($f));\n";
|
print TMP ' printf ("//; $tls::', $f, ' = %d;\n", ', "offset($f));\n";
|
||||||
print TMP ' printf ("//; $tls::p', $f, ' = %d;\n", ', "poffset($f));\n";
|
print TMP ' printf ("//; $tls::p', $f, ' = %d;\n", ', "poffset($f));\n";
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
//;# autogenerated: Do not edit.
|
//;# autogenerated: Do not edit.
|
||||||
|
|
||||||
|
//; $tls::sizeof__cygtls = 3744;
|
||||||
//; $tls::func = -3744;
|
//; $tls::func = -3744;
|
||||||
//; $tls::pfunc = 0;
|
//; $tls::pfunc = 0;
|
||||||
//; $tls::saved_errno = -3740;
|
//; $tls::saved_errno = -3740;
|
||||||
|
|
Loading…
Reference in New Issue