comparison src/cpu/ppc/vm/assembler_ppc.inline.hpp @ 17803:31e80afe3fed

8035647: PPC64: Support for elf v2 abi. Summary: ELFv2 ABI used by the little endian PowerPC64 on Linux. Reviewed-by: kvn Contributed-by: asmundak@google.com
author goetz
date Thu, 06 Mar 2014 10:55:28 -0800
parents 67fa91961822
children 92aa6797d639 71a71b0bc844
comparison
equal deleted inserted replaced
17802:7c462558a08a 17803:31e80afe3fed
53 address start = pc(); 53 address start = pc();
54 emit_address(addr); 54 emit_address(addr);
55 return start; 55 return start;
56 } 56 }
57 57
58 #if !defined(ABI_ELFv2)
58 // Emit a function descriptor with the specified entry point, TOC, and 59 // Emit a function descriptor with the specified entry point, TOC, and
59 // ENV. If the entry point is NULL, the descriptor will point just 60 // ENV. If the entry point is NULL, the descriptor will point just
60 // past the descriptor. 61 // past the descriptor.
61 inline address Assembler::emit_fd(address entry, address toc, address env) { 62 inline address Assembler::emit_fd(address entry, address toc, address env) {
62 FunctionDescriptor* fd = (FunctionDescriptor*)pc(); 63 FunctionDescriptor* fd = (FunctionDescriptor*)pc();
71 fd->set_toc(toc); 72 fd->set_toc(toc);
72 fd->set_env(env); 73 fd->set_env(env);
73 74
74 return (address)fd; 75 return (address)fd;
75 } 76 }
77 #endif
76 78
77 // Issue an illegal instruction. 0 is guaranteed to be an illegal instruction. 79 // Issue an illegal instruction. 0 is guaranteed to be an illegal instruction.
78 inline void Assembler::illtrap() { Assembler::emit_int32(0); } 80 inline void Assembler::illtrap() { Assembler::emit_int32(0); }
79 inline bool Assembler::is_illtrap(int x) { return x == 0; } 81 inline bool Assembler::is_illtrap(int x) { return x == 0; }
80 82