aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/csky/t-csky-elf
blob: 02e17b8647e5e25c63e5f1aa3d5f282aa1ebc1bf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
# Multilib configuration for csky*-elf.
#
# Copyright (C) 2018-2024 Free Software Foundation, Inc.
# Contributed by C-SKY Microsystems and Mentor Graphics.
#
# This file is part of GCC.
#
# GCC is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3, or (at your option)
# any later version.
#
# GCC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with GCC; see the file COPYING3.  If not see
# <http://www.gnu.org/licenses/>.

# Endiannesses.
MULTILIB_OPTIONS      = mlittle-endian/mbig-endian
MULTILIB_DIRNAMES     = little big
MULTILIB_MATCHES      = mlittle-endian=EL
MULTILIB_MATCHES      = mbig-endian=EB
MULTILIB_EXCEPTIONS   =

# Arch variants.
MULTILIB_OPTIONS     += mcpu=ck802/mcpu=ck801/mcpu=ck803f/mcpu=ck807f/mcpu=ck810f/mcpu=ck860f
MULTILIB_DIRNAMES    += ck802 ck801 ck803 ck807 ck810 ck860

# For arch ck802.
MULTILIB_MATCHES     += mcpu?ck802=march?ck802
MULTILIB_MATCHES     += mcpu?ck802=mcpu?ck802t
MULTILIB_MATCHES     += mcpu?ck802=mcpu?ck802j

# For arch ck801.
MULTILIB_MATCHES     += mcpu?ck801=march?ck801
MULTILIB_MATCHES     += mcpu?ck801=mcpu?ck801t

# For arch ck803.
MULTILIB_MATCHES     += mcpu?ck803f=march?ck803
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803fh
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803h
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803t
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803ht
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803e
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803eh
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803et
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803eht
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803ef
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803efh
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803ft
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803eft
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803efht
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803r1
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803fr1
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803fhr1
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803hr1
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803tr1
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803htr1
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803er1
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803ehr1
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803etr1
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803ehtr1
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803efr1
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803efhr1
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803ftr1
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803eftr1
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803efhtr1

# For arch ck803s.
MULTILIB_MATCHES     += mcpu?ck803f=march?ck803s
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803s
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803st
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803se
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803sf
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803sef
MULTILIB_MATCHES     += mcpu?ck803f=mcpu?ck803seft

# For arch ck810.
MULTILIB_MATCHES     += mcpu?ck810f=mcpu?ck810e
MULTILIB_MATCHES     += mcpu?ck810f=mcpu?ck810et
MULTILIB_MATCHES     += mcpu?ck810f=mcpu?ck810ef
MULTILIB_MATCHES     += mcpu?ck810f=mcpu?ck810eft
MULTILIB_MATCHES     += mcpu?ck810f=march?ck810
MULTILIB_MATCHES     += mcpu?ck810f=mcpu?ck810
MULTILIB_MATCHES     += mcpu?ck810f=mcpu?ck810v
MULTILIB_MATCHES     += mcpu?ck810f=mcpu?ck810t
MULTILIB_MATCHES     += mcpu?ck810f=mcpu?ck810vf
MULTILIB_MATCHES     += mcpu?ck810f=mcpu?ck810tv
MULTILIB_MATCHES     += mcpu?ck810f=mcpu?ck810ft
MULTILIB_MATCHES     += mcpu?ck810f=mcpu?ck810ftv

# For arch ck807.
MULTILIB_MATCHES     += mcpu?ck807f=march?ck807e
MULTILIB_MATCHES     += mcpu?ck807f=march?ck807ef
MULTILIB_MATCHES     += mcpu?ck807f=march?ck807
MULTILIB_MATCHES     += mcpu?ck807f=mcpu?ck807

# For arch ck860
MULTILIB_MATCHES     += mcpu?ck860f=march?ck860
MULTILIB_MATCHES     += mcpu?ck860f=mcpu?ck860
MULTILIB_MATCHES     += mcpu?ck860f=mcpu?c860

# For option -mfloat-abi=
MULTILIB_OPTIONS     += mfloat-abi=soft/mfloat-abi=softfp/mfloat-abi=hard
MULTILIB_DIRNAMES    += soft soft-fp hard-fp

MULTILIB_EXCEPTIONS  += *mcpu=ck801/*mfloat-abi=softfp*
MULTILIB_EXCEPTIONS  += *mcpu=ck802/*mfloat-abi=softfp*
MULTILIB_EXCEPTIONS  += *mcpu=ck801/*mfloat-abi=hard*
MULTILIB_EXCEPTIONS  += *mcpu=ck802/*mfloat-abi=hard*