~ubuntu-branches/ubuntu/precise/eglibc/precise

« back to all changes in this revision

Viewing changes to ports/sysdeps/i960/mul_1.s

  • Committer: Package Import Robot
  • Author(s): Matthias Klose
  • Date: 2011-10-04 17:48:26 UTC
  • mfrom: (216.1.23 oneiric)
  • Revision ID: package-import@ubuntu.com-20111004174826-2cyb9ewn3ucymlsx
Tags: 2.13-20ubuntu5
libc6-dev: Don't break the current {gnat,gcj}-4.4-base versons. LP: #853688.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
.text
 
2
        .align  4
 
3
        .globl  ___mpn_mul_1
 
4
___mpn_mul_1:
 
5
        subo    g2,0,g2
 
6
        shlo    2,g2,g4
 
7
        subo    g4,g1,g1
 
8
        subo    g4,g0,g13
 
9
        mov     0,g0
 
10
 
 
11
        cmpo    1,0             # clear C bit on AC.cc
 
12
 
 
13
Loop:   ld      (g1)[g2*4],g5
 
14
        emul    g3,g5,g6
 
15
 
 
16
        addc    g0,g6,g6        # relies on that C bit is clear
 
17
        st      g6,(g13)[g2*4]
 
18
        addc    0,g7,g0
 
19
 
 
20
        addo    g2,1,g2
 
21
        cmpobne 0,g2,Loop       # when branch is taken, clears C bit
 
22
 
 
23
        ret