#ifndef _X86_64_TYPES_H_
#define _X86_64_TYPES_H_
#ifdef __x86_64__
#include <sys/cdefs.h>
#include <sys/featuretest.h>
#include <machine/int_types.h>
#if defined(_KERNEL)
typedef struct label_t {
long val[8];
} label_t;
#endif
#if defined(_KERNEL) || defined(_KMEMUSER) || defined(_KERNTYPES) || defined(_STANDALONE)
typedef unsigned long paddr_t;
typedef unsigned long psize_t;
typedef unsigned long vaddr_t;
typedef unsigned long vsize_t;
#define PRIxPADDR "lx"
#define PRIxPSIZE "lx"
#define PRIuPSIZE "lu"
#define PRIxVADDR "lx"
#define PRIxVSIZE "lx"
#define PRIuVSIZE "lu"
typedef long int register_t;
typedef int register32_t;
#define PRIxREGISTER "lx"
#define PRIxREGISTER32 "x"
#endif
typedef long int __register_t;
typedef unsigned char __cpu_simple_lock_nv_t;
#define __CPU_SIMPLE_LOCK_PAD
#define __SIMPLELOCK_LOCKED 1
#define __SIMPLELOCK_UNLOCKED 0
#if !__has_feature(undefined_behavior_sanitizer) && \
!defined(__SANITIZE_UNDEFINED__)
#define __NO_STRICT_ALIGNMENT
#endif
#define __HAVE_NEW_STYLE_BUS_H
#define __HAVE_CPU_COUNTER
#define __HAVE_CPU_DATA_FIRST
#define __HAVE_CPU_BOOTCONF
#define __HAVE_MD_CPU_OFFLINE
#define __HAVE_SYSCALL_INTERN
#define __HAVE_MINIMAL_EMUL
#define __HAVE_ATOMIC64_OPS
#define __HAVE_MM_MD_KERNACC
#define __HAVE_ATOMIC_AS_MEMBAR
#define __HAVE_CPU_LWP_SETPRIVATE
#define __HAVE___LWP_GETPRIVATE_FAST
#define __HAVE_TLS_VARIANT_II
#define __HAVE_COMMON___TLS_GET_ADDR
#define __HAVE_INTR_CONTROL
#define __HAVE_CPU_RNG
#define __HAVE_COMPAT_NETBSD32
#define __HAVE_MM_MD_DIRECT_MAPPED_IO
#define __HAVE_MM_MD_DIRECT_MAPPED_PHYS
#define __HAVE_UCAS_FULL
#define __HAVE_BUS_SPACE_8
#define __HAVE_BOOT_DURATION
#ifdef _KERNEL_OPT
#define __HAVE_RAS
#include "opt_xen.h"
#include "opt_kasan.h"
#include "opt_kmsan.h"
#ifdef KASAN
#define __HAVE_KASAN_INSTR_BUS
#endif
#if defined(__x86_64__) && !defined(XENPV)
#if !defined(KASAN) && !defined(KMSAN)
#define __HAVE_PCPU_AREA 1
#define __HAVE_DIRECT_MAP 1
#endif
#define __HAVE_CPU_UAREA_ROUTINES 1
#endif
#endif
#else
#include <i386/types.h>
#endif
#endif