OpenCores
URL https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [gnu-src/] [gcc-4.5.1/] [gcc/] [config/] [mips/] [t-vr] - Rev 309

Go to most recent revision | Compare with Previous | Blame | View Log

# Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc.
#
# This file is part of GCC.
#
# GCC is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3, or (at your option)
# any later version.
#
# GCC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with GCC; see the file COPYING3.  If not see
# <http://www.gnu.org/licenses/>.

# BEGIN boiler-plate MIPS stuff

# Don't let CTOR_LIST end up in sdata section.
CRTSTUFF_T_CFLAGS = -G 0

# We must build libgcc2.a with -G 0, in case the user wants to link
# without the $gp register.
TARGET_LIBGCC2_CFLAGS = -G 0

LIB2FUNCS_STATIC_EXTRA = $(srcdir)/config/mips/mips16.S \
                         $(srcdir)/config/mips/vr4120-div.S
EXTRA_MULTILIB_PARTS = crtbegin.o crtend.o crti.o crtn.o

# Assemble startup files.
$(T)crti.o: $(srcdir)/config/mips/crti.asm $(GCC_PASSES)
        $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(MULTILIB_CFLAGS) $(INCLUDES) \
        -c -o $(T)crti.o -x assembler-with-cpp $(srcdir)/config/mips/crti.asm

$(T)crtn.o: $(srcdir)/config/mips/crtn.asm $(GCC_PASSES)
        $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(MULTILIB_CFLAGS) $(INCLUDES) \
        -c -o $(T)crtn.o -x assembler-with-cpp $(srcdir)/config/mips/crtn.asm

# END boiler-plate

# Main multilibs
# --------------
#
# Endianness: EB or EL
#
# ABIs: mabi=32
#       mabi=o64
#       mabi=eabi
#       mabi=eabi/mlong32
#       mabi=eabi/mgp32
#       mabi=eabi/mgp32/mlong64
#
# Architecture: march=vr4120 with -mfix-vr4120
#               march=vr4130 with -mfix-vr4130 (default)
#               march=vr5000
#               march=vr5400
#               march=vr5500
#
# Total: 2 * 6 * 5 = 60 multilibs.
#
#
# Extra vr4300 multilibs
# ----------------------
#
# Endianness: EB or EL
#
# ABI: o64
#
# Architecture: vr4300.
#
# Total: 2 * 1 * 2 = 2 multilibs.
#
#
# Extra MIPS16 multilibs
# ----------------------
#
# Endianness: EB or EL
#
# ABIs: mabi=o64
#       mabi=eabi/mlong32
#       mabi=eabi/mgp32
#
# Architecture: march=vr4120 with -mfix-vr4120
#               march=vr4130 with -mfix-vr4130 (default)
#
# Total: 2 * 3 * 2 = 12 multilibs.
MULTILIB_OPTIONS =                      \
        EL/EB                           \
        mabi=32/mabi=o64/mabi=eabi      \
        mgp32                           \
        mlong64                         \
        mips16                          \
        mfix-vr4120/mfix-vr4130/march=vr4300/march=vr5000/march=vr5400/march=vr5500

MULTILIB_DIRNAMES =     \
        el eb           \
        o32 o64 eabi    \
        gp32            \
        long64          \
        mips16          \
        vr4120 vr4130 vr4300 vr5000 vr5400 vr5500

MULTILIB_MATCHES = EL=mel EB=meb mfix-vr4120=march?vr4120 \
                   mfix-vr4130=march?vr4130

# Assume a 41xx-series is the default: we'd need a *mips16 entry if
# the default processor didn't support mips16.  Also assume the
# default ABI is EABI64 -mlong32.
MULTILIB_EXCEPTIONS =                           \
        *mabi=32/mlong64*                       \
        *mabi=32/mgp32*                         \
        *mabi=o64/mgp32*                        \
        *mabi=o64/mlong64*                      \
        *mips16/march=vr5*                      \
        *mips16/march=vr4300                    \
        $(MIPS16_EXCEPTIONS)                    \
        $(VR4300_EXCEPTIONS)

MIPS16_EXCEPTIONS =                             \
        *mabi=32*mips16*                        \
        *mlong64*mips16*

VR4300_EXCEPTIONS =                             \
        *mabi=32*march=vr4300                   \
        *mgp32*march=vr4300                     \
        *mlong64*march=vr4300                   \
        march=vr4300                            \
        E[LB]/march=vr4300

Go to most recent revision | Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.