summaryrefslogtreecommitdiff
path: root/regs.pl
AgeCommit message (Collapse)AuthorFilesLines
2007-10-19Formatting: kill off "stealth whitespace"H. Peter Anvin1-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.
2007-10-02Portability fixesH. Peter Anvin1-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.)
2007-09-12Remove $Id$ tags (useless with git)H. Peter Anvin1-1/+0
Remove CVS $Id$ tags, since git doesn't use them.
2007-09-12Use enumerations where practical to ease debuggingH. Peter Anvin1-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.
2007-09-11Use enums to make debugging easierH. Peter Anvin1-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.
2007-08-30Fix bugs in repeated suffix handling, which led to missing r8d/r8w/r8dH. Peter Anvin1-1/+1
2007-08-20regs.pl: handle dashed sequences with suffixesH. Peter Anvin1-4/+12
Handle dashed sequences with suffixes. Use that for r8-r15[bwd].
2007-05-30Avoid magic values; we have more than 124 registers nowH. Peter Anvin1-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.
2007-05-30Get rid of magic open-coded "register numbers"H. Peter Anvin1-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.
2007-04-16Use + instead of * for extension; it feels cleaner with the new meaning.H. Peter Anvin1-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.
2007-04-16Initial 64-bit support for ndisasm. Still a work in progress.H. Peter Anvin1-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.
2007-04-15Clean up the 64-bitification of regs.dat for 64-bit ndisasm supportH. Peter Anvin1-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.
2007-04-15More perl-like idioms for generating regdis.cH. Peter Anvin1-4/+2
- Don't use an advancing counter through an array to do a push(). - An empty array is written as (), not 0.
2007-04-15Fixed regdis.c generation.Keith Kanios1-2/+7
2007-04-13Fixed distinction between char and int8_t data types.Keith Kanios1-1/+1
2007-04-12General push for x86-64 support, dubbed 0.99.00.Keith Kanios1-4/+8
2002-06-06This is the "megapatch":H. Peter Anvin1-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.