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 > Openrisc > Message List > Message Post

    Message

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

    From: Scott Furman<sfurman@r...>
    Date: Mon Dec 22 22:36:28 CET 2003
    Subject: [openrisc] Re: OpenRisc Digest, Vol 1, Issue 12
    Top
    Heiko Panther wrote:

    > d) No one seemed to have any substantial reasons why the ABI
    > shouldn't be changed. There were some concerns from Pablo Huerta,
    > saying the ABI change wouldn't be the best solution. Scott said the
    > calling conventions he's using for 64 bit values are more efficient
    > than in the classic ABI.

    In the existing 3.2 compiler, 64-bit values are passed to functions by
    reference. That is, the calling function must store the argument in two
    32-bit words on the stack and pass that stack address to the callee. In
    the patch I submitted, 64-bit values are passed to callees as a register
    pair. This both saves execution time and stack space.

    I'm not sure the by-reference ABI was used, since the additional code to
    pass 64-bit values as register pairs is very tiny.

    -Scott


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