783 ObjectValue* sv ); |
783 ObjectValue* sv ); |
784 |
784 |
785 // Process an OopMap Element while emitting nodes |
785 // Process an OopMap Element while emitting nodes |
786 void Process_OopMap_Node(MachNode *mach, int code_offset); |
786 void Process_OopMap_Node(MachNode *mach, int code_offset); |
787 |
787 |
|
788 // Initialize code buffer |
|
789 CodeBuffer* init_buffer(uint* blk_starts); |
|
790 |
788 // Write out basic block data to code buffer |
791 // Write out basic block data to code buffer |
789 void Fill_buffer(); |
792 void fill_buffer(CodeBuffer* cb, uint* blk_starts); |
790 |
793 |
791 // Determine which variable sized branches can be shortened |
794 // Determine which variable sized branches can be shortened |
792 void Shorten_branches(Label *labels, int& code_size, int& reloc_size, int& stub_size); |
795 void shorten_branches(uint* blk_starts, int& code_size, int& reloc_size, int& stub_size); |
|
796 |
|
797 // Inserts nops where needed and final shorten branches. |
|
798 void finalize_offsets_and_shorten(uint* blk_starts); |
793 |
799 |
794 // Compute the size of first NumberOfLoopInstrToAlign instructions |
800 // Compute the size of first NumberOfLoopInstrToAlign instructions |
795 // at the head of a loop. |
801 // at the head of a loop. |
796 void compute_loop_first_inst_sizes(); |
802 void compute_loop_first_inst_sizes(); |
797 |
803 |