Andy Polyakov
a285992763
ARMv4 assembly pack: allow Thumb2 even in iOS build,
...
and engage it in most modules.
Reviewed-by: Tim Hudson <tjh@openssl.org>
2015-12-07 12:06:06 +01:00
Andy Polyakov
b5516cfbd6
perlasm/ppc-xlate.pl: comply with ABIs that specify vrsave as reserved.
...
RT#4162
Reviewed-by: Richard Levitte <levitte@openssl.org>
2015-12-03 13:29:53 +01:00
Andy Polyakov
313e6ec11f
Add assembly support for 32-bit iOS.
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
2015-04-20 15:06:22 +02:00
Andy Polyakov
7b644df899
perlasm/arm-xlate.pl update (fix end-less loop and prepare for 32-bit iOS).
...
Reviewed-by: Rich Salz <rsalz@openssl.org>
2015-04-02 09:37:28 +02:00
Andy Polyakov
775b669de3
Fix crash in SPARC T4 XTS.
...
Reviewed-by: Tim Hudson <tjh@openssl.org>
2015-02-24 10:11:36 +01:00
Andy Polyakov
2f8d82d641
perlasm/x86masm.pl: make it work.
...
Though this doesn't mean that masm becomes supported, the script is
still provided on don't-ask-in-case-of-doubt-use-nasm basis.
See RT#3650 for background.
Reviewed-by: Matt Caswell <matt@openssl.org>
2015-02-22 19:23:25 +01:00
Andy Polyakov
9b05cbc33e
Add assembly support to ios64-cross.
...
Fix typos in ios64-cross config line.
Reviewed-by: Tim Hudson <tjh@openssl.org>
2015-01-23 15:38:41 +01:00
Andy Polyakov
902b30df19
perlasm/x86_64-xlate.pl: handle inter-bank movd.
...
Reviewed-by: Rich Salz <rsalz@openssl.org>
2014-09-12 00:06:00 +02:00
Rich Salz
f642ebc1e2
Undo a90081576c
...
Undo unapproved commit that removed DJGPP and WATT32
2014-08-09 08:02:20 -04:00
Rich Salz
a90081576c
Remove DJGPP (and therefore WATT32) #ifdef's.
...
DJGPP is no longer a supported platform. Remove all #ifdef, etc.,
cases that refer to it. DJGPP also #define'd WATT32, so that
is now removed as well.
2014-08-08 16:54:14 -04:00
Andy Polyakov
1b0fe79f3e
x86_64 assembly pack: improve masm support.
2014-07-09 20:08:01 +02:00
Andy Polyakov
c7ada16d39
perlasm/ppc-xlate.pl update.
2014-07-01 19:11:11 +02:00
Andy Polyakov
f75faa16af
Add "teaser" AES module for PowerISA 2.07.
...
"Teaser" means that it's not integrated yet and purpose of this
commit is primarily informational, to exhibit design choices,
such as how to handle alignment and endianness. In other words
it's proof-of-concept code that EVP module will build upon.
2014-05-12 10:35:29 +02:00
Andy Polyakov
5e44c144e6
SPARC T4 assembly pack: treat zero input length in CBC.
...
The problem is that OpenSSH calls EVP_Cipher, which is not as
protective as EVP_CipherUpdate. Formally speaking we ought to
do more checks in *_cipher methods, including rejecting
lengths not divisible by block size (unless ciphertext stealing
is in place). But for now I implement check for zero length in
low-level based on precedent.
PR: 3087, 2775
2014-03-07 10:30:37 +01:00
Andy Polyakov
b62a4a1c0e
perlasm/x86asm.pl: recognize elf-1 denoting old ELF platforms.
2014-02-27 14:26:12 +01:00
Andy Polyakov
ce876d8316
perlasm/x86gas.pl: limit special OPENSSL_ia32cap_P treatment to ELF.
2014-02-27 14:22:13 +01:00
Andy Polyakov
f4d456408d
x86[_64]cpuid.pl: add low-level RDSEED.
2014-02-14 17:24:12 +01:00
Andy Polyakov
128e1d101b
PPC assembly pack: improve AIX support (enable vpaes-ppc).
2013-12-18 21:19:08 +01:00
Andy Polyakov
41965a84c4
x86_64-xlate.pl: minor update.
2013-12-09 21:23:19 +01:00
Andy Polyakov
26e18383ef
perlasm/ppc-xlate.pl: add support for AltiVec/VMX and VSX.
...
Suggested by: Marcello Cerri
2013-12-04 22:01:31 +01:00
Andy Polyakov
f586d97191
perlasm/ppc-xlate.pl: improve linux64le support.
...
Suggested by: Marcello Cerri
2013-12-04 21:47:43 +01:00
Andy Polyakov
0e0a105364
perlas/ppc-xlate.pl: fix typo.
2013-10-31 11:58:50 +01:00
Andy Polyakov
8ff8a829b0
perlasm/ppc-xlate.pl: add .quad directive
...
sha/asm/sha512-ppc.pl: add little-endian support.
Submitted by: Marcelo Cerri
2013-10-31 11:08:51 +01:00
Andy Polyakov
d6019e1654
PPC assembly pack: add .size directives.
2013-10-15 00:14:39 +02:00
Andy Polyakov
6b2cae0c16
perlasm/sparcv9_modes.pl: make it work even with seasoned perl.
...
PR: 3130
2013-10-03 10:42:11 +02:00
Andy Polyakov
667053a2f3
x86_64-xlate.pl: fix jrcxz in nasm case.
2013-10-03 00:26:09 +02:00
Veres Lajos
478b50cf67
misspellings fixes by https://github.com/vlajos/misspell_fixer
2013-09-05 21:39:42 +01:00
Andy Polyakov
a9d14832fd
x86_64-xlate.pl: Windows fixes.
2013-06-30 23:07:33 +02:00
Andy Polyakov
22de0e6583
x86_64-xlate.pl: minor size/performance improvement.
2013-05-13 16:06:25 +02:00
Andy Polyakov
c5d975a743
Add support for SPARC T4 DES opcode.
2013-03-31 14:32:05 +02:00
Andy Polyakov
cd68694646
AES for SPARC T4: add XTS, reorder subroutines to improve TLB locality.
2012-11-24 21:55:23 +00:00
Andy Polyakov
c5cd28bd64
Extend OPENSSL_ia32cap_P with extra word to accomodate AVX2 capability.
2012-11-17 19:04:15 +00:00
Andy Polyakov
b3aee265c5
perlasm/sparcv9_modes.pl: addendum to commit#22966.
2012-11-17 18:34:17 +00:00
Andy Polyakov
38049c2bb9
perlasm/sparcv9_modes.pl: fix typo in IV save code and switch to less
...
aggressive ASI.
2012-10-25 12:02:37 +00:00
Andy Polyakov
fd3b0eb01d
sparcv9_modes.pl: membars are reported as must-have.
2012-10-15 14:04:52 +00:00
Andy Polyakov
dea8068015
perlasm/sparcv9_modes.pl: "cooperative" optimizations based on suggestions
...
from David Miller.
2012-10-14 14:25:00 +00:00
Andy Polyakov
54a1f4480e
aest4-sparcv9.pl: split it to AES-specific and reusable part.
2012-10-11 18:30:35 +00:00
Andy Polyakov
6206682a35
x86cpuid.pl: hide symbols [backport from x86_64].
2012-08-29 14:19:59 +00:00
Andy Polyakov
f6ff1aa8e0
sha512-x86_64.pl: revert previous change and solve the problem through
...
perlasm/x86_64-xlate.pl instead.
2012-08-13 12:34:36 +00:00
Andy Polyakov
ac82e51f57
x86gas.pl: treat OPENSSL_ia32cap_P accordingly to .hidden status.
2012-07-15 13:24:43 +00:00
Andy Polyakov
f9c5e5d92e
perlasm: fix symptom-less bugs, missing semicolons and 'my' declarations.
2012-04-28 10:36:58 +00:00
Andy Polyakov
ee743dca53
perlasm/x86masm.pl: fix last fix.
2012-03-29 18:09:36 +00:00
Andy Polyakov
b2ae61ecf2
x86_64-xlate.pl: remove old kludge.
...
PR: 2435,2440
2012-03-13 19:19:08 +00:00
Andy Polyakov
e6903980af
x86_64-xlate.pl: proper solution for RT#2620.
2012-01-21 11:34:53 +00:00
Andy Polyakov
0e1467a64c
vpaes-x86.pl: revert previous commit and solve the problem through x86masm.pl.
...
PR: 2657
2011-12-15 22:20:05 +00:00
Andy Polyakov
7ffa48ad38
perlasm/x86gas.pl: give a hand old assemblers assembling loop instruction.
2011-12-09 19:16:20 +00:00
Andy Polyakov
ff6f9f96fd
cryptlib.c, etc.: fix linker warnings in 64-bit Darwin build.
2011-11-12 13:10:00 +00:00
Andy Polyakov
4a5397fb68
Configure, x86gas.pl: fix linker warnings in 32-bit Darwin build.
2011-11-12 12:16:11 +00:00
Andy Polyakov
5b198d5eea
x86gas.pl: relax .init segment alignment.
2011-10-22 10:49:52 +00:00
Andy Polyakov
4010b341b7
x86_64-xlate.pl: make vpaes-x86_64.pl and rc4-md5-x86_64 work with ml64,
...
fix bug in .crt section alignment.
PR: 2620, 2624
2011-10-18 09:50:23 +00:00
Andy Polyakov
8fcdb1e60f
Add android-x86.
2011-10-15 08:32:16 +00:00
Andy Polyakov
a87ff751b7
Add so called Vector Permutation AES x86[_64] assembler, see
...
http://crypto.stanford.edu/vpaes/ for background information.
It's not integrated into build system yet.
2011-09-12 08:25:14 +00:00
Andy Polyakov
ed28aef8b4
Padlock engine: make it independent of inline assembler.
2011-09-06 20:45:36 +00:00
Andy Polyakov
272ba87017
x86_64-xlate.pl: fix movzw.
2011-08-12 21:24:19 +00:00
Andy Polyakov
4195a369fd
perlasm/cbc.pl: fix tail processing bug.
...
PR: 2557
2011-07-13 06:20:30 +00:00
Andy Polyakov
6fa4c7c43b
x86_64-xlate.pl: sha1 and md5 warnings made it to nasm 2.09, extend gnu
...
assembler workaround to all assemblers.
2011-07-04 13:10:50 +00:00
Andy Polyakov
94c64f9a1c
x86_64-xlate.pl: masm-specific update.
2011-07-01 21:21:14 +00:00
Andy Polyakov
0a9a692e4e
Minor x86_64 perlasm update.
2011-06-27 09:45:10 +00:00
Andy Polyakov
301799b803
x86[_64]cpuid.pl: add function accessing rdrand instruction.
2011-06-04 12:20:45 +00:00
Andy Polyakov
c30a2505e2
x86gas.pl: don't omit .comm OPENSSL_ia32cap_P on MacOS X.
2011-05-18 16:28:53 +00:00
Andy Polyakov
c7b903e01d
x86_64-xlate.pl: add inter-register movq and make x86_64-gfm.s compile on
...
Solaris, MacOS X, elderly gas...
2011-05-18 16:26:03 +00:00
Andy Polyakov
ddc20d4da9
x86_64cpuid.pl: allow shared build to work without -Bsymbolic.
...
PR: 2466
2011-05-18 16:24:19 +00:00
Andy Polyakov
a3e07010b4
ppc-xlate.pl: get linux64 declaration right.
2011-05-16 19:52:41 +00:00
Andy Polyakov
2b9a8ca15b
x86gas.pl: add palignr and move pclmulqdq.
2011-05-16 18:07:00 +00:00
Andy Polyakov
b5c6aab57e
x86_64-xlate.pl: allow "base-less" effective address, add palignr, move
...
pclmulqdq.
2011-05-16 17:44:38 +00:00
Andy Polyakov
e382e4e603
perlasm/x86gas.pl: make OPENSSL_instrument_bus[2] compile.
2011-04-19 19:09:18 +00:00
Andy Polyakov
70d01a7f82
perlasm/x86[nm]asm.pl: make OPENSSL_instrument_bus[2] compile.
2011-04-18 20:18:03 +00:00
Andy Polyakov
f84a8ea526
x86gas.pl: make data_short work on legacy systems.
2011-02-10 21:24:24 +00:00
Andy Polyakov
d6522548dd
x86_64-xlate.pl: fix LNK4078 and LNK4210 link warnings.
...
PR 2356
2010-10-10 21:07:55 +00:00
Andy Polyakov
a9e790b95a
perlasm/x86_64-xlate.pl: extend SSE>2 to ml64.
2010-07-26 21:45:38 +00:00
Andy Polyakov
133a7f9a50
perlasm/x86asm.pl: move aesni and pclmulqdq opcodes to aesni-x86.pl and
...
ghash-x86.pl.
2010-07-26 21:42:07 +00:00
Andy Polyakov
d08eae1bda
x86 perlasm: add support for 16-bit values.
2010-06-04 13:13:18 +00:00
Andy Polyakov
f9a152bd90
x86_64-xlate.pl: refine mingw support and regexps, update commentary.
2010-06-01 05:56:24 +00:00
Andy Polyakov
ea7239cf15
x86asm.pl: consistency imrovements.
2010-05-13 15:28:07 +00:00
Andy Polyakov
046ea30864
x86_64-xlate.pl: refine some regexp's and add support for OWORD/QWORD PTR.
2010-05-13 15:26:46 +00:00
Andy Polyakov
fead253986
perlasm/x86*: add support to SSE>2 and pclmulqdq. x86_64-xlate.pl provides
...
correct solution to problem addressed in committ #19244 .
2010-04-10 13:55:05 +00:00
Dr. Stephen Henson
c95bf51167
don't assume 0x is at start of string
2010-02-03 18:19:22 +00:00
Andy Polyakov
7676eebf42
OPENSSL_cleanse to accept zero length parameter [matching C implementation].
2010-01-24 14:54:24 +00:00
Andy Polyakov
ee2b8ed2f5
x86_64-xlate.pl: refine sign extension logic when handling lea.
...
PR: 2094,2095
2010-01-19 16:15:23 +00:00
Andy Polyakov
10232bdc0e
x86_64-xlate.pl: new gas requires sign extention in lea instruction.
...
This resolves md5-x86_64.pl and sha1-x86_64.pl bugs, but without modifying
the code.
PR: 2094,2095
2009-11-15 17:11:38 +00:00
Andy Polyakov
55ff3aff8c
x86masm.pl: eliminate linker "multiple sections found with different
...
attributes" warning.
2009-11-15 17:06:44 +00:00
Andy Polyakov
6dd9066e0e
x86_64-xlate.pl: small commentary update.
2009-05-12 20:29:27 +00:00
Andy Polyakov
065c5d6328
Engage cmll-x86_64.pl in Win64 build and make it compile correctly.
2009-05-02 21:18:52 +00:00
Andy Polyakov
6c8b9259fc
AESNI perlasm update.
2009-04-26 17:58:58 +00:00
Andy Polyakov
e303f55fc7
Expand OPENSS_ia32cap to 64 bits.
2009-04-26 17:49:41 +00:00
Andy Polyakov
e81695205e
x86_64-xlate.pl: support for binary constants, such as 0b1010101.
2008-12-27 14:00:37 +00:00
Andy Polyakov
bf785c9849
x86_64-xlate.pl: fix masm hexadecimal constants.
2008-12-19 11:14:38 +00:00
Andy Polyakov
4db4882402
perlasm/x86* update: support for 3 and 4 argument instructions.
2008-12-17 19:56:48 +00:00
Andy Polyakov
93c4ba07d7
x86_64-xlate.pl update, engage x86_64 assembler in mingw64.
2008-11-14 16:40:37 +00:00
Andy Polyakov
8525377265
x86_64-xlate.pl to support MacOS X and mingw64.
2008-11-12 08:05:58 +00:00
Andy Polyakov
8fe8bae15a
Minor perlasm updates.
2008-11-03 08:46:07 +00:00
Andy Polyakov
80aa9cc985
x86_64-xlate.pl update: refine SEH support.
2008-10-28 08:40:07 +00:00
Andy Polyakov
b94551e823
perlasm update: implement dataseg directive.
2008-07-22 08:44:31 +00:00
Andy Polyakov
9b634c9b37
x86_64-xlate.pl: implement indirect jump/calls, support for Win64 SEH.
2008-07-22 08:42:06 +00:00
Andy Polyakov
e4662fdb62
x86masm.pl: harmonize functions' alignment.
2008-07-17 09:46:09 +00:00
Andy Polyakov
9960bdc6fa
x86masm.pl cosmetics.
2008-07-15 13:16:42 +00:00
Andy Polyakov
23dcb447ff
x86nasm.pl update: use pre-defined macros and allow for /safeseh link.
2008-07-15 12:50:44 +00:00
Andy Polyakov
4f46934269
Depict future Win64/x64 development.
2008-05-03 18:34:59 +00:00
Andy Polyakov
a23e3dbee1
Support for NASM>=2 in Win64/x64 build.
2008-02-13 13:07:52 +00:00
Andy Polyakov
8ab9025e31
Ad-hockery for Platform SDK ml64.
2008-02-11 13:04:39 +00:00