Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2007-09-24 | Support __float*__ for floating-point numbers in expressions | H. Peter Anvin | 8 | -132/+597 | |
Add special operators to allow the use of floating-point constants in contexts other than DW/DD/DQ/DT/DO. As part of this checkin, make MAX_KEYWORD generated by tokhash.pl, since it knows what all the keywords are so it can tell which one is the longest. | |||||
2007-09-24 | eval.c: replace sequence of ifs with switch | H. Peter Anvin | 1 | -9/+21 | |
Replace a sequence of "if" statements with a switch. | |||||
2007-09-24 | tokhash: allow a bit smarter pattern matching | H. Peter Anvin | 1 | -0/+12 | |
Allow constants to match only part of the token string. | |||||
2007-09-22 | Implement INVLPGA according to the documentation | H. Peter Anvin | 2 | -0/+11 | |
INVLPGA is defined as taking rax,ecx but "the portion of rax used to form the address is determined by the effective address size", so it is really ax/eax/rax. | |||||
2007-09-22 | Reformat insns.dat to uniform column width | H. Peter Anvin | 2 | -1864/+1897 | |
Add a script to reformat insns.dat to uniform width, and use it. | |||||
2007-09-22 | Simple test for 0x67 prefixes | H. Peter Anvin | 1 | -0/+35 | |
2007-09-22 | Auto-generate 0x67 prefixes without the need for \30x codes | H. Peter Anvin | 3 | -953/+1008 | |
Auto-generate 0x67 prefixes without the need for \30x codes; the prefix is automatically added when there is a memory operand with address size differing from the current address size (and impossible combinations checked for.) | |||||
2007-09-22 | Make test/Makefile a bit more useful | H. Peter Anvin | 1 | -6/+6 | |
Make all the tests depend on the nasm binary... | |||||
2007-09-22 | Add TY_OWORD for "DO" output | H. Peter Anvin | 2 | -0/+4 | |
2007-09-22 | LDDQU needs \301 (BR 1103549) | H. Peter Anvin | 1 | -1/+1 | |
2007-09-22 | RDTSCP and INVLPGA aren't 64-bit specific | H. Peter Anvin | 1 | -2/+2 | |
X64 means X86_64,LM -- long mode only. | |||||
2007-09-22 | Cyrix GX1 instructions: BBx_RESET, CPU_READ, CPU_WRITE | H. Peter Anvin | 1 | -0/+4 | |
2007-09-22 | Centaur XSHA1, XSHA256, MONTMUL | H. Peter Anvin | 2 | -1/+4 | |
2007-09-22 | Implement Centaur's XCRYPT instructions | H. Peter Anvin | 2 | -8/+14 | |
Implement Centaur's XCRYPT instruction (RFE 825529) | |||||
2007-09-22 | Add Geode LX (AMD's Cyrix-derived core) instructions | H. Peter Anvin | 1 | -0/+6 | |
Add Geode's instructions: DMINT, RDM, PFRCP, PFRSQRT | |||||
2007-09-22 | Add the GETSEC instruction for Intel SMX | H. Peter Anvin | 1 | -0/+3 | |
2007-09-22 | Add the AMD SSE4a and LZCNT instructions | H. Peter Anvin | 2 | -2/+16 | |
Add AMD SSE4a and LZCNT | |||||
2007-09-22 | Tag UMOV as ND (no disassembly) to avoid collision | H. Peter Anvin | 1 | -12/+12 | |
The UMOV opcodes have been recycled; tag UMOV as ND until we have a better way to specify to the disassembler exactly how it wants instructions interpreted. | |||||
2007-09-22 | Disallow optimizing by less than 5 passes. | H. Peter Anvin | 1 | -2/+6 | |
Disallow optimizing by less than 5 passes. If the user requests 2-4 passes, run 5 passes anyway. | |||||
2007-09-22 | BR 1783117: Document that %+ needs a space after it, and fix crash | H. Peter Anvin | 2 | -9/+19 | |
Document that %+ needs a space after it due to collision with %+1 syntax for multiline macro arguments; make it issue an error message rather than crashing. | |||||
2007-09-22 | nasm.spec.in: minor fixes | H. Peter Anvin | 1 | -2/+2 | |
%setup needs -n to deal with the case when nasm_version != _version There is no standard %make macro, just use "make". | |||||
2007-09-22 | release script: handle stricter CLI parsing for "git tag" | H. Peter Anvin | 1 | -1/+1 | |
The current version of "git tag" seems to demand that the options precede arguments; the name is an argument, but the -m option and its parameter is an option. | |||||
2007-09-22 | Update nasm.spec.in and make it handle rc releases | H. Peter Anvin | 3 | -26/+41 | |
Update nasm.spec.in to match modern conventions, and make it handle rc releases by using the "mangled" version of the name (1.99.99.91 instead of 2.0rc1). | |||||
2007-09-22 | version.pl: support version numbers of the form X.Y[.Z]rcW | H. Peter Anvin | 1 | -6/+26 | |
Support version numbers of the form X.Y[.Z]rcW where X, Y, Z and W are numbers. For the numeric macros, drop them down to a lower level, so 2.0rc1 is treated as version 1.99.99.91. | |||||
2007-09-20 | Merge branch 'master' of git+ssh://ccrayne@repo.or.cz/srv/git/nasm | Charles Crayne | 29 | -851/+1840 | |
2007-09-20 | modified: misc/release to fix bug in removing .git | Charles Crayne | 1 | -1/+1 | |
2007-09-19 | Merge branch 'master' of git+ssh://repo.or.cz/srv/git/nasm | H. Peter Anvin | 2 | -2/+2 | |
2007-09-19 | Update manual pages | H. Peter Anvin | 2 | -10/+7 | |
Update manual pages to include 64-bit support, and remove section about sync point limits in ndisasm. | |||||
2007-09-19 | Remove limit on number of sync points | H. Peter Anvin | 1 | -23/+9 | |
Make it possible for ndisasm to allocate more memory for sync points as needed. | |||||
2007-09-19 | Make nasm_malloc() et al available from inside ndisasm | H. Peter Anvin | 7 | -228/+253 | |
Clean up nasmlib to remove functions irrelevant for ndisasm; make nasm_malloc() etc usable inside ndisasm. | |||||
2007-09-19 | Version 0.99.03 | Frank Kotler | 1 | -1/+1 | |
2007-09-19 | Merge branch 'master' of git+ssh://fbkotler@repo.or.cz/srv/git/nasm | Frank Kotler | 18 | -588/+1569 | |
2007-09-19 | Merge commit 'origin/sse5' | H. Peter Anvin | 17 | -587/+1547 | |
2007-09-19 | test/Makefile: make a bit more useful | H. Peter Anvin | 1 | -1/+22 | |
2007-09-18 | Slightly optimize the interface to nasm_token_hash() | H. Peter Anvin | 2 | -7/+3 | |
Instead of returning -1 from nasm_token_hash, set tv->t_type to TOKEN_ID and return TOKEN_ID, since that's what stdscan.c wants to do with it anyway. This allows us to simply tailcall nasm_token_hash(). | |||||
2007-09-19 | Merge branch 'master' of git+ssh://fbkotler@repo.or.cz/srv/git/nasm | Frank Kotler | 11 | -141/+220 | |
2007-09-18 | Merge commit 'origin/master' into sse5 | H. Peter Anvin | 1 | -4/+4 | |
2007-09-18 | elf64: fix 32-bit truncations | H. Peter Anvin | 1 | -4/+4 | |
Fix 32-bit truncations, as evidenced by the following test program: mov rax, 8080808080808080h | |||||
2007-09-18 | Document Infinity and NaN | H. Peter Anvin | 1 | -0/+10 | |
Add __Infinity__, __QNaN__, and __SNaN__ to the documentation. | |||||
2007-09-18 | Support generating NaNs and infinities | H. Peter Anvin | 4 | -62/+160 | |
Support generating NaNs and infinities as part of floating-point constants. | |||||
2007-09-18 | Update documentation | H. Peter Anvin | 1 | -26/+35 | |
Document new floating-point capabilities, and clean up the discussion about BITS 64 and REX prefixes. | |||||
2007-09-18 | Simple test for hexadecimal floating-point numbers | H. Peter Anvin | 1 | -0/+125 | |
Very trivial test for hexadecimal floating-point numbers | |||||
2007-09-18 | Fix error-reporting in hexadecimal floating-point numbers | H. Peter Anvin | 1 | -1/+1 | |
2007-09-18 | Support C99-style hexadecimal floating point. | H. Peter Anvin | 2 | -1/+94 | |
Add support for C99-style hexadecimal floating point. The format is 0x <hexadecimal mantissa> p <binary exponent>. 0x1.0e+1 thus is the same as 2.0. | |||||
2007-09-18 | Unify all standard IEEE floating-point formats; add 128-bit | H. Peter Anvin | 2 | -142/+167 | |
Unify all the standard IEEE formats into one function, add support for IEEE standard 128-bit floating point numbers. The 80-bit format is still special since it explicitly represents the integer portion. | |||||
2007-09-18 | Fix handling of DO; support unary + for floating-point numbers | H. Peter Anvin | 2 | -11/+20 | |
Floating-point users generally expect to be able to use a unary plus. Fix support for the DO instruction in several places. | |||||
2007-09-18 | Support 16-bit IEEE floating point; used in SSE5 | H. Peter Anvin | 2 | -13/+82 | |
SSE5 supports standard IEEE 16-bit floating point, so we should support that too. | |||||
2007-09-18 | Merge commit 'origin/master' into sse5 | H. Peter Anvin | 1 | -0/+3 | |
2007-09-18 | Add NOP with argument to the instruction list | H. Peter Anvin | 1 | -0/+3 | |
0F 1F /0 is documented as an EA-taking NOP since the P6. 0F 18..1F + EA are all "hinting nops" (instructions which, when unimplemented, have no effect rather than #UD) but 0F 1F /0 specifically has no operation whatsoever. | |||||
2007-09-18 | Remove 0FC2 from list of instruction prefixes | H. Peter Anvin | 1 | -1/+1 | |
0FC2 is not really an instruction prefix; it's the opcode for CMPPS/CMPSS, which takes a control immediate which Intel chose to have opcode aliases for. However, we can't dispatch on a tail byte, so it's useless. |