Asm-X86
view release on metacpan or search on metacpan
Revision history for Asm-X86
2026-07-05 Bogdan Drozdowski <bogdro \at\ cpan . org>
* Version 0.73
Updated the instruction list. Some (invisible) improvements to the
build system.
* lib/Asm/X86.pm (@instr_intel): Updated the instruction list from
NASM version 3.02.
2025-11-05 Bogdan Drozdowski <bogdro \at\ cpan . org>
* Version 0.72
Updated the instruction list. Code simplifications. Other small
changes.
* lib/Asm/X86.pm (@instr_intel): Updated the instruction and register
lists from NASM version 3.01.
* lib/Asm/X86.pm: Simplified parameter assigning in subroutines.
* lib/Asm/X86.pm (conv_intel_instr_to_att, _add_suffix_if_reg): Moved
common code to a subroutine.
* lib/Asm/X86.pm (conv_intel_instr_to_att): Convert only when a match
is found. Simplified regexes.
* Makefile.PL: Put the version in a variable.
* lib/Asm/X86.pm, t/zz*.t, Makefile.PL, README: Updated the copyright
and version.
2024-06-26 Bogdan Drozdowski <bogdro \at\ cpan . org>
* Version 0.70
Updated the instruction list. Updated the register list. Fixed
converting some instructions. Added support for new data size
suffixes. Performance optimizations. Fixed tests for Perl
interpreters without taint support. Other small updates.
* lib/Asm/X86.pm (@instr_intel): Updated the instruction list from
NASM version 2.16.02. Removed 'equ' from the instruction list.
* lib/Asm/X86.pm (@regs_bound_intel, @regs_bound_att, @regs_intel,
@regs_att, is_reg_bound_intel, is_reg_bound_att, is_reg_bound),
t/zz_regs_att.t, t/zz_regs_intel.t: Added support for the bound
registers.
* lib/Asm/X86.pm: Changed names of some variables. Fixed a typo in
the documentation. Updated the copyright and version. Updated the
links and deleted the inactive cpanratings.perl.org link (thanks to
Peter John Acklam for reporting).
* lib/Asm/X86.pm (_remove_size_qualifiers_add_dollar,
conv_intel_instr_to_att): Added new size suffixes.
* lib/Asm/X86.pm (conv_att_instr_to_intel): Convert the instructions
only if necessary (better performance). Fixed converting jmp/call,
FPU and MOV[S/Z]X instructions.
* t/zz_conv.t: Added tests for the jmp/call, FPU and size conversion
(like "cbw", etc.) instructions.
* t/*.t: Removed "-T" from the command line for Perl interpreters
without taint support.
* lib/Asm/X86.pm, t/zz*.t, Makefile.PL: Added license blocks and
mentioned Project Asmosis in them.
* README: Updated the links and deleted the inactive link pointing to
cpanratings.perl.org.
2023-01-08 Bogdan Drozdowski <bogdro \at\ cpan . org>
* Version 0.65
Updated the instruction list. Simplified and updated the code in
address validation, bringing back 100% test coverage. More unit
tests. Other small updates.
* lib/Asm/X86.pm (@instr_intel): Updated the instruction list from
NASM version 2.16.01.
* lib/Asm/X86.pm (_validate_16bit_addr_parts_intel,
_validate_16bit_addr_parts_att, _validate_32bit_addr_parts_intel,
_validate_32bit_addr_parts_att, _validate_64bit_addr_parts_intel,
_validate_64bit_addr_parts_att): Commented-out parameters and
statement tests which are always true or are not needed.
* lib/Asm/X86.pm (_validate_32bit_addr_parts_att,
_validate_32bit_addr_parts_intel, _validate_64bit_addr_parts_att,
_validate_64bit_addr_parts_intel): Changed testing the scale as a
number to testing as a string to prevent errors.
* lib/Asm/X86.pm, README: Bump the year in the copyright notices.
* KEY.asc: renamed from "KEY" to help the web POD viewer.
* t/{zz_addr_att.t,zz_addr_intel.t}: More tests.
* t/zz_duplicates.t: Display the found duplicates, if any, and
changed the message.
2021-09-19 Bogdan Drozdowski <bogdro \at\ cpan . org>
* Version 0.62
* Changes, Makefile.PL, META.*, MYMETA.*: Fix the e-mail addresses.
* lib/Asm/X86.pm (conv_intel_addr_to_att): remove unnecessary
variables, change regexes to variables and qr// for better
readability and reduced code duplication.
* lib/Asm/X86.pm (_change_to_intel_addr_if_applicable): a new private
subroutine to convert an applicable expression to an intel memory
reference.
* lib/Asm/X86.pm (conv_att_instr_to_intel): call the new subroutine
_change_to_intel_addr_if_applicable to simplify, remove duplicated
code, change regexes to variables and qr// for better readability
and reduced duplication.
* lib/Asm/X86.pm (_remove_size_qualifiers_add_dollar): a new private
subroutine to remove any size qualifiers and leading or trailing
whitespace from the parameter, prefixing it with a dollar-sign when
necessary.
* lib/Asm/X86.pm (conv_intel_instr_to_att): call the new subroutine
_remove_size_qualifiers_add_dollar to simplify and remove
duplicated code, change regexes to variables and qr// for better
readability and reduced duplication.
2021-06-19 Bogdan Drozdowski <bogdro \at\ cpan . org>
* Version 0.61
Fixed compatibility issues.
* Makefile.PL: Corrected hash keys and values to be strings.
* t/zz_regs_{att,intel}.t: Fixed passing parameters and hash usage.
2021-06-16 Bogdan Drozdowski <bogdro \at\ cpan . org>
( run in 1.781 second using v1.01-cache-2.11-cpan-7fcb06a456a )