1cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier/* 2cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier * Copyright (C) 2013 The Android Open Source Project 3cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier * 4cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier * Licensed under the Apache License, Version 2.0 (the "License"); 5cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier * you may not use this file except in compliance with the License. 6cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier * You may obtain a copy of the License at 7cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier * 8cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier * http://www.apache.org/licenses/LICENSE-2.0 9cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier * 10cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier * Unless required by applicable law or agreed to in writing, software 11cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier * distributed under the License is distributed on an "AS IS" BASIS, 12cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier * See the License for the specific language governing permissions and 14cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier * limitations under the License. 15cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier */ 16cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier 17cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier.macro GENERATE_ALLOC_ENTRYPOINTS c_suffix, cxx_suffix 18cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier// Called by managed code to allocate an object. 191cc7dbabd03e0a6c09d68161417a21bd6f9df371Andreas GampeTWO_ARG_DOWNCALL art_quick_alloc_object\c_suffix, artAllocObjectFromCode\cxx_suffix, RETURN_IF_RESULT_IS_NON_ZERO_OR_DELIVER 20be1ca55db3362f5b100c4c65da5342fd299520bbHiroshi Yamauchi// Called by managed code to allocate an object of a resolved class. 211cc7dbabd03e0a6c09d68161417a21bd6f9df371Andreas GampeTWO_ARG_DOWNCALL art_quick_alloc_object_resolved\c_suffix, artAllocObjectFromCodeResolved\cxx_suffix, RETURN_IF_RESULT_IS_NON_ZERO_OR_DELIVER 22be1ca55db3362f5b100c4c65da5342fd299520bbHiroshi Yamauchi// Called by managed code to allocate an object of an initialized class. 231cc7dbabd03e0a6c09d68161417a21bd6f9df371Andreas GampeTWO_ARG_DOWNCALL art_quick_alloc_object_initialized\c_suffix, artAllocObjectFromCodeInitialized\cxx_suffix, RETURN_IF_RESULT_IS_NON_ZERO_OR_DELIVER 24cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier// Called by managed code to allocate an object when the caller doesn't know whether it has access 25cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier// to the created type. 261cc7dbabd03e0a6c09d68161417a21bd6f9df371Andreas GampeTWO_ARG_DOWNCALL art_quick_alloc_object_with_access_check\c_suffix, artAllocObjectFromCodeWithAccessCheck\cxx_suffix, RETURN_IF_RESULT_IS_NON_ZERO_OR_DELIVER 27cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier// Called by managed code to allocate an array. 281cc7dbabd03e0a6c09d68161417a21bd6f9df371Andreas GampeTHREE_ARG_DOWNCALL art_quick_alloc_array\c_suffix, artAllocArrayFromCode\cxx_suffix, RETURN_IF_RESULT_IS_NON_ZERO_OR_DELIVER 29bb8f0ab736b61db8f543e433859272e83f96ee9bHiroshi Yamauchi// Called by managed code to allocate an array of a resolve class. 301cc7dbabd03e0a6c09d68161417a21bd6f9df371Andreas GampeTHREE_ARG_DOWNCALL art_quick_alloc_array_resolved\c_suffix, artAllocArrayFromCodeResolved\cxx_suffix, RETURN_IF_RESULT_IS_NON_ZERO_OR_DELIVER 31cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier// Called by managed code to allocate an array when the caller doesn't know whether it has access 32cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier// to the created type. 331cc7dbabd03e0a6c09d68161417a21bd6f9df371Andreas GampeTHREE_ARG_DOWNCALL art_quick_alloc_array_with_access_check\c_suffix, artAllocArrayFromCodeWithAccessCheck\cxx_suffix, RETURN_IF_RESULT_IS_NON_ZERO_OR_DELIVER 34cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier// Called by managed code to allocate an array in a special case for FILLED_NEW_ARRAY. 351cc7dbabd03e0a6c09d68161417a21bd6f9df371Andreas GampeTHREE_ARG_DOWNCALL art_quick_check_and_alloc_array\c_suffix, artCheckAndAllocArrayFromCode\cxx_suffix, RETURN_IF_RESULT_IS_NON_ZERO_OR_DELIVER 36cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier// Called by managed code to allocate an array in a special case for FILLED_NEW_ARRAY. 371cc7dbabd03e0a6c09d68161417a21bd6f9df371Andreas GampeTHREE_ARG_DOWNCALL art_quick_check_and_alloc_array_with_access_check\c_suffix, artCheckAndAllocArrayFromCodeWithAccessCheck\cxx_suffix, RETURN_IF_RESULT_IS_NON_ZERO_OR_DELIVER 38848f70a3d73833fc1bf3032a9ff6812e429661d9Jeff Hao// Called by managed code to allocate a string from bytes 3969bdcb29fdbd8266374e3793cb4e28dcc5daf0f9Jeff HaoFOUR_ARG_DOWNCALL art_quick_alloc_string_from_bytes\c_suffix, artAllocStringFromBytesFromCode\cxx_suffix, RETURN_IF_RESULT_IS_NON_ZERO_OR_DELIVER 40848f70a3d73833fc1bf3032a9ff6812e429661d9Jeff Hao// Called by managed code to allocate a string from chars 4169bdcb29fdbd8266374e3793cb4e28dcc5daf0f9Jeff HaoTHREE_ARG_DOWNCALL art_quick_alloc_string_from_chars\c_suffix, artAllocStringFromCharsFromCode\cxx_suffix, RETURN_IF_RESULT_IS_NON_ZERO_OR_DELIVER 42848f70a3d73833fc1bf3032a9ff6812e429661d9Jeff Hao// Called by managed code to allocate a string from string 4369bdcb29fdbd8266374e3793cb4e28dcc5daf0f9Jeff HaoONE_ARG_DOWNCALL art_quick_alloc_string_from_string\c_suffix, artAllocStringFromStringFromCode\cxx_suffix, RETURN_IF_RESULT_IS_NON_ZERO_OR_DELIVER 44cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier.endm 45cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu Chartier 467410f29b4dae223befac036ea567d7f33351dad1Mathieu Chartier.macro GENERATE_ALL_ALLOC_ENTRYPOINTS 47e6da9af8dfe0a3e3fbc2be700554f6478380e7b9Mathieu ChartierGENERATE_ALLOC_ENTRYPOINTS _dlmalloc, DlMalloc 48e6da9af8dfe0a3e3fbc2be700554f6478380e7b9Mathieu ChartierGENERATE_ALLOC_ENTRYPOINTS _dlmalloc_instrumented, DlMallocInstrumented 49e6da9af8dfe0a3e3fbc2be700554f6478380e7b9Mathieu ChartierGENERATE_ALLOC_ENTRYPOINTS _rosalloc, RosAlloc 50e6da9af8dfe0a3e3fbc2be700554f6478380e7b9Mathieu ChartierGENERATE_ALLOC_ENTRYPOINTS _rosalloc_instrumented, RosAllocInstrumented 51cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu ChartierGENERATE_ALLOC_ENTRYPOINTS _bump_pointer, BumpPointer 52cbb2d20bea2861f244da2e2318d8c088300a3710Mathieu ChartierGENERATE_ALLOC_ENTRYPOINTS _bump_pointer_instrumented, BumpPointerInstrumented 53692fafd9778141fa6ef0048c9569abd7ee0253bfMathieu ChartierGENERATE_ALLOC_ENTRYPOINTS _tlab, TLAB 54692fafd9778141fa6ef0048c9569abd7ee0253bfMathieu ChartierGENERATE_ALLOC_ENTRYPOINTS _tlab_instrumented, TLABInstrumented 552cd334ae2d4287216523882f0d298cf3901b7ab1Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS _region, Region 562cd334ae2d4287216523882f0d298cf3901b7ab1Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS _region_instrumented, RegionInstrumented 572cd334ae2d4287216523882f0d298cf3901b7ab1Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS _region_tlab, RegionTLAB 582cd334ae2d4287216523882f0d298cf3901b7ab1Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS _region_tlab_instrumented, RegionTLABInstrumented 597410f29b4dae223befac036ea567d7f33351dad1Mathieu Chartier.endm 604adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi 614adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi// Generate the allocation entrypoints for each allocator. This is used as an alternative to 624adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi// GNERATE_ALL_ALLOC_ENTRYPOINTS for selectively implementing allocation fast paths in 634adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi// hand-written assembly. 644adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi#define GENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT(c_suffix, cxx_suffix) \ 654adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi TWO_ARG_DOWNCALL art_quick_alloc_object ## c_suffix, artAllocObjectFromCode ## cxx_suffix, RETURN_IF_RESULT_IS_NON_ZERO_OR_DELIVER 664adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi#define GENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_RESOLVED(c_suffix, cxx_suffix) \ 674adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi TWO_ARG_DOWNCALL art_quick_alloc_object_resolved ## c_suffix, artAllocObjectFromCodeResolved ## cxx_suffix, RETURN_IF_RESULT_IS_NON_ZERO_OR_DELIVER 684adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi#define GENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_INITIALIZED(c_suffix, cxx_suffix) \ 694adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi TWO_ARG_DOWNCALL art_quick_alloc_object_initialized ## c_suffix, artAllocObjectFromCodeInitialized ## cxx_suffix, RETURN_IF_RESULT_IS_NON_ZERO_OR_DELIVER 704adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi#define GENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_WITH_ACCESS_CHECK(c_suffix, cxx_suffix) \ 714adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi TWO_ARG_DOWNCALL art_quick_alloc_object_with_access_check ## c_suffix, artAllocObjectFromCodeWithAccessCheck ## cxx_suffix, RETURN_IF_RESULT_IS_NON_ZERO_OR_DELIVER 724adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi#define GENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY(c_suffix, cxx_suffix) \ 734adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi THREE_ARG_DOWNCALL art_quick_alloc_array ## c_suffix, artAllocArrayFromCode ## cxx_suffix, RETURN_IF_RESULT_IS_NON_ZERO_OR_DELIVER 744adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi#define GENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_RESOLVED(c_suffix, cxx_suffix) \ 754adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi THREE_ARG_DOWNCALL art_quick_alloc_array_resolved ## c_suffix, artAllocArrayFromCodeResolved ## cxx_suffix, RETURN_IF_RESULT_IS_NON_ZERO_OR_DELIVER 764adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi#define GENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_WITH_ACCESS_CHECK(c_suffix, cxx_suffix) \ 774adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi THREE_ARG_DOWNCALL art_quick_alloc_array_with_access_check ## c_suffix, artAllocArrayFromCodeWithAccessCheck ## cxx_suffix, RETURN_IF_RESULT_IS_NON_ZERO_OR_DELIVER 784adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi#define GENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY(c_suffix, cxx_suffix) \ 794adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi THREE_ARG_DOWNCALL art_quick_check_and_alloc_array ## c_suffix, artCheckAndAllocArrayFromCode ## cxx_suffix, RETURN_IF_RESULT_IS_NON_ZERO_OR_DELIVER 804adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi#define GENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY_WITH_ACCESS_CHECK(c_suffix, cxx_suffix) \ 814adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi THREE_ARG_DOWNCALL art_quick_check_and_alloc_array_with_access_check ## c_suffix, artCheckAndAllocArrayFromCodeWithAccessCheck ## cxx_suffix, RETURN_IF_RESULT_IS_NON_ZERO_OR_DELIVER 824adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi#define GENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_BYTES(c_suffix, cxx_suffix) \ 834adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi FOUR_ARG_DOWNCALL art_quick_alloc_string_from_bytes ## c_suffix, artAllocStringFromBytesFromCode ## cxx_suffix, RETURN_IF_RESULT_IS_NON_ZERO_OR_DELIVER 844adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi#define GENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_CHARS(c_suffix, cxx_suffix) \ 854adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi THREE_ARG_DOWNCALL art_quick_alloc_string_from_chars ## c_suffix, artAllocStringFromCharsFromCode ## cxx_suffix, RETURN_IF_RESULT_IS_NON_ZERO_OR_DELIVER 864adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi#define GENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_STRING(c_suffix, cxx_suffix) \ 874adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi ONE_ARG_DOWNCALL art_quick_alloc_string_from_string ## c_suffix, artAllocStringFromStringFromCode ## cxx_suffix, RETURN_IF_RESULT_IS_NON_ZERO_OR_DELIVER 884adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi 894adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi.macro GENERATE_ALLOC_ENTRYPOINTS_FOR_EACH_ALLOCATOR 904adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT(_dlmalloc, DlMalloc) 914adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_RESOLVED(_dlmalloc, DlMalloc) 924adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_INITIALIZED(_dlmalloc, DlMalloc) 934adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_WITH_ACCESS_CHECK(_dlmalloc, DlMalloc) 944adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY(_dlmalloc, DlMalloc) 954adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_RESOLVED(_dlmalloc, DlMalloc) 964adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_WITH_ACCESS_CHECK(_dlmalloc, DlMalloc) 974adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY(_dlmalloc, DlMalloc) 984adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY_WITH_ACCESS_CHECK(_dlmalloc, DlMalloc) 994adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_BYTES(_dlmalloc, DlMalloc) 1004adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_CHARS(_dlmalloc, DlMalloc) 1014adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_STRING(_dlmalloc, DlMalloc) 1024adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi 1034adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT(_dlmalloc_instrumented, DlMallocInstrumented) 1044adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_RESOLVED(_dlmalloc_instrumented, DlMallocInstrumented) 1054adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_INITIALIZED(_dlmalloc_instrumented, DlMallocInstrumented) 1064adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_WITH_ACCESS_CHECK(_dlmalloc_instrumented, DlMallocInstrumented) 1074adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY(_dlmalloc_instrumented, DlMallocInstrumented) 1084adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_RESOLVED(_dlmalloc_instrumented, DlMallocInstrumented) 1094adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_WITH_ACCESS_CHECK(_dlmalloc_instrumented, DlMallocInstrumented) 1104adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY(_dlmalloc_instrumented, DlMallocInstrumented) 1114adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY_WITH_ACCESS_CHECK(_dlmalloc_instrumented, DlMallocInstrumented) 1124adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_BYTES(_dlmalloc_instrumented, DlMallocInstrumented) 1134adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_CHARS(_dlmalloc_instrumented, DlMallocInstrumented) 1144adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_STRING(_dlmalloc_instrumented, DlMallocInstrumented) 1154adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi 116dc412b6f49a65774b7af654f65cbff619cb7d85aHiroshi Yamauchi// This is to be separately defined for each architecture to allow a hand-written assembly fast path. 117dc412b6f49a65774b7af654f65cbff619cb7d85aHiroshi Yamauchi// GENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT(_rosalloc, RosAlloc) 1184adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_RESOLVED(_rosalloc, RosAlloc) 1194adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_INITIALIZED(_rosalloc, RosAlloc) 1204adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_WITH_ACCESS_CHECK(_rosalloc, RosAlloc) 1214adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY(_rosalloc, RosAlloc) 1224adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_RESOLVED(_rosalloc, RosAlloc) 1234adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_WITH_ACCESS_CHECK(_rosalloc, RosAlloc) 1244adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY(_rosalloc, RosAlloc) 1254adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY_WITH_ACCESS_CHECK(_rosalloc, RosAlloc) 1264adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_BYTES(_rosalloc, RosAlloc) 1274adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_CHARS(_rosalloc, RosAlloc) 1284adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_STRING(_rosalloc, RosAlloc) 1294adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi 1304adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT(_rosalloc_instrumented, RosAllocInstrumented) 1314adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_RESOLVED(_rosalloc_instrumented, RosAllocInstrumented) 1324adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_INITIALIZED(_rosalloc_instrumented, RosAllocInstrumented) 1334adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_WITH_ACCESS_CHECK(_rosalloc_instrumented, RosAllocInstrumented) 1344adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY(_rosalloc_instrumented, RosAllocInstrumented) 1354adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_RESOLVED(_rosalloc_instrumented, RosAllocInstrumented) 1364adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_WITH_ACCESS_CHECK(_rosalloc_instrumented, RosAllocInstrumented) 1374adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY(_rosalloc_instrumented, RosAllocInstrumented) 1384adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY_WITH_ACCESS_CHECK(_rosalloc_instrumented, RosAllocInstrumented) 1394adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_BYTES(_rosalloc_instrumented, RosAllocInstrumented) 1404adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_CHARS(_rosalloc_instrumented, RosAllocInstrumented) 1414adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_STRING(_rosalloc_instrumented, RosAllocInstrumented) 1424adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi 1434adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT(_bump_pointer, BumpPointer) 1444adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_RESOLVED(_bump_pointer, BumpPointer) 1454adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_INITIALIZED(_bump_pointer, BumpPointer) 1464adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_WITH_ACCESS_CHECK(_bump_pointer, BumpPointer) 1474adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY(_bump_pointer, BumpPointer) 1484adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_RESOLVED(_bump_pointer, BumpPointer) 1494adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_WITH_ACCESS_CHECK(_bump_pointer, BumpPointer) 1504adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY(_bump_pointer, BumpPointer) 1514adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY_WITH_ACCESS_CHECK(_bump_pointer, BumpPointer) 1524adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_BYTES(_bump_pointer, BumpPointer) 1534adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_CHARS(_bump_pointer, BumpPointer) 1544adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_STRING(_bump_pointer, BumpPointer) 1554adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi 1564adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT(_bump_pointer_instrumented, BumpPointerInstrumented) 1574adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_RESOLVED(_bump_pointer_instrumented, BumpPointerInstrumented) 1584adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_INITIALIZED(_bump_pointer_instrumented, BumpPointerInstrumented) 1594adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_WITH_ACCESS_CHECK(_bump_pointer_instrumented, BumpPointerInstrumented) 1604adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY(_bump_pointer_instrumented, BumpPointerInstrumented) 1614adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_RESOLVED(_bump_pointer_instrumented, BumpPointerInstrumented) 1624adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_WITH_ACCESS_CHECK(_bump_pointer_instrumented, BumpPointerInstrumented) 1634adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY(_bump_pointer_instrumented, BumpPointerInstrumented) 1644adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY_WITH_ACCESS_CHECK(_bump_pointer_instrumented, BumpPointerInstrumented) 1654adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_BYTES(_bump_pointer_instrumented, BumpPointerInstrumented) 1664adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_CHARS(_bump_pointer_instrumented, BumpPointerInstrumented) 1674adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_STRING(_bump_pointer_instrumented, BumpPointerInstrumented) 1684adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi 1694adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi// This is to be separately defined for each architecture to allow a hand-written assembly fast path. 1704adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi// GENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT(_tlab, TLAB) 1714adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_RESOLVED(_tlab, TLAB) 1724adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_INITIALIZED(_tlab, TLAB) 1734adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_WITH_ACCESS_CHECK(_tlab, TLAB) 1744adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY(_tlab, TLAB) 1754adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_RESOLVED(_tlab, TLAB) 1764adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_WITH_ACCESS_CHECK(_tlab, TLAB) 1774adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY(_tlab, TLAB) 1784adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY_WITH_ACCESS_CHECK(_tlab, TLAB) 1794adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_BYTES(_tlab, TLAB) 1804adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_CHARS(_tlab, TLAB) 1814adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_STRING(_tlab, TLAB) 1824adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi 1834adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT(_tlab_instrumented, TLABInstrumented) 1844adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_RESOLVED(_tlab_instrumented, TLABInstrumented) 1854adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_INITIALIZED(_tlab_instrumented, TLABInstrumented) 1864adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_WITH_ACCESS_CHECK(_tlab_instrumented, TLABInstrumented) 1874adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY(_tlab_instrumented, TLABInstrumented) 1884adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_RESOLVED(_tlab_instrumented, TLABInstrumented) 1894adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_WITH_ACCESS_CHECK(_tlab_instrumented, TLABInstrumented) 1904adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY(_tlab_instrumented, TLABInstrumented) 1914adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY_WITH_ACCESS_CHECK(_tlab_instrumented, TLABInstrumented) 1924adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_BYTES(_tlab_instrumented, TLABInstrumented) 1934adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_CHARS(_tlab_instrumented, TLABInstrumented) 1944adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_STRING(_tlab_instrumented, TLABInstrumented) 1954adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi 1964adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT(_region, Region) 1974adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_RESOLVED(_region, Region) 1984adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_INITIALIZED(_region, Region) 1994adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_WITH_ACCESS_CHECK(_region, Region) 2004adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY(_region, Region) 2014adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_RESOLVED(_region, Region) 2024adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_WITH_ACCESS_CHECK(_region, Region) 2034adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY(_region, Region) 2044adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY_WITH_ACCESS_CHECK(_region, Region) 2054adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_BYTES(_region, Region) 2064adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_CHARS(_region, Region) 2074adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_STRING(_region, Region) 2084adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi 2094adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT(_region_instrumented, RegionInstrumented) 2104adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_RESOLVED(_region_instrumented, RegionInstrumented) 2114adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_INITIALIZED(_region_instrumented, RegionInstrumented) 2124adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_WITH_ACCESS_CHECK(_region_instrumented, RegionInstrumented) 2134adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY(_region_instrumented, RegionInstrumented) 2144adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_RESOLVED(_region_instrumented, RegionInstrumented) 2154adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_WITH_ACCESS_CHECK(_region_instrumented, RegionInstrumented) 2164adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY(_region_instrumented, RegionInstrumented) 2174adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY_WITH_ACCESS_CHECK(_region_instrumented, RegionInstrumented) 2184adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_BYTES(_region_instrumented, RegionInstrumented) 2194adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_CHARS(_region_instrumented, RegionInstrumented) 2204adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_STRING(_region_instrumented, RegionInstrumented) 2214adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi 22210d4c08c0ea9df0a85a11e1c77974df24078c0ecHiroshi Yamauchi// This is to be separately defined for each architecture to allow a hand-written assembly fast path. 22310d4c08c0ea9df0a85a11e1c77974df24078c0ecHiroshi Yamauchi// GENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT(_region_tlab, RegionTLAB) 2244adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_RESOLVED(_region_tlab, RegionTLAB) 2254adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_INITIALIZED(_region_tlab, RegionTLAB) 2264adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_WITH_ACCESS_CHECK(_region_tlab, RegionTLAB) 2274adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY(_region_tlab, RegionTLAB) 2284adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_RESOLVED(_region_tlab, RegionTLAB) 2294adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_WITH_ACCESS_CHECK(_region_tlab, RegionTLAB) 2304adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY(_region_tlab, RegionTLAB) 2314adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY_WITH_ACCESS_CHECK(_region_tlab, RegionTLAB) 2324adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_BYTES(_region_tlab, RegionTLAB) 2334adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_CHARS(_region_tlab, RegionTLAB) 2344adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_STRING(_region_tlab, RegionTLAB) 2354adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi 2364adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT(_region_tlab_instrumented, RegionTLABInstrumented) 2374adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_RESOLVED(_region_tlab_instrumented, RegionTLABInstrumented) 2384adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_INITIALIZED(_region_tlab_instrumented, RegionTLABInstrumented) 2394adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_OBJECT_WITH_ACCESS_CHECK(_region_tlab_instrumented, RegionTLABInstrumented) 2404adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY(_region_tlab_instrumented, RegionTLABInstrumented) 2414adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_RESOLVED(_region_tlab_instrumented, RegionTLABInstrumented) 2424adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_ARRAY_WITH_ACCESS_CHECK(_region_tlab_instrumented, RegionTLABInstrumented) 2434adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY(_region_tlab_instrumented, RegionTLABInstrumented) 2444adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_CHECK_AND_ALLOC_ARRAY_WITH_ACCESS_CHECK(_region_tlab_instrumented, RegionTLABInstrumented) 2454adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_BYTES(_region_tlab_instrumented, RegionTLABInstrumented) 2464adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_CHARS(_region_tlab_instrumented, RegionTLABInstrumented) 2474adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi YamauchiGENERATE_ALLOC_ENTRYPOINTS_ALLOC_STRING_FROM_STRING(_region_tlab_instrumented, RegionTLABInstrumented) 2484adeab196d160f70b4865fb8be048ddd2ac7ab82Hiroshi Yamauchi.endm 249