0
0
mirror of https://github.com/netwide-assembler/nasm.git synced 2025-10-10 00:25:06 -04:00
Commit Graph

5413 Commits

Author SHA1 Message Date
H. Peter Anvin
d45ad2e7ed openwcom.mak: use %null instead of @rem for $(SIDE)
%null appears to be the recommended way to do $(SIDE) on WMAKE.

Suggested-by: KO Mying-Hun <komh78@gmail.com>
Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-03 10:23:11 -07:00
H. Peter Anvin
a563e84a69 Merge remote-tracking branch 'jperrett256/jdp-doc-edits'
Resolved Conflicts:
	doc/macropkg.src

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2025-10-03 10:19:32 -07:00
thesmartwon
28b96452a1 fix typo in --help 2025-10-03 10:14:26 -07:00
H. Peter Anvin
505fa79142 Merge pull request #115 from yjh-styx/master
Absent command 'BTS' (typo?)
2025-10-03 10:11:57 -07:00
Yongjie2017
a05239c08e Merge branch 'netwide-assembler:master' into master 2025-10-03 08:59:55 +08:00
Yongjie2017
f0037ab726 additional note for running nmake building 2025-10-03 08:59:41 +08:00
H. Peter Anvin
f2da39910a doc/rdsrc.pl: fix output file comment
Not at all important, but might as well be consistent...

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-02 17:37:39 -07:00
H. Peter Anvin
40a161bccd NASM 3.00rc19 nasm-3.00rc19 2025-10-02 17:37:09 -07:00
H. Peter Anvin
467828c431 Even more path hacks for the rpm build
- append /html if htmldir = docdir

- Run autogen.sh with --cleanenv

- Actually use PDFZ and not just Z in doc/Makefile.in.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-02 17:31:58 -07:00
H. Peter Anvin
b0b56c836f tools/release: unset ACLOCAL_PATH
ACLOCAL_PATH should not be used for a release build.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-02 17:12:45 -07:00
H. Peter Anvin
a179a1a826 install: add option for installing .pdf.xz; fix RPMs
- Add an option to use "make install" to install .pdf.xz

- Fix RPM spec file to put the documentation in doc/nasm instead of
  doc/nasm-doc.

- RPM doesn't like unversioned Obsoletes; set a valid cutoff.

- Make nasm-doc depend on nasm.

- Add zlib-devel as a build dependency.

- Add EXTRA_CFLAGS and EXTRA_LDFLAGS for some automated platforms.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-02 17:11:52 -07:00
H. Peter Anvin
7415a1e5f8 Build: update various build installation directories
Modernize and improve the handling of build directories.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-02 16:08:04 -07:00
yjh-styx
4e7a90c4e2 Merge branch 'netwide-assembler:master' into master 2025-10-03 01:45:35 +03:00
H. Peter Anvin
534edcba04 editors: add JSON output
Add JSON formatted editor help output as a way to help more general
editor support code.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-02 14:18:57 -07:00
H. Peter Anvin
c6c67f3011 editors: add explicit special case handing
The automatic extraction procedure can only do so much. At some point
it is simpler to add explicit special case handling.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-02 13:57:15 -07:00
H. Peter Anvin
02042dae1c nasmtok.el: use ${file} to end, to match the start
Use ${file} in both places, in case someone uses a different output
filename for some reason.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-02 13:50:38 -07:00
H. Peter Anvin
01e40a9aeb Move editor help files to editors/, add NASM version number
Move the editor help files (currently nasmtok.el) to the editors/
subdirectory in anticipation of having more such files.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-02 13:49:43 -07:00
H. Peter Anvin
959644a017 msvc.mak: make sure perl is only run if it exists
Only try to run a Perl interpreter if the system actually has one
available. Because timestamps on Windows are apparently not preserved
on archive extraction, otherwise it might happen that nmake will try
to rebuild files even through they already exist.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-01 19:36:22 -07:00
H. Peter Anvin
03391e61ec nasmtok.el: include builtin macros and macro functions
Use a really hacky way to run the NASM binary and extract automatic
builtin macros. As this is not something normally supported during the
NASM build process, the output is canned and will need to be run
manually.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-01 16:06:40 -07:00
H. Peter Anvin
094cc54cd3 emacstbl.pl: extract build-in macro names
Extract builtin macro names into emacstbl.pl, and avoid duplicated
tokens.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-01 15:11:40 -07:00
H. Peter Anvin
869935edfd Merge remote-tracking branch 'emacstbl/emacstbl-footer'
Resolved Conflicts:
	misc/emacstbl.pl

This also reverts the token names to the version without the -token-
infix.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-01 14:35:14 -07:00
H. Peter Anvin
d021e86def NASM 3.00rc18 nasm-3.00rc18 2025-10-01 14:25:54 -07:00
H. Peter Anvin
72118a9ff6 emacstbl.pl: a few minor tweaks to the emacs token table generator
Hopefully this will be useful to someone.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-01 14:25:04 -07:00
H. Peter Anvin
0b3c971f5b portability: "const macros_t" is redundant
Some C compilers don't like that...

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-01 13:55:38 -07:00
H. Peter Anvin
dfacf9a3d7 Makefiles: remove warnings generation from auxiliary Makefiles
The .time trick doesn't seem to work in general, and auxiliary
Makefiles aren't guaranteed to build modified sources anyway.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-01 13:55:33 -07:00
H. Peter Anvin
205512f3c0 Makefile: a few more portability improvements
Define macros for generating an empty file and for a dummy (side
effect) target.

Tweak MSVC compiler options.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-01 13:55:07 -07:00
H. Peter Anvin
a54a902f4e Makefile: unbreak msvc.mak
With these changes msvc.mak works on Visual Studio 2022.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-01 13:54:04 -07:00
H. Peter Anvin
80cea0baa3 mkdep.pl: don't get confused by messed up line endings
Just strip any whitespace at the end of a line.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-01 13:53:20 -07:00
H. Peter Anvin
37d8ee5768 nasmlib/rlimit.c: fix broken comment
A comment that apparently was mangled during SPDX conversion.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-01 13:53:05 -07:00
yjh-styx
ad0a206964 Merge branch 'netwide-assembler:master' into master 2025-10-01 23:04:07 +03:00
H. Peter Anvin
4acc3dbccc Fix more license headers 2025-10-01 12:05:34 -07:00
H. Peter Anvin
85a8d85174 tools/spdx.pl: use the same format SPDX header ;)
The tool that fixes the files wasn't fixed...

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-01 11:49:23 -07:00
H. Peter Anvin
c811a80700 tools: sync the "cleanfile" and "cleanpatch" with Linux
Sync the "cleanfile" and "cleanpatch" scripts with the versions from
the Linux kernel.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-01 11:46:06 -07:00
H. Peter Anvin
23ce05f906 treewide: replace verbose copyright headers with SPDX tags
SPDX is an international standard for documenting software license
requirements. Remove the existing headers and replace with a brief
SPDX preamble.

See: https://spdx.dev/use/specifications/

The script used to convert the files is added to "tools", and the
file header templates in headers/ are updated.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-01 11:45:31 -07:00
H. Peter Anvin
ee85248e85 version.pl: strip ALL whitespace
Strip all whitespace from version.pl input, in case combinations of
tools causes stray \r or other whitespace characters (which has been
observed.)

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-10-01 11:20:05 -07:00
Iouri Kharon
eb4e4470cc Absent command 'BTS' (typo?) 2025-10-01 11:08:18 +03:00
H. Peter Anvin
f8680b2b45 NASM 3.00rc17 nasm-3.00rc17 2025-09-30 15:20:48 -07:00
H. Peter Anvin
aa1306c308 ffmpegtest: save the results in a file
Save the result output to a file.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-09-30 15:19:56 -07:00
H. Peter Anvin
981740c7a1 ffmpegtest: don't redo the whole compile every time
Don't redo the whole clone and compile if one wants to re-run the
test. Only rebuild the NASM files.

Minor script cleanups.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-09-30 14:30:04 -07:00
H. Peter Anvin
48f7170772 insns.pl: sanity-check that instruction encodings match operands
Error out if an encoding position is invalid, like an "r" operand
matches an "xmmrm" operand.

Document the instruction encoding symbols; there are too many of them
by now.

Add symbols 'n' and 'w' meaning immediates that are supposed to be
encoded as if they were 'm' memory addresses and 'v' register numbers,
respectively; this is necessary to indicate a validation exception.

Remove broken ARPL "memory-like" encoding. It probably never worked
anyway.

This verification caught two bugs already:

- VPMASKMOV[DQ] cannot omit the second operand.

- Incorrect operand encoding order for VREDUCESH.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-09-30 12:06:11 -07:00
H. Peter Anvin
54547eba35 Merge remote-tracking branch 'yongjie/master' 2025-09-30 09:47:53 -07:00
H. Peter Anvin
595afc6f4b portability: add missing PRI* constants, signed 1 in bitfield hack
Add missing uses of PRI constants.

Create a PRI constant for size_t, since %z isn't available on all
platforms. Notably, the legacy Windows runtime needs %I instead of %z.
Use that on UCRT as well, since there doesn't seem to be a way to
determine if you are compiling for MSVCRT or UCRT.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-09-30 09:41:03 -07:00
Yongjie Sheng
95095b325c add few more avx10.2 convert instructions 2025-09-30 23:29:30 +08:00
Yongjie2017
3095ce61f8 Merge pull request #2 from Yongjie2018/master
Update vmovd and vmovw operand sequence
2025-09-30 14:37:13 +08:00
Sheng, Yongjie
f350ad1f4b Update vmovd and vmovw operand sequence 2025-09-30 15:34:08 +01:00
Sheng, Yongjie
4e7fdc1d62 update travis test for vextract instruction family 2025-09-30 14:47:10 +01:00
Yongjie2017
f513a44f27 Merge pull request #1 from Yongjie2018/master
update travis test for vextract instruction family
2025-09-30 13:49:37 +08:00
Yongjie2017
24557c4128 Merge branch 'netwide-assembler:master' into master 2025-09-30 13:47:51 +08:00
H. Peter Anvin
1185c1f118 Document the [LIST] directive and add -LF option to suppress it
- Document the [LIST] directive
- Add an option -LF to ignore the [LIST] directive
- Fix [LIST -] suppressing output on a following pass
- Minor other documentation fixes

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-09-29 21:48:43 -07:00
Yongjie2017
e6d7fcc62a Merge branch 'netwide-assembler:master' into master 2025-09-30 11:54:39 +08:00