comparison src/share/vm/asm/codeBuffer.hpp @ 7199:cd3d6a6b95d9

8003240: x86: move MacroAssembler into separate file Reviewed-by: kvn
author twisti
date Fri, 30 Nov 2012 15:23:16 -0800
parents 6ab62ad83507
children a5de0cc2f91c
comparison
equal deleted inserted replaced
7198:6ab62ad83507 7199:cd3d6a6b95d9
23 */ 23 */
24 24
25 #ifndef SHARE_VM_ASM_CODEBUFFER_HPP 25 #ifndef SHARE_VM_ASM_CODEBUFFER_HPP
26 #define SHARE_VM_ASM_CODEBUFFER_HPP 26 #define SHARE_VM_ASM_CODEBUFFER_HPP
27 27
28 #include "asm/assembler.hpp"
29 #include "code/oopRecorder.hpp" 28 #include "code/oopRecorder.hpp"
30 #include "code/relocInfo.hpp" 29 #include "code/relocInfo.hpp"
31 30
32 class CodeComments; 31 class CodeComments;
33 class PhaseCFG; 32 class PhaseCFG;
34 class Compile; 33 class Compile;
35 class BufferBlob; 34 class BufferBlob;
36 class CodeBuffer; 35 class CodeBuffer;
36 class Label;
37 37
38 class CodeOffsets: public StackObj { 38 class CodeOffsets: public StackObj {
39 public: 39 public:
40 enum Entries { Entry, 40 enum Entries { Entry,
41 Verified_Entry, 41 Verified_Entry,
451 static int locator_sect(int locator) { return locator & sect_mask; } 451 static int locator_sect(int locator) { return locator & sect_mask; }
452 static int locator(int pos, int sect) { return (pos << sect_bits) | sect; } 452 static int locator(int pos, int sect) { return (pos << sect_bits) | sect; }
453 int locator(address addr) const; 453 int locator(address addr) const;
454 address locator_address(int locator) const; 454 address locator_address(int locator) const;
455 455
456 // Heuristic for pre-packing the taken/not-taken bit of a predicted branch.
457 bool is_backward_branch(Label& L);
458
456 // Properties 459 // Properties
457 const char* name() const { return _name; } 460 const char* name() const { return _name; }
458 CodeBuffer* before_expand() const { return _before_expand; } 461 CodeBuffer* before_expand() const { return _before_expand; }
459 BufferBlob* blob() const { return _blob; } 462 BufferBlob* blob() const { return _blob; }
460 void set_blob(BufferBlob* blob); 463 void set_blob(BufferBlob* blob);