Commit graph

2166 commits

Author SHA1 Message Date
Brian Gladman
ffbd22cdc9 Merge branch 'master' of https://github.com/yasm/yasm 2022-01-27 16:26:06 +00:00
Brian Gladman
9d02e0f49d Update Visual Studio build to Visual STudio 2022 2022-01-27 16:25:55 +00:00
Peter Johnson
41762bead1
Update Mach-O for newer macOS (#180)
- Create a dummy .llvmasm section for bitcode
- Add [buildversion] directive for setting minos and sdk versions, e.g. [buildversion minos="10.14" sdk="10.14"]. This defaults to 10.5 on x64 and 10.4 on x86.
2021-07-10 12:12:45 -07:00
Peter Johnson
d938d97505
Add GitHub CI build workflow (#179) 2021-07-09 14:49:16 -07:00
Peter Johnson
3e74376b56
Do not use AC_HEADER_STDC (#178)
This fixes compatibility with autotools 2.70+
2021-07-09 14:02:37 -07:00
Peter Johnson
f01afb6b51
Fix test failures (#177)
These were caused by the addition of the segreg-in-64bit warning.
2021-07-09 13:42:53 -07:00
Brian Gladman
009450c7ad minor update to VS2019 build 2020-07-27 17:01:46 +01:00
Brian Gladman
c9db6d70a9 add missing include file 2020-05-04 14:54:18 +01:00
mx237
98a83602f2
Fix EOL handling in genmacro.c (#123) 2020-05-03 23:38:42 -07:00
Denis Denisov
bd283fe523
Revert optimizations added in #68 (#146) 2020-05-03 23:36:45 -07:00
Ozkan Sezer
976d2e0934
Fix info.stab / info.stabstr typo in stabs-dbgfmt.c (#96) 2020-05-03 23:35:04 -07:00
Brian Gladman
ea8f239361 Allow user to set the YASM path with or without an ending backslash in Visual Studio integration 2019-10-12 15:02:44 +01:00
Brian Gladman
bcc01c59d8 add build files for Microsoft Visual Studio 2019 2019-05-16 13:57:23 +01:00
Brian Gladman
80bc804ecb Merge branch 'master' of https://github.com/yasm/yasm 2018-12-04 22:34:21 +00:00
Brian Gladman
a1aa3adc2c correct bug in VSYASM build integration files (vsyasm.targets) 2018-12-04 22:33:14 +00:00
Brian Gladman
70f79a3a66 correct bug in VSYASM build integration files (vsyasm.targets) 2018-12-04 21:18:38 +00:00
Brian Gladman
35af9720e3 change vsyasm.props to use the YASM_PATH environment variable if present 2018-09-28 00:38:32 +01:00
Brian Gladman
627e1c29a4 Update the files for integrating YASM into Visual Studio 2017 2018-09-27 18:34:45 +01:00
mostynb
e256985c49 avoid 'return value of ftruncate ignored' warnings (#76) 2017-09-23 15:14:23 -07:00
Matt Oliver
6eac25ff8c allow movbe to be suffixed with wlq in gas syntax. 2017-09-23 15:11:49 -07:00
Matt Oliver
7418458622 fix memory errors when using gas processor with coff object output. 2017-09-23 15:11:49 -07:00
Simon Brenner
85dad85f7c Only print 'warnings treated as errors' if there were warnings (#75)
This prints it as an additional error for the line that generated the
first warning.
2017-09-23 15:09:47 -07:00
bird2tori
4808260d62 Leak fixes (#79)
* preproc/nasm: Close the input file; addressed a few memory leaks.

* yasm.c: delete include paths before we exit

* cv-dbgfmt.c: Free cv_filename::filename too.
2017-09-23 15:08:58 -07:00
Paul Blinzer
91d628ac60 New AMD Excavator MONITORX, MWAITX instruction support (for 32bit/64bit) (#78)
MONITORX has opcode "0F 01 FA".
rAX contains address to be monitored
ECX specifies optional extensions
EDX specifies optional hints

MWAITX has opcode "0F 01 FA".
EAX specifies optional hints
ECX specifies optional extensions

Public documentation: http://support.amd.com/TechDocs/24594.pdf

New CLZERO instruction support (for 32bit/64bit)
		* clzero has opcode "0F 01 FC".
		* clzero gets enabled with CPUID, 8000_0008, EBX[0] =1.
		* clzero instruction zero's out the 64 byte cache line specified in rAX. Bits 5:0 of rAX are ignored

Copyright (c) 2016 Advanced Micro Devices, Inc. All rights reserved.
Redistributed under simplified 2-clause BSD licence
2017-09-23 15:08:03 -07:00
Brian Gladman
6caf151893 add Visual Studio 2017 build files 2017-03-07 20:38:37 +00:00
Brian Gladman
6143552f92 add missing VC++ header 2017-03-07 20:31:18 +00:00
Peter Johnson
51af4082cc Added -Wno-segreg-in-64bit.
This allows suppressing the annoying 'segment register ignored in 64-bit mode'
warning.
2015-11-06 20:15:04 -08:00
Brian Gladman
0efd093199 Merge branch 'master' of github.com:yasm/yasm 2015-11-06 11:33:59 +00:00
Brian Gladman
86b96b21fa update MSVC14 build 2015-11-06 11:33:14 +00:00
Peter Johnson
19a29bfca1 Merge pull request #74 from darealshinji/patch-1
fixing an argument parsing bug in ytasm
2015-11-06 02:43:29 -08:00
Peter Johnson
3733061744 Merge pull request #70 from sgraham/shadowing-warning-vs2015
Avoid shadowing warning when building with VS2015
2015-11-06 02:38:39 -08:00
Peter Johnson
257df7ec47 Merge pull request #72 from Gramner/master
Support numbers prefixed with + or - in %ifnum
2015-11-06 02:36:56 -08:00
darealshinji
8fd3d4d95e fixing an argument parsing bug in ytasm
Taken from a Debian patch.
More information can be found at
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=716639
http://anonscm.debian.org/viewvc/sam-hocevar/pkg-misc/unstable/yasm/debian/patches/100_ytasm_parsing_error.diff?view=log
2015-11-05 18:57:21 +01:00
Henrik Gramner
32ad9c46ce Support numbers prefixed with + or - in %ifnum 2015-10-17 21:50:15 +02:00
Brian Gladman
7160679eee add Visual Studio build files missed in thye initial commit 2015-07-27 20:48:42 +01:00
Brian Gladman
afef34e3ce Add build files for Visual Studio 2015 2015-05-16 15:17:55 +01:00
Scott Graham
ac99773493 Avoid shadowing warning when building with VS2015 2015-02-19 17:05:38 -08:00
Peter Johnson
bf8411efa8 Merge pull request #68 from jix/master
Optimization and improved @jix
2015-01-01 21:51:00 -08:00
Peter Johnson
399029052c Merge pull request #69 from denji/gas-segfault
Fix segfaults GNU assembler files on OS X
2015-01-01 21:49:16 -08:00
Denis Denisov
0c2d90c6b3 Fix yasm segfaults GNU assembler files on OS X
Bug: http://tortall.lighthouseapp.com/projects/78676/tickets/269
2014-11-15 23:37:54 +02:00
Peter Johnson
1962750ea6 Allow -longopt as well as --longopt.
This is more consistent with other tools.
2014-10-05 10:31:26 -07:00
Peter Johnson
85b88de12d Rename -E option to -Z.
"-E" is too easily typoed for "-e", and is dangerous because it overwrites
the following filename.  "-E" is retained as a synonym for "-e".

This change also makes yasm command-line consistent with NASM.
2014-10-05 10:10:08 -07:00
Peter Johnson
d7abe469f5 Fix a few more cases of case sensitivity in module handling. 2014-10-05 09:50:55 -07:00
Peter Johnson
6818957d07 Make cmake module search case-insensitive.
This is needed to make things like "-f Win32" work, and matches the non-cmake
behavior.

[#276 state:resolved]
2014-10-05 09:48:51 -07:00
Peter Johnson
1910e91479 COFF/PE: Always set paddr and vaddr to 0.
It appears that GNU binutils always interpret PE/COFF object files as if
they were executable files, namely that the paddr field is a rounded-up
section size (aka virtual size).  Yasm previously followed the Microsoft
specification which stated that for object files this field should be set
to the "physical address" of the section (e.g. the sum of all previous
section sizes).  However, several other sources state this field should be
set to 0 in object files, and it appears that Microsoft tools accept this.

For compatibility with the GNU tools, this commit makes Yasm always set the
paddr/vsize field to 0.

This commit also eliminates the COFF_SET_VMA customization for COFF
files.  Previously this was used to set LMA=VMA in COFF, but LMA=0 in PE.
Now that VMA is always 0, this is no longer required (LMA=VMA=0 in both
PE and COFF).
2014-09-26 21:12:42 -07:00
Peter Johnson
4c2772c3f9 Add missing objfmt_x64 to CMakeLists.txt.
This caused cmake builds to not recognize "x64" as an object format.

Reported by: Brian Gladman
2014-09-19 00:46:15 -07:00
Peter Johnson
ba463d3c26 Bump DEF_VER to 1.3.0 for release. 2014-08-10 23:18:52 -07:00
Peter Johnson
636dc92558 Allow building of static executables with cmake. 2014-08-10 23:18:46 -07:00
Peter Johnson
24e01c833f Add missing YASM_LIB_DECL declarations. 2014-08-10 12:33:52 -07:00
Peter Johnson
d3ea3ac89f genstring.py: Make Python3-compatible. 2014-08-10 12:33:52 -07:00