Previous: compat Testing, Up: Testsuites
在整个编译器测试包中,有几个目录,它们的测试程序被运行多次, 每次使用不同的选项集合。这些被称为torture测试。 gcc/testsuite/lib/torture-options.exp定义了建立这些列表的程序:
torture-init
set-torture-options
torture-finish
使用torture选项的用于测试集的文件.exp,必须包含对这三个程序的调用,如果:
gcc-dg-runtest
并且覆写了DG_TORTURE_OPTIONS
-torture
或者
${tool}-torture-execute
,其中tool为c
,
fortran
, 或者objc
.
dg-pch
.
如果测试程序将使用在gcc-dg.exp中定义的DG_TORTURE_OPTIONS中的列表,
则文件.exp不必通过调用gcc-dg-runtest
来调用torture程序。
大多数对torture选项的使用, 可以通过定义TORTURE_OPTIONS或者通过定义ADDITIONAL_TORTURE_OPTIONS 增加到缺省列表中,来覆写缺省列表。在文件.dejagnurc中定义这些, 或者将它们增加到文件site.exp中;例如
set ADDITIONAL_TORTURE_OPTIONS [list \ { -O2 -ftree-loop-linear } \ { -O2 -fpeel-loops } ]