From e0bdc59321783ca70cfec11210b5dca88b7813e3 Mon Sep 17 00:00:00 2001 From: Devang Patel Date: Tue, 31 May 2011 17:45:27 +0000 Subject: [PATCH] Clarify documentation and remove guarantees that are not fulfilled. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132344 91177308-0d34-0410-b5e6-96231b3b80d8 --- docs/SourceLevelDebugging.html | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/docs/SourceLevelDebugging.html b/docs/SourceLevelDebugging.html index 4c4439fd59f..a1d28429988 100644 --- a/docs/SourceLevelDebugging.html +++ b/docs/SourceLevelDebugging.html @@ -174,22 +174,15 @@ height="369"> as setting program variables, or calling functions that have been deleted. -
  • LLVM optimizations gracefully interact with debugging information. If - they are not aware of debug information, they are automatically disabled - as necessary in the cases that would invalidate the debug info. This - retains the LLVM features, making it easy to write new - transformations.
  • -
  • As desired, LLVM optimizations can be upgraded to be aware of the LLVM debugging information, allowing them to update the debugging information as they perform aggressive optimizations. This means that, with effort, the LLVM optimizers could optimize debug code just as well as non-debug code.
  • -
  • LLVM debug information does not prevent many important optimizations from +
  • LLVM debug information does not prevent optimizations from happening (for example inlining, basic block reordering/merging/cleanup, - tail duplication, etc), further reducing the amount of the compiler that - eventually is "aware" of debugging information.
  • + tail duplication, etc).
  • LLVM debug information is automatically optimized along with the rest of the program, using existing facilities. For example, duplicate