Linux-libre 5.3.12-gnu
[librecmc/linux-libre.git] / arch / c6x / lib / negll.S
1 ;; SPDX-License-Identifier: GPL-2.0-or-later
2 ;;  Copyright (C) 2010 Texas Instruments Incorporated
3 ;;  Contributed by Mark Salter <msalter@redhat.com>.
4 ;;
5
6 ;;  int64_t __c6xabi_negll(int64_t val)
7
8 #include <linux/linkage.h>
9
10         .text
11 ENTRY(__c6xabi_negll)
12         b       .s2     B3
13         mvk     .l1     0,A0
14         subu    .l1     A0,A4,A3:A2
15         sub     .l1     A0,A5,A0
16 ||      ext     .s1     A3,24,24,A5
17         add     .l1     A5,A0,A5
18         mv      .s1     A2,A4
19 ENDPROC(__c6xabi_negll)