From d9063b94f52a133dbd53b4a4d01f804914cf7d60 Mon Sep 17 00:00:00 2001
From: tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Fri, 5 Nov 1999 17:34:32 +0000
Subject: [PATCH] 1999-11-05  Jeff Sturm  <jsturm@sigma6.com>

	* boehm.cc (_Jv_GCSetInitialHeapSize): Swapped size & current.
	* prims.cc (parse_heap_size): Use end, not spec.  Use 1024
	multipler for `k'.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30418 138bc75d-0d04-0410-961f-82ee72b054a4
---
 libjava/ChangeLog | 6 ++++++
 libjava/boehm.cc  | 2 +-
 libjava/prims.cc  | 8 ++++----
 3 files changed, 11 insertions(+), 5 deletions(-)

diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index f4c80560c521..fc8b4a67c5d6 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,3 +1,9 @@
+1999-11-05  Jeff Sturm  <jsturm@sigma6.com>
+
+	* boehm.cc (_Jv_GCSetInitialHeapSize): Swapped size & current.
+	* prims.cc (parse_heap_size): Use end, not spec.  Use 1024
+	multipler for `k'.
+
 1999-11-05  Tom Tromey  <tromey@cygnus.com>
 
 	* java/lang/natThread.cc (stop): Removed argument name.
diff --git a/libjava/boehm.cc b/libjava/boehm.cc
index 33800edb410d..2ecad740d934 100644
--- a/libjava/boehm.cc
+++ b/libjava/boehm.cc
@@ -375,7 +375,7 @@ _Jv_GCSetInitialHeapSize (size_t size)
 {
   size_t current = GC_get_heap_size ();
   if (size > current)
-    GC_expand_hp (current - size);
+    GC_expand_hp (size - current);
 }
 
 void
diff --git a/libjava/prims.cc b/libjava/prims.cc
index 6e6c63399234..6b37d55eb90d 100644
--- a/libjava/prims.cc
+++ b/libjava/prims.cc
@@ -822,10 +822,10 @@ parse_heap_size (const char *spec)
 {
   char *end;
   unsigned long val = strtoul (spec, &end, 10);
-  if (*spec == 'k' || *spec == 'K')
-    val *= 1000;
-  else if (*spec == 'm' || *spec == 'M')
-    val *= 1000000;
+  if (*end == 'k' || *end == 'K')
+    val *= 1024;
+  else if (*end == 'm' || *end == 'M')
+    val *= 1048576;
   return (size_t) val;
 }
 
-- 
GitLab