From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 2498 invoked by alias); 26 Feb 2004 10:59:27 -0000 Mailing-List: contact gcc-help-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-help-owner@gcc.gnu.org Received: (qmail 2484 invoked from network); 26 Feb 2004 10:59:26 -0000 Received: from unknown (HELO relay.pair.com) (209.68.1.20) by sources.redhat.com with SMTP; 26 Feb 2004 10:59:26 -0000 Received: (qmail 66283 invoked from network); 26 Feb 2004 10:51:26 -0000 Received: from c-24-126-73-164.we.client2.attbi.com (HELO kegel.com) (24.126.73.164) by relay.pair.com with SMTP; 26 Feb 2004 10:51:26 -0000 X-pair-Authenticated: 24.126.73.164 Message-ID: <403DCE67.3020101@kegel.com> Date: Thu, 26 Feb 2004 15:35:00 -0000 From: Dan Kegel User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040113 MIME-Version: 1.0 To: add CC: gcc-help@gcc.gnu.org, crossgcc@sources.redhat.com Subject: Re: problem while building arm-linux-gcc using with-cpu=iwmmxt References: <277543950.28227@eyou.com> In-Reply-To: <277543950.28227@eyou.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-SW-Source: 2004-02/txt/msg00302.txt.bz2 add wrote: > Has anybody here before buiding gcc-3.4 cvs version using --with-cpu=iwmmxt > option? > I'm doing this based on dan's crosstool-0.27. > Finally I found out the bootstrap gcc has problem to build glibc-2.3.2 while > processing glibc/locale/ld-callob.c > it will say: > /tmp/ccWwfxuD.s: Assembler messages: > /tmp/ccWwfxuD.s:6430: Error: bad immediate value for offset (4128) > /tmp/ccWwfxuD.s:6435: Error: bad immediate value for offset (4112) > > while using option --with-cpu=xscale, it will be ok. So I think this is > related to iwmmxt specific codes in gcc-3.4-cvs. > > Who succeeded to build iwmmxt gcc-3.4, pls raise your hand ok? thanks! gcc-3.4-20040225 builds fine for me here, though I haven't tried testing the resulting toolchain. Here is a patch to crosstool to add the needed files. You might also need to give crosstool an arm-iwmmxt.config for the kernel, and change arm-iwmmxt.dat to reference that instead of arm.config. If you find this is the case, please send me the kernel config file you end up using. diff -Naur crosstool-0.28-pre2/arm-iwmmxt.dat crosstool-cur/arm-iwmmxt.dat --- crosstool-0.28-pre2/arm-iwmmxt.dat 1969-12-31 16:00:00.000000000 -0800 +++ crosstool-cur/arm-iwmmxt.dat 2004-02-23 17:40:04.000000000 -0800 @@ -0,0 +1,4 @@ +KERNELCONFIG=$PWD/arm.config +TARGET=arm-iwmmxt-linux-gnu +TARGET_CFLAGS="-O" +GCC_EXTRA_CONFIG="--with-cpu=iwmmxt --enable-cxx-flags=-mcpu=iwmmxt" diff -Naur crosstool-0.28-pre2/demo-arm-iwmmxt.sh crosstool-cur/demo-arm-iwmmxt.sh --- crosstool-0.28-pre2/demo-arm-iwmmxt.sh 1969-12-31 16:00:00.000000000 -0800 +++ crosstool-cur/demo-arm-iwmmxt.sh 2004-02-25 22:56:06.000000000 -0800 @@ -0,0 +1,14 @@ +#!/bin/sh +set -ex +export TARBALLS_DIR=~/downloads +export RESULT_TOP=/opt/crosstool + +# Really, you should do the mkdir before running this, +# and chown /opt/crosstool to yourself so you don't need to run as root. +mkdir -p /opt/crosstool + +# Build the toolchain. Takes a couple hours and a couple gigabytes. + +eval `cat arm-iwmmxt.dat gcc-3.4-20040225-glibc-2.3.2.dat` sh all.sh --notest + +echo Done. diff -Naur crosstool-0.28-pre2/gcc-3.4-20040225-glibc-2.3.2.dat crosstool-cur/gcc-3.4-20040225-glibc-2.3.2.dat --- crosstool-0.28-pre2/gcc-3.4-20040225-glibc-2.3.2.dat 1969-12-31 16:00:00.000000000 -0800 +++ crosstool-cur/gcc-3.4-20040225-glibc-2.3.2.dat 2004-02-25 22:56:31.000000000 -0800 @@ -0,0 +1,6 @@ +BINUTILS_DIR=binutils-2.14.90.0.5 +BINUTILS_URL=http://www.kernel.org/pub/linux/devel/binutils +GCC_DIR=gcc-3.4-20040225 +GLIBC_DIR=glibc-2.3.2 +LINUX_DIR=linux-2.4.21 +GLIBCTHREADS_FILENAME=glibc-linuxthreads-2.3.2 - Dan -- US citizens: if you're considering voting for Bush, look at these first: http://www.misleader.org/ http://www.cbc.ca/news/background/arar/ http://www.house.gov/reform/min/politicsandscience/