Files
m241Neelima/vxworks-6.9/target/h/tool/gnu/defs.arm
T
2026-07-30 11:19:44 +05:30

65 lines
1.9 KiB
Plaintext

# defs.arm - ARM specific definitions for the GNU toolchain
#
# Copyright (c) 2001-2002, 2008-2011, 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
# --------------------
# 01i,19jul16,pee VXW6-85485 rearrange flags to fix option missing in debug mode.
# 01h,17oct11,mze fix for WIND00312198
# 01g,20jun11,j_b Restore LDFLAGS_ENDIAN use instead of LDFLAGS
# (WIND00282677); similarly done for LD_PARTIAL_FLAGS
# 01f,31jan10,fao add be8 support.
# 01e,30jun09,pee modification to LDFLAGS definition.
# 01d,24jun08,pee VSB.
# 01c,24jun02,m_h define LONGCALL to allow far away ld relocations
# 01b,21jan02,sn removed unused C++_TEMPLATE_INST
# 01a,18dec01,to written
#
# DESCRIPTION
# This file contains ARM specific definitions and flags for the
# GNU tools (compiler, assembler, linker etc.)
#
# NOTE
# The file name comes from defs.$(VX_CPU_FAMILY)
#
include $(TGT_DIR)/h/tool/gnu/defs.gnu
include $(TGT_DIR)/h/tool/common/defs.arm
CC_OPTIM_XO = -O2
CC_OPTIM_DEBUG =
CC_OPTIM_DRIVER = $(CC_OPTIM_DEBUG) -fvolatile
CC_OPTIM_NORMAL = $(CC_OPTIM_DEBUG) $(CC_OPTIM_XO)
CC_OPTIM_TARGET = $(CC_OPTIM_DEBUG) $(CC_OPTIM_XO) -fvolatile
LONGCALL = -mlong-calls
ifeq ($(findstring _T,$(CPU)),_T)
# definitions for Thumb mode
CC_ARCH_SPEC = $(CC_ARCH_SPEC_BASE) -mthumb -mthumb-interwork
else
# definitions for ARM mode
CC_ARCH_SPEC = $(CC_ARCH_SPEC_BASE) -mapcs-32
endif
ifeq ($(_WRS_CONFIG_ENDIAN),little)
# definitions for little endian
CC_ARCH_SPEC += -mlittle-endian
LDFLAGS_ENDIAN= -EL
LD_PARTIAL_FLAGS_ENDIAN= -EL
else
# definitions for big endian: be or be8
CC_ARCH_SPEC += -mbig-endian
LDFLAGS_ENDIAN= -EB
LD_PARTIAL_FLAGS_ENDIAN= -EB
endif
CC_ARCH_SPEC_BASE = -fno-builtin
# end of defs.arm