[pypy-commit] pypy default: add the --lldebug0 option, which is like lldebug but in addition compiles C files with -O0, useful when gdb keeps on saying '<optimized out>' when you want to look at a variable

antocuni noreply at buildbot.pypy.org
Wed Jan 15 14:39:28 CET 2014


Author: Antonio Cuni <anto.cuni at gmail.com>
Branch: 
Changeset: r68683:4987a52c6a7b
Date: 2014-01-15 14:38 +0100
http://bitbucket.org/pypy/pypy/changeset/4987a52c6a7b/

Log:	add the --lldebug0 option, which is like lldebug but in addition
	compiles C files with -O0, useful when gdb keeps on saying
	'<optimized out>' when you want to look at a variable

diff --git a/rpython/config/translationoption.py b/rpython/config/translationoption.py
--- a/rpython/config/translationoption.py
+++ b/rpython/config/translationoption.py
@@ -177,6 +177,9 @@
     BoolOption("lldebug",
                "If true, makes an lldebug build", default=False,
                cmdline="--lldebug"),
+    BoolOption("lldebug0",
+               "If true, makes an lldebug0 build", default=False,
+               cmdline="--lldebug0"),
 
     OptionDescription("backendopt", "Backend Optimization Options", [
         # control inlining
diff --git a/rpython/translator/c/genc.py b/rpython/translator/c/genc.py
--- a/rpython/translator/c/genc.py
+++ b/rpython/translator/c/genc.py
@@ -364,6 +364,8 @@
             extra_opts += ['-j', str(self.config.translation.make_jobs)]
         if self.config.translation.lldebug:
             extra_opts += ["lldebug"]
+        elif self.config.translation.lldebug0:
+            extra_opts += ["lldebug0"]
         self.translator.platform.execute_makefile(self.targetdir,
                                                   extra_opts)
         if shared:
@@ -398,6 +400,7 @@
             ('linuxmemchk', '', '$(MAKE) CFLAGS="$(DEBUGFLAGS) -DRPY_ASSERT -DPPY_USE_LINUXMEMCHK" debug_target'),
             ('llsafer', '', '$(MAKE) CFLAGS="-O2 -DRPY_LL_ASSERT" $(TARGET)'),
             ('lldebug', '', '$(MAKE) CFLAGS="$(DEBUGFLAGS) -DRPY_ASSERT -DRPY_LL_ASSERT" debug_target'),
+            ('lldebug0','', '$(MAKE) CFLAGS="-O0 $(DEBUGFLAGS) -DRPY_ASSERT -DRPY_LL_ASSERT" debug_target'),
             ('profile', '', '$(MAKE) CFLAGS="-g -O1 -pg $(CFLAGS) -fno-omit-frame-pointer" LDFLAGS="-pg $(LDFLAGS)" $(TARGET)'),
             ]
         if self.has_profopt():


More information about the pypy-commit mailing list