<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/amd64/include/npx.h, branch stable/13</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=stable%2F13</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=stable%2F13'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2023-08-23T17:43:22Z</updated>
<entry>
<title>sys: Remove $FreeBSD$: one-line .c comment pattern</title>
<updated>2023-08-23T17:43:22Z</updated>
<author>
<name>Warner Losh</name>
<email>imp@FreeBSD.org</email>
</author>
<published>2023-08-22T01:31:15Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=4fbf14e22d7b83de7080a8e491ba14a5785a0ff4'/>
<id>urn:sha1:4fbf14e22d7b83de7080a8e491ba14a5785a0ff4</id>
<content type='text'>
Remove /^/[*/]\s*\$FreeBSD\$.*\n/

Similar commit in current:
(cherry picked from commit 71625ec9ad2a)
</content>
</entry>
<entry>
<title>Move userland bits of i386 npx.h and amd64 fpu.h to x86 fpu.h.</title>
<updated>2012-03-16T20:24:30Z</updated>
<author>
<name>Tijl Coosemans</name>
<email>tijl@FreeBSD.org</email>
</author>
<published>2012-03-16T20:24:30Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=786645078b304a8037f687eb1b81ccd615d4afd3'/>
<id>urn:sha1:786645078b304a8037f687eb1b81ccd615d4afd3</id>
<content type='text'>
Remove FPU types from compat/ia32/ia32_reg.h that are no longer needed.
Create machine/npx.h on amd64 to allow compiling i386 code that uses
this header.

The original npx.h and fpu.h define struct envxmm differently. Both
definitions have been included in the new x86 header as struct __envxmm32
and struct __envxmm64. During compilation either __envxmm32 or __envxmm64
is defined as envxmm depending on machine architecture. On amd64 the i386
struct is also available as struct envxmm32.

Reviewed by:	kib
</content>
</entry>
<entry>
<title>Rename npx* to fpu*.  I haven't done the flags/function names yet.</title>
<updated>2003-11-08T02:39:46Z</updated>
<author>
<name>Peter Wemm</name>
<email>peter@FreeBSD.org</email>
</author>
<published>2003-11-08T02:39:46Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=8b2454d833d9fa0b1655aad209d83394a1d653e2'/>
<id>urn:sha1:8b2454d833d9fa0b1655aad209d83394a1d653e2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Go back to 64 bit precision for fadd/fsub/fsqrt etc.  This is because on</title>
<updated>2003-07-22T06:50:34Z</updated>
<author>
<name>Peter Wemm</name>
<email>peter@FreeBSD.org</email>
</author>
<published>2003-07-22T06:50:34Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=5b9f8ddbbda6cf17423a915e5e00c27345324d96'/>
<id>urn:sha1:5b9f8ddbbda6cf17423a915e5e00c27345324d96</id>
<content type='text'>
AMD64, gcc (and the ABI) expects the x87 unit to be running in 80/64
mode (not 64/53) so that it can use it for 'long double' operations.  It
takes the expected precision differences into account when generating
code.
</content>
</entry>
<entry>
<title>Include the MXCSR initial values, based on the AMD docs.  This file</title>
<updated>2003-05-09T18:28:05Z</updated>
<author>
<name>Peter Wemm</name>
<email>peter@FreeBSD.org</email>
</author>
<published>2003-05-09T18:28:05Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=395e65aa29909b7c06b75ba7acda2528bf3e896a'/>
<id>urn:sha1:395e65aa29909b7c06b75ba7acda2528bf3e896a</id>
<content type='text'>
should really be renamed to fpu.h and npx.c to fpu.c since its part of
the core architecture on amd64 systems, not an isa 'numeric processor
extension'.
</content>
</entry>
<entry>
<title>Commit MD parts of a loosely functional AMD64 port.  This is based on</title>
<updated>2003-05-01T01:05:25Z</updated>
<author>
<name>Peter Wemm</name>
<email>peter@FreeBSD.org</email>
</author>
<published>2003-05-01T01:05:25Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=afa8862328041298fe0c059d65cea406f92bad4b'/>
<id>urn:sha1:afa8862328041298fe0c059d65cea406f92bad4b</id>
<content type='text'>
a heavily stripped down FreeBSD/i386 (brutally stripped down actually) to
attempt to get a stable base to start from.  There is a lot missing still.
Worth noting:
- The kernel runs at 1GB in order to cheat with the pmap code.  pmap uses
  a variation of the PAE code in order to avoid having to worry about 4
  levels of page tables yet.
- It boots in 64 bit "long mode" with a tiny trampoline embedded in the
  i386 loader.  This simplifies locore.s greatly.
- There are still quite a few fragments of i386-specific code that have
  not been translated yet, and some that I cheated and wrote dumb C
  versions of (bcopy etc).
- It has both int 0x80 for syscalls (but using registers for argument
  passing, as is native on the amd64 ABI), and the 'syscall' instruction
  for syscalls.  int 0x80 preserves all registers, 'syscall' does not.
- I have tried to minimize looking at the NetBSD code, except in a couple
  of places (eg: to find which register they use to replace the trashed
  %rcx register in the syscall instruction).  As a result, there is not a
  lot of similarity.  I did look at NetBSD a few times while debugging to
  get some ideas about what I might have done wrong in my first attempt.
</content>
</entry>
<entry>
<title>At great personal risk, add a __packed and __aligned(x) define that</title>
<updated>2002-09-23T05:55:10Z</updated>
<author>
<name>Peter Wemm</name>
<email>peter@FreeBSD.org</email>
</author>
<published>2002-09-23T05:55:10Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=c692fbe0916c6a95372c311fd2c2b985bce3e3b1'/>
<id>urn:sha1:c692fbe0916c6a95372c311fd2c2b985bce3e3b1</id>
<content type='text'>
expand to __attribute__((packed)) and __attribute__((aligned(x)))
respectively.  Replace the handful of gcc-ism's that use
__attribute__((aligned(16))) etc around the kernel with __aligned(16).

There are over 400 __attribute__((packed)) to deal with, that can come
later.  I just want to use __packed in new code rather than add more
gcc-ism's.
</content>
</entry>
<entry>
<title>Add kernel support needed for the KSE-aware libpthread:</title>
<updated>2002-09-16T19:25:41Z</updated>
<author>
<name>Jonathan Mini</name>
<email>mini@FreeBSD.org</email>
</author>
<published>2002-09-16T19:25:41Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=9ba15479299f7ead3ea98f04cf0ff46c48160f49'/>
<id>urn:sha1:9ba15479299f7ead3ea98f04cf0ff46c48160f49</id>
<content type='text'>
	- Maintain fpu state across signals.
	- Save and restore FPU state properly in ucontext_t's.

Reviewed by:	deischen, julian
Approved by:	-arch
</content>
</entry>
<entry>
<title>Remove __P.</title>
<updated>2002-03-20T05:48:58Z</updated>
<author>
<name>Alfred Perlstein</name>
<email>alfred@FreeBSD.org</email>
</author>
<published>2002-03-20T05:48:58Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=b63dc6ad473b82b196386d0c3dcbd1056cea81df'/>
<id>urn:sha1:b63dc6ad473b82b196386d0c3dcbd1056cea81df</id>
<content type='text'>
</content>
</entry>
<entry>
<title>KSE Milestone 2</title>
<updated>2001-09-12T08:38:13Z</updated>
<author>
<name>Julian Elischer</name>
<email>julian@FreeBSD.org</email>
</author>
<published>2001-09-12T08:38:13Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=b40ce4165d5eb3a5de1515245055350ae3dbab8e'/>
<id>urn:sha1:b40ce4165d5eb3a5de1515245055350ae3dbab8e</id>
<content type='text'>
Note ALL MODULES MUST BE RECOMPILED
make the kernel aware that there are smaller units of scheduling than the
process. (but only allow one thread per process at this time).
This is functionally equivalent to teh previousl -current except
that there is a thread associated with each process.

Sorry john! (your next MFC will be a doosie!)

Reviewed by: peter@freebsd.org, dillon@freebsd.org

X-MFC after:    ha ha ha ha
</content>
</entry>
</feed>
