Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
208 lines (149 sloc) 11.7 KB
# This is a Red Light Green Light policy file for the GNU moxie-elf
# toolchain. See https://rl.gl for details.
# ------------------------------------------------------------------------------------------
# The test file gcc/testsuite/gcc.misc-tests/help.exp contains this
# fragment...
#
# check_for_options c++ "-Q --help=warnings" {
# -Wabsolute-value[ \t]+\[available in C, ObjC\]
# } "" ""
#
# ...which assumes the availability of a C++ compiler. This test will
# fail if there's no C++ compiler available. We should fix the testsuite.
#
# I've submitted a bug report for this: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92941
{ "result": "FAIL", "id": "compiler driver -Q --help=warnings option(s): \"-Wabsolute-value[ \\t]+\\[available in C, ObjC\\]\" present in output" } 2020-06-01
# ------------------------------------------------------------------------------------------
# $ moxie-elf-gcc attr-vector_size.c
# attr-vector_size.c:20:1: internal compiler error: in layout_type, at stor-layout.c:2429
# 20 | DEFVEC (extern, 29);
# | ^~~~~~
# Please submit a full bug report,
# with preprocessed source if appropriate.
# See <https://gcc.gnu.org/bugs/> for instructions.
# Max alignment on 32-bit ELF is 1<<28 bits. char vectors are aligned to the vector size.
# When the vector length exceeds the max alignment , the align is set to '0' and we
# get this ICE. We can implement a target hook to set alignment sizes, or perhaps
# consider a broader correction to the compiler.
{ "result": "FAIL", "id": "gcc.dg/attr-vector_size.c (test for excess errors)" } 2020-06-01
{ "result": "FAIL", "id": "gcc.dg/attr-vector_size.c ILP32 (test for errors, line 66)" } 2020-06-01
{ "result": "FAIL", "id": "gcc.dg/attr-vector_size.c ILP32 (test for errors, line 64)" } 2020-06-01
{ "result": "FAIL", "id": "gcc.dg/attr-vector_size.c ILP32 (test for errors, line 39)" } 2020-06-01
{ "result": "FAIL", "id": "gcc.dg/attr-vector_size.c ILP32 (test for errors, line 37)" } 2020-06-01
{ "result": "FAIL", "id": "gcc.dg/attr-vector_size.c (internal compiler error)" } 2020-06-01
# ------------------------------------------------------------------------------------------
# These tests create a vector whose alignment exceeds the size of what
# a 32-bit ELF object file can support. See the attr-vector_size.c as well.
{ "result": "FAIL", "id": "gcc.dg/pr69973.c (test for excess errors)" } 2020-06-02
{ "result": "FAIL", "id": "gcc.dg/pr69973.c (internal compiler error)" } 2020-06-02
# ------------------------------------------------------------------------------------------
# The moxie machine description doesn't include casesi or tablejump patterns, which this
# test assumes exist. We can either ignore this test the the test source header, or
# implement backend support (this is the correct option!).
{ "result": "FAIL", "id": "gcc.dg/tree-ssa/ssa-dom-thread-7.c scan-tree-dump-not dom3 \"Jumps threaded\"" } 2020-06-01
{ "result": "FAIL", "id": "gcc.dg/tree-ssa/ssa-dom-thread-7.c scan-tree-dump-not vrp2 \"Jumps threaded\"" } 2020-06-15
# ------------------------------------------------------------------------------------------
# These test programs are giving illegal instruction...
# spawn moxie-elf-run ./loop-interchange-1b.exe
# program stopped with signal 4 (Illegal instruction)
# ...because memset is stomping over the stack. Need to add this to
# test case:
# /* { dg-skip-if "too big data segment" { visium-*-* moxie-*-* } } */
{ "result": "FAIL", "id": "gcc.dg/tree-ssa/loop-interchange-1b.c execution test" } 2020-06-01
{ "result": "FAIL", "id": "gcc.dg/tree-ssa/loop-interchange-1.c execution test" } 2020-06-01
# ------------------------------------------------------------------------------------------
# This test needs updating for moxie.
#
# It's testing loop unwinding, expecting to see a call to 'foo' 5 times.
# moxie places the target in a register, so we should really be checking for
# 5 jsr instructions.
{ "result": "FAIL", "id": "gcc.dg/tree-ssa/loop-1.c scan-assembler-times foo 5" } 2020-06-01
# ------------------------------------------------------------------------------------------
# This looks like a misaligned memory access, but I haven't investigated yet.
# spawn moxie-elf-run ./pr37868.exe
# sim-core.c:424: assertion failed - (addr & (nr_bytes - 1)) == 0
# FAIL: gcc.dg/torture/pr37868.c -O0 execution test
{ "result": "FAIL", "id": "gcc.dg/torture/pr37868.c -O0 execution test" } 2020-06-01
# ------------------------------------------------------------------------------------------
# speculation barrier...
# This gives warning output like...
# spec-barrier-1.c:31:3: warning: this target does not define a speculation barrier; your program will still execute correctly, but incorrect speculation may not be be restricted
#
# Looking at the test code, it reads:
#
# /* Test that __builtin_speculation_safe_value returns the correct value. */
# /* This test will cause an unfiltered warning to be emitted on targets
# that have not implemented support for speculative execution
# barriers. They should fix that rather than disabling this
# test. */
#
# It looks like we just add the following to moxie.c:
#
#undef TARGET_HAVE_SPECULATION_SAFE_VALUE
#define TARGET_HAVE_SPECULATION_SAFE_VALUE speculation_safe_value_not_needed
{ "result": "FAIL", "id": "c-c++-common/spec-barrier-1.c -Wc++-compat (test for excess errors)" } 2020-06-01
# ------------------------------------------------------------------------------------------
# Need to add sibcall_epilogue pattern to moxie machine description
# /root/gcc/gcc/testsuite/gcc.dg/plugin/must-tail-call-1.c: In function 'caller':
# /root/gcc/gcc/testsuite/gcc.dg/plugin/must-tail-call-1.c:14:10: error: cannot tail-call: machine description does not have a sibcall_epilogue instruction pattern
{ "result": "FAIL", "id": "gcc.dg/plugin/must-tail-call-1.c -fplugin=./must_tail_call_plugin.so (test for excess errors)" } 2020-06-01
# ------------------------------------------------------------------------------------------
# This was yet another bug in setjmp/longjmp,
# fixed by https://sourceware.org/git/?p=newlib-cygwin.git;a=commit;h=b481c11e5a7eb409c76f56873d6378e7ff1e3e05
{ "result": "FAIL", "id": "gcc.c-torture/execute/pr56982.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects execution test" } 2020-06-20
{ "result": "FAIL", "id": "gcc.c-torture/execute/pr56982.c -O2 -flto -fno-use-linker-plugin -flto-partition=none execution test" } 2020-06-20
{ "result": "FAIL", "id": "gcc.c-torture/execute/pr56982.c -O3 -g execution test" } 2020-06-20
{ "result": "FAIL", "id": "gcc.c-torture/execute/pr56982.c -O2 execution test" } 2020-06-20
{ "result": "FAIL", "id": "gcc.c-torture/execute/pr56982.c -Os execution test" } 2020-06-20
{ "result": "FAIL", "id": "gcc.c-torture/execute/pr56982.c -O1 execution test" } 2020-06-20
{ "result": "FAIL", "id": "gcc.c-torture/execute/pr56982.c -O0 execution test" } 2020-06-20
# ------------------------------------------------------------------------------------------
# These failures don't appear to be moxie related. Check with other ports.
{ "result": "FAIL", "id": "gcc.dg/Wstringop-overflow-25.c (test for warnings, line 319)" } 2020-06-01
{ "result": "FAIL", "id": "gcc.dg/Wstringop-overflow-25.c (test for warnings, line 318)" } 2020-06-01
{ "result": "FAIL", "id": "gcc.dg/Wstringop-overflow-25.c (test for warnings, line 317)" } 2020-06-01
{ "result": "FAIL", "id": "gcc.dg/Wstringop-overflow-17.c (test for warnings, line 8)" } 2020-06-01
# ------------------------------------------------------------------------------------------
# Need to xfail these in the testsuite. moxie has no sibcall md pattern yet.
# eg..
# /* { dg-do run { xfail { { amdgcn*-*-* cris-*-* crisv32-*-* csky-*-* h8300-*-* hppa*64*-*-* m32r-*-* mcore-*-* mn10300-*-* moxie*-*-* msp430*-*-* nds32*-*-* xstormy16-*-* v850*-*-* vax-*-* xtensa*-*-* } || { arm*-*-* && { ! arm32 } } } } } */
{ "result": "FAIL", "id": "gcc.dg/sibcall-9.c execution test" } 2020-06-01
{ "result": "FAIL", "id": "gcc.dg/sibcall-10.c execution test" } 2020-06-01
# ------------------------------------------------------------------------------------------
# Compiler appears to be missing optimization opportunity...
# /opt/moxielogic/lib64/gcc/moxie-elf/10.0.0/../../../../moxie-elf/bin/ld: /tmp/cccZiVNO.o: in function `test_local_cpy_4':
# strlenopt-81.c:(.text+0x278): undefined reference to `test_on_line_97_not_eliminated'
# collect2: error: ld returned 1 exit status
{ "result": "FAIL", "id": "gcc.dg/strlenopt-81.c (test for excess errors)" } 2020-06-01
# ------------------------------------------------------------------------------------------
# These are unwinder problems. Need to review moxie unwinder.
{ "result": "FAIL", "id": "gcc.dg/cleanup-5.c execution test" } 2020-06-02
{ "result": "FAIL", "id": "gcc.dg/cleanup-13.c execution test" } 2020-06-02
{ "result": "FAIL", "id": "gcc.dg/cleanup-12.c execution test" } 2020-06-02
# ------------------------------------------------------------------------------------------
# Need to skip this test for moxie. No multiple set if-conversion available.
# /* { dg-skip-if "Multiple set if-conversion not guaranteed on all subtargets" { "arm*-*-* avr-*-* hppa*64*-*-* s390-*-* visium-*-*" riscv*-*-* msp430-*-* } } */
{ "result": "FAIL", "id": "gcc.dg/ifcvt-4.c scan-rtl-dump ce1 \"2 true changes made\"" } 2020-06-02
# ------------------------------------------------------------------------------------------
# Need to skip this test for moxie.
{ "result": "FAIL", "id": "gcc.dg/loop-8.c scan-rtl-dump-not loop2_invariant \"without introducing a new temporary register\"" } 2020-06-01
{ "result": "FAIL", "id": "gcc.dg/loop-8.c scan-rtl-dump-times loop2_invariant \"Decided\" 1" } 2020-06-01
# ------------------------------------------------------------------------------------------
# Set baseline failures. These have not been investigated yet.
{ "result": "FAIL", "id": "gcc.dg/tree-ssa/builtin-sprintf.c execution test" } 2020-06-01
{ "result": "FAIL", "id": "gcc.dg/torture/stackalign/builtin-apply-2.c -O2 -flto -fno-use-linker-plugin -flto-partition=none -fpic execution test" } 2020-06-01
{ "result": "FAIL", "id": "gcc.dg/torture/stackalign/builtin-apply-2.c -Os -fpic execution test" } 2020-06-01
{ "result": "FAIL", "id": "gcc.dg/torture/stackalign/builtin-apply-2.c -O3 -g -fpic execution test" } 2020-06-01
{ "result": "FAIL", "id": "gcc.dg/torture/stackalign/builtin-apply-2.c -O2 -fpic execution test" } 2020-06-01
{ "result": "FAIL", "id": "gcc.dg/torture/stackalign/builtin-apply-2.c -O1 -fpic execution test" } 2020-06-01
{ "result": "FAIL", "id": "gcc.dg/torture/stackalign/builtin-apply-2.c -O0 -fpic execution test" } 2020-06-01
{ "result": "FAIL", "id": "gcc.dg/torture/stackalign/builtin-apply-2.c -O0 execution test" } 2020-06-01
{ "result": "FAIL", "id": "gcc.dg/pr84877.c execution test" } 2020-06-01
{ "result": "FAIL", "id": "gcc.dg/builtin-apply2.c execution test" } 2020-06-01
{ "result": "FAIL", "id": "gcc.dg/torture/stackalign/builtin-apply-2.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects -fpic execution test" } 2020-06-15
{ "result": "FAIL", "id": "gcc.dg/torture/stackalign/builtin-apply-2.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects execution test" } 2020-06-15
{ "result": "FAIL", "id": "gcc.dg/torture/stackalign/builtin-apply-2.c -O2 -flto -fno-use-linker-plugin -flto-partition=none execution test" } 2020-06-15
{ "result": "FAIL", "id": "gcc.dg/torture/stackalign/builtin-apply-2.c -Os execution test" } 2020-06-15
{ "result": "FAIL", "id": "gcc.dg/torture/stackalign/builtin-apply-2.c -O3 -g execution test" } 2020-06-15
{ "result": "FAIL", "id": "gcc.dg/torture/stackalign/builtin-apply-2.c -O2 execution test" } 2020-06-15
{ "result": "FAIL", "id": "gcc.dg/torture/stackalign/builtin-apply-2.c -O1 execution test" } 2020-06-15
You can’t perform that action at this time.