[Lldb-commits] [lldb] r202285 - Fix x86 32-bit register context definition to build properly on 32 and 64-bit hosts.

Todd Fiala tfiala at google.com
Wed Feb 26 10:51:03 PST 2014


Author: tfiala
Date: Wed Feb 26 12:51:03 2014
New Revision: 202285

URL: http://llvm.org/viewvc/llvm-project?rev=202285&view=rev
Log:
Fix x86 32-bit register context definition to build properly on 32 and 64-bit hosts.

This fix changes thee x86 32-bit floating point register area to be
the proper size independent of the host platform.

Note as of this change list, this register context is not yet used
since selecting it exposes issues with watchpoint assertions.

Change by Matthew Gardiner.


Modified:
    lldb/trunk/source/Plugins/Process/POSIX/RegisterContextLinux_i386.cpp

Modified: lldb/trunk/source/Plugins/Process/POSIX/RegisterContextLinux_i386.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/POSIX/RegisterContextLinux_i386.cpp?rev=202285&r1=202284&r2=202285&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/Process/POSIX/RegisterContextLinux_i386.cpp (original)
+++ lldb/trunk/source/Plugins/Process/POSIX/RegisterContextLinux_i386.cpp Wed Feb 26 12:51:03 2014
@@ -34,11 +34,23 @@ struct GPR
     uint32_t ss;
 };
 
+struct FPR_i386
+{
+    int32_t cwd;
+    int32_t swd;
+    int32_t twd;
+    int32_t fip;
+    int32_t fcs;
+    int32_t foo;
+    int32_t fos;
+    int32_t st_space [20];
+};
+
 struct UserArea
 {
     GPR      regs;          // General purpose registers.
     int32_t  fpvalid;       // True if FPU is being used.
-    FXSAVE   i387;          // FPU registers.
+    FPR_i386   i387;        // FPU registers.
     uint32_t tsize;         // Text segment size.
     uint32_t dsize;         // Data segment size.
     uint32_t ssize;         // Stack segment size.





More information about the lldb-commits mailing list