[SCM] master: Create generic FloatingPointType directly from die.

tthomas@sourceware.org tthomas@sourceware.org
Tue Dec 11 16:03:00 GMT 2007


The branch, master has been updated
       via  194ea98cd4af4ce4c3b436212c9c19b737782744 (commit)
       via  b95df0755e0368086816fa96027031a87d2e1e4a (commit)
       via  55e2bc08be9c04fad90503e4cae6a139cc32bfbe (commit)
      from  6c23569523a01607cc228900d76331a5b91c3329 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email.

- Log -----------------------------------------------------------------
commit 194ea98cd4af4ce4c3b436212c9c19b737782744
Author: Teresa <tthomas@redhat.com>
Date:   Tue Dec 11 11:00:13 2007 -0500

    Create generic FloatingPointType directly from die.
    
    frysk-core/frysk/debuginfo/ChangeLog
    2007-12-11  Teresa Thomas  <tthomas@redhat.com>
    
    	* TypeEntry.java (getType): Create FloatingPoint type
    	directly from die.

commit b95df0755e0368086816fa96027031a87d2e1e4a
Author: Teresa <tthomas@redhat.com>
Date:   Tue Dec 11 10:58:59 2007 -0500

    Test added for 80 bit floating point packing.
    
    frysk-core/frysk/value/ChangeLog
    2007-12-11 Teresa Thomas  <tthomas@redhat.com>
    
    	* TestBigFloatingPoint.java: Add test for 80
    	bit floating points.

commit 55e2bc08be9c04fad90503e4cae6a139cc32bfbe
Author: Teresa <tthomas@redhat.com>
Date:   Tue Dec 11 10:57:35 2007 -0500

    Add long double type variables to funit-addresses.
    
    frysk-core/frysk/pkglibdir/ChangeLog
    2007-12-11 Teresa Thomas <tthomas@redhat.com>
    
    	* funit-addresses.c: Add long double types

-----------------------------------------------------------------------

Summary of changes:
 frysk-core/frysk/debuginfo/ChangeLog             |    5 +++++
 frysk-core/frysk/debuginfo/TypeEntry.java        |    8 +++-----
 frysk-core/frysk/pkglibdir/ChangeLog             |    4 ++++
 frysk-core/frysk/pkglibdir/funit-addresses.c     |    2 ++
 frysk-core/frysk/value/ChangeLog                 |    5 +++++
 frysk-core/frysk/value/TestBigFloatingPoint.java |    8 ++++++++
 6 files changed, 27 insertions(+), 5 deletions(-)

First 500 lines of diff:
diff --git a/frysk-core/frysk/debuginfo/ChangeLog b/frysk-core/frysk/debuginfo/ChangeLog
index 4cea696..52213aa 100644
--- a/frysk-core/frysk/debuginfo/ChangeLog
+++ b/frysk-core/frysk/debuginfo/ChangeLog
@@ -1,3 +1,8 @@
+2007-12-11  Teresa Thomas  <tthomas@redhat.com>
+
+	* TypeEntry.java (getType): Create FloatingPoint type
+	directly from die. 
+
 2007-12-07  Sami Wagiaalla  <swagiaal@redhat.com>
 
 	DwarfDie.getOffset() now returns long.
diff --git a/frysk-core/frysk/debuginfo/TypeEntry.java b/frysk-core/frysk/debuginfo/TypeEntry.java
index 4e0567f..144883e 100644
--- a/frysk-core/frysk/debuginfo/TypeEntry.java
+++ b/frysk-core/frysk/debuginfo/TypeEntry.java
@@ -45,12 +45,12 @@ import frysk.value.ArrayType;
 import frysk.value.CharType;
 import frysk.value.ConstType;
 import frysk.value.EnumType;
+import frysk.value.FloatingPointType;
 import frysk.value.FunctionType;
 import frysk.value.GccStructOrClassType;
 import frysk.value.PointerType;
 import frysk.value.ReferenceType;
 import frysk.value.SignedType;
-import frysk.value.StandardTypes;
 import frysk.value.Type;
 import frysk.value.TypeDef;
 import frysk.value.UnionType;
@@ -426,10 +426,8 @@ public class TypeEntry
 					  getByteSize(type), false);
 		break;
 	    case DwAte.FLOAT_:
-		if (getByteSize(type) == 4)
-		    returnType = StandardTypes.getFloatType(byteorder);
-		else if (getByteSize(type) == 8)
-			 returnType = StandardTypes.getDoubleType(byteorder);
+		returnType = new FloatingPointType(type.getName(), byteorder, 
+			                           getByteSize(type));
 	    }
 	}
 
diff --git a/frysk-core/frysk/pkglibdir/ChangeLog b/frysk-core/frysk/pkglibdir/ChangeLog
index 2acecab..0c0318f 100644
--- a/frysk-core/frysk/pkglibdir/ChangeLog
+++ b/frysk-core/frysk/pkglibdir/ChangeLog
@@ -1,3 +1,7 @@
+2007-12-11 Teresa Thomas <tthomas@redhat.com>
+
+	* funit-addresses.c: Add long double types.
+	
 2007-12-10  Petr Machata  <pmachata@redhat.com>
 
 	* funit-vfork.c: New file.
diff --git a/frysk-core/frysk/pkglibdir/funit-addresses.c b/frysk-core/frysk/pkglibdir/funit-addresses.c
index 3a7fb88..569d65a 100644
--- a/frysk-core/frysk/pkglibdir/funit-addresses.c
+++ b/frysk-core/frysk/pkglibdir/funit-addresses.c
@@ -45,6 +45,8 @@
 char global_char = 'a';
 float float_ = 4.0;
 double double_ = 9.0;
+long double long_double_neg_9 = -9.0;
+long double long_double_7point5 = 7.5;
 
 int *static_int_address;
 volatile int *volatile_int_address;
diff --git a/frysk-core/frysk/value/ChangeLog b/frysk-core/frysk/value/ChangeLog
index deef85e..d0c1c9c 100644
--- a/frysk-core/frysk/value/ChangeLog
+++ b/frysk-core/frysk/value/ChangeLog
@@ -1,3 +1,8 @@
+2007-12-11 Teresa Thomas  <tthomas@redhat.com>
+
+	* TestBigFloatingPoint.java: Add test for 80
+	bit floating points.
+
 2007-12-10 Teresa Thomas  <tthomas@redhat.com>
 
 	* TestBigFloatingPoint.java: New.
diff --git a/frysk-core/frysk/value/TestBigFloatingPoint.java b/frysk-core/frysk/value/TestBigFloatingPoint.java
index 7ed289f..82a6f67 100644
--- a/frysk-core/frysk/value/TestBigFloatingPoint.java
+++ b/frysk-core/frysk/value/TestBigFloatingPoint.java
@@ -119,6 +119,11 @@ public class TestBigFloatingPoint
         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
     };
     
+    static final byte[] FP_80_SEVENPOINT5 = new byte[] {
+        0x40, 0x01, (byte)0xf0, 0x00, 0x00, 
+        0x00, 0x00, 0x00, 0x00, 0x00
+    };
+    
     static final byte[] FP_96_ONE = new byte[] {
         0x00, 0x00, 0x3f, (byte)0xff, (byte)0x80, 
         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  
@@ -177,6 +182,9 @@ public class TestBigFloatingPoint
         checkEquals("double -5.769", -5.769,
                      new BigFloatingPoint(DOUBLE_FIVEPOINT769).doubleValue());
 
+        checkEquals("FP_80 7.5", 7.5,
+        	     new BigFloatingPoint(FP_80_SEVENPOINT5).doubleValue());
+                
         checkEquals("FP_128 1", 1.0,
                      new BigFloatingPoint(FP_128_ONE).doubleValue());
         checkEquals("FP_128 0.5", 0.5,


hooks/post-receive
--
frysk system monitor/debugger



More information about the Frysk-cvs mailing list