3a78d30897
Currently the static variables of the allocator are moved into a global structure. The future plan is supporting multiple context models with different advantages and disadvantages. Users can select the most appropriate context model for their own use case. This context model must be selected at compile time using compiler defines. Currently only one model is implemented, which will be the default context model: the context is stored in global variables, so only a single context is available which always exists. JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg zherczeg.u-szeged@partner.samsung.com
49 lines
1.2 KiB
C
49 lines
1.2 KiB
C
/* Copyright 2016 Samsung Electronics Co., Ltd.
|
|
* Copyright 2016 University of Szeged.
|
|
*
|
|
* 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.
|
|
*/
|
|
|
|
#include "jcontext.h"
|
|
|
|
/** \addtogroup context Jerry context
|
|
* @{
|
|
*
|
|
* \addtogroup context Context
|
|
* @{
|
|
*/
|
|
|
|
/**
|
|
* Global context.
|
|
*/
|
|
jerry_context_t jerry_global_context;
|
|
|
|
/**
|
|
* Jerry global heap section attribute.
|
|
*/
|
|
#ifndef JERRY_HEAP_SECTION_ATTR
|
|
#define JERRY_GLOBAL_HEAP_SECTION
|
|
#else /* JERRY_HEAP_SECTION_ATTR */
|
|
#define JERRY_GLOBAL_HEAP_SECTION __attribute__ ((section (JERRY_HEAP_SECTION_ATTR)))
|
|
#endif /* !JERRY_HEAP_SECTION_ATTR */
|
|
|
|
/**
|
|
* Global heap.
|
|
*/
|
|
jmem_heap_t jerry_global_heap __attribute__ ((aligned (JMEM_ALIGNMENT))) JERRY_GLOBAL_HEAP_SECTION;
|
|
|
|
/**
|
|
* @}
|
|
* @}
|
|
*/
|