WARNING! Access to this system is limited to authorised users only.
Unauthorised users may be subject to prosecution.
Unauthorised access to this system is a criminal offence under Australian law (Federal Crimes Act 1914 Part VIA)
It is a criminal offence to:
(1) Obtain access to data without authority. -Penalty 2 years imprisonment.
(2) Damage, delete, alter or insert data without authority. -Penalty 10 years imprisonment.
User activity is monitored and recorded. Anyone using this system expressly consents to such monitoring and recording.

Commit e995a3d0 authored by Isaac Oscar Gariano's avatar Isaac Oscar Gariano
Browse files

Fixed errors, and added a script to run all the ci tasks.

parent 9c1e5699
set -e
if [ -z "$MU_ZEBU" ]
then
export MU_ZEBU=$PWD
fi
export MU_LOG_LEVEL=none
export RUST_TEST_THREADS=1
export RUST_BACKTRACE=0
export PYTHONPATH="$MU_ZEBU/tests/test_jit/mu-client-pypy/:$MU_ZEBU/tests/test_jit/RPySOM/src"
export LD_LIBRARY_PATH="$MU_ZEBU/tests/test_jit/:$MU_ZEBU/tests/test_jit"
export ZEBU_BUILD=release
rm -rf $MU_ZEBU/emit
rm -rf $MU_ZEBU/tests/test_jit/emit
#cargo clean
cargo test --release --no-run --color=always 2>&1 | tee build_out.txt
/usr/bin/time -f "finished in %e secs" -a -o cargo_test_out.txt ./test-release --color=always 2>/dev/null | tee cargo_test_out.txt
cd $MU_ZEBU/tests/test_jit/mu-client-pypy
git pull
cd $MU_ZEBU/tests/test_jit/RPySOM
git pull
cd $MU_ZEBU/tests/test_jit/
ZEBU_BUILD=release LD_LIBRARY_PATH=. PYTHONPATH=mu-client-pypy:RPySOM/src pytest test_*.py -v --color=yes 2>&1 | tee $MU_ZEBU/pytest_out.txt
......@@ -1169,14 +1169,14 @@ impl <'a> InstructionSelection {
Instruction_::SetRetval(index) => {
trace!("instsel on SETRETVAL");
let ref ops = inst.ops.read().unwrap();
let ref ops = inst.ops;
let ref op = ops[index];
self.emit_runtime_entry(
&entrypoints::SET_RETVAL,
vec![op.clone_value()],
None,
Some(node), f_content, f_context, vm
Some(node), f_context, vm
);
}
......
......@@ -824,6 +824,7 @@ pub fn estimate_insts_for_ir(inst: &Instruction) -> usize {
// others
Move(_) => 0,
PrintHex(_) => 10,
SetRetval(_) => 10,
ExnInstruction{ref inner, ..} => estimate_insts_for_ir(&inner)
}
}
......
......@@ -5,7 +5,6 @@ use utils::Address;
use utils::Word;
use utils::POINTER_SIZE;
use runtime::thread;
use runtime::PRINT_BACKTRACE;
use std::sync::RwLock;
use std::sync::RwLockReadGuard;
......@@ -45,7 +44,9 @@ pub extern fn throw_exception_internal(exception_obj: Address, last_frame_callee
trace!("throwing exception: {}", exception_obj);
trace!("callee saved registers of last frame is saved at {}", last_frame_callee_saved);
inspect_higher_address(last_frame_callee_saved, 20);
if cfg!(debug_assertions) {
inspect_higher_address(last_frame_callee_saved, 20);
}
let mut cur_thread = thread::MuThread::current_mut();
// set exception object
......@@ -100,7 +101,7 @@ pub extern fn throw_exception_internal(exception_obj: Address, last_frame_callee
}
};
if PRINT_BACKTRACE {
if cfg!(debug_assertions) {
print_backtrace(throw_frame_callsite, cursor.clone());
}
......
......@@ -45,8 +45,10 @@ pub extern fn throw_exception_internal(exception_obj: Address, last_frame_callee
trace!("throwing exception: {}", exception_obj);
trace!("callee saved registers of last frame is saved at {}", last_frame_callee_saved);
inspect_nearby_address(last_frame_callee_saved, 8);
if cfg!(debug_assertions) {
inspect_nearby_address(last_frame_callee_saved, 8);
}
let mut cur_thread = thread::MuThread::current_mut();
// set exception object
cur_thread.exception_obj = exception_obj;
......@@ -84,7 +86,7 @@ pub extern fn throw_exception_internal(exception_obj: Address, last_frame_callee
}
};
if PRINT_BACKTRACE {
if cfg!(debug_assertions) {
print_backtrace(throw_frame_callsite, cursor.clone());
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment