diff options
author | Micael Karlberg <[email protected]> | 2011-04-08 11:28:47 +0200 |
---|---|---|
committer | Micael Karlberg <[email protected]> | 2011-04-08 11:28:47 +0200 |
commit | c7022587ac4974dc13403e8493a9885e32f44e7b (patch) | |
tree | 4fc2191d1bcffad7d1b1fc9072f31cc36df77cc0 /lib/kernel/src/hipe_unified_loader.erl | |
parent | 2b46b0e42fe95d99619ffa343537c8468e27295c (diff) | |
parent | 5ad09d2928fd4584ce6dc50f44825b3f6d7ef66a (diff) | |
download | otp-c7022587ac4974dc13403e8493a9885e32f44e7b.tar.gz otp-c7022587ac4974dc13403e8493a9885e32f44e7b.tar.bz2 otp-c7022587ac4974dc13403e8493a9885e32f44e7b.zip |
Merge branch 'dev' into bmk/snmp/snmp420_integration
Diffstat (limited to 'lib/kernel/src/hipe_unified_loader.erl')
-rw-r--r-- | lib/kernel/src/hipe_unified_loader.erl | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/lib/kernel/src/hipe_unified_loader.erl b/lib/kernel/src/hipe_unified_loader.erl index f289b8110d..1d3eb926ca 100644 --- a/lib/kernel/src/hipe_unified_loader.erl +++ b/lib/kernel/src/hipe_unified_loader.erl @@ -258,7 +258,7 @@ find_callee_mfas(Patches) when is_list(Patches) -> amd64 -> []; arm -> find_callee_mfas(Patches, gb_sets:empty(), false); powerpc -> find_callee_mfas(Patches, gb_sets:empty(), true); - %% ppc64 -> find_callee_mfas(Patches, gb_sets:empty(), true); + ppc64 -> find_callee_mfas(Patches, gb_sets:empty(), true); ultrasparc -> []; x86 -> [] end. @@ -301,6 +301,7 @@ mk_trampoline_map(CalleeMFAs, Trampolines) -> SizeofLong = case erlang:system_info(hipe_architecture) of amd64 -> 8; + ppc64 -> 8; _ -> 4 end, mk_trampoline_map(tuple_size(CalleeMFAs), CalleeMFAs, @@ -625,15 +626,15 @@ patch_instr(Address, Value, Type) -> %% %% XXX: It appears this is used for inserting both code addresses %% and other data. In HiPE, code addresses are still 32-bit on -%% 64-bit machines. +%% some 64-bit machines. write_word(DataAddress, DataWord) -> case erlang:system_info(hipe_architecture) of amd64 -> hipe_bifs:write_u64(DataAddress, DataWord), DataAddress+8; - %% ppc64 -> - %% hipe_bifs:write_u64(DataAddress, DataWord), - %% DataAddress+8; + ppc64 -> + hipe_bifs:write_u64(DataAddress, DataWord), + DataAddress+8; _ -> hipe_bifs:write_u32(DataAddress, DataWord), DataAddress+4 |