Package org.jnode.assembler.x86

Examples of org.jnode.assembler.x86.X86Assembler.writeMOV()


                    final GPR msb = val.getMsbRegister(ec);
                    os.writeMOV(X86CompilerConstants.INTSIZE, r, X86CompilerConstants.LSB, lsb);
                    os.writeMOV(X86CompilerConstants.INTSIZE, r, X86CompilerConstants.MSB, msb);
                } else {
                    final GPR64 valr = val.getRegister(ec);
                    os.writeMOV(BITS64, r, 0, valr);
                }
                val.release(ec);
                addr.release(ec);
                break;
            }
View Full Code Here


                val.loadToBITS8GPR(ec);
                addr.load(ec);
                final GPR r = addr.getRegister();
                final GPR ofsr = ofs.getRegister();
                final GPR valr = val.getRegister();
                os.writeMOV(methodToSize(mcode), r, ofsr, 1, 0, valr);
                ofs.release(ec);
                val.release(ec);
                addr.release(ec);
                break;
            }
View Full Code Here

                val.load(ec);
                addr.load(ec);
                final GPR r = addr.getRegister();
                final GPR ofsr = ofs.getRegister();
                final GPR valr = val.getRegister();
                os.writeMOV(valr.getSize(), r, ofsr, 1, 0, valr);
                ofs.release(ec);
                val.release(ec);
                addr.release(ec);
                break;
            }
View Full Code Here

                final GPR r = addr.getRegister();
                final GPR ofsr = ofs.getRegister();
                if (os.isCode32()) {
                    final GPR lsb = val.getLsbRegister(ec);
                    final GPR msb = val.getMsbRegister(ec);
                    os.writeMOV(X86CompilerConstants.INTSIZE, r, ofsr, 1, X86CompilerConstants.LSB, lsb);
                    os.writeMOV(X86CompilerConstants.INTSIZE, r, ofsr, 1, X86CompilerConstants.MSB, msb);
                } else {
                    final GPR64 valr = val.getRegister(ec);
                    os.writeMOV(BITS64, r, ofsr, 1, 0, valr);
                }
View Full Code Here

                final GPR ofsr = ofs.getRegister();
                if (os.isCode32()) {
                    final GPR lsb = val.getLsbRegister(ec);
                    final GPR msb = val.getMsbRegister(ec);
                    os.writeMOV(X86CompilerConstants.INTSIZE, r, ofsr, 1, X86CompilerConstants.LSB, lsb);
                    os.writeMOV(X86CompilerConstants.INTSIZE, r, ofsr, 1, X86CompilerConstants.MSB, msb);
                } else {
                    final GPR64 valr = val.getRegister(ec);
                    os.writeMOV(BITS64, r, ofsr, 1, 0, valr);
                }
                ofs.release(ec);
View Full Code Here

                    final GPR msb = val.getMsbRegister(ec);
                    os.writeMOV(X86CompilerConstants.INTSIZE, r, ofsr, 1, X86CompilerConstants.LSB, lsb);
                    os.writeMOV(X86CompilerConstants.INTSIZE, r, ofsr, 1, X86CompilerConstants.MSB, msb);
                } else {
                    final GPR64 valr = val.getRegister(ec);
                    os.writeMOV(BITS64, r, ofsr, 1, 0, valr);
                }
                ofs.release(ec);
                val.release(ec);
                addr.release(ec);
                break;
View Full Code Here

                obj.load(ec);
                final GPR r = obj.getRegister();
                final RefItem result = (RefItem) L1AHelper.requestWordRegister(ec, JvmType.REFERENCE, false);
                final GPR resultr = result.getRegister();
                // Get TIB
                os.writeMOV(helper.ADDRSIZE, r, r, ObjectLayout.TIB_SLOT * slotSize);
                // Get VmType
                os.writeMOV(helper.ADDRSIZE, resultr, r, (TIBLayout.VMTYPE_INDEX + VmArray.DATA_OFFSET) * slotSize);
                obj.release(ec);
                vstack.push(result);
                break;
View Full Code Here

                final RefItem result = (RefItem) L1AHelper.requestWordRegister(ec, JvmType.REFERENCE, false);
                final GPR resultr = result.getRegister();
                // Get TIB
                os.writeMOV(helper.ADDRSIZE, r, r, ObjectLayout.TIB_SLOT * slotSize);
                // Get VmType
                os.writeMOV(helper.ADDRSIZE, resultr, r, (TIBLayout.VMTYPE_INDEX + VmArray.DATA_OFFSET) * slotSize);
                obj.release(ec);
                vstack.push(result);
                break;
            }
            case GETTIB: {
View Full Code Here

                if (VmUtils.verifyAssertions()) VmUtils._assert(isstatic);
                final RefItem obj = vstack.popRef();
                obj.load(ec);
                final GPR r = obj.getRegister();
                // Get TIB
                os.writeMOV(helper.ADDRSIZE, r, r, ObjectLayout.TIB_SLOT * slotSize);
                vstack.push(obj);
                break;
            }
            case GETOBJECTFLAGS: {
                if (VmUtils.verifyAssertions()) VmUtils._assert(isstatic);
View Full Code Here

                if (VmUtils.verifyAssertions()) VmUtils._assert(isstatic);
                final RefItem obj = vstack.popRef();
                obj.load(ec);
                final GPR r = obj.getRegister();
                // Get flags
                os.writeMOV(helper.ADDRSIZE, r, r, ObjectLayout.FLAGS_SLOT * slotSize);
                obj.release(ec);
                vstack.push(L1AHelper.requestWordRegister(ec, JvmType.REFERENCE, r));
                break;
            }
            case SETOBJECTFLAGS: {
View Full Code Here

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.