summaryrefslogtreecommitdiff
path: root/regs.pl
AgeCommit message (Collapse)AuthorFilesLines
2013-08-06AVX-512: Add support for parsing bracesJin Kyu Song1-1/+1
AVX-512 introduced new syntax using braces for decorators. Opmask, broadcat, rounding control use this new syntax. http://software.intel.com/sites/default/files/319433-015.pdf Signed-off-by: Jin Kyu Song <jin.kyu.song@intel.com> Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2010-07-25move is_register helper to nasm.hCyrill Gorcunov1-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>
2010-07-25regs.pl: Introduce is_register() helperCyrill Gorcunov1-0/+7
Instead of opencoded check use inline helper. Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2009-10-13opflags: more int32_t -> opflags_t conversionsH. Peter Anvin1-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>
2009-06-28Add copyright verbiage to Perl scripts; update LICENSEH. Peter Anvin1-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>
2008-05-27regs.pl: add include guards to generated header filesH. Peter Anvin1-3/+9
Add include guards to generated header files, and make sure the appropriate prerequisite headers are included if necessary.
2008-05-27regs.pl: regdis.h needs "extern"; minor cleanupsH. Peter Anvin1-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.
2008-05-26regs.pl: add comments to regflags.c and regvals.cH. Peter Anvin1-6/+9
Add comments to regflags.c and regvals.c, to make it easier to spot errors.
2008-05-20Readability improvements for regdis.cH. Peter Anvin1-2/+2
2008-05-20Avoid #including .c files; instead compile as separate unitsH. Peter Anvin1-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.
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.