better comp-debug customize

This commit is contained in:
Andrea Corallo 2019-11-10 14:51:38 +01:00
parent f9ea53442e
commit d5ffb49490
2 changed files with 15 additions and 3 deletions

View file

@ -42,6 +42,16 @@
"Compiler optimization level. From 0 to 3."
:type 'number
:group 'comp)
(defcustom comp-debug 0
"Compiler debug level. From 0 to 3.
- 0 no debug facility
- 1 emit debug symbols and dump pseudo C code
- 2 dump gcc passes and libgccjit log file
- 3 dump libgccjit reproducer"
:type 'number
:group 'comp)
(defcustom comp-verbose 0
"Compiler verbosity. From 0 to 3.
- 0 no logging

View file

@ -34,8 +34,6 @@ along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>. */
#include "buffer.h"
#include "blockinput.h"
#define COMP_DEBUG 1
/* C symbols emited for the load relocation mechanism. */
#define CURRENT_THREAD_RELOC_SYM "current_thread_reloc"
#define PURE_RELOC_SYM "pure_reloc"
@ -44,6 +42,9 @@ along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>. */
#define TEXT_DATA_RELOC_SYM "text_data_reloc"
#define TEXT_IMPORTED_FUNC_RELOC_SYM "text_imported_funcs"
#define SPEED XFIXNUM (Fsymbol_value (Qcomp_speed))
#define COMP_DEBUG XFIXNUM (Fsymbol_value (Qcomp_debug))
#define STR_VALUE(s) #s
#define STR(s) STR_VALUE (s)
@ -3070,7 +3071,7 @@ DEFUN ("comp--compile-ctxt-to-file", Fcomp__compile_ctxt_to_file,
gcc_jit_context_dump_to_file (comp.ctxt,
format_string ("%s.c", SSDATA (ctxtname)),
1);
if (COMP_DEBUG > 1)
if (COMP_DEBUG > 2)
gcc_jit_context_dump_reproducer_to_file (comp.ctxt, "comp_reproducer.c");
AUTO_STRING (dot_so, NATIVE_ELISP_SUFFIX);
@ -3312,6 +3313,7 @@ syms_of_comp (void)
{
/* Compiler control customize. */
DEFSYM (Qcomp_speed, "comp-speed");
DEFSYM (Qcomp_debug, "comp-debug");
/* Limple instruction set. */
DEFSYM (Qcomment, "comment");
DEFSYM (Qjump, "jump");