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