original files of m241
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
# defs.arm - ARM specific definitions for the Diab toolchain
|
||||
#
|
||||
# Copyright (c) 2001-2002, 2006, 2008, 2010, 2012 Wind River Systems, Inc.
|
||||
#
|
||||
# The right to copy, distribute, modify or otherwise make use
|
||||
# of this software may be licensed only pursuant to the terms
|
||||
# of an applicable Wind River license agreement.
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01i,05apr12,jdw Modify for ARMARCH7M
|
||||
# 01h,06oct10,mcm Workaround for WIND00235515.
|
||||
# 01g,31jul10,fao Add be8 support.
|
||||
# 01f,25may10,m_h Thumb-2 Support
|
||||
# 01e,24jun08,pee VSB.
|
||||
# 01d,07feb06,jb Adding VFP switch
|
||||
# 01c,24jun02,m_h define LONGCALL to allow far away ld relocations
|
||||
# 01b,15jan02,to disable auto literal pool inserting
|
||||
# 01a,18dec01,to written
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains ARM specific definitions and flags for the
|
||||
# Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
# compile flags:
|
||||
# -Wa,-Xgnu-thumb generate STT_ARM_TFUNC for the compatibility
|
||||
# with GNU
|
||||
# -Wa,-Xlit-auto-off disable auto literal pool inserting
|
||||
#
|
||||
# NOTE
|
||||
# The file name comes from defs.$(VX_CPU_FAMILY)
|
||||
#
|
||||
|
||||
include $(TGT_DIR)/h/tool/diab/defs.diab
|
||||
include $(TGT_DIR)/h/tool/common/defs.arm
|
||||
|
||||
LONGCALL = -Xcode-absolute-far
|
||||
|
||||
TGT_FLAG_ENDIAN_big = E
|
||||
TGT_FLAG_ENDIAN_be8 = E
|
||||
TGT_FLAG_ENDIAN_little = L
|
||||
|
||||
ifeq ($(CPU),ARMARCH7M)
|
||||
## Options for ARMv7-M
|
||||
|
||||
# definitions for Thumb-2
|
||||
CC_ARCH_SPEC += -Wa,-Xgnu-thumb -ei5388
|
||||
|
||||
OPTION_LANG_ASM += -Wa,-Xlit-auto-off
|
||||
else
|
||||
## Options for traditional ARM
|
||||
ifeq ($(findstring _T,$(CPU)),_T)
|
||||
ifeq ($(findstring _T2,$(CPU)),_T2)
|
||||
# definitions for Thumb-2
|
||||
CC_ARCH_SPEC += -Wa,-Xgnu-thumb -X42
|
||||
else
|
||||
# definitions for Thumb mode
|
||||
CC_ARCH_SPEC += -Xinterwork -Wa,-Xgnu-thumb -X42
|
||||
endif
|
||||
else
|
||||
# definitions for ARM mode
|
||||
endif
|
||||
|
||||
OPTION_LANG_ASM += -Wa,-Xlit-auto-off -Wa,-Xenable-coprocessor-vfp
|
||||
endif
|
||||
|
||||
# end of defs.arm
|
||||
@@ -0,0 +1,469 @@
|
||||
# defs.diab - arch independent definitions specific to the Diab toolchain
|
||||
#
|
||||
# Copyright (c) 2000-2014, 2016 Wind River Systems, Inc.
|
||||
#
|
||||
# The right to copy, distribute, modify or otherwise make use of this software
|
||||
# may be licensed only pursuant to the terms of an applicable Wind River
|
||||
# license agreement.
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 05b,11mar16,mcm Fix for VXW6-85391, adding the -Xclib-optim-off option for
|
||||
# C++ sources as well.
|
||||
# 05a,25jul14,mcm Removing 4144 from the list of suppressed warnings to allow
|
||||
# the use of the 5.9.4.x compiler.
|
||||
# 04z,12nov13,elp prevent warning when building symbol table (WIND00442321).
|
||||
# 04y,23oct13,dee ignore additional warnings. WIND00440418
|
||||
# 04x,29aug12,mze change to system-headers warning
|
||||
# 04w,27jul12,mcm Fix for WIND00347537 - putting back the required space
|
||||
# after "-o".
|
||||
# 04v,22jun12,mze WIND00329947 "-W:c++:.CPP" added to commadline
|
||||
# 04u,18apr12,mze disable Xlint
|
||||
# 04t,18oct11,dxp remove no proxy define
|
||||
# 04s,18jul11,dxp port 6.10 changes for ecloud build to disable lmproxy
|
||||
# 04r,15jun11,mze changes for DEBUG
|
||||
# 04q,10jun11,mze add support for DEBUG_FLAG
|
||||
# 04p,28jan11,mcm Fix for WIND00252752 (updating compiler warning level)
|
||||
# 04o,19jan11,pee WIND00250470
|
||||
# 04n,16nov10,pee WIND00240589
|
||||
# 04m,15nov10,pee WIND00240599
|
||||
# 04l,08nov10,zl added CC_WARNINGS_IGNORE_DEPRECATED.
|
||||
# 04l,28oct10,pee WIND00233594
|
||||
# 04k,06oct10,mcm Added the EDG_IGNORE warnings to the medium level warning
|
||||
# option. Also added all currently seen 'info' messages to the
|
||||
# ignored list and removed 4009 from the ignored list.
|
||||
# 04j,29sep10,mcm Ignoring some new warnings introduced by the new EDG
|
||||
# frontend.
|
||||
# 04i,21sep10,mcm Switching to etoa for C89 kernel side compiles.
|
||||
# 04l,18aug10,gvm moving to :vxworks69
|
||||
# 04k,23jul10,v_r Added missing space at the end of the OPTION_OBJECT_NAME
|
||||
# macro.
|
||||
# 04j,13may10,pee adding line info to CPP and PTION_LD_GENMAP
|
||||
# 04i,16dec09,mcm Adding option to enable warnings for system headers
|
||||
# 04h,25aug09,pee WIND00178176 remove redundant MUNCH defs.
|
||||
# 04g,04may09,mdo Add "vector" variation of TGT_FLAG_FP
|
||||
# 04f,02jul09,mcm Moving to :vxworks68
|
||||
# 04e,02jul09,pee define section splittion option for CC
|
||||
# 04d,26jun09,pee adding defs for section splitting.
|
||||
# 04c,11jul08,mcm Changing the environment from :vxworks66 to :vxworks67
|
||||
# 04b,24jun08,pee VSB.
|
||||
# 04a,18jun08,jpb Added VSB support by removing redundant assembly file
|
||||
# define.
|
||||
# 03z,11jun08,pee VSB adaptation.
|
||||
# 03y,07jun07,pee reorganize SDA for VIPs
|
||||
# 03x,11may07,dcc temporal disable of SDA builds.
|
||||
# 03w,05may07,dcc added CC_SDA_FLAGS.
|
||||
# 03v,08mar07,pee adding support for generic options
|
||||
# 03u,28feb07,mcm Changing build environment to :vxworks66
|
||||
# 03t,15jan07,mcm Changing the environment from :vxworks64 to :vxworks65
|
||||
# 03s,19jul06,mcm Changing build environment to :vxworks64
|
||||
# 03r,20apr06,lei added KERNEL_TYPE for SMP build
|
||||
# 03q,11apr06,pee SPR 105777 - NULL file created in BSP under MS-Windows
|
||||
# 03p,06feb06,pee adding support for linker symbol definition
|
||||
# 03o,01dec05,mcm Changing build environment to :vxworks63
|
||||
# 03n,31aug05,mcm Changing DIAB_T_ENVIRON to vxworks62
|
||||
# 03m,22aug05,pee Added OPTION_DEPEND_TARGET
|
||||
# 03l,18jul05,pee Added CC_LIBINTRINSICS
|
||||
# 03k,08jul05,pee Added OPTION_CC_GENMAP
|
||||
# 03j,29apr05,md Added OPTION_DEPEND_GEN_D
|
||||
# 03i,31mar05,gvm Changing DIAB_T_ENVIRON to vxworks61
|
||||
# 03h,16feb05,pee Added OPTION_POINTERS_VOLATILE
|
||||
# 03j,24jan05,aeg added -Xforce-declarations to CC_WARNINGS_LOW (SPR #106381).
|
||||
# 03g,03jul04,f_b Improved support for data alignment
|
||||
# 03f,11jun04,mcm Removed -Wa,-Xsemi-is-newline (will come from .conf file).
|
||||
# Also removed -Xstrings-in-text=0 from CC_WARNINGS_MED.
|
||||
# 03f,15jun04,fle SPR#98164 : substitute backslashes with slashes in CC_BASE
|
||||
# 03e,29apr04,c_c Get compiler version from the resource file.
|
||||
# 03d,04may04,mcm Updating compiler version to 5.2.0.2
|
||||
# 03c,26apr04,f_b Removed absolute path to objcopy to prepare for new
|
||||
# directory structure and align with how nm & size are found
|
||||
# 03b,26mar04,mcm Using -Xpointers-volatile instead of the
|
||||
# -Xmemory-is-volatile, which is too restrictive.
|
||||
# 03a,25mar04,c_c Update the Path variable when exists (SPR #95324).
|
||||
# 02z,05apr04,mcm Fix for SPR 95829 - using the new macro LD_LINK_TOOL_DIR
|
||||
# to set the path for Diab C++ libraries.
|
||||
# 02y,12mar04,c_c Updated version to 5.2.0.1
|
||||
# 02x,18feb04,mcm Using vxworks60 instead of base6
|
||||
# 02w,09feb04,fle Updated to new host utilities location
|
||||
# 02v,28jan04,dat Diab compiler level warnings
|
||||
# 02u,22jan04,zmm Moved definitions of ROM_ENTRY, SYS_ENTRY and USR_ENTRY
|
||||
# into defs.common
|
||||
# 02t,09jan04,c_c Don't hardcode compiler path in macro (SPR #92774).
|
||||
# 02s,07nov03,c_c Check compiler version.
|
||||
# 02r,27oct03,dat adding -ei1499 to ignore empty file warning (broken)
|
||||
# 02q,08oct03,dat New warning flags and settings, created
|
||||
# CC_WARNINGS_OLD to be the old settings.
|
||||
# 02p,13may03,sn removed autosetting of -Xc++-abr (does not work with project
|
||||
# facility, causes confusion if tcInfo regenerated with
|
||||
# CXX_STL_VARIANT=abridged).
|
||||
# 02o,08apr03,sn use -r5 instead of -r for partial links
|
||||
# 02n,19mar03,sn use Diab ddump for NM and SIZE
|
||||
# 02m,18feb03,sn added support for Diab 5.1 standard vs abridged library
|
||||
# 02o,17sep03,yvp Added -Xcpp-no-space to OPTION_PP_AS.
|
||||
# 02n,05sep03,pch parameterize Diab "environment" setting
|
||||
# 02m,19aug03,fle SPR#88802, set TCL to tclsh and added WTXTCL macro
|
||||
# 02l,08may02,jab removed -Xexception as it is default
|
||||
# 02k,01may02,sn Define TOOL_FAMILY, deprecate TOOL_VENDOR
|
||||
# 02j,18apr02,jab workaround CPP_PRINT_MACROS problem of writing .o (SPR75718
|
||||
# + SPR75486)
|
||||
# 02i,03apr02,jab made -Xmismatch-warning only visible to C
|
||||
# 02h,21mar02,rbl adding macro so that project facility can add
|
||||
# -Xmemory-is-volatile to bsp files
|
||||
# 02g,22mar02,dat Adding PIC flags for bootInit.o (72825)
|
||||
# 02f,13mar02,sn SPR 74080 - added large project support for Diab
|
||||
# 02e,07mar02,jab added -Xlocal-data-area-static-only option
|
||||
# 02d,14feb02,jab added -r4 to LD_PARTIAL_LAST_FLAGS
|
||||
# 02c,06feb02,t_m change ranlib to ranlib$(TOOLENV)
|
||||
# 02b,21jan02,sn removed obsolete WFC flags; removed unused C++_TEMPLATE_INST
|
||||
# 02a,02jan02,jab use -Xclib-optim-off instead of -Xintrinsic-mask
|
||||
# 01z,20dec01,jab use -r instead of -r4
|
||||
# 01y,13dec01,jab added make variable BOOTCONFIG_FLAGS
|
||||
# 01x,07dec01,dat Adding -w to all dependency generation macros
|
||||
# 01x,05dec01,tpw Rename Diab linker scripts to facilitate regeneration from
|
||||
# a common template.
|
||||
# 01w,28nov01,jab modified ldscript path
|
||||
# 01v,13nov01,tam changed definition of CC_LIB (repackaging)
|
||||
# 01u,13nov01,dat adding project link flags
|
||||
# 01t,05nov01,rbl let project facility know about optimization flags
|
||||
# 01s,12nov01,tam remove -Xrescan-restart; changed TOOL_CONFIG to
|
||||
# TOOL_COMMON_DIR
|
||||
# 01r,12nov01,jab really fixed CPP_PRINT_MACROS
|
||||
# 01q,12nov01,jab fixed CPP_PRINT_MACROS
|
||||
# 01p,07nov01,jab added -Xgenerate-paddr to LD_FLAGS
|
||||
# 01o,06nov01,sn pass the architecture name to munch
|
||||
# 01n,06nov01,jab various flag changes and documentation
|
||||
# 01m,03nov01,tam updated for repackaging
|
||||
# 01l,01nov01,jab flag changes
|
||||
# 01k,30oct01,tpw Take generic defaults from new fragment defs.common
|
||||
# 01j,30oct01,sn Use GNU nm and objcopy
|
||||
# 01i,30oct01,jab sync diab CPP definition with gnu
|
||||
# 01h,29oct01,jab added new ld script variables
|
||||
# 01g,24oct01,dat Relocating tool specific macros
|
||||
# 01f,24oct01,jab added new dependency generation variables
|
||||
# 01e,22oct01,jab cleaned up
|
||||
# 01d,23oct01,dee remove nm$(TOOLENV)
|
||||
# 01c,19oct01,jab added make variables for dependency generation option
|
||||
# added missing OPTION_* make variables
|
||||
# 01b,18oct01,dat Moving tool specifics out of h/make
|
||||
# 01a,17feb00,jab created.
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains architecture independent definitions and flags for the
|
||||
# Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
#
|
||||
# The following switches are used to compile C/C++ source. Most of these
|
||||
# are being used to make the compiler lax regarding coding conventions
|
||||
# used in many source files; however, some are being used to work around
|
||||
# problems in specific source files.
|
||||
#
|
||||
#
|
||||
# -Xintrinsic-mask=0x0 turn off generation of abs/fabs intrinsic; is
|
||||
# this still needed?
|
||||
#
|
||||
|
||||
## generic defaults from defs.common come first, so they can be overridden
|
||||
|
||||
include $(TGT_DIR)/h/tool/common/defs.common
|
||||
|
||||
# diab oes not yet support 64 bit.
|
||||
# disable build spec generation for 64 bot configurations
|
||||
ifdef _WRS_CONFIG_LP64
|
||||
_BDGEN_EXCLUDE = TRUE
|
||||
endif
|
||||
|
||||
## system name, used in -t settings
|
||||
DIAB_T_ENVIRON = vxworks69
|
||||
|
||||
## get TOOL_COMMON_DIR, TOOL_DIAB and TOOL_GNU from TOOL
|
||||
|
||||
TOOL_FAMILY = diab
|
||||
# TOOL_COMMON_DIR = $(subst diab,common,$(TOOL))
|
||||
TOOL_COMMON_DIR = $(BUILD_FP_PREFIX)common$(BUILD_ENDIAN_SUFFIX)
|
||||
TOOL_SPECIFIC_DIR = $(BUILD_FP_PREFIX)$(TOOL_FAMILY)$(BUILD_ENDIAN_SUFFIX)
|
||||
TOOL_DIAB = $(TOOL)
|
||||
TOOL_GNU = $(subst diab,gnu,$(TOOL))
|
||||
|
||||
# Deprecated, use TOOL_FAMILY instead
|
||||
TOOL_VENDOR = diab
|
||||
|
||||
# Set path to diab utilities:
|
||||
# if WIND_DIAB_PATH is set, then use it as the compiler base directory.
|
||||
# else, if WIND_DIAB_VERSION is set, use it.
|
||||
# else, get the version from tools.version file.
|
||||
|
||||
ifneq ($(WIND_DIAB_PATH),)
|
||||
CC_BASE = $(subst \,/,$(WIND_DIAB_PATH))
|
||||
else
|
||||
# set default version to WIND_DIAB_VERSION set in
|
||||
# $(WIND_BASE)/host/resource/hutils/tools.version, but allow environment,
|
||||
# ARCH or CPU specific make fragment to override the value.
|
||||
|
||||
ifeq ($(WIND_DIAB_VERSION),)
|
||||
include $(WIND_BASE)/host/resource/hutils/tools.version
|
||||
endif
|
||||
CC_VERSION = $(WIND_DIAB_VERSION)
|
||||
endif
|
||||
|
||||
## set path to diab utilities
|
||||
|
||||
ifeq ($(WIND_HOST_TYPE),x86-win32)
|
||||
CC_HOST = WIN32
|
||||
else
|
||||
ifeq ($(WIND_HOST_TYPE),sun4-solaris2)
|
||||
CC_HOST = SUNS
|
||||
else
|
||||
CC_HOST = LINUX386
|
||||
endif
|
||||
endif
|
||||
|
||||
ifeq ($(WIND_HOST_TYPE),x86-win32)
|
||||
|
||||
ifneq ($(Path),)
|
||||
export Path := $(CC_BIN_DIR);$(Path)
|
||||
endif
|
||||
|
||||
ifneq ($(PATH),)
|
||||
export PATH := $(CC_BIN_DIR);$(PATH)
|
||||
endif
|
||||
|
||||
else
|
||||
|
||||
ifneq ($(PATH),)
|
||||
export PATH := $(CC_BIN_DIR):$(PATH)
|
||||
endif
|
||||
|
||||
endif
|
||||
|
||||
## diab toolchain binaries
|
||||
|
||||
AR = dar
|
||||
AS = $(CC)
|
||||
CC = dcc
|
||||
CXX = $(CC)
|
||||
CPLUS = dplus
|
||||
# CPP = $(CC) -E -Xpreprocessor-lineno-off
|
||||
CPP = $(CC) -E
|
||||
LD = dld
|
||||
NM = ddump -Ng
|
||||
|
||||
## utility binaries
|
||||
|
||||
RANLIB = ranlib$(TOOLENV)
|
||||
TCL = tclsh
|
||||
WTXTCL = wtxtcl
|
||||
OBJCPY = objcopy$(TOOLENV)
|
||||
SIZE = ddump -Z
|
||||
|
||||
CF =
|
||||
|
||||
CPP_PRINT_MACROS = $(CC) $(TGT_FLAG) $(COMMON_COMPILER) -w -E \
|
||||
-Xcpp-dump-symbols $(CC_INCLUDE) $(CC_DEFINES)
|
||||
|
||||
## project facility variables
|
||||
|
||||
LARGE_PROJECT = true
|
||||
OPTION_INDIRECT_FILE = -@
|
||||
OPTION_NM_INDIRECT_FILE = @
|
||||
|
||||
CC_PROJECT_OPTIMIZE_FLAGS = -O -XO
|
||||
PROJECT_BSP_FLAGS_EXTRA = $(filter -Xpointers-volatile,$(CC_OPTIM_TARGET)) $(CC_SDA_FLAGS)
|
||||
|
||||
## C flags
|
||||
OPTION_SYS_HEADERS = -Xsystem-headers-warn
|
||||
COMMON_COMPILER = -W:c:,-Xclib-optim-off -W:c++:,-Xclib-optim-off -Xansi \
|
||||
-Xlocal-data-area-static-only \
|
||||
$(CC_WARN_SYSTEM_HEADERS) -W:c++:.CPP
|
||||
|
||||
C_COMPILER_FLAGS = -Xc-new -Xdialect-c89
|
||||
|
||||
ifeq ($(VX_CPU_FAMILY), ppc)
|
||||
ifeq ($(SDA_DISABLE),)
|
||||
CC_SDA_FLAGS = -Xsmall-const=8 -Xsmall-data=8
|
||||
endif
|
||||
endif
|
||||
|
||||
CC_ARCH_SPEC = $(TGT_FLAG)
|
||||
CC_COMPILER = $(COMMON_COMPILER) $(C_COMPILER_FLAGS)
|
||||
|
||||
# floating point options
|
||||
TGT_FLAG_FP_vector = V
|
||||
TGT_FLAG_FP_hard = H
|
||||
TGT_FLAG_FP_soft = S
|
||||
|
||||
TGT_FLAG_FP = $(TGT_FLAG_FP_$(_WRS_CONFIG_FP))
|
||||
TGT_FLAG_ENDIAN = $(TGT_FLAG_ENDIAN_$(_WRS_CONFIG_ENDIAN))
|
||||
|
||||
CC_OPTIM_XO = -XO -Xsize-opt
|
||||
CC_OPTIM_DEBUG =
|
||||
CC_OPTIM_DISABLE = -Xoptimized-debug-off
|
||||
CC_OPTIM_NORMAL = $(CC_OPTIM_DEBUG) $(CC_OPTIM_XO)
|
||||
CC_OPTIM_TARGET = $(CC_OPTIM_DEBUG) $(CC_OPTIM_XO) -Xpointers-volatile
|
||||
CC_OPTIM_DRIVER = $(CC_OPTIM_DEBUG) -Xpointers-volatile
|
||||
|
||||
# Compiler warning levels
|
||||
|
||||
# old T2.2 warning level (formerly part of CC_COMMON)
|
||||
|
||||
CC_WARNINGS_OLD_1 = -W:c:,-Xmismatch-warning=2 \
|
||||
-ew1554,1551,1552,1086,1047,1547 \
|
||||
-ei1516,1643,1604
|
||||
CC_WARNINGS_OLD = $(CC_WARNINGS_OLD_1) -Xstrings-in-text=0
|
||||
|
||||
# old standard warning levels
|
||||
|
||||
CC_WARNINGS_ALL= $(CC_WARNINGS_OLD)
|
||||
CC_WARNINGS_NONE= $(CC_WARNINGS_OLD)
|
||||
|
||||
# These are warnings issued by the EDG C89 frontend that can safely be ignored
|
||||
|
||||
CC_WARNINGS_EDG_IGNORE = -ei1518,4177,4223,4301,4550,5409,1606
|
||||
CC_WARNINGS_INFO_IGNORE = -ei4193,4826,4381,4237,1573,4007,4082,4177,4223,4260,4550,5361,5828,2273,5387,5388
|
||||
|
||||
# These warnings are supressed in the product build
|
||||
|
||||
CC_WARNINGS_PDT_SUPRESS = -ei1522,4092,4111,4152,4167,4171,4174,4186,4188,4191,4192,4223,4231,4236,4284,4375,4494,4513,5152,5457
|
||||
|
||||
# option to override warnings for symbols declared with _WRS_DEPRECATED
|
||||
|
||||
CC_WARNINGS_IGNORE_DEPRECATED = -ei5457
|
||||
|
||||
# New warning levels, low, med, high
|
||||
|
||||
# Highest warning level, all warnings should be investigated, but do not fix
|
||||
# by adding copious casts. Every cast is a potential code error in the
|
||||
# future.
|
||||
|
||||
CC_WARNINGS_HIGH = $(CC_WARNINGS_INFO_IGNORE)
|
||||
|
||||
# medium warnings, Code SHOULD be warning free at this level. Avoid
|
||||
# excessive casts just to eliminate warnings.
|
||||
|
||||
CC_WARNINGS_MED = $(CC_WARNINGS_OLD_1) $(CC_WARNINGS_EDG_IGNORE) $(CC_WARNINGS_INFO_IGNORE) $(CC_WARNINGS_PDT_SUPRESS)
|
||||
|
||||
# minimum warnings. Code MUST be warning free at this level. Apply all fixes
|
||||
# necessary to eliminate every warning and error.
|
||||
|
||||
CC_WARNINGS_LOW = $(CC_WARNINGS_EDG_IGNORE) $(CC_WARNINGS_INFO_IGNORE) $(CC_WARNINGS_PDT_SUPRESS) -Xforce-declarations
|
||||
|
||||
# For T2.2, we only use this flag for GNU/MIPS combination.
|
||||
# We will activate this for all arch's after T2.2 release (SPR 72825)
|
||||
# CC_PIC = -Xcode-relative-far
|
||||
|
||||
## C++ flags
|
||||
|
||||
C++_COMPILER = $(COMMON_COMPILER)
|
||||
|
||||
## linker flags
|
||||
|
||||
define link_symdef
|
||||
-D$(word 1, $(1))=$(word 2, $(1))
|
||||
endef
|
||||
|
||||
LDFLAGS = $(TGT_FLAG) -X -N -Xgenerate-paddr $(LDFLAGS_VSB) $(_USER_LDFLAGS)
|
||||
# -r5 is exactly the same as -r except that COMDAT sections
|
||||
# (used for C++ templates) are collapsed. We collapse the
|
||||
# sections at this point to avoid running into the ELF
|
||||
# 65535 section limitation.
|
||||
LD_PARTIAL_FLAGS = $(TGT_FLAG) -X -r5
|
||||
LD_PARTIAL = $(LD) $(LD_PARTIAL_FLAGS)
|
||||
LD_ENTRY_OPT = -e
|
||||
|
||||
# These are flags to pass to the linker the last time we do a
|
||||
# relocatable link. They never get used by a bootable project
|
||||
# and they only get used once by a downloadable project.
|
||||
|
||||
LD_PARTIAL_LAST_FLAGS = -r4
|
||||
|
||||
LD_SCRIPT_RAM = $(TGT_DIR)/h/tool/diab/ldscripts/link.RAM
|
||||
LD_SCRIPT_ROM = $(TGT_DIR)/h/tool/diab/ldscripts/link.ROM
|
||||
|
||||
# for cyclic link support
|
||||
|
||||
LD_START_GROUP =
|
||||
LD_END_GROUP =
|
||||
LD_PARTIAL_START_GROUP =
|
||||
LD_PARTIAL_END_GROUP =
|
||||
|
||||
LD_DATA_SEG_ALIGN_FLAG = $(OPTION_DEFINE_MACRO)_VX_DATA_ALIGN
|
||||
|
||||
LD_LOW_FLAGS = -D_VX_START_TEXT=0x$(RAM_LOW_ADRS)
|
||||
LD_HIGH_FLAGS = -D_VX_START_TEXT=0x$(RAM_HIGH_ADRS)
|
||||
RES_LOW_FLAGS = -D_VX_START_TEXT=0x$(ROM_LINK_ADRS) -D_VX_START_DATA=0x$(RAM_LOW_ADRS)
|
||||
RES_HIGH_FLAGS = -D_VX_START_TEXT=0x$(ROM_LINK_ADRS) -D_VX_START_DATA=0x$(RAM_HIGH_ADRS)
|
||||
|
||||
# Flags for VxWorks Project builds
|
||||
|
||||
LD_RAM_FLAGS = $(LD_LOW_FLAGS)
|
||||
LD_ROM_CPY_FLAGS = $(RES_HIGH_FLAGS)
|
||||
LD_ROM_CMP_FLAGS = $(RES_HIGH_FLAGS)
|
||||
LD_ROM_RES_FLAGS = $(RES_LOW_FLAGS)
|
||||
|
||||
# For 960 IMI
|
||||
LD_IMI_ADRS = -D_VX_TEXT_START=0x$(IMI_TEXT_ADRS) -D_VX_DATA_START=0x$(IMI_DATA_ADRS)
|
||||
|
||||
## utility flags
|
||||
|
||||
NM_GLOB_FLAGS = -g
|
||||
|
||||
## bsp flags
|
||||
|
||||
# compressedEntry() must be first routine in .text section
|
||||
BOOTCONFIG_FLAGS=-Xkill-opt=0x400000
|
||||
|
||||
## options
|
||||
|
||||
OPTION_PP = -E
|
||||
OPTION_PP_AS = -Xpreprocess-assembly -Xcpp-no-space
|
||||
OPTION_PP_NOLINENO = -Xpreprocessor-lineno-off
|
||||
OPTION_PP_COMMENT = -C
|
||||
|
||||
OPTION_DEPEND = -Xmake-dependency -w
|
||||
OPTION_DEPEND_GEN = -Xmake-dependency -Xincfile-missing-ignore -w
|
||||
OPTION_DEPEND_GEN_D = -Xmake-dependency=0x04
|
||||
OPTION_DEPEND_C = $(OPTION_DEPEND_GEN)
|
||||
OPTION_DEPEND_AS = $(OPTION_DEPEND)
|
||||
OPTION_DEPEND_TARGET = -Xmake-dependency-target=
|
||||
|
||||
OPTION_CC_GENMAP = -m6 > $@.map
|
||||
OPTION_LD_GENMAP = -m6 > $@.map
|
||||
|
||||
OPTION_CC_SPLIT_SECTIONS = -Xsection-split=3
|
||||
|
||||
OPTION_DOLLAR_SYMBOLS = -Xdollar-in-ident
|
||||
OPTION_ANSI = -Xansi
|
||||
OPTION_PASS_TO_LD =
|
||||
|
||||
OPTION_NO_WARNINGS = -ei4147
|
||||
|
||||
OPTION_OBJECT_ONLY = -c
|
||||
OPTION_INCLUDE_DIR = -I
|
||||
OPTION_DEFINE_MACRO = -D
|
||||
# this line has a space at the end ("-o ")
|
||||
OPTION_OBJECT_NAME = -o
|
||||
OPTION_EXE_NAME = $(OPTION_OBJECT_NAME)
|
||||
|
||||
OPTION_POINTERS_VOLATILE = -Xpointers-volatile
|
||||
|
||||
LD_LINK_PATH_EXTRA += -L$(LD_LINK_TOOL_DIR)_$(CXX_STL_VARIANT)$(MINOR_OPTION_SUFFIX)
|
||||
|
||||
ifeq ($(CXX_STL_VARIANT),)
|
||||
CXX_STL_VARIANT = standard
|
||||
# If you would like to create projects using the abridged standard library,
|
||||
# replace the above line with:
|
||||
# CXX_STL_VARIANT = abridged
|
||||
endif
|
||||
|
||||
# Library containing compiler support routines
|
||||
CC_LIB =
|
||||
CC_LIBINTRINSICS = -ldcc
|
||||
|
||||
# linker flag for section splitting and removal of unused sections.
|
||||
LD_REMOVE_UNUSED_SECTIONS = -Xremove-unused-sections
|
||||
|
||||
# define data models supported for VIPs
|
||||
ifdef TC_INFO
|
||||
DATA_MODELS = ILP32
|
||||
endif
|
||||
|
||||
_LD_VXWORKS_LOADER_FLAGS = -r0x40000
|
||||
@@ -0,0 +1,23 @@
|
||||
# defs.mips - MIPS specific definitions for the Diab toolchain
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01b,22may02,mem Added -Xno-mips16-calls
|
||||
# 01a,08jan02,pes written
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains MIPS specific definitions and flags for the
|
||||
# Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
# NOTE
|
||||
# The file name comes from defs.$(VX_CPU_FAMILY)
|
||||
#
|
||||
|
||||
include $(TGT_DIR)/h/tool/diab/defs.diab
|
||||
include $(TGT_DIR)/h/tool/common/defs.mips
|
||||
|
||||
# Indicate that MIPS16 isn't supported, so that tail-call optimizations
|
||||
# can be enabled.
|
||||
CC_ARCH_SPEC += -Xno-mips16-calls
|
||||
|
||||
# end of defs.mips
|
||||
@@ -0,0 +1,22 @@
|
||||
/* intrinsics.h - map INCLUDE_INTRINSICS to toolchain specific intrinsics */
|
||||
|
||||
/* Copyright 2001 Wind River Systems, Inc. */
|
||||
|
||||
/*
|
||||
modification history
|
||||
--------------------
|
||||
01a,06feb02,sn wrote
|
||||
*/
|
||||
|
||||
/*
|
||||
DESCRIPTION
|
||||
Map INCLUDE_INTRINSICS to INCLUDE_DIAB_INTRINSICS. Included when TOOL_FAMILY=diab.
|
||||
|
||||
NOMANUAL
|
||||
*/
|
||||
|
||||
#ifdef INCLUDE_INTRINSICS
|
||||
#ifndef INCLUDE_DIAB_INTRINSICS
|
||||
#define INCLUDE_DIAB_INTRINSICS
|
||||
#endif
|
||||
#endif
|
||||
@@ -0,0 +1,22 @@
|
||||
# Makefile - makefile for regenerating Diab linker scripts from common template
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01a,05dec01,tpw written
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains the makefile rules to regenerate cross-target linker
|
||||
# scripts using the template system in tool/common/ldscripts.
|
||||
#
|
||||
#*/
|
||||
|
||||
TGT_DIR=$(WIND_BASE)/target
|
||||
GEN_DIR=$(TGT_DIR)/h/tool/common/ldscripts
|
||||
REGEN_SH=$(GEN_DIR)/regen.sh
|
||||
TOOL=diab
|
||||
|
||||
regen all:
|
||||
sh $(REGEN_SH) $(TOOL)
|
||||
|
||||
update:
|
||||
sh $(REGEN_SH) -update $(TOOL)
|
||||
@@ -0,0 +1,137 @@
|
||||
/* link.ARMARCH4ROM - diab linker command file for VxWorks: ARMARCH4 ROM */
|
||||
|
||||
/* Copyright 2001-2012 Wind River Systems, Inc. */
|
||||
|
||||
/* This file was automatically generated using tool/common/ldscripts. */
|
||||
|
||||
/*
|
||||
modification history
|
||||
--------------------
|
||||
02g,05jan12,my_ Place .copy.text and inflate.text into the .data
|
||||
section for ARMARCH4
|
||||
02f,06may10,slk updates for large memory model support
|
||||
02e,12jan11,pgh Place .copy.text and inflate.text into the .data section
|
||||
02d,09jul10,mcm Adding .wrs_build_vars for GNU as well.
|
||||
02c,10mar10,gvm updates for icc
|
||||
02b,16feb10,mcm Update to allow the 'AT' directive introduced for .boot and
|
||||
.reset to be present for gnu only.
|
||||
02a,15feb10,mcm Updates for GCC 4.3.3
|
||||
01z,24jul09,pee adding wrs_build_vars section.
|
||||
01y,13nov08,mcm Fix for WIND00143294 - gnu.linkonce.b sections not handled
|
||||
correctly. Also added .bss.* and .sbss.*
|
||||
01x,06may08,mcm Changes for GNU Dwarf EH
|
||||
01w,16oct07,sn WIND00107939:fixed LMAs of .sdata etc. for Diab
|
||||
01v,11jul07,pes Update and rename generation of .kseg0data segment. (Renamed
|
||||
to .kseg0bss.) Add .rodata.cst16 segment.
|
||||
01u,07jul07,mcm Fixing position of .tls* sections and adding support for tls
|
||||
for GCC.
|
||||
01t,08jun07,r_s add support for Small Data Area segments.
|
||||
01s,09nov06,gvm Support for .tls_data, .tls_vars, and associated absolute
|
||||
symbols in the Diab linker script
|
||||
01r,25aug05,dlk Support .text.init, .text.fast, .data.init, .data.fast.
|
||||
01r,29jul05,slk SPR 104264: fix MIPS romResident images
|
||||
01q,06may05,rlg changes for MIPS specific devices
|
||||
01p,03jul04,f_b Improved support for data alignment
|
||||
01o,12dec03,sn added more .rodata.str1.* handlers
|
||||
01n,04dec03,sn Diab: .rodata.* is not handled correctly by Diab linker; instead
|
||||
use specific names
|
||||
01m,28oct03,sn Diab: collapse .rodata.cst* sections into .rodata
|
||||
01l,29may02,tpw Diab: pad out sections, needed for MIPS byteswap. SPR 78076
|
||||
01k,24apr02,sn GNU: SPR 75835 - added support for relocatable script link.OUT
|
||||
01j,19apr02,tpw Diab: provide _etext for ColdFire. SPR 75122
|
||||
01i,06feb02,sn Both: place .got2 to handle tramp.o (_x_gnu_tramp.o).
|
||||
01h,25jan02,tpw GNU: give debug sections explicit 0 addresses.
|
||||
01g,14jan02,tpw Diab: place .eh_frame data, in case of insistent GNU objects.
|
||||
01f,14dec01,tpw Diab: provide both underscore options of wrs_kernel* here too.
|
||||
01e,05dec01,tpw Both: Add .boot and .reset section support, for PPC 4xx series
|
||||
and Book E.
|
||||
01d,05dec01,tpw Diab: Add .frame_info section to text region.
|
||||
01c,03dec01,jab Diab: replaced LOAD() with AT()
|
||||
01b,14nov01,tpw ALL: Correct some more bootrom/kernel issues.
|
||||
01b,06nov01,tpw GNU: Add /DISCARD/ directive to discard uninteresting sections
|
||||
01a,01nov01,tpw gnu script written
|
||||
01a,29oct01,jab diab script written
|
||||
*/
|
||||
|
||||
SECTIONS {
|
||||
|
||||
GROUP BIND(_VX_START_TEXT) : {
|
||||
.text (TEXT) : {
|
||||
wrs_kernel_text_start = .; _wrs_kernel_text_start = .;
|
||||
*(.text)
|
||||
|
||||
wrs_kernel_text_fast = .; _wrs_kernel_text_fast = .;
|
||||
*(.text.fast)
|
||||
wrs_kernel_text_init = .; _wrs_kernel_text_init = .;
|
||||
*(.text.init)
|
||||
*(.rdata) *(.rodata) *(.rodata.cst16) *(.rodata.cst8) *(.rodata.cst4) *(.rodata.str1.1) *(.rodata.str1.2) *(.rodata.str1.4) *(.rodata.str1.8) *(.rodata.str1.16) *(.rodata.str1.32) *(.rodata.str1.64) *(.rodata.str1.128) *(.rodata.str1.256)
|
||||
*(.init) *(.fini)
|
||||
*(.frame_info)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
.wrs_build_vars (CONST) : {
|
||||
*(.wrs_build_vars)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
.sdata2 (TEXT) : {
|
||||
*(.sdata2)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
. = ((. + 3) & ~3);
|
||||
etext = .; _etext = .;
|
||||
wrs_kernel_text_end = .; _wrs_kernel_text_end = .;
|
||||
}
|
||||
GROUP BIND(_VX_START_DATA) : {
|
||||
.data (DATA) AT(etext) : {
|
||||
wrs_kernel_copy_text_start = .;
|
||||
*(.copy.text)
|
||||
wrs_kernel_copy_text_end = .;
|
||||
*(.inflate.text)
|
||||
wrs_kernel_data_start = .; _wrs_kernel_data_start = .;
|
||||
*(.data)
|
||||
wrs_kernel_data_fast = .; _wrs_kernel_data_fast = .;
|
||||
*(.data.fast)
|
||||
wrs_kernel_data_init = .; _wrs_kernel_data_init = .;
|
||||
*(.data.init)
|
||||
*(.eh_frame) /* Some GNU objects insist on having .eh_frame data. */
|
||||
*(.ctors)
|
||||
*(.dtors)
|
||||
*(.got2)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
wrs_kernel_tls_data_start = .; _wrs_kernel_tls_data_start = .;
|
||||
.tls_data (DATA) AT(etext + ADDR(.tls_data) - ADDR(.data)) : {
|
||||
*(.tls_data)
|
||||
}
|
||||
wrs_kernel_tls_data_size = . - wrs_kernel_tls_data_start; _wrs_kernel_tls_data_size = . - _wrs_kernel_tls_data_start;
|
||||
wrs_kernel_tls_data_align = ALIGNOF(.tls_data); _wrs_kernel_tls_data_align = ALIGNOF(.tls_data);
|
||||
wrs_kernel_tls_vars_start = .; _wrs_kernel_tls_vars_start = .;
|
||||
.tls_vars (DATA) AT(etext + ADDR(.tls_vars) - ADDR(.data)) : {
|
||||
*(.tls_vars)
|
||||
}
|
||||
wrs_kernel_tls_vars_size = RAWSIZEOF(.tls_vars); _wrs_kernel_tls_vars_size = RAWSIZEOF(.tls_vars);
|
||||
. = ((. + 3) & ~3);
|
||||
/* set gp for MIPS startup code */
|
||||
_gp = ((. + 15) & ~15) + 0x7ff0;
|
||||
|
||||
.sdata (DATA) AT(etext + ADDR(.sdata) - ADDR(.data)) : {
|
||||
*(.sdata)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
. = ((. + 3) & ~3);
|
||||
edata = .; _edata = .;
|
||||
wrs_kernel_data_end = .; _wrs_kernel_data_end = .;
|
||||
.sbss (BSS) AT(etext + ADDR(.sbss) - ADDR(.data)) : {
|
||||
wrs_kernel_bss_start = .; _wrs_kernel_bss_start = .;
|
||||
*(.sbss)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
.bss (BSS) AT(etext + ADDR(.bss) - ADDR(.data)) : {
|
||||
*(.bss)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
. = ((. + 3) & ~3);
|
||||
end = .; _end = .;
|
||||
wrs_kernel_bss_end = .; _wrs_kernel_bss_end = .;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,143 @@
|
||||
/* link.DOTBOOTRAM - diab linker command file for VxWorks: DOTBOOT RAM */
|
||||
|
||||
/* Copyright 2001-2013 Wind River Systems, Inc. */
|
||||
|
||||
/* This file was automatically generated using tool/common/ldscripts. */
|
||||
|
||||
/*
|
||||
modification history
|
||||
--------------------
|
||||
02b,12mar13,gvm Fix for WIND00376986. Close alignment gap between _wrs_kernel_tls_vars_start and .tls_vars
|
||||
02a,06may10,slk updates for large memory model support
|
||||
02e,12jan11,pgh Place .copy.text and inflate.text into the .data section
|
||||
02d,09jul10,mcm Adding .wrs_build_vars for GNU as well.
|
||||
02c,10mar10,gvm updates for icc
|
||||
02b,16feb10,mcm Update to allow the 'AT' directive introduced for .boot and
|
||||
.reset to be present for gnu only.
|
||||
02a,15feb10,mcm Updates for GCC 4.3.3
|
||||
01z,24jul09,pee adding wrs_build_vars section.
|
||||
01y,13nov08,mcm Fix for WIND00143294 - gnu.linkonce.b sections not handled
|
||||
correctly. Also added .bss.* and .sbss.*
|
||||
01x,06may08,mcm Changes for GNU Dwarf EH
|
||||
01w,16oct07,sn WIND00107939:fixed LMAs of .sdata etc. for Diab
|
||||
01v,11jul07,pes Update and rename generation of .kseg0data segment. (Renamed
|
||||
to .kseg0bss.) Add .rodata.cst16 segment.
|
||||
01u,07jul07,mcm Fixing position of .tls* sections and adding support for tls
|
||||
for GCC.
|
||||
01t,08jun07,r_s add support for Small Data Area segments.
|
||||
01s,09nov06,gvm Support for .tls_data, .tls_vars, and associated absolute
|
||||
symbols in the Diab linker script
|
||||
01r,25aug05,dlk Support .text.init, .text.fast, .data.init, .data.fast.
|
||||
01r,29jul05,slk SPR 104264: fix MIPS romResident images
|
||||
01q,06may05,rlg changes for MIPS specific devices
|
||||
01p,03jul04,f_b Improved support for data alignment
|
||||
01o,12dec03,sn added more .rodata.str1.* handlers
|
||||
01n,04dec03,sn Diab: .rodata.* is not handled correctly by Diab linker; instead
|
||||
use specific names
|
||||
01m,28oct03,sn Diab: collapse .rodata.cst* sections into .rodata
|
||||
01l,29may02,tpw Diab: pad out sections, needed for MIPS byteswap. SPR 78076
|
||||
01k,24apr02,sn GNU: SPR 75835 - added support for relocatable script link.OUT
|
||||
01j,19apr02,tpw Diab: provide _etext for ColdFire. SPR 75122
|
||||
01i,06feb02,sn Both: place .got2 to handle tramp.o (_x_gnu_tramp.o).
|
||||
01h,25jan02,tpw GNU: give debug sections explicit 0 addresses.
|
||||
01g,14jan02,tpw Diab: place .eh_frame data, in case of insistent GNU objects.
|
||||
01f,14dec01,tpw Diab: provide both underscore options of wrs_kernel* here too.
|
||||
01e,05dec01,tpw Both: Add .boot and .reset section support, for PPC 4xx series
|
||||
and Book E.
|
||||
01d,05dec01,tpw Diab: Add .frame_info section to text region.
|
||||
01c,03dec01,jab Diab: replaced LOAD() with AT()
|
||||
01b,14nov01,tpw ALL: Correct some more bootrom/kernel issues.
|
||||
01b,06nov01,tpw GNU: Add /DISCARD/ directive to discard uninteresting sections
|
||||
01a,01nov01,tpw gnu script written
|
||||
01a,29oct01,jab diab script written
|
||||
*/
|
||||
|
||||
SECTIONS {
|
||||
|
||||
GROUP BIND(_VX_START_TEXT) : {
|
||||
.text (TEXT) : {
|
||||
wrs_kernel_text_start = .; _wrs_kernel_text_start = .;
|
||||
*(.text)
|
||||
|
||||
wrs_kernel_text_fast = .; _wrs_kernel_text_fast = .;
|
||||
*(.text.fast)
|
||||
wrs_kernel_text_init = .; _wrs_kernel_text_init = .;
|
||||
*(.text.init)
|
||||
*(.rdata) *(.rodata) *(.rodata.cst16) *(.rodata.cst8) *(.rodata.cst4) *(.rodata.str1.1) *(.rodata.str1.2) *(.rodata.str1.4) *(.rodata.str1.8) *(.rodata.str1.16) *(.rodata.str1.32) *(.rodata.str1.64) *(.rodata.str1.128) *(.rodata.str1.256)
|
||||
*(.init) *(.fini)
|
||||
*(.frame_info)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
.wrs_build_vars (CONST) : {
|
||||
*(.wrs_build_vars)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
.sdata2 (TEXT) : {
|
||||
*(.sdata2)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
. = ((. + 3) & ~3);
|
||||
etext = .; _etext = .;
|
||||
wrs_kernel_text_end = .; _wrs_kernel_text_end = .;
|
||||
}
|
||||
GROUP BIND((etext + _VX_DATA_ALIGN - 1) & -_VX_DATA_ALIGN) : {
|
||||
.data (DATA) : {
|
||||
|
||||
wrs_kernel_data_start = .; _wrs_kernel_data_start = .;
|
||||
*(.data)
|
||||
wrs_kernel_data_fast = .; _wrs_kernel_data_fast = .;
|
||||
*(.data.fast)
|
||||
wrs_kernel_data_init = .; _wrs_kernel_data_init = .;
|
||||
*(.data.init)
|
||||
*(.eh_frame) /* Some GNU objects insist on having .eh_frame data. */
|
||||
*(.ctors)
|
||||
*(.dtors)
|
||||
*(.got2)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
wrs_kernel_tls_data_start = .; _wrs_kernel_tls_data_start = .;
|
||||
.tls_data (DATA) : {
|
||||
*(.tls_data)
|
||||
}
|
||||
wrs_kernel_tls_data_size = . - wrs_kernel_tls_data_start; _wrs_kernel_tls_data_size = . - _wrs_kernel_tls_data_start;
|
||||
wrs_kernel_tls_data_align = ALIGNOF(.tls_data); _wrs_kernel_tls_data_align = ALIGNOF(.tls_data);
|
||||
. = ((. + 7) & ~7);
|
||||
wrs_kernel_tls_vars_start = .; _wrs_kernel_tls_vars_start = .;
|
||||
.tls_vars (DATA) : {
|
||||
*(.tls_vars)
|
||||
}
|
||||
wrs_kernel_tls_vars_size = RAWSIZEOF(.tls_vars); _wrs_kernel_tls_vars_size = RAWSIZEOF(.tls_vars);
|
||||
. = ((. + 3) & ~3);
|
||||
/* set gp for MIPS startup code */
|
||||
_gp = ((. + 15) & ~15) + 0x7ff0;
|
||||
|
||||
.sdata (DATA) : {
|
||||
*(.sdata)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
. = ((. + 3) & ~3);
|
||||
edata = .; _edata = .;
|
||||
wrs_kernel_data_end = .; _wrs_kernel_data_end = .;
|
||||
.sbss (BSS) : {
|
||||
wrs_kernel_bss_start = .; _wrs_kernel_bss_start = .;
|
||||
*(.sbss)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
.bss (BSS) : {
|
||||
*(.bss)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
. = ((. + 3) & ~3);
|
||||
end = .; _end = .;
|
||||
wrs_kernel_bss_end = .; _wrs_kernel_bss_end = .;
|
||||
}
|
||||
|
||||
.boot BIND(wrs_kernel_text_start + wrs_kernel_rom_size - 0x800) :
|
||||
{
|
||||
*(.boot)
|
||||
}
|
||||
.reset BIND(wrs_kernel_text_start + wrs_kernel_rom_size - 4) :
|
||||
{
|
||||
*(.reset)
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,143 @@
|
||||
/* link.DOTBOOTROM - diab linker command file for VxWorks: DOTBOOT ROM */
|
||||
|
||||
/* Copyright 2001-2013 Wind River Systems, Inc. */
|
||||
|
||||
/* This file was automatically generated using tool/common/ldscripts. */
|
||||
|
||||
/*
|
||||
modification history
|
||||
--------------------
|
||||
02b,12mar13,gvm Fix for WIND00376986. Close alignment gap between _wrs_kernel_tls_vars_start and .tls_vars
|
||||
02a,06may10,slk updates for large memory model support
|
||||
02e,12jan11,pgh Place .copy.text and inflate.text into the .data section
|
||||
02d,09jul10,mcm Adding .wrs_build_vars for GNU as well.
|
||||
02c,10mar10,gvm updates for icc
|
||||
02b,16feb10,mcm Update to allow the 'AT' directive introduced for .boot and
|
||||
.reset to be present for gnu only.
|
||||
02a,15feb10,mcm Updates for GCC 4.3.3
|
||||
01z,24jul09,pee adding wrs_build_vars section.
|
||||
01y,13nov08,mcm Fix for WIND00143294 - gnu.linkonce.b sections not handled
|
||||
correctly. Also added .bss.* and .sbss.*
|
||||
01x,06may08,mcm Changes for GNU Dwarf EH
|
||||
01w,16oct07,sn WIND00107939:fixed LMAs of .sdata etc. for Diab
|
||||
01v,11jul07,pes Update and rename generation of .kseg0data segment. (Renamed
|
||||
to .kseg0bss.) Add .rodata.cst16 segment.
|
||||
01u,07jul07,mcm Fixing position of .tls* sections and adding support for tls
|
||||
for GCC.
|
||||
01t,08jun07,r_s add support for Small Data Area segments.
|
||||
01s,09nov06,gvm Support for .tls_data, .tls_vars, and associated absolute
|
||||
symbols in the Diab linker script
|
||||
01r,25aug05,dlk Support .text.init, .text.fast, .data.init, .data.fast.
|
||||
01r,29jul05,slk SPR 104264: fix MIPS romResident images
|
||||
01q,06may05,rlg changes for MIPS specific devices
|
||||
01p,03jul04,f_b Improved support for data alignment
|
||||
01o,12dec03,sn added more .rodata.str1.* handlers
|
||||
01n,04dec03,sn Diab: .rodata.* is not handled correctly by Diab linker; instead
|
||||
use specific names
|
||||
01m,28oct03,sn Diab: collapse .rodata.cst* sections into .rodata
|
||||
01l,29may02,tpw Diab: pad out sections, needed for MIPS byteswap. SPR 78076
|
||||
01k,24apr02,sn GNU: SPR 75835 - added support for relocatable script link.OUT
|
||||
01j,19apr02,tpw Diab: provide _etext for ColdFire. SPR 75122
|
||||
01i,06feb02,sn Both: place .got2 to handle tramp.o (_x_gnu_tramp.o).
|
||||
01h,25jan02,tpw GNU: give debug sections explicit 0 addresses.
|
||||
01g,14jan02,tpw Diab: place .eh_frame data, in case of insistent GNU objects.
|
||||
01f,14dec01,tpw Diab: provide both underscore options of wrs_kernel* here too.
|
||||
01e,05dec01,tpw Both: Add .boot and .reset section support, for PPC 4xx series
|
||||
and Book E.
|
||||
01d,05dec01,tpw Diab: Add .frame_info section to text region.
|
||||
01c,03dec01,jab Diab: replaced LOAD() with AT()
|
||||
01b,14nov01,tpw ALL: Correct some more bootrom/kernel issues.
|
||||
01b,06nov01,tpw GNU: Add /DISCARD/ directive to discard uninteresting sections
|
||||
01a,01nov01,tpw gnu script written
|
||||
01a,29oct01,jab diab script written
|
||||
*/
|
||||
|
||||
SECTIONS {
|
||||
|
||||
GROUP BIND(_VX_START_TEXT) : {
|
||||
.text (TEXT) : {
|
||||
wrs_kernel_text_start = .; _wrs_kernel_text_start = .;
|
||||
*(.text)
|
||||
|
||||
wrs_kernel_text_fast = .; _wrs_kernel_text_fast = .;
|
||||
*(.text.fast)
|
||||
wrs_kernel_text_init = .; _wrs_kernel_text_init = .;
|
||||
*(.text.init)
|
||||
*(.rdata) *(.rodata) *(.rodata.cst16) *(.rodata.cst8) *(.rodata.cst4) *(.rodata.str1.1) *(.rodata.str1.2) *(.rodata.str1.4) *(.rodata.str1.8) *(.rodata.str1.16) *(.rodata.str1.32) *(.rodata.str1.64) *(.rodata.str1.128) *(.rodata.str1.256)
|
||||
*(.init) *(.fini)
|
||||
*(.frame_info)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
.wrs_build_vars (CONST) : {
|
||||
*(.wrs_build_vars)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
.sdata2 (TEXT) : {
|
||||
*(.sdata2)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
. = ((. + 3) & ~3);
|
||||
etext = .; _etext = .;
|
||||
wrs_kernel_text_end = .; _wrs_kernel_text_end = .;
|
||||
}
|
||||
GROUP BIND(_VX_START_DATA) : {
|
||||
.data (DATA) AT(etext) : {
|
||||
|
||||
wrs_kernel_data_start = .; _wrs_kernel_data_start = .;
|
||||
*(.data)
|
||||
wrs_kernel_data_fast = .; _wrs_kernel_data_fast = .;
|
||||
*(.data.fast)
|
||||
wrs_kernel_data_init = .; _wrs_kernel_data_init = .;
|
||||
*(.data.init)
|
||||
*(.eh_frame) /* Some GNU objects insist on having .eh_frame data. */
|
||||
*(.ctors)
|
||||
*(.dtors)
|
||||
*(.got2)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
wrs_kernel_tls_data_start = .; _wrs_kernel_tls_data_start = .;
|
||||
.tls_data (DATA) AT(etext + ADDR(.tls_data) - ADDR(.data)) : {
|
||||
*(.tls_data)
|
||||
}
|
||||
wrs_kernel_tls_data_size = . - wrs_kernel_tls_data_start; _wrs_kernel_tls_data_size = . - _wrs_kernel_tls_data_start;
|
||||
wrs_kernel_tls_data_align = ALIGNOF(.tls_data); _wrs_kernel_tls_data_align = ALIGNOF(.tls_data);
|
||||
. = ((. + 7) & ~7);
|
||||
wrs_kernel_tls_vars_start = .; _wrs_kernel_tls_vars_start = .;
|
||||
.tls_vars (DATA) AT(etext + ADDR(.tls_vars) - ADDR(.data)) : {
|
||||
*(.tls_vars)
|
||||
}
|
||||
wrs_kernel_tls_vars_size = RAWSIZEOF(.tls_vars); _wrs_kernel_tls_vars_size = RAWSIZEOF(.tls_vars);
|
||||
. = ((. + 3) & ~3);
|
||||
/* set gp for MIPS startup code */
|
||||
_gp = ((. + 15) & ~15) + 0x7ff0;
|
||||
|
||||
.sdata (DATA) AT(etext + ADDR(.sdata) - ADDR(.data)) : {
|
||||
*(.sdata)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
. = ((. + 3) & ~3);
|
||||
edata = .; _edata = .;
|
||||
wrs_kernel_data_end = .; _wrs_kernel_data_end = .;
|
||||
.sbss (BSS) AT(etext + ADDR(.sbss) - ADDR(.data)) : {
|
||||
wrs_kernel_bss_start = .; _wrs_kernel_bss_start = .;
|
||||
*(.sbss)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
.bss (BSS) AT(etext + ADDR(.bss) - ADDR(.data)) : {
|
||||
*(.bss)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
. = ((. + 3) & ~3);
|
||||
end = .; _end = .;
|
||||
wrs_kernel_bss_end = .; _wrs_kernel_bss_end = .;
|
||||
}
|
||||
|
||||
.boot BIND(wrs_kernel_text_start + wrs_kernel_rom_size - 0x800) :
|
||||
{
|
||||
*(.boot)
|
||||
}
|
||||
.reset BIND(wrs_kernel_text_start + wrs_kernel_rom_size - 4) :
|
||||
{
|
||||
*(.reset)
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,179 @@
|
||||
/* link.MIPSRAM - diab linker command file for VxWorks: MIPS RAM */
|
||||
|
||||
/* Copyright 2001-2013 Wind River Systems, Inc. */
|
||||
|
||||
/* This file was automatically generated using tool/common/ldscripts. */
|
||||
|
||||
/*
|
||||
modification history
|
||||
--------------------
|
||||
02i,02apr13,g_x Add *(text.romentry) in the text segment for MIPS
|
||||
(WIND00408686)
|
||||
02h,12mar13,gvm Fix for WIND00376986. Close alignment gap
|
||||
between _wrs_kernel_tls_vars_start and .tls_vars
|
||||
02g,05jan12,my_ Place .copy.text and inflate.text into the .data
|
||||
section for ARMARCH4
|
||||
02f,06may10,slk updates for large memory model support
|
||||
02e,12jan11,pgh Place .copy.text and inflate.text into the .data section
|
||||
02d,09jul10,mcm Adding .wrs_build_vars for GNU as well.
|
||||
02c,10mar10,gvm updates for icc
|
||||
02b,16feb10,mcm Update to allow the 'AT' directive introduced for .boot and
|
||||
.reset to be present for gnu only.
|
||||
02a,15feb10,mcm Updates for GCC 4.3.3
|
||||
01z,24jul09,pee adding wrs_build_vars section.
|
||||
01y,13nov08,mcm Fix for WIND00143294 - gnu.linkonce.b sections not handled
|
||||
correctly. Also added .bss.* and .sbss.*
|
||||
01x,06may08,mcm Changes for GNU Dwarf EH
|
||||
01w,16oct07,sn WIND00107939:fixed LMAs of .sdata etc. for Diab
|
||||
01v,11jul07,pes Update and rename generation of .kseg0data segment. (Renamed
|
||||
to .kseg0bss.) Add .rodata.cst16 segment.
|
||||
01u,07jul07,mcm Fixing position of .tls* sections and adding support for tls
|
||||
for GCC.
|
||||
01t,08jun07,r_s add support for Small Data Area segments.
|
||||
01s,09nov06,gvm Support for .tls_data, .tls_vars, and associated absolute
|
||||
symbols in the Diab linker script
|
||||
01r,25aug05,dlk Support .text.init, .text.fast, .data.init, .data.fast.
|
||||
01r,29jul05,slk SPR 104264: fix MIPS romResident images
|
||||
01q,06may05,rlg changes for MIPS specific devices
|
||||
01p,03jul04,f_b Improved support for data alignment
|
||||
01o,12dec03,sn added more .rodata.str1.* handlers
|
||||
01n,04dec03,sn Diab: .rodata.* is not handled correctly by Diab linker;instead use specific names
|
||||
01m,28oct03,sn Diab: collapse .rodata.cst* sections into .rodata
|
||||
01l,29may02,tpw Diab: pad out sections, needed for MIPS byteswap. SPR 78076
|
||||
01k,24apr02,sn GNU: SPR 75835 - added support for relocatable script link.OUT
|
||||
01j,19apr02,tpw Diab: provide _etext for ColdFire. SPR 75122
|
||||
01i,06feb02,sn Both: place .got2 to handle tramp.o (_x_gnu_tramp.o).
|
||||
01h,25jan02,tpw GNU: give debug sections explicit 0 addresses.
|
||||
01g,14jan02,tpw Diab: place .eh_frame data, in case of insistent GNU objects.
|
||||
01f,14dec01,tpw Diab: provide both underscore options of wrs_kernel* here too.
|
||||
01e,05dec01,tpw Both: Add .boot and .reset section support, for PPC 4xx series
|
||||
and Book E.
|
||||
01d,05dec01,tpw Diab: Add .frame_info section to text region.
|
||||
01c,03dec01,jab Diab: replaced LOAD() with AT()
|
||||
01b,14nov01,tpw ALL: Correct some more bootrom/kernel issues.
|
||||
01b,06nov01,tpw GNU: Add /DISCARD/ directive to discard uninteresting sections
|
||||
01a,01nov01,tpw gnu script written
|
||||
01a,29oct01,jab diab script written
|
||||
*/
|
||||
|
||||
SECTIONS {
|
||||
|
||||
GROUP BIND(_VX_START_TEXT) : {
|
||||
.text (TEXT) : {
|
||||
wrs_kernel_text_start = .; _wrs_kernel_text_start = .;
|
||||
*(.text.romentry)
|
||||
*(.text.wired)
|
||||
*(.text)
|
||||
wrs_kernel_text_fast = .; _wrs_kernel_text_fast = .;
|
||||
*(.text.fast)
|
||||
wrs_kernel_text_init = .; _wrs_kernel_text_init = .;
|
||||
*(.text.init)
|
||||
*(.rdata) *(.rodata) *(.rodata.cst16) *(.rodata.cst8) *(.rodata.cst4) *(.rodata.str1.1) *(.rodata.str1.2) *(.rodata.str1.4) *(.rodata.str1.8) *(.rodata.str1.16) *(.rodata.str1.32) *(.rodata.str1.64) *(.rodata.str1.128) *(.rodata.str1.256)
|
||||
*(.init) *(.fini)
|
||||
*(.frame_info)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
.wrs_build_vars (CONST) : {
|
||||
*(.wrs_build_vars)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
.sdata2 (TEXT) : {
|
||||
*(.sdata2)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
. = ((. + 3) & ~3);
|
||||
etext = .; _etext = .;
|
||||
wrs_kernel_text_end = .; _wrs_kernel_text_end = .;
|
||||
}
|
||||
GROUP BIND((etext + _VX_DATA_ALIGN - 1) & -_VX_DATA_ALIGN) : {
|
||||
.data (DATA) : {
|
||||
|
||||
wrs_kernel_data_start = .; _wrs_kernel_data_start = .;
|
||||
*(.data)
|
||||
wrs_kernel_data_fast = .; _wrs_kernel_data_fast = .;
|
||||
*(.data.fast)
|
||||
wrs_kernel_data_init = .; _wrs_kernel_data_init = .;
|
||||
*(.data.init)
|
||||
*(.eh_frame) /* Some GNU objects insist on having .eh_frame data. */
|
||||
*(.ctors)
|
||||
*(.dtors)
|
||||
*(.got2)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
wrs_kernel_tls_data_start = .; _wrs_kernel_tls_data_start = .;
|
||||
.tls_data (DATA) : {
|
||||
*(.tls_data)
|
||||
}
|
||||
wrs_kernel_tls_data_size = . - wrs_kernel_tls_data_start; _wrs_kernel_tls_data_size = . - _wrs_kernel_tls_data_start;
|
||||
wrs_kernel_tls_data_align = ALIGNOF(.tls_data); _wrs_kernel_tls_data_align = ALIGNOF(.tls_data);
|
||||
. = ((. + 7) & ~7);
|
||||
wrs_kernel_tls_vars_start = .; _wrs_kernel_tls_vars_start = .;
|
||||
.tls_vars (DATA) : {
|
||||
*(.tls_vars)
|
||||
}
|
||||
wrs_kernel_tls_vars_size = RAWSIZEOF(.tls_vars); _wrs_kernel_tls_vars_size = RAWSIZEOF(.tls_vars);
|
||||
. = ((. + 3) & ~3);
|
||||
/* set gp for MIPS startup code */
|
||||
_gp = ((. + 15) & ~15) + 0x7ff0;
|
||||
_SDA_BASE_ = _gp;
|
||||
.sdata (DATA) : {
|
||||
*(.sdata)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
. = ((. + 3) & ~3);
|
||||
edata = .; _edata = .;
|
||||
wrs_kernel_data_end = .; _wrs_kernel_data_end = .;
|
||||
.sbss (BSS) : {
|
||||
wrs_kernel_bss_start = .; _wrs_kernel_bss_start = .;
|
||||
*(.sbss)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
.bss (BSS) : {
|
||||
*(.bss)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
. = ((. + 255) & ~255);
|
||||
|
||||
/* add sizeof .kseg0bss to end and _end if it follows .bss section */
|
||||
endAdd = LMM_ENABLED == 0 ? SIZEOF(.kseg0bss) : 0x0;
|
||||
end = . + endAdd; _end = . + endAdd;
|
||||
wrs_kernel_bss_end = .; _wrs_kernel_bss_end = .;
|
||||
}
|
||||
|
||||
/* if LMM_ENABLED == 0 then this GROUP is legacy mode.
|
||||
* legacy mode requires the .kseg0bss section be located at
|
||||
* (wrs_kernel_bss_end & 0xbfffffff). the other sections in this
|
||||
* group are not defined for legacy mode so they will not be included
|
||||
* in the image
|
||||
*
|
||||
* if LMM_ENABLED != 0 then the GROUP should be
|
||||
* located at the address specified by _VX_START_EXCPT_BASE.
|
||||
*/
|
||||
|
||||
_VX_START_EXCPT_ADRS = LMM_ENABLED==0?wrs_kernel_bss_end & 0xbfffffff :_VX_START_EXCPT_BASE;
|
||||
|
||||
GROUP BIND(_VX_START_EXCPT_ADRS) :{
|
||||
wrs_unmapped_text_start = .;
|
||||
.vectors.text (TEXT) : {
|
||||
*(.vectors.text)
|
||||
}
|
||||
.unmapped.text (TEXT) : {
|
||||
*(.unmapped.text)
|
||||
}
|
||||
wrs_unmapped_text_end = .;
|
||||
. = ((. + 31) & ~31);
|
||||
wrs_unmapped_data_start = .;
|
||||
.unmapped.data (DATA) : {
|
||||
wrs_unmapped_data_start = .;
|
||||
*(.unmapped.data)
|
||||
}
|
||||
wrs_unmapped_data_end = .;
|
||||
. = ((. + 15) & ~15);
|
||||
wrs_unmapped_bss_start = .;
|
||||
.kseg0bss (BSS) : {
|
||||
*(.kseg0bss)
|
||||
}
|
||||
wrs_unmapped_bss_end = .;
|
||||
. = ((. + 15) & ~15);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,172 @@
|
||||
/* link.MIPSROM - diab linker command file for VxWorks: MIPS ROM */
|
||||
|
||||
/* Copyright 2001-2013 Wind River Systems, Inc. */
|
||||
|
||||
/* This file was automatically generated using tool/common/ldscripts. */
|
||||
|
||||
/*
|
||||
modification history
|
||||
--------------------
|
||||
02i,02apr13,g_x Add *(text.romentry) in the text segment for MIPS
|
||||
(WIND00408686)
|
||||
02h,12mar13,gvm Fix for WIND00376986. Close alignment gap
|
||||
between _wrs_kernel_tls_vars_start and .tls_vars
|
||||
02g,05jan12,my_ Place .copy.text and inflate.text into the .data
|
||||
section for ARMARCH4
|
||||
02f,06may10,slk updates for large memory model support
|
||||
02e,12jan11,pgh Place .copy.text and inflate.text into the .data section
|
||||
02d,09jul10,mcm Adding .wrs_build_vars for GNU as well.
|
||||
02c,10mar10,gvm updates for icc
|
||||
02b,16feb10,mcm Update to allow the 'AT' directive introduced for .boot and
|
||||
.reset to be present for gnu only.
|
||||
02a,15feb10,mcm Updates for GCC 4.3.3
|
||||
01z,24jul09,pee adding wrs_build_vars section.
|
||||
01y,13nov08,mcm Fix for WIND00143294 - gnu.linkonce.b sections not handled
|
||||
correctly. Also added .bss.* and .sbss.*
|
||||
01x,06may08,mcm Changes for GNU Dwarf EH
|
||||
01w,16oct07,sn WIND00107939:fixed LMAs of .sdata etc. for Diab
|
||||
01v,11jul07,pes Update and rename generation of .kseg0data segment. (Renamed
|
||||
to .kseg0bss.) Add .rodata.cst16 segment.
|
||||
01u,07jul07,mcm Fixing position of .tls* sections and adding support for tls
|
||||
for GCC.
|
||||
01t,08jun07,r_s add support for Small Data Area segments.
|
||||
01s,09nov06,gvm Support for .tls_data, .tls_vars, and associated absolute
|
||||
symbols in the Diab linker script
|
||||
01r,25aug05,dlk Support .text.init, .text.fast, .data.init, .data.fast.
|
||||
01r,29jul05,slk SPR 104264: fix MIPS romResident images
|
||||
01q,06may05,rlg changes for MIPS specific devices
|
||||
01p,03jul04,f_b Improved support for data alignment
|
||||
01o,12dec03,sn added more .rodata.str1.* handlers
|
||||
01n,04dec03,sn Diab: .rodata.* is not handled correctly by Diab linker;instead use specific names
|
||||
01m,28oct03,sn Diab: collapse .rodata.cst* sections into .rodata
|
||||
01l,29may02,tpw Diab: pad out sections, needed for MIPS byteswap. SPR 78076
|
||||
01k,24apr02,sn GNU: SPR 75835 - added support for relocatable script link.OUT
|
||||
01j,19apr02,tpw Diab: provide _etext for ColdFire. SPR 75122
|
||||
01i,06feb02,sn Both: place .got2 to handle tramp.o (_x_gnu_tramp.o).
|
||||
01h,25jan02,tpw GNU: give debug sections explicit 0 addresses.
|
||||
01g,14jan02,tpw Diab: place .eh_frame data, in case of insistent GNU objects.
|
||||
01f,14dec01,tpw Diab: provide both underscore options of wrs_kernel* here too.
|
||||
01e,05dec01,tpw Both: Add .boot and .reset section support, for PPC 4xx series
|
||||
and Book E.
|
||||
01d,05dec01,tpw Diab: Add .frame_info section to text region.
|
||||
01c,03dec01,jab Diab: replaced LOAD() with AT()
|
||||
01b,14nov01,tpw ALL: Correct some more bootrom/kernel issues.
|
||||
01b,06nov01,tpw GNU: Add /DISCARD/ directive to discard uninteresting sections
|
||||
01a,01nov01,tpw gnu script written
|
||||
01a,29oct01,jab diab script written
|
||||
*/
|
||||
|
||||
SECTIONS {
|
||||
LMM_ENABLED = 0;
|
||||
GROUP BIND(_VX_START_TEXT) : {
|
||||
.text (TEXT) : {
|
||||
wrs_kernel_text_start = .; _wrs_kernel_text_start = .;
|
||||
*(.text.romentry)
|
||||
*(.text)
|
||||
*(.text.wired)
|
||||
wrs_kernel_text_fast = .; _wrs_kernel_text_fast = .;
|
||||
*(.text.fast)
|
||||
wrs_kernel_text_init = .; _wrs_kernel_text_init = .;
|
||||
*(.text.init)
|
||||
*(.rdata) *(.rodata) *(.rodata.cst16) *(.rodata.cst8) *(.rodata.cst4) *(.rodata.str1.1) *(.rodata.str1.2) *(.rodata.str1.4) *(.rodata.str1.8) *(.rodata.str1.16) *(.rodata.str1.32) *(.rodata.str1.64) *(.rodata.str1.128) *(.rodata.str1.256)
|
||||
*(.init) *(.fini)
|
||||
*(.frame_info)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
.wrs_build_vars (CONST) : {
|
||||
*(.wrs_build_vars)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
.sdata2 (TEXT) : {
|
||||
*(.sdata2)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
. = ((. + 3) & ~3);
|
||||
etext = .; _etext = .;
|
||||
wrs_kernel_text_end = .; _wrs_kernel_text_end = .;
|
||||
}
|
||||
GROUP BIND(_VX_START_DATA) : {
|
||||
.data (DATA) AT(etext) : {
|
||||
wrs_kernel_copy_text_start = .;
|
||||
*(.copy.text)
|
||||
wrs_kernel_copy_text_end = .;
|
||||
*(.inflate.text)
|
||||
wrs_kernel_data_start = .; _wrs_kernel_data_start = .;
|
||||
*(.data)
|
||||
wrs_kernel_data_fast = .; _wrs_kernel_data_fast = .;
|
||||
*(.data.fast)
|
||||
wrs_kernel_data_init = .; _wrs_kernel_data_init = .;
|
||||
*(.data.init)
|
||||
*(.eh_frame) /* Some GNU objects insist on having .eh_frame data. */
|
||||
*(.ctors)
|
||||
*(.dtors)
|
||||
*(.got2)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
wrs_kernel_tls_data_start = .; _wrs_kernel_tls_data_start = .;
|
||||
.tls_data (DATA) AT(etext + ADDR(.tls_data) - ADDR(.data)) : {
|
||||
*(.tls_data)
|
||||
}
|
||||
wrs_kernel_tls_data_size = . - wrs_kernel_tls_data_start; _wrs_kernel_tls_data_size = . - _wrs_kernel_tls_data_start;
|
||||
wrs_kernel_tls_data_align = ALIGNOF(.tls_data); _wrs_kernel_tls_data_align = ALIGNOF(.tls_data);
|
||||
. = ((. + 7) & ~7);
|
||||
wrs_kernel_tls_vars_start = .; _wrs_kernel_tls_vars_start = .;
|
||||
.tls_vars (DATA) AT(etext + ADDR(.tls_vars) - ADDR(.data)) : {
|
||||
*(.tls_vars)
|
||||
}
|
||||
wrs_kernel_tls_vars_size = RAWSIZEOF(.tls_vars); _wrs_kernel_tls_vars_size = RAWSIZEOF(.tls_vars);
|
||||
. = ((. + 3) & ~3);
|
||||
/* set gp for MIPS startup code */
|
||||
_gp = ((. + 15) & ~15) + 0x7ff0;
|
||||
_SDA_BASE_ = _gp;
|
||||
.sdata (DATA) AT(etext + ADDR(.sdata) - ADDR(.data)) : {
|
||||
*(.sdata)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
. = ((. + 3) & ~3);
|
||||
edata = .; _edata = .;
|
||||
wrs_kernel_data_end = .; _wrs_kernel_data_end = .;
|
||||
.sbss (BSS) AT(etext + ADDR(.sbss) - ADDR(.data)) : {
|
||||
wrs_kernel_bss_start = .; _wrs_kernel_bss_start = .;
|
||||
*(.sbss)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
.bss (BSS) AT(etext + ADDR(.bss) - ADDR(.data)) : {
|
||||
*(.bss)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
. = ((. + 255) & ~255);
|
||||
|
||||
/* add sizeof .kseg0bss to end and _end if it follows .bss section */
|
||||
endAdd = LMM_ENABLED == 0 ? SIZEOF(.kseg0bss) : 0x0;
|
||||
end = . + endAdd; _end = . + endAdd;
|
||||
wrs_kernel_bss_end = .; _wrs_kernel_bss_end = .;
|
||||
}
|
||||
|
||||
_VX_START_EXCPT_ADRS = wrs_kernel_bss_end & 0xbfffffff;
|
||||
GROUP BIND(_VX_START_EXCPT_ADRS) :
|
||||
{
|
||||
wrs_unmapped_text_start = .;
|
||||
.vectors.text (TEXT) : {
|
||||
*(.vectors.text)
|
||||
}
|
||||
.unmapped.text (TEXT) : {
|
||||
*(.unmapped.text)
|
||||
}
|
||||
wrs_unmapped_text_end = .;
|
||||
. = ((. + 31) & ~31);
|
||||
wrs_unmapped_data_start = .;
|
||||
.unmapped.data (DATA) : {
|
||||
wrs_unmapped_data_start = .;
|
||||
*(.unmapped.data)
|
||||
}
|
||||
wrs_unmapped_data_end = .;
|
||||
. = ((. + 15) & ~15);
|
||||
wrs_unmapped_bss_start = .;
|
||||
.kseg0bss (BSS) : {
|
||||
*(.kseg0bss)
|
||||
}
|
||||
wrs_unmapped_bss_end = .;
|
||||
. = ((. + 15) & ~15);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,134 @@
|
||||
/* link.RAM - diab linker command file for VxWorks: RAM */
|
||||
|
||||
/* Copyright 2001-2013 Wind River Systems, Inc. */
|
||||
|
||||
/* This file was automatically generated using tool/common/ldscripts. */
|
||||
|
||||
/*
|
||||
modification history
|
||||
--------------------
|
||||
02b,12mar13,gvm Fix for WIND00376986. Close alignment gap between _wrs_kernel_tls_vars_start and .tls_vars
|
||||
02a,06may10,slk updates for large memory model support
|
||||
02e,12jan11,pgh Place .copy.text and inflate.text into the .data section
|
||||
02d,09jul10,mcm Adding .wrs_build_vars for GNU as well.
|
||||
02c,10mar10,gvm updates for icc
|
||||
02b,16feb10,mcm Update to allow the 'AT' directive introduced for .boot and
|
||||
.reset to be present for gnu only.
|
||||
02a,15feb10,mcm Updates for GCC 4.3.3
|
||||
01z,24jul09,pee adding wrs_build_vars section.
|
||||
01y,13nov08,mcm Fix for WIND00143294 - gnu.linkonce.b sections not handled
|
||||
correctly. Also added .bss.* and .sbss.*
|
||||
01x,06may08,mcm Changes for GNU Dwarf EH
|
||||
01w,16oct07,sn WIND00107939:fixed LMAs of .sdata etc. for Diab
|
||||
01v,11jul07,pes Update and rename generation of .kseg0data segment. (Renamed
|
||||
to .kseg0bss.) Add .rodata.cst16 segment.
|
||||
01u,07jul07,mcm Fixing position of .tls* sections and adding support for tls
|
||||
for GCC.
|
||||
01t,08jun07,r_s add support for Small Data Area segments.
|
||||
01s,09nov06,gvm Support for .tls_data, .tls_vars, and associated absolute
|
||||
symbols in the Diab linker script
|
||||
01r,25aug05,dlk Support .text.init, .text.fast, .data.init, .data.fast.
|
||||
01r,29jul05,slk SPR 104264: fix MIPS romResident images
|
||||
01q,06may05,rlg changes for MIPS specific devices
|
||||
01p,03jul04,f_b Improved support for data alignment
|
||||
01o,12dec03,sn added more .rodata.str1.* handlers
|
||||
01n,04dec03,sn Diab: .rodata.* is not handled correctly by Diab linker; instead
|
||||
use specific names
|
||||
01m,28oct03,sn Diab: collapse .rodata.cst* sections into .rodata
|
||||
01l,29may02,tpw Diab: pad out sections, needed for MIPS byteswap. SPR 78076
|
||||
01k,24apr02,sn GNU: SPR 75835 - added support for relocatable script link.OUT
|
||||
01j,19apr02,tpw Diab: provide _etext for ColdFire. SPR 75122
|
||||
01i,06feb02,sn Both: place .got2 to handle tramp.o (_x_gnu_tramp.o).
|
||||
01h,25jan02,tpw GNU: give debug sections explicit 0 addresses.
|
||||
01g,14jan02,tpw Diab: place .eh_frame data, in case of insistent GNU objects.
|
||||
01f,14dec01,tpw Diab: provide both underscore options of wrs_kernel* here too.
|
||||
01e,05dec01,tpw Both: Add .boot and .reset section support, for PPC 4xx series
|
||||
and Book E.
|
||||
01d,05dec01,tpw Diab: Add .frame_info section to text region.
|
||||
01c,03dec01,jab Diab: replaced LOAD() with AT()
|
||||
01b,14nov01,tpw ALL: Correct some more bootrom/kernel issues.
|
||||
01b,06nov01,tpw GNU: Add /DISCARD/ directive to discard uninteresting sections
|
||||
01a,01nov01,tpw gnu script written
|
||||
01a,29oct01,jab diab script written
|
||||
*/
|
||||
|
||||
SECTIONS {
|
||||
|
||||
GROUP BIND(_VX_START_TEXT) : {
|
||||
.text (TEXT) : {
|
||||
wrs_kernel_text_start = .; _wrs_kernel_text_start = .;
|
||||
*(.text)
|
||||
|
||||
wrs_kernel_text_fast = .; _wrs_kernel_text_fast = .;
|
||||
*(.text.fast)
|
||||
wrs_kernel_text_init = .; _wrs_kernel_text_init = .;
|
||||
*(.text.init)
|
||||
*(.rdata) *(.rodata) *(.rodata.cst16) *(.rodata.cst8) *(.rodata.cst4) *(.rodata.str1.1) *(.rodata.str1.2) *(.rodata.str1.4) *(.rodata.str1.8) *(.rodata.str1.16) *(.rodata.str1.32) *(.rodata.str1.64) *(.rodata.str1.128) *(.rodata.str1.256)
|
||||
*(.init) *(.fini)
|
||||
*(.frame_info)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
.wrs_build_vars (CONST) : {
|
||||
*(.wrs_build_vars)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
.sdata2 (TEXT) : {
|
||||
*(.sdata2)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
. = ((. + 3) & ~3);
|
||||
etext = .; _etext = .;
|
||||
wrs_kernel_text_end = .; _wrs_kernel_text_end = .;
|
||||
}
|
||||
GROUP BIND((etext + _VX_DATA_ALIGN - 1) & -_VX_DATA_ALIGN) : {
|
||||
.data (DATA) : {
|
||||
|
||||
wrs_kernel_data_start = .; _wrs_kernel_data_start = .;
|
||||
*(.data)
|
||||
wrs_kernel_data_fast = .; _wrs_kernel_data_fast = .;
|
||||
*(.data.fast)
|
||||
wrs_kernel_data_init = .; _wrs_kernel_data_init = .;
|
||||
*(.data.init)
|
||||
*(.eh_frame) /* Some GNU objects insist on having .eh_frame data. */
|
||||
*(.ctors)
|
||||
*(.dtors)
|
||||
*(.got2)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
wrs_kernel_tls_data_start = .; _wrs_kernel_tls_data_start = .;
|
||||
.tls_data (DATA) : {
|
||||
*(.tls_data)
|
||||
}
|
||||
wrs_kernel_tls_data_size = . - wrs_kernel_tls_data_start; _wrs_kernel_tls_data_size = . - _wrs_kernel_tls_data_start;
|
||||
wrs_kernel_tls_data_align = ALIGNOF(.tls_data); _wrs_kernel_tls_data_align = ALIGNOF(.tls_data);
|
||||
. = ((. + 7) & ~7);
|
||||
wrs_kernel_tls_vars_start = .; _wrs_kernel_tls_vars_start = .;
|
||||
.tls_vars (DATA) : {
|
||||
*(.tls_vars)
|
||||
}
|
||||
wrs_kernel_tls_vars_size = RAWSIZEOF(.tls_vars); _wrs_kernel_tls_vars_size = RAWSIZEOF(.tls_vars);
|
||||
. = ((. + 3) & ~3);
|
||||
/* set gp for MIPS startup code */
|
||||
_gp = ((. + 15) & ~15) + 0x7ff0;
|
||||
|
||||
.sdata (DATA) : {
|
||||
*(.sdata)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
. = ((. + 3) & ~3);
|
||||
edata = .; _edata = .;
|
||||
wrs_kernel_data_end = .; _wrs_kernel_data_end = .;
|
||||
.sbss (BSS) : {
|
||||
wrs_kernel_bss_start = .; _wrs_kernel_bss_start = .;
|
||||
*(.sbss)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
.bss (BSS) : {
|
||||
*(.bss)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
. = ((. + 3) & ~3);
|
||||
end = .; _end = .;
|
||||
wrs_kernel_bss_end = .; _wrs_kernel_bss_end = .;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,134 @@
|
||||
/* link.ROM - diab linker command file for VxWorks: ROM */
|
||||
|
||||
/* Copyright 2001-2013 Wind River Systems, Inc. */
|
||||
|
||||
/* This file was automatically generated using tool/common/ldscripts. */
|
||||
|
||||
/*
|
||||
modification history
|
||||
--------------------
|
||||
02b,12mar13,gvm Fix for WIND00376986. Close alignment gap between _wrs_kernel_tls_vars_start and .tls_vars
|
||||
02a,06may10,slk updates for large memory model support
|
||||
02e,12jan11,pgh Place .copy.text and inflate.text into the .data section
|
||||
02d,09jul10,mcm Adding .wrs_build_vars for GNU as well.
|
||||
02c,10mar10,gvm updates for icc
|
||||
02b,16feb10,mcm Update to allow the 'AT' directive introduced for .boot and
|
||||
.reset to be present for gnu only.
|
||||
02a,15feb10,mcm Updates for GCC 4.3.3
|
||||
01z,24jul09,pee adding wrs_build_vars section.
|
||||
01y,13nov08,mcm Fix for WIND00143294 - gnu.linkonce.b sections not handled
|
||||
correctly. Also added .bss.* and .sbss.*
|
||||
01x,06may08,mcm Changes for GNU Dwarf EH
|
||||
01w,16oct07,sn WIND00107939:fixed LMAs of .sdata etc. for Diab
|
||||
01v,11jul07,pes Update and rename generation of .kseg0data segment. (Renamed
|
||||
to .kseg0bss.) Add .rodata.cst16 segment.
|
||||
01u,07jul07,mcm Fixing position of .tls* sections and adding support for tls
|
||||
for GCC.
|
||||
01t,08jun07,r_s add support for Small Data Area segments.
|
||||
01s,09nov06,gvm Support for .tls_data, .tls_vars, and associated absolute
|
||||
symbols in the Diab linker script
|
||||
01r,25aug05,dlk Support .text.init, .text.fast, .data.init, .data.fast.
|
||||
01r,29jul05,slk SPR 104264: fix MIPS romResident images
|
||||
01q,06may05,rlg changes for MIPS specific devices
|
||||
01p,03jul04,f_b Improved support for data alignment
|
||||
01o,12dec03,sn added more .rodata.str1.* handlers
|
||||
01n,04dec03,sn Diab: .rodata.* is not handled correctly by Diab linker; instead
|
||||
use specific names
|
||||
01m,28oct03,sn Diab: collapse .rodata.cst* sections into .rodata
|
||||
01l,29may02,tpw Diab: pad out sections, needed for MIPS byteswap. SPR 78076
|
||||
01k,24apr02,sn GNU: SPR 75835 - added support for relocatable script link.OUT
|
||||
01j,19apr02,tpw Diab: provide _etext for ColdFire. SPR 75122
|
||||
01i,06feb02,sn Both: place .got2 to handle tramp.o (_x_gnu_tramp.o).
|
||||
01h,25jan02,tpw GNU: give debug sections explicit 0 addresses.
|
||||
01g,14jan02,tpw Diab: place .eh_frame data, in case of insistent GNU objects.
|
||||
01f,14dec01,tpw Diab: provide both underscore options of wrs_kernel* here too.
|
||||
01e,05dec01,tpw Both: Add .boot and .reset section support, for PPC 4xx series
|
||||
and Book E.
|
||||
01d,05dec01,tpw Diab: Add .frame_info section to text region.
|
||||
01c,03dec01,jab Diab: replaced LOAD() with AT()
|
||||
01b,14nov01,tpw ALL: Correct some more bootrom/kernel issues.
|
||||
01b,06nov01,tpw GNU: Add /DISCARD/ directive to discard uninteresting sections
|
||||
01a,01nov01,tpw gnu script written
|
||||
01a,29oct01,jab diab script written
|
||||
*/
|
||||
|
||||
SECTIONS {
|
||||
|
||||
GROUP BIND(_VX_START_TEXT) : {
|
||||
.text (TEXT) : {
|
||||
wrs_kernel_text_start = .; _wrs_kernel_text_start = .;
|
||||
*(.text)
|
||||
|
||||
wrs_kernel_text_fast = .; _wrs_kernel_text_fast = .;
|
||||
*(.text.fast)
|
||||
wrs_kernel_text_init = .; _wrs_kernel_text_init = .;
|
||||
*(.text.init)
|
||||
*(.rdata) *(.rodata) *(.rodata.cst16) *(.rodata.cst8) *(.rodata.cst4) *(.rodata.str1.1) *(.rodata.str1.2) *(.rodata.str1.4) *(.rodata.str1.8) *(.rodata.str1.16) *(.rodata.str1.32) *(.rodata.str1.64) *(.rodata.str1.128) *(.rodata.str1.256)
|
||||
*(.init) *(.fini)
|
||||
*(.frame_info)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
.wrs_build_vars (CONST) : {
|
||||
*(.wrs_build_vars)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
.sdata2 (TEXT) : {
|
||||
*(.sdata2)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
. = ((. + 3) & ~3);
|
||||
etext = .; _etext = .;
|
||||
wrs_kernel_text_end = .; _wrs_kernel_text_end = .;
|
||||
}
|
||||
GROUP BIND(_VX_START_DATA) : {
|
||||
.data (DATA) AT(etext) : {
|
||||
|
||||
wrs_kernel_data_start = .; _wrs_kernel_data_start = .;
|
||||
*(.data)
|
||||
wrs_kernel_data_fast = .; _wrs_kernel_data_fast = .;
|
||||
*(.data.fast)
|
||||
wrs_kernel_data_init = .; _wrs_kernel_data_init = .;
|
||||
*(.data.init)
|
||||
*(.eh_frame) /* Some GNU objects insist on having .eh_frame data. */
|
||||
*(.ctors)
|
||||
*(.dtors)
|
||||
*(.got2)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
wrs_kernel_tls_data_start = .; _wrs_kernel_tls_data_start = .;
|
||||
.tls_data (DATA) AT(etext + ADDR(.tls_data) - ADDR(.data)) : {
|
||||
*(.tls_data)
|
||||
}
|
||||
wrs_kernel_tls_data_size = . - wrs_kernel_tls_data_start; _wrs_kernel_tls_data_size = . - _wrs_kernel_tls_data_start;
|
||||
wrs_kernel_tls_data_align = ALIGNOF(.tls_data); _wrs_kernel_tls_data_align = ALIGNOF(.tls_data);
|
||||
. = ((. + 7) & ~7);
|
||||
wrs_kernel_tls_vars_start = .; _wrs_kernel_tls_vars_start = .;
|
||||
.tls_vars (DATA) AT(etext + ADDR(.tls_vars) - ADDR(.data)) : {
|
||||
*(.tls_vars)
|
||||
}
|
||||
wrs_kernel_tls_vars_size = RAWSIZEOF(.tls_vars); _wrs_kernel_tls_vars_size = RAWSIZEOF(.tls_vars);
|
||||
. = ((. + 3) & ~3);
|
||||
/* set gp for MIPS startup code */
|
||||
_gp = ((. + 15) & ~15) + 0x7ff0;
|
||||
|
||||
.sdata (DATA) AT(etext + ADDR(.sdata) - ADDR(.data)) : {
|
||||
*(.sdata)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
. = ((. + 3) & ~3);
|
||||
edata = .; _edata = .;
|
||||
wrs_kernel_data_end = .; _wrs_kernel_data_end = .;
|
||||
.sbss (BSS) AT(etext + ADDR(.sbss) - ADDR(.data)) : {
|
||||
wrs_kernel_bss_start = .; _wrs_kernel_bss_start = .;
|
||||
*(.sbss)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
.bss (BSS) AT(etext + ADDR(.bss) - ADDR(.data)) : {
|
||||
*(.bss)
|
||||
. = ((. + 3) & ~3);
|
||||
}
|
||||
. = ((. + 3) & ~3);
|
||||
end = .; _end = .;
|
||||
wrs_kernel_bss_end = .; _wrs_kernel_bss_end = .;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
#define CHAR_BIT 8
|
||||
#if defined(__ppc) || defined(__rce) || defined(__arm)
|
||||
#define CHAR_MAX UCHAR_MAX
|
||||
#define CHAR_MIN 0
|
||||
#else
|
||||
#define CHAR_MAX SCHAR_MAX
|
||||
#define CHAR_MIN SCHAR_MIN
|
||||
#endif
|
||||
#define MB_LEN_MAX 5
|
||||
#define INT_MAX 2147483647
|
||||
#define INT_MIN (-2147483647-1)
|
||||
#define LONG_MAX 2147483647L
|
||||
#define LONG_MIN (-2147483647L-1L)
|
||||
#define SCHAR_MAX 127
|
||||
#define SCHAR_MIN (-128)
|
||||
#define SHRT_MAX 32767
|
||||
#define SHRT_MIN (-32768)
|
||||
#define UCHAR_MAX 255
|
||||
#define UINT_MAX 4294967295U
|
||||
#define ULONG_MAX 4294967295LU
|
||||
#define USHRT_MAX 65535
|
||||
#if defined(_WRS_KERNEL)
|
||||
#define WCHAR_MIN 0
|
||||
#define WCHAR_MAX USHRT_MAX
|
||||
#define WINT_MIN INT_MIN
|
||||
#define WINT_MAX INT_MAX
|
||||
#endif /* _WRS_KERNEL */
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
# make.ARMARCH4diab - Diab compilation tools definitions for ARMARCH4
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01j,12dec11,my_ Add fast load support
|
||||
# 01i,25jun08,pee VSB
|
||||
# 01h,30sep03,sn changed :vxworks55 to :$(DIAB_T_ENVIRON)
|
||||
# 01g,14jan02,to move 'include defs.arm' after TOOL and CPU definitions to be
|
||||
# consistent with gnu ones
|
||||
# 01f,18dec01,to move common definitions to defs.arm
|
||||
# 01e,05dec01,jab change :tornado, :simple ,etc. to :vxworks55
|
||||
# 01d,16nov01,t_m Change sysInit entry
|
||||
# 01c,08nov01,t_m Remove CC_ARCH_SPEC and TGT_FLAG
|
||||
# 01b,07nov01,tam removed extra space and added TOOL def
|
||||
# 01a,06nov01,tpw Add %.old rule to facilitate conversions to old OMFs
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains ARMARCH4 specific definitions and flags for the
|
||||
# Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = ARMARCH4
|
||||
TOOL = diab
|
||||
|
||||
include $(TGT_DIR)/h/tool/diab/defs.arm
|
||||
|
||||
LD_SCRIPT_ROM = $(TGT_DIR)/h/tool/diab/ldscripts/link.ARMARCH4ROM
|
||||
|
||||
TGT_FLAG = -tARM$(TGT_FLAG_ENDIAN)S:$(DIAB_T_ENVIRON)
|
||||
|
||||
# end of make.ARMARCH4diab
|
||||
@@ -0,0 +1,25 @@
|
||||
# make.ARMARCH4diabbe - Diab compilation tools definitions for ARMARCH4
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01f,30sep03,sn changed :vxworks55 to :$(DIAB_T_ENVIRON)
|
||||
# 01e,14jan02,to move 'include defs.arm' after TOOL and CPU definitions to be
|
||||
# consistent with gnu ones
|
||||
# 01d,18dec01,to move common definitions to defs.arm
|
||||
# 01c,05dec01,jab change :tornado, :simple ,etc. to :vxworks55
|
||||
# 01b,16nov01,t_m Change sysInit entry
|
||||
# 01a,08nov01,t_m Copied from make.ARMARCH4
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains ARMARCH4 specific definitions and flags for the
|
||||
# Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = ARMARCH4
|
||||
TOOL = diabbe
|
||||
|
||||
include $(TGT_DIR)/h/tool/diab/defs.arm
|
||||
|
||||
TGT_FLAG = -tARMES:$(DIAB_T_ENVIRON)
|
||||
|
||||
# end of make.ARMARCH4diabbe
|
||||
@@ -0,0 +1,26 @@
|
||||
# make.ARMARCH5diab - Diab compilation tools definitions for ARMARCH5
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01g,25jun08,pee VSB
|
||||
# 01f,30sep03,sn changed :vxworks55 to :$(DIAB_T_ENVIRON)
|
||||
# 01e,14jan02,to move 'include defs.arm' after TOOL and CPU definitions to be
|
||||
# consistent with gnu ones
|
||||
# 01d,18dec01,to move common definitions to defs.arm
|
||||
# 01c,05dec01,jab change :tornado, :simple ,etc. to :vxworks55
|
||||
# 01b,16nov01,t_m Change sysInit entry
|
||||
# 01a,08nov01,t_m Copied from ARMARCH5_T
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains ARMARCH5 specific definitions and flags for the
|
||||
# Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = ARMARCH5
|
||||
TOOL = diab
|
||||
|
||||
include $(TGT_DIR)/h/tool/diab/defs.arm
|
||||
|
||||
TGT_FLAG = -tARMV5$(TGT_FLAG_ENDIAN)S:$(DIAB_T_ENVIRON)
|
||||
|
||||
# end of make.ARMARCH5diab
|
||||
@@ -0,0 +1,22 @@
|
||||
# make.ARMARCH5diabbe - Diab compilation tools definitions for ARMARCH5
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01c,30sep03,sn changed :vxworks55 to :$(DIAB_T_ENVIRON)
|
||||
# 01b,14jan02,to move 'include defs.arm' after TOOL and CPU definitions to be
|
||||
# consistent with gnu ones
|
||||
# 01a,18dec01,to created from make.ARMARCH5diab
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains ARMARCH5 specific definitions and flags for the
|
||||
# Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = ARMARCH5
|
||||
TOOL = diabbe
|
||||
|
||||
include $(TGT_DIR)/h/tool/diab/defs.arm
|
||||
|
||||
TGT_FLAG = -tARMV5ES:$(DIAB_T_ENVIRON)
|
||||
|
||||
# end of make.ARMARCH5diabbe
|
||||
@@ -0,0 +1,28 @@
|
||||
# make.ARMARCH6diab - Diab compilation tools definitions for ARMARCH6
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01e,19aug08,mze TGT_FLAG changes
|
||||
# 01d,25jun08,pee VSB
|
||||
# 01c,27sep07,jb Fix for DEFECT WIND00093069
|
||||
# 01b,31aug06,jb Fix for Defect WIND00063709
|
||||
# 01a,06dec04,jb Copied from make.ARMARCH5diab
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains ARMARCH6 specific definitions and flags for the
|
||||
# Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = ARMARCH6
|
||||
TOOL = diab
|
||||
|
||||
include $(TGT_DIR)/h/tool/diab/defs.arm
|
||||
|
||||
ifeq ($(VFPVARIANT),ARM1136)
|
||||
#Enable VFP Code generation
|
||||
TGT_FLAG = -tARMV6$(TGT_FLAG_ENDIAN)V:$(DIAB_T_ENVIRON)
|
||||
else
|
||||
TGT_FLAG = -tARMV6$(TGT_FLAG_ENDIAN)S:$(DIAB_T_ENVIRON)
|
||||
endif
|
||||
|
||||
# end of make.ARMARCH6diab
|
||||
@@ -0,0 +1,34 @@
|
||||
# make.ARMARCH6diabbe - Diab compilation tools definitions for ARMARCH6
|
||||
#
|
||||
# Copyright (c) 2004, 2006, 2007, 2011 Wind River Systems, Inc.
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01d,29dec11,mze fix for defect WIND00325465
|
||||
# 01c,27sep07,jb Fix for DEFECT WIND00093069
|
||||
# 01b,26sep06,jb Fix for Defect WIND00063709
|
||||
# 01a,06dec04,jb created from make.ARMARCH5diabbe
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains ARMARCH6 specific definitions and flags for the
|
||||
# Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = ARMARCH6
|
||||
TOOL = diabbe
|
||||
|
||||
include $(TGT_DIR)/h/tool/diab/defs.arm
|
||||
|
||||
ifeq ($(VFPVARIANT),ARM1136)
|
||||
#Enable VFP Code generation
|
||||
TGT_FLAG = -tARMV6EV:$(DIAB_T_ENVIRON)
|
||||
else
|
||||
TGT_FLAG = -tARMV6ES:$(DIAB_T_ENVIRON)
|
||||
endif
|
||||
|
||||
# this next section will need to be removed if the build specs need to support SMP
|
||||
ifdef _BDGEN_
|
||||
MP_OPTION_ARMARCH6_SMP =
|
||||
endif
|
||||
|
||||
# end of make.ARMARCH6diabbe
|
||||
@@ -0,0 +1,51 @@
|
||||
# make.ARMARCH7Mdiab - Diab compilation tools definitions for ARMARCH7M
|
||||
#
|
||||
# Copyright (c) 2013 Wind River Systems, Inc.
|
||||
#
|
||||
# The right to copy, distribute, modify or otherwise make use
|
||||
# of this software may be licensed only pursuant to the terms
|
||||
# of an applicable Wind River license agreement.
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01a,20aug13,mpc created
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains ARMARCH7M specific definitions and flags for the
|
||||
# Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = ARMARCH7M
|
||||
TOOL = diab
|
||||
|
||||
# default before defs.arm
|
||||
|
||||
_WRS_CONFIG_FP ?= vector
|
||||
ifeq ($(TC_INFO),TRUE)
|
||||
FP ?= vector
|
||||
endif
|
||||
|
||||
include $(TGT_DIR)/h/tool/diab/defs.arm
|
||||
|
||||
# override definitions from defs.arm
|
||||
|
||||
BUILD_FP_PREFIX_soft = sf
|
||||
|
||||
ifneq ($(_WRS_CONFIG_FP), soft)
|
||||
|
||||
# ARMARCH7M uses VFP instruction by default when compiling the
|
||||
# kernel. Enable the compiler to generate VFP instructions and set
|
||||
# the ARM_USE_VFP flag to select optimizations in code for vector
|
||||
# floating point.
|
||||
|
||||
EXTRA_DEFINE += -DARM_USE_VFP
|
||||
|
||||
TGT_FLAG = -tARMV7MT2LF:$(DIAB_T_ENVIRON)
|
||||
|
||||
else
|
||||
|
||||
TGT_FLAG = -tARMV7MT2LS:$(DIAB_T_ENVIRON)
|
||||
|
||||
endif
|
||||
|
||||
# end of make.ARMARCH7Mdiab
|
||||
@@ -0,0 +1,30 @@
|
||||
# make.ARMARCH7Msfdiab - Diab compilation tools definitions for ARMARCH7M
|
||||
#
|
||||
# Copyright (c) 2012 Wind River Systems, Inc.
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01a,2feb12,jdw File created from make.ARMARCH7sfdiab
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains ARMARCH7M specific definitions and flags for the
|
||||
# Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = ARMARCH7M
|
||||
TOOL = sfdiab
|
||||
|
||||
# default before defs.arm
|
||||
_WRS_CONFIG_FP ?= soft
|
||||
ifeq ($(TC_INFO),TRUE)
|
||||
FP ?= soft
|
||||
endif
|
||||
|
||||
include $(TGT_DIR)/h/tool/diab/defs.arm
|
||||
|
||||
# override definitions from defs.arm
|
||||
BUILD_FP_PREFIX_soft = sf
|
||||
|
||||
TGT_FLAG = -tARMV7MT2$(TGT_FLAG_ENDIAN)$(TGT_FLAG_FP):$(DIAB_T_ENVIRON)
|
||||
|
||||
# end of make.ARMARCH7Msfdiab
|
||||
@@ -0,0 +1,42 @@
|
||||
# make.ARMARCH7_T2diab - Diab compilation tools definitions for ARMARCH7_T2
|
||||
#
|
||||
# Copyright (c) 2010-2012 Wind River Systems, Inc.
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01f,09oct12,jdw Add support for VFP flags
|
||||
# 01e,20dec11,jdw Fix COMMON_COMPILER to use defs.diab (WIND00238985)
|
||||
# 01d,20oct10,m_h Workaround WIND00232992 with -Xkill-reorder=0x2000000
|
||||
# 01c,30jun10,m_h Vector Floating Point Support
|
||||
# 01b,28jun10,m_h Thumb-2 reorder workaround
|
||||
# 01a,14jun10,m_h created from make.ARMARCH7diab
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains ARMARCH7_T2 (Thumb-2) specific definitions and flags
|
||||
# for the Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = ARMARCH7_T2
|
||||
TOOL = diab
|
||||
|
||||
include $(TGT_DIR)/h/tool/diab/defs.arm
|
||||
|
||||
# Note: Technically this should be inside "ifneq ($(VFPVARIANT),)"
|
||||
# But CFLAGS do not get generated properly during a project
|
||||
# build after it parses the BSP Makefile
|
||||
# So for now, we support only processors that have a VFP
|
||||
|
||||
_WRS_CONFIG_FP = vector
|
||||
|
||||
# ARMARCH7_T2 uses VFP instruction by default when compiling the
|
||||
# kernel. Enable the compiler to generate VFP instructions and set
|
||||
# the ARM_USE_VFP flag to select optimizations in code for vector
|
||||
# floating point.
|
||||
|
||||
#Enable VFP Code generation
|
||||
COMMON_COMPILER += -Xfp-fast
|
||||
EXTRA_DEFINE += -DARM_USE_VFP
|
||||
|
||||
TGT_FLAG = -tARMT2$(TGT_FLAG_ENDIAN)$(TGT_FLAG_FP):$(DIAB_T_ENVIRON)
|
||||
|
||||
# end of make.ARMARCH7_T2diab
|
||||
@@ -0,0 +1,47 @@
|
||||
# make.ARMARCH7diab - Diab compilation tools definitions for ARMARCH7
|
||||
#
|
||||
# Copyright (c) 2009-2012 Wind River Systems, Inc.
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01g,25sep12,jdw Add ARM_USE_VFP flag
|
||||
# 01f,20dec11,jdw Fix COMMON_COMPILER var to use defs.diab (WIND00238985)
|
||||
# 01e,12nov10,jdw Fix HW/SW floating point support (WIND00241091)
|
||||
# 01d,18oct10,rab Set _WRS_CONFIG_FP to soft for guest os
|
||||
# 01c,04jun09,mdo Make _WRS_CONFIG_FP vector if VFPVARIANT is not null.
|
||||
# 01b,20apr09,m_h ARMv7 Support
|
||||
# 01a,27feb09,m_h created from make.ARMARCH6diab
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains ARMARCH7 specific definitions and flags for the
|
||||
# Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = ARMARCH7
|
||||
TOOL = diab
|
||||
|
||||
# default before defs.arm
|
||||
_WRS_CONFIG_FP ?= vector
|
||||
ifeq ($(TC_INFO),TRUE)
|
||||
FP ?= vector
|
||||
endif
|
||||
|
||||
include $(TGT_DIR)/h/tool/diab/defs.arm
|
||||
|
||||
# override definitions from defs.arm
|
||||
BUILD_FP_PREFIX_soft = sf
|
||||
|
||||
# ARMARCH7 uses VFP instruction by default when compiling the
|
||||
# kernel. Enable the compiler to generate VFP instructions and set
|
||||
# the ARM_USE_VFP flag to select optimizations in code for vector
|
||||
# floating point.
|
||||
|
||||
ifeq ($(_WRS_CONFIG_FP),vector)
|
||||
#Enable VFP Code generation
|
||||
COMMON_COMPILER += -Xfp-fast
|
||||
EXTRA_DEFINE += -DARM_USE_VFP
|
||||
endif
|
||||
|
||||
TGT_FLAG = -tARMV7$(TGT_FLAG_ENDIAN)$(TGT_FLAG_FP):$(DIAB_T_ENVIRON)
|
||||
|
||||
# end of make.ARMARCH7diab
|
||||
@@ -0,0 +1,31 @@
|
||||
# make.ARMARCH7sfdiab - Diab compilation tools definitions for ARMARCH7
|
||||
#
|
||||
# Copyright (c) 2010-2011 Wind River Systems, Inc.
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01b,20dec11,jdw Fix COMMON_COMPILER to use defs.diab (WIND00238985)
|
||||
# 01a,12nov10,jdw File created from make.ARMARCH7diab
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains ARMARCH7 specific definitions and flags for the
|
||||
# Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = ARMARCH7
|
||||
TOOL = sfdiab
|
||||
|
||||
# default before defs.arm
|
||||
_WRS_CONFIG_FP ?= soft
|
||||
ifeq ($(TC_INFO),TRUE)
|
||||
FP ?= soft
|
||||
endif
|
||||
|
||||
include $(TGT_DIR)/h/tool/diab/defs.arm
|
||||
|
||||
# override definitions from defs.arm
|
||||
BUILD_FP_PREFIX_soft = sf
|
||||
|
||||
TGT_FLAG = -tARMV7$(TGT_FLAG_ENDIAN)$(TGT_FLAG_FP):$(DIAB_T_ENVIRON)
|
||||
|
||||
# end of make.ARMARCH7sfdiab
|
||||
@@ -0,0 +1,35 @@
|
||||
# make.ATOMdiab - Diab compilation tools definitions for Atom
|
||||
#
|
||||
# Copyright (c) 2010 Wind River Systems, Inc.
|
||||
#
|
||||
# The right to copy, distribute, modify or otherwise make use
|
||||
# of this software may be licensed only pursuant to the terms
|
||||
# of an applicable Wind River license agreement.
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01b,02nov10,sem Update target flag to use correct CPU tag
|
||||
# 01a,22sep10,sem created
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains Atom specific definitions and flags for the
|
||||
# diab tools (compiler, assembler, linker etc.)
|
||||
#*/
|
||||
|
||||
include $(TGT_DIR)/h/tool/diab/defs.diab
|
||||
CPU = ATOM
|
||||
TOOL = diab
|
||||
|
||||
TGT_FLAG = -tATOMLH:$(DIAB_T_ENVIRON)
|
||||
|
||||
TOOLENV = pentium
|
||||
VX_CPU_FAMILY = pentium
|
||||
ARCH_DIR = i86
|
||||
ABI_SPEC = x86
|
||||
|
||||
CFLAGS_AS += -Wa,-Xmnem-mit,-Xemul-gnu-bug
|
||||
CC_OPTIM_NORMAL += -Xalign-functions=4
|
||||
|
||||
HLL_PREFIX =
|
||||
|
||||
# end of make.ATOMdiab
|
||||
@@ -0,0 +1,35 @@
|
||||
# make.COREdiab - Diab compilation tools definitions for Core
|
||||
#
|
||||
# Copyright (c) 2010 Wind River Systems, Inc.
|
||||
#
|
||||
# The right to copy, distribute, modify or otherwise make use
|
||||
# of this software may be licensed only pursuant to the terms
|
||||
# of an applicable Wind River license agreement.
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01b,02nov10,sem Update target flag to use correct CPU tag
|
||||
# 01a,22sep10,sem created
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains Core specific definitions and flags for the
|
||||
# diab tools (compiler, assembler, linker etc.)
|
||||
#*/
|
||||
|
||||
include $(TGT_DIR)/h/tool/diab/defs.diab
|
||||
CPU = CORE
|
||||
TOOL = diab
|
||||
|
||||
TGT_FLAG = -tCORELH:$(DIAB_T_ENVIRON)
|
||||
|
||||
TOOLENV = pentium
|
||||
VX_CPU_FAMILY = pentium
|
||||
ARCH_DIR = i86
|
||||
ABI_SPEC = x86
|
||||
|
||||
CFLAGS_AS += -Wa,-Xmnem-mit,-Xemul-gnu-bug
|
||||
CC_OPTIM_NORMAL += -Xalign-functions=4
|
||||
|
||||
HLL_PREFIX =
|
||||
|
||||
# end of make.COREdiab
|
||||
@@ -0,0 +1,32 @@
|
||||
# make.MIPSI2diab - Diab compilation tools definitions for MIPSI2
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01a,26jun08,pee created for VSB
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains MIPSI2 (soft-float) specific definitions and flags
|
||||
# for the Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
# exclude this file from WB build spec generation.
|
||||
_BDGEN_EXCLUDE = TRUE
|
||||
|
||||
CPU = MIPSI2
|
||||
TOOL = diab
|
||||
include $(TGT_DIR)/h/tool/diab/defs.mips
|
||||
#add the next two line for MIPS specific devices
|
||||
LD_SCRIPT_RAM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSRAM
|
||||
LD_SCRIPT_ROM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSROM
|
||||
|
||||
# Select MIPS-II, soft-float (S). Endiannes selected from VSB configuration
|
||||
|
||||
TGT_FLAG_ENDIAN_big = F
|
||||
TGT_FLAG_ENDIAN_little = M
|
||||
|
||||
TGT_FLAG = -tMIPS2$(TGT_FLAG_ENDIAN)$(TGT_FLAG_FP):$(DIAB_T_ENVIRON)
|
||||
|
||||
ABI_SPEC = MIPS32
|
||||
|
||||
# end of make.MIPSI2diab
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
# make.MIPSI2sfdiab - Diab compilation tools definitions for MIPSI2sf
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01a,20feb07,pes created based on make.MIPS32sfdiab
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains MIPSI2 (soft-float) specific definitions and flags
|
||||
# for the Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = MIPSI2
|
||||
TOOL = sfdiab
|
||||
include $(TGT_DIR)/h/tool/diab/defs.mips
|
||||
#add the next two line for MIPS specific devices
|
||||
LD_SCRIPT_RAM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSRAM
|
||||
LD_SCRIPT_ROM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSROM
|
||||
|
||||
# Select MIPS-II, big-endian (F), soft-float (S)
|
||||
TGT_FLAG = -tMIPS2FS:$(DIAB_T_ENVIRON)
|
||||
|
||||
ABI_SPEC = MIPS32
|
||||
|
||||
# end of make.MIPSI2sfdiab
|
||||
@@ -0,0 +1,24 @@
|
||||
# make.MIPSI2sfdiable - Diab compilation tools definitions for MIPSI2sfle
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01a,20feb07,pes created based on make.MIPS32sfdiable
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains MIPSI2 (soft-float) specific definitions and flags
|
||||
# for the Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = MIPSI2
|
||||
TOOL = sfdiable
|
||||
include $(TGT_DIR)/h/tool/diab/defs.mips
|
||||
#add the next two line for MIPS specific devices
|
||||
LD_SCRIPT_RAM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSRAM
|
||||
LD_SCRIPT_ROM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSROM
|
||||
|
||||
# Select MIPS-II, little-endian (M), soft-float (S)
|
||||
TGT_FLAG = -tMIPS2MS:$(DIAB_T_ENVIRON)
|
||||
|
||||
ABI_SPEC = MIPS32
|
||||
|
||||
# end of make.MIPSI2sfdiable
|
||||
@@ -0,0 +1,31 @@
|
||||
# make.MIPSI32R2diab - Diab compilation tools definitions for MIPSI32R2
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01c,25jun08,pee VSB
|
||||
# 01b,20apr07,pes Remove -X32=0 flag.
|
||||
# 01a,20feb07,pes created based on make.MIPS32sfdiab
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains MIPSI32R2 (hard-float) specific definitions and flags
|
||||
# for the Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = MIPSI32R2
|
||||
TOOL = diab
|
||||
include $(TGT_DIR)/h/tool/diab/defs.mips
|
||||
#add the next two line for MIPS specific devices
|
||||
LD_SCRIPT_RAM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSRAM
|
||||
LD_SCRIPT_ROM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSROM
|
||||
|
||||
# Select MIPS32R2, big-endian (F), hard-float (H)
|
||||
# TGT_FLAG = -tMIPS32R2FH:$(DIAB_T_ENVIRON)
|
||||
|
||||
TGT_FLAG_ENDIAN_big = F
|
||||
TGT_FLAG_ENDIAN_little = M
|
||||
|
||||
TGT_FLAG = -tMIPS32R2$(TGT_FLAG_ENDIAN)$(TGT_FLAG_FP):$(DIAB_T_ENVIRON)
|
||||
|
||||
ABI_SPEC = MIPS32
|
||||
|
||||
# end of make.MIPSI32R2diab
|
||||
@@ -0,0 +1,25 @@
|
||||
# make.MIPSI32R2diable - Diab compilation tools definitions for MIPSI32R2le
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01b,20apr07,pes Remove -X32=0 flag.
|
||||
# 01a,20feb07,pes created based on make.MIPS32sfdiable
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains MIPSI32R2 (hard-float) specific definitions and flags
|
||||
# for the Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = MIPSI32R2
|
||||
TOOL = diable
|
||||
include $(TGT_DIR)/h/tool/diab/defs.mips
|
||||
#add the next two line for MIPS specific devices
|
||||
LD_SCRIPT_RAM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSRAM
|
||||
LD_SCRIPT_ROM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSROM
|
||||
|
||||
# Select MIPS32R2, little-endian (M), hard-float (H)
|
||||
TGT_FLAG = -tMIPS32R2MH:$(DIAB_T_ENVIRON)
|
||||
|
||||
ABI_SPEC = MIPS32
|
||||
|
||||
# end of make.MIPSI32R2diable
|
||||
@@ -0,0 +1,25 @@
|
||||
# make.MIPSI32R2sfdiab - Diab compilation tools definitions for MIPSI32R2 sf
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01b,20apr07,pes Remove -X32=0 flag.
|
||||
# 01a,20feb07,pes created based on make.MIPS32sfdiab
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains MIPSI32R2 (soft-float) specific definitions and flags
|
||||
# for the Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = MIPSI32R2
|
||||
TOOL = sfdiab
|
||||
include $(TGT_DIR)/h/tool/diab/defs.mips
|
||||
#add the next two line for MIPS specific devices
|
||||
LD_SCRIPT_RAM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSRAM
|
||||
LD_SCRIPT_ROM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSROM
|
||||
|
||||
# Select MIPS32R2, big-endian (F), soft-float (S)
|
||||
TGT_FLAG = -tMIPS32R2FS:$(DIAB_T_ENVIRON)
|
||||
|
||||
ABI_SPEC = MIPS32
|
||||
|
||||
# end of make.MIPSI32R2sfdiab
|
||||
@@ -0,0 +1,25 @@
|
||||
# make.MIPSI32R2sfdiable - Diab compilation tools definitions for MIPSI32R2sfle
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01b,20apr07,pes Remove -X32=0 flag.
|
||||
# 01a,20feb07,pes created based on make.MIPS32sfdiable
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains MIPSI32R2 (soft-float) specific definitions and flags
|
||||
# for the Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = MIPSI32R2
|
||||
TOOL = sfdiable
|
||||
include $(TGT_DIR)/h/tool/diab/defs.mips
|
||||
#add the next two line for MIPS specific devices
|
||||
LD_SCRIPT_RAM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSRAM
|
||||
LD_SCRIPT_ROM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSROM
|
||||
|
||||
# Select MIPS32R2, little-endian (M), soft-float (S)
|
||||
TGT_FLAG = -tMIPS32R2MS:$(DIAB_T_ENVIRON)
|
||||
|
||||
ABI_SPEC = MIPS32
|
||||
|
||||
# end of make.MIPSI32R2sfdiable
|
||||
@@ -0,0 +1,35 @@
|
||||
# make.MIPSI32diab - Diab compilation tools definitions for MIPSI32
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01c,21jul08,pee disabling bdgen.
|
||||
# 01b,25jun08,pee VSB
|
||||
# 01a,20feb07,pes created based on make.MIPS32sfdiab
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains MIPSI32 (hard-float) specific definitions and flags
|
||||
# for the Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
# exclude this file from WB build spec generation.
|
||||
_BDGEN_EXCLUDE = TRUE
|
||||
|
||||
|
||||
CPU = MIPSI32
|
||||
TOOL = diab
|
||||
include $(TGT_DIR)/h/tool/diab/defs.mips
|
||||
#add the next two line for MIPS specific devices
|
||||
LD_SCRIPT_RAM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSRAM
|
||||
LD_SCRIPT_ROM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSROM
|
||||
|
||||
# Select MIPS32, big-endian (F), hard-float (H)
|
||||
# TGT_FLAG = -tMIPS32FH:$(DIAB_T_ENVIRON)
|
||||
|
||||
TGT_FLAG_ENDIAN_big = F
|
||||
TGT_FLAG_ENDIAN_little = M
|
||||
|
||||
TGT_FLAG = -tMIPS32$(TGT_FLAG_ENDIAN)$(TGT_FLAG_FP):$(DIAB_T_ENVIRON)
|
||||
|
||||
ABI_SPEC = MIPS32
|
||||
|
||||
# end of make.MIPSI32diab
|
||||
@@ -0,0 +1,24 @@
|
||||
# make.MIPSI32sfdiab - Diab compilation tools definitions for MIPSI32sf
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01a,20feb07,pes created based on make.MIPS32sfdiab
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains MIPSI32 (soft-float) specific definitions and flags
|
||||
# for the Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = MIPSI32
|
||||
TOOL = sfdiab
|
||||
include $(TGT_DIR)/h/tool/diab/defs.mips
|
||||
#add the next two line for MIPS specific devices
|
||||
LD_SCRIPT_RAM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSRAM
|
||||
LD_SCRIPT_ROM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSROM
|
||||
|
||||
# Select MIPS32, big-endian (F), soft-float (S)
|
||||
TGT_FLAG = -tMIPS32FS:$(DIAB_T_ENVIRON)
|
||||
|
||||
ABI_SPEC = MIPS32
|
||||
|
||||
# end of make.MIPSI32sfdiab
|
||||
@@ -0,0 +1,24 @@
|
||||
# make.MIPSI32sfdiable - Diab compilation tools definitions for MIPSI32sfle
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01a,20feb07,pes created based on make.MIPS32sfdiable
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains MIPSI32 (soft-float) specific definitions and flags
|
||||
# for the Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = MIPSI32
|
||||
TOOL = sfdiable
|
||||
include $(TGT_DIR)/h/tool/diab/defs.mips
|
||||
#add the next two line for MIPS specific devices
|
||||
LD_SCRIPT_RAM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSRAM
|
||||
LD_SCRIPT_ROM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSROM
|
||||
|
||||
# Select MIPS32, little-endian (M), soft-float (S)
|
||||
TGT_FLAG = -tMIPS32MS:$(DIAB_T_ENVIRON)
|
||||
|
||||
ABI_SPEC = MIPS32
|
||||
|
||||
# end of make.MIPSI32sfdiable
|
||||
@@ -0,0 +1,32 @@
|
||||
# make.MIPSI3diab - Diab compilation tools definitions for MIPSI3
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01c,25jun08,pee VSB
|
||||
# 01b,22may07,pes switch to n32 builds.
|
||||
# 01a,20feb07,pes created from make.MIPS64diab.
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains MIPSI3 (hard-float) specific definitions and flags
|
||||
# for the Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = MIPSI3
|
||||
TOOL = diab
|
||||
include $(TGT_DIR)/h/tool/diab/defs.mips
|
||||
#add the next two line for MIPS specific devices
|
||||
LD_SCRIPT_RAM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSRAM
|
||||
LD_SCRIPT_ROM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSROM
|
||||
|
||||
# Select MIPS III, big-endian (X), hard-float (H)
|
||||
# Select MIPS III, n32, big-endian (T), hard-float (H)
|
||||
#TGT_FLAG = -tMIPS3TH:$(DIAB_T_ENVIRON)
|
||||
|
||||
TGT_FLAG_ENDIAN_big = T
|
||||
TGT_FLAG_ENDIAN_little = V
|
||||
|
||||
TGT_FLAG = -tMIPS3$(TGT_FLAG_ENDIAN)$(TGT_FLAG_FP):$(DIAB_T_ENVIRON)
|
||||
|
||||
ABI_SPEC = MIPS64$(ABI_ENDIAN_SUFFIX)
|
||||
|
||||
# end of make.MIPSI3diab
|
||||
@@ -0,0 +1,26 @@
|
||||
# make.MIPSI3diable - Diab compilation tools definitions for MIPSI3le
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01b,22may07,pes switch to n32 builds.
|
||||
# 01a,20feb07,pes created based on make.MIPS64diable
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains MIPSI3 (hard-float) specific definitions and flags
|
||||
# for the Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = MIPSI3
|
||||
TOOL = diable
|
||||
include $(TGT_DIR)/h/tool/diab/defs.mips
|
||||
#add the next two line for MIPS specific devices
|
||||
LD_SCRIPT_RAM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSRAM
|
||||
LD_SCRIPT_ROM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSROM
|
||||
|
||||
# Select MIPS III, little-endian (Z), hard-float (H)
|
||||
# Select MIPS III, n32, little-endian (V), hard-float (H)
|
||||
TGT_FLAG = -tMIPS3VH:$(DIAB_T_ENVIRON)
|
||||
|
||||
ABI_SPEC = MIPS64LE
|
||||
|
||||
# end of make.MIPSI3diable
|
||||
@@ -0,0 +1,36 @@
|
||||
# make.MIPSI64R2diab - Diab compilation tools definitions for MIPSI64R2
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01f,25aug11,mze fix WIND00295798
|
||||
# 01e,21jul08,pee disabling WB build spec generation for this file.
|
||||
# 01d,08jul08,pee fix endian flag options.
|
||||
# 01c,25jun08,pee VSB
|
||||
# 01b,22may07,pes switch to n32 builds.
|
||||
# 01a,20feb07,pes created from make.MIPS64diab.
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains MIPSI64R2 (hard-float) specific definitions and flags
|
||||
# for the Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
|
||||
CPU = MIPSI64R2
|
||||
TOOL = diab
|
||||
include $(TGT_DIR)/h/tool/diab/defs.mips
|
||||
#add the next two line for MIPS specific devices
|
||||
LD_SCRIPT_RAM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSRAM
|
||||
LD_SCRIPT_ROM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSROM
|
||||
|
||||
# Select MIPS64R2, big-endian (X), hard-float (H)
|
||||
# Select MIPS64R2, n32, big-endian (T), hard-float (H)
|
||||
# TGT_FLAG = -tMIPS64R2TH:$(DIAB_T_ENVIRON)
|
||||
|
||||
TGT_FLAG_ENDIAN_big = T
|
||||
TGT_FLAG_ENDIAN_little = V
|
||||
|
||||
TGT_FLAG = -tMIPS64R2$(TGT_FLAG_ENDIAN)$(TGT_FLAG_FP):$(DIAB_T_ENVIRON)
|
||||
|
||||
ABI_SPEC = MIPS64$(ABI_ENDIAN_SUFFIX)
|
||||
|
||||
# end of make.MIPSI64R2diab
|
||||
@@ -0,0 +1,26 @@
|
||||
# make.MIPSI64R2sfdiab - Diab compilation tools definitions for MIPSI64R2sf
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01b,11jun07,pes Switch to n32 builds.
|
||||
# 01a,20feb07,pes created from make.MIPS64diab.
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains MIPSI64R2 (soft-float) specific definitions and flags
|
||||
# for the Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = MIPSI64R2
|
||||
TOOL = sfdiab
|
||||
include $(TGT_DIR)/h/tool/diab/defs.mips
|
||||
#add the next two line for MIPS specific devices
|
||||
LD_SCRIPT_RAM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSRAM
|
||||
LD_SCRIPT_ROM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSROM
|
||||
|
||||
# Select MIPS64R2, big-endian (X), soft-float (S)
|
||||
# Select MIPS64R2, n32, big-endian (T), soft-float (S)
|
||||
TGT_FLAG = -tMIPS64R2TS:$(DIAB_T_ENVIRON)
|
||||
|
||||
ABI_SPEC = MIPS64BE
|
||||
|
||||
# end of make.MIPSI64R2sfdiab
|
||||
@@ -0,0 +1,27 @@
|
||||
# make.MIPSI64R2sfdiable - Diab compilation tools definitions for MIPSI64R2sfle
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01c,11jun07,pes Switch to n32 builds.
|
||||
# 01b,22may07,pes Correct ABI_SPEC.
|
||||
# 01a,20feb07,pes created from make.MIPS64diab.
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains MIPSI64R2 (soft-float) specific definitions and flags
|
||||
# for the Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = MIPSI64R2
|
||||
TOOL = sfdiable
|
||||
include $(TGT_DIR)/h/tool/diab/defs.mips
|
||||
#add the next two line for MIPS specific devices
|
||||
LD_SCRIPT_RAM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSRAM
|
||||
LD_SCRIPT_ROM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSROM
|
||||
|
||||
# Select MIPS64R2, little-endian (Z), soft-float (S)
|
||||
# Select MIPS64R2, n32, little-endian (V), soft-float (S)
|
||||
TGT_FLAG = -tMIPS64R2VS:$(DIAB_T_ENVIRON)
|
||||
|
||||
ABI_SPEC = MIPS64LE
|
||||
|
||||
# end of make.MIPSI64R2sfdiable
|
||||
@@ -0,0 +1,32 @@
|
||||
# make.MIPSI64diab - Diab compilation tools definitions for MIPSI64
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01c,25jun08,pee VSB
|
||||
# 01b,22may07,pes switch to n32 builds.
|
||||
# 01a,20feb07,pes created from make.MIPS64diab.
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains MIPSI3 (hard-float) specific definitions and flags
|
||||
# for the Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = MIPSI64
|
||||
TOOL = diab
|
||||
include $(TGT_DIR)/h/tool/diab/defs.mips
|
||||
#add the next two line for MIPS specific devices
|
||||
LD_SCRIPT_RAM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSRAM
|
||||
LD_SCRIPT_ROM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSROM
|
||||
|
||||
# Select MIPS64, big-endian (X), hard-float (H)
|
||||
# Select MIPS64, n32, big-endian (T), hard-float (H)
|
||||
#TGT_FLAG = -tMIPS64TH:$(DIAB_T_ENVIRON)
|
||||
|
||||
TGT_FLAG_ENDIAN_big = T
|
||||
TGT_FLAG_ENDIAN_little = V
|
||||
|
||||
TGT_FLAG = -tMIPS64$(TGT_FLAG_ENDIAN)$(TGT_FLAG_FP):$(DIAB_T_ENVIRON)
|
||||
|
||||
ABI_SPEC = MIPS64$(ABI_ENDIAN_SUFFIX)
|
||||
|
||||
# end of make.MIPSI64diab
|
||||
@@ -0,0 +1,26 @@
|
||||
# make.MIPSI64diable - Diab compilation tools definitions for MIPSI64le
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01b,22may07,pes switch to n32 builds.
|
||||
# 01a,20feb07,pes created from make.MIPS64diab.
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains MIPSI3 (hard-float) specific definitions and flags
|
||||
# for the Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = MIPSI64
|
||||
TOOL = diable
|
||||
include $(TGT_DIR)/h/tool/diab/defs.mips
|
||||
#add the next two line for MIPS specific devices
|
||||
LD_SCRIPT_RAM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSRAM
|
||||
LD_SCRIPT_ROM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSROM
|
||||
|
||||
# Select MIPS64, little-endian (Z), hard-float (H)
|
||||
# Select MIPS64, n32, little-endian (V), hard-float (H)
|
||||
TGT_FLAG = -tMIPS64VH:$(DIAB_T_ENVIRON)
|
||||
|
||||
ABI_SPEC = MIPS64LE
|
||||
|
||||
# end of make.MIPSI64diable
|
||||
@@ -0,0 +1,26 @@
|
||||
# make.MIPSI64sfdiab - Diab compilation tools definitions for MIPSI64sf
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01b,22may07,pes switch to n32 builds.
|
||||
# 01a,20feb07,pes created from make.MIPS64diab.
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains MIPSI64 (soft-float) specific definitions and flags
|
||||
# for the Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = MIPSI64
|
||||
TOOL = sfdiab
|
||||
include $(TGT_DIR)/h/tool/diab/defs.mips
|
||||
#add the next two line for MIPS specific devices
|
||||
LD_SCRIPT_RAM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSRAM
|
||||
LD_SCRIPT_ROM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSROM
|
||||
|
||||
# Select MIPS64, big-endian (X), soft-float (S)
|
||||
# Select MIPS64, n32, big-endian (T), soft-float (S)
|
||||
TGT_FLAG = -tMIPS64TS:$(DIAB_T_ENVIRON)
|
||||
|
||||
ABI_SPEC = MIPS64BE
|
||||
|
||||
# end of make.MIPSI64sfdiab
|
||||
@@ -0,0 +1,26 @@
|
||||
# make.MIPSI64sfdiable - Diab compilation tools definitions for MIPSI64sfle
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01b,22may07,pes switch to n32 builds.
|
||||
# 01a,20feb07,pes created from make.MIPS64diab.
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains MIPSI64 (soft-float) specific definitions and flags
|
||||
# for the Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = MIPSI64
|
||||
TOOL = sfdiable
|
||||
include $(TGT_DIR)/h/tool/diab/defs.mips
|
||||
#add the next two line for MIPS specific devices
|
||||
LD_SCRIPT_RAM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSRAM
|
||||
LD_SCRIPT_ROM = $(TGT_DIR)/h/tool/diab/ldscripts/link.MIPSROM
|
||||
|
||||
# Select MIPS64, little-endian (Z), soft-float (S)
|
||||
# Select MIPS64, n32, little-endian (V), soft-float (S)
|
||||
TGT_FLAG = -tMIPS64VS:$(DIAB_T_ENVIRON)
|
||||
|
||||
ABI_SPEC = MIPS64LE
|
||||
|
||||
# end of make.MIPSI64sfdiable
|
||||
@@ -0,0 +1,35 @@
|
||||
# make.NEHALEMdiab - Diab compilation tools definitions for Nehalem
|
||||
#
|
||||
# Copyright (c) 2010 Wind River Systems, Inc.
|
||||
#
|
||||
# The right to copy, distribute, modify or otherwise make use
|
||||
# of this software may be licensed only pursuant to the terms
|
||||
# of an applicable Wind River license agreement.
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01b,02nov10,sem Update target flag to use correct CPU tag
|
||||
# 01a,22sep10,sem created
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains Nehalem specific definitions and flags for the
|
||||
# diab tools (compiler, assembler, linker etc.)
|
||||
#*/
|
||||
|
||||
include $(TGT_DIR)/h/tool/diab/defs.diab
|
||||
CPU = NEHALEM
|
||||
TOOL = diab
|
||||
|
||||
TGT_FLAG = -tNEHALEMLH:$(DIAB_T_ENVIRON)
|
||||
|
||||
TOOLENV = pentium
|
||||
VX_CPU_FAMILY = pentium
|
||||
ARCH_DIR = i86
|
||||
ABI_SPEC = x86
|
||||
|
||||
CFLAGS_AS += -Wa,-Xmnem-mit,-Xemul-gnu-bug
|
||||
CC_OPTIM_NORMAL += -Xalign-functions=4
|
||||
|
||||
HLL_PREFIX =
|
||||
|
||||
# end of make.NEHALEMdiab
|
||||
@@ -0,0 +1,36 @@
|
||||
# make.PENTIUM4diab - Diab compilation tools definitions for Pentium-4
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01f,03mar07,kkz Changing alignment to 4, form default 16
|
||||
# 01e,17may05,zmm Emulate GNU assembler's encoding of
|
||||
# fdivp/fdivrp/fsubp/fsubrp instructions. SPR 108421.
|
||||
# 01d,10oct04,mcm Using the CPU name for the target switch. It is mapped to
|
||||
# X86 by the compiler.
|
||||
# 01c,20jan04,zmm Redefined prepended underscore HLL_PREFIX for diab/pentium
|
||||
# 01b,10dec03,yvp Added ABI_SPEC.
|
||||
# 01a,30sep03,sn changed :vxworks55 to :$(DIAB_T_ENVIRON)
|
||||
# maxim Initial
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains Pentium-4 specific definitions and flags for the
|
||||
# diab tools (compiler, assembler, linker etc.)
|
||||
#*/
|
||||
|
||||
include $(TGT_DIR)/h/tool/diab/defs.diab
|
||||
CPU = PENTIUM4
|
||||
TOOL = diab
|
||||
|
||||
TGT_FLAG = -tPENTIUM4LH:$(DIAB_T_ENVIRON)
|
||||
|
||||
TOOLENV = pentium
|
||||
VX_CPU_FAMILY = pentium
|
||||
ARCH_DIR = i86
|
||||
ABI_SPEC = x86
|
||||
|
||||
CFLAGS_AS += -Wa,-Xmnem-mit,-Xemul-gnu-bug
|
||||
CC_OPTIM_NORMAL += -Xalign-functions=4
|
||||
|
||||
HLL_PREFIX =
|
||||
|
||||
# end of make.PENTIUM4diab
|
||||
@@ -0,0 +1,31 @@
|
||||
# make.PENTIUMdiab - Diab compilation tools definitions for Pentium
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01b,17may05,zmm Emulate GNU assembler's encoding of
|
||||
# fdivp/fdivrp/fsubp/fsubrp instructions. SPR 108421.
|
||||
# 01a,18nov03,zmm Written based on make.PENTIUM3diab
|
||||
# maxim Initial
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains Pentium specific definitions and flags for the
|
||||
# diab tools (compiler, assembler, linker etc.)
|
||||
#*/
|
||||
|
||||
include $(TGT_DIR)/h/tool/diab/defs.diab
|
||||
CPU = PENTIUM
|
||||
TOOL = diab
|
||||
|
||||
TGT_FLAG = -tPENTIUMLH:$(DIAB_T_ENVIRON)
|
||||
|
||||
TOOLENV = pentium
|
||||
VX_CPU_FAMILY = pentium
|
||||
ARCH_DIR = i86
|
||||
ABI_SPEC = x86
|
||||
|
||||
CFLAGS_AS += -Wa,-Xmnem-mit,-Xemul-gnu-bug
|
||||
CC_OPTIM_NORMAL += -Xalign-functions=4
|
||||
|
||||
HLL_PREFIX =
|
||||
|
||||
# end of make.PENTIUMdiab
|
||||
@@ -0,0 +1,197 @@
|
||||
# make.PPC32diab - diab compilation tools definitions for generic PowerPC
|
||||
#
|
||||
# Copyright 2003-2006, 2008-2013 Wind River Systems, Inc.
|
||||
#
|
||||
# The right to copy, distribute or otherwise make use of this software
|
||||
# may be licensed only pursuant to the terms of an applicable Wind River
|
||||
# license agreement.
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 02b,05feb13,h_k replaced FH with FV option for e6500. (WIND00402696)
|
||||
# 02a,19sep12,h_k added Altivec support to e6500.
|
||||
# 01z,30aug12,kk updated to enable E6500 support
|
||||
# 01y,24jul12,h_k added e6500 CPU variant support. (WIND00333229)
|
||||
# 01x,20dec12,wyt added case for e500v2. (WIND00394937)
|
||||
# 01w,14feb12,h_k added missing _WRS_HARDWARE_FP definition for e500mc
|
||||
# project builds. (WIND00333933)
|
||||
# 01v,04may11,syt added support for PPC465
|
||||
# 01u,16dec10,x_z set _WRS_HARDWARE_FP for hard-float 476
|
||||
# 01t,22oct09,pmr move e500mc INCLUDE_HW_FP to appropriate section
|
||||
# 01s,09sep08,pee fix e500v2 support.
|
||||
# 01r,03sep08,pmr e500mc hard float
|
||||
# 01q,02sep08,pee adding case for PPC32 e500v2
|
||||
# 01p,29aug08,mze fix for 603
|
||||
# 01o,19aug08,mze TOOL changes
|
||||
# 01n,22jul08,pee adding VSB support for e500v2 FP
|
||||
# 01m,17jun08,pee VSB adaptation
|
||||
# 01l,17oct06,pch add -Xstmw-slow for 745x
|
||||
# 01k,10oct06,pch WIND00068356: add -Xstsw-slow for 745x/970
|
||||
# 01j,06jun06,dtr Add 603 soft/hard float support.
|
||||
# 01i,28mar05,dr Adding definitions for LD_SCRIPT_RAM and LD_SCRIPT_ROM
|
||||
# 01h,28oct04,to remove TOOLENV, etc. which are now defined in defs.ppc.
|
||||
# 01g,27may04,to added -Xstmw-slow to avoid stmw/lmw alignment exception.
|
||||
# 01f,21may04,to PPC970 support
|
||||
# 01e,10aug04,pch SPR 99846: Add support for _745x variant
|
||||
# 01d,08jun04,pch set _WRS_HARDWARE_FP for hard-float 440
|
||||
# 01c,04feb04,pch PPC32 floating-point adjustments
|
||||
# 01b,05sep03,pch parameterize Diab "environment" setting
|
||||
# 01a,06feb03,pch Written from make.PPC603diab vn 01f & make.PPC32gnu vn 01b
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains definitions and flags for the diab tools
|
||||
# (compiler, assembler, linker etc.) to build for a generic
|
||||
# PowerPC with PPC60x hardware floating point.
|
||||
# If building for a specific processor (as a variant),
|
||||
# defs.ppc will set its type number into PPC32VARIANT.
|
||||
#*/
|
||||
|
||||
CPU = PPC32
|
||||
TOOL = diab
|
||||
include $(TGT_DIR)/h/tool/common/defs.ppc
|
||||
|
||||
TGT_FLAG_FP_e500v2 = H
|
||||
|
||||
_WRS_CONFIG_FP ?= hard
|
||||
|
||||
LD_SCRIPT_RAM = -Dwrs_kernel_rom_size=0x0$(ROM_SIZE) \
|
||||
$(TGT_DIR)/h/tool/diab/ldscripts/link.DOTBOOTRAM
|
||||
LD_SCRIPT_ROM = -Dwrs_kernel_rom_size=0x0$(ROM_SIZE) \
|
||||
$(TGT_DIR)/h/tool/diab/ldscripts/link.DOTBOOTROM
|
||||
|
||||
#settings apply to both soft and e500v2 FP values
|
||||
ifneq ($(_WRS_CONFIG_FP),hard)
|
||||
CC_COMPILER += -Xstsw-slow
|
||||
C++_COMPILER += -Xstsw-slow
|
||||
endif
|
||||
|
||||
|
||||
ifeq ($(LIB_DIR_TAG),_ppc604_745x)
|
||||
# Library build for 745x variant
|
||||
# Enable AltiVec opcodes e.g. dssall, but not "vector" keyword. Strictly
|
||||
# speaking, -Xkeywords=0x0 is only for C (not asm), but das does not object.
|
||||
TGT_FLAG= -tPPC7400FV:$(DIAB_T_ENVIRON) -Xkeywords=0x0 -Xstsw-slow -Xstmw-slow
|
||||
else
|
||||
ifeq ($(CPU_VARIANT),_ppc604_745x)
|
||||
# BSP build with CPU=PPC32 CPU_VARIANT=_ppc604_745x also needs AV opcodes.
|
||||
# Use CC_ARCH_SPEC since dld *does* object to -Xkeywords.
|
||||
TGT_FLAG = -tPPC7400FV:$(DIAB_T_ENVIRON)
|
||||
CC_ARCH_SPEC += -Xkeywords=0x0 -Xstsw-slow -Xstmw-slow
|
||||
else
|
||||
ifeq ($(PPC32VARIANT),465)
|
||||
TGT_FLAG = -tPPC464F$(TGT_FLAG_FP):$(DIAB_T_ENVIRON)
|
||||
else
|
||||
ifeq ($(PPC32VARIANT),85XX)
|
||||
ifeq ($(_WRS_CONFIG_FP),e500v2)
|
||||
TGT_FLAG = -tPPCE500V2F$(TGT_FLAG_FP):$(DIAB_T_ENVIRON)
|
||||
else
|
||||
ifeq ($(LIB_DIR_TAG),_ppc85XX_e500v2)
|
||||
TGT_FLAG = -tPPCE500V2F$(TGT_FLAG_FP):$(DIAB_T_ENVIRON)
|
||||
else
|
||||
ifeq ($(LIB_DIR_TAG),_ppc85XX_e500mc)
|
||||
TGT_FLAG = -tPPCE500MCF$(TGT_FLAG_FP):$(DIAB_T_ENVIRON)
|
||||
else
|
||||
ifeq ($(LIB_DIR_TAG),_ppc85XX_e6500)
|
||||
# Library build for e6500 variant
|
||||
# Enable AltiVec opcodes e.g. dssall, but not "vector" keyword.
|
||||
# Strictly speaking, -Xkeywords=0x0 is only for C (not asm),
|
||||
# but das does not object.
|
||||
TGT_FLAG = -tPPCE6500FV:$(DIAB_T_ENVIRON) -Xkeywords=0x0
|
||||
else
|
||||
ifeq ($(CPU_VARIANT),_ppc85XX_e500mc)
|
||||
TGT_FLAG = -tPPCE500MCF$(TGT_FLAG_FP):$(DIAB_T_ENVIRON)
|
||||
else
|
||||
ifeq ($(CPU_VARIANT),_ppc85XX_e6500)
|
||||
# BSP build with CPU=PPC32 CPU_VARIANT=_ppc85XX_e6500 also
|
||||
# needs AV opcodes.
|
||||
# Use CC_ARCH_SPEC since dld *does* object to -Xkeywords.
|
||||
TGT_FLAG = -tPPCE6500FV:$(DIAB_T_ENVIRON)
|
||||
CC_ARCH_SPEC += -Xkeywords=0x0
|
||||
else
|
||||
TGT_FLAG = -tPPCE500F$(TGT_FLAG_FP):$(DIAB_T_ENVIRON)
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
else
|
||||
ifeq ($(_WRS_CONFIG_FP),e500v2)
|
||||
TGT_FLAG = -tPPCE500V2F$(TGT_FLAG_FP):$(DIAB_T_ENVIRON)
|
||||
else
|
||||
TGT_FLAG = -tPPC$(PPC32VARIANT)F$(TGT_FLAG_FP):$(DIAB_T_ENVIRON)
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
ifeq ($(_WRS_CONFIG_FP),hard)
|
||||
ifeq ($(PPC32VARIANT),)
|
||||
CC_ARCH_SPEC += -Xstmw-slow -DPPC32_fp60x -Xstsw-slow
|
||||
# *** TEMP HACK: enable AltiVec support for math/fioLib.c
|
||||
# *** Remove this when the coprocessor abstraction
|
||||
# *** supports printf/scanf format extensions.
|
||||
OPTION_ALTIVEC_C = -tPPCFV:$(DIAB_T_ENVIRON) -Xkeywords=0x0 -D_WRS_ALTIVEC_SUPPORT
|
||||
endif
|
||||
|
||||
ifeq ($(PPC32VARIANT),604)
|
||||
OPTION_ALTIVEC_AS = -tPPC7400FV:$(DIAB_T_ENVIRON)
|
||||
OPTION_ALTIVEC_C = -tPPC7400FV:$(DIAB_T_ENVIRON) -Xkeywords=0x0
|
||||
endif
|
||||
|
||||
ifeq ($(PPC32VARIANT),440)
|
||||
# inform ppc440.h that we are building for hardware FP
|
||||
CC_ARCH_SPEC += -D_WRS_HARDWARE_FP
|
||||
endif
|
||||
|
||||
ifeq ($(PPC32VARIANT),465)
|
||||
# inform ppc440.h that we are building for hardware FP
|
||||
CC_ARCH_SPEC += -D_WRS_HARDWARE_FP
|
||||
endif
|
||||
|
||||
ifeq ($(PPC32VARIANT),476)
|
||||
# inform ppc476.h that we are building for hardware FP
|
||||
CC_ARCH_SPEC += -D_WRS_HARDWARE_FP
|
||||
endif
|
||||
|
||||
ifeq ($(PPC32VARIANT),603)
|
||||
# inform ppc603.h that we are building for hardware FP
|
||||
CC_ARCH_SPEC += -D_WRS_HARDWARE_FP
|
||||
endif
|
||||
|
||||
ifeq ($(PPC32VARIANT),970)
|
||||
CC_ARCH_SPEC += -Xstmw-slow -Xstsw-slow
|
||||
OPTION_ALTIVEC_AS = -tPPC970FV:$(DIAB_T_ENVIRON)
|
||||
OPTION_ALTIVEC_C = -tPPC970FV:$(DIAB_T_ENVIRON) -Xkeywords=0x0
|
||||
endif
|
||||
|
||||
ifeq ($(LIB_DIR_TAG),_ppc85XX_e500mc)
|
||||
# inform ppc85xx.h that we are building for hardware FP
|
||||
CC_ARCH_SPEC += -D_WRS_HARDWARE_FP
|
||||
endif
|
||||
|
||||
ifeq ($(CPU_VARIANT),_ppc85XX_e500mc)
|
||||
# inform ppc85xx.h that we are building for hardware FP
|
||||
CC_ARCH_SPEC += -D_WRS_HARDWARE_FP
|
||||
endif
|
||||
|
||||
ifeq ($(LIB_DIR_TAG),_ppc85XX_e6500)
|
||||
# inform ppc85xx.h that we are building for hardware FP
|
||||
CC_ARCH_SPEC += -D_WRS_HARDWARE_FP
|
||||
|
||||
OPTION_ALTIVEC_AS = -tPPCE6500FV:$(DIAB_T_ENVIRON)
|
||||
OPTION_ALTIVEC_C = -tPPCE6500FV:$(DIAB_T_ENVIRON) -Xkeywords=0x0
|
||||
endif
|
||||
|
||||
ifeq ($(CPU_VARIANT),_ppc85XX_e6500)
|
||||
# inform ppc85xx.h that we are building for hardware FP
|
||||
CC_ARCH_SPEC += -D_WRS_HARDWARE_FP
|
||||
|
||||
OPTION_ALTIVEC_AS = -tPPCE6500FV:$(DIAB_T_ENVIRON)
|
||||
OPTION_ALTIVEC_C = -tPPCE6500FV:$(DIAB_T_ENVIRON) -Xkeywords=0x0
|
||||
endif
|
||||
|
||||
endif
|
||||
|
||||
# end of make.PPC32diab
|
||||
@@ -0,0 +1,40 @@
|
||||
# make.PPC32e500v2diab - diab compilation tools definitions for e500v2 hard float PowerPC
|
||||
#
|
||||
# Copyright (c) 2007 Wind River Systems, Inc.
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01c,29aug08,pee defining _WRS_CONFIG_FP.
|
||||
# 01b,19nov07,dtr Change TOOL name.
|
||||
# 01a,04nov07,dtr Written from make.PPC32sfdiab vn 01c
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains definitions and flags for the diab tools
|
||||
# (compiler, assembler, linker etc.) to build for a generic
|
||||
# PowerPC without e500v2 hardware floating point.
|
||||
# If building for a specific processor (as a variant),
|
||||
# defs.ppc will set its type number into PPC32VARIANT.
|
||||
#*/
|
||||
|
||||
CPU = PPC32
|
||||
TOOL = e500v2diab
|
||||
|
||||
_WRS_CONFIG_FP ?= e500v2
|
||||
|
||||
include $(TGT_DIR)/h/tool/common/defs.ppc
|
||||
|
||||
LD_SCRIPT_RAM = -Dwrs_kernel_rom_size=0x0$(ROM_SIZE) \
|
||||
$(TGT_DIR)/h/tool/diab/ldscripts/link.DOTBOOTRAM
|
||||
LD_SCRIPT_ROM = -Dwrs_kernel_rom_size=0x0$(ROM_SIZE) \
|
||||
$(TGT_DIR)/h/tool/diab/ldscripts/link.DOTBOOTROM
|
||||
|
||||
TGT_FLAG = -tPPCE500V2FH:$(DIAB_T_ENVIRON)
|
||||
|
||||
CC_COMPILER += -Xstsw-slow
|
||||
C++_COMPILER += -Xstsw-slow
|
||||
|
||||
TOOLENV = ppc
|
||||
VX_CPU_FAMILY = ppc
|
||||
ARCH_DIR = ppc
|
||||
|
||||
# end of make.PPC32e500v2diab
|
||||
@@ -0,0 +1,77 @@
|
||||
# make.PPC32sfdiab - diab compilation tools definitions for generic PowerPC
|
||||
#
|
||||
# Copyright 1995-2004, 2011, 2012 Wind River Systems, Inc.
|
||||
#
|
||||
# The right to copy, distribute, modify or otherwise make use
|
||||
# of this software may be licensed only pursuant to the terms
|
||||
# of an applicable Wind River license agreement.
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01g,30aug12,kk updated E6500 support
|
||||
# 01f,25jul12,h_k added e6500 CPU variant support. (WIND00333229)
|
||||
# 01e,17apr12,h_k corrected target type for e500mc. (WIND00345701)
|
||||
# 01d,23may11,syt Added support for PPC465.
|
||||
# 01c,16dec04,dr Adding definitions for LD_SCRIPT_RAM and LD_SCRIPT_ROM
|
||||
# 01b,03mar04,mil Added support for PPC85XX.
|
||||
# 01a,04feb04,pch Written from make.PPC32diab vn 01b
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains definitions and flags for the diab tools
|
||||
# (compiler, assembler, linker etc.) to build for a generic
|
||||
# PowerPC without PPC60x hardware floating point.
|
||||
# If building for a specific processor (as a variant),
|
||||
# defs.ppc will set its type number into PPC32VARIANT.
|
||||
#*/
|
||||
|
||||
CPU = PPC32
|
||||
TOOL = sfdiab
|
||||
|
||||
_WRS_CONFIG_FP ?= soft
|
||||
|
||||
include $(TGT_DIR)/h/tool/common/defs.ppc
|
||||
|
||||
LD_SCRIPT_RAM = -Dwrs_kernel_rom_size=0x0$(ROM_SIZE) \
|
||||
$(TGT_DIR)/h/tool/diab/ldscripts/link.DOTBOOTRAM
|
||||
LD_SCRIPT_ROM = -Dwrs_kernel_rom_size=0x0$(ROM_SIZE) \
|
||||
$(TGT_DIR)/h/tool/diab/ldscripts/link.DOTBOOTROM
|
||||
|
||||
|
||||
ifeq ($(PPC32VARIANT),85XX)
|
||||
ifeq ($(_WRS_CONFIG_FP),e500v2)
|
||||
TGT_FLAG = -tPPCE500V2F$(TGT_FLAG_FP):$(DIAB_T_ENVIRON)
|
||||
else
|
||||
ifeq ($(LIB_DIR_TAG),_ppc85XX_e500mc)
|
||||
TGT_FLAG = -tPPCE500MCF$(TGT_FLAG_FP):$(DIAB_T_ENVIRON)
|
||||
else
|
||||
ifeq ($(LIB_DIR_TAG),_ppc85XX_e6500)
|
||||
TGT_FLAG = -tPPCE6500F$(TGT_FLAG_FP):$(DIAB_T_ENVIRON)
|
||||
else
|
||||
ifeq ($(CPU_VARIANT),_ppc85XX_e500mc)
|
||||
TGT_FLAG = -tPPCE500MCF$(TGT_FLAG_FP):$(DIAB_T_ENVIRON)
|
||||
else
|
||||
ifeq ($(CPU_VARIANT),_ppc85XX_e6500)
|
||||
TGT_FLAG = -tPPCE6500F$(TGT_FLAG_FP):$(DIAB_T_ENVIRON)
|
||||
else
|
||||
TGT_FLAG = -tPPCE500F$(TGT_FLAG_FP):$(DIAB_T_ENVIRON)
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
else
|
||||
ifeq ($(PPC32VARIANT), 465)
|
||||
TGT_FLAG = -tPPC464FS:$(DIAB_T_ENVIRON)
|
||||
else
|
||||
TGT_FLAG = -tPPC$(PPC32VARIANT)FS:$(DIAB_T_ENVIRON)
|
||||
endif
|
||||
endif
|
||||
|
||||
CC_COMPILER += -Xstsw-slow
|
||||
C++_COMPILER += -Xstsw-slow
|
||||
|
||||
TOOLENV = ppc
|
||||
VX_CPU_FAMILY = ppc
|
||||
ARCH_DIR = ppc
|
||||
|
||||
# end of make.PPC32diab
|
||||
@@ -0,0 +1,40 @@
|
||||
# make.PPC403diab - Diab compilation tools definitions for PowerPC 403
|
||||
#
|
||||
# Copyright 1995-2003 Wind River Systems, Inc.
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01j,08sep08,pee defining WRS_CONFIG_FP
|
||||
# 01i,05sep03,pch parameterize Diab "environment" setting
|
||||
# 01h,31jan03,pch Add PPC32 support
|
||||
# 01g,10dec01,tpw Ensure ROM_SIZE defaults to 0x0 if the macro is not set.
|
||||
# 01f,05dec01,tpw Utilize DOTBOOT{RAM,ROM} linker scripts on all PPC4xx BSPs.
|
||||
# 01e,05dec01,jab change :tornado, :simple ,etc. to :vxworks55
|
||||
# 01d,16nov01,mil Changed VX_CPU_FAMILY from PPC to ppc.
|
||||
# 01c,30oct01,tpw Standardize kernel links and bootrom conversions.
|
||||
# 01b,23oct01,jab added PPC specific definitions
|
||||
# 01a,16oct01,jab Written from make.PPC403gnu 01n version.
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains PowerPC 403 specific definitions and flags for the
|
||||
# diab tools (compiler, assembler, linker etc.)
|
||||
#*/
|
||||
|
||||
CPU = PPC403
|
||||
TOOL = diab
|
||||
|
||||
_WRS_CONFIG_FP = soft
|
||||
include $(TGT_DIR)/h/tool/common/defs.ppc
|
||||
|
||||
TGT_FLAG = -tPPC403FS:$(DIAB_T_ENVIRON)
|
||||
|
||||
LD_SCRIPT_RAM = -Dwrs_kernel_rom_size=0x0$(ROM_SIZE) \
|
||||
$(TGT_DIR)/h/tool/diab/ldscripts/link.DOTBOOTRAM
|
||||
LD_SCRIPT_ROM = -Dwrs_kernel_rom_size=0x0$(ROM_SIZE) \
|
||||
$(TGT_DIR)/h/tool/diab/ldscripts/link.DOTBOOTROM
|
||||
|
||||
TOOLENV = ppc
|
||||
VX_CPU_FAMILY = ppc
|
||||
ARCH_DIR = ppc
|
||||
|
||||
# end of make.PPC403diab
|
||||
@@ -0,0 +1,42 @@
|
||||
# make.PPC405diab - Diab compilation tools definitions for PowerPC 405
|
||||
#
|
||||
# Copyright 1995-2003 Wind River Systems, Inc.
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01k,08sep08,pee defining WRS_CONFIG_FP
|
||||
# 01j,10aug04,kab SPR#100219: support for TOOL=sfdiab, sfgnu.
|
||||
# 01i,05sep03,pch parameterize Diab "environment" setting
|
||||
# 01h,31jan03,pch Add PPC32 support
|
||||
# 01g,10dec01,tpw Ensure ROM_SIZE defaults to 0x0 if the macro is not set.
|
||||
# 01f,05dec01,tpw Utilize DOTBOOT{RAM,ROM} linker scripts on all PPC4xx BSPs.
|
||||
# 01e,05dec01,jab change :tornado, :simple ,etc. to :vxworks55
|
||||
# 01d,16nov01,mil Changed VX_CPU_FAMILY from PPC to ppc.
|
||||
# 01c,30oct01,tpw Standardize kernel links and bootrom conversions.
|
||||
# 01b,23oct01,jab added PPC specific definitions
|
||||
# 01a,16oct01,jab Written from make.PPC405gnu 01e version.
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains PowerPC 405 specific definitions and flags for the
|
||||
# diab tools (compiler, assembler, linker etc.)
|
||||
#*/
|
||||
|
||||
CPU = PPC405
|
||||
TOOL = diab
|
||||
|
||||
_WRS_CONFIG_FP = soft
|
||||
|
||||
include $(TGT_DIR)/h/tool/common/defs.ppc
|
||||
|
||||
TGT_FLAG = -tPPC405FS:$(DIAB_T_ENVIRON)
|
||||
|
||||
LD_SCRIPT_RAM = -Dwrs_kernel_rom_size=0x0$(ROM_SIZE) \
|
||||
$(TGT_DIR)/h/tool/diab/ldscripts/link.DOTBOOTRAM
|
||||
LD_SCRIPT_ROM = -Dwrs_kernel_rom_size=0x0$(ROM_SIZE) \
|
||||
$(TGT_DIR)/h/tool/diab/ldscripts/link.DOTBOOTROM
|
||||
|
||||
TOOLENV = ppc
|
||||
VX_CPU_FAMILY = ppc
|
||||
ARCH_DIR = ppc
|
||||
|
||||
# end of make.PPC405diab
|
||||
@@ -0,0 +1,38 @@
|
||||
# make.PPC405sfdiab - Diab compilation tools definitions for PowerPC 405
|
||||
#
|
||||
# Copyright 1995-2003 Wind River Systems, Inc.
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01j,10aug04,kab SPR#100219: support for TOOL=sfdiab, sfgnu.
|
||||
# 01i,05sep03,pch parameterize Diab "environment" setting
|
||||
# 01h,31jan03,pch Add PPC32 support
|
||||
# 01g,10dec01,tpw Ensure ROM_SIZE defaults to 0x0 if the macro is not set.
|
||||
# 01f,05dec01,tpw Utilize DOTBOOT{RAM,ROM} linker scripts on all PPC4xx BSPs.
|
||||
# 01e,05dec01,jab change :tornado, :simple ,etc. to :vxworks55
|
||||
# 01d,16nov01,mil Changed VX_CPU_FAMILY from PPC to ppc.
|
||||
# 01c,30oct01,tpw Standardize kernel links and bootrom conversions.
|
||||
# 01b,23oct01,jab added PPC specific definitions
|
||||
# 01a,16oct01,jab Written from make.PPC405gnu 01e version.
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains PowerPC 405 specific definitions and flags for the
|
||||
# diab tools (compiler, assembler, linker etc.)
|
||||
#*/
|
||||
|
||||
CPU = PPC405
|
||||
TOOL = sfdiab
|
||||
include $(TGT_DIR)/h/tool/common/defs.ppc
|
||||
|
||||
TGT_FLAG = -tPPC405FS:$(DIAB_T_ENVIRON)
|
||||
|
||||
LD_SCRIPT_RAM = -Dwrs_kernel_rom_size=0x0$(ROM_SIZE) \
|
||||
$(TGT_DIR)/h/tool/diab/ldscripts/link.DOTBOOTRAM
|
||||
LD_SCRIPT_ROM = -Dwrs_kernel_rom_size=0x0$(ROM_SIZE) \
|
||||
$(TGT_DIR)/h/tool/diab/ldscripts/link.DOTBOOTROM
|
||||
|
||||
TOOLENV = ppc
|
||||
VX_CPU_FAMILY = ppc
|
||||
ARCH_DIR = ppc
|
||||
|
||||
# end of make.PPC405sfdiab
|
||||
@@ -0,0 +1,40 @@
|
||||
# make.PPC440diab - Diab compilation tools definitions for PowerPC 440
|
||||
#
|
||||
# Copyright 1995-2004 2008 Wind River Systems, Inc.
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01q,08sep08,pee adding WRS_CONFIG_FP definition.
|
||||
# 01p,19aug08,mze TGT_FLAG changes
|
||||
# 01o,09aug04,kab SPR#100219: support for TOOL=sfdiab, sfgnu.
|
||||
# 01f,05sep03,pch parameterize Diab "environment" setting
|
||||
# 01e,12dec02,pch Add PPC32 support
|
||||
# 01d,10dec01,tpw Ensure ROM_SIZE defaults to 0x0 if the macro is not set.
|
||||
# 01c,05dec01,tpw Utilize DOTBOOT{RAM,ROM} linker scripts on all PPC4xx BSPs.
|
||||
# 01b,05dec01,jab change :tornado, :simple ,etc. to :vxworks55
|
||||
# 01a,27nov01,pch Written from make.PPC405diab vn 01d.
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains PowerPC 440 specific definitions and flags for the
|
||||
# diab tools (compiler, assembler, linker etc.)
|
||||
#*/
|
||||
|
||||
CPU = PPC440
|
||||
TOOL = diab
|
||||
|
||||
_WRS_CONFIG_FP ?= soft
|
||||
|
||||
include $(TGT_DIR)/h/tool/common/defs.ppc
|
||||
|
||||
TGT_FLAG = -tPPC440F$(TGT_FLAG_FP):$(DIAB_T_ENVIRON)
|
||||
|
||||
LD_SCRIPT_RAM = -Dwrs_kernel_rom_size=0x0$(ROM_SIZE) \
|
||||
$(TGT_DIR)/h/tool/diab/ldscripts/link.DOTBOOTRAM
|
||||
LD_SCRIPT_ROM = -Dwrs_kernel_rom_size=0x0$(ROM_SIZE) \
|
||||
$(TGT_DIR)/h/tool/diab/ldscripts/link.DOTBOOTROM
|
||||
|
||||
TOOLENV = ppc
|
||||
VX_CPU_FAMILY = ppc
|
||||
ARCH_DIR = ppc
|
||||
|
||||
# end of make.PPC440diab
|
||||
@@ -0,0 +1,35 @@
|
||||
# make.PPC440sfdiab - Diab compilation tools definitions for PowerPC 440
|
||||
#
|
||||
# Copyright 1995-2002 Wind River Systems, Inc.
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01o,09aug04,kab SPR#100219: support for TOOL=sfdiab, sfgnu.
|
||||
# 01f,05sep03,pch parameterize Diab "environment" setting
|
||||
# 01e,12dec02,pch Add PPC32 support
|
||||
# 01d,10dec01,tpw Ensure ROM_SIZE defaults to 0x0 if the macro is not set.
|
||||
# 01c,05dec01,tpw Utilize DOTBOOT{RAM,ROM} linker scripts on all PPC4xx BSPs.
|
||||
# 01b,05dec01,jab change :tornado, :simple ,etc. to :vxworks55
|
||||
# 01a,27nov01,pch Written from make.PPC405diab vn 01d.
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains PowerPC 440 specific definitions and flags for the
|
||||
# diab tools (compiler, assembler, linker etc.)
|
||||
#*/
|
||||
|
||||
CPU = PPC440
|
||||
TOOL = sfdiab
|
||||
include $(TGT_DIR)/h/tool/common/defs.ppc
|
||||
|
||||
TGT_FLAG = -tPPC440FS:$(DIAB_T_ENVIRON)
|
||||
|
||||
LD_SCRIPT_RAM = -Dwrs_kernel_rom_size=0x0$(ROM_SIZE) \
|
||||
$(TGT_DIR)/h/tool/diab/ldscripts/link.DOTBOOTRAM
|
||||
LD_SCRIPT_ROM = -Dwrs_kernel_rom_size=0x0$(ROM_SIZE) \
|
||||
$(TGT_DIR)/h/tool/diab/ldscripts/link.DOTBOOTROM
|
||||
|
||||
TOOLENV = ppc
|
||||
VX_CPU_FAMILY = ppc
|
||||
ARCH_DIR = ppc
|
||||
|
||||
# end of make.PPC440sfdiab
|
||||
@@ -0,0 +1,35 @@
|
||||
# make.PPC603diab - diab compilation tools definitions for PowerPC 603/604
|
||||
#
|
||||
# Copyright 1995-2003 Wind River Systems, Inc.
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01h,06jun06,dtr Allow support for software fp by fdefining hw fp
|
||||
# explicitlly.
|
||||
# 01g,05sep03,pch parameterize Diab "environment" setting
|
||||
# 01f,31jan03,pch Add PPC32 support
|
||||
# 01e,05dec01,jab change :tornado, :simple ,etc. to :vxworks55
|
||||
# 01d,16nov01,mil Changed VX_CPU_FAMILY from PPC to ppc.
|
||||
# 01c,30oct01,tpw Standardize kernel links and bootrom conversions.
|
||||
# 01b,23oct01,jab added PPC specific definitions
|
||||
# 01a,16oct01,jab Written from make.PPC603gnu 01r version.
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains PowerPC 603/604 specific definitions and flags for the
|
||||
# diab tools (compiler, assembler, linker etc.)
|
||||
#*/
|
||||
|
||||
CPU = PPC603
|
||||
TOOL = diab
|
||||
|
||||
|
||||
include $(TGT_DIR)/h/tool/common/defs.ppc
|
||||
|
||||
CC_ARCH_SPEC += -D_WRS_HARDWARE_FP
|
||||
TGT_FLAG = -tPPC603FH:$(DIAB_T_ENVIRON)
|
||||
|
||||
TOOLENV = ppc
|
||||
VX_CPU_FAMILY = ppc
|
||||
ARCH_DIR = ppc
|
||||
|
||||
# end of make.PPC603diab
|
||||
@@ -0,0 +1,57 @@
|
||||
# make.PPC604diab - Diab compilation tools definitions for PowerPC 604
|
||||
#
|
||||
# Copyright 1995-2003 Wind River Systems, Inc.
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01l,13apr10,pee locally enabling SMP build specs for bdgen
|
||||
# 01k,17oct06,pch add -Xstmw-slow for 745x
|
||||
# 01j,10oct06,pch WIND00068356: add -Xstsw-slow for 745x/970
|
||||
# 01i,10aug04,pch SPR 99846: Add support for _745x variant
|
||||
# 01h,05sep03,pch parameterize Diab "environment" setting
|
||||
# 01g,31jan03,pch Add PPC32 support
|
||||
# 01f,05dec01,jab change :tornado, :simple ,etc. to :vxworks55
|
||||
# 01e,16nov01,mil Changed VX_CPU_FAMILY from PPC to ppc.
|
||||
# 01d,30oct01,tpw Standardize kernel links and bootrom conversions.
|
||||
# 01c,25oct01,jab added OPTION_ALTIVEC_C make variable
|
||||
# 01b,23oct01,jab added OPTION_ALTIVEC_AS and PPC specific defs
|
||||
# 01a,16oct01,jab Written from make.PPC604gnu 01r version.
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains PowerPC 604 specific definitions and flags for the
|
||||
# diab tools (compiler, assembler, linker etc.)
|
||||
#*/
|
||||
|
||||
CPU = PPC604
|
||||
TOOL = diab
|
||||
include $(TGT_DIR)/h/tool/common/defs.ppc
|
||||
|
||||
ifeq ($(LIB_DIR_TAG),_745x)
|
||||
# Library build for 745x variant
|
||||
# Enable AltiVec opcodes e.g. dssall, but not "vector" keyword. Strictly
|
||||
# speaking, -Xkeywords=0x0 is only for C (not asm), but das does not object.
|
||||
TGT_FLAG= -tPPC7400FV:$(DIAB_T_ENVIRON) -Xkeywords=0x0 -Xstsw-slow -Xstmw-slow
|
||||
else
|
||||
ifeq ($(CPU_VARIANT),_745x)
|
||||
# BSP build with CPU=PPC604 CPU_VARIANT=_745x also needs AV opcodes.
|
||||
# Use CC_ARCH_SPEC since dld *does* object to -Xkeywords.
|
||||
TGT_FLAG = -tPPC7400FV:$(DIAB_T_ENVIRON)
|
||||
CC_ARCH_SPEC += -Xkeywords=0x0 -Xstsw-slow -Xstmw-slow
|
||||
else
|
||||
TGT_FLAG = -tPPC604FH:$(DIAB_T_ENVIRON)
|
||||
endif
|
||||
endif
|
||||
|
||||
TOOLENV = ppc
|
||||
VX_CPU_FAMILY = ppc
|
||||
ARCH_DIR = ppc
|
||||
|
||||
OPTION_ALTIVEC_AS = -tPPC7400FV:$(DIAB_T_ENVIRON)
|
||||
OPTION_ALTIVEC_C = -tPPC7400FV:$(DIAB_T_ENVIRON) -Xkeywords=0x0
|
||||
|
||||
ifdef _BDGEN_
|
||||
MP_OPTION_PPC604_SMP = TRUE
|
||||
endif
|
||||
|
||||
|
||||
# end of make.PPC604diab
|
||||
@@ -0,0 +1,76 @@
|
||||
# make.PPC85XXdiab - diab compilation tools definitions for PowerPC e500 Core
|
||||
#
|
||||
# Copyright 2001-2004, 2008, 2010, 2012 Wind River Systems, Inc.
|
||||
#
|
||||
# The right to copy, distribute or otherwise make use of this software
|
||||
# may be licensed only pursuant to the terms of an applicable Wind River
|
||||
# license agreement.
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01u,18apr12,h_k disabled _e500mc support. (WIND00346346)
|
||||
# 01t,14feb12,h_k added missing _WRS_HARDWARE_FP definition for e500mc.
|
||||
# (WIND00333971)
|
||||
# 01s,13apr10,pee locally enabling SMP build specs for bdgen
|
||||
# 01r,08sep08,pee adding WRS_CONFIG_FP definition.
|
||||
# 01q,03sep08,pmr e500mc hard float
|
||||
# 01p,22jul08,pee adding e500v2 support for VSB.
|
||||
# 01o,09aug04,kab SPR#100219: support for TOOL=sfdiab, sfgnu.
|
||||
# 01n,26sep03,mil Added intrinsic mask to work around missing alloca.
|
||||
# 01m,26sep03,xav Define SIZE macro using 5.1.2 diab ddump utility (-Z support)
|
||||
# 01l,13aug03,dtr Removing hardware floating point option.
|
||||
# 01k,01aug03,xav Set compilers values to specific e500 diab 5.1.2 values
|
||||
# 01j,04jun03,sn E500 requires Diab >= 5.1.1
|
||||
# 01i,03jun03,dtr Adding -Xstsw-slow and changing target flag to FF for
|
||||
# single precision floating point support.
|
||||
# 01h,09may03,tpw Fix typo
|
||||
# 01g,03oct02,mil Changed flag from -tPPCE500FV to -tPPCE500FS.
|
||||
# 01f,03sep02,dtr Changing compiler options to PPCE500.
|
||||
# 01e,05dec01,jab change :tornado, :simple ,etc. to :vxworks55
|
||||
# 01d,16nov01,mil Changed VX_CPU_FAMILY from PPC to ppc.
|
||||
# 01c,30oct01,tpw Standardize kernel links and bootrom conversions.
|
||||
# 01b,23oct01,jab added PPC specific definitions
|
||||
# 01a,16oct01,jab Written from make.PPC603gnu 01r version.
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains PowerPC e500 specific definitions and flags for the
|
||||
# diab tools (compiler, assembler, linker etc.)
|
||||
#*/
|
||||
|
||||
CPU = PPC85XX
|
||||
TOOL = diab
|
||||
|
||||
ifeq ($(LIB_DIR_TAG),_e500mc)
|
||||
$(error LIB_DIR_TAG=_e500mc is not supported in this build spec!)
|
||||
else
|
||||
ifeq ($(CPU_VARIANT),_e500mc)
|
||||
$(error CPU_VARIANT=_e500mc is not supported in this build spec!)
|
||||
endif
|
||||
endif
|
||||
|
||||
_WRS_CONFIG_FP ?= soft
|
||||
|
||||
include $(TGT_DIR)/h/tool/common/defs.ppc
|
||||
|
||||
ifeq ($(_WRS_CONFIG_FP),e500v2)
|
||||
TGT_FLAG = -tPPCE500V2FH:$(DIAB_T_ENVIRON)
|
||||
CC_COMPILER += -Xstsw-slow
|
||||
C++_COMPILER += -Xstsw-slow
|
||||
else
|
||||
TGT_FLAG = -tPPCE500FS:$(DIAB_T_ENVIRON)
|
||||
endif
|
||||
|
||||
LD_SCRIPT_RAM = -Dwrs_kernel_rom_size=0x0$(ROM_SIZE) \
|
||||
$(TGT_DIR)/h/tool/diab/ldscripts/link.DOTBOOTRAM
|
||||
LD_SCRIPT_ROM = -Dwrs_kernel_rom_size=0x0$(ROM_SIZE) \
|
||||
$(TGT_DIR)/h/tool/diab/ldscripts/link.DOTBOOTROM
|
||||
|
||||
TOOLENV = ppc
|
||||
VX_CPU_FAMILY = ppc
|
||||
ARCH_DIR = ppc
|
||||
|
||||
ifdef _BDGEN_
|
||||
MP_OPTION_PPC85XX_SMP = TRUE
|
||||
endif
|
||||
|
||||
# end of make.PPC85XXdiab
|
||||
@@ -0,0 +1,58 @@
|
||||
# make.PPC85XXe500v2diab - diab compilation tools definitions for PowerPC e500v2 Core
|
||||
#
|
||||
# Copyright (c) 2007, 2008, 2010, 2012 Wind River Systems, Inc.
|
||||
#
|
||||
# The right to copy, distribute, modify or otherwise make use
|
||||
# of this software may be licensed only pursuant to the terms
|
||||
# of an applicable Wind River license agreement.
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01e,25apr12,h_k disabled _e500mc support. (WIND00346346)
|
||||
# 01d,13apr10,pee locally enabling SMP build specs for bdgen
|
||||
# 01c,29aug08,pee adding _WRS_CONFIG_FP definition.
|
||||
# 01b,19nov07,dtr Change TOOL name.
|
||||
# 01a,06nov07,dtr Written from make.PPC85XXsfdiab 01o version.
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains PowerPC e500v2 specific definitions and flags for the
|
||||
# diab tools (compiler, assembler, linker etc.)
|
||||
#*/
|
||||
|
||||
CPU = PPC85XX
|
||||
TOOL = e500v2diab
|
||||
|
||||
ifeq ($(LIB_DIR_TAG),_e500mc)
|
||||
$(error LIB_DIR_TAG=_e500mc is not supported in this build spec!)
|
||||
else
|
||||
ifeq ($(CPU_VARIANT),_e500mc)
|
||||
$(error CPU_VARIANT=_e500mc is not supported in this build spec!)
|
||||
endif
|
||||
endif
|
||||
|
||||
_WRS_CONFIG_FP ?= e500v2
|
||||
|
||||
include $(TGT_DIR)/h/tool/common/defs.ppc
|
||||
|
||||
ifeq ($(_WRS_CONFIG_FP),e500v2)
|
||||
TGT_FLAG = -tPPCE500V2FH:$(DIAB_T_ENVIRON)
|
||||
CC_COMPILER += -Xstsw-slow
|
||||
C++_COMPILER += -Xstsw-slow
|
||||
else
|
||||
TGT_FLAG = -tPPCE500FS:$(DIAB_T_ENVIRON)
|
||||
endif
|
||||
|
||||
LD_SCRIPT_RAM = -Dwrs_kernel_rom_size=0x0$(ROM_SIZE) \
|
||||
$(TGT_DIR)/h/tool/diab/ldscripts/link.DOTBOOTRAM
|
||||
LD_SCRIPT_ROM = -Dwrs_kernel_rom_size=0x0$(ROM_SIZE) \
|
||||
$(TGT_DIR)/h/tool/diab/ldscripts/link.DOTBOOTROM
|
||||
|
||||
TOOLENV = ppc
|
||||
VX_CPU_FAMILY = ppc
|
||||
ARCH_DIR = ppc
|
||||
|
||||
ifdef _BDGEN_
|
||||
MP_OPTION_PPC85XX_SMP = TRUE
|
||||
endif
|
||||
|
||||
# end of make.PPC85XXe500v2diab
|
||||
@@ -0,0 +1,71 @@
|
||||
# make.PPC85XXsfdiab - diab compilation tools definitions for PowerPC e500 Core
|
||||
#
|
||||
# Copyright (c) 2001-2004, 2010, 2012 Wind River Systems, Inc.
|
||||
#
|
||||
# The right to copy, distribute, modify or otherwise make use
|
||||
# of this software may be licensed only pursuant to the terms
|
||||
# of an applicable Wind River license agreement.
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01q,17apr12,h_k disabled _e500mc support. (WIND00346346)
|
||||
# 01p,13apr10,pee locally enabling SMP build specs for bdgen
|
||||
# 01o,09aug04,kab SPR#100219: support for TOOL=sfdiab, sfgnu.
|
||||
# 01n,26sep03,mil Added intrinsic mask to work around missing alloca.
|
||||
# 01m,26sep03,xav Define SIZE macro using 5.1.2 diab ddump utility (-Z support)
|
||||
# 01l,13aug03,dtr Removing hardware floating point option.
|
||||
# 01k,01aug03,xav Set compilers values to specific e500 diab 5.1.2 values
|
||||
# 01j,04jun03,sn E500 requires Diab >= 5.1.1
|
||||
# 01i,03jun03,dtr Adding -Xstsw-slow and changing target flag to FF for
|
||||
# single precision floating point support.
|
||||
# 01h,09may03,tpw Fix typo
|
||||
# 01g,03oct02,mil Changed flag from -tPPCE500FV to -tPPCE500FS.
|
||||
# 01f,03sep02,dtr Changing compiler options to PPCE500.
|
||||
# 01e,05dec01,jab change :tornado, :simple ,etc. to :vxworks55
|
||||
# 01d,16nov01,mil Changed VX_CPU_FAMILY from PPC to ppc.
|
||||
# 01c,30oct01,tpw Standardize kernel links and bootrom conversions.
|
||||
# 01b,23oct01,jab added PPC specific definitions
|
||||
# 01a,16oct01,jab Written from make.PPC603gnu 01r version.
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains PowerPC e500 specific definitions and flags for the
|
||||
# diab tools (compiler, assembler, linker etc.)
|
||||
#*/
|
||||
|
||||
CPU = PPC85XX
|
||||
TOOL = sfdiab
|
||||
|
||||
ifeq ($(LIB_DIR_TAG),_e500mc)
|
||||
$(error LIB_DIR_TAG=_e500mc is not supported in this build spec!)
|
||||
else
|
||||
ifeq ($(CPU_VARIANT),_e500mc)
|
||||
$(error CPU_VARIANT=_e500mc is not supported in this build spec!)
|
||||
endif
|
||||
endif
|
||||
|
||||
_WRS_CONFIG_FP ?= soft
|
||||
|
||||
include $(TGT_DIR)/h/tool/common/defs.ppc
|
||||
|
||||
ifeq ($(_WRS_CONFIG_FP),e500v2)
|
||||
TGT_FLAG = -tPPCE500V2FH:$(DIAB_T_ENVIRON)
|
||||
CC_COMPILER += -Xstsw-slow
|
||||
C++_COMPILER += -Xstsw-slow
|
||||
else
|
||||
TGT_FLAG = -tPPCE500FS:$(DIAB_T_ENVIRON)
|
||||
endif
|
||||
|
||||
LD_SCRIPT_RAM = -Dwrs_kernel_rom_size=0x0$(ROM_SIZE) \
|
||||
$(TGT_DIR)/h/tool/diab/ldscripts/link.DOTBOOTRAM
|
||||
LD_SCRIPT_ROM = -Dwrs_kernel_rom_size=0x0$(ROM_SIZE) \
|
||||
$(TGT_DIR)/h/tool/diab/ldscripts/link.DOTBOOTROM
|
||||
|
||||
TOOLENV = ppc
|
||||
VX_CPU_FAMILY = ppc
|
||||
ARCH_DIR = ppc
|
||||
|
||||
ifdef _BDGEN_
|
||||
MP_OPTION_PPC85XX_SMP = TRUE
|
||||
endif
|
||||
|
||||
# end of make.PPC85XXsfdiab
|
||||
@@ -0,0 +1,31 @@
|
||||
# make.SIMLINUXdiab - Diab compilation tools definitions for SIMLINUX
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01e,02dec05,dbt Use nop as the byte filling pattern to help disassembler
|
||||
# (SPR #112043).
|
||||
# 01d,31mar05,dbt moved assembly flags to OPTION_LANG_ASM. (SPR #106199).
|
||||
# 01c,10dec03,yvp Added ABI_SPEC.
|
||||
# 01b,30sep03,sn changed :vxworks55 to :$(DIAB_T_ENVIRON)
|
||||
# 01a,26mar03,dbt written
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains Linux VSim specific definitions and flags for the
|
||||
# diab tools (compiler, assembler, linker etc.)
|
||||
#*/
|
||||
|
||||
include $(TGT_DIR)/h/tool/diab/defs.diab
|
||||
CPU = SIMLINUX
|
||||
TOOL = diab
|
||||
|
||||
TGT_FLAG = -tX86LH:$(DIAB_T_ENVIRON)
|
||||
|
||||
TOOLENV = pentium
|
||||
VX_CPU_FAMILY = simlinux
|
||||
ARCH_DIR = simlinux
|
||||
ABI_SPEC = x86
|
||||
|
||||
OPTION_LANG_ASM += -Wa,-Xmnem-mit
|
||||
LD_PARTIAL_FLAGS += -f 0x90,1,1
|
||||
|
||||
# end of make.SIMLINUXdiab
|
||||
@@ -0,0 +1,31 @@
|
||||
# make.SIMNTdiab - Diab compilation tools definitions for SIMNT
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01e,02dec05,dbt Use nop as the byte filling pattern to help disassembler
|
||||
# (SPR #112043).
|
||||
# 01d,31mar05,dbt moved assembly flags to OPTION_LANG_ASM. (SPR #106199).
|
||||
# 01c,10dec03,yvp Added ABI_SPEC.
|
||||
# 01b,30sep03,sn changed :vxworks55 to :$(DIAB_T_ENVIRON)
|
||||
# 01a,26mar03,dbt written
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains Windows VxSim specific definitions and flags for the
|
||||
# diab tools (compiler, assembler, linker etc.)
|
||||
#*/
|
||||
|
||||
include $(TGT_DIR)/h/tool/diab/defs.diab
|
||||
CPU = SIMNT
|
||||
TOOL = diab
|
||||
|
||||
TGT_FLAG = -tX86LH:$(DIAB_T_ENVIRON)
|
||||
|
||||
TOOLENV = pentium
|
||||
VX_CPU_FAMILY = simpc
|
||||
ARCH_DIR = simnt
|
||||
ABI_SPEC = x86
|
||||
|
||||
OPTION_LANG_ASM += -Wa,-Xmnem-mit
|
||||
LD_PARTIAL_FLAGS += -f 0x90,1,1
|
||||
|
||||
# end of make.SIMNTdiab
|
||||
@@ -0,0 +1,34 @@
|
||||
# make.XSCALEdiab - Diab compilation tools definitions for XSCALE
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01i,20aug08,mze changing ENDIAN logic
|
||||
# 01h,19aug08,mze TOOL changes
|
||||
# 01g,24jun08,pee VSB adaptation.
|
||||
# 01f,30sep03,sn changed :vxworks55 to :$(DIAB_T_ENVIRON)
|
||||
# 01e,14jan02,to move 'include defs.arm' after TOOL and CPU definitions to be
|
||||
# consistent with gnu ones
|
||||
# 01d,18dec01,to move common definitions to defs.arm
|
||||
# 01c,05dec01,jab change :tornado, :simple ,etc. to :vxworks55
|
||||
# 01b,16nov01,t_m Change sysInit entry
|
||||
# 01a,08nov01,t_m Copied from make.ARMARCH4diab
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains XSCALE specific definitions and flags for the
|
||||
# Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = XSCALE
|
||||
TOOL = diab
|
||||
|
||||
ifeq ($(BUILD_ENDIAN_SUFFIX),be)
|
||||
_WRS_CONFIG_ENDIAN ?= big
|
||||
else
|
||||
_WRS_CONFIG_ENDIAN ?= little
|
||||
endif
|
||||
|
||||
include $(TGT_DIR)/h/tool/diab/defs.arm
|
||||
|
||||
TGT_FLAG = -tARMX$(TGT_FLAG_ENDIAN)S:$(DIAB_T_ENVIRON)
|
||||
|
||||
# end of make.XSCALEdiab
|
||||
@@ -0,0 +1,25 @@
|
||||
# make.XSCALEdiabbe - Diab compilation tools definitions for XSCALE
|
||||
#
|
||||
# modification history
|
||||
# --------------------
|
||||
# 01d,24jun08,pee VSB
|
||||
# 01c,30sep03,sn changed :vxworks55 to :$(DIAB_T_ENVIRON)
|
||||
# 01b,14jan02,to move 'include defs.arm' after TOOL and CPU definitions to be
|
||||
# consistent with gnu ones
|
||||
# 01a,10jan02,to Copied from make.XSCALEdiab
|
||||
#
|
||||
# DESCRIPTION
|
||||
# This file contains XSCALE specific definitions and flags for the
|
||||
# Diab tools (compiler, assembler, linker etc.)
|
||||
#
|
||||
|
||||
CPU = XSCALE
|
||||
TOOL = diabbe
|
||||
|
||||
_WRS_CONFIG_ENDIAN ?= big
|
||||
|
||||
include $(TGT_DIR)/h/tool/diab/defs.arm
|
||||
|
||||
TGT_FLAG = -tARMXES:$(DIAB_T_ENVIRON)
|
||||
|
||||
# end of make.XSCALEdiabbe
|
||||
@@ -0,0 +1,188 @@
|
||||
/* toolMacros.h - compile time macros for Diab C compiler */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2001-2006, 2008-2010, 2014 Wind River Systems, Inc.
|
||||
*
|
||||
* The right to copy, distribute or otherwise make use of this software
|
||||
* may be licensed only pursuant to the terms of an applicable Wind River
|
||||
* license agreement. No license to Wind River intellectual property rights
|
||||
* is granted herein. All rights not licensed by Wind River are reserved
|
||||
* by Wind River.
|
||||
*/
|
||||
|
||||
/*
|
||||
modification history
|
||||
--------------------
|
||||
25aug14,dee allow predefinition of _WRS_DEPRECATED (VXW6-78473)
|
||||
12may10,cww Added _WRS_SECTION_TEXT and _WRS_SECTION_RODATA
|
||||
08feb10,mcm Fix for WIND00193234
|
||||
05nov09,mcm LP64 updates
|
||||
24jul09,kk added macro _WRS_USAGE_WARNING()
|
||||
15jul08,to renamed expect macros to _WRS_LIKELY and _WRS_UNLIKELY
|
||||
moved SDA macros out of _WRS_NO_SPECIAL_SECTIONS conditionals
|
||||
16jun08,zl added _WRS_BARRIER()
|
||||
13may08,dlk Revert previous workaround, there's a better one.
|
||||
09may08,dlk Workaround for diab .data.fast/SDA conflict (WIND00123084).
|
||||
29apr08,zl added expect and prefetch macros.
|
||||
25mar08,to added _WRS_SDA_DATA, _WRS_SDA_BSS and _WRS_SDA_CONST
|
||||
19dec06,aeg added _WRS_FUNC_NORETURN()
|
||||
09sep05,jln added _WRS_ABSOLUTE_EXTERN
|
||||
08aug05,wap Add section relocation macros
|
||||
17mar04,dat remove leading underscore from _absSymbols_xxx (95052)
|
||||
05mar04,dat temp fix for c++ and deprecated
|
||||
05feb04,dat add macros for _WRS_ABSOLUTE
|
||||
26nov03,dat Adding INLINE and DEPRECATED
|
||||
12oct03,dat new macros for V7 of portable C guide.
|
||||
23sep03,zl added _WRS_CONSTRUCTOR definition
|
||||
26nov01,dat New macros for alignment checking and unaligned copies
|
||||
14nov01,dat Adding underscores to macro names
|
||||
18oct01,jab fixed WRS_ASM macro
|
||||
04sep01,dat written (assumes Diab 4.4b or later)
|
||||
*/
|
||||
|
||||
#ifndef __INCtoolMacrosh
|
||||
#define __INCtoolMacrosh
|
||||
|
||||
#define _WRS_PACK_ALIGN(x) __attribute__((packed, aligned(x)))
|
||||
|
||||
#define _WRS_ASM(x) __asm volatile (x)
|
||||
|
||||
#define _WRS_UNQUALIFIED_ASM(x) __asm (x)
|
||||
|
||||
#define _WRS_BARRIER(x) __asm volatile (x)
|
||||
|
||||
#define _WRS_DATA_ALIGN_BYTES(x) __attribute__((aligned(x)))
|
||||
|
||||
/* This tool uses the ANSI variadic macro style */
|
||||
|
||||
#undef _WRS_GNU_VAR_MACROS /* Diab uses ANSI syntax */
|
||||
|
||||
/* New macros for alignment issues */
|
||||
|
||||
#define _WRS_ALIGNOF(x) sizeof(x,1)
|
||||
|
||||
#define _WRS_UNALIGNED_COPY(pSrc, pDest, size) \
|
||||
(memcpy ((pDest), (pSrc), (size)))
|
||||
|
||||
#define _WRS_ALIGN_CHECK(ptr, type) \
|
||||
(((int)(ptr) & ( _WRS_ALIGNOF(type) - 1)) == 0 ? TRUE : FALSE)
|
||||
|
||||
/*
|
||||
* Macros to force code or data into specific sections. These
|
||||
* can be used to force the compiler to place a given piece of
|
||||
* code or data into a separate section. The idea is to improve
|
||||
* cache usage by either clustering frequently referenced code
|
||||
* close together, or moving infrequently used code (i.e. "run-once"
|
||||
* init routines that are only used during bootstrap) out of the
|
||||
* way. The "init" sections are used for the latter case, while
|
||||
* the "fast" sections are used to group performance-critical
|
||||
* routines together.
|
||||
*
|
||||
* Note: _WRS_FASTDATA or _WRS_INITDATA should occur at the
|
||||
* start of the declaration rather than at the end, as a workaround
|
||||
* for WIND00123084. For example, use
|
||||
* \cs
|
||||
* extern _WRS_FASTDATA void * myFastPtr;
|
||||
* \ce
|
||||
* rather than
|
||||
* \cs
|
||||
* extern void * myFastPtr _WRS_FASTDATA;
|
||||
* \ce
|
||||
*/
|
||||
|
||||
#ifndef _WRS_NO_SPECIAL_SECTIONS
|
||||
#define _WRS_INITTEXT __attribute__ ((__section__ (".text.init")))
|
||||
#define _WRS_FASTTEXT __attribute__ ((__section__ (".text.fast")))
|
||||
#define _WRS_INITDATA __attribute__ ((__section__ (".data.init")))
|
||||
#define _WRS_FASTDATA __attribute__ ((__section__ (".data.fast")))
|
||||
#else
|
||||
#define _WRS_INITTEXT
|
||||
#define _WRS_FASTTEXT
|
||||
#define _WRS_INITDATA
|
||||
#define _WRS_FASTDATA
|
||||
#endif
|
||||
|
||||
/* Standard sections */
|
||||
|
||||
#define _WRS_SECTION_TEXT __attribute__ ((__section__ (".text")))
|
||||
#define _WRS_SECTION_RODATA __attribute__ ((__section__ (".rodata")))
|
||||
|
||||
/* SDA section macros */
|
||||
|
||||
#define _WRS_SDA_DATA __attribute__ ((__section__ (".sdata")))
|
||||
#define _WRS_SDA_BSS __attribute__ ((__section__ (".sbss")))
|
||||
#define _WRS_SDA_CONST __attribute__ ((__section__ (".sdata2")))
|
||||
|
||||
/*
|
||||
* macro for static initializer (constructor) definitions; assumes
|
||||
* Diab 5.2 or later with constructor support.
|
||||
*/
|
||||
|
||||
#define _WRS_CONSTRUCTOR(rtn,lvl) \
|
||||
__attribute__((constructor(lvl))) void _STI__##lvl##__##rtn (void)
|
||||
|
||||
/*
|
||||
* New Basix macros, (Portable Coding Guide, v7)
|
||||
*
|
||||
* HAS_GCC_ASM_SYNTAX if Gnu inline assembly syntax is supported.
|
||||
* HAS_DCC_ASM_SYNTAX if Diab inline assembly function syntax is supported.
|
||||
* INLINE for static inline C functions, (prefix)
|
||||
* DEPRECATED for obsolete API warnings. (postfix)
|
||||
* USAGE_WARNING for API warnings - currently replicate of DEPRECATED. Future
|
||||
* plan to add this.
|
||||
*/
|
||||
|
||||
#undef _WRS_HAS_GCC_ASM_SYNTAX
|
||||
#define _WRS_HAS_DCC_ASM_SYNTAX
|
||||
#define _WRS_INLINE static __inline__
|
||||
|
||||
#ifndef _WRS_DEPRECATED
|
||||
#ifdef __cplusplus
|
||||
#define _WRS_DEPRECATED(x) /* temp workaround for c++ compiler failure */
|
||||
#else
|
||||
#define _WRS_DEPRECATED(x) __attribute__((deprecated(x)))
|
||||
#endif
|
||||
#endif /* ifndef _WRS_DEPRECATED */
|
||||
|
||||
#define _WRS_USAGE_WARNING(x) _WRS_DEPRECATED(x)
|
||||
|
||||
/* (New V7) For absolute symbol support. (use with semicolon) */
|
||||
|
||||
#define _WRS_ABSOLUTE(name,value) \
|
||||
const long name __attribute__((absolute)) = (long)value
|
||||
|
||||
#define _WRS_ABSOLUTE_EXTERN(name) \
|
||||
extern const char name[]
|
||||
|
||||
|
||||
/* code optimization macros using compiler extensions */
|
||||
|
||||
#define _WRS_FUNC_NORETURN __attribute__((noreturn))
|
||||
|
||||
#define _WRS_LIKELY(x) __builtin_expect(!!(x), 1)
|
||||
#define _WRS_UNLIKELY(x) __builtin_expect(!!(x), 0)
|
||||
|
||||
#define _WRS_READ_PREFETCH(ptr) __builtin_prefetch((ptr),0)
|
||||
#define _WRS_WRITE_PREFETCH(ptr) __builtin_prefetch((ptr),1)
|
||||
|
||||
|
||||
/* prefix and suffix to surround absolute symbol declarations (nops for diab)*/
|
||||
|
||||
#define _WRS_ABSOLUTE_BEGIN(x) \
|
||||
extern STATUS absSymbols_##x (void); \
|
||||
STATUS absSymbols_##x (void) {return OK;}
|
||||
#define _WRS_ABSOLUTE_END
|
||||
|
||||
|
||||
/*
|
||||
* For backward compatibility with v5 of portable C coding guide.
|
||||
*
|
||||
* These are now obsolete, please don't use them.
|
||||
*/
|
||||
|
||||
#define WRS_PACK_ALIGN(x) _WRS_PACK_ALIGN(x)
|
||||
#define WRS_ASM(x) _WRS_ASM(x)
|
||||
#define WRS_DATA_ALIGN_BYTES(x) _WRS_DATA_ALIGN_BYTES(x)
|
||||
#undef WRS_GNU_VAR_MACROS
|
||||
|
||||
#endif /* __INCtoolMacrosh */
|
||||
Reference in New Issue
Block a user