src/share/vm/asm/codeBuffer.hpp

changeset 4318
cd3d6a6b95d9
parent 4317
6ab62ad83507
child 4767
a5de0cc2f91c
equal deleted inserted replaced
4317:6ab62ad83507 4318: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);

mercurial