__moddi3.S (108533) | __moddi3.S (110725) |
---|---|
1.file "__moddi3.s" 2 | 1.file "__moddi3.s" 2 |
3// $FreeBSD: head/sys/libkern/ia64/__moddi3.S 108533 2003-01-01 18:49:04Z schweikh $ | 3// $FreeBSD: head/sys/libkern/ia64/__moddi3.S 110725 2003-02-11 20:15:11Z schweikh $ |
4// 5// Copyright (c) 2000, Intel Corporation 6// All rights reserved. 7// 8// Contributed 2/15/2000 by Marius Cornea, John Harrison, Cristina Iordache, 9// Ted Kubaska, Bob Norin, and Shane Story of the Computational Software Lab, 10// Intel Corporation. 11// --- 31 unchanged lines hidden (view full) --- 43 alloc r31=ar.pfs,3,0,0,0 44 nop.i 0 45 nop.i 0 46} { .mmb 47 48 // 64-BIT SIGNED INTEGER REMAINDER BEGINS HERE 49 50 // general register used: | 4// 5// Copyright (c) 2000, Intel Corporation 6// All rights reserved. 7// 8// Contributed 2/15/2000 by Marius Cornea, John Harrison, Cristina Iordache, 9// Ted Kubaska, Bob Norin, and Shane Story of the Computational Software Lab, 10// Intel Corporation. 11// --- 31 unchanged lines hidden (view full) --- 43 alloc r31=ar.pfs,3,0,0,0 44 nop.i 0 45 nop.i 0 46} { .mmb 47 48 // 64-BIT SIGNED INTEGER REMAINDER BEGINS HERE 49 50 // general register used: |
51 // r32 - 64-bit signed integer dividend 52 // r33 - 64-bit signed integer divisor | 51 // r32 - 64-bit signed integer dividend, called a below 52 // r33 - 64-bit signed integer divisor, called b below |
53 // r8 - 64-bit signed integer result 54 // r2 - scratch register 55 // floating-point registers used: f6, f7, f8, f9, f10, f11, f12 56 // predicate registers used: p6 57 | 53 // r8 - 64-bit signed integer result 54 // r2 - scratch register 55 // floating-point registers used: f6, f7, f8, f9, f10, f11, f12 56 // predicate registers used: p6 57 |
58 setf.sig f12=r32 // holds an in integer form | 58 setf.sig f12=r32 // holds a in integer form |
59 setf.sig f7=r33 60 nop.b 0 61} { .mlx 62 nop.m 0 63 //movl r2=0x8000000000000000;; 64 movl r2=0xffffffffffffffff;; 65} { .mfi 66 // get the 2's complement of b --- 92 unchanged lines hidden --- | 59 setf.sig f7=r33 60 nop.b 0 61} { .mlx 62 nop.m 0 63 //movl r2=0x8000000000000000;; 64 movl r2=0xffffffffffffffff;; 65} { .mfi 66 // get the 2's complement of b --- 92 unchanged lines hidden --- |