Path: blob/aarch64-shenandoah-jdk8u272-b10/hotspot/src/share/vm/shark/llvmHeaders.hpp
32285 views
/*1* Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved.2* Copyright 2008, 2009, 2010 Red Hat, Inc.3* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.4*5* This code is free software; you can redistribute it and/or modify it6* under the terms of the GNU General Public License version 2 only, as7* published by the Free Software Foundation.8*9* This code is distributed in the hope that it will be useful, but WITHOUT10* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or11* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License12* version 2 for more details (a copy is included in the LICENSE file that13* accompanied this code).14*15* You should have received a copy of the GNU General Public License version16* 2 along with this work; if not, write to the Free Software Foundation,17* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.18*19* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA20* or visit www.oracle.com if you need additional information or have any21* questions.22*23*/2425#ifndef SHARE_VM_SHARK_LLVMHEADERS_HPP26#define SHARE_VM_SHARK_LLVMHEADERS_HPP2728#ifdef assert29#undef assert30#endif3132#ifdef DEBUG33#define SHARK_DEBUG34#undef DEBUG35#endif3637#include <llvm/Analysis/Verifier.h>38#include <llvm/ExecutionEngine/ExecutionEngine.h>3940// includes specific to each version41#if SHARK_LLVM_VERSION <= 3142#include <llvm/Support/IRBuilder.h>43#include <llvm/Type.h>44#include <llvm/Argument.h>45#include <llvm/Constants.h>46#include <llvm/DerivedTypes.h>47#include <llvm/Instructions.h>48#include <llvm/LLVMContext.h>49#include <llvm/Module.h>50#elif SHARK_LLVM_VERSION <= 3251#include <llvm/IRBuilder.h>52#include <llvm/Type.h>53#include <llvm/Argument.h>54#include <llvm/Constants.h>55#include <llvm/DerivedTypes.h>56#include <llvm/Instructions.h>57#include <llvm/LLVMContext.h>58#include <llvm/Module.h>59#else // SHARK_LLVM_VERSION <= 3460#include <llvm/IR/IRBuilder.h>61#include <llvm/IR/Argument.h>62#include <llvm/IR/Constants.h>63#include <llvm/IR/DerivedTypes.h>64#include <llvm/ExecutionEngine/ExecutionEngine.h>65#include <llvm/IR/Instructions.h>66#include <llvm/IR/LLVMContext.h>67#include <llvm/IR/Module.h>68#include <llvm/ADT/StringRef.h>69#include <llvm/IR/Type.h>70#endif7172// common includes73#include <llvm/Support/Threading.h>74#include <llvm/Support/TargetSelect.h>75#include <llvm/ExecutionEngine/JITMemoryManager.h>76#include <llvm/Support/CommandLine.h>77#include <llvm/ExecutionEngine/MCJIT.h>78#include <llvm/ExecutionEngine/JIT.h>79#include <llvm/ADT/StringMap.h>80#include <llvm/Support/Debug.h>81#include <llvm/Support/Host.h>8283#include <map>8485#ifdef assert86#undef assert87#endif8889// from hotspot/src/share/vm/utilities/debug.hpp90#ifdef ASSERT91#ifndef USE_REPEATED_ASSERTS92#define assert(p, msg) \93do { \94if (!(p)) { \95report_vm_error(__FILE__, __LINE__, "assert(" #p ") failed", msg); \96BREAKPOINT; \97} \98} while (0)99#else // #ifndef USE_REPEATED_ASSERTS100#define assert(p, msg)101do { \102for (int __i = 0; __i < AssertRepeat; __i++) { \103if (!(p)) { \104report_vm_error(__FILE__, __LINE__, "assert(" #p ") failed", msg); \105BREAKPOINT; \106} \107} \108} while (0)109#endif // #ifndef USE_REPEATED_ASSERTS110#else111#define assert(p, msg)112#endif113114#ifdef DEBUG115#undef DEBUG116#endif117#ifdef SHARK_DEBUG118#define DEBUG119#undef SHARK_DEBUG120#endif121122#endif // SHARE_VM_SHARK_LLVMHEADERS_HPP123124125