提交 dd120b5e 编写于 作者: T twisti

6977640: Zero and Shark fixes

Summary: A number of fixes for Zero and Shark.
Reviewed-by: twisti
Contributed-by: NGary Benson <gbenson@redhat.com>
上级 18cfe6bc
/* /*
* Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved.
* Copyright 2007 Red Hat, Inc. * Copyright 2007, 2010 Red Hat, Inc.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -268,7 +268,7 @@ inline jint BytecodeInterpreter::VMintSub(jint op1, jint op2) { ...@@ -268,7 +268,7 @@ inline jint BytecodeInterpreter::VMintSub(jint op1, jint op2) {
return op1 - op2; return op1 - op2;
} }
inline jint BytecodeInterpreter::VMintUshr(jint op1, jint op2) { inline juint BytecodeInterpreter::VMintUshr(jint op1, jint op2) {
return ((juint) op1) >> (op2 & 0x1F); return ((juint) op1) >> (op2 & 0x1F);
} }
......
...@@ -82,6 +82,10 @@ ...@@ -82,6 +82,10 @@
return _last_Java_fp; return _last_Java_fp;
} }
address last_Java_pc() const {
return _last_Java_pc;
}
static ByteSize last_Java_fp_offset() { static ByteSize last_Java_fp_offset() {
return byte_offset_of(JavaFrameAnchor, _last_Java_fp); return byte_offset_of(JavaFrameAnchor, _last_Java_fp);
} }
...@@ -435,22 +435,22 @@ extern "C" { ...@@ -435,22 +435,22 @@ extern "C" {
void _Copy_arrayof_conjoint_bytes(HeapWord* from, void _Copy_arrayof_conjoint_bytes(HeapWord* from,
HeapWord* to, HeapWord* to,
size_t count) { size_t count) {
ShouldNotCallThis(); memmove(to, from, count);
} }
void _Copy_arrayof_conjoint_jshorts(HeapWord* from, void _Copy_arrayof_conjoint_jshorts(HeapWord* from,
HeapWord* to, HeapWord* to,
size_t count) { size_t count) {
ShouldNotCallThis(); memmove(to, from, count * 2);
} }
void _Copy_arrayof_conjoint_jints(HeapWord* from, void _Copy_arrayof_conjoint_jints(HeapWord* from,
HeapWord* to, HeapWord* to,
size_t count) { size_t count) {
ShouldNotCallThis(); memmove(to, from, count * 4);
} }
void _Copy_arrayof_conjoint_jlongs(HeapWord* from, void _Copy_arrayof_conjoint_jlongs(HeapWord* from,
HeapWord* to, HeapWord* to,
size_t count) { size_t count) {
ShouldNotCallThis(); memmove(to, from, count * 8);
} }
}; };
......
/* /*
* Copyright (c) 1997, 2007, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1997, 2007, Oracle and/or its affiliates. All rights reserved.
* Copyright 2009 Red Hat, Inc. * Copyright 2009, 2010 Red Hat, Inc.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -23,6 +23,9 @@ ...@@ -23,6 +23,9 @@
* *
*/ */
// This file is intentionally empty #include "incls/_precompiled.incl"
#include "incls/_thread_linux_zero.cpp.incl"
void JavaThread::cache_global_variables() { } void JavaThread::cache_global_variables() {
// nothing to do
}
...@@ -421,7 +421,9 @@ BytecodeInterpreter::run(interpreterState istate) { ...@@ -421,7 +421,9 @@ BytecodeInterpreter::run(interpreterState istate) {
#ifdef ASSERT #ifdef ASSERT
if (istate->_msg != initialize) { if (istate->_msg != initialize) {
assert(abs(istate->_stack_base - istate->_stack_limit) == (istate->_method->max_stack() + 1), "bad stack limit"); assert(abs(istate->_stack_base - istate->_stack_limit) == (istate->_method->max_stack() + 1), "bad stack limit");
IA32_ONLY(assert(istate->_stack_limit == istate->_thread->last_Java_sp() + 1, "wrong")); #ifndef SHARK
IA32_ONLY(assert(istate->_stack_limit == istate->_thread->last_Java_sp() + 1, "wrong"));
#endif // !SHARK
} }
// Verify linkages. // Verify linkages.
interpreterState l = istate; interpreterState l = istate;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册