+2017-10-31 David Malcolm <dmalcolm@redhat.com>
+
+ * docs/internals/index.rst (Running the test suite): Document
+ PRESERVE_EXECUTABLES.
+ (Running under valgrind): Add markup to RUN_UNDER_VALGRIND.
+ * docs/_build/texinfo/libgccjit.texi: Regenerate.
+
2017-10-04 David Malcolm <dmalcolm@redhat.com>
* docs/cp/topics/expressions.rst (Vector expressions): New
@copying
@quotation
-libgccjit 8.0.0 (experimental 20171004), October 04, 2017
+libgccjit 8.0.0 (experimental 20171031), October 31, 2017
David Malcolm
@noindent
-The test executables can be seen as:
+The test executables are normally deleted after each test is run. For
+debugging, they can be preserved by setting
+@geindex PRESERVE_EXECUTABLES
+@geindex environment variable; PRESERVE_EXECUTABLES
+@code{PRESERVE_EXECUTABLES}
+in the environment. If so, they can then be seen as:
@example
jit/build/gcc/testsuite/jit/*.exe
You can compile and run individual tests by passing "jit.exp=TESTNAME" to RUNTESTFLAGS e.g.:
@example
-[gcc] $ make check-jit RUNTESTFLAGS="-v -v -v jit.exp=test-factorial.c"
+[gcc] $ PRESERVE_EXECUTABLES= \
+ make check-jit \
+ RUNTESTFLAGS="-v -v -v jit.exp=test-factorial.c"
@end example
@noindent
@subsection Running under valgrind
-The jit testsuite detects if RUN_UNDER_VALGRIND is present in the
+The jit testsuite detects if
+@geindex RUN_UNDER_VALGRIND
+@geindex environment variable; RUN_UNDER_VALGRIND
+@code{RUN_UNDER_VALGRIND} is present in the
environment (with any value). If it is present, it runs the test client
code under valgrind@footnote{http://valgrind.org},
specifcally, the default
jit/build/gcc/testsuite/jit/jit.log
-The test executables can be seen as:
+The test executables are normally deleted after each test is run. For
+debugging, they can be preserved by setting :envvar:`PRESERVE_EXECUTABLES`
+in the environment. If so, they can then be seen as:
.. code-block:: console
.. code-block:: console
- [gcc] $ make check-jit RUNTESTFLAGS="-v -v -v jit.exp=test-factorial.c"
+ [gcc] $ PRESERVE_EXECUTABLES= \
+ make check-jit \
+ RUNTESTFLAGS="-v -v -v jit.exp=test-factorial.c"
and once a test has been compiled, you can debug it directly:
Running under valgrind
**********************
-The jit testsuite detects if RUN_UNDER_VALGRIND is present in the
+The jit testsuite detects if :envvar:`RUN_UNDER_VALGRIND` is present in the
environment (with any value). If it is present, it runs the test client
code under `valgrind <http://valgrind.org>`_,
specifcally, the default
+2017-10-31 David Malcolm <dmalcolm@redhat.com>
+
+ * jit.dg/jit.exp (jit-dg-test): If PRESERVE_EXECUTABLES is set in
+ the environment, don't delete the generated executable.
+
2017-10-31 David Malcolm <dmalcolm@redhat.com>
* g++.dg/cpp0x/auto21.C: Update dg-error to reflect addition of
verbose "$name is not meant to generate a reproducer"
}
+ # Normally we would return $comp_output and $output_file to the
+ # caller, which would delete $output_file, the generated executable.
+ # If we need to debug, it's handy to be able to suppress this behavior,
+ # keeping the executable around.
+ set preserve_executables [info exists env(PRESERVE_EXECUTABLES)]
+ if $preserve_executables {
+ set output_file ""
+ }
+
return [list $comp_output $output_file]
}