comparison src/share/vm/compiler/abstractCompiler.hpp @ 1692:d2ede61b7a12

6976186: integrate Shark HotSpot changes Summary: Shark is a JIT compiler for Zero that uses the LLVM compiler infrastructure. Reviewed-by: kvn, twisti Contributed-by: Gary Benson <gbenson@redhat.com>
author twisti
date Wed, 11 Aug 2010 05:51:21 -0700
parents c18cbe5936b8
children 2d26b0046e0d f95d63e2154a
comparison
equal deleted inserted replaced
1691:4a665be40fd3 1692:d2ede61b7a12
1 /* 1 /*
2 * Copyright (c) 1999, 2007, Oracle and/or its affiliates. All rights reserved. 2 * Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 * 4 *
5 * This code is free software; you can redistribute it and/or modify it 5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as 6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. 7 * published by the Free Software Foundation.
43 virtual const char* name() = 0; 43 virtual const char* name() = 0;
44 44
45 // Missing feature tests 45 // Missing feature tests
46 virtual bool supports_native() { return true; } 46 virtual bool supports_native() { return true; }
47 virtual bool supports_osr () { return true; } 47 virtual bool supports_osr () { return true; }
48 #if defined(TIERED) || ( !defined(COMPILER1) && !defined(COMPILER2)) 48 #if defined(TIERED) || ( !defined(COMPILER1) && !defined(COMPILER2) && !defined(SHARK))
49 virtual bool is_c1 () { return false; } 49 virtual bool is_c1 () { return false; }
50 virtual bool is_c2 () { return false; } 50 virtual bool is_c2 () { return false; }
51 virtual bool is_shark() { return false; }
51 #else 52 #else
52 #ifdef COMPILER1 53 #ifdef COMPILER1
53 bool is_c1 () { return true; } 54 bool is_c1 () { return true; }
54 bool is_c2 () { return false; } 55 bool is_c2 () { return false; }
56 bool is_shark() { return false; }
55 #endif // COMPILER1 57 #endif // COMPILER1
56 #ifdef COMPILER2 58 #ifdef COMPILER2
57 bool is_c1 () { return false; } 59 bool is_c1 () { return false; }
58 bool is_c2 () { return true; } 60 bool is_c2 () { return true; }
61 bool is_shark() { return false; }
59 #endif // COMPILER2 62 #endif // COMPILER2
63 #ifdef SHARK
64 bool is_c1 () { return false; }
65 bool is_c2 () { return false; }
66 bool is_shark() { return true; }
67 #endif // SHARK
60 #endif // TIERED 68 #endif // TIERED
61 69
62 // Customization 70 // Customization
63 virtual bool needs_stubs () = 0; 71 virtual bool needs_stubs () = 0;
64 72