Thread: compile error: c_lock assembler

compile error: c_lock assembler

From
Karel Zak
Date:
Hi,

from current CVS:

./configure     --prefix=/usr/lib/postgresql \               --enable-multibyte \               --enable-locale \
       --enable-nls \               --enable-recode \               --enable-unicode-conversion \
--with-openssl\               --enable-cassert
 

gcc -O2 -Wall -Wmissing-prototypes -Wmissing-declarations
-I../../../../src/include   -c -o s_lock.o s_lock.c
s_lock.c:234: warning: `tas_dummy' defined but not used
/tmp/ccCLFPji.s: Assembler messages:
/tmp/ccCLFPji.s:210: Error: unknown pseudo-op: '.frame'
/tmp/ccCLFPji.s:211: Error: no such instruction: 'll $14,0($4)'
/tmp/ccCLFPji.s:212: Error: suffix or operands invalid for `or'
/tmp/ccCLFPji.s:213: Error: no such instruction: `sc $15,0($4)'
/tmp/ccCLFPji.s:214: Error: no such instruction: `beq $15,0,fail'
/tmp/ccCLFPji.s:215: Error: no such instruction: `bne $14,0,fail'
/tmp/ccCLFPji.s:216: Error: no such instruction: `li $2,0'
/tmp/ccCLFPji.s:217: Error: unknown pseudo-op: `.livereg'
/tmp/ccCLFPji.s:218: Error: no such instruction: $31'
/tmp/ccCLFPji.s:220: Error: no such instruction: `li $2,1'
/tmp/ccCLFPji.s:221: Error: no such instruction: $31'
make[2]: *** [s_lock.o] Error 1

$ gcc -v
Reading specs from /usr/lib/gcc-lib/i386-linux/2.95.4/specs
gcc version 2.95.4 20010827 (Debian prerelease)

Lates change:
date: 2001/08/28 15:04:27;  author: petere;  state: Exp;  lines: +4 -4
Change the conditionals so the mips + gcc code here doesn't apply for Irix.
The code in s_lock.h should get used.

-- Karel Zak  <zakkr@zf.jcu.cz>http://home.zf.jcu.cz/~zakkr/C, PostgreSQL, PHP, WWW, http://docs.linux.cz,
http://mape.jcu.cz


Re: compile error: c_lock assembler

From
Karel Zak
Date:
Hmm, I answer it oneself. A problem is in the file 
src/backend/storage/buffer/s_lock.c at line 231:

#if defined(__mips__) || !defined(__sgi)                     ^^^^^
this condition is true for all __mips__ or for *everythig* what is
not __sgi__ (so i386 too). It's the typical 'OR' problem :-)
        Karel

On Wed, Aug 29, 2001 at 01:03:25PM +0200, Karel Zak wrote:
> 
>  Hi,
> 
> from current CVS:
> 
> ./configure     --prefix=/usr/lib/postgresql \
>                 --enable-multibyte \
>                 --enable-locale \
>                 --enable-nls \
>                 --enable-recode \
>                 --enable-unicode-conversion \
>                 --with-openssl \
>                 --enable-cassert
> 
> gcc -O2 -Wall -Wmissing-prototypes -Wmissing-declarations
> -I../../../../src/include   -c -o s_lock.o s_lock.c
> s_lock.c:234: warning: `tas_dummy' defined but not used
> /tmp/ccCLFPji.s: Assembler messages:
> /tmp/ccCLFPji.s:210: Error: unknown pseudo-op: '.frame'
> /tmp/ccCLFPji.s:211: Error: no such instruction: 'll $14,0($4)'
> /tmp/ccCLFPji.s:212: Error: suffix or operands invalid for `or'
> /tmp/ccCLFPji.s:213: Error: no such instruction: `sc $15,0($4)'
> /tmp/ccCLFPji.s:214: Error: no such instruction: `beq $15,0,fail'
> /tmp/ccCLFPji.s:215: Error: no such instruction: `bne $14,0,fail'
> /tmp/ccCLFPji.s:216: Error: no such instruction: `li $2,0'
> /tmp/ccCLFPji.s:217: Error: unknown pseudo-op: `.livereg'
> /tmp/ccCLFPji.s:218: Error: no such instruction: 
>  $31'
> /tmp/ccCLFPji.s:220: Error: no such instruction: `li $2,1'
> /tmp/ccCLFPji.s:221: Error: no such instruction: 
>  $31'
> make[2]: *** [s_lock.o] Error 1
> 
> $ gcc -v
> Reading specs from /usr/lib/gcc-lib/i386-linux/2.95.4/specs
> gcc version 2.95.4 20010827 (Debian prerelease)
> 
> Lates change:
> date: 2001/08/28 15:04:27;  author: petere;  state: Exp;  lines: +4 -4
> Change the conditionals so the mips + gcc code here doesn't apply for Irix.
> The code in s_lock.h should get used.
> 
> -- 
>  Karel Zak  <zakkr@zf.jcu.cz>
>  http://home.zf.jcu.cz/~zakkr/
>  
>  C, PostgreSQL, PHP, WWW, http://docs.linux.cz, http://mape.jcu.cz
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 6: Have you searched our list archives?
> 
> http://www.postgresql.org/search.mpl

-- Karel Zak  <zakkr@zf.jcu.cz>http://home.zf.jcu.cz/~zakkr/C, PostgreSQL, PHP, WWW, http://docs.linux.cz,
http://mape.jcu.cz


Re: compile error: c_lock assembler

From
Peter Eisentraut
Date:
Karel Zak writes:

>  Hmm, I answer it oneself. A problem is in the file
> src/backend/storage/buffer/s_lock.c at line 231:
>
> #if defined(__mips__) || !defined(__sgi)
>                       ^^^^^
>
>  this condition is true for all __mips__ or for *everythig* what is
> not __sgi__ (so i386 too). It's the typical 'OR' problem :-)

Yup.  It's already fixed.  Sorry.

-- 
Peter Eisentraut   peter_e@gmx.net   http://funkturm.homeip.net/~peter