]> git.ipfire.org Git - thirdparty/glibc.git/blame - sysdeps/alpha/htonl.S
Update copyright dates with scripts/update-copyrights.
[thirdparty/glibc.git] / sysdeps / alpha / htonl.S
CommitLineData
04277e02 1/* Copyright (C) 1996-2019 Free Software Foundation, Inc.
3c7b2587 2 This file is part of the GNU C Library.
95a89bf3 3
3c7b2587 4 The GNU C Library is free software; you can redistribute it and/or
3214b89b
AJ
5 modify it under the terms of the GNU Lesser General Public
6 License as published by the Free Software Foundation; either
7 version 2.1 of the License, or (at your option) any later version.
95a89bf3 8
3c7b2587
UD
9 The GNU C Library is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
3214b89b 12 Lesser General Public License for more details.
95a89bf3 13
3214b89b 14 You should have received a copy of the GNU Lesser General Public
ab84e3ff
PE
15 License along with the GNU C Library. If not, see
16 <http://www.gnu.org/licenses/>. */
95a89bf3
RM
17
18#include <sysdep.h>
95a89bf3 19
409871bc 20ENTRY(htonl)
60c74cf0
UD
21#ifdef PROF
22 ldgp gp, 0(pv)
3c7b2587 23 .set noat
60c74cf0
UD
24 lda AT, _mcount
25 jsr AT, (AT), _mcount
3c7b2587 26 .set at
60c74cf0
UD
27 .prologue 1
28#else
24c177a0 29 .prologue 0
60c74cf0
UD
30#endif
31
4ba8e511
UD
32 inslh a0, 7, t0 # t0 = 0000000000AABBCC
33 inswl a0, 3, t1 # t1 = 000000CCDD000000
34 or t1, t0, t1 # t1 = 000000CCDDAABBCC
02bfc283 35 srl t1, 16, t2 # t2 = 0000000000CCDDAA
4ba8e511
UD
36 zapnot t1, 0x0A, t0 # t0 = 00000000DD00BB00
37 zapnot t2, 0x05, t3 # t3 = 0000000000CC00AA
38 addl t0, t3, v0 # v0 = ssssssssDDCCBBAA
95a89bf3
RM
39 ret
40
401a9d9e 41 END(htonl)
95a89bf3 42
8796ce21 43weak_alias (htonl, ntohl)