Age | Commit message (Collapse) | Author | Files | Lines |
|
These tests deliberately pass invalid option combinations to check
that the compiler is generating the correct diagnostic. Nevertheless,
we can improve their compatibility with other testsuite options. For
optional_thumb-1.c we use a soft-float ABI, while for
optional_thumb2.c we use arm_arch_v7em as the target architecture,
then set the architecture manually.
gcc/testsuite:
* gcc.target/arm/optional_thumb-1.c: Force a soft-float ABI.
* gcc.target/arm/optional_thumb-3.c: Check for armv7e-m compatibility,
then set the architecture explicitly.
|
|
Convert these tests to use dg-add-options for increased compatibilty.
Since they also result in an empty translation unit, override the
default testsuite options.
gcc/testsuite:
* gcc.target/arm/macro_defs0.c: Use dg-effective-target and
dg-add-options.
* gcc.target/arm/macro_defs1.c: Likewise.
* gcc.target/arm/macro_defs2.c: Likewise.
|
|
This test is specific to armv7m cores which do not support hardware
floating-point. We can improve its compatibility by having the default
options for this core specify -mfloat-abi=soft.
gcc/testsuite:
* lib/target-supports.exp (check_effective_target_arm_arch_FUNC_ok):
Use soft-float ABI for armv7m.
* gcc.target/arm/ftest-armv7m-thumb.c: Use dg-require-effective-target
to check flag compatibility.
|
|
Make this test more useful by using dg-require-effective-target/
dg-add-options.
gcc/testsuite:
* gcc.target/arm/scd42-2.c: Use modern dg- flags.
|
|
This test was explicitly setting the architecture on the command-line and
in the body of the test. In both cases this causes problems with the auto
FPU setting. Fix by using the testsuite infrastructure correctly and by
adding +fp to the pragma.
gcc/testsuite:
* gcc.target/arm/pragma_arch_switch_2.c: Use testsuite infrastructure
to set the architecture flags. Add +fp to the pragma that changes the
architecture.
|
|
These tests use pragmas adn attributes to change the architecture.
Sometimes they simply add a feature using "+crc", but other times they
try to completely reset the architecture using "arch=armv8-a+crc".
The latter fails on a hard-float ABI with -mfpu=auto because it also
clears the FP capability. Fix by adding +simd when the full
architecture is specified.
gcc/testsuite:
* gcc.target/arm/pragma_arch_attribute.c: Add +simd to pragmas that
set an explicit architecture.
* gcc.target/arm/pragma_arch_attribute_2.c: Likewise.
* gcc.target/arm/pragma_arch_attribute_3.c: Likewise.
|
|
Fix another test that was trying to set the architecture directly
rather than using the infrastructure as intended.
gcc/testsuite:
* gcc.target/arm/pr88648-asm-syntax-unified.c: It isn't necessary
to try to override the architecture flags specified by arm_arch_v7a.
|
|
Again, use the infrastructure available to improve the compatibility
of these tests.
gcc/testsuite:
* gcc.target/arm/pr78353-1.c: Use dg-add-options to manage target
flags.
* gcc.target/arm/pr78353-2.c: Likewise.
|
|
Another case where we can make better use of the infrastructure to
improve the compatibility of this test.
gcc/testsuite:
* gcc.target/arm/pr65647-2.c: Use dg-add-options to manage target
flags.
|
|
This test overrides the architecture, but fails to specify the
floating point architecture. This causes problems if -mfpu=auto is
used.
gcc/testsuite:
* gcc.target/arm/lto/pr96939_1.c: Add +simd to the architecture
specification.
|
|
gcc.target/arm/g2.c is an xscale-only test, but the test is quite old
and we have improved the infrastructure for setting up such tests now.
So make use of that to reduce the number of cases where this test fails
to run.
gcc/testsuite:
* lib/target-supports.exp (check_effective_target_arm_arch_FUNC_ok):
Add entry to check for xscale.
* gcc.target/arm/g2.c: Use it.
|
|
This test overrides the architecture, but fails to describe which
floating-point features are needed. This causes problems if the ABI
requires FP for parameter passing and -mfpu=auto is selected, so ensure
that one is specified.
gcc/testsuite:
* gcc.target/arm/attr_thumb-static2.c: Add +fp to the -march
specification.
|
|
This test overrides the architecture, but fails to describe which
floating-point features are needed. This causes problems if the ABI
requires FP for parameter passing and -mfpu=auto is selected, so ensure
that one is specified.
gcc/testsuite:
* gcc.target/arm/attr-crypto.c: Add +simd to the -march
specification.
|
|
This test overrides the architecture, but fails to describe which
floating-point features are needed. This causes problems if the ABI
requires FP for parameter passing and -mfpu=auto is selected, so ensure
that one is specified.
gcc/testsuite:
* gcc.target/arm/acle/pacbti-m-predef-11.c: Add +fp to the -march
specification.
|
|
A number of tests in the gcc testsuite, especially for arm-specific
targets, add various flags to control the architecture. These run
into problems when the compiler is configured with -mfpu=auto if the
new architecture lacks an architectural feature that implies we have
floating-point instructions.
The testsuite makes this worse as it falls foul of this requirement in
the base architecture strings provided by target-supports.exp.
To fix this we add "+fp", or something equivalent to this, to all the
base architecture specifications. The feature will be ignored if the
float ABI is set to soft.
gcc/testsuite:
* lib/target-supports.exp (check_effective_target_arm_arch_FUNC_ok):
Add base FPU specifications to all architectures that can support
one.
|
|
Add an arm-specific test to check_effective_target_hard_float for
Arm to handle cases where we only have single-precision FP in hardware.
gcc/testsuite:
* lib/target-supports.exp (check_effective_target_hard_float): Add
arm-specific test.
|
|
Some of the ACLE tests for Arm are executable, but we were only testing
that the compiler could generate code for them, not that the hardware
was capable of executing them. Fix this by adding an execution test for
suitable hardware.
gcc/testsuite:
* lib/target-supports.exp (check_effective_target_arm_arch_v6t2_hw_ok):
New function.
* gcc.target/arm/acle/data-intrinsics-armv6.c: Use it.
* gcc.target/arm/acle/data-intrinsics-rbit.c: Likewise.
|
|
We are not correctly handling differing address spaces in dependence
analysis runtime alias check generation so refuse to do that.
PR tree-optimization/112495
* tree-data-ref.cc (runtime_alias_check_p): Reject checks
between different address spaces.
* gcc.target/i386/pr112495.c: New testcase.
|
|
When passing an aggregate to a implicitly declared function that's
later declared as receiving a register type we can run into a
sanity assert that cannot hold for such gross mismatches. Instead
of asserting avoid emitting a debug temp that's invalid.
PR middle-end/112487
* tree-inline.cc (setup_one_parameter): When the parameter
is unused only insert a debug bind when there's not a gross
mismatch in value and declared parameter type. Do not assert
there effectively isn't.
* gcc.dg/torture/pr112487.c: New testcase.
|
|
This was fixed as part of the PR111000 fix.
PR tree-optimization/111792
PR tree-optimization/111000
* gcc.dg/torture/pr111792.c: New testcase.
|
|
Realize that init tests are wrong by my previous mistakes.
Fix them and committed.
gcc/testsuite/ChangeLog:
* gcc.target/riscv/rvv/autovec/vls/def.h: Fix init test.
* gcc.target/riscv/rvv/autovec/vls/init-1.c: Ditto.
* gcc.target/riscv/rvv/autovec/vls/init-2.c: Ditto.
* gcc.target/riscv/rvv/autovec/vls/init-3.c: Ditto.
* gcc.target/riscv/rvv/autovec/vls/init-4.c: Ditto.
* gcc.target/riscv/rvv/autovec/vls/init-5.c: Ditto.
* gcc.target/riscv/rvv/autovec/vls/init-6.c: Ditto.
* gcc.target/riscv/rvv/autovec/vls/init-7.c: Ditto.
|
|
gcc/ChangeLog:
* config/riscv/riscv-v.cc
(rvv_builder::combine_sequence_use_merge_profitable_p): New function.
(expand_vector_init_merge_combine_sequence): Ditto.
(expand_vec_init): Adapt for new optimization.
gcc/testsuite/ChangeLog:
* gcc.target/riscv/rvv/autovec/vls-vlmax/combine-merge-1.c: New test.
* gcc.target/riscv/rvv/autovec/vls-vlmax/combine-merge-2.c: New test.
* gcc.target/riscv/rvv/autovec/vls-vlmax/combine-merge_run-1.c: New test.
* gcc.target/riscv/rvv/autovec/vls-vlmax/combine-merge_run-2.c: New test.
* gcc.target/riscv/rvv/autovec/vls/combine-merge-1.c: New test.
* gcc.target/riscv/rvv/autovec/vls/combine-merge-10.c: New test.
* gcc.target/riscv/rvv/autovec/vls/combine-merge-11.c: New test.
* gcc.target/riscv/rvv/autovec/vls/combine-merge-12.c: New test.
* gcc.target/riscv/rvv/autovec/vls/combine-merge-13.c: New test.
* gcc.target/riscv/rvv/autovec/vls/combine-merge-14.c: New test.
* gcc.target/riscv/rvv/autovec/vls/combine-merge-2.c: New test.
* gcc.target/riscv/rvv/autovec/vls/combine-merge-3.c: New test.
* gcc.target/riscv/rvv/autovec/vls/combine-merge-4.c: New test.
* gcc.target/riscv/rvv/autovec/vls/combine-merge-5.c: New test.
* gcc.target/riscv/rvv/autovec/vls/combine-merge-6.c: New test.
* gcc.target/riscv/rvv/autovec/vls/combine-merge-7.c: New test.
* gcc.target/riscv/rvv/autovec/vls/combine-merge-8.c: New test.
* gcc.target/riscv/rvv/autovec/vls/combine-merge-9.c: New test.
|
|
gcc/ChangeLog:
* config/i386/i386-expand.cc
(ix86_expand_vector_init_duplicate): Handle V4HF/V4BF and
V2HF/V2BF.
(ix86_expand_vector_init_one_nonzero): Ditto.
(ix86_expand_vector_init_one_var): Ditto.
(ix86_expand_vector_init_general): Ditto.
(ix86_expand_vector_set_var): Ditto.
(ix86_expand_vector_set): Ditto.
(ix86_expand_vector_extract): Ditto.
* config/i386/mmx.md
(mmxdoublevecmode): Extend to V4HF/V4BF/V2HF/V2BF.
(*mmx_pinsrw): Extend to V4FI_64, add a new alternative (&x,
x, x), add a new define_split after the pattern.
(*mmx_pextrw<mode>): New define_insn.
(mmx_pshufw_1): Rename to ..
(mmx_pshufw<mode>_1): .. this, extend to V4FI_64.
(*mmx_pblendw64): Extend to V4FI_64.
(*vec_dup<mode>): New define_insn.
(vec_setv4hi): Rename to ..
(vec_set<mode>): .. this, and extend to V4FI_64
(vec_extractv4hihi): Rename to ..
(vec_extract<mode><mmxscalarmodelower>): .. this, and extend
to V4FI_64.
(vec_init<mode><mmxscalarmodelower>): New define_insn.
(*pinsrw): Extend to V2FI_32, add a new alternative (&x,
x, x), and add a new define_split after it.
(*pextrw<mode>): New define_insn.
(vec_setv2hi): Rename to ..
(vec_set<mode>): .. this, extend to V2FI_32.
(vec_extractv2hihi): Rename to ..
(vec_extract<mode><mmxscalarmodelower>): .. this, extend to
V2FI_32.
(*punpckwd): Extend to V2FI_32.
(*pshufw_1): Rename to ..
(*pshufw<mode>_1): .. this, extend to V2FI_32.
(vec_initv2hihi): Rename to ..
(vec_init<mode><mmxscalarmodelower>): .. this, and extend to
V2FI_32.
(*vec_dup<mode>): New define_insn.
* config/i386/sse.md (*vec_extract<mode>): Refine constraint
from v to Yw.
gcc/testsuite/ChangeLog:
* gcc.target/i386/part-vect-vec_elem-1.c: New test.
* gcc.target/i386/part-vect-vec_elem-2.c: New test.
|
|
This patch improves the code generated for DImode right shifts (both
arithmetic and logical) by a single bit, and also for DImode rotates
(both left and right) by a single bit. In approach, this is similar
to the recently added DImode left shift by a single bit patch, but
also builds upon the x86's UNSPEC carry flag representation:
https://gcc.gnu.org/pipermail/gcc-patches/2023-October/632169.html
The benefits can be seen from the four new test cases:
long long ashr(long long x) { return x >> 1; }
Before:
ashr: asl r2,r1,31
lsr_s r0,r0
or_s r0,r0,r2
j_s.d [blink]
asr_s r1,r1,1
After:
ashr: asr.f r1,r1
j_s.d [blink]
rrc r0,r0
unsigned long long lshr(unsigned long long x) { return x >> 1; }
Before:
lshr: asl r2,r1,31
lsr_s r0,r0
or_s r0,r0,r2
j_s.d [blink]
lsr_s r1,r1
After:
lshr: lsr.f r1,r1
j_s.d [blink]
rrc r0,r0
unsigned long long rotl(unsigned long long x) { return (x<<1) | (x>>63); }
Before:
rotl: lsr r12,r1,31
lsr r2,r0,31
asl_s r3,r0,1
asl_s r1,r1,1
or r0,r12,r3
j_s.d [blink]
or_s r1,r1,r2
After:
rotl: add.f r0,r0,r0
adc.f r1,r1,r1
j_s.d [blink]
add.cs r0,r0,1
unsigned long long rotr(unsigned long long x) { return (x>>1) | (x<<63); }
Before:
rotr: asl r12,r1,31
asl r2,r0,31
lsr_s r3,r0
lsr_s r1,r1
or r0,r12,r3
j_s.d [blink]
or_s r1,r1,r2
After:
rotr: asr.f 0,r0
rrc.f r1,r1
j_s.d [blink]
rrc r0,r0
On CPUs without a barrel shifter the improvements are even better.
2023-11-13 Roger Sayle <roger@nextmovesoftware.com>
gcc/ChangeLog
* config/arc/arc.md (UNSPEC_ARC_CC_NEZ): New UNSPEC that
represents the carry flag being set if the operand is non-zero.
(adc_f): New define_insn representing adc with updated flags.
(ashrdi3): New define_expand that only handles shifts by 1.
(ashrdi3_cnt1): New pre-reload define_insn_and_split.
(lshrdi3): New define_expand that only handles shifts by 1.
(lshrdi3_cnt1): New pre-reload define_insn_and_split.
(rrcsi2): New define_insn for rrc (SImode rotate right through carry).
(rrcsi2_carry): Likewise for rrc.f, as above but updating flags.
(rotldi3): New define_expand that only handles rotates by 1.
(rotldi3_cnt1): New pre-reload define_insn_and_split.
(rotrdi3): New define_expand that only handles rotates by 1.
(rotrdi3_cnt1): New pre-reload define_insn_and_split.
(lshrsi3_cnt1_carry): New define_insn for lsr.f.
(ashrsi3_cnt1_carry): New define_insn for asr.f.
(btst_0_carry): New define_insn for asr.f without result.
gcc/testsuite/ChangeLog
* gcc.target/arc/ashrdi3-1.c: New test case.
* gcc.target/arc/lshrdi3-1.c: Likewise.
* gcc.target/arc/rotldi3-1.c: Likewise.
* gcc.target/arc/rotrdi3-1.c: Likewise.
|
|
This patch implements a arc_fold_builtin target hook to allow ARC
builtins to be folded at the tree-level. Currently this function
converts __builtin_arc_swap into a LROTATE_EXPR at the tree-level,
and evaluates __builtin_arc_norm and __builtin_arc_normw of integer
constant arguments at compile-time. Because ARC_BUILTIIN_SWAP is
now handled at the tree-level, UNSPEC_ARC_SWAP no longer used,
allowing it and the "swap" define_insn to be removed.
An example benefit of folding things at compile-time is that
calling __builtin_arc_swap on the result of __builtin_arc_swap
now eliminates both and generates no code, and likewise calling
__builtin_arc_swap of a constant integer argument is evaluated
at compile-time.
2023-11-13 Roger Sayle <roger@nextmovesoftware.com>
gcc/ChangeLog
* config/arc/arc.cc (TARGET_FOLD_BUILTIN): Define to
arc_fold_builtin.
(arc_fold_builtin): New function. Convert ARC_BUILTIN_SWAP
into a rotate. Evaluate ARC_BUILTIN_NORM and
ARC_BUILTIN_NORMW of constant arguments.
* config/arc/arc.md (UNSPEC_ARC_SWAP): Delete.
(normw): Make output template/assembler whitespace consistent.
(swap): Remove define_insn, only use of SWAP UNSPEC.
* config/arc/builtins.def: Tweak indentation.
(SWAP): Expand using rotlsi2_cnt16 instead of using swap.
gcc/testsuite/ChangeLog
* gcc.target/arc/builtin_norm-1.c: New test case.
* gcc.target/arc/builtin_norm-2.c: Likewise.
* gcc.target/arc/builtin_normw-1.c: Likewise.
* gcc.target/arc/builtin_normw-2.c: Likewise.
* gcc.target/arc/builtin_swap-1.c: Likewise.
* gcc.target/arc/builtin_swap-2.c: Likewise.
* gcc.target/arc/builtin_swap-3.c: Likewise.
|
|
This patch improves register pressure during reload, inspired by PR 97756.
Normally, a double-word right-shift by a constant produces a double-word
result, the highpart of which is dead when followed by a truncation.
The dead code calculating the high part gets cleaned up post-reload, so
the issue isn't normally visible, except for the increased register
pressure during reload, sometimes leading to odd register assignments.
Providing a post-reload splitter, which clobbers a single wordmode
result register instead of a doubleword result register, helps (a bit).
An example demonstrating this effect is:
unsigned long foo (__uint128_t n)
{
unsigned long a = n & MASK60;
unsigned long b = (n >> 60);
b = b & MASK60;
unsigned long c = (n >> 120);
return a+b+c;
}
which currently with -O2 generates (13 instructions):
foo: movabsq $1152921504606846975, %rcx
xchgq %rdi, %rsi
movq %rsi, %rax
shrdq $60, %rdi, %rax
movq %rax, %rdx
movq %rsi, %rax
movq %rdi, %rsi
andq %rcx, %rax
shrq $56, %rsi
andq %rcx, %rdx
addq %rsi, %rax
addq %rdx, %rax
ret
with this patch, we generate one less mov (12 instructions):
foo: movabsq $1152921504606846975, %rcx
xchgq %rdi, %rsi
movq %rdi, %rdx
movq %rsi, %rax
movq %rdi, %rsi
shrdq $60, %rdi, %rdx
andq %rcx, %rax
shrq $56, %rsi
addq %rsi, %rax
andq %rcx, %rdx
addq %rdx, %rax
ret
The significant difference is easier to see via diff:
< shrdq $60, %rdi, %rax
< movq %rax, %rdx
---
> shrdq $60, %rdi, %rdx
Admittedly a single "mov" isn't much of a saving on modern architectures,
but as demonstrated by the PR, people still track the number of them.
2023-11-13 Roger Sayle <roger@nextmovesoftware.com>
gcc/ChangeLog
* config/i386/i386.md (<insn><dwi>3_doubleword_lowpart): New
define_insn_and_split to optimize register usage of doubleword
right shifts followed by truncation.
|
|
I've noticed the list of unused letters still list j, even when that
constraint letter is now the first letter of jr, jR, jm, j<, j>, jo, jV, jp,
ja, jb and jc constraints.
2023-11-13 Jakub Jelinek <jakub@redhat.com>
* config/i386/constraints.md: Remove j constraint letter from list of
unused letters.
|
|
This change updates the gcc.c-torture/execute/ to avoid obsolete
language constructs. In the changed tests, use of the features
appears to be accidental, and updating allows the tests run with
the default compiler flags.
gcc/testsuite/
* gcc.c-torture/execute/20000112-1.c (main): Add missing
int and void types.
* gcc.c-torture/execute/20000113-1.c (foobar): Add missing
void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/20000314-2.c (main): Likewise.
* gcc.c-torture/execute/20000402-1.c (main): Likewise.
* gcc.c-torture/execute/20000403-1.c (main): Likewise.
* gcc.c-torture/execute/20000503-1.c (main): Likewise.
* gcc.c-torture/execute/20000605-2.c (main): Likewise.
* gcc.c-torture/execute/20000717-1.c (main): Likewise.
* gcc.c-torture/execute/20000717-5.c (main): Likewise.
* gcc.c-torture/execute/20000726-1.c (main): Likewise.
* gcc.c-torture/execute/20000914-1.c(blah): Add missing
void types.
(main): Add missing int and void types.
* gcc.c-torture/execute/20001009-1.c (main): Likewise.
* gcc.c-torture/execute/20001013-1.c (main): Likewise.
* gcc.c-torture/execute/20001031-1.c (main): Likewise.
* gcc.c-torture/execute/20010221-1.c (main): Likewise.
* gcc.c-torture/execute/20010723-1.c (main): Likewise.
* gcc.c-torture/execute/20010915-1.c (s): Call
__builtin_strcmp instead of strcmp.
* gcc.c-torture/execute/20010924-1.c (main): Add missing
int and void types.
* gcc.c-torture/execute/20011128-1.c (main): Likewise.
* gcc.c-torture/execute/20020226-1.c (main): Likewise.
* gcc.c-torture/execute/20020328-1.c (foo): Add missing
void types.
* gcc.c-torture/execute/20020406-1.c (DUPFFexgcd): Call
__builtin_printf instead of printf.
(main): Likewise.
* gcc.c-torture/execute/20020508-1.c (main): Add missing
int and void types.
* gcc.c-torture/execute/20020508-2.c (main): Likewise.
* gcc.c-torture/execute/20020508-3.c (main): Likewise.
* gcc.c-torture/execute/20020611-1.c (main): Likewise.
* gcc.c-torture/execute/20021010-2.c (main): Likewise.
* gcc.c-torture/execute/20021113-1.c (foo): Add missing
void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/20021120-3.c (foo): Call
__builtin_sprintf instead of sprintf.
* gcc.c-torture/execute/20030125-1.c (main): Add missing
int and void types.
* gcc.c-torture/execute/20030216-1.c (main): Likewise.
* gcc.c-torture/execute/20030404-1.c (main): Likewise.
* gcc.c-torture/execute/20030606-1.c (main): Likewise.
Call __builtin_memset instead of memset.
* gcc.c-torture/execute/20030828-1.c (main): Add missing int
and void types.
* gcc.c-torture/execute/20030828-2.c (main): Likewise.
* gcc.c-torture/execute/20031012-1.c: Call __builtin_strlen
instead of strlen.
* gcc.c-torture/execute/20031211-1.c (main): Add missing int
and void types.
* gcc.c-torture/execute/20040319-1.c (main): Likewise.
* gcc.c-torture/execute/20040411-1.c (sub1): Call
__builtin_memcpy instead of memcpy.
* gcc.c-torture/execute/20040423-1.c (sub1): Likewise.
* gcc.c-torture/execute/20040917-1.c (main): Add missing int
and void types.
* gcc.c-torture/execute/20050131-1.c (main): Likewise.
* gcc.c-torture/execute/20051113-1.c (main): Likewise.
* gcc.c-torture/execute/20121108-1.c (main): Call
__builtin_printf instead of printf.
* gcc.c-torture/execute/20170401-2.c (main): Add missing int
and void types.
* gcc.c-torture/execute/900409-1.c (main): Likewise.
* gcc.c-torture/execute/920202-1.c (f): Add int return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/920302-1.c (execute): Add void return
type.
(main): Add missing int and void types.
* gcc.c-torture/execute/920410-1.c (main): Likewise.
* gcc.c-torture/execute/920501-2.c (main): Likewise.
* gcc.c-torture/execute/920501-3.c (execute): Add void return
type.
(main): Add missing int and void types.
* gcc.c-torture/execute/920501-5.c (x): Add int return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/920501-6.c (main): Add int return
type.
* gcc.c-torture/execute/920501-8.c (main): Add missing
int and void types. Call __builtin_strcmp instead of strcmp.
* gcc.c-torture/execute/920506-1.c (main): Add missing
int and void types.
* gcc.c-torture/execute/920612-2.c (main): Likewise.
* gcc.c-torture/execute/920618-1.c (main): Likewise.
* gcc.c-torture/execute/920625-1.c (main): Likewise.
* gcc.c-torture/execute/920710-1.c (main): Likewise.
* gcc.c-torture/execute/920721-1.c (main): Likewise.
* gcc.c-torture/execute/920721-4.c (main): Likewise.
* gcc.c-torture/execute/920726-1.c (first, second): Call
__builtin_strlen instead of strlen.
(main): Add missing int and void types. Call __builtin_strcmp
instead of strcmp.
* gcc.c-torture/execute/920810-1.c (main): Add missing
int and void types.
* gcc.c-torture/execute/920829-1.c (main): Likewise.
* gcc.c-torture/execute/920908-1.c (main): Likewise.
* gcc.c-torture/execute/920922-1.c (main): Likewise.
* gcc.c-torture/execute/920929-1.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/921006-1.c (main): Likewise. Call
__builtin_strcmp instead of strcmp.
* gcc.c-torture/execute/921007-1.c (main): Add missing
int and void types.
* gcc.c-torture/execute/921016-1.c (main): Likewise.
* gcc.c-torture/execute/921019-1.c (main): Likewise.
* gcc.c-torture/execute/921019-2.c (main): Likewise.
* gcc.c-torture/execute/921029-1.c (main): Likewise.
* gcc.c-torture/execute/921104-1.c (main): Likewise.
* gcc.c-torture/execute/921112-1.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/921113-1.c (w, f1, f2, gitter): Add
void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/921117-1.c (check): Call
__builtin_strcmp instead of strcmp.
(main): Add missing int and void types. Call __builtin_strcpy
instead of strcpy.
* gcc.c-torture/execute/921123-2.c (main): Add missing
int and void types.
* gcc.c-torture/execute/921202-2.c (main): Likewise.
* gcc.c-torture/execute/921204-1.c (main): Likewise.
* gcc.c-torture/execute/921208-1.c (main): Likewise.
* gcc.c-torture/execute/930123-1.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/930126-1.c (main): Likewise.
* gcc.c-torture/execute/930406-1.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/930408-1.c (p, f): Add missing void
types.
(main): Add missing int and void types.
* gcc.c-torture/execute/930429-1.c (main): Likewise.
* gcc.c-torture/execute/930603-2.c (f): Add missing void
types.
(main): Add missing int and void types.
* gcc.c-torture/execute/930608-1.c (main): Likewise.
* gcc.c-torture/execute/930614-1.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/930614-2.c (main): Likewise.
* gcc.c-torture/execute/930622-2.c (main): Likewise.
* gcc.c-torture/execute/930628-1.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/930725-1.c (main): Likewise. Call
__builtin_strcmp instead of strcmp.
* gcc.c-torture/execute/930930-2.c (main): Add missing
int and void types.
* gcc.c-torture/execute/931002-1.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/931004-1.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/931004-10.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/931004-11.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/931004-12.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/931004-13.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/931004-14.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/931004-2.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/931004-3.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/931004-4.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/931004-5.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/931004-6.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/931004-7.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/931004-8.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/931004-9.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/931005-1.c (main): Likewise.
* gcc.c-torture/execute/931110-1.c (main): Likewise.
* gcc.c-torture/execute/931110-2.c (main): Likewise.
* gcc.c-torture/execute/941014-1.c (main): Likewise.
* gcc.c-torture/execute/941014-2.c (main): Likewise.
* gcc.c-torture/execute/941015-1.c (main): Likewise.
* gcc.c-torture/execute/941021-1.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/941025-1.c (main): Likewise.
* gcc.c-torture/execute/941031-1.c (main): Likewise.
* gcc.c-torture/execute/950221-1.c (g2): Add int return type.
(f): Add missing void types. Call __builtin_strcpy instead
of strcpy.
(main): Add missing int and void types.
* gcc.c-torture/execute/950426-2.c (main): Likewise.
* gcc.c-torture/execute/950503-1.c (main): Likewise.
* gcc.c-torture/execute/950511-1.c (main): Likewise.
* gcc.c-torture/execute/950607-1.c (main): Likewise.
* gcc.c-torture/execute/950607-2.c (main): Likewise.
* gcc.c-torture/execute/950612-1.c (main): Likewise.
* gcc.c-torture/execute/950628-1.c (main): Likewise.
* gcc.c-torture/execute/950704-1.c (main): Likewise.
* gcc.c-torture/execute/950706-1.c (main): Likewise.
* gcc.c-torture/execute/950710-1.c (main): Likewise.
* gcc.c-torture/execute/950714-1.c (main): Likewise.
* gcc.c-torture/execute/950809-1.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/950906-1.c (g, f): Add void return
type.
(main): Add missing int and void types.
* gcc.c-torture/execute/950915-1.c (main): Likewise.
* gcc.c-torture/execute/950929-1.c (main): Likewise.
* gcc.c-torture/execute/951003-1.c (f): Add missing int
parameter type.
(main): Add missing int and void types.
* gcc.c-torture/execute/951115-1.c (g, f): Add void return
type.
(main): Add missing int and void types.
* gcc.c-torture/execute/951204-1.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/960116-1.c (p): Add int return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/960117-1.c (main): Likewise.
* gcc.c-torture/execute/960209-1.c (main): Likewise.
* gcc.c-torture/execute/960215-1.c (main): Likewise.
* gcc.c-torture/execute/960219-1.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/960301-1.c (main): Likewise.
* gcc.c-torture/execute/960302-1.c (foo, main): Add missing
int and void types.
* gcc.c-torture/execute/960311-1.c (main): Likewise.
* gcc.c-torture/execute/960311-2.c (main): Likewise.
* gcc.c-torture/execute/960311-3.c (main): Likewise.
* gcc.c-torture/execute/960312-1.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/960317-1.c (main): Likewise.
* gcc.c-torture/execute/960321-1.c (main): Likewise.
* gcc.c-torture/execute/960326-1.c (main): Likewise.
* gcc.c-torture/execute/960327-1.c (g, main): Add missing
int and void types.
(f): Add missing void types.
* gcc.c-torture/execute/960405-1.c (main): Add missing
int and void types.
* gcc.c-torture/execute/960416-1.c (main): Likewise.
* gcc.c-torture/execute/960419-1.c (main): Likewise.
* gcc.c-torture/execute/960419-2.c (main): Likewise.
* gcc.c-torture/execute/960512-1.c (main): Likewise.
* gcc.c-torture/execute/960513-1.c (main): Likewise.
* gcc.c-torture/execute/960521-1.c (f): Add missing void
types.
(main): Add missing int and void types.
* gcc.c-torture/execute/960608-1.c (f): Add int return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/960801-1.c (main): Likewise.
* gcc.c-torture/execute/960802-1.c (main): Likewise.
* gcc.c-torture/execute/960909-1.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/961004-1.c (main): Likewise.
* gcc.c-torture/execute/961017-1.c (main): Likewise.
* gcc.c-torture/execute/961017-2.c (main): Likewise.
* gcc.c-torture/execute/961026-1.c (main): Likewise.
* gcc.c-torture/execute/961122-1.c (addhi, subhi): Add void
return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/961122-2.c (main): Likewise.
* gcc.c-torture/execute/961125-1.c (main): Likewise.
* gcc.c-torture/execute/961206-1.c (main): Likewise.
* gcc.c-torture/execute/961213-1.c (main): Likewise.
* gcc.c-torture/execute/970214-1.c (main): Likewise.
* gcc.c-torture/execute/970214-2.c (main): Likewise.
* gcc.c-torture/execute/970217-1.c (sub): Add int return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/970923-1.c (main): Likewise.
* gcc.c-torture/execute/980223.c (main): Likewise.
* gcc.c-torture/execute/980506-1.c (main): Likewise.
* gcc.c-torture/execute/980506-2.c (main): Likewise.
* gcc.c-torture/execute/980506-3.c (build_lookup): Call
__builtin_strlen instead of strlen and __builtin_memset
instead of memset.
* gcc.c-torture/execute/980526-3.c (main): Likewise.
* gcc.c-torture/execute/980602-1.c (main): Likewise.
* gcc.c-torture/execute/980604-1.c (main): Likewise.
* gcc.c-torture/execute/980605-1.c (dummy): Add missing int
parameter type.
(main): Add missing int and void types.
* gcc.c-torture/execute/980701-1.c (ns_name_skip): Add missing
int return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/980709-1.c (main): Likewise.
* gcc.c-torture/execute/990117-1.c (main): Likewise.
* gcc.c-torture/execute/990127-1.c (main): Likewise.
* gcc.c-torture/execute/990128-1.c (main): Likewise.
* gcc.c-torture/execute/990130-1.c (main): Likewise.
* gcc.c-torture/execute/990324-1.c (main): Likewise.
* gcc.c-torture/execute/990524-1.c (main): Likewise.
* gcc.c-torture/execute/990531-1.c (main): Likewise.
* gcc.c-torture/execute/990628-1.c (fetch, load_data): Call
__builtin_memset instead of memset.
(main): Add missing int and void types.
* gcc.c-torture/execute/991019-1.c (main): Likewise.
* gcc.c-torture/execute/991023-1.c (foo, main): Likewise.
* gcc.c-torture/execute/991112-1.c (isprint): Declare.
* gcc.c-torture/execute/991118-1.c (main): Add missing
int and void types.
* gcc.c-torture/execute/alias-1.c (ptr2): Add cast to float *
in initializer.
(typepun): Add missing void types.
(main): Add missing int and void types.
* gcc.c-torture/execute/alias-2.c (main): Likewise.
* gcc.c-torture/execute/alias-3.c (inc): Add missing
void types.
* gcc.c-torture/execute/alias-4.c (main): Add missing int
return type.
* gcc.c-torture/execute/arith-1.c (main): Add missing
int and void types.
* gcc.c-torture/execute/arith-rand-ll.c (main): Likewise.
* gcc.c-torture/execute/arith-rand.c (main): Likewise.
* gcc.c-torture/execute/bf-layout-1.c (main): Likewise.
* gcc.c-torture/execute/bf-pack-1.c (foo): Add missing
void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/bf-sign-1.c (main): Likewise.
* gcc.c-torture/execute/bf-sign-2.c (main): Likewise.
* gcc.c-torture/execute/bf64-1.c (main): Likewise.
* gcc.c-torture/execute/builtin-prefetch-2.c (stat_int_arr):
Add missing int array element type.
* gcc.c-torture/execute/builtin-prefetch-3.c (stat_int_arr):
Likewise.
* gcc.c-torture/execute/cbrt.c (main): Add missing int and
void types.
* gcc.c-torture/execute/complex-1.c (main): Likewise.
* gcc.c-torture/execute/complex-2.c (main): Likewise.
* gcc.c-torture/execute/complex-3.c (main): Likewise.
* gcc.c-torture/execute/complex-4.c (main): Likewise.
* gcc.c-torture/execute/complex-5.c (main): Likewise.
* gcc.c-torture/execute/compndlit-1.c (main): Likewise.
* gcc.c-torture/execute/conversion.c (test_integer_to_float)
(test_longlong_integer_to_float, test_float_to_integer)
(test_float_to_longlong_integer): Add missing void return
type.
(main): Add missing int and void types.
* gcc.c-torture/execute/cvt-1.c (main): Likewise.
* gcc.c-torture/execute/divconst-1.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/divconst-2.c (main): Likewise.
* gcc.c-torture/execute/divconst-3.c (main): Likewise.
* gcc.c-torture/execute/enum-1.c (main): Likewise.
* gcc.c-torture/execute/func-ptr-1.c (main): Likewise.
* gcc.c-torture/execute/ieee/20011123-1.c (main): Likewise.
* gcc.c-torture/execute/ieee/920518-1.c (main): Likewise.
* gcc.c-torture/execute/ieee/920810-1.c (main): Likewise.
Call __builtin_strcmp instead of strcmp.
* gcc.c-torture/execute/ieee/930529-1.c (main): Add missing
int and void types.
* gcc.c-torture/execute/ieee/fp-cmp-1.c (main): Likewise.
* gcc.c-torture/execute/ieee/fp-cmp-2.c (main): Likewise.
* gcc.c-torture/execute/ieee/fp-cmp-3.c (main): Likewise.
* gcc.c-torture/execute/ieee/fp-cmp-6.c (main): Likewise.
* gcc.c-torture/execute/ieee/fp-cmp-9.c (main): Likewise.
* gcc.c-torture/execute/ieee/minuszero.c (main): Likewise.
* gcc.c-torture/execute/ieee/mzero2.c (expect): Call
__builtin_memcmp instead of memcmp.
(main): Add missing int and void types.
* gcc.c-torture/execute/ieee/mzero3.c (main): Likewise.
(expectd, expectf): Call __builtin_memcmp instead of memcmp.
* gcc.c-torture/execute/ieee/mzero5.c (negzero_check):
Likewise.
* gcc.c-torture/execute/ieee/rbug.c (main): Add missing
int and void types.
* gcc.c-torture/execute/index-1.c (main): Likewise.
* gcc.c-torture/execute/loop-1.c (main): Likewise.
* gcc.c-torture/execute/loop-2b.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/loop-6.c (main): Likewise.
* gcc.c-torture/execute/loop-7.c (main): Likewise.
* gcc.c-torture/execute/lto-tbaa-1.c (use_a, set_b, use_c):
Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/memcpy-1.c (main): Likewise.
* gcc.c-torture/execute/memcpy-2.c (main): Likewise.
* gcc.c-torture/execute/memcpy-bi.c (main): Likewise.
* gcc.c-torture/execute/memset-1.c (main): Likewise.
* gcc.c-torture/execute/memset-2.c: Include <string.h>.
* gcc.c-torture/execute/memset-3.c: Likewise.
* gcc.c-torture/execute/nest-stdar-1.c (main): Add missing
int and void types.
* gcc.c-torture/execute/nestfunc-1.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/packed-1.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/pr15262-1.c (main): Likewise. Call
__builtin_malloc instead of malloc.
* gcc.c-torture/execute/pr15262-2.c (foo): Add int return
type.
(main): Add missing int and void types.
* gcc.c-torture/execute/pr15262.c (main): Likewise.
* gcc.c-torture/execute/pr17252.c (main): Likewise.
* gcc.c-torture/execute/pr21331.c (main): Likewise.
* gcc.c-torture/execute/pr34176.c (foo): Add missing int
type to definition of foo.
* gcc.c-torture/execute/pr42231.c (max): Add missing int type
to definition.
* gcc.c-torture/execute/pr42614.c (expect_func): Call
__builtin_abs instead of abs.
* gcc.c-torture/execute/pr54937.c (t): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/ptr-arith-1.c (main): Likewise.
* gcc.c-torture/execute/regstack-1.c (main): Likewise.
* gcc.c-torture/execute/scope-1.c (f): Add missing void types.
(main): Add missing int and void types.
* gcc.c-torture/execute/simd-5.c (main): Call __builtin_memcmp
instead of memcmp.
* gcc.c-torture/execute/strcmp-1.c (main): Add missing
int and void types.
* gcc.c-torture/execute/strcpy-1.c (main): Likewise.
* gcc.c-torture/execute/strct-pack-1.c (main): Likewise.
* gcc.c-torture/execute/strct-pack-2.c (main): Likewise.
* gcc.c-torture/execute/strct-pack-4.c (main): Likewise.
* gcc.c-torture/execute/strct-stdarg-1.c (f): Add void return
type.
(main): Add missing int and void types.
* gcc.c-torture/execute/strct-varg-1.c (f): Add void return
type.
(main): Add missing int and void types.
* gcc.c-torture/execute/strlen-1.c (main): Likewise.
* gcc.c-torture/execute/strncmp-1.c (main): Likewise.
* gcc.c-torture/execute/struct-ini-1.c (main): Likewise.
* gcc.c-torture/execute/struct-ini-2.c (main): Likewise.
* gcc.c-torture/execute/struct-ini-3.c (main): Likewise.
* gcc.c-torture/execute/struct-ini-4.c (main): Likewise.
* gcc.c-torture/execute/struct-ret-1.c (main): Likewise.
* gcc.c-torture/execute/struct-ret-2.c (main): Likewise.
* gcc.c-torture/execute/va-arg-1.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/va-arg-10.c (main): Likewise.
* gcc.c-torture/execute/va-arg-2.c (main): Likewise.
* gcc.c-torture/execute/va-arg-4.c (main): Likewise.
* gcc.c-torture/execute/va-arg-5.c (va_double)
(va_long_double): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/va-arg-6.c (f): Add void return type.
(main): Add missing int and void types.
* gcc.c-torture/execute/va-arg-9.c (main): Likewise.
* gcc.c-torture/execute/widechar-1.c (main): Likewise.
|
|
The execute tests use abort/exit to report failure/success, but
they generally do not declare these functions (or include <stdlib.h>).
This change adds declarations as appropriate.
It would have been possible to switch to __builtin_abort and
__builtin_exit instead. Existing practice varies. Adding the
declarations makes it easier to write the GNU-style commit message
because it is not necessary to mention the function with the call
site.
Instead of this change, it would be possible to create a special
header file with the declarations that is included during the
test file compilation using -include, but that would mean that
many tests would no longer build standalone.
gcc/testsuite/ChangeLog:
* gcc.c-torture/execute/20000112-1.c: Declare exit and abort
as appropriate.
* gcc.c-torture/execute/20000113-1.c: Likewise.
* gcc.c-torture/execute/20000205-1.c: Likewise.
* gcc.c-torture/execute/20000217-1.c: Likewise.
* gcc.c-torture/execute/20000223-1.c: Likewise.
* gcc.c-torture/execute/20000224-1.c: Likewise.
* gcc.c-torture/execute/20000225-1.c: Likewise.
* gcc.c-torture/execute/20000227-1.c: Likewise.
* gcc.c-torture/execute/20000313-1.c: Likewise.
* gcc.c-torture/execute/20000314-1.c: Likewise.
* gcc.c-torture/execute/20000314-2.c: Likewise.
* gcc.c-torture/execute/20000314-3.c: Likewise.
* gcc.c-torture/execute/20000402-1.c: Likewise.
* gcc.c-torture/execute/20000403-1.c: Likewise.
* gcc.c-torture/execute/20000412-1.c: Likewise.
* gcc.c-torture/execute/20000412-2.c: Likewise.
* gcc.c-torture/execute/20000412-4.c: Likewise.
* gcc.c-torture/execute/20000412-5.c: Likewise.
* gcc.c-torture/execute/20000412-6.c: Likewise.
* gcc.c-torture/execute/20000419-1.c: Likewise.
* gcc.c-torture/execute/20000422-1.c: Likewise.
* gcc.c-torture/execute/20000503-1.c: Likewise.
* gcc.c-torture/execute/20000511-1.c: Likewise.
* gcc.c-torture/execute/20000519-1.c: Likewise.
* gcc.c-torture/execute/20000519-2.c: Likewise.
* gcc.c-torture/execute/20000523-1.c: Likewise.
* gcc.c-torture/execute/20000528-1.c: Likewise.
* gcc.c-torture/execute/20000603-1.c: Likewise.
* gcc.c-torture/execute/20000605-1.c: Likewise.
* gcc.c-torture/execute/20000605-2.c: Likewise.
* gcc.c-torture/execute/20000605-3.c: Likewise.
* gcc.c-torture/execute/20000622-1.c: Likewise.
* gcc.c-torture/execute/20000717-1.c: Likewise.
* gcc.c-torture/execute/20000717-2.c: Likewise.
* gcc.c-torture/execute/20000717-5.c: Likewise.
* gcc.c-torture/execute/20000722-1.c: Likewise.
* gcc.c-torture/execute/20000726-1.c: Likewise.
* gcc.c-torture/execute/20000731-1.c: Likewise.
* gcc.c-torture/execute/20000731-2.c: Likewise.
* gcc.c-torture/execute/20000801-3.c: Likewise.
* gcc.c-torture/execute/20000801-4.c: Likewise.
* gcc.c-torture/execute/20000808-1.c: Likewise.
* gcc.c-torture/execute/20000815-1.c: Likewise.
* gcc.c-torture/execute/20000818-1.c: Likewise.
* gcc.c-torture/execute/20000819-1.c: Likewise.
* gcc.c-torture/execute/20000822-1.c: Likewise.
* gcc.c-torture/execute/20000914-1.c: Likewise.
* gcc.c-torture/execute/20000917-1.c: Likewise.
* gcc.c-torture/execute/20001009-1.c: Likewise.
* gcc.c-torture/execute/20001009-2.c: Likewise.
* gcc.c-torture/execute/20001013-1.c: Likewise.
* gcc.c-torture/execute/20001017-1.c: Likewise.
* gcc.c-torture/execute/20001017-2.c: Likewise.
* gcc.c-torture/execute/20001024-1.c: Likewise.
* gcc.c-torture/execute/20001027-1.c: Likewise.
* gcc.c-torture/execute/20001101.c: Likewise.
* gcc.c-torture/execute/20001108-1.c: Likewise.
* gcc.c-torture/execute/20001112-1.c: Likewise.
* gcc.c-torture/execute/20001124-1.c: Likewise.
* gcc.c-torture/execute/20001130-1.c: Likewise.
* gcc.c-torture/execute/20001130-2.c: Likewise.
* gcc.c-torture/execute/20001203-2.c: Likewise.
* gcc.c-torture/execute/20001221-1.c: Likewise.
* gcc.c-torture/execute/20001228-1.c: Likewise.
* gcc.c-torture/execute/20001229-1.c: Likewise.
* gcc.c-torture/execute/20010106-1.c: Likewise.
* gcc.c-torture/execute/20010118-1.c: Likewise.
* gcc.c-torture/execute/20010119-1.c: Likewise.
* gcc.c-torture/execute/20010206-1.c: Likewise.
* gcc.c-torture/execute/20010209-1.c: Likewise.
* gcc.c-torture/execute/20010221-1.c: Likewise.
* gcc.c-torture/execute/20010222-1.c: Likewise.
* gcc.c-torture/execute/20010329-1.c: Likewise.
* gcc.c-torture/execute/20010403-1.c: Likewise.
* gcc.c-torture/execute/20010409-1.c: Likewise.
* gcc.c-torture/execute/20010422-1.c: Likewise.
* gcc.c-torture/execute/20010518-1.c: Likewise.
* gcc.c-torture/execute/20010518-2.c: Likewise.
* gcc.c-torture/execute/20010520-1.c: Likewise.
* gcc.c-torture/execute/20010604-1.c: Likewise.
* gcc.c-torture/execute/20010711-1.c: Likewise.
* gcc.c-torture/execute/20010723-1.c: Likewise.
* gcc.c-torture/execute/20010904-1.c: Likewise.
* gcc.c-torture/execute/20010904-2.c: Likewise.
* gcc.c-torture/execute/20010915-1.c: Likewise.
* gcc.c-torture/execute/20010924-1.c: Likewise.
* gcc.c-torture/execute/20011024-1.c: Likewise.
* gcc.c-torture/execute/20011109-1.c: Likewise.
* gcc.c-torture/execute/20011109-2.c: Likewise.
* gcc.c-torture/execute/20011114-1.c: Likewise.
* gcc.c-torture/execute/20011121-1.c: Likewise.
* gcc.c-torture/execute/20011126-1.c: Likewise.
* gcc.c-torture/execute/20011128-1.c: Likewise.
* gcc.c-torture/execute/20011217-1.c: Likewise.
* gcc.c-torture/execute/20020213-1.c: Likewise.
* gcc.c-torture/execute/20020215-1.c: Likewise.
* gcc.c-torture/execute/20020225-2.c: Likewise.
* gcc.c-torture/execute/20020226-1.c: Likewise.
* gcc.c-torture/execute/20020227-1.c: Likewise.
* gcc.c-torture/execute/20020307-1.c: Likewise.
* gcc.c-torture/execute/20020328-1.c: Likewise.
* gcc.c-torture/execute/20020404-1.c: Likewise.
* gcc.c-torture/execute/20020406-1.c: Likewise.
* gcc.c-torture/execute/20020413-1.c: Likewise.
* gcc.c-torture/execute/20020418-1.c: Likewise.
* gcc.c-torture/execute/20020508-1.c: Likewise.
* gcc.c-torture/execute/20020508-2.c: Likewise.
* gcc.c-torture/execute/20020508-3.c: Likewise.
* gcc.c-torture/execute/20020529-1.c: Likewise.
* gcc.c-torture/execute/20020611-1.c: Likewise.
* gcc.c-torture/execute/20020615-1.c: Likewise.
* gcc.c-torture/execute/20020619-1.c: Likewise.
* gcc.c-torture/execute/20020904-1.c: Likewise.
* gcc.c-torture/execute/20020916-1.c: Likewise.
* gcc.c-torture/execute/20021010-1.c: Likewise.
* gcc.c-torture/execute/20021113-1.c: Likewise.
* gcc.c-torture/execute/20021118-1.c: Likewise.
* gcc.c-torture/execute/20021118-2.c: Likewise.
* gcc.c-torture/execute/20021120-1.c: Likewise.
* gcc.c-torture/execute/20021120-2.c: Likewise.
* gcc.c-torture/execute/20021120-3.c: Likewise.
* gcc.c-torture/execute/20030105-1.c: Likewise.
* gcc.c-torture/execute/20030109-1.c: Likewise.
* gcc.c-torture/execute/20030117-1.c: Likewise.
* gcc.c-torture/execute/20030120-1.c: Likewise.
* gcc.c-torture/execute/20030125-1.c: Likewise.
* gcc.c-torture/execute/20030128-1.c: Likewise.
* gcc.c-torture/execute/20030209-1.c: Likewise.
* gcc.c-torture/execute/20030222-1.c: Likewise.
* gcc.c-torture/execute/20030316-1.c: Likewise.
* gcc.c-torture/execute/20030403-1.c: Likewise.
* gcc.c-torture/execute/20030404-1.c: Likewise.
* gcc.c-torture/execute/20030501-1.c: Likewise.
* gcc.c-torture/execute/20030606-1.c: Likewise.
* gcc.c-torture/execute/20030828-1.c: Likewise.
* gcc.c-torture/execute/20030828-2.c: Likewise.
* gcc.c-torture/execute/20030903-1.c: Likewise.
* gcc.c-torture/execute/20030910-1.c: Likewise.
* gcc.c-torture/execute/20030913-1.c: Likewise.
* gcc.c-torture/execute/20030914-1.c: Likewise.
* gcc.c-torture/execute/20030914-2.c: Likewise.
* gcc.c-torture/execute/20030916-1.c: Likewise.
* gcc.c-torture/execute/20030928-1.c: Likewise.
* gcc.c-torture/execute/20031010-1.c: Likewise.
* gcc.c-torture/execute/20031201-1.c: Likewise.
* gcc.c-torture/execute/20031204-1.c: Likewise.
* gcc.c-torture/execute/20031211-1.c: Likewise.
* gcc.c-torture/execute/20040208-1.c: Likewise.
* gcc.c-torture/execute/20040218-1.c: Likewise.
* gcc.c-torture/execute/20040307-1.c: Likewise.
* gcc.c-torture/execute/20040319-1.c: Likewise.
* gcc.c-torture/execute/20040411-1.c: Likewise.
* gcc.c-torture/execute/20040423-1.c: Likewise.
* gcc.c-torture/execute/20040625-1.c: Likewise.
* gcc.c-torture/execute/20040703-1.c: Likewise.
* gcc.c-torture/execute/20040706-1.c: Likewise.
* gcc.c-torture/execute/20040707-1.c: Likewise.
* gcc.c-torture/execute/20040805-1.c: Likewise.
* gcc.c-torture/execute/20040917-1.c: Likewise.
* gcc.c-torture/execute/20041011-1.c: Likewise.
* gcc.c-torture/execute/20041113-1.c: Likewise.
* gcc.c-torture/execute/20041124-1.c: Likewise.
* gcc.c-torture/execute/20041210-1.c: Likewise.
* gcc.c-torture/execute/20041212-1.c: Likewise.
* gcc.c-torture/execute/20050410-1.c: Likewise.
* gcc.c-torture/execute/20051113-1.c: Likewise.
* gcc.c-torture/execute/20070623-1.c: Likewise.
* gcc.c-torture/execute/20091229-1.c: Likewise.
* gcc.c-torture/execute/20101025-1.c: Likewise.
* gcc.c-torture/execute/20120817-1.c: Likewise.
* gcc.c-torture/execute/20170401-2.c: Likewise.
* gcc.c-torture/execute/900409-1.c: Likewise.
* gcc.c-torture/execute/920202-1.c: Likewise.
* gcc.c-torture/execute/920302-1.c: Likewise.
* gcc.c-torture/execute/920410-1.c: Likewise.
* gcc.c-torture/execute/920501-2.c: Likewise.
* gcc.c-torture/execute/920501-3.c: Likewise.
* gcc.c-torture/execute/920501-4.c: Likewise.
* gcc.c-torture/execute/920501-5.c: Likewise.
* gcc.c-torture/execute/920501-6.c: Likewise.
* gcc.c-torture/execute/920501-8.c: Likewise.
* gcc.c-torture/execute/920506-1.c: Likewise.
* gcc.c-torture/execute/920604-1.c: Likewise.
* gcc.c-torture/execute/920612-2.c: Likewise.
* gcc.c-torture/execute/920618-1.c: Likewise.
* gcc.c-torture/execute/920625-1.c: Likewise.
* gcc.c-torture/execute/920710-1.c: Likewise.
* gcc.c-torture/execute/920721-1.c: Likewise.
* gcc.c-torture/execute/920721-4.c: Likewise.
* gcc.c-torture/execute/920726-1.c: Likewise.
* gcc.c-torture/execute/920829-1.c: Likewise.
* gcc.c-torture/execute/920908-1.c: Likewise.
* gcc.c-torture/execute/920922-1.c: Likewise.
* gcc.c-torture/execute/920929-1.c: Likewise.
* gcc.c-torture/execute/921006-1.c: Likewise.
* gcc.c-torture/execute/921007-1.c: Likewise.
* gcc.c-torture/execute/921016-1.c: Likewise.
* gcc.c-torture/execute/921019-1.c: Likewise.
* gcc.c-torture/execute/921019-2.c: Likewise.
* gcc.c-torture/execute/921029-1.c: Likewise.
* gcc.c-torture/execute/921104-1.c: Likewise.
* gcc.c-torture/execute/921112-1.c: Likewise.
* gcc.c-torture/execute/921113-1.c: Likewise.
* gcc.c-torture/execute/921117-1.c: Likewise.
* gcc.c-torture/execute/921123-2.c: Likewise.
* gcc.c-torture/execute/921202-2.c: Likewise.
* gcc.c-torture/execute/921204-1.c: Likewise.
* gcc.c-torture/execute/921208-1.c: Likewise.
* gcc.c-torture/execute/930123-1.c: Likewise.
* gcc.c-torture/execute/930126-1.c: Likewise.
* gcc.c-torture/execute/930406-1.c: Likewise.
* gcc.c-torture/execute/930408-1.c: Likewise.
* gcc.c-torture/execute/930429-1.c: Likewise.
* gcc.c-torture/execute/930603-2.c: Likewise.
* gcc.c-torture/execute/930608-1.c: Likewise.
* gcc.c-torture/execute/930614-1.c: Likewise.
* gcc.c-torture/execute/930614-2.c: Likewise.
* gcc.c-torture/execute/930622-2.c: Likewise.
* gcc.c-torture/execute/930628-1.c: Likewise.
* gcc.c-torture/execute/930725-1.c: Likewise.
* gcc.c-torture/execute/930930-2.c: Likewise.
* gcc.c-torture/execute/931002-1.c: Likewise.
* gcc.c-torture/execute/931004-1.c: Likewise.
* gcc.c-torture/execute/931004-10.c: Likewise.
* gcc.c-torture/execute/931004-11.c: Likewise.
* gcc.c-torture/execute/931004-12.c: Likewise.
* gcc.c-torture/execute/931004-13.c: Likewise.
* gcc.c-torture/execute/931004-14.c: Likewise.
* gcc.c-torture/execute/931004-2.c: Likewise.
* gcc.c-torture/execute/931004-3.c: Likewise.
* gcc.c-torture/execute/931004-4.c: Likewise.
* gcc.c-torture/execute/931004-5.c: Likewise.
* gcc.c-torture/execute/931004-6.c: Likewise.
* gcc.c-torture/execute/931004-7.c: Likewise.
* gcc.c-torture/execute/931004-8.c: Likewise.
* gcc.c-torture/execute/931004-9.c: Likewise.
* gcc.c-torture/execute/931005-1.c: Likewise.
* gcc.c-torture/execute/931110-1.c: Likewise.
* gcc.c-torture/execute/931110-2.c: Likewise.
* gcc.c-torture/execute/941014-1.c: Likewise.
* gcc.c-torture/execute/941015-1.c: Likewise.
* gcc.c-torture/execute/941021-1.c: Likewise.
* gcc.c-torture/execute/941025-1.c: Likewise.
* gcc.c-torture/execute/941031-1.c: Likewise.
* gcc.c-torture/execute/950221-1.c: Likewise.
* gcc.c-torture/execute/950426-2.c: Likewise.
* gcc.c-torture/execute/950503-1.c: Likewise.
* gcc.c-torture/execute/950511-1.c: Likewise.
* gcc.c-torture/execute/950607-1.c: Likewise.
* gcc.c-torture/execute/950607-2.c: Likewise.
* gcc.c-torture/execute/950612-1.c: Likewise.
* gcc.c-torture/execute/950628-1.c: Likewise.
* gcc.c-torture/execute/950704-1.c: Likewise.
* gcc.c-torture/execute/950706-1.c: Likewise.
* gcc.c-torture/execute/950710-1.c: Likewise.
* gcc.c-torture/execute/950714-1.c: Likewise.
* gcc.c-torture/execute/950809-1.c: Likewise.
* gcc.c-torture/execute/950906-1.c: Likewise.
* gcc.c-torture/execute/950915-1.c: Likewise.
* gcc.c-torture/execute/950929-1.c: Likewise.
* gcc.c-torture/execute/951003-1.c: Likewise.
* gcc.c-torture/execute/951115-1.c: Likewise.
* gcc.c-torture/execute/951204-1.c: Likewise.
* gcc.c-torture/execute/960116-1.c: Likewise.
* gcc.c-torture/execute/960117-1.c: Likewise.
* gcc.c-torture/execute/960209-1.c: Likewise.
* gcc.c-torture/execute/960215-1.c: Likewise.
* gcc.c-torture/execute/960219-1.c: Likewise.
* gcc.c-torture/execute/960301-1.c: Likewise.
* gcc.c-torture/execute/960302-1.c: Likewise.
* gcc.c-torture/execute/960311-1.c: Likewise.
* gcc.c-torture/execute/960311-2.c: Likewise.
* gcc.c-torture/execute/960311-3.c: Likewise.
* gcc.c-torture/execute/960312-1.c: Likewise.
* gcc.c-torture/execute/960317-1.c: Likewise.
* gcc.c-torture/execute/960321-1.c: Likewise.
* gcc.c-torture/execute/960326-1.c: Likewise.
* gcc.c-torture/execute/960327-1.c: Likewise.
* gcc.c-torture/execute/960405-1.c: Likewise.
* gcc.c-torture/execute/960416-1.c: Likewise.
* gcc.c-torture/execute/960419-1.c: Likewise.
* gcc.c-torture/execute/960419-2.c: Likewise.
* gcc.c-torture/execute/960512-1.c: Likewise.
* gcc.c-torture/execute/960513-1.c: Likewise.
* gcc.c-torture/execute/960608-1.c: Likewise.
* gcc.c-torture/execute/960801-1.c: Likewise.
* gcc.c-torture/execute/960802-1.c: Likewise.
* gcc.c-torture/execute/960909-1.c: Likewise.
* gcc.c-torture/execute/961004-1.c: Likewise.
* gcc.c-torture/execute/961017-1.c: Likewise.
* gcc.c-torture/execute/961017-2.c: Likewise.
* gcc.c-torture/execute/961026-1.c: Likewise.
* gcc.c-torture/execute/961122-1.c: Likewise.
* gcc.c-torture/execute/961122-2.c: Likewise.
* gcc.c-torture/execute/961125-1.c: Likewise.
* gcc.c-torture/execute/961206-1.c: Likewise.
* gcc.c-torture/execute/961213-1.c: Likewise.
* gcc.c-torture/execute/970214-1.c: Likewise.
* gcc.c-torture/execute/970214-2.c: Likewise.
* gcc.c-torture/execute/970217-1.c: Likewise.
* gcc.c-torture/execute/970923-1.c: Likewise.
* gcc.c-torture/execute/980205.c: Likewise.
* gcc.c-torture/execute/980223.c: Likewise.
* gcc.c-torture/execute/980424-1.c: Likewise.
* gcc.c-torture/execute/980505-1.c: Likewise.
* gcc.c-torture/execute/980505-2.c: Likewise.
* gcc.c-torture/execute/980506-1.c: Likewise.
* gcc.c-torture/execute/980506-2.c: Likewise.
* gcc.c-torture/execute/980506-3.c: Likewise.
* gcc.c-torture/execute/980526-1.c: Likewise.
* gcc.c-torture/execute/980526-2.c: Likewise.
* gcc.c-torture/execute/980526-3.c: Likewise.
* gcc.c-torture/execute/980602-1.c: Likewise.
* gcc.c-torture/execute/980602-2.c: Likewise.
* gcc.c-torture/execute/980604-1.c: Likewise.
* gcc.c-torture/execute/980605-1.c: Likewise.
* gcc.c-torture/execute/980612-1.c: Likewise.
* gcc.c-torture/execute/980617-1.c: Likewise.
* gcc.c-torture/execute/980618-1.c: Likewise.
* gcc.c-torture/execute/980701-1.c: Likewise.
* gcc.c-torture/execute/980709-1.c: Likewise.
* gcc.c-torture/execute/980716-1.c: Likewise.
* gcc.c-torture/execute/980929-1.c: Likewise.
* gcc.c-torture/execute/981001-1.c: Likewise.
* gcc.c-torture/execute/981019-1.c: Likewise.
* gcc.c-torture/execute/981130-1.c: Likewise.
* gcc.c-torture/execute/981206-1.c: Likewise.
* gcc.c-torture/execute/990106-2.c: Likewise.
* gcc.c-torture/execute/990117-1.c: Likewise.
* gcc.c-torture/execute/990128-1.c: Likewise.
* gcc.c-torture/execute/990130-1.c: Likewise.
* gcc.c-torture/execute/990208-1.c: Likewise.
* gcc.c-torture/execute/990222-1.c: Likewise.
* gcc.c-torture/execute/990324-1.c: Likewise.
* gcc.c-torture/execute/990326-1.c: Likewise.
* gcc.c-torture/execute/990404-1.c: Likewise.
* gcc.c-torture/execute/990513-1.c: Likewise.
* gcc.c-torture/execute/990524-1.c: Likewise.
* gcc.c-torture/execute/990525-1.c: Likewise.
* gcc.c-torture/execute/990525-2.c: Likewise.
* gcc.c-torture/execute/990527-1.c: Likewise.
* gcc.c-torture/execute/990531-1.c: Likewise.
* gcc.c-torture/execute/990604-1.c: Likewise.
* gcc.c-torture/execute/990804-1.c: Likewise.
* gcc.c-torture/execute/990811-1.c: Likewise.
* gcc.c-torture/execute/990826-0.c: Likewise.
* gcc.c-torture/execute/990827-1.c: Likewise.
* gcc.c-torture/execute/990829-1.c: Likewise.
* gcc.c-torture/execute/990923-1.c: Likewise.
* gcc.c-torture/execute/991014-1.c: Likewise.
* gcc.c-torture/execute/991016-1.c: Likewise.
* gcc.c-torture/execute/991019-1.c: Likewise.
* gcc.c-torture/execute/991023-1.c: Likewise.
* gcc.c-torture/execute/991030-1.c: Likewise.
* gcc.c-torture/execute/991112-1.c: Likewise.
* gcc.c-torture/execute/991118-1.c: Likewise.
* gcc.c-torture/execute/991201-1.c: Likewise.
* gcc.c-torture/execute/991202-1.c: Likewise.
* gcc.c-torture/execute/991202-2.c: Likewise.
* gcc.c-torture/execute/991202-3.c: Likewise.
* gcc.c-torture/execute/991216-1.c: Likewise.
* gcc.c-torture/execute/991216-2.c: Likewise.
* gcc.c-torture/execute/991216-4.c: Likewise.
* gcc.c-torture/execute/991221-1.c: Likewise.
* gcc.c-torture/execute/991227-1.c: Likewise.
* gcc.c-torture/execute/991228-1.c: Likewise.
* gcc.c-torture/execute/align-1.c: Likewise.
* gcc.c-torture/execute/align-2.c: Likewise.
* gcc.c-torture/execute/align-3.c: Likewise.
* gcc.c-torture/execute/alloca-1.c: Likewise.
* gcc.c-torture/execute/anon-1.c: Likewise.
* gcc.c-torture/execute/arith-1.c: Likewise.
* gcc.c-torture/execute/arith-rand-ll.c: Likewise.
* gcc.c-torture/execute/arith-rand.c: Likewise.
* gcc.c-torture/execute/bf-layout-1.c: Likewise.
* gcc.c-torture/execute/bf-pack-1.c: Likewise.
* gcc.c-torture/execute/bf-sign-1.c: Likewise.
* gcc.c-torture/execute/bf-sign-2.c: Likewise.
* gcc.c-torture/execute/bf64-1.c: Likewise.
* gcc.c-torture/execute/builtin-constant.c: Likewise.
* gcc.c-torture/execute/builtin-prefetch-1.c: Likewise.
* gcc.c-torture/execute/builtin-prefetch-2.c: Likewise.
* gcc.c-torture/execute/builtin-prefetch-3.c: Likewise.
* gcc.c-torture/execute/builtin-prefetch-4.c: Likewise.
* gcc.c-torture/execute/builtin-prefetch-5.c: Likewise.
* gcc.c-torture/execute/builtin-prefetch-6.c: Likewise.
* gcc.c-torture/execute/builtin-types-compatible-p.c: Likewise.
* gcc.c-torture/execute/cbrt.c: Likewise.
* gcc.c-torture/execute/complex-1.c: Likewise.
* gcc.c-torture/execute/complex-2.c: Likewise.
* gcc.c-torture/execute/complex-3.c: Likewise.
* gcc.c-torture/execute/complex-4.c: Likewise.
* gcc.c-torture/execute/complex-5.c: Likewise.
* gcc.c-torture/execute/compndlit-1.c: Likewise.
* gcc.c-torture/execute/conversion.c: Likewise.
* gcc.c-torture/execute/cvt-1.c: Likewise.
* gcc.c-torture/execute/divconst-1.c: Likewise.
* gcc.c-torture/execute/divconst-2.c: Likewise.
* gcc.c-torture/execute/divconst-3.c: Likewise.
* gcc.c-torture/execute/enum-1.c: Likewise.
* gcc.c-torture/execute/enum-2.c: Likewise.
* gcc.c-torture/execute/extzvsi.c: Likewise.
* gcc.c-torture/execute/frame-address.c: Likewise.
* gcc.c-torture/execute/func-ptr-1.c: Likewise.
* gcc.c-torture/execute/gofast.c: Likewise.
* gcc.c-torture/execute/ieee/20000320-1.c: Likewise.
* gcc.c-torture/execute/ieee/20001122-1.c: Likewise.
* gcc.c-torture/execute/ieee/20010226-1.c: Likewise.
* gcc.c-torture/execute/ieee/20011123-1.c: Likewise.
* gcc.c-torture/execute/ieee/920518-1.c: Likewise.
* gcc.c-torture/execute/ieee/920810-1.c: Likewise.
* gcc.c-torture/execute/ieee/930529-1.c: Likewise.
* gcc.c-torture/execute/ieee/980619-1.c: Likewise.
* gcc.c-torture/execute/ieee/acc1.c: Likewise.
* gcc.c-torture/execute/ieee/acc2.c: Likewise.
* gcc.c-torture/execute/ieee/fp-cmp-1.c: Likewise.
* gcc.c-torture/execute/ieee/fp-cmp-2.c: Likewise.
* gcc.c-torture/execute/ieee/fp-cmp-3.c: Likewise.
* gcc.c-torture/execute/ieee/fp-cmp-4.c: Likewise.
* gcc.c-torture/execute/ieee/fp-cmp-5.c: Likewise.
* gcc.c-torture/execute/ieee/fp-cmp-6.c: Likewise.
* gcc.c-torture/execute/ieee/fp-cmp-8.c: Likewise.
* gcc.c-torture/execute/ieee/fp-cmp-9.c: Likewise.
* gcc.c-torture/execute/ieee/hugeval.c: Likewise.
* gcc.c-torture/execute/ieee/minuszero.c: Likewise.
* gcc.c-torture/execute/ieee/mul-subnormal-single-1.c: Likewise.
* gcc.c-torture/execute/ieee/mzero2.c: Likewise.
* gcc.c-torture/execute/ieee/mzero3.c: Likewise.
* gcc.c-torture/execute/ieee/mzero5.c: Likewise.
* gcc.c-torture/execute/ieee/mzero6.c: Likewise.
* gcc.c-torture/execute/ieee/pr28634.c: Likewise.
* gcc.c-torture/execute/ieee/rbug.c: Likewise.
* gcc.c-torture/execute/index-1.c: Likewise.
* gcc.c-torture/execute/longlong.c: Likewise.
* gcc.c-torture/execute/loop-1.c: Likewise.
* gcc.c-torture/execute/loop-10.c: Likewise.
* gcc.c-torture/execute/loop-11.c: Likewise.
* gcc.c-torture/execute/loop-13.c: Likewise.
* gcc.c-torture/execute/loop-14.c: Likewise.
* gcc.c-torture/execute/loop-15.c: Likewise.
* gcc.c-torture/execute/loop-2b.c: Likewise.
* gcc.c-torture/execute/loop-2e.c: Likewise.
* gcc.c-torture/execute/loop-4.c: Likewise.
* gcc.c-torture/execute/loop-4b.c: Likewise.
* gcc.c-torture/execute/loop-5.c: Likewise.
* gcc.c-torture/execute/loop-6.c: Likewise.
* gcc.c-torture/execute/loop-7.c: Likewise.
* gcc.c-torture/execute/loop-8.c: Likewise.
* gcc.c-torture/execute/memcpy-1.c: Likewise.
* gcc.c-torture/execute/memcpy-2.c: Likewise.
* gcc.c-torture/execute/memcpy-bi.c: Likewise.
* gcc.c-torture/execute/memset-1.c: Likewise.
* gcc.c-torture/execute/memset-2.c: Likewise.
* gcc.c-torture/execute/memset-3.c: Likewise.
* gcc.c-torture/execute/multdi-1.c: Likewise.
* gcc.c-torture/execute/multi-ix.c: Likewise.
* gcc.c-torture/execute/nest-stdar-1.c: Likewise.
* gcc.c-torture/execute/nestfunc-1.c: Likewise.
* gcc.c-torture/execute/nestfunc-2.c: Likewise.
* gcc.c-torture/execute/nestfunc-3.c: Likewise.
* gcc.c-torture/execute/nestfunc-4.c: Likewise.
* gcc.c-torture/execute/packed-1.c: Likewise.
* gcc.c-torture/execute/pending-4.c: Likewise.
* gcc.c-torture/execute/pr15262-1.c: Likewise.
* gcc.c-torture/execute/pr15262-2.c: Likewise.
* gcc.c-torture/execute/pr15262.c: Likewise.
* gcc.c-torture/execute/pr15296.c: Likewise.
* gcc.c-torture/execute/pr17252.c: Likewise.
* gcc.c-torture/execute/pr17377.c: Likewise.
* gcc.c-torture/execute/pr19606.c: Likewise.
* gcc.c-torture/execute/pr21964-1.c: Likewise.
* gcc.c-torture/execute/pr22061-2.c: Likewise.
* gcc.c-torture/execute/pr22061-3.c: Likewise.
* gcc.c-torture/execute/pr22061-4.c: Likewise.
* gcc.c-torture/execute/pr23467.c: Likewise.
* gcc.c-torture/execute/pr27073.c: Likewise.
* gcc.c-torture/execute/pr27364.c: Likewise.
* gcc.c-torture/execute/pr28403.c: Likewise.
* gcc.c-torture/execute/pr31605.c: Likewise.
* gcc.c-torture/execute/pr38969.c: Likewise.
* gcc.c-torture/execute/pr40657.c: Likewise.
* gcc.c-torture/execute/pr44575.c: Likewise.
* gcc.c-torture/execute/pr56799.c: Likewise.
* gcc.c-torture/execute/pr58640.c: Likewise.
* gcc.c-torture/execute/pr71335.c: Likewise.
* gcc.c-torture/execute/ptr-arith-1.c: Likewise.
* gcc.c-torture/execute/regstack-1.c: Likewise.
* gcc.c-torture/execute/scope-1.c: Likewise.
* gcc.c-torture/execute/simd-1.c: Likewise.
* gcc.c-torture/execute/simd-2.c: Likewise.
* gcc.c-torture/execute/simd-4.c: Likewise.
* gcc.c-torture/execute/simd-5.c: Likewise.
* gcc.c-torture/execute/strcmp-1.c: Likewise.
* gcc.c-torture/execute/strcpy-1.c: Likewise.
* gcc.c-torture/execute/strct-pack-1.c: Likewise.
* gcc.c-torture/execute/strct-pack-2.c: Likewise.
* gcc.c-torture/execute/strct-pack-4.c: Likewise.
* gcc.c-torture/execute/strct-stdarg-1.c: Likewise.
* gcc.c-torture/execute/strct-varg-1.c: Likewise.
* gcc.c-torture/execute/strlen-1.c: Likewise.
* gcc.c-torture/execute/strncmp-1.c: Likewise.
* gcc.c-torture/execute/struct-ini-1.c: Likewise.
* gcc.c-torture/execute/struct-ini-2.c: Likewise.
* gcc.c-torture/execute/struct-ini-3.c: Likewise.
* gcc.c-torture/execute/struct-ini-4.c: Likewise.
* gcc.c-torture/execute/struct-ret-1.c: Likewise.
* gcc.c-torture/execute/struct-ret-2.c: Likewise.
* gcc.c-torture/execute/usmul.c: Likewise.
* gcc.c-torture/execute/va-arg-1.c: Likewise.
* gcc.c-torture/execute/va-arg-10.c: Likewise.
* gcc.c-torture/execute/va-arg-11.c: Likewise.
* gcc.c-torture/execute/va-arg-12.c: Likewise.
* gcc.c-torture/execute/va-arg-13.c: Likewise.
* gcc.c-torture/execute/va-arg-14.c: Likewise.
* gcc.c-torture/execute/va-arg-15.c: Likewise.
* gcc.c-torture/execute/va-arg-16.c: Likewise.
* gcc.c-torture/execute/va-arg-17.c: Likewise.
* gcc.c-torture/execute/va-arg-18.c: Likewise.
* gcc.c-torture/execute/va-arg-19.c: Likewise.
* gcc.c-torture/execute/va-arg-2.c: Likewise.
* gcc.c-torture/execute/va-arg-20.c: Likewise.
* gcc.c-torture/execute/va-arg-23.c: Likewise.
* gcc.c-torture/execute/va-arg-26.c: Likewise.
* gcc.c-torture/execute/va-arg-4.c: Likewise.
* gcc.c-torture/execute/va-arg-5.c: Likewise.
* gcc.c-torture/execute/va-arg-6.c: Likewise.
* gcc.c-torture/execute/va-arg-9.c: Likewise.
* gcc.c-torture/execute/widechar-1.c: Likewise.
* gcc.c-torture/execute/widechar-2.c: Likewise.
|
|
gcc/testsuite/
* gcc.c-torture/compile/386.c: Compile with -std=gnu89.
* gcc.c-torture/compile/BUG1.c: Likewise.
* gcc.c-torture/compile/BUG11.c: Likewise.
* gcc.c-torture/compile/BUG16.c: Likewise.
* gcc.c-torture/compile/BUG2.c: Likewise.
* gcc.c-torture/compile/BUG24.c: Likewise.
* gcc.c-torture/compile/BUG25.c: Likewise.
* gcc.c-torture/compile/BUG3.c: Likewise.
* gcc.c-torture/compile/DFcmp.c: Likewise.
* gcc.c-torture/compile/HIcmp.c: Likewise.
* gcc.c-torture/compile/HIset.c: Likewise.
* gcc.c-torture/compile/QIcmp.c: Likewise.
* gcc.c-torture/compile/QIset.c: Likewise.
* gcc.c-torture/compile/SFset.c: Likewise.
* gcc.c-torture/compile/SIcmp.c: Likewise.
* gcc.c-torture/compile/SIset.c: Likewise.
* gcc.c-torture/compile/UHIcmp.c: Likewise.
* gcc.c-torture/compile/UQIcmp.c: Likewise.
* gcc.c-torture/compile/USIcmp.c: Likewise.
* gcc.c-torture/compile/a.c: Likewise.
* gcc.c-torture/compile/a1.c: Likewise.
* gcc.c-torture/compile/a3.c: Likewise.
* gcc.c-torture/compile/aa.c: Likewise.
* gcc.c-torture/compile/aaa.c: Likewise.
* gcc.c-torture/compile/abs.c: Likewise.
* gcc.c-torture/compile/ac.c: Likewise.
* gcc.c-torture/compile/acc.c: Likewise.
* gcc.c-torture/compile/add.c: Likewise.
* gcc.c-torture/compile/add386.c: Likewise.
* gcc.c-torture/compile/addcc.c: Likewise.
* gcc.c-torture/compile/andm.c: Likewise.
* gcc.c-torture/compile/andmem.c: Likewise.
* gcc.c-torture/compile/andn.c: Likewise.
* gcc.c-torture/compile/andok.c: Likewise.
* gcc.c-torture/compile/andsi.c: Likewise.
* gcc.c-torture/compile/andsparc.c: Likewise.
* gcc.c-torture/compile/aos.c: Likewise.
* gcc.c-torture/compile/arr.c: Likewise.
* gcc.c-torture/compile/as.c: Likewise.
* gcc.c-torture/compile/ase.c: Likewise.
* gcc.c-torture/compile/band.c: Likewise.
* gcc.c-torture/compile/bb0.c: Likewise.
* gcc.c-torture/compile/bb1.c: Likewise.
* gcc.c-torture/compile/bc.c: Likewise.
* gcc.c-torture/compile/bcopy.c: Likewise.
* gcc.c-torture/compile/bfx.c: Likewise.
* gcc.c-torture/compile/bge.c: Likewise.
* gcc.c-torture/compile/bit.c: Likewise.
* gcc.c-torture/compile/bitf.c: Likewise.
* gcc.c-torture/compile/bitw.c: Likewise.
* gcc.c-torture/compile/blk.c: Likewise.
* gcc.c-torture/compile/bt386.c: Likewise.
* gcc.c-torture/compile/bug.c: Likewise.
* gcc.c-torture/compile/buns.c: Likewise.
* gcc.c-torture/compile/c.c: Likewise.
* gcc.c-torture/compile/c2.c: Likewise.
* gcc.c-torture/compile/call.c: Likewise.
* gcc.c-torture/compile/callind.c: Likewise.
* gcc.c-torture/compile/calls-void.c: Likewise.
* gcc.c-torture/compile/calls.c: Likewise.
* gcc.c-torture/compile/cc.c: Likewise.
* gcc.c-torture/compile/cmb.c: Likewise.
* gcc.c-torture/compile/cmpsi386.c: Likewise.
* gcc.c-torture/compile/cmul.c: Likewise.
* gcc.c-torture/compile/comb.c: Likewise.
* gcc.c-torture/compile/consec.c: Likewise.
* gcc.c-torture/compile/const.c: Likewise.
* gcc.c-torture/compile/conv_tst.c: Likewise.
* gcc.c-torture/compile/cvt.c: Likewise.
* gcc.c-torture/compile/dbl_parm.c: Likewise.
* gcc.c-torture/compile/dblbug.c: Likewise.
* gcc.c-torture/compile/dead.c: Likewise.
* gcc.c-torture/compile/delay.c: Likewise.
* gcc.c-torture/compile/di.c: Likewise.
* gcc.c-torture/compile/div.c: Likewise.
* gcc.c-torture/compile/dm.c: Likewise.
* gcc.c-torture/compile/dshift.c: Likewise.
* gcc.c-torture/compile/e.c: Likewise.
* gcc.c-torture/compile/ex.c: Likewise.
* gcc.c-torture/compile/ext.c: Likewise.
* gcc.c-torture/compile/flo.c: Likewise.
* gcc.c-torture/compile/forgetcc.c: Likewise.
* gcc.c-torture/compile/g.c: Likewise.
* gcc.c-torture/compile/gen_tst.c: Likewise.
* gcc.c-torture/compile/gronk.c: Likewise.
* gcc.c-torture/compile/hi.c: Likewise.
* gcc.c-torture/compile/i.c: Likewise.
* gcc.c-torture/compile/icmp.c: Likewise.
* gcc.c-torture/compile/ifreg.c: Likewise.
* gcc.c-torture/compile/jumptab.c: Likewise.
* gcc.c-torture/compile/l.c: Likewise.
* gcc.c-torture/compile/layout.c: Likewise.
* gcc.c-torture/compile/lll.c: Likewise.
* gcc.c-torture/compile/load8.c: Likewise.
* gcc.c-torture/compile/loadhicc.c: Likewise.
* gcc.c-torture/compile/log2.c: Likewise.
* gcc.c-torture/compile/logic.c: Likewise.
* gcc.c-torture/compile/loop-1.c: Likewise.
* gcc.c-torture/compile/loop386.c: Likewise.
* gcc.c-torture/compile/lop.c: Likewise.
* gcc.c-torture/compile/m1.c: Likewise.
* gcc.c-torture/compile/m5.c: Likewise.
* gcc.c-torture/compile/m68.c: Likewise.
* gcc.c-torture/compile/mbyte.c: Likewise.
* gcc.c-torture/compile/mcmp.c: Likewise.
* gcc.c-torture/compile/mm.c: Likewise.
* gcc.c-torture/compile/mod.c: Likewise.
* gcc.c-torture/compile/modcc.c: Likewise.
* gcc.c-torture/compile/move.c: Likewise.
* gcc.c-torture/compile/move_qhi.c: Likewise.
* gcc.c-torture/compile/mregtst.c: Likewise.
* gcc.c-torture/compile/mu.c: Likewise.
* gcc.c-torture/compile/mword.c: Likewise.
* gcc.c-torture/compile/n.c: Likewise.
* gcc.c-torture/compile/n1.c: Likewise.
* gcc.c-torture/compile/nand.c: Likewise.
* gcc.c-torture/compile/neg.c: Likewise.
* gcc.c-torture/compile/o.c: Likewise.
* gcc.c-torture/compile/omit.c: Likewise.
* gcc.c-torture/compile/opout.c: Likewise.
* gcc.c-torture/compile/opt.c: Likewise.
* gcc.c-torture/compile/or.c: Likewise.
* gcc.c-torture/compile/or386.c: Likewise.
* gcc.c-torture/compile/p.c: Likewise.
* gcc.c-torture/compile/parms.c: Likewise.
* gcc.c-torture/compile/pass.c: Likewise.
* gcc.c-torture/compile/pp.c: Likewise.
* gcc.c-torture/compile/pret-arg.c: Likewise.
* gcc.c-torture/compile/pyr.c: Likewise.
* gcc.c-torture/compile/pyr2.c: Likewise.
* gcc.c-torture/compile/r.c: Likewise.
* gcc.c-torture/compile/r1.c: Likewise.
* gcc.c-torture/compile/rmsc.c: Likewise.
* gcc.c-torture/compile/round.c: Likewise.
* gcc.c-torture/compile/sc.c: Likewise.
* gcc.c-torture/compile/scal.c: Likewise.
* gcc.c-torture/compile/scc.c: Likewise.
* gcc.c-torture/compile/scond.c: Likewise.
* gcc.c-torture/compile/seq.c: Likewise.
* gcc.c-torture/compile/set386.c: Likewise.
* gcc.c-torture/compile/set88.c: Likewise.
* gcc.c-torture/compile/sh.c: Likewise.
* gcc.c-torture/compile/shand.c: Likewise.
* gcc.c-torture/compile/shft.c: Likewise.
* gcc.c-torture/compile/shift.c: Likewise.
* gcc.c-torture/compile/signext.c: Likewise.
* gcc.c-torture/compile/signext2.c: Likewise.
* gcc.c-torture/compile/simple.c: Likewise.
* gcc.c-torture/compile/sparcbug.c: Likewise.
* gcc.c-torture/compile/stor.c: Likewise.
* gcc.c-torture/compile/str.c: Likewise.
* gcc.c-torture/compile/structret.c: Likewise.
* gcc.c-torture/compile/sub32.c: Likewise.
* gcc.c-torture/compile/subcc.c: Likewise.
* gcc.c-torture/compile/subcse.c: Likewise.
* gcc.c-torture/compile/sym.c: Likewise.
* gcc.c-torture/compile/symconst.c: Likewise.
* gcc.c-torture/compile/t.c: Likewise.
* gcc.c-torture/compile/test-flow.c: Likewise.
* gcc.c-torture/compile/test-loop.c: Likewise.
* gcc.c-torture/compile/test.c: Likewise.
* gcc.c-torture/compile/tmp.c: Likewise.
* gcc.c-torture/compile/trivial.c: Likewise.
* gcc.c-torture/compile/trunc.c: Likewise.
* gcc.c-torture/compile/u.c: Likewise.
* gcc.c-torture/compile/uns.c: Likewise.
* gcc.c-torture/compile/uns_tst.c: Likewise.
* gcc.c-torture/compile/uuarg.c: Likewise.
* gcc.c-torture/compile/volatile-1.c: Likewise.
* gcc.c-torture/compile/ww.c: Likewise.
* gcc.c-torture/compile/x.c: Likewise.
* gcc.c-torture/compile/xb.c: Likewise.
* gcc.c-torture/compile/xc.c: Likewise.
* gcc.c-torture/compile/xdi.c: Likewise.
* gcc.c-torture/compile/xfoo.c: Likewise.
* gcc.c-torture/compile/xi.c: Likewise.
* gcc.c-torture/compile/xlop.c: Likewise.
* gcc.c-torture/compile/xneg.c: Likewise.
* gcc.c-torture/compile/xopt.c: Likewise.
* gcc.c-torture/compile/xor.c: Likewise.
* gcc.c-torture/compile/xorn.c: Likewise.
* gcc.c-torture/compile/xp.c: Likewise.
* gcc.c-torture/compile/xpp.c: Likewise.
* gcc.c-torture/compile/xs.c: Likewise.
* gcc.c-torture/compile/xsh.c: Likewise.
* gcc.c-torture/compile/xzz.c: Likewise.
* gcc.c-torture/compile/zero-strct-1.c: Likewise.
* gcc.c-torture/execute/20000717-3.c: Likewise.
* gcc.c-torture/execute/920409-1.c: Likewise.
* gcc.c-torture/execute/920411-1.c: Likewise.
* gcc.c-torture/execute/920415-1.c: Likewise.
* gcc.c-torture/execute/920428-1.c: Likewise.
* gcc.c-torture/execute/920428-2.c: Likewise.
* gcc.c-torture/execute/920429-1.c: Likewise.
* gcc.c-torture/execute/920501-1.c: Likewise.
* gcc.c-torture/execute/920501-7.c: Likewise.
* gcc.c-torture/execute/920501-9.c: Likewise.
* gcc.c-torture/execute/920520-1.c: Likewise.
* gcc.c-torture/execute/920603-1.c: Likewise.
* gcc.c-torture/execute/920721-2.c: Likewise.
* gcc.c-torture/execute/920721-3.c: Likewise.
* gcc.c-torture/execute/920728-1.c: Likewise.
* gcc.c-torture/execute/920730-1.c: Likewise.
* gcc.c-torture/execute/920731-1.c: Likewise.
* gcc.c-torture/execute/920812-1.c: Likewise.
* gcc.c-torture/execute/920909-1.c: Likewise.
* gcc.c-torture/execute/921013-1.c: Likewise.
* gcc.c-torture/execute/921017-1.c: Likewise.
* gcc.c-torture/execute/921123-1.c: Likewise.
* gcc.c-torture/execute/921124-1.c: Likewise.
* gcc.c-torture/execute/921202-1.c: Likewise.
* gcc.c-torture/execute/921207-1.c: Likewise.
* gcc.c-torture/execute/921208-2.c: Likewise.
* gcc.c-torture/execute/921215-1.c: Likewise.
* gcc.c-torture/execute/921218-1.c: Likewise.
* gcc.c-torture/execute/921218-2.c: Likewise.
* gcc.c-torture/execute/930106-1.c: Likewise.
* gcc.c-torture/execute/930429-2.c: Likewise.
* gcc.c-torture/execute/930513-1.c: Likewise.
* gcc.c-torture/execute/930513-2.c: Likewise.
* gcc.c-torture/execute/930518-1.c: Likewise.
* gcc.c-torture/execute/930527-1.c: Likewise.
* gcc.c-torture/execute/930603-1.c: Likewise.
* gcc.c-torture/execute/930603-3.c: Likewise.
* gcc.c-torture/execute/930621-1.c: Likewise.
* gcc.c-torture/execute/930622-1.c: Likewise.
* gcc.c-torture/execute/930630-1.c: Likewise.
* gcc.c-torture/execute/930713-1.c: Likewise.
* gcc.c-torture/execute/930718-1.c: Likewise.
* gcc.c-torture/execute/930719-1.c: Likewise.
* gcc.c-torture/execute/930916-1.c: Likewise.
* gcc.c-torture/execute/930921-1.c: Likewise.
* gcc.c-torture/execute/930929-1.c: Likewise.
* gcc.c-torture/execute/930930-1.c: Likewise.
* gcc.c-torture/execute/931009-1.c: Likewise.
* gcc.c-torture/execute/931012-1.c: Likewise.
* gcc.c-torture/execute/931031-1.c: Likewise.
* gcc.c-torture/execute/931102-1.c: Likewise.
* gcc.c-torture/execute/931102-2.c: Likewise.
* gcc.c-torture/execute/931228-1.c: Likewise.
* gcc.c-torture/execute/940115-1.c: Likewise.
* gcc.c-torture/execute/940122-1.c: Likewise.
* gcc.c-torture/execute/941202-1.c: Likewise.
* gcc.c-torture/execute/950605-1.c: Likewise.
* gcc.c-torture/execute/960830-1.c: Likewise.
* gcc.c-torture/execute/961112-1.c: Likewise.
* gcc.c-torture/execute/990106-1.c: Likewise.
* gcc.c-torture/execute/cmpdi-1.c: Likewise.
* gcc.c-torture/execute/comp-goto-2.c: Likewise.
* gcc.c-torture/execute/dbra-1.c: Likewise.
* gcc.c-torture/execute/inst-check.c: Likewise.
* gcc.c-torture/execute/int-compare.c: Likewise.
* gcc.c-torture/execute/loop-2.c: Likewise.
* gcc.c-torture/execute/loop-2d.c: Likewise.
* gcc.c-torture/execute/loop-3.c: Likewise.
* gcc.c-torture/execute/loop-3b.c: Likewise.
* gcc.c-torture/execute/loop-3c.c: Likewise.
* gcc.c-torture/execute/mod-1.c: Likewise.
* gcc.c-torture/execute/strct-pack-3.c: Likewise.
* gcc.c-torture/execute/tstdi-1.c: Likewise.
|
|
gcc/testsuite/
* gcc.c-torture/compile/BUG17.c (main): Add missing int
return type and missing void type.
* gcc.c-torture/compile/BUG18.c (main): Likewise. Call
__builtin_printf instead of printf.
* gcc.c-torture/compile/BUG21.c (Nase): Add missing void
types.
* gcc.c-torture/compile/BUG23.c (main): Add missing int
return type and missing void type.
* gcc.c-torture/compile/BUG5.c (bar): Call
__builtin_printf instead of printf.
* gcc.c-torture/compile/BUG6.c (main): Likewise. Add missing
int return type and missing void type.
* gcc.c-torture/compile/b.c (main): Add missing int
return type and missing void type.
* gcc.c-torture/compile/b1.c (main): Likewise. Call
__builtin_printf instead of printf.
* gcc.c-torture/compile/b88.c (main): Add missing int
return type and missing void type.
* gcc.c-torture/compile/bbb.c (flset): Add missing void
return type and switch to prototype style.
* gcc.c-torture/compile/bf.c (clr, atoi): Declare.
(main): Add missing int return type. Call
__builtin_printf instead of printf.
* gcc.c-torture/compile/bt.c (main): Add missing int
return type and missing void type.
* gcc.c-torture/compile/charmtst.c (foo, bar): Declare.
(c_move_tst): Add missing int return type.
* gcc.c-torture/compile/cmpdi-1.c (f, g): Add missing int
return type.
* gcc.c-torture/compile/cmphi.c (foo): Likewise.
* gcc.c-torture/compile/conv.c (main): Likewise. Add missing
void type. Call __builtin_printf instead of printf.
* gcc.c-torture/compile/ddd.c (main): Add missing int
return type and missing void type.
* gcc.c-torture/compile/dilayout.c (str, ll): Add missing
void return type.
* gcc.c-torture/compile/dimove.c (foo): Likewise.
* gcc.c-torture/compile/f2.c (foo): Likewise.
* gcc.c-torture/compile/flatten.c (main): Add missing int
return type and missing void type.
* gcc.c-torture/compile/fnul.c (main): Likewise.
Call __builtin_printf instead of printf.
* gcc.c-torture/compile/fq.c (expand_to_ascii): Add missing
void return type.
* gcc.c-torture/compile/funcptr-1.c (g): Call __builtin_printf
instead of printf.
(f): Likewise. Add missing void types.
* gcc.c-torture/compile/glob.c (foo): Add missing void types.
* gcc.c-torture/compile/goto-1.c (f): Likewise.
* gcc.c-torture/compile/i++.c (main): Call __builtin_printf
instead of printf.
* gcc.c-torture/compile/ic.c (foo): Add missing int return
type.
* gcc.c-torture/compile/iftrap-1.c (bar, baz): Declare.
(f4, f6): Call __builtin_abort instead of abort.
* gcc.c-torture/compile/iftrap-2.c (bar): Declare.
* gcc.c-torture/compile/jmp.c (foo): Add missing int types.
* gcc.c-torture/compile/labels-1.c (f): Add missing int
return type and missing void type. Call __builtin_abort
instead of abort.
* gcc.c-torture/compile/labels-2.c (f): Likewise.
* gcc.c-torture/compile/lbug.c (main): Add missing int
return type and missing void type.
* gcc.c-torture/compile/memtst.c (memtst): Add missing void
return type.
(main): Add missing int return type and missing void type.
Call __builtin_bzero instead of bzero.
* gcc.c-torture/compile/miscomp.c (main): Add missing int
return type and missing void type. Call __builtin_printf
instead of printf.
* gcc.c-torture/compile/msp.c (bar): Declare.
(foo): Add missing void types.
* gcc.c-torture/compile/mtst.c (foo): Add missing int return
type.
* gcc.c-torture/compile/packed-1.c (f): Add missing void
types.
* gcc.c-torture/compile/pr17119.c (func1, func2): Declare.
* gcc.c-torture/compile/pr18712.c (foo, foo1): Declare.
* gcc.c-torture/compile/pr20412.c (bar1, bar2, bar3): Declare.
* gcc.c-torture/compile/pr21532.c (foo): Declare.
* gcc.c-torture/compile/pr22398.c (main): Call __builtin_exit
instead of exit.
* gcc.c-torture/compile/pr24883.c (orec_str_list): Add missing
void return type.
* gcc.c-torture/compile/pr25311.c (use): Declare.
* gcc.c-torture/compile/pr25514.c (foo): Declare.
* gcc.c-torture/compile/pr26425.c (key_put): Declare.
* gcc.c-torture/compile/pr27087.c (g): Declare.
* gcc.c-torture/compile/pr27282.c (colrow_equal): Add missing
int return type.
* gcc.c-torture/compile/pr27907.c (fann_run): Add missing
void return type.
* gcc.c-torture/compile/pr28489.c (c_compile): Likewise.
* gcc.c-torture/compile/pr28776-1.c
(tree_contains_struct_check_failed): Declare.
* gcc.c-torture/compile/pr29128.c (process_main): Add missing
void return type.
* gcc.c-torture/compile/pr29945.c (unget_char): Declare.
(main) Add missing void return type.
* gcc.c-torture/compile/pr33382.c (show_configuration): Add
missing int types.
* gcc.c-torture/compile/pr36141.c (ffi_prep_closure_loc): Add
missing return type.
* gcc.c-torture/compile/pr36988.c (__writel): Declare.
* gcc.c-torture/compile/pr37026.c (foo): Declare.
* gcc.c-torture/compile/pr37285.c (_bfd_abort): Declare.
(_bfd_xcoff_canonicalize_dynamic_reloc): Add missing void
return type.
* gcc.c-torture/compile/pr38554.c (applyFunction): Add missing
void return type.
* gcc.c-torture/compile/pr42164.c (swp_offset, __BUG_ON):
Declare.
* gcc.c-torture/compile/pr44788.c (foo): Declare.
* gcc.c-torture/compile/pr47364-1.c (arc4_init): Add missing
void return type.
* gcc.c-torture/compile/pr48596.c (_nrrdCenter): Declare.
* gcc.c-torture/compile/rel.c (foo): Add missing int return
type.
* gcc.c-torture/compile/run.c (main): Likewise. Add missing
void type.
* gcc.c-torture/compile/sar.c (main): Likewise.
* gcc.c-torture/compile/selfrec.c (foo): Add missing int
parameter type.
* gcc.c-torture/compile/shloop.c (main): Add missing int
return type and missing void type.
* gcc.c-torture/compile/shm.c (foo): Add missing int return
type.
* gcc.c-torture/compile/sim.c (main): Likewise. Add missing
void type.
* gcc.c-torture/compile/simd-5.c (main): Add missing int
return type and missing void type. Call __builtin_printf
instead of printf.
* gcc.c-torture/compile/sne.c (foo): Add missing int return
type.
* gcc.c-torture/compile/sound.c (write): Declare.
(main): Add missing int return type and missing void type.
* gcc.c-torture/compile/speed.c (main): Likewise.
* gcc.c-torture/compile/store0.c (foo): Add missing void
return type.
* gcc.c-torture/compile/storecc.c (foo): Add missing int
return type.
* gcc.c-torture/compile/strcpy-1.c (rezero): Add missing
void types.
* gcc.c-torture/compile/stru.c (foo): Add missing void return
type.
* gcc.c-torture/compile/stuct.c (main): Add missing int return
type and missing void type.
* gcc.c-torture/compile/time.c (main): Likewise.
* gcc.c-torture/compile/unalign-1.c (f): Declare.
* gcc.c-torture/compile/v.c (main): Add missing int return
type.
* gcc.c-torture/compile/xcsebug.c (foo): Add missing void
types.
* gcc.c-torture/compile/xmtst.c (p2, p3, p4): Add missing
int return type.
* gcc.c-torture/compile/xz.c (foo): Add missing void return
type.
* gcc.c-torture/execute/loop-2f.c (f): Add missing void
return type.
(main): Return instead of calling exit. Call __builtin_abort
instead of abort.
* gcc.c-torture/execute/loop-2g.c (f): Add missing void
return type.
(main): Return instead of calling exit. Call __builtin_abort
instead of abort.
* gcc.dg/20020206-1.c: Build without -w.
(main): Call __builtin_abort instead of abort and
__builtin_exit instead of exit.
* gcc.dg/ipa/20040703-wpa.c (main): Call __builtin_abort
instead of abort and __builtin_exit instead of exit.
* gcc.dg/torture/pr84528.c (main): Add missing int and void
types. Call __builtin_abort instead of abort, and
__builtin_exit instead of exit.
* gcc.dg/tree-ssa/pr68619-2.c (vector_type_mode, real_inf):
Declare.
* gcc.dg/tree-ssa/pr68619-3.c (iterative_hash): Declare.
(e_hash): Call __builtin_abort instead of abort.
* gcc.dg/tree-ssa/pr68619-4.c (rhs_regno, foop, arf): Declare.
* gcc.dg/tree-ssa/pr68619-5.c (invert_tree_comparison)
(vector_type_mode): Declare.
* gcc.dg/tree-ssa/pr69270-2.c (arf, gimple_debug_bind_p)
(gimple_bb, gimple_assign_rhs_to_tree)
(is_gimple_min_invariant, unshare_expr): Declare.
* gcc.dg/tree-ssa/pr69270-3.c: (end_imm_use_stmt_p)
(next_imm_use_stmt, arf, boo, update_stmt): Declare.
* gcc.dg/tree-ssa/ranger-threader-2.c (gimple_call_arg):
Declare.
(gimple_op): Call __builtin_abort instead of abort.
* gcc.dg/tree-ssa/ranger-threader-3.c (expand_binop): Declare.
* gcc.dg/tree-ssa/ssa-dom-branch-1.c (arf, foo): Declare.
(try_combine): Add casts to rtx.
* gcc.dg/tree-ssa/split-path-3.c (vec_heap_o_reserve)
(VEC_int_base_length, bmp_iter_and_compl_init)
(bmp_iter_and_compl, bmp_iter_next, VEC_int_heap_free):
Declare.
* gcc.dg/tree-ssa/split-path-7.c (linit): Call
__builtin_strcmp instead of strcmp.
* gcc.dg/tree-ssa/ssa-dom-thread-12.c (gimple_call_arg):
Declare.
(gimple_op): Call __builtin_abort instead of abort.
* gcc.dg/tree-ssa/ssa-dom-thread-13.c (arf, error): Declare.
(convert): Call __builtin_abort instead of abort.
* gcc.dg/tree-ssa/ssa-dom-thread-14.c (exand_binop): Declare.
* gcc.dg/tree-ssa/ssa-dom-thread-15.c
(ix86_target_stack_probe, pro_epilogue_adjust_stack)
(gen_rtx_CONST_INT, fancy_abort): Declare.
* gcc.dg/tree-ssa/ssa-dse-25.c (foo): Call __builtin_memset
instead of memset.
* gcc.target/aarch64/aapcs64/va_arg-17.c
(init_data): Call __builtin_memset instead of memset.
* gcc.target/i386/pr69030.c (fn1): Call __builtin_printf instead
of printf.
|
|
* gcc.c-torture/compile/20080613-1.c (hop_sendmsg): Call
__builtin_memcpy instead of memcpy.
* gcc.c-torture/compile/complex-6.c (bar): Declare.
* gcc.c-torture/compile/pr23445.c (__brelse): Declare.
* gcc.c-torture/compile/pr23946.c (long2str): Declare.
(avi_parse_comments): Call __builtin_memset instead of
memset. __builtin_malloc instead of malloc. Call
__builtin_memcpy instead of memcpy. Call
__builtin_free instead of free.
* gcc.c-torture/compile/pr31953.c (toggle_hexedit_mode):
Add missing void return type.
* gcc.c-torture/compile/pr32372.c (MPV_encode_init): Add
missing void return type.
* gcc.c-torture/compile/pr32355.c (sigemptyset): Declare.
(doSignalsSetup): Add missing void return type.
* gcc.c-torture/compile/pr32453.c (__assert_fail): Declare.
* gcc.c-torture/compile/pr32571.c (mthca_is_memfree)
(mthca_arbel_fmr_unmap, mthca_tavor_fmr_unmap)
(mthca_unmap_fmr): Declare.
* gcc.c-torture/compile/pr32584.c (sortpin): Add missing
void types.
* gcc.c-torture/compile/pr32919.c (read_int, _itoa_word)
(__strnlen): Declare.
* gcc.c-torture/compile/pr33173.c (test_dir_format): Add
missing void return type. Add missing int types.
* gcc.c-torture/compile/pr33855.c (cabsl): Declare.
* gcc.c-torture/compile/pr34334.c (__strsep_1c)
(__strsep_2c): Add missing void return type.
* gcc.c-torture/compile/pr35006.c (grub_putchar)
(cl_set_pos, cl_print, grub_memmove, cl_delete): Declare.
(grub_cmdline_get): Add missing void return type.
* gcc.c-torture/compile/pr35595.c (__kernel_sinf):
Declare.
* gcc.c-torture/compile/pr35869.c (f): Add missing void
return type.
* gcc.c-torture/compile/pr36172.c (FcCharSetFreeze): Add
missing return value.
* gcc.c-torture/compile/pr36238.c (lshift_s_s): Declare.
* gcc.c-torture/compile/pr37207.c (func_81, func_98):
Declare.
* gcc.c-torture/compile/pr37258.c (mod_rhs, lshift_s_s)
(func_112, func_23): Declare.
* gcc.c-torture/compile/pr37305.c (safe_mod_u_u): Declare.
* gcc.c-torture/compile/pr37327.c (func_93, func_59)
(func_124, func_117, safe_add_uint64_t_u_u)
(safe_mul_int32_t_s_s): Declare.
* gcc.c-torture/compile/pr37387.c (FuncMakeConsequencesPres):
Call __builtin_abort instead of ErrorQuit.
* gcc.c-torture/compile/pr37432.c (print_wkb_bytes): Declare.
* gcc.c-torture/compile/pr37713.c (sdp_seq_alloc): Declare.
* gcc.c-torture/compile/pr39886.c (func): Declare.
* gcc.c-torture/compile/pr39941.c (stop): Declare.
* gcc.c-torture/compile/pr41016.c (CompareRNAStructures):
Call __builtin_abort instead of Die.
* gcc.c-torture/compile/pr42632.c (___pskb_trim): Add
forward declaration.
* gcc.c-torture/compile/pr49710.c (baz): Add forward
declaration and missing void types.
(bar): Add missing void type.
* gcc.c-torture/compile/pr52437.c (fn2): Declare.
* gcc.c-torture/compile/pr57441.c (func_1): Add missing void
return type.
* gcc.c-torture/compile/pr87110.c (struct d): Add missing
semicolon.
(g, h): Define as int.
(i): Add missing void types.
* gcc.c-torture/compile/pr87468.c (a): Define as int.
(e, f): Declare.
(b): Add missing void types.
* gcc.c-torture/execute/pr79043.c (ptr2): Use cast in
initializer.
(typepun): Add missing void return type.
(main): Add missing int return type and missing void type.
* gcc.dg/pr100349.c (b): Add missing void return type.
* gcc.dg/pr106189.c (T): Declare.
* gcc.dg/pr110777.c (_setjmp): Declare
* gcc.dg/pr45506.c (dynvec, relative_relocp, atexit): Declare.
(fini_array): Cast result of relative_relocp from int to int *.
* gcc.dg/pr97359.c: Compile with -Wno-pointer-to-int-cast.
(b): Cast point to int to avoid int-conversion warning.
* gcc.dg/uninit-pr78548.c: Call __builtin_printf instead
of printf.
* gcc.dg/torture/pr39829.c (f): Declare.
* gcc.dg/torture/pr44977.c (int329): Cast bar from pointer
to short.
* gcc.dg/torture/pr53703.c (ifa_sa_len): Declare.
(usagi_getifaddrs): Call __builtin_memset instead of memset
and __builtin_memcmp instead of memcmp.
* gcc.dg/torture/pr68625.c (z9): Explicitly cast
pointers to int.
* gcc.dg/torture/pr55964.c (f): Cast q to the expected type.
* gcc.dg/torture/pr70623.c (h9): Fix pointer cast in assignment
of av.
* gcc.dg/torture/pr81118.c (c): Return zero instead of
nothing.
* gcc.dg/torture/pr81510.c (e): Add cast from int to pointer.
* gcc.dg/torture/pr99694.c (d): Add missing casts between
pointers and integers.
* gcc.dg/tree-ssa/pr102563.c: Define as void (*) (void).
(_bdf_parse_glyphs_p): Define with prototype.
* gcc.dg/tree-ssa/pr92085-1.c (di): Add cast to initialization
of fq.
* gcc.dg/tree-ssa/pr92085-2.c (c1): Add casts to
initializations of th, lq.
* gcc.dg/tree-ssa/reassoc-43.c
(c_parser_next_token_is_keyword, chainon)
(c_parser_attributes): Declare.
* gcc.dg/tree-ssa/split-path-4.c (powi_lookup_cost): Declare.
(powi_cost): Add missing void return type.
* gcc.dg/tree-ssa/split-path-6.c (strtosichar)
(ichartosstr, treeinsert, stop, __srget_r): Declare
(givehelp, oof, lookharder): Convert to prototypes.
* gcc.target/i386/pr71621-1.c (y8): Cast to expected
pointer type in assignment of t6.
* gcc.target/i386/pr79571.c (g): Add missing int type.
(j): Add missing void types and pointer cast.
* gcc.target/i386/pr87246.c (s2): Add cast from integer
to pointer type.
* gcc.target/i386/pr87759.c (rc): Cast to the expected
pointer time in initialization of ar.
* gcc.target/i386/pr99454.c (tg3_start_xmit): Add
missing cast from int to int *.
|
|
These tests use obsolete language constructs, but they are not
clearly targeting C89, either. So use -fpermissive to keep
future errors as warnings.
The reasons why obsolete constructs are used used vary from
test to test. Some tests deliberately exercise later stages
of the compiler that only occur with those constructs. Some
tests have precise expectations about warnings that will become
errors with a future change, but do not specifically test a
particular warning/error (if that is the case, the later changes
tend to duplicate them into warning/error variants). In a few
cases, use of obsolete constructs is clearly due to test case
reduction, but it was not possible to un-reduce the test due
to its size.
gcc/testsuite/
* c-c++-common/Wduplicated-branches-11.c: Compile with
-fpermissive.
* c-c++-common/Wduplicated-branches-12.c: Likewise.
* c-c++-common/builtins.c: Likewise.
* c-c++-common/pointer-to-fn1.c: Likewise.
* gcc.c-torture/compile/20010320-1.c: Likewise.
* gcc.c-torture/compile/20050105-1.c: Likewise.
* gcc.c-torture/compile/20080704-1.c: Likewise.
* gcc.c-torture/compile/20080910-1.c: Likewise.
* gcc.c-torture/compile/20090917-1.c: Likewise.
* gcc.c-torture/compile/20100915-1.c: Likewise.
* gcc.c-torture/compile/20101216-1.c: Likewise.
* gcc.c-torture/compile/20121027-1.c: Likewise.
* gcc.c-torture/compile/20180605-1.c: Likewise.
* gcc.c-torture/compile/950816-2.c: Likewise.
* gcc.c-torture/compile/dse.c: Likewise.
* gcc.c-torture/compile/pr100576.c: Likewise.
* gcc.c-torture/compile/pr17408.c: Likewise.
* gcc.c-torture/compile/pr19121.c: Likewise.
* gcc.c-torture/compile/pr26213.c: Likewise.
* gcc.c-torture/compile/pr27341-2.c: Likewise.
* gcc.c-torture/compile/pr28776-2.c: Likewise.
* gcc.c-torture/compile/pr33133.c: Likewise.
* gcc.c-torture/compile/pr34091.c: Likewise.
* gcc.c-torture/compile/pr36154.c: Likewise.
* gcc.c-torture/compile/pr37381.c: Likewise.
* gcc.c-torture/compile/pr38360.c: Likewise.
* gcc.c-torture/compile/pr40291.c: Likewise.
* gcc.c-torture/compile/pr41182-1.c: Likewise.
* gcc.c-torture/compile/pr43635.c: Likewise.
* gcc.c-torture/compile/pr44043.c: Likewise.
* gcc.c-torture/compile/pr44063.c: Likewise.
* gcc.c-torture/compile/pr44246.c: Likewise.
* gcc.c-torture/compile/pr45535.c: Likewise.
* gcc.c-torture/compile/pr46934.c: Likewise.
* gcc.c-torture/compile/pr47428.c: Likewise.
* gcc.c-torture/compile/pr49145.c: Likewise.
* gcc.c-torture/compile/pr49206.c: Likewise.
* gcc.c-torture/compile/pr51694.c: Likewise.
* gcc.c-torture/compile/pr53886.c: Likewise.
* gcc.c-torture/compile/pr65241.c: Likewise.
* gcc.c-torture/compile/pr72802.c: Likewise.
* gcc.c-torture/compile/pr81360.c: Likewise.
* gcc.c-torture/compile/pr82052.c: Likewise.
* gcc.c-torture/compile/pr90275-2.c: Likewise.
* gcc.c-torture/compile/pr90275.c: Likewise.
* gcc.c-torture/compile/pr96796.c: Likewise.
* gcc.c-torture/compile/regs-arg-size.c: Likewise.
* gcc.c-torture/compile/udivmod4.c: Likewise.
* gcc.c-torture/compile/widechar-1.c: Likewise.
* gcc.c-torture/execute/20000412-3.c: Likewise.
* gcc.c-torture/execute/20010605-2.c: Likewise.
* gcc.c-torture/execute/20020314-1.c: Likewise.
* gcc.c-torture/execute/20020819-1.c: Likewise.
* gcc.c-torture/execute/20031211-2.c: Likewise.
* gcc.c-torture/execute/20040223-1.c: Likewise.
* gcc.c-torture/execute/20041019-1.c: Likewise.
* gcc.c-torture/execute/20120427-1.c: Likewise.
* gcc.c-torture/execute/20120427-2.c: Likewise.
* gcc.c-torture/execute/920908-2.c: Likewise.
* gcc.c-torture/execute/921110-1.c: Likewise.
* gcc.c-torture/execute/930111-1.c: Likewise.
* gcc.c-torture/execute/930208-1.c: Likewise.
* gcc.c-torture/execute/930702-1.c: Likewise.
* gcc.c-torture/execute/930818-1.c: Likewise.
* gcc.c-torture/execute/931017-1.c: Likewise.
* gcc.c-torture/execute/931018-1.c: Likewise.
* gcc.c-torture/execute/931208-1.c: Likewise.
* gcc.c-torture/execute/941101-1.c: Likewise.
* gcc.c-torture/execute/941110-1.c: Likewise.
* gcc.c-torture/execute/950322-1.c: Likewise.
* gcc.c-torture/execute/950426-1.c: Likewise.
* gcc.c-torture/execute/950512-1.c: Likewise.
* gcc.c-torture/execute/950621-1.c: Likewise.
* gcc.c-torture/execute/960218-1.c: Likewise.
* gcc.c-torture/execute/960402-1.c: Likewise.
* gcc.c-torture/execute/cmpsf-1.c: Likewise.
* gcc.c-torture/execute/cmpsi-1.c: Likewise.
* gcc.c-torture/execute/cmpsi-2.c: Likewise.
* gcc.c-torture/execute/divmod-1.c: Likewise.
* gcc.c-torture/execute/pr22061-1.c: Likewise.
* gcc.c-torture/execute/pr55875.c: Likewise.
* gcc.dg/20050629-1.c: Likewise.
* gcc.dg/20080615-1.c: Likewise.
* gcc.dg/Walloca-14.c: Likewise.
* gcc.dg/Wbuiltin-declaration-mismatch-3.c: Likewise.
* gcc.dg/Wbuiltin-declaration-mismatch-9.c: Likewise.
* gcc.dg/Wdouble-promotion.c: Likewise.
* gcc.dg/Wrestrict-5.c: Likewise.
* gcc.dg/Wstringop-overflow-13.c: Likewise.
* gcc.dg/analyzer/fd-bind-pr107783.c: Likewise.
* gcc.dg/array-5.c: Likewise.
* gcc.dg/asan/pr56417.c: Likewise.
* gcc.dg/attr-access-read-only.c: Likewise.
* gcc.dg/attr-access-read-write.c: Likewise.
* gcc.dg/attr-access-write-only.c: Likewise.
* gcc.dg/bitint-36.c: Likewise.
* gcc.dg/builtin-bswap-10.c: Likewise.
* gcc.dg/cleanup-1.c: Likewise.
* gcc.dg/cpp/pr60014-1.c: Likewise.
* gcc.dg/cpp/pr60014-2.c: Likewise.
* gcc.dg/cpp/pr60014-3.c: Likewise.
* gcc.dg/ipa/ipa-bit-cp-1.c: Likewise.
* gcc.dg/ipa/ipa-bit-cp-2.c: Likewise.
* gcc.dg/ipa/ipa-bit-cp.c: Likewise.
* gcc.dg/ipa/pr105639.c: Likewise.
* gcc.dg/ipa/pr71981.c: Likewise.
* gcc.dg/lto/20081109_0.c: Likewise.
* gcc.dg/lto/pr54702_1.c: Likewise.
* gcc.dg/lto/pr55525_0.c: Likewise.
* gcc.dg/noncompile/20020213-1.c:: Likewise.
* gcc.dg/noncompile/pr71426.c: Likewise.
* gcc.dg/noncompile/undeclared-1.c: Likewise.
* gcc.dg/overflow-warn-2.c: Likewise.
* gcc.dg/pr100142.c: Likewise.
* gcc.dg/pr100790.c: Likewise.
* gcc.dg/pr100791.c: Likewise.
* gcc.dg/pr103093.c: Likewise.
* gcc.dg/pr105140.c: Likewise.
* gcc.dg/pr105250.c: Likewise.
* gcc.dg/pr105853.c: Likewise.
* gcc.dg/pr105856.c: Likewise.
* gcc.dg/pr26865.c: Likewise.
* gcc.dg/pr40989.c: Likewise.
* gcc.dg/pr42715.c: Likewise.
* gcc.dg/pr44971.c: Likewise.
* gcc.dg/pr46571.c: Likewise.
* gcc.dg/pr54363.c: Likewise.
* gcc.dg/pr56724-2.c: Likewise.
* gcc.dg/pr59630.c: Likewise.
* gcc.dg/pr67043.c: Likewise.
* gcc.dg/pr67730-1.c: Likewise.
* gcc.dg/pr67730-2.c: Likewise.
* gcc.dg/pr68320.c: Likewise.
* gcc.dg/pr69156.c: Likewise.
* gcc.dg/pr69824.c: Likewise.
* gcc.dg/pr70174.c: Likewise.
* gcc.dg/pr70281.c: Likewise.
* gcc.dg/pr77862.c: Likewise.
* gcc.dg/pr82765.c: Likewise.
* gcc.dg/pr83852.c: Likewise.
* gcc.dg/pr84206.c: Likewise.
* gcc.dg/pr85164-1.c: Likewise.
* gcc.dg/pr85955.c: Likewise.
* gcc.dg/pr86271.c: Likewise.
* gcc.dg/pr86928.c: Likewise.
* gcc.dg/pr99122-1.c: Likewise.
* gcc.dg/pr99136.c: Likewise.
* gcc.dg/redecl-19.c: Likewise.
* gcc.dg/redecl-24.c: Likewise.
* gcc.dg/torture/pr39204.c: Likewise.
* gcc.dg/torture/pr57676.c: Likewise.
* gcc.dg/torture/pr67222.c: Likewise.
* gcc.dg/torture/pr77677-2.c: Likewise.
* gcc.dg/torture/pr79125.c: Likewise.
* gcc.dg/torture/pr94479.c: Likewise.
* gcc.dg/tree-ssa/20070815.c: Likewise.
* gcc.dg/tree-ssa/builtin-sprintf-29.c: Likewise.
* gcc.dg/tree-ssa/builtins-folding-gimple-ub.c: Likewise.
* gcc.dg/tree-ssa/pr22051-2.c: Likewise.
* gcc.dg/tree-ssa/ssa-dse-10.c: Likewise.
* gcc.target/aarch64/pr60697.c: Likewise.
* gcc.target/aarch64/pr87305.c: Likewise.
* gcc.target/aarch64/sve/pr96357.c: Likewise.
* gcc.target/i386/attr-nocf-check-1a.c: Likewise.
* gcc.target/i386/attr-nocf-check-3a.c: Likewise.
* gcc.target/i386/avx512bf16-pr108881.c: Likewise.
* gcc.target/i386/cet-notrack-2a.c: Likewise.
* gcc.target/i386/cet-notrack-2b.c: Likewise.
* gcc.target/i386/cet-notrack-5b.c: Likewise.
* gcc.target/i386/cet-notrack-6a.c: Likewise.
* gcc.target/i386/cet-notrack-6b.c: Likewise.
* gcc.target/i386/pr70325.c: Likewise.
* gcc.target/i386/pr70858.c: Likewise.
* gcc.target/i386/pr83488.c: Likewise.
* gcc.target/i386/pr85511.c: Likewise.
* gcc.target/i386/pr87572.c: Likewise.
* gcc.target/i386/pr88195.c: Likewise.
|
|
(fcopysign x, NEGATIVE_CONST) can be simplified to (fneg (fabs x)), but
a logic error in the code caused it mistakenly simplified to (fneg x)
instead.
gcc/ChangeLog:
PR rtl-optimization/112483
* simplify-rtx.cc (simplify_binary_operation_1) <case COPYSIGN>:
Fix the simplification of (fcopysign x, NEGATIVE_CONST).
|
|
The following testcase ICEs when dumping details.
When m_ssa_ranges vector is created, it is safe_grow_cleared (num_ssa_names),
but when when some new SSA_NAME is added, we strangely grow it to
num_ssa_names + 1 instead and later on the 3 argument dump method
iterates from 1 to m_ssa_ranges.length () - 1 and uses ssa_name (x)
on each; but because set_bb_range grew it one too much, ssa_name
(m_ssa_ranges.length () - 1) might be after the end of the ssanames
vector and ICE.
The fix grows the vector consistently only to num_ssa_names,
doesn't waste time checking m_ssa_ranges[0] because there is no
ssa_names (0), it is always NULL, before using ssa_name (x) checks
if we'll need it at all (we check later if m_ssa_ranges[x] is non-NULL,
so we might check it earlier as well) and also in the last loop
iterates until m_ssa_ranges.length () rather than num_ssa_names, I don't
see a reason for the inconsistency and in theory some SSA_NAME could be
added without set_bb_range called for it and the vector could be shorter
than the ssanames vector.
To actually fix the ICE, either the first hunk or the last 2 hunks
would be enough, but I think it doesn't hurt to change all the spots.
2023-11-13 Jakub Jelinek <jakub@redhat.com>
PR tree-optimization/111967
* gimple-range-cache.cc (block_range_cache::set_bb_range): Grow
m_ssa_ranges to num_ssa_names rather than num_ssa_names + 1.
(block_range_cache::dump): Iterate from 1 rather than 0. Don't use
ssa_name (x) unless m_ssa_ranges[x] is non-NULL. Iterate to
m_ssa_ranges.length () rather than num_ssa_names.
* gcc.dg/tree-ssa/pr111967.c: New test.
|
|
fld and fst have same address mode as ld.w and st.w, so the same
optimization as r14-4851 should be applied for them too.
gcc/ChangeLog:
* config/loongarch/loongarch.md (LD_AT_LEAST_32_BIT): New mode
iterator.
(ST_ANY): New mode iterator.
(define_peephole2): Use LD_AT_LEAST_32_BIT instead of GPR and
ST_ANY instead of QHWD for applicable patterns.
|
|
loongarch_expand_vec_cond_mask_expr [PR112476]
GCC internal says:
'subreg's of 'subreg's are not supported. Using
'simplify_gen_subreg' is the recommended way to avoid this problem.
Unfortunately loongarch_expand_vec_cond_mask_expr might create nested
subreg under certain circumstances, causing an ICE.
Use simplify_gen_subreg as the internal document suggests.
gcc/ChangeLog:
PR target/112476
* config/loongarch/loongarch.cc
(loongarch_expand_vec_cond_mask_expr): Call simplify_gen_subreg
instead of gen_rtx_SUBREG.
gcc/testsuite/ChangeLog:
PR target/112476
* gcc.target/loongarch/pr112476-1.c: New test.
* gcc.target/loongarch/pr112476-2.c: New test.
|
|
The hancement of mode-switching performs some optimization when
emit the frm backup insn, some redudant fsrm insns are removed
for the following test cases.
This patch would like to adjust the asm check for above optimization.
gcc/testsuite/ChangeLog:
* gcc.target/riscv/rvv/base/float-point-dynamic-frm-54.c: Adjust
the asm checker.
* gcc.target/riscv/rvv/base/float-point-dynamic-frm-57.c: Ditto.
* gcc.target/riscv/rvv/base/float-point-dynamic-frm-58.c: Ditto.
Signed-off-by: Pan Li <pan2.li@intel.com>
|
|
This patch would like to support the FP below API auto vectorization
with different type size
+------------+-----------+----------+
| API | RV64 | RV32 |
+------------+-----------+----------+
| lrintf16 | HF => DI | HF => SI |
| llrintf16 | HF => DI | HF => DI |
| lroundf16 | HF => DI | HF => SI |
| llroundf16 | HF => DI | HF => DI |
+------------+-----------+----------+
Given below code:
void
test_lrintf16 (long *out, _Float16 *in, int count)
{
for (unsigned i = 0; i < count; i++)
out[i] = __builtin_lrintf16 (in[i]);
}
Before this patch:
.L3:
lhu a5,0(s0)
addi s0,s0,2
addi s1,s1,8
fmv.s.x fa0,a5
call lrintf16
sd a0,-8(s1)
bne s0,s2,.L3
After this patch:
.L3:
vsetvli a5,a2,e16,mf4,ta,ma
vle16.v v1,0(a1)
vfwcvt.f.f.v v2,v1
vsetvli zero,zero,e32,mf2,ta,ma
vfwcvt.x.f.v v1,v2
vse64.v v1,0(a0)
slli a4,a5,1
add a1,a1,a4
slli a4,a5,3
add a0,a0,a4
sub a2,a2,a5
bne a2,zero,.L3
gcc/ChangeLog:
* config/riscv/autovec.md: Add bridge mode to lrint and lround
pattern.
* config/riscv/riscv-protos.h (expand_vec_lrint): Add new arg
bridge machine mode.
(expand_vec_lround): Ditto.
* config/riscv/riscv-v.cc (emit_vec_widden_cvt_f_f): New helper
func impl to emit vfwcvt.f.f.
(emit_vec_rounding_to_integer): Handle the HF to DI rounding
with the bridge mode.
(expand_vec_lrint): Reorder the args.
(expand_vec_lround): Ditto.
(expand_vec_lceil): Ditto.
(expand_vec_lfloor): Ditto.
* config/riscv/vector-iterators.md: Add vector HFmode and bridge
mode for converting to DI.
gcc/testsuite/ChangeLog:
* gcc.target/riscv/rvv/autovec/unop/math-llrintf16-0.c: New test.
* gcc.target/riscv/rvv/autovec/unop/math-llroundf16-0.c: New test.
* gcc.target/riscv/rvv/autovec/unop/math-lrintf16-rv32-0.c: New test.
* gcc.target/riscv/rvv/autovec/unop/math-lrintf16-rv64-0.c: New test.
* gcc.target/riscv/rvv/autovec/unop/math-lroundf16-rv32-0.c: New test.
* gcc.target/riscv/rvv/autovec/unop/math-lroundf16-rv64-0.c: New test.
* gcc.target/riscv/rvv/autovec/vls/math-llrintf16-0.c: New test.
* gcc.target/riscv/rvv/autovec/vls/math-llroundf16-0.c: New test.
* gcc.target/riscv/rvv/autovec/vls/math-lrintf16-rv32-0.c: New test.
* gcc.target/riscv/rvv/autovec/vls/math-lrintf16-rv64-0.c: New test.
* gcc.target/riscv/rvv/autovec/vls/math-lroundf16-rv32-0.c: New test.
* gcc.target/riscv/rvv/autovec/vls/math-lroundf16-rv64-0.c: New test.
Signed-off-by: Pan Li <pan2.li@intel.com>
|
|
it starts a new live range."
This reverts commit 85b49ad863965408668627f10b5b1b106053f319.
|
|
The relevant peephole2 will never generate alternative (=m,=&a,0,m) because
operand 1 is not dead before the peephole2 pattern.
gcc/ChangeLog:
* config/i386/i386.md (*stack_protect_set_4s_<mode>_di):
Remove alternative 0.
|
|
libgcc/config/avr/libf7/
* libf7-asm.sx (sqrt_approx): Rewrite.
* libf7.c (f7_sqrt): Use it instead of sqrt_worker.
(sqrt_worker): Remove.
|
|
IPA-CP can handle addresses of scalar constants (CONST_DECL) so this extends
that to addresses of constants in the pool (DECL_IN_CONSTANT_POOL). Again
this is helpful for so-called fat pointers in Ada, i.e. objects that are
semantically pointers but represented by structures made up of two pointers.
This also moves the unused function print_ipcp_constant_value from ipa-cp.cc
to ipa-prop.cc and renames it.
gcc/
* ipa-cp.cc (print_ipcp_constant_value): Move to...
(values_equal_for_ipcp_p): Deal with VAR_DECLs from the
constant pool.
* ipa-prop.cc (ipa_print_constant_value): ...here. Likewise.
(ipa_print_node_jump_functions_for_edge): Call the function
ipa_print_constant_value to print IPA_JF_CONST elements.
|
|
starts a new live range.
CLOBBER and USE does not represent real instructions, but in the
process of pipeline optimization, they will wait for transmission
in ready list like other insns, without considering resource
conflicts and cycles. This results in a multi-issue CPU architecture
that can be issued at any time if other regular insns have resource
conflicts or cannot be launched for other reasons. As a result,
its position is advanced in the generated insns sequence, which
will affect register allocation and often lead to more redundant
mov instructions.
A simple example:
https://github.com/majin2020/gcc-test/blob/master/test.c
This is a function in the dhrystone benchmark.
https://github.com/majin2020/gcc-test/blob/0b08c1a13de9663d7d9aba7539b960ec0607ca24/test.c.299r.sched1
This is a log of the pass 'sched1' When -mtune=rocket but issue_rate == 2.
The pipeline is:
;; | insn | prio |
;; | 17 | 3 | r142=a0 alu
;; | 14 | 0 | clobber r136 nothing
;; | 13 | 0 | clobber a0 nothing
;; | 18 | 2 | r143=a1 alu
...
;; | 12 | 0 | a0=r136 alu
;; | 15 | 0 | use a0 nothing
In this log, insn 13 and 14 are much ahead of schedule, which risks generating
redundant mov instructions, which seems unreasonable.
Therefore, I submit patch again on the basis of the last review
opinions to try to solve this problem.
https://github.com/majin2020/gcc-test/commit/efcb43e3369e771bde702955048bfe3f501263dd#diff-805031b1be5092a2322852a248d0b0f92eef7cad5784a8209f4dfc6221407457L189
This is the diff log of shed1 after patch is added.
The new pipeline is:
;; | insn | prio |
;; | 17 | 3 | r142=a0 alu
...
;; | 10 | 0 | [r144]=r141 alu
;; | 13 | 0 | clobber a0 nothing
;; | 14 | 0 | clobber r136 nothing
;; | 12 | 0 | a0=r136 alu
;; | 15 | 0 | use a0 nothing
gcc/ChangeLog:
* haifa-sched.cc (use_or_clobber_starts_range_p): New.
(prune_ready_list): USE or CLOBBER should delay execution
if it starts a new live range.
|
|
The following testcase ICEs, because the temp_stmts were removed in
wrong order, from the ones appearing earlier in the IL to the later ones,
so insert_debug_temps_for_defs can reintroduce dead SSA_NAMEs back into the
IL.
The following patch fixes that by removing them in the order they were
pushed into the vector, which is from later ones to earlier ones.
Additionally, I've noticed I forgot to call release_defs on the removed
stmts.
2023-11-11 Jakub Jelinek <jakub@redhat.com>
PR middle-end/112430
* tree-ssa-math-opts.cc (match_uaddc_usubc): Remove temp_stmts in the
order they were pushed rather than in reverse order. Call
release_defs after gsi_remove.
* gcc.dg/pr112430.c: New test.
|
|
This patch adds a way for targets to ask that selected mode changes
be brought forward, through a combination of:
(1) requiring a mode in blocks where the entity was previously
transparent
(2) pushing the transition at the head of a block onto incomging edges
SME has two uses for this:
- A "one-shot" entity that, for any given path of execution,
either stays off or makes exactly one transition from off to on.
This relies only on (1) above; see the hook description for more info.
The main purpose of using mode-switching for this entity is to
shrink-wrap the code that requires it.
- A second entity for which all transitions must be from known
modes, which is enforced using a combination of (1) and (2).
More specifically, (1) looks for edges B1->B2 for which:
- B2 requires a specific mode and
- B1 does not guarantee a specific starting mode
In this system, such an edge is only possible if the entity is
transparent in B1. (1) then forces B1 to require some safe common
mode. Applying this inductively means that all incoming edges are
from known modes. If different edges give different starting modes,
(2) pushes the transitions onto the edges themselves; this only
happens if the entity is not transparent in some predecessor block.
The patch also uses the back-propagation as an excuse to do a simple
on-the-fly optimisation.
Hopefully the comments in the patch explain things a bit better.
gcc/
* target.def (mode_switching.backprop): New hook.
* doc/tm.texi.in (TARGET_MODE_BACKPROP): New @hook.
* doc/tm.texi: Regenerate.
* mode-switching.cc (struct bb_info): Add single_succ.
(confluence_info): Add transp field.
(single_succ_confluence_n, single_succ_transfer): New functions.
(backprop_confluence_n, backprop_transfer): Likewise.
(optimize_mode_switching): Use them. Push mode transitions onto
a block's incoming edges, if the backprop hook requires it.
|
|
The mode-switching pass assumed that all of an entity's modes
were mutually exclusive. However, the upcoming SME changes
have an entity with some overlapping modes, so that there is
sometimes a "superunion" mode that contains two given modes.
We can use this relationship to pass something more helpful than
"don't know" to the emit hook.
This patch adds a new hook that targets can use to specify
a mode confluence operator.
With mutually exclusive modes, it's possible to compute a block's
incoming and outgoing modes by looking at its availability sets.
With the confluence operator, we instead need to solve a full
dataflow problem.
However, when emitting a mode transition, the upcoming SME use of
mode-switching benefits from having as much information as possible
about the starting mode. Calculating this information is definitely
worth the compile time.
The dataflow problem is written to work before and after the LCM
problem has been solved. A later patch makes use of this.
While there (since git blame would ping me for the reindented code),
I used a lambda to avoid the cut-&-pasted loops.
gcc/
* target.def (mode_switching.confluence): New hook.
* doc/tm.texi (TARGET_MODE_CONFLUENCE): New @hook.
* doc/tm.texi.in: Regenerate.
* mode-switching.cc (confluence_info): New variable.
(mode_confluence, forward_confluence_n, forward_transfer): New
functions.
(optimize_mode_switching): Use them to calculate mode_in when
TARGET_MODE_CONFLUENCE is defined.
|
|
The pass used the edge aux field to record which mode change
should happen on the edge, with -1 meaning "none". It's more
convenient for later patches to leave aux zero for "none",
and use numbers based at 1 to record a change.
gcc/
* mode-switching.cc (commit_mode_sets): Use 1-based edge aux values.
|
|
This patch passes the set of live hard registers to the after hook,
like the previous one did for the needed hook.
gcc/
* target.def (mode_switching.after): Add a regs_live parameter.
* doc/tm.texi: Regenerate.
* config/epiphany/epiphany-protos.h (epiphany_mode_after): Update
accordingly.
* config/epiphany/epiphany.cc (epiphany_mode_needed): Likewise.
(epiphany_mode_after): Likewise.
* config/i386/i386.cc (ix86_mode_after): Likewise.
* config/riscv/riscv.cc (riscv_mode_after): Likewise.
* config/sh/sh.cc (sh_mode_after): Likewise.
* mode-switching.cc (optimize_mode_switching): Likewise.
|
|
The emit hook already takes the set of live hard registers as input.
This patch passes it to the needed hook too. SME uses this to
optimise the mode choice based on whether state is live or dead.
The main caller already had access to the required info, but the
special handling of return values did not.
gcc/
* target.def (mode_switching.needed): Add a regs_live parameter.
* doc/tm.texi: Regenerate.
* config/epiphany/epiphany-protos.h (epiphany_mode_needed): Update
accordingly.
* config/epiphany/epiphany.cc (epiphany_mode_needed): Likewise.
* config/epiphany/mode-switch-use.cc (insert_uses): Likewise.
* config/i386/i386.cc (ix86_mode_needed): Likewise.
* config/riscv/riscv.cc (riscv_mode_needed): Likewise.
* config/sh/sh.cc (sh_mode_needed): Likewise.
* mode-switching.cc (optimize_mode_switching): Likewise.
(create_pre_exit): Likewise, using the DF simulate functions
to calculate the required information.
|