# defs.exclude - what not to extract from the toolchain libraries # # Copyright (c) 2001-2005, 2007-2010, 2012, 2013, 2016, 2018, 2020 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 # -------------------- # 02j,28may20,lau Reverted 16jun16, 06jul16 and 01mar18 (VXW6-87229) # 02i,01mar18,lau Fixed _d_ulltod undefined error (VXW6-86234) # 02h,14dec16,lau Fixed undefined reference to ldexpf and ldexpl (VXW6-86052) # 02g,06jul16,lau Fixed undefined reference to __floatundidf (VXW6-85693) # 02f,16jun16,lau Added ARMARCH7diab # 02e,10sep13,mpc Updated for ARMARCH7M # 02d,21sep12,jdw Modify ARMARCH7 to use Diab intrinsics # 02c,18nov10,jdw Exclude soft float objects for ARMARCH7 # 02b,22sep10,gvm cxa_atexit is now provided by libcommoncc.a # 02a,06aug10,sn Diab switching to C++ IA64 ABI; # __cxa_pure_virtual now provided by libdiabcplus.a # 01z,28apr10,mcm Extending fix for WIND00092483 for simpc as well. # 01y,22apr10,mcm Fix for WIND00092483; ldexp present in libfp.a for PPC, # SIMLINUX # 01x,25feb10,mcm Fix for WIND00192989 - ldexpl required for sfdiab in libstl # 01x,31jan10,fao add be8 support. # 01w,27feb09,m_h Adding ARMARCH7 # 01v,05jul08,mcm Excluding ldexp from the stl libraries for PPC and ARM # 01u,23jun08,pee VSB integration. # 01t,27jul07,mcm Fixing exclude list for SH - we need __Dtentox (xdtento.o) # and __FDtentox (xfdtento.o) with the latest Dinkumware # libraries. # 01s,07apr05,jb Adding ARMARCH6 # 01r,01nov04,mcm Moving frameadd.o into libcplus. # 01q,21sep04,zl exclude rtahooks, __rta_longjmp is now in funcBind.c # 01p,26feb04,mil Added support for PPC85XX. # 01o,11feb04,pch PPC32 floating-point adjustments # 01n,07feb03,pch Add PPC32 support # 01m,20may02,sn Removed torn_stubs.o and lib_err.o (not used) # 01n,30apr02,sn Removed m16_fglue.o # 01m,17apr02,mrs Move frameinfo.o and framedb.o to libcplus.a, SPR 75251. # 01l,05apr02,f_b xfvalues.o xvalues.o should not be excluded for sh # 01k,04mar02,sn removed dummy _fp_round defn from dp32.s; use Diab one # instead # 01j,14feb02,dyv Trying to remover line for realfp.o in cf specific lib, # not needed. # 01i,22jan02,sn exclude hfp* for PPC (because they use .sdata2, and not # needed); swcom and swuncom (not needed) # 01h,08jan02,to exclude sf for ARM (except Thumb mode) # 01g,11dec01,sn don't exclude rtahooks.o # 01f,10dec01,sn exclude rtahooks.o, torn_jstb.o, link.o; # exclude sf for PPC440 # 01e,04dec01,to exclude call_via.o module, use ../common/arm_call_via.s # 01d,03dec01,sn save/restore functions now defined in ../common/saverest.s # 01c,14nov01,sn don't use dinkum math lib for SH7750 # 01b,14nov01,sn cleaned up; added PPC403/PPC405, longjmp/setjmp # 01a,13nov01,sn wrote # # DESCRIPTION # This file contains the knowledge of which object files should # not be pulled out of the toolchain libraries (because # they define symbols that are already provided by VxWorks). # Put objects that should always be excluded in # EXCLUDE_OBJS_COMMON # # Put objects that should be excluded for a particular arch family in # EXCLUDE_OBJS_$(TOOLENV) # # Put objects that should be excluded for a particular CPU in # EXCLUDE_OBJS_$(CPU)$(TOOL) OBJS_SF_PPC = sfpdadd.o sfpdcmp.o sfpdcmpe.o sfpddiv.o \ sfpdfeq.o sfpdfne.o sfpdmul.o sfpdneg.o \ sfpfadd.o sfpfcmp.o sfpfcmpe.o sfpfdiv.o \ sfpffeq.o sfpffne.o sfpfmul.o sfpfneg.o \ sfpddtof.o sfpddtoi.o sfpddtou.o sfpdfge.o \ sfpdfgt.o sfpdfle.o sfpdflt.o sfpditod.o \ sfpdutod.o sfpffge.o sfpffgt.o sfpffle.o \ sfpfflt.o sfpfftod.o sfpfftoi.o sfpfftou.o \ sfpfitof.o sfpfutof.o ldexp.o ldexpf.o OBJS_SF_SH = sfpdadd.o sfpddiv.o sfpddtof.o sfpddtoi.o \ sfpddtou.o sfpdfeq.o sfpdfge.o sfpdfgt.o \ sfpdfle.o sfpdflt.o sfpdfne.o sfpditod.o \ sfpdmul.o sfpdneg.o sfpdutod.o sfpfadd.o \ sfpfdiv.o sfpffeq.o sfpffge.o sfpffgt.o \ sfpffle.o sfpfflt.o sfpffne.o sfpfftod.o \ sfpfftoi.o sfpfftou.o sfpfitof.o sfpfmul.o \ sfpfneg.o sfpfutof.o OBJS_DINKUM_SH = xdnorm.o xdscale.o xdunscal.o \ xfdnorm.o xfdscale.o xfdunsca.o \ xferaise.o OBJS_SF_ARM = sfpdadd.o sfpddiv.o sfpddtof.o sfpddtoi.o \ sfpddtoll.o sfpddtou.o sfpddtoull.o sfpdfeq.o \ sfpdfge.o sfpdfgt.o sfpdfle.o sfpdflt.o \ sfpdfne.o sfpditod.o sfpdlltod.o sfpdmul.o \ sfpdneg.o sfpdulltod.o sfpdutod.o sfpfadd.o \ sfpfdiv.o sfpffeq.o sfpffge.o sfpffgt.o \ sfpffle.o sfpfflt.o sfpffne.o sfpfftod.o \ sfpfftoi.o sfpfftoll.o sfpfftou.o sfpfftoull.o \ sfpfitof.o sfpflltof.o sfpfmul.o sfpfneg.o \ sfpfulltof.o sfpfutof.o OBJS_ARM7M = sfpddtoll.o sfpddtoull.o sfpfftoll.o sfpfftoull.o #EXCLUDE_OBJS_cf = realfp.o EXCLUDE_OBJS_PPC32sfdiab = $(OBJS_SF_PPC) EXCLUDE_OBJS_PPC403diab = $(OBJS_SF_PPC) EXCLUDE_OBJS_PPC405diab = $(OBJS_SF_PPC) EXCLUDE_OBJS_PPC440diab = $(OBJS_SF_PPC) EXCLUDE_OBJS_PPC860diab = $(OBJS_SF_PPC) EXCLUDE_OBJS_PPC85XXdiab = $(OBJS_SF_PPC) EXCLUDE_OBJS_PPC32e500v2diab = ldexp.o EXCLUDE_OBJS_PPC32diab = ldexp.o EXCLUDE_OBJS_ppc = savegpr.o restgpr.o savegprl.o restgprl.o savefpr.o restfpr.o hfpddtou.o hfpditod.o hfpdutod.o hfpfftou.o EXCLUDE_OBJS_SH7600diab = $(OBJS_SF_SH) EXCLUDE_OBJS_SH7700diab = $(OBJS_SF_SH) EXCLUDE_OBJS_SH7700diable = $(OBJS_SF_SH) EXCLUDE_OBJS_SH7750diab = $(OBJS_DINKUM_SH) EXCLUDE_OBJS_SH7750diable = $(OBJS_DINKUM_SH) EXCLUDE_OBJS_ARMARCH4diab = $(OBJS_SF_ARM) EXCLUDE_OBJS_ARMARCH4diabbe = $(OBJS_SF_ARM) EXCLUDE_OBJS_ARMARCH5diab = $(OBJS_SF_ARM) EXCLUDE_OBJS_ARMARCH5diabbe = $(OBJS_SF_ARM) EXCLUDE_OBJS_ARMARCH6diab = $(OBJS_SF_ARM) EXCLUDE_OBJS_ARMARCH6diabbe = $(OBJS_SF_ARM) EXCLUDE_OBJS_ARMARCH7sfdiab = $(OBJS_SF_ARM) EXCLUDE_OBJS_ARMARCH7Mdiab = $(OBJS_ARM7M) EXCLUDE_OBJS_STRONGARMdiab = $(OBJS_SF_ARM) EXCLUDE_OBJS_STRONGARMdiabbe = $(OBJS_SF_ARM) EXCLUDE_OBJS_XSCALEdiab = $(OBJS_SF_ARM) EXCLUDE_OBJS_XSCALEdiabbe = $(OBJS_SF_ARM) EXCLUDE_OBJS_arm = call_via.o ldexp.o EXCLUDE_OBJS_SIMLINUXdiab = ldexp.o EXCLUDE_OBJS_SIMNTdiab = ldexp.o # m16_fglue is only needed for MIPS16 support. We removed # it because it contains a reference to __frameinfo_used # which should only be referenced by C++ code. Eventually # this should be fixed so that a C version of m16_fglue.o # is available. EXCLUDE_OBJS_mips = m16_fglue.o # These are objects that should be pulled from libimpfp into libdiabcplus.a # rather than libdcc.a. We exclude them here, then include them explicitly # in ./libimpfp-c++ OBJS_LIBIMPFP_CPLUS = unwind_fi.o frameinfo.o framedb.o frameadd.o EXCLUDE_OBJS_COMMON = rtahooks.o torn_longjmp.o setjmp.o torn_jstb.o link.o swuncom.o swcom.o torn_stubs.o lib_err.o cxa_atexit.o cxa_atexit_stub.o cxa_atexit_dso_handle.o EXCLUDE_OBJS = $(EXCLUDE_OBJS_$(CPU)$(BUILD_FP_PREFIX)$(TOOL_FAMILY)$(BUILD_ENDIAN_SUFFIX)) $(EXCLUDE_OBJS_$(TOOLENV)) $(EXCLUDE_OBJS_COMMON) $(OBJS_LIBIMPFP_CPLUS) # In Diab 5.9.4.x we've introduced some aliases that are not needed by Diab # but conflict with definitions provided by GCC, remove the following # symbols (VXW6-87229, VXW6-84950, V7LIBC-525) TOOL_STRIP_SYMS_ARMARCH7_sfpdulltod.o = __aeabi_ul2d __floatundidf TOOL_STRIP_SYMS_ARMARCH7_sfpdutod.o = __aeabi_ui2d __floatunsidf TOOL_STRIP_SYMS_ARMARCH7_sfpddtoll.o = __aeabi_d2lz __fixdfdi TOOL_STRIP_SYMS_ARMARCH7_sfpfftoll.o = __aeabi_f2lz __fixsfdi TOOL_STRIP_SYMS_ARMARCH7_sfpfftoi.o = __aeabi_f2iz __fixsfsi TOOL_STRIP_SYMS_ARMARCH7_sfpddtoull.o = __aeabi_d2ulz __fixunsdfdi TOOL_STRIP_SYMS_ARMARCH7_sfpfftoull.o = __aeabi_f2ulz __fixunssfdi TOOL_STRIP_SYMS_ARMARCH7_sfpfftou.o = __aeabi_f2uiz __fixunssfsi TOOL_STRIP_SYMS_ARMARCH7_sfpddtou.o = __aeabi_d2uiz