On 2016-10-17 07:35, Richard Henderson wrote: > On 10/17/2016 03:55 AM, Christian Borntraeger wrote: > > On 10/17/2016 10:26 AM, Thomas Huth wrote: > > > On 14.10.2016 20:58, Michael Tokarev wrote: > > > > Hi. > > > > > > > > This commit: c9bc3437a905b660561a26cd4ecc64579843267b > > > > Author: Richard Henderson <r...@twiddle.net> > > > > Date: Tue Jun 21 17:32:12 2016 -0700 > > > > > > > > linux-user: Provide safe_syscall for s390x > > > > > > > > does not build on debian unstable porterbox for s390x, with > > > > the following error message: > > > > > > > > linux-user/host/s390x/safe-syscall.inc.S: Assembler messages: > > > > linux-user/host/s390x/safe-syscall.inc.S:75: Error: Unrecognized opcode: > > > > `lt' > > > > rules.mak:72: recipe for target 'linux-user/safe-syscall.o' failed > > > > > > > > Since I know nothing about s390, I've no idea what's at fault > > > > here... :) Thought I'd report this :) > > > > > > "lt" seems to be a newer s390x opcode which has been added to the > > > architecture within the last ten years or so. So maybe you've got to add > > > some "-march=xxx" flag when compiling this file? > > > Could you maybe start with finding out the exact comand line that is > > > used to compile this file? > > > > Yes, lt was added with the extended immidiate facility. So either use > > -march=z9-109 (introduced in > > 2005) or replace the lt with an l + ltr to also run on older models. > > > > Whoops. I'd forgotten that RHEL defaults to z196 these days. This piece of > code is certainly not important enough to conditionalize on newer hardware. > I'll put together a patch.
Actually gcc suggests to use icm %r0,15,0(%r8). It's even shorter than lt %r0,0(%r8). Aurelien -- Aurelien Jarno GPG: 4096R/1DDD8C9B aurel...@aurel32.net http://www.aurel32.net