Support 32-bit build. (#44)
* Support 32-bit build. Signatures/functions/imports/exports etc are defined as varuint32 in the WebAssembly specification so use u32 rather than u64. Decrease the static memory constants for 32-bit addressing mode so that they fit within 32-bit memory constraints. Conditionalize cmake compile of SignalHandlers.cpp so that -m32 is passed when building 32-bit. Add a no-op match for Reloc::X86CallPCRel4 during linking. This is probably the wrong thing, but it allows the tests to pass. Using the same logic from the Reloc::X86PCRel4 case did not work.
This commit is contained in:
@@ -347,6 +347,10 @@ fn relocate(
|
||||
.unwrap();
|
||||
write_unaligned(reloc_address as *mut u32, reloc_delta_u32);
|
||||
},
|
||||
#[cfg(target_pointer_width = "32")]
|
||||
Reloc::X86CallPCRel4 => {
|
||||
// ignore
|
||||
}
|
||||
_ => panic!("unsupported reloc kind"),
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user