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
116
117
|
# DP: Revert the fix for PR target/100067, breaking the ARM multilib build
--- a/src/gcc/config/arm/arm.cc
+++ b/src/gcc/config/arm/arm.cc
@@ -3298,22 +3298,21 @@ arm_configure_build_target (struct arm_b
bitmap_xor (isa_delta, cpu_isa, target->isa);
/* Ignore any bits that are quirk bits. */
bitmap_and_compl (isa_delta, isa_delta, isa_quirkbits);
- /* If the user (or the default configuration) has specified a
- specific FPU, then ignore any bits that depend on the FPU
- configuration. Do similarly if using the soft-float
- ABI. */
- if (opts->x_arm_fpu_index != TARGET_FPU_auto
- || arm_float_abi == ARM_FLOAT_ABI_SOFT)
+ /* Ignore (for now) any bits that might be set by -mfpu. */
+ bitmap_and_compl (isa_delta, isa_delta, isa_all_fpubits_internal);
+
+ /* And if the target ISA lacks floating point, ignore any
+ extensions that depend on that. */
+ if (!bitmap_bit_p (target->isa, isa_bit_vfpv2))
bitmap_and_compl (isa_delta, isa_delta, isa_all_fpbits);
if (!bitmap_empty_p (isa_delta))
{
if (warn_compatible)
warning (0, "switch %<-mcpu=%s%> conflicts "
- "with switch %<-march=%s%>",
- opts->x_arm_cpu_string,
- opts->x_arm_arch_string);
-
+ "with %<-march=%s%> switch",
+ arm_selected_cpu->common.name,
+ arm_selected_arch->common.name);
/* -march wins for code generation.
-mcpu wins for default tuning. */
if (!arm_selected_tune)
@@ -3464,10 +3463,6 @@ arm_configure_build_target (struct arm_b
auto_sbitmap fpu_bits (isa_num_bits);
arm_initialize_isa (fpu_bits, arm_selected_fpu->isa_bits);
- /* This should clear out ALL bits relating to the FPU/simd
- extensions, to avoid potentially invalid combinations later on
- that we can't match. At present we only clear out those bits
- that can be set by -mfpu. This should be fixed in GCC-12. */
bitmap_and_compl (target->isa, target->isa, isa_all_fpubits_internal);
bitmap_ior (target->isa, target->isa, fpu_bits);
}
@@ -3978,7 +3973,7 @@ arm_options_perform_arch_sanity_checks (
arm_pcs_default = ARM_PCS_AAPCS_VFP;
if (!bitmap_bit_p (arm_active_target.isa, isa_bit_vfpv2)
&& !bitmap_bit_p (arm_active_target.isa, isa_bit_mve))
- error ("%<-mfloat-abi=hard%>: selected architecture lacks an FPU");
+ error ("%<-mfloat-abi=hard%>: selected processor lacks an FPU");
}
else
arm_pcs_default = ARM_PCS_AAPCS;
--- a/src/libgomp/testsuite/libgomp.fortran/alloc-1.F90
+++ b/src/libgomp/testsuite/libgomp.fortran/alloc-1.F90
@@ -139,13 +139,12 @@
cp = omp_alloc (ONEoFIVE, &
& omp_null_allocator)
if (mod (transfer (cp, intptr), 32_c_intptr_t) /= 0) stop 17
- call c_f_pointer (cp, p, [ONEoFIVE &
+ call c_f_pointer (cq, q, [ONEoFIVE &
& / c_sizeof (i)])
p(1) = 5
p(ONEoFIVE / c_sizeof (i)) = 6
cq = omp_alloc (768_c_size_t, omp_null_allocator)
if (mod (transfer (cq, intptr), 128_c_intptr_t) /= 0) stop 18
- call c_f_pointer (cq, q, [768 / c_sizeof (i)])
q(1) = 7
q(768 / c_sizeof (i)) = 8
if (c_associated (omp_alloc (768_c_size_t, omp_null_allocator))) &
--- a/src/gcc/testsuite/g++.target/arm/arm.exp
+++ b/src/gcc/testsuite/g++.target/arm/arm.exp
@@ -35,7 +35,7 @@ if ![info exists DEFAULT_CXXFLAGS] then
global dg_runtest_extra_prunes
set dg_runtest_extra_prunes ""
-lappend dg_runtest_extra_prunes "warning: switch '-m(cpu|arch)=.*' conflicts with switch '-m(cpu|arch)=.*'"
+lappend dg_runtest_extra_prunes "warning: switch '-m(cpu|arch)=.*' conflicts with '-m(cpu|arch)=.*' switch"
# Initialize `dg'.
dg-init
--- a/src/gcc/testsuite/g++.target/arm/mve.exp
+++ b/src/gcc/testsuite/g++.target/arm/mve.exp
@@ -33,7 +33,7 @@ if ![info exists DEFAULT_CXXFLAGS] then
# This variable should only apply to tests called in this exp file.
global dg_runtest_extra_prunes
set dg_runtest_extra_prunes ""
-lappend dg_runtest_extra_prunes "warning: switch '-m(cpu|arch)=.*' conflicts with switch '-m(cpu|arch)=.*'"
+lappend dg_runtest_extra_prunes "warning: switch -m(cpu|arch)=.* conflicts with -m(cpu|arch)=.* switch"
set save-dg-do-what-default ${dg-do-what-default}
set dg-do-what-default "assemble"
--- a/src/gcc/testsuite/gcc.target/arm/arm.exp
+++ b/src/gcc/testsuite/gcc.target/arm/arm.exp
@@ -33,7 +33,7 @@ if ![info exists DEFAULT_CFLAGS] then {
# This variable should only apply to tests called in this exp file.
global dg_runtest_extra_prunes
set dg_runtest_extra_prunes ""
-lappend dg_runtest_extra_prunes "warning: switch '-m(cpu|arch)=.*' conflicts with switch '-m(cpu|arch)=.*'"
+lappend dg_runtest_extra_prunes "warning: switch '-m(cpu|arch)=.*' conflicts with '-m(cpu|arch)=.*' switch"
# Initialize `dg'.
dg-init
--- a/src/gcc/testsuite/gcc.target/arm/mve/mve.exp
+++ b/src/gcc/testsuite/gcc.target/arm/mve/mve.exp
@@ -33,7 +33,7 @@ if ![info exists DEFAULT_CFLAGS] then {
# This variable should only apply to tests called in this exp file.
global dg_runtest_extra_prunes
set dg_runtest_extra_prunes ""
-lappend dg_runtest_extra_prunes "warning: switch '-m(cpu|arch)=.*' conflicts with switch '-m(cpu|arch)=.*'"
+lappend dg_runtest_extra_prunes "warning: switch -m(cpu|arch)=.* conflicts with -m(cpu|arch)=.* switch"
set dg-do-what-default "assemble"
|