]>
granicus.if.org Git - yasm/log
Peter Johnson [Sun, 10 Aug 2014 17:18:30 +0000 (10:18 -0700)]
Add cmake files to distribution.
Peter Johnson [Sun, 10 Aug 2014 07:51:51 +0000 (00:51 -0700)]
Bump copyright dates for 2014.
Peter Johnson [Sun, 10 Aug 2014 07:46:58 +0000 (00:46 -0700)]
Add vc12 files to distribution.
Peter Johnson [Sun, 10 Aug 2014 07:43:17 +0000 (00:43 -0700)]
dist-hook: Copy YASM-VERSION.h to Mkfiles/vc12.
Peter Johnson [Mon, 14 Apr 2014 05:55:47 +0000 (22:55 -0700)]
coff-objfmt.c: Add missing break.
[#268 state:resolved]
Peter Johnson [Mon, 14 Apr 2014 05:59:30 +0000 (22:59 -0700)]
Merge pull request #67 from maksqwe/initalen_fix
missing 'break' in initalen()
Maks Naumov [Fri, 11 Apr 2014 18:05:55 +0000 (21:05 +0300)]
missing 'break' in initalen()
Brian Gladman [Sun, 6 Apr 2014 07:40:31 +0000 (08:40 +0100)]
Rename a Visual Studio 2013 build file
Brian Gladman [Sun, 6 Apr 2014 07:35:10 +0000 (08:35 +0100)]
Add Visual Studio 2013 build files
Peter Johnson [Sun, 6 Apr 2014 06:34:27 +0000 (23:34 -0700)]
Add cpu ivybridge, haswell, broadwell, skylake.
Peter Johnson [Sat, 5 Apr 2014 07:17:13 +0000 (00:17 -0700)]
Add Intel ADX, RDSEED, and SMAP instructions.
Peter Johnson [Fri, 14 Feb 2014 20:01:43 +0000 (12:01 -0800)]
Add Intel SHA instructions.
Contributed by: Mark Charney @ Intel
Peter Johnson [Fri, 14 Feb 2014 19:33:25 +0000 (11:33 -0800)]
Merge pull request #66 from Gramner/master
Use a larger hash table size
Henrik Gramner [Thu, 16 Jan 2014 22:37:11 +0000 (23:37 +0100)]
Use a larger hash table size
Increases compilation speed of files with a large number of macros by
around 20x.
Brian Gladman [Wed, 13 Nov 2013 13:15:26 +0000 (13:15 +0000)]
test commit
briangladman [Wed, 13 Nov 2013 12:24:21 +0000 (12:24 +0000)]
Minor change to Python detection in the Visual Studio build to avoid spurious error message
Peter Johnson [Thu, 8 Aug 2013 05:11:39 +0000 (22:11 -0700)]
Optimize matching loops.
Reported by: Po-Chun Chang
[#264 state:resolved]
[#265 state:resolved]
[#266 state:resolved]
Peter Johnson [Wed, 3 Jul 2013 18:25:50 +0000 (11:25 -0700)]
Update config.guess and config.sub.
[#255 state:resolved]
Peter Johnson [Wed, 3 Jul 2013 18:06:56 +0000 (11:06 -0700)]
cv8: Fix line number issues with multiple files.
Patch by: Knut St. Osmundsen
[#263 state:resolved]
Peter Johnson [Fri, 21 Jun 2013 17:02:32 +0000 (10:02 -0700)]
Unbreak distcheck.
Peter Johnson [Sat, 1 Jun 2013 16:40:34 +0000 (09:40 -0700)]
Fix vpbroadcastq.
Patch by: Jason Garrett-Glaser <jason@x264.com>
BrianGladman [Tue, 6 Nov 2012 09:16:28 +0000 (09:16 +0000)]
Make the detection of Python in the Visual Studio 2010 build more robust
Peter Johnson [Sat, 20 Oct 2012 00:23:26 +0000 (17:23 -0700)]
Add support for "function" decorator in win32/win64.
This can be used on global directives (e.g. global _foo:function) to
indicate the global is a function. This is useful for incremental
linking in MSVC.
BrianGladman [Tue, 11 Sep 2012 18:57:20 +0000 (19:57 +0100)]
add new elf file to visual studio 2010 build
Peter Johnson [Fri, 31 Aug 2012 06:53:41 +0000 (23:53 -0700)]
gas-parse.c: Eliminate warning.
Peter Johnson [Fri, 31 Aug 2012 06:53:29 +0000 (23:53 -0700)]
Regen yasm_arch.7 and yasm_objfmts.7.
H.J. Lu [Tue, 26 Jun 2012 18:34:50 +0000 (11:34 -0700)]
Add support for x32
X32 is a 32-bit psABI for x86-64 with 32-bit pointer size. More info
can be found at:
https://sites.google.com/site/x32abi/
Peter Johnson [Fri, 31 Aug 2012 06:40:42 +0000 (23:40 -0700)]
Merge pull request #64 from sgraham/fix-win32-warnings
Fix a couple warnings when building on win32
Peter Johnson [Fri, 31 Aug 2012 06:34:49 +0000 (23:34 -0700)]
Improve check for Cython version.
[#249 state:resolved]
Peter Johnson [Sat, 18 Aug 2012 20:55:10 +0000 (13:55 -0700)]
Fix vphaddudq opcode; should be DB rather than D8.
Peter Johnson [Fri, 1 Jun 2012 04:43:51 +0000 (21:43 -0700)]
Merge pull request #65 from vmt/master
Fix definition of pmulhrw
Vivek Thampi [Tue, 29 May 2012 06:59:55 +0000 (23:59 -0700)]
Fix minor typo in the definition of pmulhrw
This change fixes the definition of "pmulhrw" where it is defined
as having the mnemonic "pmulhrwa".
Scott Graham [Thu, 10 May 2012 03:48:16 +0000 (20:48 -0700)]
fix a couple warnings when building on win32
Peter Johnson [Tue, 13 Mar 2012 06:58:35 +0000 (23:58 -0700)]
Merge pull request #63 from nico/blah
Don't use a C++ comment in a C source file.
Nico Weber [Sun, 11 Mar 2012 06:52:34 +0000 (22:52 -0800)]
Don't use a C++ comment in a C source file.
Peter Johnson [Sat, 10 Mar 2012 05:41:18 +0000 (21:41 -0800)]
Merge pull request #62 from nico/ticket246
In the Mach-O writer, only warn on ignored flags if the new flags are different from the old flags.
[#246 state:resolved]
Nico Weber [Wed, 7 Mar 2012 01:40:41 +0000 (17:40 -0800)]
In the Mach-O writer, only warn on ignored flags if the new flags
are different from the old flags.
Fixes http://tortall.lighthouseapp.com/projects/78676-yasm/tickets/246
Peter Johnson [Fri, 2 Mar 2012 22:38:30 +0000 (14:38 -0800)]
Merge pull request #61 from fischman/master
Silence is golden: genperf emits too much stdout in success path
sergey semenko [Mon, 27 Feb 2012 10:07:03 +0000 (12:07 +0200)]
Added support for HSW TSX instructions:
XAXQUIRE
XRELEASE
XABORT
XBEGIN
XEND
XTEST
Also fixed a bug for CALL instruction (opcode 0xE8) - it allowed 16 bit operand with 0x66 prefix in 64 bit mode,
while 16 bit operand is not allowed at all in 64 bit mode.
Added X86_ACQREL prefix group for XACQUIRE/XRELEASE prefixes, since they need to be orthogonal to LOCKREP
prefixes, because TSX prefixes must come together with F0 (LOCK) prefix.
However this commit does not enforce using TSX hints only with instructions they are allowed to be used.
The reason for this is that lock prefix F0 itself is not enforced to be used only with lockable instructions, this seems to be a decision made by
Yasm developers, that user himself must take care of these situations.
Right now TSX hints can come with F0 prefix, can come with REPNE/REPZE prefixes, but they are used together in assembly, only the leftmost would be
encoded to the binary and warning will be issued. This is the behavior of Yasm for duplicate LOCKREP prefixes.
Jason Garrett-Glaser [Thu, 2 Feb 2012 22:32:06 +0000 (14:32 -0800)]
Add AMD TBM instructions.
Reference: http://support.amd.com/us/Processor_TechDocs/24594_APM_v3.pdf
Also add appropriate CPU bits and directive handling for these.
Ami Fischman [Fri, 2 Mar 2012 22:12:19 +0000 (14:12 -0800)]
Drop success-path chatter from genperf.
BrianGladman [Mon, 31 Oct 2011 18:38:16 +0000 (18:38 +0000)]
Add prebuild step for yasm-verssion.h
BrianGladman [Mon, 31 Oct 2011 17:27:56 +0000 (17:27 +0000)]
add path for YASM-VERSION.h
Peter Johnson [Mon, 31 Oct 2011 05:39:50 +0000 (22:39 -0700)]
Bump DEF_VER to 1.2.0 for release.
Peter Johnson [Mon, 31 Oct 2011 07:11:49 +0000 (00:11 -0700)]
Add Mkfiles/vc10/out_copy_rename.bat to distribution.
Peter Johnson [Mon, 31 Oct 2011 07:10:39 +0000 (00:10 -0700)]
Copy YASM-VERSION.h to Mkfiles for distribution.
Peter Johnson [Mon, 31 Oct 2011 06:50:31 +0000 (23:50 -0700)]
re2c: Work around tmpfile() issue on win32.
tmpfile() defaults to C:\, and on Windows 7 can run into permissions issues.
Add workaround implementation from cairo
(http://cgit.freedesktop.org/cairo/commit/?id=
4fa46e3caaffb54f4419887418d8d0ea39816092 )
See also: http://msdn.microsoft.com/en-us/library/x8x7sakw(v=VS.80).aspx
(community content section)
Peter Johnson [Mon, 31 Oct 2011 05:21:57 +0000 (22:21 -0700)]
win64: Default to nobase for .xdata section.
Also add ..imagebase special symbol to force use of a nobase relocation.
[#135 state:resolved]
Peter Johnson [Mon, 3 Oct 2011 06:20:38 +0000 (23:20 -0700)]
re2c: Use tmpfile instead of fixed temporary filename.
This could cause a race condition when running parallel make.
Tracked down by Volker Braun.
[#238 state:resolved]
[#165 state:resolved]
Peter Johnson [Mon, 3 Oct 2011 05:11:01 +0000 (22:11 -0700)]
Merge pull request #60 from olsner/struc_base
Implement the base offset parameter for the struc macro
Simon Brenner [Sun, 2 Oct 2011 03:57:35 +0000 (05:57 +0200)]
Add testcase for struc with base offset
Simon Brenner [Sun, 2 Oct 2011 03:39:11 +0000 (05:39 +0200)]
Implement the base offset parameter to 'struc'
Peter Johnson [Fri, 30 Sep 2011 19:52:07 +0000 (12:52 -0700)]
nasm-pp.c: Plug a memory leak.
Peter Johnson [Wed, 28 Sep 2011 06:18:15 +0000 (23:18 -0700)]
Merge pull request #59 from pwo/patch-1
Fix clang warning.
Pawel Worach [Sat, 24 Sep 2011 13:41:08 +0000 (16:41 +0300)]
Fix clang warning:
libyasm/md5.c:166:31: warning: argument to 'sizeof' in 'memset' call is the same expression as the destination; did you mean to dereference it? [-Wsizeof-pointer-memaccess]
memset(ctx, 0, sizeof(ctx)); /* In case it's sensitive */
~~~ ^~~
Peter Johnson [Sun, 4 Sep 2011 04:27:21 +0000 (21:27 -0700)]
Makefile.am: Clean YASM-VERSION.h.
Peter Johnson [Sun, 4 Sep 2011 04:18:34 +0000 (21:18 -0700)]
Fix .gitignore for some wildcards.
Peter Johnson [Sun, 4 Sep 2011 04:18:08 +0000 (21:18 -0700)]
Add missing macho32-pext test case.
Peter Johnson [Sat, 27 Aug 2011 23:28:25 +0000 (16:28 -0700)]
Regenerate man pages.
Peter Johnson [Sat, 27 Aug 2011 17:01:26 +0000 (10:01 -0700)]
macho: Support N_PEXT bit.
Can be enabled via use of "private_extern" in NASM syntax.
Patch by: Hironori Bono
[#215 state:resolved]
Peter Johnson [Sat, 27 Aug 2011 16:25:30 +0000 (09:25 -0700)]
Generate version number information from git history.
Due to the svn import structure, a special case is currently implemented
to look for the 1.1.0 branchpoint instead of the most recent tag on the
master branch. This will be removed after the first release is tagged
on the master branch in git.
Specific details:
autogen.sh: More aggressively clean autoconf cache.
This is needed to ensure the version number is actually regenerated.
Don't generate PACKAGE_PATCHLEVEL or PACKAGE_BUILD variables. The
genversion program now parses PACKAGE_VERSION directly.
For Mkfiles builds, YASM-VERSION.h is generated and included by the custom
config.h. This avoids the need to edit config.h for versioning.
Peter Johnson [Sun, 29 May 2011 23:54:34 +0000 (16:54 -0700)]
Add .gitignore files.
These are based on the old svn:ignore properties.
Peter Johnson [Fri, 19 Aug 2011 17:43:16 +0000 (10:43 -0700)]
Remove $Id$ and RCSID() usage.
These are useless now that we're using git.
Peter Johnson [Fri, 19 Aug 2011 17:21:10 +0000 (10:21 -0700)]
Fix const warning in elf_machine_ssym usage.
Reported by: Pierre Muller
[#237 state:resolved]
Peter Johnson [Fri, 19 Aug 2011 17:12:15 +0000 (10:12 -0700)]
win64-except.c: Fix incorrect dereference.
Reported by: Pierre Muller
[#236 state:resolved]
Peter Johnson [Fri, 19 Aug 2011 17:07:34 +0000 (10:07 -0700)]
file.h: Separate conditional inclusion of direct.h.
This fixes builds on mingw64.
Reported by: Pierre Muller
[#235 state:resolved]
Peter Johnson [Mon, 11 Jul 2011 07:15:30 +0000 (00:15 -0700)]
dwarf: Fix uninitialized structure member.
dwarf2_loc.discriminator wasn't being initialized by
dwarf2_generate_line_section, leading to incorrect output, including
intermittent test failures in gen64/dwarf64_pathname.
Peter Johnson [Mon, 11 Jul 2011 06:44:18 +0000 (23:44 -0700)]
expr_simplify_identity: Pass int_term via pointer.
This allows signaling to the caller (expr_level_op) that the int_term
was destroyed. Without this, the new expr-simplify-identity testcase
has a use-after-free.
[#232 state:resolved]
Peter Johnson [Mon, 4 Jul 2011 18:35:19 +0000 (11:35 -0700)]
Fix VGATHER/VPGATHER memory sizes.
These now match the memory fetch sizes in the AVX reference.
Reported by: nasm64developer
Peter Johnson [Mon, 4 Jul 2011 02:44:42 +0000 (19:44 -0700)]
Add AVX2 VGATHER* and VPGATHER* instructions.
These instructions use "VSIB" encoding, which takes the place of the
usual SIB encoding. Several tests cover various legal and illegal
modes.
Last part of [#227 state:resolved].
Peter Johnson [Sun, 3 Jul 2011 21:36:37 +0000 (14:36 -0700)]
Add most Intel AVX2 instructions.
Reference: http://www.intel.com/software/avx rev11 spec
This is all AVX2 instructions except for VGATHER*/VPGATHER*, which
require additional ModRM handling.
Portions contributed by: Mark Charney <mark.charney@intel.com>
Part of [#227].
Peter Johnson [Sun, 3 Jul 2011 19:48:46 +0000 (12:48 -0700)]
pmovmskb/vpmovmskb: default operand size is 64 bits.
Peter Johnson [Sun, 3 Jul 2011 08:48:44 +0000 (01:48 -0700)]
Add Intel BMI1, BMI2, INVPCID, LZCNT instructions.
Reference: http://www.intel.com/software/avx rev11 spec
Also add appropriate CPU bits and directive handling for these.
Currently we have no good way of handling an "or" of instruction bits
(in this case needed for LZCNT, where it's either AMD or LZCNT). For
now, make it LZCNT only.
Contributed by: Mark Charney <mark.charney@intel.com>
Part of [#227].
Peter Johnson [Sun, 3 Jul 2011 00:11:10 +0000 (17:11 -0700)]
x86/gas: Fix no-suffix push and pop.
Previously plain "push" and "pop" would always generate a 16-bit pop
(for effective address versions).
Reported by: Alexei Svitkine
[#212 state:resolved]
Peter Johnson [Sat, 2 Jul 2011 23:28:29 +0000 (16:28 -0700)]
Add test for 64-bit shr/shl.
Peter Johnson [Tue, 28 Jun 2011 06:48:28 +0000 (23:48 -0700)]
Allow 64-bit LFS/LGS/LSS.
[#229 state:resolved]
Peter Johnson [Sun, 26 Jun 2011 06:32:22 +0000 (23:32 -0700)]
Fix "times" relocation handling.
Previously a line such as "times 4 mov rax, [rel foobar]" would result
in incorrect relocations being generated.
Patch by: bird-yasm@anduin.net
[#211 state:resolved]
Peter Johnson [Sat, 25 Jun 2011 22:09:03 +0000 (15:09 -0700)]
Fix cython.m4 for beta versions of Cython.
[#204 state:resolved]
Peter Johnson [Sat, 25 Jun 2011 21:58:27 +0000 (14:58 -0700)]
Fix build with recent Cython.
[#216 state:resolved]
Peter Johnson [Tue, 21 Jun 2011 06:30:44 +0000 (23:30 -0700)]
Fix #263: Add quotes to yasm.rules switches.
Peter Johnson [Sun, 29 May 2011 22:29:15 +0000 (15:29 -0700)]
Fix escaping at end of gas string constant.
Patch by: Daniel Diaz <Daniel.Diaz@univ-paris1.fr>
Peter Johnson [Sun, 29 May 2011 20:14:22 +0000 (13:14 -0700)]
Fix lar and lsl second operand size.
Also support 32-bit second operand for extra compatibility against ISA
documentation, although only the low 16 bits are used.
Fixes #261.
Jari Aalto [Sun, 1 May 2011 11:46:36 +0000 (14:46 +0300)]
frontends/yasm/yasm.xml: Use GNU layout and put --help option to the end
Signed-off-by: Jari Aalto <jari.aalto@cante.net>
Signed-off-by: Peter Johnson <peter@tortall.net>
Peter Johnson [Mon, 21 Mar 2011 04:18:01 +0000 (21:18 -0700)]
Fix test failure due to build environment.
When YASM_TEST_SUITE environment is defined, force version to "yasm
HEAD" and all yasm__getcwd() calls to return "./".
Brian Gladman [Sat, 29 Jan 2011 10:50:25 +0000 (10:50 -0000)]
1. Tidy up VS 2010 build
2. Set correct VS tool path on win32 systems
svn path=/trunk/yasm/; revision=2368
Peter Johnson [Mon, 6 Sep 2010 19:33:25 +0000 (19:33 -0000)]
Fix #223: Correctly handle "./" paths in dwarf2.
As dwarf2 has a directory table in addition to a filename table, we split
the provided pathname when generating the filename table. This correctly
combined both "./foo" and "foo" into a single filename table entry.
However, we were only matching on pathname instead of dir+filename when
actually generating the dwarf opcodes, resulting in not finding the "./foo"
version. Fix to check both dir and filename separately, splitting the same
way we do when generating the filename table.
svn path=/trunk/yasm/; revision=2367
Peter Johnson [Sat, 21 Aug 2010 07:32:54 +0000 (07:32 -0000)]
Improve gas syntax .set directive to better match GNU as behavior.
- Add support for deferred symbols (those which depend on other symbols
that have not yet been .set)
- Add support for re-defining symbols
- Add support for 0x hex notation in literals
Contributed by: Alexei Svitkine <alexei.svitkine@gmail.com>
svn path=/trunk/yasm/; revision=2366
Peter Johnson [Wed, 18 Aug 2010 06:23:30 +0000 (06:23 -0000)]
coff: Add support for gas .secrel32 directive.
svn path=/trunk/yasm/; revision=2365
Peter Johnson [Wed, 18 Aug 2010 06:23:06 +0000 (06:23 -0000)]
Implement yasm_value_finalize_expr() using yasm_value_finalize().
Previously this was implemented the opposite way, contrary to its
documentation. This resulted in clearing any already set yasm_value
relative fields.
svn path=/trunk/yasm/; revision=2364
Peter Johnson [Wed, 18 Aug 2010 06:21:34 +0000 (06:21 -0000)]
Add prototype for yasm_dv_get_value().
svn path=/trunk/yasm/; revision=2363
Peter Johnson [Wed, 18 Aug 2010 06:21:08 +0000 (06:21 -0000)]
Add yasm_dv_get_value() to get yasm_value from yasm_dataval.
svn path=/trunk/yasm/; revision=2362
Peter Johnson [Tue, 17 Aug 2010 05:36:18 +0000 (05:36 -0000)]
coff dir_def(): Use symtab_use() instead of symtab_get().
svn path=/trunk/yasm/; revision=2361
Peter Johnson [Tue, 17 Aug 2010 05:32:46 +0000 (05:32 -0000)]
coff/win32/win64: Add support for .def, .scl, .type, and .endef directives.
These can be used to set a specific value for the coff sclass and type
symbol fields.
svn path=/trunk/yasm/; revision=2360
Peter Johnson [Mon, 16 Aug 2010 02:28:36 +0000 (02:28 -0000)]
dwarf2: Add support for .loc "discriminator" option.
svn path=/trunk/yasm/; revision=2359
Peter Johnson [Sat, 14 Aug 2010 02:26:41 +0000 (02:26 -0000)]
gas: Fix movsw/movzw memory operand encodings.
The register versions worked okay due to size matching, but the memory
versions relied on suffix matching, which wasn't being generated correctly.
Reported by: Tony Goelz <cag@absoft.com>
svn path=/trunk/yasm/; revision=2358
Peter Johnson [Fri, 6 Aug 2010 08:14:51 +0000 (08:14 -0000)]
Bump trunk internal version to 1.1.99.
svn path=/trunk/yasm/; revision=2351
Peter Johnson [Sun, 1 Aug 2010 17:44:56 +0000 (17:44 -0000)]
Fix #213: Fix gas-preproc misuse of strcpy() and uninitialized variables.
- strcpy() was being used with overlapping memory ranges; switched to memmove().
- bline->line_number was not set in one location.
Exact causes identified using valgrind.
svn path=/trunk/yasm/; revision=2348
Peter Johnson [Sun, 1 Aug 2010 17:31:12 +0000 (17:31 -0000)]
win32: Make external safeseh work again (broken in [2343]).
svn path=/trunk/yasm/; revision=2347
Peter Johnson [Sun, 1 Aug 2010 01:37:37 +0000 (01:37 -0000)]
Rename RDRND feature bit to RDRAND.
svn path=/trunk/yasm/; revision=2346
Peter Johnson [Sun, 1 Aug 2010 01:27:40 +0000 (01:27 -0000)]
macho32: Correctly output pc-relative non-external intersegment.
Reported by: Justin Lebar <justin.lebar@gmail.com>
svn path=/trunk/yasm/; revision=2345