0
0
mirror of https://github.com/netwide-assembler/nasm.git synced 2025-09-22 10:43:39 -04:00
Files
nasm/x86/rex2.pl
H. Peter Anvin 0ab85c391c x86: add Perl script for rex2 compatibility testing (not yet used)
Add a Perl script to try to automate REX2 compatibility flagging. Not
yet integrated into the build process.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
2025-03-04 08:43:09 -08:00

26 lines
507 B
Perl

#!/usr/bin/perl
use integer;
while (<>) {
chomp;
print $_;
if (!/\#/ &&
# VEX/XOP is implicit so no need to clutter
# the table with it...
!/\b(rex2|vex|evex|xop)\b/ &&
!/\bNOAPX\b/ &&
!/\bNOLONG\b/ &&
# Maps 2+ are not REX2 encodable, this is implicit
!/\b0f3[a8]\b/ &&
!/\b(m|map)([2-9]|[1][0-9])\b/ &&
((!/\b0f\b/ &&
!/\b[^47ae][0-9a-f] [47ae][0-9a-f]\b/ &&
/\b[47ae][0-9a-f]\b/) ||
/\b0f [38][0-9a-f]\b/ ||
/^(XSAVE|XRSTOR)/)) {
print ",NOAPX";
}
print "\n";
}