[PATCH] jit: add control flow resolving to the register allocator

2009-07-20 Thread Arthur Huillet
This fixes bug encountered when compiling Substring(). --- include/jit/vars.h |5 ++- jit/interval.c | 33 +++ jit/linear-scan.c |1 + jit/spill-reload.c | 113 +++- 4 files changed, 141 insertions(+), 11 deletions(-) dif

Re: [PATCH 2/2] rfc: x86: show jit functions in native backtrace

2009-07-20 Thread Tomek Grabiec
2009/7/20 Vegard Nossum : > Cc: Tomek Grabiec > Signed-off-by: Vegard Nossum > --- >  arch/x86/backtrace.c |   35 +++ >  1 files changed, 35 insertions(+), 0 deletions(-) > > diff --git a/arch/x86/backtrace.c b/arch/x86/backtrace.c > index 6b2dde4..1651aa3 100644 >

Re: [PATCH 2/2] rfc: x86: show jit functions in native backtrace

2009-07-20 Thread Vegard Nossum
2009/7/20 Vegard Nossum : > Cc: Tomek Grabiec > Signed-off-by: Vegard Nossum Erk, this broke 'make test'. Will fix it up and resend later. Vegard -- Enter the BlackBerry Developer Challenge This is your chance to wi

[PATCH] jit: add explicit null checks for arraylength, putfield and getfield

2009-07-20 Thread Tomek Grabiec
this should be merged before: [PATCH] vm: only throw NullPointerException on exactly-NULL pointers Signed-off-by: Tomek Grabiec --- jit/object-bc.c |6 +++--- test/jit/object-bc-test.c |3 ++- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/jit/object-bc.c b/jit/

[PATCH 2/2] rfc: x86: show jit functions in native backtrace

2009-07-20 Thread Vegard Nossum
Cc: Tomek Grabiec Signed-off-by: Vegard Nossum --- arch/x86/backtrace.c | 35 +++ 1 files changed, 35 insertions(+), 0 deletions(-) diff --git a/arch/x86/backtrace.c b/arch/x86/backtrace.c index 6b2dde4..1651aa3 100644 --- a/arch/x86/backtrace.c +++ b/arch/x86/

[PATCH 1/2] x86: separate out bfd search of backtrace printing

2009-07-20 Thread Vegard Nossum
Signed-off-by: Vegard Nossum --- arch/x86/backtrace.c | 29 - 1 files changed, 20 insertions(+), 9 deletions(-) diff --git a/arch/x86/backtrace.c b/arch/x86/backtrace.c index 9309da8..6b2dde4 100644 --- a/arch/x86/backtrace.c +++ b/arch/x86/backtrace.c @@ -29,6 +29,

Re: [PATCH] vm: only throw NullPointerException on exactly-NULL pointers

2009-07-20 Thread Tomek Grabiec
2009/7/20 Vegard Nossum : > We cannot rely on arrays and fields to be smaller than a page in size > for this test to work, i.e. > >        byte[] a = null; >        a[4096] = ...; > > must still throw NullPointerException. > > Signed-off-by: Vegard Nossum > --- >  include/vm/object.h |    7 ++

[PATCH] jit: make bytecode dump easier to read

2009-07-20 Thread Vegard Nossum
1. Print only 16 bytes per line 2. Print the address of each line 3. Put an extra space halfway (i.e. after the 8th byte) for readability It looks like this: TRACE: jvm/ObjectCreationAndManipulationTest.main([Ljava/lang/String;)V Length: 52 Code: [ ] b8 00 61

[PATCH] vm: only throw NullPointerException on exactly-NULL pointers

2009-07-20 Thread Vegard Nossum
We cannot rely on arrays and fields to be smaller than a page in size for this test to work, i.e. byte[] a = null; a[4096] = ...; must still throw NullPointerException. Signed-off-by: Vegard Nossum --- include/vm/object.h |7 ++- vm/signal.c |2 +- 2 files c

[PATCH] RFC: jit: don't print the high bytes of temporary references if they're zero

2009-07-20 Thread Vegard Nossum
The sole purpose of this change is to make the output more readable if we can; on i386 at least, this high byte is always 0 and it just makes it harder to read the traces. Signed-off-by: Vegard Nossum --- jit/tree-printer.c | 21 ++--- test/jit/tree-printer-test.c |