1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-21 11:13:30 +00:00
freebsd/sys/ia64/include
Marcel Moolenaar cafd6dbd76 Fix threaded applications on ia64 that are linked dynamicly. We did
not save (restore) the global pointer (GP) in the jmpbuf in setjmp
(longjmp) because it's not needed in general. GP is considered a
scratch register at callsites and hence is always restored after a
call (when it's possible that the call resolves to a symbol in a
different loadmodule; otherwise GP does not have to be saved and
restored at all), including calls to setjmp/longjmp. There's just
one problem with this now that we use setjmp/longjmp for context
switching: A new context must have GP defined properly for the
thread's entry point. This means that we need to put GP in the
jmpbuf and consequently that we have to restore is in longjmp.
This automaticly requires us to save it as well.

When setjmp/longjmp isn't used for context switching, this can be
reverted again.
2003-03-05 04:39:24 +00:00
..
pc use __packed. 2002-09-23 18:54:32 +00:00
_inttypes.h Since printf(3) now supports the `j' conversion specifier, use that 2002-06-30 05:48:03 +00:00
_limits.h Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup, 2003-01-01 18:49:04 +00:00
_stdint.h Create a new header <machine/_stdint.h> for storing MD parts of 2002-07-29 17:41:23 +00:00
_types.h Implement fpclassify(): 2003-02-08 20:37:55 +00:00
acpica_machdep.h Resolve conflicts arising from the ACPI CA 20020725 import. 2002-07-30 19:35:32 +00:00
asm.h Initiate deorbit burn for the i386-only a.out related support. Moves are 2002-09-17 01:49:00 +00:00
atomic.h Simplify IA64_CMPXCHG to avoid having braced-groups in expressions. 2002-05-19 20:19:07 +00:00
bootinfo.h Use one of the bi_spare entries for the DIG64 HCDP table address. 2002-12-08 20:32:56 +00:00
bus_memio.h
bus_pio.h
bus.h Correctly set BUS_SPACE_MAXSIZE in all the busdma backends. 2003-02-26 02:16:06 +00:00
clock.h Replace the hardcoding of 255 as the clock interrupt vector with 2003-01-06 01:39:25 +00:00
clockvar.h
cpu.h MFp4: 2002-11-24 20:15:08 +00:00
cpufunc.h Make all memory I/O addresses (explicitly) 64-bit. Memory mapped 2003-01-05 21:40:45 +00:00
critical.h Stage-2 commit of the critical*() code. This re-inlines cpu_critical_enter() 2002-04-01 23:51:23 +00:00
db_machdep.h o Remove namespace pollution from param.h: 2002-05-19 04:42:19 +00:00
dig64.h More MFp4: DIG64 structures. 2002-12-18 18:52:20 +00:00
efi.h
elf.h Infrastructure tweaks to allow having both an Elf32 and an Elf64 executable 2002-07-20 02:56:12 +00:00
endian.h Be careful not to define GCC-specific optimizations in the non-GCC 2002-09-23 04:32:17 +00:00
exec.h
float.h Implement fpclassify(): 2003-02-08 20:37:55 +00:00
floatingpoint.h
fpu.h
frame.h Add ar.lc and ar.ec to the trapframe. These are not saved for syscalls, 2002-04-30 06:37:25 +00:00
ia64_cpu.h o Remove namespace pollution from param.h: 2002-05-19 04:42:19 +00:00
ieee.h
ieeefp.h s/_ALPHA_/_MACHINE_/ 2002-05-13 05:01:05 +00:00
in_cksum.h
inst.h
intr.h Don't hardcode the address of the local (S)APIC (aka processor 2003-01-05 22:14:30 +00:00
intrcnt.h Bump the number of interrupts from 65 to 257. This is a waste of 2003-01-05 22:00:19 +00:00
ioctl_bt848.h
ioctl_meteor.h
kse.h Add a copy of the sparc64 machine/kse.h to satisfy depencies.. 2002-06-29 18:07:50 +00:00
limits.h Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup, 2003-01-01 18:49:04 +00:00
mca.h Remove the definition of struct mca_guid and use the generic 2002-05-29 05:19:07 +00:00
md_var.h Remove special casing for running in the simulator from the kernel 2003-02-01 22:50:09 +00:00
mutex.h
nexusvar.h Convert NEXUS_ACCESSOR to use the __BUS_ACCESSOR 2002-08-22 19:47:10 +00:00
pal.h
param.h Define _ALIGNBYTES to be 15. This should have been done right away. 2003-02-17 09:53:29 +00:00
pcb.h Rewrite cpu_switch(). The most notable change is the fact that we now 2002-10-30 05:55:29 +00:00
pci_cfgreg.h
pcpu.h
pmap.h MFi386 revision 1.88 2003-03-01 10:02:11 +00:00
proc.h Compromise for critical*()/cpu_critical*() recommit. Cleanup the interrupt 2002-03-27 05:39:23 +00:00
profile.h Change critical_t to register_t for intr_disable/restore. 2002-03-21 09:50:11 +00:00
pte.h
ptrace.h Move the definition of PT_[GS]ET{,DB,FP}REGS from the MD ptrace.h to the 2002-03-16 00:25:53 +00:00
reg.h At great personal risk, add a __packed and __aligned(x) define that 2002-09-23 05:55:10 +00:00
reloc.h
resource.h
rse.h
runq.h Move the "- 1" into the RQB_FFS(mask) macro itself so that 2002-06-20 06:21:20 +00:00
sal.h Remove special casing for running in the simulator from the kernel 2003-02-01 22:50:09 +00:00
sapicreg.h
sapicvar.h List the IO SAPIC delivery mode definitions. 2002-10-04 01:33:30 +00:00
setjmp.h Fix threaded applications on ia64 that are linked dynamicly. We did 2003-03-05 04:39:24 +00:00
sigframe.h Split 4.x and 5.x signal handling so that we can keep 4.x signal 2002-10-25 19:10:58 +00:00
signal.h Split 4.x and 5.x signal handling so that we can keep 4.x signal 2002-10-25 19:10:58 +00:00
smp.h o Rename ia64_count_aps to ia64_count_cpus and reimplement the 2002-05-12 05:54:21 +00:00
stdarg.h o Add conditionals to allow va_list to be defined in other headers. 2002-10-06 22:01:07 +00:00
sysarch.h
ucontext.h
unwind.h Update the unwind information when modules are loaded and unloaded 2002-10-19 19:30:38 +00:00
varargs.h Add conditionals to allow va_list to be defined in other headers. 2002-10-06 22:02:06 +00:00
vmparam.h Define UMA_MD_SMALL_ALLOC so that we can allocate memory with region 2002-11-06 04:47:38 +00:00