summaryrefslogtreecommitdiff
path: root/compiler/export/jit_create.h
diff options
context:
space:
mode:
author Dmitrii Ishcheikin <ishcheikin@google.com> 2023-06-26 13:19:37 +0000
committer Dmitrii Ishcheikin <ishcheikin@google.com> 2023-07-26 14:39:30 +0000
commit35cca3e296346277422aaee030edced697e09319 (patch)
tree37b7bb0f6f8ac94baf716213b0dbd8232215a5a8 /compiler/export/jit_create.h
parent9ca7be960a291da42b27e6ee94b362cef9688427 (diff)
Merge libart and libart-compiler into a single library
Rename old libart to libart-runtime. Build libart-runtime and libart-compiler separately as static libraries. This is required to support PGO (compiler) and AFDO (runtime) without mixing them. Combine libart-runtime and libart-compiler into libart with whole-archive linking. Remove JitLoadTest, since `jit_create` (previously `jit_load`) function is guaranteed to exist in `libart`. After this change libart-compiler will have access to all libart-runtime symbols. This will allow to hide more symbols from libart-runtime. ART APEX size before and after: X86 : 29,748.00 KiB -> 29,648.00 KiB (-100.00 KiB, -0.34%) X86_64: 49,148.00 KiB -> 48,928.00 KiB (-220.00 KiB, -0.45%) Arm32 : 23,440.00 KiB -> 23,268.00 KiB (-172.00 KiB, -0.73%) Arm64 : 44,472.00 KiB -> 43,884.00 KiB (-588.00 KiB, -1.32%) Bug: 186902856 Test: art/test.py -b --host Test: atest art_standalone_\*_tests Test: art/tools/run-gtests.sh Test: art/test/testrunner/testrunner.py --target Test: art/tools/run-libcore-tests.sh --mode=device Test: art/tools/run-libjdwp-tests.sh --mode=device Test: m mts && mts-tradefed run commandAndExit mts-art Test: m libart-compiler libartd-compiler libart-runtime libartd-runtime libart libartd Test: art/build/apex/runtests.sh (no regressions) Test: atest art-apex-update-rollback (no regressions) Change-Id: I20bd2fcca26013963a48e933142c9f81883bdca4
Diffstat (limited to 'compiler/export/jit_create.h')
-rw-r--r--compiler/export/jit_create.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/compiler/export/jit_create.h b/compiler/export/jit_create.h
new file mode 100644
index 0000000000..53dd45ef93
--- /dev/null
+++ b/compiler/export/jit_create.h
@@ -0,0 +1,33 @@
+/*
+ * Copyright (C) 2023 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ART_COMPILER_EXPORT_JIT_CREATE_H_
+#define ART_COMPILER_EXPORT_JIT_CREATE_H_
+
+#include "base/macros.h"
+
+namespace art HIDDEN {
+namespace jit {
+
+class JitCompilerInterface;
+
+// Used in `libart-runtime` to create `libart-compiler` JIT.
+JitCompilerInterface* jit_create();
+
+} // namespace jit
+} // namespace art
+
+#endif // ART_COMPILER_EXPORT_JIT_CREATE_H_