H. Peter Anvin
912595dfc0
Merge branch 'indirect'
2008-10-23 23:13:44 -07:00
H. Peter Anvin
bcc3bb975c
test/crc32.asm: test the CRC32 instruction
...
Test for the CRC32 instruction.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-23 16:24:02 -07:00
H. Peter Anvin
207b1c4d3d
test/ppindirect.asm: test token pasting inside %[...]
...
Test for token pasting inside %[...].
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-19 22:23:12 -07:00
H. Peter Anvin
2d4722fe4c
test: better smartalign tests
...
Smartalign tests for 16, 32 and 64-bit mode.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-19 16:47:53 -07:00
H. Peter Anvin
45d5f2f822
test: add test for preprocessor indirection construct
...
Add a test for the preprocessor indirection construct, %[...].
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-19 16:25:57 -07:00
H. Peter Anvin
93c7aa2302
test/elf64so.asm: demonstrate a case where we bind to the wrong symbol
...
Show an artificial case where we bind to the wrong symbol, due to the
confusion in the output system between the size of relative symbols
and their position.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-17 23:14:53 -07:00
H. Peter Anvin
9d8b57d081
test/Makefile: enable debugging info for elftest/elftest64
...
Enable debugging information for the ELF tests.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-17 23:03:54 -07:00
H. Peter Anvin
15ed768673
elftest64: both Small PIC and Medium PIC model tests
...
Try both Small PIC and Medium PIC model references.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-17 22:10:33 -07:00
H. Peter Anvin
9a1f9f5ab6
test/Makefile: the elftest objects depend on $(NASM)
...
If NASM has changed, we logically want to re-run the ELF tests...
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-17 19:29:15 -07:00
H. Peter Anvin
e41b69beaf
Test and Makefile rules for 32- and 64-bit ELF shared libraries
...
Add Makefile rules for the 32-bit ELF shared library test, and add a
64-bit ELF shared library test (still work in progress.)
2008-10-17 17:13:26 -07:00
H. Peter Anvin
d41e07bd2e
Test for BR 2172659
...
Test for the bug fix for BR 2172659 (invalid byte-sized immediates.)
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-16 13:03:40 -07:00
H. Peter Anvin
b048324b9e
Test for various ELF64 GOT references
...
Try to test for various GOT references in ELF64.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-15 15:22:03 -07:00
H. Peter Anvin
aac7c0c174
test/pushseg.asm: add "pop cs"
...
"pop cs" is an 8086-only opcode; we support it for assembly but not
for disassembly.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-08 23:32:33 -07:00
H. Peter Anvin
c3ba3acf70
test/pushseg.asm: test for push/pop of segment registers
...
Simple test for push/pop of segment registers.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-08 23:30:41 -07:00
H. Peter Anvin
22098d3618
test/imul.asm: remove obsolete ERROR marker
...
Error already fixed...
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-07 16:53:49 -07:00
H. Peter Anvin
e831d67cec
Test for various IMUL patterns
...
Test for IMUL patterns.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-07 11:28:29 -07:00
H. Peter Anvin
65feb5ae33
Add missing IMUL pattern: reg64,imm8
...
Make "imul rax,byte 5" work as expected.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-07 11:26:41 -07:00
H. Peter Anvin
588df78b0d
New opcode for 32->64 bit sign-extended immediate with warning
...
Add a new opcode for 32->64 bit sign-extended immediate, with warning
on the number not matching.
This unfortunately calls for an audit of all the \4[0123] opcodes, if
they should be replaced by \25[4567]. This only replaces one
instruction (MOV reg64,imm32); other instructions need to be
considered.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-07 10:05:10 -07:00
H. Peter Anvin
f70fce6cc9
test/immwarn.asm: add a few more non-warning tests
...
A few non-warning conditions.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-07 09:59:18 -07:00
H. Peter Anvin
98a22a65c0
Avoid double warning for signed dword immediate
...
Avoid double warning for the case where a signed dword immediate is
incorrectly extended to 64 bits.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-06 23:49:01 -07:00
H. Peter Anvin
c1377e9a98
New opcodes to deal with 8-bit immediate sign extended to opsize
...
New opcodes to deal with 8-bit immediates which are then sign-extended
to the operand size. These allow us to warn appropriately.
Not sure I'm using these in all the proper places; need audit of all
uses of the \14..\17 opcodes.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-06 23:40:31 -07:00
H. Peter Anvin
9f8171317d
BR 2148448: Fix RIP-relative addressing with an immediate
...
When there is an immediate in the instruction, a RIP-relative offset
may not be relative to the end of the offset itself, since it is
relative to the end of the *instruction*, not the end of the *offset*.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-06 19:11:07 -07:00
H. Peter Anvin
a9ed99bddf
immwarn: more immediate warnings test, with notes of where we fail
...
More tests for immediate warnings, with notes for the ones where we
currently fail to do the right thing.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-06 18:49:00 -07:00
H. Peter Anvin
733cbb3197
test: change .stdout/.stderr to stdout/stderr
...
Using hidden files are rather antisocial, and rather pointless in this
particular context. Change .stdout and .stderr to simply stdout and
stderr.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-06 18:28:42 -07:00
H. Peter Anvin
1755a719a4
test/br2148476.asm: comprehensive test of the CVT* instructions
...
Do a best attempt at a comprehensive test of the various CVT* SSE
instructions. This includes the bug of BR 2148476.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-06 17:57:18 -07:00
H. Peter Anvin
9ac2b843b4
test/immwarn.asm: new test for immediate warnings
...
Test for various conditions that should or should not generate
immediate warnings.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-05 19:41:32 -07:00
H. Peter Anvin
1b221bed25
test/Makefile: rule to run performtest --diff
...
Rule to run performtest with the --diff option.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-04 22:02:44 -07:00
H. Peter Anvin
9c209cc256
performtest: use -u with diff
...
Unified diffs are the only sane option. When calling diff, pass the
-u option.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-04 22:01:42 -07:00
H. Peter Anvin
13d9d869a5
test/Makefile: add rules for the automatic tests
...
Add Makefile rules to run the automatic tests.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-04 21:59:38 -07:00
Victor van den Elzen
fd49408ed9
Already aligned aligns should be 0 bytes, not %1.
2008-10-01 13:21:02 +02:00
Victor van den Elzen
4c9d6220b4
Apply patch from BR 890790
2008-10-01 13:09:27 +02:00
H. Peter Anvin
0819e3b9a7
Add more 64-bit jump tests
2008-09-25 23:45:20 -07:00
H. Peter Anvin
2c8ad285fd
Clean up unterminated lines
2008-09-25 02:33:24 -07:00
H. Peter Anvin
152656f8d3
Actually make non-power-of-2 alignments work
...
We can't use ($$-$) % (%1) since the wraparound will be wrong except
for powers of 2.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-09-25 02:31:50 -07:00
H. Peter Anvin
9ebf2cb938
test/fwdoptpp: test %error, %warning, %fatal
...
Test all of %error, %warning, and %fatal.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-09-24 00:30:46 -07:00
H. Peter Anvin
8e3f75ea6e
%error, %warning out on the final pass, add %fatal
...
Only process %error or %warning directives on the final pass. Add a
new %fatal directive which terminates assembly immediately.
2008-09-24 00:21:58 -07:00
H. Peter Anvin
0af3e7ed3c
test: test for code that relies on the optimizer to be valid
...
There exists a fair bit of code out there which relies on the
optimizer in order to fit inside a predefined envelope. NASM 2.04rc4
breaks this; write a simple test to demonstrate.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-09-23 17:09:52 -07:00
Victor van den Elzen
3b404c0f6b
BR 1239818 - handle multiple %else clauses
...
Using multiple %else clauses or mixing %else and %elif
caused strange results.
Warn about it and produce sensible results.
2008-09-18 13:51:36 +02:00
Victor van den Elzen
28f4634634
Remove obsolete ROL-EQU hack
...
Now that there is proper forward reference resolution,
we can get rid of this junk. Wiping the flags also
removed the SBYTEnn flags, causing
cmp eax, a-b
a: nop
b:
to assemble with -Ox like
cmp eax, strict dword -1
This is now fixed.
2008-09-11 13:14:23 +02:00
H. Peter Anvin
5c10c17ba0
test/new: clean up whitespace
2008-08-29 18:04:16 -07:00
H. Peter Anvin
1c7cb9e28c
Script to create new test case boilerplate
2008-08-29 17:27:00 -07:00
H. Peter Anvin
163e5874d9
Accept implicit memory size for VMREAD/VMWRITE
2008-08-28 18:05:23 -07:00
H. Peter Anvin
5e7d6f1105
BR 2029472: Wrong operand size for VMREAD/VMWRITE in 64-bit mode
...
Fix the operand size for VMREAD/VMWRITE in 64-bit mode
2008-08-28 18:03:49 -07:00
H. Peter Anvin
dd1de39ece
BR 2028995: Missing MOVNTI m64, r64
...
Fix MOVNTI with a 64-bit argument.
2008-08-28 17:54:55 -07:00
H. Peter Anvin
3ba3af3290
Testcase for XCRYPT
2008-08-28 17:48:34 -07:00
H. Peter Anvin
7b4dc622c6
BR 2039212: Handle indirect far jumps in 64-bit mode
...
Handle indirect far jumps in 64-bit mode. Default to 64 bit unless
overridden, for consistency with other jumps.
2008-08-28 17:35:25 -07:00
H. Peter Anvin
dace226187
test: Fix file with no final newline
...
Fix test/br2030823.asm, which had no final newline.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-08-24 18:17:09 -07:00
H. Peter Anvin
2a09b3bf11
BR 2030823: Problem with the 256-bit FMA instructions
...
Fix the 256-bit FMA instructions per bug report.
2008-08-13 16:25:08 -07:00
Victor van den Elzen
a21194646a
minor bugfix in performtest.pl
2008-08-06 15:15:01 +02:00
Victor van den Elzen
22343c2c72
Add macro-defaults warning class and documentation.
2008-08-06 14:48:55 +02:00