LOGIN   :::   RECOVER PASS   :::   GET ACCOUNT    
Browse
  • Projects
  • Code (CVS)
  • Forums
  • News
  • Articles
  • Polls
  •  
    OpenCores
  • FAQ
  • CVS HowTo
  • Mission
  • Media
  • Tools
  • Advertise
  • Mirrors
  • Logos
  • Contact us
  • Job Opportunity
  •  
    Tools
  • Search
      
  • Download Cores (CVSGet)
  •  
    More
  • Wishbone
  • Perlilog
  • EDA tools
  • OpenTech CD
  •  
    Navigation: All forums > Cvs-checkins > Message List > Message Post

    Message

    Reply | Reply all
    Date Prev | Date Next | Thread Prev | Thread Next Date Index | Thread Index

    From: cvs at opencores.org<cvs@o...>
    Date: Mon May 28 20:10:48 CEST 2007
    Subject: [cvs-checkins] MODIFIED: jop ...
    Top
    Date: 00/07/05 28:20:10

    Modified: jop/asm/src jvm.asm
    Log:
    putstatic and putfield in JVM.java for reference fields


    Revision Changes Path
    1.44 jop/asm/src/jvm.asm

    http://www.opencores.org/cvsweb.shtml/jop/asm/src/jvm.asm.diff?r1=1.43&r2=1.44

    (In the diff below, changes in quantity of whitespace are not shown.)

    Index: jvm.asm
    ===================================================================
    RCS file: /cvsroot/martin/jop/asm/src/jvm.asm,v
    retrieving revision 1.43
    retrieving revision 1.44
    diff -u -b -r1.43 -r1.44
    --- jvm.asm 14 Apr 2007 18:38:10 -0000 1.43
    +++ jvm.asm 28 May 2007 18:10:47 -0000 1.44
    @@ -87,6 +87,7 @@
    // 2006-12-30 add instanceof to invoke JVM.java with constant on TOS
    // 2007-03-17 new VHDL structure: jopcpu and more records (SimpCon)
    // 2007-04-14 iaload and iastore in hardware (mem_sc.vhd)
    +// 2007-05-28 putfield_ref and putstatic_ref in JVM.java
    //
    // idiv, irem WRONG when one operand is 0x80000000
    // but is now in JVM.java
    @@ -96,7 +97,7 @@
    // gets written in RAM at position 64
    // update it when changing .asm, .inc or .vhdl files
    //
    -version = 20070414
    +version = 20070528

    //
    // io address are negativ memory addresses
    @@ -895,7 +896,6 @@



    -putstatic_ref:
    putstatic:
    //*******************************
    // test for oohw change
    @@ -982,7 +982,6 @@



    -putfield_ref:
    putfield:
    //*******************************
    // test for oohw change
    @@ -1384,6 +1383,7 @@
    anewarray:
    checkcast:
    instanceof:
    +putstatic_ref:

    //
    // find address for JVM function
    @@ -1428,6 +1428,51 @@
    nop
    nop

    +//
    +// call com.jopdesign.sys.JMV.fxxx(int index) for not implemented byte codes.
    +// ... JVM in Java!
    +// with index into constant pool on stack
    +//
    +
    +putfield_ref:
    +
    +//
    +// find address for JVM function
    +//
    + ldjpc
    + ldi 1
    + sub
    + stjpc // get last byte code
    + nop // ???
    + nop // one more now (2004-04-06) ?
    + ldm jjp
    + nop opd
    + ld_opd_8u
    + ldi 255
    + and
    + dup
    + add // *2
    + add // jjp+2*bc
    + stm a // save
    +
    +//
    +// get index
    +//
    + nop opd
    + nop opd
    + ld_opd_16u
    +
    + ldm a // restore mp
    + +// +// invoke JVM.fxxx(int index) +// + ldi 1 + nop + bnz invoke + nop + nop + //**************** // special byte codes for native functions

     
    Copyright (c) 1999 OPENCORES.ORG. All rights reserved.