1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-28 00:21:52 +03:00
2008-04-09  Ulrich Drepper  <drepper@redhat.com>
	* stdlib/tst-makecontext.c: Change parameter to cf to negative
	value to check for correct sign extension.

	[BZ #5436]
	* sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
	Copy 64-bit parameter values even though this is not required in
	the standard.

	* sysdeps/unix/sysv/linux/x86_64/vfork.S (__vfork): Record return
	PC save.
This commit is contained in:
Ulrich Drepper
2008-04-09 18:30:12 +00:00
parent de1bbf683e
commit 6c30d38fdd
7 changed files with 60 additions and 35 deletions

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2006, 2007 Free Software Foundation, Inc.
/* Copyright (C) 2006, 2007, 2008 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -28,7 +28,7 @@ __thread int thr;
void
cf (int i)
{
if (i != 78 || thr != 94)
if (i != -78 || thr != 94)
{
printf ("i %d thr %d\n", i, thr);
exit (1);
@ -54,7 +54,7 @@ do_test (void)
ucp.uc_link = NULL;
ucp.uc_stack.ss_sp = st1;
ucp.uc_stack.ss_size = sizeof st1;
makecontext (&ucp, (void (*) (void)) cf, 1, 78);
makecontext (&ucp, (void (*) (void)) cf, 1, -78);
if (setcontext (&ucp) != 0)
{
puts ("setcontext failed");