[penberg/jato] 14e125: vm: declare vm_call_method_this_*() for calling vi...

2009-08-17 Thread noreply
Branch: refs/heads/master
Home:   http://github.com/penberg/jato

Commit: 14e12539d8da7ad47195a3b84d08aa806f063862

http://github.com/penberg/jato/commit/14e12539d8da7ad47195a3b84d08aa806f063862
Author: Tomek Grabiec tgrab...@gmail.com
Date:   2009-08-16 (Sun, 16 Aug 2009)

Changed paths:
  M include/vm/call.h

Log Message:
---
vm: declare vm_call_method_this_*() for calling virtual methods.

Signed-off-by: Tomek Grabiec tgrab...@gmail.com
Signed-off-by: Pekka Enberg penb...@cs.helsinki.fi


Commit: db8c0e9e41a74803d115625f08d4df582480bf81

http://github.com/penberg/jato/commit/db8c0e9e41a74803d115625f08d4df582480bf81
Author: Tomek Grabiec tgrab...@gmail.com
Date:   2009-08-16 (Sun, 16 Aug 2009)

Changed paths:
  M vm/jato.c

Log Message:
---
vm: implement VMStackWalker.getClassLoader().

We connect it to VMClass.getClassLoader(). Classpath's documentation
says that we should do this, and the duplicate function was introduced
to workaround access control problems.

Signed-off-by: Tomek Grabiec tgrab...@gmail.com
Signed-off-by: Pekka Enberg penb...@cs.helsinki.fi


Commit: e0519dd481e07c50f15987f3a9e166220a99cf73

http://github.com/penberg/jato/commit/e0519dd481e07c50f15987f3a9e166220a99cf73
Author: Tomek Grabiec tgrab...@gmail.com
Date:   2009-08-16 (Sun, 16 Aug 2009)

Changed paths:
  M vm/jato.c

Log Message:
---
vm: implement properly VMStackWalker.getClassContext()

Signed-off-by: Tomek Grabiec tgrab...@gmail.com
Signed-off-by: Pekka Enberg penb...@cs.helsinki.fi


Commit: 01493b60c1f8591cb14c6224a41cff6b2e12c024

http://github.com/penberg/jato/commit/01493b60c1f8591cb14c6224a41cff6b2e12c024
Author: Tomek Grabiec tgrab...@gmail.com
Date:   2009-08-16 (Sun, 16 Aug 2009)

Changed paths:
  M include/vm/classloader.h
  M jit/object-bc.c
  M vm/class.c
  M vm/classloader.c
  M vm/jato.c
  M vm/jni-interface.c
  M vm/object.c
  M vm/preload.c
  M vm/reflection.c

Log Message:
---
vm: introduce support for different class loaders.

This adds support for delegating class loading to other class loaders.
While resolving a class, we must use the class loader of the class from
which resolving originates.

Signed-off-by: Tomek Grabiec tgrab...@gmail.com
Signed-off-by: Pekka Enberg penb...@cs.helsinki.fi


Commit: 60063757cda852625504f9f6c81e881aa466cd72

http://github.com/penberg/jato/commit/60063757cda852625504f9f6c81e881aa466cd72
Author: Tomek Grabiec tgrab...@gmail.com
Date:   2009-08-16 (Sun, 16 Aug 2009)

Changed paths:
  M include/vm/preload.h
  M vm/jato.c
  M vm/preload.c

Log Message:
---
vm: use ClassLoader.getSystemClassLoader() to load application classes.

Application classes should not be loaded by bootstrap classloader,
so that getClassLoader() returns not null for them.

Signed-off-by: Tomek Grabiec tgrab...@gmail.com
Signed-off-by: Pekka Enberg penb...@cs.helsinki.fi


Commit: f402b1084c0695f72011f382a3ea2b31b94d0ad8

http://github.com/penberg/jato/commit/f402b1084c0695f72011f382a3ea2b31b94d0ad8
Author: Tomek Grabiec tgrab...@gmail.com
Date:   2009-08-16 (Sun, 16 Aug 2009)

Changed paths:
  M vm/jato.c

Log Message:
---
vm: fix VMClassLoader.loadClass() native.

We should not initialize class on loading.

Signed-off-by: Tomek Grabiec tgrab...@gmail.com
Signed-off-by: Pekka Enberg penb...@cs.helsinki.fi


Commit: 1031be0904970f74e9892a8e2c4509f3a2a481dd

http://github.com/penberg/jato/commit/1031be0904970f74e9892a8e2c4509f3a2a481dd
Author: Tomek Grabiec tgrab...@gmail.com
Date:   2009-08-16 (Sun, 16 Aug 2009)

Changed paths:
  M vm/classloader.c

Log Message:
---
vm: fix deadlock in find_class()

find_class() can be called by on a class which is being loaded by the
same thread which is loading the class. This happens when class
loading is delegated to external class loaders. We should handle this
by returning NULL so that external class loader will actually load the
class.

Signed-off-by: Tomek Grabiec tgrab...@gmail.com
Signed-off-by: Pekka Enberg penb...@cs.helsinki.fi


Commit: e5c31ceb31b6aca69ce105c7992830eec4c85d93

http://github.com/penberg/jato/commit/e5c31ceb31b6aca69ce105c7992830eec4c85d93
Author: Tomek Grabiec tgrab...@gmail.com
Date:   2009-08-16 (Sun, 16 Aug 2009)

Changed paths:
  M Makefile
  A regression/jvm/ClassLoaderTest.java
  M regression/run-suite.sh

Log Message:
---
regression: introduce jvm/ClassLoaderTest.java

Signed-off-by: Tomek Grabiec tgrab...@gmail.com
Signed-off-by: Pekka Enberg penb...@cs.helsinki.fi


Commit: 7377516ee942e649772b8b3076ad27bbe3f8691e

http://github.com/penberg/jato/commit/7377516ee942e649772b8b3076ad27bbe3f8691e
Author: Tomek Grabiec tgrab...@gmail.com
Date:   2009-08-16 (Sun, 16 Aug 2009)

Changed paths:
  M include/lib/hash-map.h
  M lib/hash-map.c

Log Message:
---
lib: implement hash_map_contains()

Signed-off-by: Tomek Grabiec tgrab...@gmail.com
Signed-off-by: Pekka Enberg penb...@cs.helsinki.fi


Commit: 

[PATCH] test: fix 'make test' breakage

2009-08-17 Thread Tomek Grabiec

Signed-off-by: Tomek Grabiec tgrab...@gmail.com
---
 test/jit/invoke-bc-test.c |6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/test/jit/invoke-bc-test.c b/test/jit/invoke-bc-test.c
index 01a7ff7..6d8c7d4 100644
--- a/test/jit/invoke-bc-test.c
+++ b/test/jit/invoke-bc-test.c
@@ -320,7 +320,7 @@ void test_invokespecial_should_parse_passed_arguments(void)
 
 void test_invokespecial_should_parse_return_type(void)
 {
-   assert_invoke_return_type(OPC_INVOKESPECIAL, J_BYTE, ()B);
+   assert_invoke_return_type(OPC_INVOKESPECIAL, J_INT, ()B);
assert_invoke_return_type(OPC_INVOKESPECIAL, J_INT, ()I);
 }
 
@@ -352,7 +352,7 @@ void test_invokevirtual_should_parse_passed_arguments(void)
 
 void test_invokevirtual_should_parse_return_type(void)
 {
-   assert_invoke_return_type(OPC_INVOKEVIRTUAL, J_BYTE, ()B);
+   assert_invoke_return_type(OPC_INVOKEVIRTUAL, J_INT, ()B);
assert_invoke_return_type(OPC_INVOKEVIRTUAL, J_INT, ()I);
 }
 
@@ -367,7 +367,7 @@ void 
test_convert_invokevirtual_when_return_value_is_discarded(void)
 
 void test_convert_invokestatic(void)
 {
-   assert_converts_to_invoke_expr(J_BYTE, OPC_INVOKESTATIC, ()B, 0);
+   assert_converts_to_invoke_expr(J_INT, OPC_INVOKESTATIC, ()B, 0);
assert_converts_to_invoke_expr(J_INT, OPC_INVOKESTATIC, ()I, 0);
assert_converts_to_invoke_expr(J_INT, OPC_INVOKESTATIC, (I)I, 1);
assert_converts_to_invoke_expr(J_INT, OPC_INVOKESTATIC, (II)I, 2);
-- 
1.6.0.6


--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
___
Jatovm-devel mailing list
Jatovm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jatovm-devel


[PATCH 2/2] regression: introduce jvm/InvokeResultTest.j

2009-08-17 Thread Tomek Grabiec

Signed-off-by: Tomek Grabiec tgrab...@gmail.com
---
 Makefile  |3 +-
 regression/jvm/InvokeResultTest.j |   89 +
 regression/run-suite.sh   |1 +
 3 files changed, 92 insertions(+), 1 deletions(-)
 create mode 100644 regression/jvm/InvokeResultTest.j

diff --git a/Makefile b/Makefile
index 2ad7687..e371db6 100644
--- a/Makefile
+++ b/Makefile
@@ -303,7 +303,8 @@ JASMIN_REGRESSION_TEST_SUITE_CLASSES = \
regression/jvm/DupTest.j \
regression/jvm/PopTest.j \
regression/jvm/SubroutineTest.j \
-   regression/jvm/WideTest.j
+   regression/jvm/WideTest.j \
+   regression/jvm/InvokeResultTest.j
 
 java-regression: FORCE
$(E)   JAVAC$(REGRESSION_TEST_SUITE_CLASSES)
diff --git a/regression/jvm/InvokeResultTest.j 
b/regression/jvm/InvokeResultTest.j
new file mode 100644
index 000..8132fcd
--- /dev/null
+++ b/regression/jvm/InvokeResultTest.j
@@ -0,0 +1,89 @@
+.class public jvm/InvokeResultTest
+.super jvm/TestCase
+
+.method public static byteMethod()B
+.limit stack 1
+.limit locals 0
+
+bipush -77
+ireturn
+.end method
+
+.method public static shortMethod()S
+.limit stack 1
+.limit locals 0
+
+sipush -
+ireturn
+.end method
+
+.method public static charMethod()C
+.limit stack 1
+.limit locals 1
+
+ldc 65535
+ireturn
+.end method
+
+.method public static booleanMethod()Z
+.limit stack 1
+.limit locals 0
+
+bipush 1
+ireturn
+.end method
+
+.method public static testByteResult()V
+.limit stack 2
+.limit locals 0
+
+bipush -77
+invokestatic jvm/InvokeResultTest/byteMethod()B
+i2s
+invokestatic jvm/TestCase/assertEquals(II)V
+return
+.end method
+
+.method public static testShortResult()V
+.limit stack 2
+.limit locals 0
+
+sipush -
+invokestatic jvm/InvokeResultTest/shortMethod()S
+i2s
+invokestatic jvm/TestCase/assertEquals(II)V
+return
+.end method
+
+.method public static testCharResult()V
+.limit stack 2
+.limit locals 0
+
+ldc 65535
+invokestatic jvm/InvokeResultTest/charMethod()C
+i2c
+invokestatic jvm/TestCase/assertEquals(II)V
+return
+.end method
+
+.method public static testBooleanResult()V
+.limit stack 2
+.limit locals 0
+
+bipush 1
+invokestatic jvm/InvokeResultTest/booleanMethod()Z
+i2s
+invokestatic jvm/TestCase/assertEquals(II)V
+return
+.end method
+
+.method public static main([Ljava/lang/String;)V
+.limit stack 1
+.limit locals 1
+
+invokestatic jvm/InvokeResultTest/testByteResult()V
+invokestatic jvm/InvokeResultTest/testBooleanResult()V
+invokestatic jvm/InvokeResultTest/testCharResult()V
+invokestatic jvm/InvokeResultTest/testShortResult()V
+return
+.end method
diff --git a/regression/run-suite.sh b/regression/run-suite.sh
index e8cbfe0..f28f794 100755
--- a/regression/run-suite.sh
+++ b/regression/run-suite.sh
@@ -71,6 +71,7 @@ if [ -z $CLASS_LIST ]; then
 run_java jvm.InterfaceInheritanceTest 0
 run_java jvm.InvokeinterfaceTest 0
 run_java jvm.InvokestaticPatchingTest 0
+run_java jvm.InvokeResultTest 0
 run_java jvm.LoadConstantsTest 0
 run_java jvm.LongArithmeticExceptionsTest 0
 run_java jvm.LongArithmeticTest 0
-- 
1.6.0.6


--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
___
Jatovm-devel mailing list
Jatovm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jatovm-devel


[PATCH 1/2] jit: introduce mimic_stack_type() helper

2009-08-17 Thread Tomek Grabiec
It returns the type for expression which should be pushed on
mimic stack. Types: byte, boolean, char, short should be
converted to int.

Signed-off-by: Tomek Grabiec tgrab...@gmail.com
---
 include/jit/expression.h |9 +
 jit/expression.c |9 ++---
 2 files changed, 11 insertions(+), 7 deletions(-)

diff --git a/include/jit/expression.h b/include/jit/expression.h
index 605ee60..e2ae00f 100644
--- a/include/jit/expression.h
+++ b/include/jit/expression.h
@@ -379,6 +379,15 @@ unsigned long nr_args(struct expression *);
 int expr_nr_kids(struct expression *);
 int expr_is_pure(struct expression *);
 
+static inline enum vm_type mimic_stack_type(enum vm_type type)
+{
+   if (type == J_CHAR || type == J_BYTE ||
+   type == J_SHORT || type == J_BOOLEAN)
+   return J_INT;
+
+   return type;
+}
+
 static inline int is_invoke_expr(struct expression *expr)
 {
enum expression_type type = expr_type(expr);
diff --git a/jit/expression.c b/jit/expression.c
index 78f3256..ff61275 100644
--- a/jit/expression.c
+++ b/jit/expression.c
@@ -426,13 +426,8 @@ struct expression *instance_field_expr(enum vm_type 
vm_type,
 static struct expression *
 __invoke_expr(enum expression_type expr_type, enum vm_type vm_type, struct 
vm_method *target_method)
 {
-   struct expression *expr;
-
-   if (vm_type == J_CHAR || vm_type == J_BYTE ||
-   vm_type == J_SHORT || vm_type == J_BOOLEAN)
-   vm_type = J_INT;
-
-   expr = alloc_expression(expr_type, vm_type);
+   struct expression *expr = alloc_expression(expr_type,
+  mimic_stack_type(vm_type));
 
if (expr)
expr-target_method = target_method;
-- 
1.6.0.6


--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
___
Jatovm-devel mailing list
Jatovm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jatovm-devel


[penberg/jato] ff14b7: jit: fix expression type for EXPR_INVOKE*

2009-08-17 Thread noreply
Branch: refs/heads/master
Home:   http://github.com/penberg/jato

Commit: ff14b74784ad0103efa0a33d812d6c06c7b3c615

http://github.com/penberg/jato/commit/ff14b74784ad0103efa0a33d812d6c06c7b3c615
Author: Pekka Enberg penb...@cs.helsinki.fi
Date:   2009-08-17 (Mon, 17 Aug 2009)

Changed paths:
  M Makefile
  M include/jit/expression.h
  M jit/expression.c
  A regression/jvm/InvokeResultTest.j
  M regression/run-suite.sh
  M test/jit/invoke-bc-test.c

Log Message:
---
jit: fix expression type for EXPR_INVOKE*

When method returns char, byte, boolean or short then int value should
be pushed on mimic stack. Primitive types listed above do not occur
in java stack. They are always converted to int implicitly.

This caused failed assertion for the following method:

jato: jit/typeconv-bc.c:56: convert_truncation: Assertion failed 
`from_expression-vm_type == J_INT'.

[main] TRACE: org/jpc/emulator/pci/AbstractPCIDevice.configReadWord(I)S
[main] Length: 30
[main] Code:
[main] [  ] 2a 1b 04 60 b6 00 0b 93  3d 1c 10 08 78 93 3d 1c
[main] [ 0016 ] 11 00 ff 2a 1b b6 00 0b  7e 80 93 3d 1c ac
[main]
[main]
[main] Code:
[main][ 0   ]  0x2a  aload_0
[main][ 1   ]  0x1b  iload_1
[main][ 2   ]  0x04  iconst_1
[main][ 3   ]  0x60  iadd
[main][ 4   ]  0xb6  invokevirtual  0x00 0x0b // 
org/jpc/emulator/pci/AbstractPCIDevice.configReadByte(I)B
[main][ 7   ]  0x93  i2s

Signed-off-by: Tomek Grabiec tgrab...@gmail.com
Signed-off-by: Pekka Enberg penb...@cs.helsinki.fi



--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
___
Jatovm-devel mailing list
Jatovm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jatovm-devel


Re: [PATCH] vm: introduce per vm_class access flags.

2009-08-17 Thread Pekka Enberg
On Mon, 2009-08-17 at 15:38 +0200, Tomek Grabiec wrote:
 We need to assign access flags for arrays and primitive classes which
 have no corresponding cafebabe_class. Therefore -access_flags field is
 introduced for struct vm_class.
 
 Signed-off-by: Tomek Grabiec tgrab...@gmail.com

I'd rather we didn't make struct vm_object bigger than it already is.
Can't we introduce dummy struct vm_classes for arrays and primitive
classes?

Pekka 


--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
___
Jatovm-devel mailing list
Jatovm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jatovm-devel


Re: [PATCH] vm: introduce per vm_class access flags.

2009-08-17 Thread Tomek Grabiec
2009/8/17 Pekka Enberg penb...@cs.helsinki.fi:
 On Mon, 2009-08-17 at 15:38 +0200, Tomek Grabiec wrote:
 We need to assign access flags for arrays and primitive classes which
 have no corresponding cafebabe_class. Therefore -access_flags field is
 introduced for struct vm_class.

 Signed-off-by: Tomek Grabiec tgrab...@gmail.com

 I'd rather we didn't make struct vm_object bigger than it already is.
 Can't we introduce dummy struct vm_classes for arrays and primitive
 classes?


My patch does not increase size of struct vm_object. It increases size
of struct vm_class.


-- 
Tomek Grabiec

--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
___
Jatovm-devel mailing list
Jatovm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jatovm-devel


Re: [PATCH] vm: introduce per vm_class access flags.

2009-08-17 Thread Pekka Enberg
On Mon, 2009-08-17 at 19:36 +0200, Tomek Grabiec wrote:
 2009/8/17 Pekka Enberg penb...@cs.helsinki.fi:
  On Mon, 2009-08-17 at 15:38 +0200, Tomek Grabiec wrote:
  We need to assign access flags for arrays and primitive classes which
  have no corresponding cafebabe_class. Therefore -access_flags field is
  introduced for struct vm_class.
 
  Signed-off-by: Tomek Grabiec tgrab...@gmail.com
 
  I'd rather we didn't make struct vm_object bigger than it already is.
  Can't we introduce dummy struct vm_classes for arrays and primitive
  classes?
 
 
 My patch does not increase size of struct vm_object. It increases size
 of struct vm_class.

...oh, I am just blind! Applied, thanks!


--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
___
Jatovm-devel mailing list
Jatovm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jatovm-devel


[penberg/jato] 23c359: vm: introduce per vm_class access flags.

2009-08-17 Thread noreply
Branch: refs/heads/master
Home:   http://github.com/penberg/jato

Commit: 23c359769f002feca749f0bd083962982a5751f6

http://github.com/penberg/jato/commit/23c359769f002feca749f0bd083962982a5751f6
Author: Tomek Grabiec tgrab...@gmail.com
Date:   2009-08-17 (Mon, 17 Aug 2009)

Changed paths:
  M Makefile
  M include/vm/class.h
  A regression/jvm/ClassTest.java
  M regression/run-suite.sh
  M vm/class.c
  M vm/classloader.c
  M vm/jato.c

Log Message:
---
vm: introduce per vm_class access flags.

We need to assign access flags for arrays and primitive classes which
have no corresponding cafebabe_class. Therefore -access_flags field is
introduced for struct vm_class.

Signed-off-by: Tomek Grabiec tgrab...@gmail.com
Signed-off-by: Pekka Enberg penb...@cs.helsinki.fi



--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
___
Jatovm-devel mailing list
Jatovm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jatovm-devel


[PATCH] linear-scan: Fix range end checks

2009-08-17 Thread Pekka Enberg
From: Pekka Enberg penb...@cs.helsinki.fi

The -end member of struct live_range is not part of the range. Fix up
some range end checks in jit/linear-scan.c which assume -end is part of
the range.

Cc: Arthur HUILLET arthur.huil...@free.fr
Signed-off-by: Pekka Enberg penb...@cs.helsinki.fi
---
Arthur, I'd appreciate if you had a look at this patch before I go ahead
and merge it. I don't think it fixes any of the issues we've seen but it
should make the register allocator to spill less in some situations.

 jit/linear-scan.c |4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/jit/linear-scan.c b/jit/linear-scan.c
index 5197d0d..5538bc7 100644
--- a/jit/linear-scan.c
+++ b/jit/linear-scan.c
@@ -232,7 +232,7 @@ static void allocate_blocked_reg(struct live_interval 
*current,
}
 
current-need_spill = 1;
-   } else if (block_pos[reg]  current-range.end) {
+   } else if (block_pos[reg] = current-range.end) {
/* Spilling made a register free for the whole current */
current-reg = reg;
spill_all_intervals_intersecting(current, reg, active,
@@ -283,7 +283,7 @@ static void try_to_allocate_free_reg(struct live_interval 
*current,
return;
}
 
-   if (current-range.end  free_until_pos[reg]) {
+   if (current-range.end = free_until_pos[reg]) {
/*
 * Register available for the full interval.
 */
-- 
1.5.6.3




--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
___
Jatovm-devel mailing list
Jatovm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jatovm-devel


Re: [PATCH] vm: introduce per vm_class access flags.

2009-08-17 Thread Vegard Nossum
2009/8/17 Pekka Enberg penb...@cs.helsinki.fi:
 On Mon, 2009-08-17 at 19:36 +0200, Tomek Grabiec wrote:
 2009/8/17 Pekka Enberg penb...@cs.helsinki.fi:
  On Mon, 2009-08-17 at 15:38 +0200, Tomek Grabiec wrote:
  We need to assign access flags for arrays and primitive classes which
  have no corresponding cafebabe_class. Therefore -access_flags field is
  introduced for struct vm_class.
 
  Signed-off-by: Tomek Grabiec tgrab...@gmail.com
 
  I'd rather we didn't make struct vm_object bigger than it already is.
  Can't we introduce dummy struct vm_classes for arrays and primitive
  classes?
 

 My patch does not increase size of struct vm_object. It increases size
 of struct vm_class.

 ...oh, I am just blind! Applied, thanks!

BTW, which flags are those?


Vegard

--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
___
Jatovm-devel mailing list
Jatovm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jatovm-devel