93 // doubles on Sparc. Intel can handle them just fine directly. |
93 // doubles on Sparc. Intel can handle them just fine directly. |
94 Node *l; |
94 Node *l; |
95 switch( bt ) { // Signature is flattened |
95 switch( bt ) { // Signature is flattened |
96 case T_INT: l = new (C, 3) LoadINode( 0, mem, adr, TypeRawPtr::BOTTOM ); break; |
96 case T_INT: l = new (C, 3) LoadINode( 0, mem, adr, TypeRawPtr::BOTTOM ); break; |
97 case T_FLOAT: l = new (C, 3) LoadFNode( 0, mem, adr, TypeRawPtr::BOTTOM ); break; |
97 case T_FLOAT: l = new (C, 3) LoadFNode( 0, mem, adr, TypeRawPtr::BOTTOM ); break; |
98 case T_ADDRESS: |
98 case T_ADDRESS: l = new (C, 3) LoadPNode( 0, mem, adr, TypeRawPtr::BOTTOM, TypeRawPtr::BOTTOM ); break; |
99 case T_OBJECT: l = new (C, 3) LoadPNode( 0, mem, adr, TypeRawPtr::BOTTOM, TypeInstPtr::BOTTOM ); break; |
99 case T_OBJECT: l = new (C, 3) LoadPNode( 0, mem, adr, TypeRawPtr::BOTTOM, TypeInstPtr::BOTTOM ); break; |
100 case T_LONG: |
100 case T_LONG: |
101 case T_DOUBLE: { |
101 case T_DOUBLE: { |
102 // Since arguments are in reverse order, the argument address 'adr' |
102 // Since arguments are in reverse order, the argument address 'adr' |
103 // refers to the back half of the long/double. Recompute adr. |
103 // refers to the back half of the long/double. Recompute adr. |