< prev index next >

src/hotspot/cpu/aarch64/aarch64.ad

Print this page

 4672   interface(CONST_INTER);
 4673 %}
 4674 
 4675 // Pointer Immediate One
 4676 // this is used in object initialization (initial object header)
 4677 operand immP_1()
 4678 %{
 4679   predicate(n->get_ptr() == 1);
 4680   match(ConP);
 4681 
 4682   op_cost(0);
 4683   format %{ %}
 4684   interface(CONST_INTER);
 4685 %}
 4686 
 4687 // Card Table Byte Map Base
 4688 operand immByteMapBase()
 4689 %{
 4690   // Get base of card map
 4691   predicate(BarrierSet::barrier_set()->is_a(BarrierSet::CardTableBarrierSet) &&

 4692             (CardTable::CardValue*)n->get_ptr() == ((CardTableBarrierSet*)(BarrierSet::barrier_set()))->card_table()->byte_map_base());
 4693   match(ConP);
 4694 
 4695   op_cost(0);
 4696   format %{ %}
 4697   interface(CONST_INTER);
 4698 %}
 4699 
 4700 // Pointer Immediate Minus One
 4701 // this is used when we want to write the current PC to the thread anchor
 4702 operand immP_M1()
 4703 %{
 4704   predicate(n->get_ptr() == -1);
 4705   match(ConP);
 4706 
 4707   op_cost(0);
 4708   format %{ %}
 4709   interface(CONST_INTER);
 4710 %}
 4711 

 4672   interface(CONST_INTER);
 4673 %}
 4674 
 4675 // Pointer Immediate One
 4676 // this is used in object initialization (initial object header)
 4677 operand immP_1()
 4678 %{
 4679   predicate(n->get_ptr() == 1);
 4680   match(ConP);
 4681 
 4682   op_cost(0);
 4683   format %{ %}
 4684   interface(CONST_INTER);
 4685 %}
 4686 
 4687 // Card Table Byte Map Base
 4688 operand immByteMapBase()
 4689 %{
 4690   // Get base of card map
 4691   predicate(BarrierSet::barrier_set()->is_a(BarrierSet::CardTableBarrierSet) &&
 4692             SHENANDOAHGC_ONLY(!BarrierSet::barrier_set()->is_a(BarrierSet::ShenandoahBarrierSet) &&)
 4693             (CardTable::CardValue*)n->get_ptr() == ((CardTableBarrierSet*)(BarrierSet::barrier_set()))->card_table()->byte_map_base());
 4694   match(ConP);
 4695 
 4696   op_cost(0);
 4697   format %{ %}
 4698   interface(CONST_INTER);
 4699 %}
 4700 
 4701 // Pointer Immediate Minus One
 4702 // this is used when we want to write the current PC to the thread anchor
 4703 operand immP_M1()
 4704 %{
 4705   predicate(n->get_ptr() == -1);
 4706   match(ConP);
 4707 
 4708   op_cost(0);
 4709   format %{ %}
 4710   interface(CONST_INTER);
 4711 %}
 4712 
< prev index next >