1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-22 11:17:19 +00:00
Mirror of the FreeBSD src repository https://git.FreeBSD.org/src.git .
Go to file
John Baldwin 6632f45773 Several fixes to the amd64 disassembler:
- Add generic support for opcodes that are escape bytes used for
  multi-byte opcodes (such as the 0x0f prefix).  Use this to replace
  the hard-coded 0x0f special case and add support for three-byte
  opcodes that use the 0x0f38 prefix.
- Decode all Intel VMX instructions.  invept and invvpid in particular are
  three-byte opcodes that use the 0x0f38 escape prefix.
- Rework how the special 'SDEP' size flag works such that the default
  instruction name (i_name) is the instruction when the data size
  prefix (0x66) is not specified, and the alternate name in i_extra is
  used when the prefix is included.
- Add a new 'ADEP' size flag similar to 'SDEP' except that it chooses
  between i_name and i_extra based on the address size prefix (0x67).
  Use this to fix the decoding for jrcxz vs jecxz which is determined
  by the address size prefix, not the operand size prefix.  Also, jcxz
  is not possible in 64-bit mode, but jrcxz is the default instruction
  for that opcode.
- Add support for handling instructions that have a mandatory 'rep'
  prefix (this means not outputting the 'repe ' prefix until determining
  if it is used as part of an opcode).  Make 'pause' less of a special
  case this way.
- Decode 'cmpxchg16b' and 'cdqe' which are variants of other instructions
  but with a REX.W prefix.

MFC after:	1 month
2012-07-06 14:25:59 +00:00
bin Polish previous revision: if the fts_* routines have lstat()'ed the 2012-06-20 21:10:38 +00:00
cddl Restore r211786 by rpaulo: 2012-07-05 00:52:23 +00:00
contrib Add support for the 'xsave', 'xrstor', 'xsaveopt', 'xgetbv', and 'xsetbv' 2012-07-04 22:12:10 +00:00
crypto Partially redo r226436, i. e., change "the the" to "the". ca(1), dgst(1), 2012-06-27 19:23:29 +00:00
etc Name jails automatically. 2012-07-04 13:37:44 +00:00
games Partial revert of previous commit as some of the changes were not 2012-05-10 12:46:12 +00:00
gnu - Switch to BSD sort as default sort. GNU sort will still be installed as 2012-06-27 05:59:01 +00:00
include The register_printf_render_std() function expects regular string. 2012-07-04 17:35:07 +00:00
kerberos5 Centralize the specification of the krb5 build tools. 2012-06-01 21:26:28 +00:00
lib Document the behavior (from 4.4-lite) that tokens returned by telldir() are 2012-07-05 17:02:20 +00:00
libexec Ensure that for the object which is a dependency for some filtee, 2012-06-27 20:24:25 +00:00
release Automatically generate hardware notes for bwn(4). 2012-06-28 10:21:25 +00:00
rescue
sbin Make use of GEOM Gate direct reads feature. This allows HAST to serve 2012-07-04 20:20:48 +00:00
secure Regen ca(1) for r237658. This re-applies r227458, i.e., add a missing "be". 2012-06-27 21:35:45 +00:00
share Document RO_RTFREE() macro. 2012-07-04 07:42:12 +00:00
sys Several fixes to the amd64 disassembler: 2012-07-06 14:25:59 +00:00
tools Allow threads to finish up when terminated by user 2012-07-06 13:21:23 +00:00
usr.bin - Change --nthreads parameter to --parallel for GNU compatibility 2012-07-04 16:25:11 +00:00
usr.sbin Remove end of line whitespace. 2012-07-04 10:17:02 +00:00
COPYRIGHT
LOCKS
MAINTAINERS
Makefile Add "hier" as an alternate spelling of "hierarchy" to match hier(9). 2012-07-03 06:41:00 +00:00
Makefile.inc1 Add "hier" as an alternate spelling of "hierarchy" to match hier(9). 2012-07-03 06:41:00 +00:00
ObsoleteFiles.inc Also remove /usr/share/examples/etc/auth.conf, which I didn't even 2012-06-13 16:40:47 +00:00
README Import OpenSSL 0.9.8x. 2012-06-27 16:44:58 +00:00
UPDATING - Add UPDATING entry for BSD sort 2012-06-28 08:22:00 +00:00

This is the top level of the FreeBSD source directory.  This file
was last revised on:
$FreeBSD$

For copyright information, please see the file COPYRIGHT in this
directory (additional copyright information also exists for some
sources in this tree - please see the specific source directories for
more information).

The Makefile in this directory supports a number of targets for
building components (or all) of the FreeBSD source tree, the most
commonly used one being ``world'', which rebuilds and installs
everything in the FreeBSD system from the source tree except the
kernel, the kernel-modules and the contents of /etc.  The ``world''
target should only be used in cases where the source tree has not
changed from the currently running version.  See:
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/makeworld.html
for more information, including setting make(1) variables.

The ``buildkernel'' and ``installkernel'' targets build and install
the kernel and the modules (see below).  Please see the top of
the Makefile in this directory for more information on the
standard build targets and compile-time flags.

Building a kernel is a somewhat more involved process, documentation
for which can be found at:
   http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig.html
And in the config(8) man page.
Note: If you want to build and install the kernel with the
``buildkernel'' and ``installkernel'' targets, you might need to build
world before.  More information is available in the handbook.

The sample kernel configuration files reside in the sys/<arch>/conf
sub-directory (assuming that you've installed the kernel sources), the
file named GENERIC being the one used to build your initial installation
kernel.  The file NOTES contains entries and documentation for all possible
devices, not just those commonly used.  It is the successor of the ancient
LINT file, but in contrast to LINT, it is not buildable as a kernel but a
pure reference and documentation file.


Source Roadmap:
---------------
bin		System/user commands.

cddl		Various commands and libraries under the Common Development
		and Distribution License.

contrib		Packages contributed by 3rd parties.

crypto		Cryptography stuff (see crypto/README).

etc		Template files for /etc.

games		Amusements.

gnu		Various commands and libraries under the GNU Public License.
		Please see gnu/COPYING* for more information.

include		System include files.

kerberos5	Kerberos5 (Heimdal) package.

lib		System libraries.

libexec		System daemons.

release		Release building Makefile & associated tools.

rescue		Build system for statically linked /rescue utilities.

sbin		System commands.

secure		Cryptographic libraries and commands.

share		Shared resources.

sys		Kernel sources.

tools		Utilities for regression testing and miscellaneous tasks.

usr.bin		User commands.

usr.sbin	System administration commands.


For information on synchronizing your source tree with one or more of
the FreeBSD Project's development branches, please see:

  http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/synching.html