xref: /netbsd-src/sys/lib/libkern/arch/hppa/milli_extra.S (revision 8c5aad32f03d91cb9a165d9f0bc2d44d9bcefeed)
1934c436bSskrll/*-
2934c436bSskrll * Copyright (c) 2022 The NetBSD Foundation, Inc.
3934c436bSskrll * All rights reserved.
4934c436bSskrll *
5934c436bSskrll * This code is derived from software contributed to The NetBSD Foundation
6934c436bSskrll * by Nick Hudson
7934c436bSskrll *
8934c436bSskrll * Redistribution and use in source and binary forms, with or without
9934c436bSskrll * modification, are permitted provided that the following conditions
10934c436bSskrll * are met:
11934c436bSskrll * 1. Redistributions of source code must retain the above copyright
12934c436bSskrll *    notice, this list of conditions and the following disclaimer.
13934c436bSskrll * 2. Redistributions in binary form must reproduce the above copyright
14934c436bSskrll *    notice, this list of conditions and the following disclaimer in the
15934c436bSskrll *    documentation and/or other materials provided with the distribution.
16934c436bSskrll *
17934c436bSskrll * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
18934c436bSskrll * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
19934c436bSskrll * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
20934c436bSskrll * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
21934c436bSskrll * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22934c436bSskrll * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23934c436bSskrll * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24934c436bSskrll * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25934c436bSskrll * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26934c436bSskrll * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27934c436bSskrll * POSSIBILITY OF SUCH DAMAGE.
28934c436bSskrll */
29934c436bSskrll
30934c436bSskrll#include "machine/asm.h"
31934c436bSskrll
32934c436bSskrll
33934c436bSskrll#define	MILLI_ENTRY(x)					!\
34934c436bSskrll	.text ! .align 4				!\
35934c436bSskrll	.export x, millicode ! .label x ! .proc		!\
36934c436bSskrll	.callinfo no_calls				!\
37934c436bSskrll	.entry
38934c436bSskrll
39934c436bSskrllMILLI_ENTRY(__canonicalize_funcptr_for_compare)
40*8c5aad32Sskrll	bv	%r0(%rp)
41934c436bSskrll	 copy	%arg0, %ret0
42934c436bSskrllEXIT(__canonicalize_funcptr_for_compare)
43