Isn't this actually a compiler bug? I mean, in a non-optimized build, you would expect all code relevant to a source line to be emitted in strict order, with correct line numbers.

(i.e. it shouldn't be putting code for parameters before the line itself, unless some kind of optimization is enabled)

Richard Mitton
[email protected]

On 09/26/2013 01:54 PM, Matt Kopec wrote:
Author: mkopec
Date: Thu Sep 26 15:54:17 2013
New Revision: 191457

URL: http://llvm.org/viewvc/llvm-project?rev=191457&view=rev
Log:
Fix the thread jump test case for 32-bit inferiors. A jump was going back to a 
function call using a source line number. However, the parameters being passed 
to the function were setup before the instruction we jumped to. In other words, 
the source line was associated with assembly after the function parameters had 
been setup for the function to be called.

Modified:
     lldb/trunk/test/functionalities/thread/jump/main.cpp

Modified: lldb/trunk/test/functionalities/thread/jump/main.cpp
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/test/functionalities/thread/jump/main.cpp?rev=191457&r1=191456&r2=191457&view=diff
==============================================================================
--- lldb/trunk/test/functionalities/thread/jump/main.cpp (original)
+++ lldb/trunk/test/functionalities/thread/jump/main.cpp Thu Sep 26 15:54:17 
2013
@@ -26,9 +26,10 @@ int main ()
  {
      int i;
      double j;
-
-    i = min(4, 5); // 3rd marker
-    j = min(7.0, 8.0); // 4th marker
+    int min_i_a = 4, min_i_b = 5;
+    double min_j_a = 7.0, min_j_b = 8.0;
+    i = min(min_i_a, min_i_b); // 3rd marker
+    j = min(min_j_a, min_j_b); // 4th marker
return 0;
  }


_______________________________________________
lldb-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits

_______________________________________________
lldb-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits

Reply via email to