Skip to content

Instantly share code, notes, and snippets.

@mernen
Created June 30, 2009 19:37
Show Gist options
  • Save mernen/138362 to your computer and use it in GitHub Desktop.
Save mernen/138362 to your computer and use it in GitHub Desktop.
diff --git i/vm/llvm/jit_operations.hpp w/vm/llvm/jit_operations.hpp
index f55a771..aa15021 100644
--- i/vm/llvm/jit_operations.hpp
+++ w/vm/llvm/jit_operations.hpp
@@ -293,7 +293,7 @@ namespace rubinius {
Value* ptrtoint(Value* ptr) {
return CastInst::Create(
Instruction::PtrToInt,
- ptr, Type::Int32Ty, "ptr2int", block_);
+ ptr, IntPtrTy, "ptr2int", block_);
}
Value* subtract_pointers(Value* ptra, Value* ptrb) {
@@ -302,7 +302,7 @@ namespace rubinius {
Value* sub = BinaryOperator::CreateSub(inta, intb, "ptr_diff", block_);
- Value* size_of = ConstantInt::get(Type::Int32Ty, 4);
+ Value* size_of = ConstantInt::get(IntPtrTy, sizeof(uintptr_t));
return BinaryOperator::CreateSDiv(sub, size_of, "ptr_diff_adj", block_);
}
diff --git i/vm/llvm/jit_util.cpp w/vm/llvm/jit_util.cpp
index 570d441..c0c2383 100644
--- i/vm/llvm/jit_util.cpp
+++ w/vm/llvm/jit_util.cpp
@@ -645,7 +645,7 @@ extern "C" {
self->set_table_ivar(state, name, val);
}
- Object* rbx_continue_uncommon(STATE, CallFrame* call_frame, Arguments& args, int sp) {
+ Object* rbx_continue_uncommon(STATE, CallFrame* call_frame, Arguments& args, native_int sp) {
LLVMState::get(state)->add_uncommons_taken();
VMMethod* vmm = call_frame->cm->backend_method_;
diff --git i/vm/llvm/jit_visit.hpp w/vm/llvm/jit_visit.hpp
index 6cc69a7..7b33eef 100644
--- i/vm/llvm/jit_visit.hpp
+++ w/vm/llvm/jit_visit.hpp
@@ -1016,7 +1016,7 @@ namespace rubinius {
sig << "VM";
sig << "CallFrame";
sig << "Arguments";
- sig << Type::Int32Ty;
+ sig << IntPtrTy;
Value* cur = stack_ptr();
diff --git i/vm/template/instructions.cpp w/vm/template/instructions.cpp
index 6e6cdb2..4fafd15 100644
--- i/vm/template/instructions.cpp
+++ w/vm/template/instructions.cpp
@@ -236,7 +236,7 @@ exception:
}
Object* VMMethod::uncommon_interpreter(STATE, VMMethod* const vmm,
- CallFrame* const call_frame, Arguments& args, int sp)
+ CallFrame* const call_frame, Arguments& args, native_int sp)
{
#ruby <<CODE
impl2 = si.decode_methods
diff --git i/vm/vmmethod.hpp w/vm/vmmethod.hpp
index 83200ec..65c2dff 100644
--- i/vm/vmmethod.hpp
+++ w/vm/vmmethod.hpp
@@ -153,7 +153,7 @@ namespace rubinius {
Arguments& args);
static Object* uncommon_interpreter(STATE, VMMethod* const vmm,
- CallFrame* const call_frame, Arguments& args, int sp);
+ CallFrame* const call_frame, Arguments& args, native_int sp);
void setup_argument_handler(CompiledMethod* meth);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment