delorie.com/archives/browse.cgi   search  
Mail Archives: pgcc/1999/04/13/14:24:54

Message-Id: <199904131823.DAA09506@mail.itjit.ne.jp>
To: pgcc AT delorie DOT com
Subject: Confusion between stack-align-double and mmx
Date: Wed, 14 Apr 1999 03:23:00 +0900
From: "NISHIGAMI.S" <nsh AT itjit DOT ne DOT jp>
Reply-To: pgcc AT delorie DOT com

Hello,

I reported this before, but the mailinglist was down at that
time.  Now, I get snapshot (pgcc-cvs-990413.tar.bz2) from
ftp://ftp.tardis.ed.ac.uk/users/broonie , and the problem is
still there.  Anyway, thank you for broonie.

I'm using pgcc-2.92.25 (19981130) with a classic Pentium/P54C
without MMX, and fail to build recent snapshots.

Making pgcc with `-mstack-align-double' switch causes this:
-----------------------------------------------------------
[snip]
{standard input}: Assembler messages:
{standard input}:476: Error: no such 386 instruction: `movq'
{standard input}:491: Error: no such 386 instruction: `movq'
{standard input}:493: Error: no such 386 instruction: `movq'
{standard input}:521: Error: no such 386 instruction: `movd'
{standard input}:522: Error: no such 386 instruction: `movd'
{standard input}:527: Error: no such 386 instruction: `movq'
{standard input}:593: Error: no such 386 instruction: `movd'
{standard input}:594: Error: no such 386 instruction: `movd'
{standard input}:595: Error: no such 386 instruction: `psrld'
{standard input}:596: Error: no such 386 instruction: `movd'
{standard input}:601: Error: no such 386 instruction: `movq'
{standard input}:605: Error: no such 386 instruction: `movq'
{standard input}:618: Error: no such 386 instruction: `movq'
{standard input}:626: Error: no such 386 instruction: `movq'
{standard input}:635: Error: no such 386 instruction: `movq'
{standard input}:637: Error: no such 386 instruction: `movq'
{standard input}:644: Error: no such 386 instruction: `emms'
{standard input}:646: Error: no such 386 instruction: `emms'
gmake[2]: *** [libgcc2.a] Error 1
gmake[2]: Leaving directory `/tmp/tmp.viper/pgcc/gcc'
gmake[1]: *** [bootstrap] Error 2
gmake[1]: Leaving directory `/tmp/tmp.viper/pgcc/gcc'
gmake: *** [bootstrap] Error 2
-----------------------------------------------------------
Such instructions are used only for MMX?

I think this is a problem in gcc/config/i386/i386.h .
-----------------------------------------------------------
[snip]
#define MASK_STACK_ALIGN_DOUBLE 000200000000
#define MASK_ARG_ALIGN_DOUBLE   000400000000
[snip]
#define MASK_MMX                000200000000
#define MASK_MMX_ONLY           000400000000
[snip]
-----------------------------------------------------------
There is confusion of masks for `-mstack-align-double' and
`-mmmx'.  Also about `-marg-align-double' and `-mmmx-only'.

I try to change MASK_MMX and MASK_MMX_ONLY, then make
bootstrap can go further steps.  My slow machine needs long
time to get final result...

This only appears in snapshots with MMX enhancement, but
release like 1.1.2 .

Thank you!
---
nsh AT itjit DOT ne DOT jp

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019