Re: [PATCH v2 16/18] arm64: crypto: disable LTO for aes-ce-cipher.c

2017-11-21 Thread Mark Rutland
On Mon, Nov 20, 2017 at 01:01:43PM -0800, Sami Tolvanen wrote: > On Mon, Nov 20, 2017 at 03:25:31PM +, Ard Biesheuvel wrote: > > However, under LTO this all changes, and it is no longer guaranteed > > that the NEON registers are only touched between the kernel mode > > neon begin/end calls.

Re: [PATCH v2 16/18] arm64: crypto: disable LTO for aes-ce-cipher.c

2017-11-21 Thread Mark Rutland
On Mon, Nov 20, 2017 at 01:01:43PM -0800, Sami Tolvanen wrote: > On Mon, Nov 20, 2017 at 03:25:31PM +, Ard Biesheuvel wrote: > > However, under LTO this all changes, and it is no longer guaranteed > > that the NEON registers are only touched between the kernel mode > > neon begin/end calls.

Re: [PATCH v2 16/18] arm64: crypto: disable LTO for aes-ce-cipher.c

2017-11-20 Thread Alex Matveev
Sami, this seems to be better solution for aes-ce-cipher.c problem. Regards, Alex From 6bcdd763b56ce10a77a79373a46fc0e8d9026178 Mon Sep 17 00:00:00 2001 From: Alex Matveev Date: Mon, 20 Nov 2017 21:30:38 + Subject: [PATCH] arm64: crypto: fix typo in aes_sub() Clang's

Re: [PATCH v2 16/18] arm64: crypto: disable LTO for aes-ce-cipher.c

2017-11-20 Thread Alex Matveev
Sami, this seems to be better solution for aes-ce-cipher.c problem. Regards, Alex From 6bcdd763b56ce10a77a79373a46fc0e8d9026178 Mon Sep 17 00:00:00 2001 From: Alex Matveev Date: Mon, 20 Nov 2017 21:30:38 + Subject: [PATCH] arm64: crypto: fix typo in aes_sub() Clang's integrated assembler

Re: [PATCH v2 16/18] arm64: crypto: disable LTO for aes-ce-cipher.c

2017-11-20 Thread Ard Biesheuvel
On 20 November 2017 at 21:29, Alex Matveev wrote: > On Mon, 20 Nov 2017 15:20:14 + > Mark Rutland wrote: > >> On Wed, Nov 15, 2017 at 01:34:26PM -0800, Sami Tolvanen wrote: >> > CONFIG_LTO_CLANG requires the use of clang's integrated assembler, >> >

Re: [PATCH v2 16/18] arm64: crypto: disable LTO for aes-ce-cipher.c

2017-11-20 Thread Ard Biesheuvel
On 20 November 2017 at 21:29, Alex Matveev wrote: > On Mon, 20 Nov 2017 15:20:14 + > Mark Rutland wrote: > >> On Wed, Nov 15, 2017 at 01:34:26PM -0800, Sami Tolvanen wrote: >> > CONFIG_LTO_CLANG requires the use of clang's integrated assembler, >> > which doesn't understand the inline

Re: [PATCH v2 16/18] arm64: crypto: disable LTO for aes-ce-cipher.c

2017-11-20 Thread Alex Matveev
On Mon, 20 Nov 2017 15:20:14 + Mark Rutland wrote: > On Wed, Nov 15, 2017 at 01:34:26PM -0800, Sami Tolvanen wrote: > > CONFIG_LTO_CLANG requires the use of clang's integrated assembler, > > which doesn't understand the inline assembly in aes-ce-cipher.c. > > Disable

Re: [PATCH v2 16/18] arm64: crypto: disable LTO for aes-ce-cipher.c

2017-11-20 Thread Alex Matveev
On Mon, 20 Nov 2017 15:20:14 + Mark Rutland wrote: > On Wed, Nov 15, 2017 at 01:34:26PM -0800, Sami Tolvanen wrote: > > CONFIG_LTO_CLANG requires the use of clang's integrated assembler, > > which doesn't understand the inline assembly in aes-ce-cipher.c. > > Disable LTO for the file to work

Re: [PATCH v2 16/18] arm64: crypto: disable LTO for aes-ce-cipher.c

2017-11-20 Thread Sami Tolvanen
On Mon, Nov 20, 2017 at 03:25:31PM +, Ard Biesheuvel wrote: > However, under LTO this all changes, and it is no longer guaranteed > that the NEON registers are only touched between the kernel mode > neon begin/end calls. LTO operates on LLVM IR, so disabling LTO for this file should make sure

Re: [PATCH v2 16/18] arm64: crypto: disable LTO for aes-ce-cipher.c

2017-11-20 Thread Sami Tolvanen
On Mon, Nov 20, 2017 at 03:25:31PM +, Ard Biesheuvel wrote: > However, under LTO this all changes, and it is no longer guaranteed > that the NEON registers are only touched between the kernel mode > neon begin/end calls. LTO operates on LLVM IR, so disabling LTO for this file should make sure

Re: [PATCH v2 16/18] arm64: crypto: disable LTO for aes-ce-cipher.c

2017-11-20 Thread Sami Tolvanen
On Mon, Nov 20, 2017 at 03:20:14PM +, Mark Rutland wrote: > Could you elaborate on what the integrated asembler doesn't like? Here's the error, looks like in aes_sub: :1:69: error: invalid operand for instruction dup v1.4s, w12 ;movi v0.16b, #0 ;aese

Re: [PATCH v2 16/18] arm64: crypto: disable LTO for aes-ce-cipher.c

2017-11-20 Thread Sami Tolvanen
On Mon, Nov 20, 2017 at 03:20:14PM +, Mark Rutland wrote: > Could you elaborate on what the integrated asembler doesn't like? Here's the error, looks like in aes_sub: :1:69: error: invalid operand for instruction dup v1.4s, w12 ;movi v0.16b, #0 ;aese

Re: [PATCH v2 16/18] arm64: crypto: disable LTO for aes-ce-cipher.c

2017-11-20 Thread Ard Biesheuvel
On 20 November 2017 at 15:20, Mark Rutland wrote: > On Wed, Nov 15, 2017 at 01:34:26PM -0800, Sami Tolvanen wrote: >> CONFIG_LTO_CLANG requires the use of clang's integrated assembler, which >> doesn't understand the inline assembly in aes-ce-cipher.c. Disable LTO for >> the

Re: [PATCH v2 16/18] arm64: crypto: disable LTO for aes-ce-cipher.c

2017-11-20 Thread Ard Biesheuvel
On 20 November 2017 at 15:20, Mark Rutland wrote: > On Wed, Nov 15, 2017 at 01:34:26PM -0800, Sami Tolvanen wrote: >> CONFIG_LTO_CLANG requires the use of clang's integrated assembler, which >> doesn't understand the inline assembly in aes-ce-cipher.c. Disable LTO for >> the file to work around

Re: [PATCH v2 16/18] arm64: crypto: disable LTO for aes-ce-cipher.c

2017-11-20 Thread Mark Rutland
On Wed, Nov 15, 2017 at 01:34:26PM -0800, Sami Tolvanen wrote: > CONFIG_LTO_CLANG requires the use of clang's integrated assembler, which > doesn't understand the inline assembly in aes-ce-cipher.c. Disable LTO for > the file to work around the issue. Could you elaborate on what the integrated

Re: [PATCH v2 16/18] arm64: crypto: disable LTO for aes-ce-cipher.c

2017-11-20 Thread Mark Rutland
On Wed, Nov 15, 2017 at 01:34:26PM -0800, Sami Tolvanen wrote: > CONFIG_LTO_CLANG requires the use of clang's integrated assembler, which > doesn't understand the inline assembly in aes-ce-cipher.c. Disable LTO for > the file to work around the issue. Could you elaborate on what the integrated