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
  • Find Resources
  • 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: Fri Dec 29 17:14:18 CET 2006
    Subject: [cvs-checkins] MODIFIED: jop ...
    Top
    Date: 00/06/12 29:17:14

    Modified: jop/asm/src jvm.asm
    Log:
    2K ROM, jvm_start moved back


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

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

    (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.36
    retrieving revision 1.37
    diff -u -b -r1.36 -r1.37
    --- jvm.asm 27 Dec 2006 21:05:37 -0000 1.36
    +++ jvm.asm 29 Dec 2006 16:14:17 -0000 1.37
    @@ -83,6 +83,7 @@
    // little optimization in array load/store
    // 2006-12-27 add a special bytecode for Peter's single path
    // programming
    +// 2006-12-29 2K ROM, laload, lastore enabled again
    //
    // idiv, irem WRONG when one operand is 0x80000000
    // but is now in JVM.java
    @@ -92,7 +93,7 @@
    // gets written in RAM at position 64
    // update it when changing .asm, .inc or .vhdl files
    //
    -version = 20061227
    +version = 20061229

    //
    // io address are negativ memory addresses
    @@ -388,15 +389,37 @@
    // ram is now loaded, heap points to free ram
    // load pointer to main struct and invoke
    //
    + ldm mp // pointer to 'special' pointer list
    + ldi 1
    + add
    + dup
    +
    + stmra // read jjp
    + wait
    + wait
    + ldmrd // read ext. mem
    + stm jjp
    +
    + ldi 1
    + add
    + stmra // read jjhp
    + wait
    + wait
    + ldmrd // read ext. mem
    + stm jjhp
    +
    + ldm mp // pointer to pointer to main meth. struct
    ldi 1
    nop
    - bnz start_jvm // two jumps for long distance
    + bnz invoke_main // simulate invokestatic
    nop
    nop
    -
    +///////////////////////////////////////////////////////////////////////////
    //
    // begin of jvm code
    //
    +///////////////////////////////////////////////////////////////////////////
    +
    nop: nop nxt

    iconst_m1: ldi -1 nxt
    @@ -742,38 +765,7 @@
    // ldm d nxt
    //

    -///////////////////////////////////////////////////////////////////////////
    -//
    -// part of init, split of jump!
    -// TODO: should get simplified
    -//
    -start_jvm:
    - ldm mp // pointer to 'special' pointer list
    - ldi 1
    - add
    - dup
    -
    - stmra // read jjp
    - wait
    - wait
    - ldmrd // read ext. mem
    - stm jjp
    -
    - ldi 1
    - add
    - stmra // read jjhp - wait - wait - ldmrd // read ext. mem - stm jjhp - ldm mp // pointer to pointer to main meth. struct - ldi 1 - nop - bnz invoke_main // simulate invokestatic - nop - nop -///////////////////////////////////////////////////////////////////////////

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