glibc/sysdeps/unix/sysv/linux/sparc/sys/user.h
Ulrich Drepper d57a3f0e02 Update.
2003-08-11  Carlos O'Donell  <carlos@baldric.uwo.ca>

	* dlfcn/default.c (main): Cast dlsym loaded value to same type as main.
	Address passed to test_in_mod1 and test_in_mod2 without casting.
	* dlfcn/defaultmod1.c: Change prototype of test_in_mod1.
	(test_in_mod1): Cast dlsym loaded value to same type as mainp.
	* dlfcn/defaultmod2.c: Change prototype of test_in_mod2.
	(test_in_mod2): Cast dlsym loaded value to same type as mainp.

2003-08-15  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/sparc/sparc32/elf/configure.in (libc_cv_sparc32_tls):
	Change quotes before using [].

	* sysdeps/unix/sysv/linux/sparc/sys/user.h: New file.

	* sysdeps/sparc/sparc32/bits/atomic.h (__sparc32_atomic_lock):
	Renamed to...
	(__sparc32_atomic_locks): ...this.  Change into 64-byte array.
	(__sparc32_atomic_do_lock, __sparc32_atomic_do_unlock): Add addr
	argument.  Select one of 64 locks from address bits.
	(atomic_compare_and_exchange_val_acq,
	atomic_compare_and_exchange_bool_acq): Pass memory address to
	__sparc32_atomic_do_{,un}lock.
2003-08-15 03:58:56 +00:00

86 lines
2.0 KiB
C

/* Copyright (C) 2003 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
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, write to the Free
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
#ifndef _SYS_USER_H
#define _SYS_USER_H 1
struct sunos_regs
{
unsigned int psr, pc, npc, y;
unsigned int regs[15];
};
struct sunos_fpqueue
{
unsigned int *addr;
unsigned int inst;
};
struct sunos_fp
{
union
{
unsigned int regs[32];
double reg_dbls[16];
} fregs;
unsigned int fsr;
unsigned int flags;
unsigned int extra;
unsigned int fpq_count;
struct sunos_fpqueue fpq[16];
};
struct sunos_fpu
{
struct sunos_fp fpstatus;
};
/* The SunOS core file header layout. */
struct user {
unsigned int magic;
unsigned int len;
struct sunos_regs regs;
struct
{
unsigned char a_dynamic :1;
unsigned char a_toolversion :7;
unsigned char a_machtype;
unsigned short a_info;
unsigned int a_text;
unsigned int a_data;
unsigned int a_bss;
unsigned int a_syms;
unsigned int a_entry;
unsigned int a_trsize;
unsigned int a_drsize;
} uexec;
int signal;
size_t u_tsize;
size_t u_dsize;
size_t u_ssize;
char u_comm[17];
struct sunos_fpu fpu;
unsigned int sigcode;
};
#define NBPG 0x2000
#define UPAGES 1
#define SUNOS_CORE_MAGIC 0x080456
#endif