diff options
author | Andy Polyakov <appro@openssl.org> | 2011-06-28 13:33:47 +0000 |
---|---|---|
committer | Andy Polyakov <appro@openssl.org> | 2011-06-28 13:33:47 +0000 |
commit | 4a46dc6e5c9c1a1b4b9bf0150d08c101eaf3b43e (patch) | |
tree | d623df4dce65bbf94f44435b6a4b227961eebb5d /crypto/perlasm/x86nasm.pl | |
parent | 0ec55604c0aa0574fbb04bef9e9617d9ea980568 (diff) |
x86[_64] perlasm: pull-in from HEAD.
Diffstat (limited to 'crypto/perlasm/x86nasm.pl')
-rw-r--r-- | crypto/perlasm/x86nasm.pl | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/crypto/perlasm/x86nasm.pl b/crypto/perlasm/x86nasm.pl index 1a384582bf..23a84ba563 100644 --- a/crypto/perlasm/x86nasm.pl +++ b/crypto/perlasm/x86nasm.pl @@ -19,6 +19,8 @@ sub ::generic { $_[0] = "NEAR $_[0]"; } elsif ($opcode eq "lea" && $#_==1) # wipe storage qualifier from lea { $_[1] =~ s/^[^\[]*\[/\[/o; } + elsif ($opcode eq "clflush" && $#_==0) + { $_[0] =~ s/^[^\[]*\[/\[/o; } } &::emit($opcode,@_); 1; @@ -67,6 +69,7 @@ sub get_mem } sub ::BP { &get_mem("BYTE",@_); } sub ::DWP { &get_mem("DWORD",@_); } +sub ::WP { &get_mem("WORD",@_); } sub ::QWP { &get_mem("",@_); } sub ::BC { (($::mwerks)?"":"BYTE ")."@_"; } sub ::DWC { (($::mwerks)?"":"DWORD ")."@_"; } @@ -135,7 +138,8 @@ sub ::public_label sub ::data_byte { push(@out,(($::mwerks)?".byte\t":"db\t").join(',',@_)."\n"); } - +sub ::data_short +{ push(@out,(($::mwerks)?".word\t":"dw\t").join(',',@_)."\n"); } sub ::data_word { push(@out,(($::mwerks)?".long\t":"dd\t").join(',',@_)."\n"); } |