The GNU Development Chain integrates a very complete testsuite that is used to validate the compiler, assembler, linker, debugger and other tools.
The testsuite uses the DejaGNU test harness. This test harness was adapted for 68HC11/68HC12 support. The adaptation is part of DejaGNU version 1.4.2.
Release 2.2 Results
Below are the result summaries obtained for the 2.2 validation (obtained on May 1, 2003):Notes:
- GNU C compiler
=== gcc Summary === # of expected passes 152904 # of unexpected failures 23 # of unexpected successes 80 # of expected failures 628 # of unresolved testcases 99 # of unsupported tests 150 /build/gnu-m68hc11/gcc-3.0.4/gcc/xgcc version 3.0.4 m68hc1x-20030430- GNU Binutils
=== binutils Summary === # of expected passes 31 # of expected failures 1- GNU Assembler
=== gas Summary === # of expected passes 143 # of expected failures 1- GNU Linker
=== ld Summary === # of expected passes 55 # of unexpected failures 4 # of expected failures 1- GNU Debugger
=== gdb Summary === # of expected passes 5560 # of unexpected failures 95 # of unexpected successes 88 # of expected failures 46 # of unresolved testcases 15 # of untested testcases 1 # of unsupported tests 6
- The C++ compiler is not validated because the validation suite uses the C++ iostreams.
The C compiler is validated with the following option and option combination (89 combinations):
- -O0
- -O1
- -O2
- -O3 -fomit-frame-pointer
- -O3 -fomit-frame-pointer -funroll-loops
- -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions
- -O3 -g
- -Os
- -O0 -mshort
- -O1 -mshort
- -O2 -mshort
- -O3 -mshort -fomit-frame-pointer
- -O3 -mshort -fomit-frame-pointer -funroll-loops
- -O3 -mshort -fomit-frame-pointer -funroll-all-loops -finline-functions
- -O3 -mshort -g
- -Os -mshort
- -O1 -msoft-reg-count=0
- -O2 -msoft-reg-count=0
- -O3 -fomit-frame-pointer -msoft-reg-count=0
- -O3 -g -msoft-reg-count=0
- -Os -msoft-reg-count=0
- -O1 -mshort -msoft-reg-count=0
- -O2 -mshort -msoft-reg-count=0
- -O3 -mshort -fomit-frame-pointer -msoft-reg-count=0
- -O3 -mshort -g -msoft-reg-count=0
- -Os -mshort -msoft-reg-count=0
- -O2 -mrelax
- -O3 -mrelax -fomit-frame-pointer
- -O3 -mrelax -fomit-frame-pointer -funroll-all-loops -finline-functions
- -O3 -mrelax -g
- -Os -mrelax
- -O1 -mrelax -mshort
- -O2 -mrelax -mshort
- -O3 -mrelax -mshort -fomit-frame-pointer
- -O3 -mrelax -mshort -fomit-frame-pointer -funroll-all-loops -finline-functions
- -O3 -mrelax -mshort -g
- -Os -mrelax -mshort
- -O1 -mrelax -msoft-reg-count=0
- -O2 -mrelax -msoft-reg-count=0
- -O3 -mrelax -fomit-frame-pointer -msoft-reg-count=0
- -O3 -mrelax -g -msoft-reg-count=0
- -Os -mrelax -msoft-reg-count=0
- -O1 -mrelax -mshort -msoft-reg-count=0
- -O2 -mrelax -mshort -msoft-reg-count=0
- -O3 -mrelax -mshort -fomit-frame-pointer -msoft-reg-count=0
- -O3 -mrelax -mshort -g -msoft-reg-count=0
- -Os -mrelax -mshort -msoft-reg-count=0
- -Os -mrelax -fpeephole2 -frename-registers
- -Os -mrelax -fpeephole2 -frename-registers -fomit-frame-pointer
- -Os -mrelax -fpeephole2 -frename-registers -fomit-frame-pointer -mlong-calls
- -Os -mrelax -msoft-reg-count=0 -fpeephole2 -frename-registers -fomit-frame-pointer -mlong-calls
- -Os -mshort -mrelax -fpeephole2 -frename-registers
- -Os -mshort -mrelax -fpeephole2 -frename-registers -fomit-frame-pointer
- -Os -mshort -mrelax -fpeephole2 -frename-registers -fomit-frame-pointer -mlong-calls
- -Os -mshort -mrelax -msoft-reg-count=0 -fpeephole2 -frename-registers -fomit-frame-pointer -mlong-calls
- -O0 -m68hc12
- -O1 -m68hc12
- -O2 -m68hc12
- -O3 -fomit-frame-pointer -m68hc12
- -O3 -fomit-frame-pointer -funroll-loops -m68hc12
- -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions -m68hc12
- -O3 -g -m68hc12
- -Os -m68hc12
- -Os -m68hc12 -mshort -mauto-incdec
- -Os -m68hc12 -mshort -mauto-incdec -fomit-frame-pointer
- -O0 -mshort -m68hc12
- -O1 -mshort -m68hc12
- -O2 -mshort -m68hc12
- -O3 -mshort -fomit-frame-pointer -m68hc12
- -O3 -mshort -fomit-frame-pointer -funroll-loops -m68hc12
- -O3 -mshort -fomit-frame-pointer -funroll-all-loops -finline-functions -m68hc12
- -O3 -mshort -g -m68hc12
- -Os -mshort -m68hc12
- -O1 -m68hc12 -msoft-reg-count=0
- -O2 -m68hc12 -msoft-reg-count=0
- -O3 -m68hc12 -fomit-frame-pointer -msoft-reg-count=0
- -O3 -m68hc12 -g -msoft-reg-count=0
- -Os -m68hc12 -msoft-reg-count=0
- -O1 -mshort -m68hc12 -msoft-reg-count=0
- -O2 -mshort -m68hc12 -msoft-reg-count=0
- -O3 -mshort -m68hc12 -fomit-frame-pointer -msoft-reg-count=0
- -O3 -mshort -m68hc12 -g -msoft-reg-count=0
- -Os -mshort -m68hc12 -msoft-reg-count=0
- -Os -mshort -m68hc12 -mauto-incdec
- -Os -mshort -m68hc12 -mauto-incdec -fpeephole2 -fomit-frame-pointer
- -Os -mshort -m68hc12 -mlong-calls
- -Os -mshort -m68hc12 -fpeephole2 -frename-registers
- -Os -mshort -fpeephole2 -frename-registers -fomit-frame-pointer
- -Os -mshort -fpeephole2 -frename-registers -fomit-frame-pointer -mlong-calls
- -Os -mshort -fpeephole2 -frename-registers -fomit-frame-pointer -mlong-calls
Release 2.1 Results
Below are the result summaries obtained for the 2.1 validation (obtained on November 12, 2002):Notes:
- GNU C compiler
=== gcc Summary === # of expected passes 125660 # of unexpected failures 44 # of unexpected successes 99 # of expected failures 554 # of unresolved testcases 87 # of unsupported tests 140 /build/gnu-m68hc11/gcc-3.0.4/gcc/xgcc version 3.0.4 m68hc1x-20021111- GNU Binutils
=== binutils Summary === # of expected passes 25 # of untested testcases 7- GNU Assembler
=== gas Summary === # of expected passes 90 # of unexpected failures 1- GNU Linker
=== ld Summary === # of expected passes 43 # of unexpected failures 1 # of untested testcases 13- GNU Debugger
=== gdb Summary === # of expected passes 5565 # of unexpected failures 90 # of unexpected successes 88 # of expected failures 46 # of unresolved testcases 15 # of untested testcases 1 # of unsupported tests 6
- The C++ compiler is not validated because the validation suite uses the C++ iostreams.
The C compiler is validated with the following option and option combination (74 combinations):
- -O0
- -O1
- -O2
- -O3 -fomit-frame-pointer
- -O3 -fomit-frame-pointer -funroll-loops
- -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions
- -O3 -g
- -Os
- -O0 -mshort
- -O1 -mshort
- -O2 -mshort
- -O3 -mshort -fomit-frame-pointer
- -O3 -mshort -fomit-frame-pointer -funroll-loops
- -O3 -mshort -fomit-frame-pointer -funroll-all-loops -finline-functions
- -O3 -mshort -g
- -Os -mshort
- -O1 -msoft-reg-count=0
- -O2 -msoft-reg-count=0
- -O3 -fomit-frame-pointer -msoft-reg-count=0
- -O3 -g -msoft-reg-count=0
- -Os -msoft-reg-count=0
- -O1 -mshort -msoft-reg-count=0
- -O2 -mshort -msoft-reg-count=0
- -O3 -mshort -fomit-frame-pointer -msoft-reg-count=0
- -O3 -mshort -g -msoft-reg-count=0
- -Os -mshort -msoft-reg-count=0
- -O2 -mrelax
- -O3 -mrelax -fomit-frame-pointer
- -O3 -mrelax -fomit-frame-pointer -funroll-all-loops -finline-functions
- -O3 -mrelax -g
- -Os -mrelax
- -O1 -mrelax -mshort
- -O2 -mrelax -mshort
- -O3 -mrelax -mshort -fomit-frame-pointer
- -O3 -mrelax -mshort -fomit-frame-pointer -funroll-all-loops -finline-functions
- -O3 -mrelax -mshort -g
- -Os -mrelax -mshort
- -O1 -mrelax -msoft-reg-count=0
- -O2 -mrelax -msoft-reg-count=0
- -O3 -mrelax -fomit-frame-pointer -msoft-reg-count=0
- -O3 -mrelax -g -msoft-reg-count=0
- -Os -mrelax -msoft-reg-count=0
- -O1 -mrelax -mshort -msoft-reg-count=0
- -O2 -mrelax -mshort -msoft-reg-count=0
- -O3 -mrelax -mshort -fomit-frame-pointer -msoft-reg-count=0
- -O3 -mrelax -mshort -g -msoft-reg-count=0
- -Os -mrelax -mshort -msoft-reg-count=0
- -O0 -m68hc12
- -O1 -m68hc12
- -O2 -m68hc12
- -O3 -fomit-frame-pointer -m68hc12
- -O3 -fomit-frame-pointer -funroll-loops -m68hc12
- -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions -m68hc12
- -O3 -g -m68hc12
- -Os -m68hc12
- -Os -m68hc12 -mshort -mauto-incdec
- -Os -m68hc12 -mshort -mauto-incdec -fomit-frame-pointer
- -O0 -mshort -m68hc12
- -O1 -mshort -m68hc12
- -O2 -mshort -m68hc12
- -O3 -mshort -fomit-frame-pointer -m68hc12
- -O3 -mshort -fomit-frame-pointer -funroll-loops -m68hc12
- -O3 -mshort -fomit-frame-pointer -funroll-all-loops -finline-functions -m68hc12
- -O3 -mshort -g -m68hc12
- -Os -mshort -m68hc12
- -O1 -m68hc12 -msoft-reg-count=0
- -O2 -m68hc12 -msoft-reg-count=0
- -O3 -m68hc12 -fomit-frame-pointer -msoft-reg-count=0
- -O3 -m68hc12 -g -msoft-reg-count=0
- -Os -m68hc12 -msoft-reg-count=0
- -O1 -mshort -m68hc12 -msoft-reg-count=0
- -O2 -mshort -m68hc12 -msoft-reg-count=0
- -O3 -mshort -m68hc12 -fomit-frame-pointer -msoft-reg-count=0
- -O3 -mshort -m68hc12 -g -msoft-reg-count=0
- -Os -mshort -m68hc12 -msoft-reg-count=0
Beta Release 1.9d Results
Below are the result summaries obtained for the b1.9d validation (obtained on June 16, 2002):
- GNU C compiler
=== gcc Summary === # of expected passes 125654 # of unexpected failures 46 # of unexpected successes 99 # of expected failures 554 # of unresolved testcases 89 # of unsupported tests 142 /build/gnu-m68hc11/gcc-3.0.4/gcc/xgcc version 3.0.4 m68hc1x-20020616- GNU Binutils
=== binutils Summary === # of expected passes 25 # of untested testcases 7- GNU Assembler
=== gas Summary === # of expected passes 89GNU Linker === ld Summary === # of expected passes 37 # of untested testcases 7Notes:
- The C++ compiler is not validated because the validation suite uses the C++ iostreams.
- The GDB validation is being adapted.
The C compiler is validated with the following option and option combination (74 combinations):
- -O0
- -O1
- -O2
- -O3 -fomit-frame-pointer
- -O3 -fomit-frame-pointer -funroll-loops
- -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions
- -O3 -g
- -Os
- -O0 -mshort
- -O1 -mshort
- -O2 -mshort
- -O3 -mshort -fomit-frame-pointer
- -O3 -mshort -fomit-frame-pointer -funroll-loops
- -O3 -mshort -fomit-frame-pointer -funroll-all-loops -finline-functions
- -O3 -mshort -g
- -Os -mshort
- -O1 -msoft-reg-count=0
- -O2 -msoft-reg-count=0
- -O3 -fomit-frame-pointer -msoft-reg-count=0
- -O3 -g -msoft-reg-count=0
- -Os -msoft-reg-count=0
- -O1 -mshort -msoft-reg-count=0
- -O2 -mshort -msoft-reg-count=0
- -O3 -mshort -fomit-frame-pointer -msoft-reg-count=0
- -O3 -mshort -g -msoft-reg-count=0
- -Os -mshort -msoft-reg-count=0
- -O2 -mrelax
- -O3 -mrelax -fomit-frame-pointer
- -O3 -mrelax -fomit-frame-pointer -funroll-all-loops -finline-functions
- -O3 -mrelax -g
- -Os -mrelax
- -O1 -mrelax -mshort
- -O2 -mrelax -mshort
- -O3 -mrelax -mshort -fomit-frame-pointer
- -O3 -mrelax -mshort -fomit-frame-pointer -funroll-all-loops -finline-functions
- -O3 -mrelax -mshort -g
- -Os -mrelax -mshort
- -O1 -mrelax -msoft-reg-count=0
- -O2 -mrelax -msoft-reg-count=0
- -O3 -mrelax -fomit-frame-pointer -msoft-reg-count=0
- -O3 -mrelax -g -msoft-reg-count=0
- -Os -mrelax -msoft-reg-count=0
- -O1 -mrelax -mshort -msoft-reg-count=0
- -O2 -mrelax -mshort -msoft-reg-count=0
- -O3 -mrelax -mshort -fomit-frame-pointer -msoft-reg-count=0
- -O3 -mrelax -mshort -g -msoft-reg-count=0
- -Os -mrelax -mshort -msoft-reg-count=0
- -O0 -m68hc12
- -O1 -m68hc12
- -O2 -m68hc12
- -O3 -fomit-frame-pointer -m68hc12
- -O3 -fomit-frame-pointer -funroll-loops -m68hc12
- -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions -m68hc12
- -O3 -g -m68hc12
- -Os -m68hc12
- -Os -m68hc12 -mshort -mauto-incdec
- -Os -m68hc12 -mshort -mauto-incdec -fomit-frame-pointer
- -O0 -mshort -m68hc12
- -O1 -mshort -m68hc12
- -O2 -mshort -m68hc12
- -O3 -mshort -fomit-frame-pointer -m68hc12
- -O3 -mshort -fomit-frame-pointer -funroll-loops -m68hc12
- -O3 -mshort -fomit-frame-pointer -funroll-all-loops -finline-functions -m68hc12
- -O3 -mshort -g -m68hc12
- -Os -mshort -m68hc12
- -O1 -m68hc12 -msoft-reg-count=0
- -O2 -m68hc12 -msoft-reg-count=0
- -O3 -m68hc12 -fomit-frame-pointer -msoft-reg-count=0
- -O3 -m68hc12 -g -msoft-reg-count=0
- -Os -m68hc12 -msoft-reg-count=0
- -O1 -mshort -m68hc12 -msoft-reg-count=0
- -O2 -mshort -m68hc12 -msoft-reg-count=0
- -O3 -mshort -m68hc12 -fomit-frame-pointer -msoft-reg-count=0
- -O3 -mshort -m68hc12 -g -msoft-reg-count=0
- -Os -mshort -m68hc12 -msoft-reg-count=0
Release 1.1 Results
Below are the result summaries obtained for the validation:Notes:
- GNU C compiler
=== gcc Summary === # of expected passes 56083 # of unexpected failures 19 # of expected failures 189 # of unresolved testcases 88 # of unsupported tests 71- GNU Binutils
=== binutils Summary === # of expected passes 22 # of untested testcases 4- GNU Assembler
=== gas Summary === # of expected passes 76- GNU Linker
=== ld Summary === # of expected passes 13
- The C++ compiler is not validated because the validation suite uses the C++ iostreams.
- The GDB validation is being adapted.
The C compiler is validated with the following option and option combination (52 combinations):
- -O0
- -O1
- -O2
- -O3 -fomit-frame-pointer
- -O3 -fomit-frame-pointer -funroll-loops
- -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions
- -O3 -g
- -Os
- -O0 -mshort
- -O1 -mshort
- -O2 -mshort
- -O3 -mshort -fomit-frame-pointer
- -O3 -mshort -fomit-frame-pointer -funroll-loops
- -O3 -mshort -fomit-frame-pointer -funroll-all-loops -finline-functions
- -O3 -mshort -g
- -Os -mshort
- -O1 -msoft-reg-count=0
- -O2 -msoft-reg-count=0
- -O3 -fomit-frame-pointer -msoft-reg-count=0
- -O3 -g -msoft-reg-count=0
- -Os -msoft-reg-count=0
- -O1 -mshort -msoft-reg-count=0
- -O2 -mshort -msoft-reg-count=0
- -O3 -mshort -fomit-frame-pointer -msoft-reg-count=0
- -O3 -mshort -g -msoft-reg-count=0
- -Os -mshort -msoft-reg-count=0
- -O0 -m68hc12
- -O1 -m68hc12
- -O2 -m68hc12
- -O3 -fomit-frame-pointer -m68hc12
- -O3 -fomit-frame-pointer -funroll-loops -m68hc12
- -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions -m68hc12
- -O3 -g -m68hc12
- -Os -m68hc12
- -O0 -mshort -m68hc12
- -O1 -mshort -m68hc12
- -O2 -mshort -m68hc12
- -O3 -mshort -fomit-frame-pointer -m68hc12
- -O3 -mshort -fomit-frame-pointer -funroll-loops -m68hc12
- -O3 -mshort -fomit-frame-pointer -funroll-all-loops -finline-functions -m68hc12
- -O3 -mshort -g -m68hc12
- -Os -mshort -m68hc12
- -O1 -m68hc12 -msoft-reg-count=0
- -O2 -m68hc12 -msoft-reg-count=0
- -O3 -m68hc12 -fomit-frame-pointer -msoft-reg-count=0
- -O3 -m68hc12 -g -msoft-reg-count=0
- -Os -m68hc12 -msoft-reg-count=0
- -O1 -mshort -m68hc12 -msoft-reg-count=0
- -O2 -mshort -m68hc12 -msoft-reg-count=0
- -O3 -mshort -m68hc12 -fomit-frame-pointer -msoft-reg-count=0
- -O3 -mshort -m68hc12 -g -msoft-reg-count=0
- -Os -mshort -m68hc12 -msoft-reg-count=0
Copyright (C) 1999, 2000, 2001, 2002, 2003 Stéphane Carrez, France
Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.