[llvm-commits] [dragonegg] r95497 - in /dragonegg/trunk: README llvm-backend.cpp

Duncan Sands baldrick at free.fr
Sat Feb 6 04:58:32 PST 2010


Author: baldrick
Date: Sat Feb  6 06:58:32 2010
New Revision: 95497

URL: http://llvm.org/viewvc/llvm-project?rev=95497&view=rev
Log:
Implement support for debugging the set of passes being run,
much like in llvm-gcc.

Modified:
    dragonegg/trunk/README
    dragonegg/trunk/llvm-backend.cpp

Modified: dragonegg/trunk/README
URL: http://llvm.org/viewvc/llvm-project/dragonegg/trunk/README?rev=95497&r1=95496&r2=95497&view=diff

==============================================================================
--- dragonegg/trunk/README (original)
+++ dragonegg/trunk/README Sat Feb  6 06:58:32 2010
@@ -71,6 +71,10 @@
 -fno-ident
   If the ident global asm in the LLVM IR annoys you, use this to turn it off.
 
+-fplugin-arg-dragonegg-debug-pass-arguments
+-fplugin-arg-dragonegg-debug-pass-structure
+  Output information about the passes being run.
+
 -fplugin-arg-dragonegg-disable-llvm-optzns
   Do not perform any LLVM IR optimizations even if compiling at -O1, -O2 etc.
 

Modified: dragonegg/trunk/llvm-backend.cpp
URL: http://llvm.org/viewvc/llvm-project/dragonegg/trunk/llvm-backend.cpp?rev=95497&r1=95496&r2=95497&view=diff

==============================================================================
--- dragonegg/trunk/llvm-backend.cpp (original)
+++ dragonegg/trunk/llvm-backend.cpp Sat Feb  6 06:58:32 2010
@@ -115,6 +115,8 @@
 raw_ostream *OutStream = 0; // Stream to write assembly code to.
 formatted_raw_ostream FormattedOutStream;
 
+static bool DebugPassArguments;
+static bool DebugPassStructure;
 static bool DisableLLVMOptimizations;
 static bool EnableGCCOptimizations;
 static bool EmitIR;
@@ -357,10 +359,10 @@
     Args.push_back("--nozero-initialized-in-bss");
   if (flag_verbose_asm)
     Args.push_back("--asm-verbose");
-//TODO  if (flag_debug_pass_structure)
-//TODO    Args.push_back("--debug-pass=Structure");
-//TODO  if (flag_debug_pass_arguments)
-//TODO    Args.push_back("--debug-pass=Arguments");
+  if (DebugPassStructure)
+    Args.push_back("--debug-pass=Structure");
+  if (DebugPassArguments)
+    Args.push_back("--debug-pass=Arguments");
   if (flag_unwind_tables)
     Args.push_back("--unwind-tables");
   if (!flag_schedule_insns)
@@ -2168,6 +2170,8 @@
 };
 
 static FlagDescriptor PluginFlags[] = {
+    { "debug-pass-structure", &DebugPassStructure},
+    { "debug-pass-arguments", &DebugPassArguments},
     { "disable-llvm-optzns", &DisableLLVMOptimizations },
     { "enable-gcc-optzns", &EnableGCCOptimizations },
     { "emit-ir", &EmitIR },





More information about the llvm-commits mailing list