summaryrefslogtreecommitdiff
path: root/regs.pl
Commit message (Collapse)AuthorAgeFilesLines
* move is_register helper to nasm.hCyrill Gorcunov2010-07-251-7/+0
| | | | | | | | | | | | | | | H. Peter Anvin noted: | | Could we avoid putting static code that has no dynamic content in | dynamically generated files... it just complicates things unnecessarily. | | The above can move into nasm.h for example. | Good idea. CC: "H. Peter Anvin" <hpa@zytor.com> Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
* regs.pl: Introduce is_register() helperCyrill Gorcunov2010-07-251-0/+7
| | | | | | Instead of opencoded check use inline helper. Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
* opflags: more int32_t -> opflags_t conversionsH. Peter Anvin2009-10-131-1/+1
| | | | | | | Hopefully this should catch all of them... but please keep an eye out for any other uses of int32_t for the operand flags. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* Add copyright verbiage to Perl scripts; update LICENSEH. Peter Anvin2009-06-281-0/+33
| | | | | | | | This adds copyright verbiage to the Perl scripts. Scripts that are known to be clean w.r.t. the 2-clause BSD license are given that license; unclear ones are given the "LGPL for now". Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* regs.pl: add include guards to generated header filesH. Peter Anvin2008-05-271-3/+9
| | | | | Add include guards to generated header files, and make sure the appropriate prerequisite headers are included if necessary.
* regs.pl: regdis.h needs "extern"; minor cleanupsH. Peter Anvin2008-05-271-9/+10
| | | | | | | | | The declarations in regdis.h need to be "extern", since they are external data. regdis.c should include regdis.h. Minor stylistic cleanups in regs.c.
* regs.pl: add comments to regflags.c and regvals.cH. Peter Anvin2008-05-261-6/+9
| | | | | Add comments to regflags.c and regvals.c, to make it easier to spot errors.
* Readability improvements for regdis.cH. Peter Anvin2008-05-201-2/+2
|
* Avoid #including .c files; instead compile as separate unitsH. Peter Anvin2008-05-201-8/+20
| | | | | | Don't #include .c files, even if they are auto-generated; instead compile them as separate compilation units and let the linker do its job.
* Formatting: kill off "stealth whitespace"H. Peter Anvin2007-10-191-2/+2
| | | | | "Stealth whitespace" makes it harder to read diffs, and just generally cause unwanted weirdness. Do a source-wide pass to get rid of it.
* Portability fixesH. Peter Anvin2007-10-021-2/+3
| | | | | | | | | Concentrate compiler dependencies to compiler.h; make sure compiler.h is included first in every .c file (since some prototypes may depend on the presence of feature request macros.) Actually use the conditional inclusion of various functions (totally broken in previous releases.)
* Remove $Id$ tags (useless with git)H. Peter Anvin2007-09-121-1/+0
| | | | Remove CVS $Id$ tags, since git doesn't use them.
* Use enumerations where practical to ease debuggingH. Peter Anvin2007-09-121-2/+6
| | | | | | | | We have a lot of enumerations; by declaring fields as such, we make it easier when debugging, since the debugger can display the enumerations in cleartext. However, make sure exceptional values (like -1) are included in the enumeration, since the compiler otherwise may not include it in the valid range of the enumeration.
* Use enums to make debugging easierH. Peter Anvin2007-09-111-2/+2
| | | | | When we're dealing with a field which is guaranteed to have an enum type, then declare it as such so it shows up in debuggers.
* Fix bugs in repeated suffix handling, which led to missing r8d/r8w/r8dH. Peter Anvin2007-08-301-1/+1
|
* regs.pl: handle dashed sequences with suffixesH. Peter Anvin2007-08-201-4/+12
| | | | Handle dashed sequences with suffixes. Use that for r8-r15[bwd].
* Avoid magic values; we have more than 124 registers nowH. Peter Anvin2007-05-301-0/+4
| | | | | There was a magic hard-coded constant that register numbers were between 1 and 124. Well, we have about 150 registers now, and that broke.
* Get rid of magic open-coded "register numbers"H. Peter Anvin2007-05-301-11/+9
| | | | | | | | | | Get rid of magic open-coded register numbers. We now keep track of a total of three different kinds of register numbers: the register enumeration (regs.h), the x86 register value, and the register flags. That has all the information we need. Additionally, do massive revamping of the EA generation code and the REX generation logic.
* Use + instead of * for extension; it feels cleaner with the new meaning.H. Peter Anvin2007-04-161-2/+2
| | | | | We used to use * to mean substitute in 0-7. Now it means that it should be incremented 8 times. Using a different character feels cleaner.
* Initial 64-bit support for ndisasm. Still a work in progress.H. Peter Anvin2007-04-161-1/+1
| | | | | | 64-bit support for ndisasm. This is very much an initial attempt, and there are guaranteed to be bugs in the code. However, some *very* preliminary testing seems to indicate it's not completely off-base.
* Clean up the 64-bitification of regs.dat for 64-bit ndisasm supportH. Peter Anvin2007-04-151-20/+40
| | | | | | | 64-bit support required some major changes to regs.dat; clean some of it up (re-introduce patterns, where appropriate) and allow a single register to belong to multiple disassembly classes; also keep track of the x86 register number again.
* More perl-like idioms for generating regdis.cH. Peter Anvin2007-04-151-4/+2
| | | | | - Don't use an advancing counter through an array to do a push(). - An empty array is written as (), not 0.
* Fixed regdis.c generation.Keith Kanios2007-04-151-2/+7
|
* Fixed distinction between char and int8_t data types.Keith Kanios2007-04-131-1/+1
|
* General push for x86-64 support, dubbed 0.99.00.Keith Kanios2007-04-121-4/+8
|
* This is the "megapatch":H. Peter Anvin2002-06-061-0/+108
a) Automatically generate dependencies for all Makefiles; b) Move register definitions to a separate .dat file; c) Add support for "unimplemented but there in theory" registers.