aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorKito Cheng <kito.cheng@gmail.com>2018-02-26 06:47:32 +0000
committerChung-Ju Wu <jasonwucj@gcc.gnu.org>2018-02-26 06:47:32 +0000
commit7f3101c0a87f5be1dcf1811e8e54fb4b32cd2397 (patch)
tree206cae7c20e8a74776df88d60cb774d12d0f3fd3 /gcc
parenta8a3f32d583d9fde8e94c11c118c47c702bdea04 (diff)
downloadgcc-7f3101c0a87f5be1dcf1811e8e54fb4b32cd2397.zip
gcc-7f3101c0a87f5be1dcf1811e8e54fb4b32cd2397.tar.gz
gcc-7f3101c0a87f5be1dcf1811e8e54fb4b32cd2397.tar.bz2
[NDS32] Basic support for -mcpu= and --with-cpu= options.
gcc/ * config.gcc: Add --with-cpu support for nds32 target. * config/nds32/nds32-opts.h(nds32_cpu_type): New. * config/nds32/nds32.opt: Add -mcpu= option. From-SVN: r257982
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config.gcc15
-rw-r--r--gcc/config/nds32/nds32-opts.h6
-rw-r--r--gcc/config/nds32/nds32.opt11
4 files changed, 37 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 724c476..8f1920f 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2018-02-26 Kito Cheng <kito.cheng@gmail.com>
+
+ * config.gcc: Add --with-cpu support for nds32 target.
+ * config/nds32/nds32-opts.h(nds32_cpu_type): New.
+ * config/nds32/nds32.opt: Add -mcpu= option.
+
2018-02-25 Segher Boessenkool <segher@kernel.crashing.org>
* config/rs6000/rs6000.opt (mvrsave=no, mvrsave=yes, isel=no,
diff --git a/gcc/config.gcc b/gcc/config.gcc
index c52fecf..7df1766 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -4265,7 +4265,7 @@ case "${target}" in
;;
nds32*-*-*)
- supported_defaults="arch nds32_lib"
+ supported_defaults="arch cpu nds32_lib"
# process --with-arch
case "${with_arch}" in
@@ -4278,6 +4278,19 @@ case "${target}" in
;;
esac
+ case "${with_cpu}" in
+ "")
+ with_cpu=n9
+ ;;
+ n9)
+ # OK
+ ;;
+ *)
+ echo "Cannot accept --with-cpu=$with_cpu, available values are: n9" 1>&2
+ exit 1
+ ;;
+ esac
+
# process --with-nds32-lib
case "${with_nds32_lib}" in
"")
diff --git a/gcc/config/nds32/nds32-opts.h b/gcc/config/nds32/nds32-opts.h
index 88441f2..77429ab 100644
--- a/gcc/config/nds32/nds32-opts.h
+++ b/gcc/config/nds32/nds32-opts.h
@@ -40,4 +40,10 @@ enum nds32_cmodel_type
CMODEL_LARGE
};
+/* The various ANDES CPU. */
+enum nds32_cpu_type
+{
+ CPU_N9
+};
+
#endif
diff --git a/gcc/config/nds32/nds32.opt b/gcc/config/nds32/nds32.opt
index 4787a69..459759c 100644
--- a/gcc/config/nds32/nds32.opt
+++ b/gcc/config/nds32/nds32.opt
@@ -119,6 +119,17 @@ Enum(nds32_cmodel_type) String(medium) Value(CMODEL_MEDIUM)
EnumValue
Enum(nds32_cmodel_type) String(large) Value(CMODEL_LARGE)
+mcpu=
+Target RejectNegative Joined Enum(nds32_cpu_type) Var(nds32_cpu_option) Init(CPU_N9)
+Specify the cpu for pipeline model.
+
+Enum
+Name(nds32_cpu_type) Type(enum nds32_cpu_type)
+Known cpu types (for use with the -mcpu= option):
+
+EnumValue
+Enum(nds32_cpu_type) String(n9) Value(CPU_N9)
+
mctor-dtor
Target Report
Enable constructor/destructor feature.