Annotation of OpenXM_contrib2/asir2018/asm/asm5.s, Revision 1.1
1.1 ! noro 1: ! $OpenXM$
! 2: #include "base.h"
! 3:
! 4: .seg "text" ! [internal]
! 5: .proc 14
! 6: .global _dm
! 7: _dm:
! 8: umul %o0,%o1,%o0
! 9: rd %y,%o1
! 10: sll %o1,CBSH,%o1
! 11: srl %o0,BSH,%o3
! 12: or %o1,%o3,%o1
! 13: sethi %hi(BMASK),%o3
! 14: add %o3,%lo(BMASK),%o3
! 15: and %o0,%o3,%o0
! 16: retl
! 17: st %o1,[%o2]
! 18:
! 19: .proc 14
! 20: .global _dmb
! 21: _dmb:
! 22: umul %o1,%o2,%o1
! 23: udivcc %o1,%o0,%o2
! 24: umul %o0,%o2,%o0
! 25: subcc %o1,%o0,%o0
! 26: retl
! 27: st %o2,[%o3]
! 28:
! 29: .proc 14
! 30: .global _dma
! 31: _dma:
! 32: umul %o0,%o1,%o0
! 33: rd %y,%o1
! 34: addcc %o0,%o2,%o0
! 35: addx %g0,%o1,%o1
! 36:
! 37: sll %o1,CBSH,%o1
! 38: srl %o0,BSH,%o2
! 39: or %o1,%o2,%o1
! 40: sethi %hi(BMASK),%o2
! 41: add %o2,%lo(BMASK),%o2
! 42: and %o0,%o2,%o0
! 43: retl
! 44: st %o1,[%o3]
! 45:
! 46: .proc 14
! 47: .global _dmab
! 48: _dmab:
! 49: umul %o1,%o2,%o1
! 50: rd %y,%o2
! 51: addcc %o1,%o3,%o1
! 52: addx %g0,%o2,%o2
! 53: wr %o2,%g0,%y
! 54:
! 55: udivcc %o1,%o0,%o2
! 56: umul %o0,%o2,%o0
! 57: subcc %o1,%o0,%o0
! 58: retl
! 59: st %o2,[%o4]
! 60:
! 61: .proc 14
! 62: .global _dsab
! 63: _dsab:
! 64: srl %o1,CBSH,%o4
! 65: wr %o4,%g0,%y
! 66: sll %o1,BSH,%o1
! 67: or %o2,%o1,%o2
! 68:
! 69: udivcc %o2,%o0,%o4
! 70: umul %o0,%o4,%o0
! 71: subcc %o2,%o0,%o0
! 72: retl
! 73: st %o4,[%o3]
! 74:
! 75: .proc 14
! 76: .global _dmar
! 77: _dmar:
! 78: umul %o0,%o1,%o0
! 79: rd %y,%o1
! 80: addcc %o0,%o2,%o0
! 81: addx %g0,%o1,%o1
! 82: wr %o1,%g0,%y
! 83: udivcc %o0,%o3,%o1
! 84: umul %o3,%o1,%o1
! 85: retl
! 86: subcc %o0,%o1,%o0
! 87:
! 88: .proc 14
! 89: .global _dqr
! 90: _dqr:
! 91: wr %g0,%g0,%y
! 92: udiv %o0,%o1,%o3
! 93: umul %o1,%o3,%o1
! 94: subcc %o0,%o1,%o0
! 95:
! 96: retl
! 97: st %o3,[%o2]
! 98:
! 99: .seg "data"
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>