Sync x86 perlasm drivers with upstream master. Upstream added new instructions in f4d456408d9d7bca31f34765d1a05fbd9fa55826 and 4e3d2866b6e8e7a700ea22e05840a093bfd7a4b1. Change-Id: I835650426a0dffca2d8686d64aef99097a4bd186 Reviewed-on: https://boringssl-review.googlesource.com/8520 Reviewed-by: Adam Langley <agl@google.com>
diff --git a/crypto/perlasm/x86asm.pl b/crypto/perlasm/x86asm.pl index 3c7be40..dc10d99 100644 --- a/crypto/perlasm/x86asm.pl +++ b/crypto/perlasm/x86asm.pl
@@ -1,4 +1,11 @@ -#!/usr/bin/env perl +#! /usr/bin/env perl +# Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the OpenSSL license (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + # require 'x86asm.pl'; # &asm_init(<flavor>,"des-586.pl"[,$i386only]); @@ -131,6 +138,14 @@ { &::generic("rdrand",@_); } } +sub ::rdseed +{ my ($dst)=@_; + if ($dst =~ /(e[a-dsd][ixp])/) + { &::data_byte(0x0f,0xc7,0xf8|$regrm{$dst}); } + else + { &::generic("rdrand",@_); } +} + sub rxb { local *opcode=shift; my ($dst,$src1,$src2,$rxb)=@_; @@ -157,6 +172,11 @@ { &::generic("vprotd",@_); } } +sub ::endbranch +{ + &::data_byte(0xf3,0x0f,0x1e,0xfb); +} + # label management $lbdecor="L"; # local label decoration, set by package $label="000";
diff --git a/crypto/perlasm/x86gas.pl b/crypto/perlasm/x86gas.pl index 55d09d8..ab4c5a3 100644 --- a/crypto/perlasm/x86gas.pl +++ b/crypto/perlasm/x86gas.pl
@@ -1,4 +1,11 @@ -#!/usr/bin/env perl +#! /usr/bin/env perl +# Copyright 2007-2016 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the OpenSSL license (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + package x86gas;
diff --git a/crypto/perlasm/x86masm.pl b/crypto/perlasm/x86masm.pl index 917d0f8..a0a354c 100644 --- a/crypto/perlasm/x86masm.pl +++ b/crypto/perlasm/x86masm.pl
@@ -1,4 +1,11 @@ -#!/usr/bin/env perl +#! /usr/bin/env perl +# Copyright 2007-2016 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the OpenSSL license (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + package x86masm;
diff --git a/crypto/perlasm/x86nasm.pl b/crypto/perlasm/x86nasm.pl index f8332bb..d159514 100644 --- a/crypto/perlasm/x86nasm.pl +++ b/crypto/perlasm/x86nasm.pl
@@ -1,4 +1,11 @@ -#!/usr/bin/env perl +#! /usr/bin/env perl +# Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the OpenSSL license (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + package x86nasm;