/*******************************************************************************1* Copyright (c) 1991, 2020 IBM Corp. and others2*3* This program and the accompanying materials are made available under4* the terms of the Eclipse Public License 2.0 which accompanies this5* distribution and is available at https://www.eclipse.org/legal/epl-2.0/6* or the Apache License, Version 2.0 which accompanies this distribution and7* is available at https://www.apache.org/licenses/LICENSE-2.0.8*9* This Source Code may also be made available under the following10* Secondary Licenses when the conditions for such availability set11* forth in the Eclipse Public License, v. 2.0 are satisfied: GNU12* General Public License, version 2 with the GNU Classpath13* Exception [1] and GNU General Public License, version 2 with the14* OpenJDK Assembly Exception [2].15*16* [1] https://www.gnu.org/software/classpath/license.html17* [2] http://openjdk.java.net/legal/assembly-exception.html18*19* SPDX-License-Identifier: EPL-2.0 OR Apache-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 OR LicenseRef-GPL-2.0 WITH Assembly-exception20*******************************************************************************/21#ifndef TYPESTUBS_H22#define TYPESTUBS_H2324//typedefs required to allow the pre-processed VM source to parse.25//26//For the purposes of the parser, we don't need the typedefs to be correct. We just need27//the name defined.2829#define __inline__ inline30#define inline3132typedef int va_list;33typedef int FILE;34#if !defined(TYPESTUB_CPLUSPLUS)35typedef int size_t;36#endif37typedef int wchar_t;38typedef int ucontext_t;39typedef int sigset_t;40typedef int fd_set;41typedef int pthread_mutex_t;42typedef int pthread_t;43typedef int pthread_key_t;44typedef int key_t;45typedef int pthread_cond_t;46typedef int pthread_condattr_t;47typedef int pthread_spinlock_t;48typedef int sem_t;49typedef int clockid_t;50typedef int uint32_t;51typedef int int32_t;52typedef int uintptr_t;53typedef int uint16_t;54typedef int int16_t;55typedef int uint8_t;56typedef int int8_t;57typedef int intptr_t;58typedef int uint64_t;59typedef int int64_t;60typedef int nodemask_t;61typedef int iconv_t;62typedef int cpu_set_t;6364#define INT_MAX (size_t)(-1)6566extern void * va_start(va_list, void*);67extern void va_end(va_list);6869extern void * memset (void *, int, size_t);70extern void * memcpy (void *, const void *, size_t);71extern int memcmp (const void *, const void *, size_t);72extern int abs(int);73extern int strcmp(const char *, const char *);74extern int strncmp(const char *s1, const char *s2, size_t n);7576#if defined(J9ZTPF)77struct sockaddr_in {78int foo;79};80#else /* defined(J9ZTPF) */81struct sockaddr_storage {82int foo;83};84#endif /* defined(J9ZTPF) */8586struct timeval {87int foo;88};8990struct linger {91int foo;92};9394struct ipv6_mreq {95int foo;96};9798struct ip_mreq {99int foo;100};101102struct in6_addr {103int foo;104};105106struct in_addr {107int foo;108};109110typedef int SOCKADDR_IN6;111112struct hostent {113int foo;114};115116struct sigaction {117int foo;118};119120void pthread_mutex_lock(void*);121void pthread_mutex_unlock(void*);122void __cs1(void*,void*,void*);123void __csg(void*,void*,void*);124125#endif126127128