]> granicus.if.org Git - clang/commitdiff
Review feedback.
authorDiego Novillo <dnovillo@google.com>
Wed, 23 Apr 2014 15:21:21 +0000 (15:21 +0000)
committerDiego Novillo <dnovillo@google.com>
Wed, 23 Apr 2014 15:21:21 +0000 (15:21 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@206996 91177308-0d34-0410-b5e6-96231b3b80d8

docs/UsersManual.rst

index 2ea0f7b5777b950e2d10306583fb05b132b49a75..acf576317ca084a86560357fe2aa1fb9c3123271 100644 (file)
@@ -1180,11 +1180,20 @@ a. Source line offset. This number represents the line number
    defined. So, if the function has its header at line 280, the offset
    13 is at line 293 in the file.
 
+   Note that this offset should never be a negative number. This could
+   happen in cases like macros. The debug machinery will register the
+   line number at the point of macro expansion. So, if the macro was
+   expanded in a line before the start of the function, the profile
+   converter should emit a 0 as the offset (this means that the optimizers
+   will not be able to associate a meaningful weight to the instructions
+   in the macro).
+
 b. [OPTIONAL] Discriminator. This is used if the sampled program
    was compiled with DWARF discriminator support
    (http://wiki.dwarfstd.org/index.php?title=Path_Discriminators).
-   DWARF discriminators allow the compiler to distinguish between
-   multiple execution paths on the same source line location.
+   DWARF discriminators are unsigned integer values that allow the
+   compiler to distinguish between multiple execution paths on the
+   same source line location.
 
    For example, consider the line of code ``if (cond) foo(); else bar();``.
    If the predicate ``cond`` is true 80% of the time, then the edge