compile error: c_lock assembler

Started by Karel Zakover 24 years ago3 messages
#1Karel Zak
zakkr@zf.jcu.cz

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

#2Karel Zak
zakkr@zf.jcu.cz
In reply to: Karel Zak (#1)
Re: compile error: c_lock assembler

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

#3Peter Eisentraut
peter_e@gmx.net
In reply to: Karel Zak (#2)
Re: compile error: c_lock assembler

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