Skip to content

Commit

Permalink
Refining for macrofusion.
Browse files Browse the repository at this point in the history
  • Loading branch information
jatin-bhateja committed Mar 19, 2024
1 parent dcb3adf commit fd127e1
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 15 deletions.
7 changes: 0 additions & 7 deletions src/hotspot/cpu/x86/assembler_x86.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -6249,13 +6249,6 @@ void Assembler::subss(XMMRegister dst, Address src) {
emit_operand(dst, src, 0);
}

void Assembler::btl(Register dst, int imm8) {
int encode = prefix_and_encode(dst->encoding());
emit_int16(0x0F, (unsigned char)0xBA);
emit_int8(modrm_encoding(0x3, rsp->encoding() /* /4 */ , encode));
emit_int8(imm8);
}

void Assembler::testb(Register dst, int imm8, bool use_ral) {
NOT_LP64(assert(dst->has_byte_register(), "must have byte register"));
if (dst == rax) {
Expand Down
2 changes: 0 additions & 2 deletions src/hotspot/cpu/x86/assembler_x86.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -1730,8 +1730,6 @@ class Assembler : public AbstractAssembler {
void btsq(Address dst, int imm8);
void btrq(Address dst, int imm8);
#endif
void btl(Register dst, int imm8);

void orw(Register dst, Register src);

void orl(Address dst, int32_t imm32);
Expand Down
12 changes: 6 additions & 6 deletions src/hotspot/cpu/x86/macroAssembler_x86.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3002,20 +3002,20 @@ void MacroAssembler::test_klass_is_empty_inline_type(Register klass, Register te

void MacroAssembler::test_field_is_null_free_inline_type(Register flags, Register temp_reg, Label& is_null_free_inline_type) {
movl(temp_reg, flags);
btl(temp_reg, ResolvedFieldEntry::is_null_free_inline_type_shift);
jcc(Assembler::carrySet, is_null_free_inline_type);
testl(temp_reg, 1 << ResolvedFieldEntry::is_null_free_inline_type_shift);
jcc(Assembler::notEqual, is_null_free_inline_type);
}

void MacroAssembler::test_field_is_not_null_free_inline_type(Register flags, Register temp_reg, Label& not_null_free_inline_type) {
movl(temp_reg, flags);
btl(temp_reg, ResolvedFieldEntry::is_null_free_inline_type_shift);
jcc(Assembler::carryClear, not_null_free_inline_type);
testl(temp_reg, 1 << ResolvedFieldEntry::is_null_free_inline_type_shift);
jcc(Assembler::equal, not_null_free_inline_type);
}

void MacroAssembler::test_field_is_flat(Register flags, Register temp_reg, Label& is_flat) {
movl(temp_reg, flags);
btl(temp_reg, ResolvedFieldEntry::is_flat_shift);
jcc(Assembler::carrySet, is_flat);
testl(temp_reg, 1 << ResolvedFieldEntry::is_flat_shift);
jcc(Assembler::notEqual, is_flat);
}

void MacroAssembler::test_oop_prototype_bit(Register oop, Register temp_reg, int32_t test_bit, bool jmp_set, Label& jmp_label) {
Expand Down

0 comments on commit fd127e1

Please sign in to comment.