1 # The following targets fail 20020720-1.c for several reasons:
2 # (1) They implement floating point instructions via software, or
3 # (2) The "abs(x) < 0.0" comparison is split up in too many intermediate
4 # insns for combine to handle -- it can handle max three insns
5 # simultaneously. For example, for RISCy machines it is common that 1
6 # insn performs abs, 1 insn loads 0.0, 1 insn sets CCmode flags based
7 # upon the FP comparison, and a 4th insn makes a conditional branch
8 # based upon the appropriate bits in the flags. On the other hand, if
9 # for example the comparison insn takes 0.0 as an operand, the
10 # combiner is able to see all intermediate instructions simultaneously
11 # and can make the optimization.
13 # Don't XFAIL at -O0, that should never fail.
14 if { [istarget "sparc*-*-*"] } {
15 set torture_eval_before_compile {
16 global compiler_conditional_xfail_data
17 set compiler_conditional_xfail_data {
27 set torture_eval_before_compile {
28 global compiler_conditional_xfail_data
29 set compiler_conditional_xfail_data {
30 "This test fails to optimize completely on certain platforms." \
31 { "xtensa-*-*" "sh-*-*" "arm*-*-*" "strongarm*-*-*" "xscale*-*-*" \
32 "h8300*-*-*" "frv-*-*" "powerpc*-*-*" "rs6000-*-*" } \