aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/s390
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/config/s390')
-rw-r--r--gcc/config/s390/s390.cc11
-rw-r--r--gcc/config/s390/s390.h2
-rw-r--r--gcc/config/s390/s390.opt2
3 files changed, 10 insertions, 5 deletions
diff --git a/gcc/config/s390/s390.cc b/gcc/config/s390/s390.cc
index d4e849b..0ff3fd5 100644
--- a/gcc/config/s390/s390.cc
+++ b/gcc/config/s390/s390.cc
@@ -11173,8 +11173,8 @@ s390_hard_regno_mode_ok (unsigned int regno, machine_mode mode)
}
break;
case ADDR_REGS:
- if (FRAME_REGNO_P (regno) && mode == Pmode)
- return true;
+ if (FRAME_REGNO_P (regno))
+ return mode == Pmode;
/* fallthrough */
case GENERAL_REGS:
@@ -16246,7 +16246,12 @@ s390_option_override_internal (struct gcc_options *opts,
{
/* Architecture mode defaults according to ABI. */
if (!(opts_set->x_target_flags & MASK_ZARCH))
- opts->x_target_flags |= MASK_ZARCH;
+ {
+ if (TARGET_64BIT)
+ opts->x_target_flags |= MASK_ZARCH;
+ else
+ opts->x_target_flags &= ~MASK_ZARCH;
+ }
/* Set the march default in case it hasn't been specified on cmdline. */
if (!opts_set->x_s390_arch)
diff --git a/gcc/config/s390/s390.h b/gcc/config/s390/s390.h
index 5731ae9..6f7195d 100644
--- a/gcc/config/s390/s390.h
+++ b/gcc/config/s390/s390.h
@@ -302,7 +302,7 @@ extern const char *s390_host_detect_local_cpu (int argc, const char **argv);
#define DRIVER_SELF_SPECS \
MARCH_MTUNE_NATIVE_SPECS, \
"%{!m31:%{!m64:-m" S390_TARGET_BITS_STRING "}}", \
- "%{!mesa:%{!mzarch:-mzarch}}", \
+ "%{!mesa:%{!mzarch:%{m31:-mesa}%{m64:-mzarch}}}", \
"%{!march=*:-march=z900}"
/* Target machine storage layout. */
diff --git a/gcc/config/s390/s390.opt b/gcc/config/s390/s390.opt
index f0cb07a..f064597 100644
--- a/gcc/config/s390/s390.opt
+++ b/gcc/config/s390/s390.opt
@@ -136,7 +136,7 @@ Target Mask(DEBUG_ARG) Save
Additional debug prints.
mesa
-Target RejectNegative Negative(mzarch) InverseMask(ZARCH) Warn(%<-mesa%> is deprecated and support for ESA/390 will be removed; use %<-mzarch%> instead)
+Target RejectNegative Negative(mzarch) InverseMask(ZARCH)
ESA/390 architecture.
mhard-dfp