keccak_permute_32.h : error: 'asm' operand requires impossible reload
Closed, ResolvedPublic

Description

Compiling libgcrypt-1.8.1
with:
Compiler: gcc (GCC) 4.3.1
Tool: libtool (GNU libtool) 2.4.6
Make: GNU Make 3.81
on:
i686-pc-linux-gnu

I get this error:
...
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I/prog/libgcrypt/libgcrypt-1.8.1/./cipher -I.. -I../src -I/prog/libgcrypt/libgcrypt-1.8.1/./src -g -O2 -fvisibility=hidden -Wall -MT keccak.lo -MD -MP -MF .deps/keccak.Tpo -c /prog/libgcrypt/libgcrypt-1.8.1/./cipher/keccak.c -fPIC -DPIC -o .libs/keccak.o
/prog/libgcrypt/libgcrypt-1.8.1/./cipher/keccak_permute_32.h: In function 'keccak_f1600_state_permute32bi_bmi2':
/prog/libgcrypt/libgcrypt-1.8.1/./cipher/keccak_permute_32.h:137: error: 'asm' operand requires impossible reload
/prog/libgcrypt/libgcrypt-1.8.1/./cipher/keccak_permute_32.h:139: error: 'asm' operand requires impossible reload
/prog/libgcrypt/libgcrypt-1.8.1/./cipher/keccak_permute_32.h:141: error: 'asm' operand requires impossible reload
/prog/libgcrypt/libgcrypt-1.8.1/./cipher/keccak_permute_32.h:143: error: 'asm' operand requires impossible reload
/prog/libgcrypt/libgcrypt-1.8.1/./cipher/keccak_permute_32.h:154: error: 'asm' operand requires impossible reload
/prog/libgcrypt/libgcrypt-1.8.1/./cipher/keccak_permute_32.h:156: error: 'asm' operand requires impossible reload
/prog/libgcrypt/libgcrypt-1.8.1/./cipher/keccak_permute_32.h:158: error: 'asm' operand requires impossible reload
...

for all asm ROL32.

Details

bastl created this task.Sep 13 2017, 10:14 PM

make shure you only use 2 registers !!! 32bit: eax, cl and 64bit rax, cl

werner closed this task as Resolved.Apr 17 2018, 8:14 PM
werner claimed this task.
werner added a subscriber: werner.

Cherry-picked this for 1.8.3.