| /ark/runtime_core/tests/cts-coverage-tool/ |
| D | non_testable.yaml | 6 # http://www.apache.org/licenses/LICENSE-2.0 13 --- 16 - title: Conversions between integer and floating point types 17 description: Conversion from floating-point types to integer one obeys the following 20 - title: Create new object 24 - title: Load accumulator from string constant pool 25 description: In dynamically-typed language context load string as 'any' value. 28 - title: Type conversions 30 Conversion from floating-point types to integer one obeys the following rules. 33 - title: Object equality comparison [all …]
|
| /ark/runtime_core/isa/ |
| D | isa.yaml | 6 # http://www.apache.org/licenses/LICENSE-2.0 14 --- 17 - name: General design 21 - name: Registers 31 - name: Accumulator 39 …accumulator are also introduced. For example, moving arguments for `call.range` instruction may be… 40 register-to-register moves. 42 - name: Calling sequence 48 …On return, callee frame is destroyed. If function return value is non-void, it is passed to caller… 52 - name: Supported primitive types [all …]
|
| /ark/runtime_core/tests/cts-generator/cts-template/ |
| D | call.virt.range.yaml | 6 # http://www.apache.org/licenses/LICENSE-2.0 13 --- 15 - name: java 18 - name: R_xorshift32 52 - file-name: call.virt.range 55 - sig: call.virt.range method_id, v:in:top 66 … constant-pool based on object reference using language-specific semantics (currently only Java 70 Non-range instructions can be used to pass up to 4 arguments (including object reference). 73 For methods with more arguments range kinds of instruction are to be used, which takes 76 - method_id_non_static [all …]
|
| D | call.virt.range.negative.yaml | 6 # http://www.apache.org/licenses/LICENSE-2.0 13 --- 15 - name: java 18 - name: r_A 25 - name: r_B 34 - file-name: call.virt.range.negative 37 - sig: call.virt.range method_id, v:in:top 48 … constant-pool based on object reference using language-specific semantics (currently only Java 52 Non-range instructions can be used to pass up to 4 arguments (including object reference). 55 For methods with more arguments range kinds of instruction are to be used, which takes [all …]
|
| D | call.virt.range_base.yaml | 6 # http://www.apache.org/licenses/LICENSE-2.0 13 --- 15 - name: java 18 - name: r_A 25 - name: NPE 28 - name: j_NPE 31 - name: AME 35 - name: j_AME 40 - file-name: call.virt.range_base 43 - sig: call.virt.range method_id, v:in:top [all …]
|
| D | call.range.yaml | 6 # http://www.apache.org/licenses/LICENSE-2.0 13 --- 15 - name: java 20 - file-name: call.range 30 runtime constant-pool. 32 … Non-range instructions can be used to pass up to 4 arguments (unused register slot values will 34 …For methods with more arguments range kind of instruction is to be used, which takes the needed nu… 37 - x_none 39 - method_id_static 40 - compatible_arguments [all …]
|
| D | call.virt.short.negative.yaml | 6 # http://www.apache.org/licenses/LICENSE-2.0 13 --- 15 - name: java 18 - name: r_A 25 - name: r_B 33 - file-name: call.virt.short.negative 36 - sig: call.virt.short method_id, v1:in:top, v2:in:top 47 … constant-pool based on object reference using language-specific semantics (currently only Java 51 Non-range instructions can be used to pass up to 4 arguments (including object reference). 54 For methods with more arguments range kinds of instruction are to be used, which takes [all …]
|
| D | call.short.yaml | 6 # http://www.apache.org/licenses/LICENSE-2.0 13 --- 15 - name: java 20 - file-name: call.short 30 runtime constant-pool. 32 … Non-range instructions can be used to pass up to 4 arguments (unused register slot values will 34 …For methods with more arguments range kind of instruction is to be used, which takes the needed nu… 37 - x_none 39 - method_id_static 40 - compatible_arguments [all …]
|
| D | call.virt.short.yaml | 6 # http://www.apache.org/licenses/LICENSE-2.0 13 --- 15 - name: java 18 - name: r_A 25 - name: r_R 38 - name: r_RJ 51 - name: NPE 54 - name: j_NPE 57 - name: AME 61 - name: j_AME [all …]
|
| D | call.acc.yaml | 6 # http://www.apache.org/licenses/LICENSE-2.0 13 --- 15 - name: java 20 - file-name: call.acc 30 runtime constant-pool. 32 … Non-range instructions can be used to pass up to 4 arguments (unused register slot values will 34 In dynamically-typed language context accept 'any' values in source registers. 37 - x_none 39 - method_id_static 40 - compatible_arguments [all …]
|
| D | call.yaml | 6 # http://www.apache.org/licenses/LICENSE-2.0 14 --- 16 - name: java 21 - file-name: call 31 runtime constant-pool. 33 … Non-range instructions can be used to pass up to 4 arguments (unused register slot values will 35 …For methods with more arguments range kind of instruction is to be used, which takes the needed nu… 38 - x_none 40 - method_id_static 41 - compatible_arguments [all …]
|
| /ark/runtime_core/docs/ |
| D | glossary.md | 11 * **AOT** stands for **Ahead-Of-Time**. In compilers, terms "ahead-of-time compilation" and "AOT 15 See https://en.wikipedia.org/wiki/Ahead-of-time_compilation. 24 * **JIT** stands for **Just-In-Time**. In compilers, terms "just-in-time compilation" and "JIT 28 See https://en.wikipedia.org/wiki/Just-in-time_compilation. 31 * **Panda Assembly Language** is a low-level programming language retaining very strong 36 * **Panda Bytecode** or **PBC** is a portable hardware-independent instruction set designed for 50 * **Conservative GC** or non-precise GC works with ambiguous references, 62 * **Safepoint** is a range of execution where the state of the executing thread is well described. 70 * **Semi-space compaction** is a compaction algorithm when memory is split to the two equal spaces 73 * **STW** stands for **stop the world**, used in context of stop the world pauses forced by GC - [all …]
|
| D | design-of-interpreter.md | 9 | ------------------------------- | ---------------------------------------------------------- | 22 1. The platform should scale from microcontrollers to high-end mobile phones: 43 1. Bytecode is register-based: all arguments and variables are mapped to virtual registers, 47 1. Bytecode's instruction set architecture is machine-readable with a dedicated API for 52 For the rationale on the bytecode type, please see [here](rationale-for-bytecode.md). 54 Rationale on the machine-readable instruction set architecture is following. Since bytecode 56 the platform outside the interpreter. Having this crucial information copy-pasted or delivered as 57 a bunch of C/C++ headers is very fragile and error-prone. At the same time, 58 with the machine-readable ISA we now already can re-use this information in many places, e.g.: 60 * In Panda Assembler's back-end, we automatically generate emission of bytecode in the binary form. [all …]
|
| D | assembly_format.md | 5 … assembly file format for Panda platform. Assembly files are human-readable and human-writable pla… 11 …-to-byte-code language with a minimal feature set. All language-specific "traits" that should be s… 28 * Floating-point decimal/hexadecimal literals that can be represented with IEEE 754. Hexadecimal fl… 32 …nce of any characters enclosed in `"` characters. Non-printable characters and characters out of L… 36 - `\"` double quote, `\x22` 37 - `\a` alert, `\x07` 38 - `\b` backspace, `\x08` 39 - `\f` form feed, `\x0c` 40 - `\n` newline, `\x0a` 41 - `\r` carriage return, `\x0d` [all …]
|
| D | memory-management.md | 12 * [Object header](#object-header) 20  23 - base mode 24 - allocators with some average metrics and profile-based configurations (if available) 25 - some baseline GCs with profile-based configurations (if available) 26 - performance 27 - allocators with low allocation cost 28 …- low-pause/pauseless GCs (for games) or GCs with high throughput and acceptable STW pause (not fo… 29 - power-saving mode 30 - energy-efficient allocators (if possible) [all …]
|
| /ark/runtime_core/runtime/include/mem/ |
| D | allocator.h | 7 * http://www.apache.org/licenses/LICENSE-2.0 26 #include "runtime/mem/bump-allocator.h" 128 return static_cast<T *>(this->Allocate(sizeof(T) * size, DEFAULT_ALIGNMENT, nullptr)); in AllocArray() 137 // NOLINTNEXTLINE(readability-braces-around-statements,bugprone-suspicious-semicolon) in Delete() 139 ptr->~T(); in Delete() 151 void *p = ToVoidPtr(ToUintPtr(data) - SIZE_BEFORE_DATA_OFFSET); in DeleteArray() 153 // NOLINTNEXTLINE(readability-braces-around-statements, bugprone-suspicious-semicolon) in DeleteArray() 156 data->~T(); in DeleteArray() 213 new (p) T(std::forward<Args>(args)...); // NOLINT(bugprone-throw-keyword-missing) in New() 226 // NOLINTNEXTLINE(cppcoreguidelines-pro-bounds-pointer-arithmetic) in New() [all …]
|
| /ark/runtime_core/scripts/ |
| D | memusage.py | 2 # -- coding: utf-8 -- 8 # http://www.apache.org/licenses/LICENSE-2.0 34 # pylint: disable=too-few-public-methods 81 55e88a5ab000-55e88a7c8000 r-xp 00068000 08:02 14434818 /usr/bin/nvim 86 for _ in range(5): 91 # pylint: disable=too-many-instance-attributes 108 "[anon:Non Movable Space]": MemInfo("Non Movable Space"), 142 # 55e88a5ab000-55e88a7c8000 r-xp 00068000 08:02 14434818 /usr/bin/nvim 208 '-f', '--follow', action='store_true', 211 '-i', '--interval', default=200, type=int,
|
| /ark/runtime_core/libpandabase/ |
| D | README.md | 7 pandargs is header-only utility tool that helps to parse command line arguments. It supports severa… 8 - integer 9 - double 10 - boolean 11 - string 12 - uint64_t 13 - list 33 - 3 parameters: argument name, default value, description. 34 - 4 parameters for single list: argument name, default value, description, delimiter. 35 - 5 parameters for integer args: argument name, default value, description, min value, max value [all …]
|
| /ark/runtime_core/runtime/mem/gc/ |
| D | gc.h | 7 * http://www.apache.org/licenses/LICENSE-2.0 80 // NOLINTNEXTLINE(cppcoreguidelines-macro-usage) 81 #define LOG_DEBUG_GC LOG(DEBUG, GC) << this->GetLogPrefix() 82 // NOLINTNEXTLINE(cppcoreguidelines-macro-usage) 83 #define LOG_INFO_GC LOG(INFO, GC) << this->GetLogPrefix() 107 if (native_gc_trigger_type_str == "no-native-gc-trigger") { in NativeGcTriggerTypeFromString() 110 if (native_gc_trigger_type_str == "simple-strategy") { in NativeGcTriggerTypeFromString() 136 uint64_t young_space_size = 0; /// size of young-space for gen-gc 149 // NOLINTNEXTLINE(readability-braces-around-statements) in MarkObjectHeader() 150 if constexpr (reversed_mark) { // NOLINT(bugprone-suspicious-semicolon) in MarkObjectHeader() [all …]
|
| /ark/ts2abc/test262/ |
| D | es2015_tests.txt | 1 built-ins/Array/S15.4.2.1_A1.1_T2.js 2 built-ins/Array/proto.js 3 built-ins/Array/proto-from-ctor-realm-zero.js 4 built-ins/Array/proto-from-ctor-realm-two.js 5 built-ins/Array/S15.4_A1.1_T9.js 6 built-ins/Array/length.js 7 built-ins/Array/S15.4.5.2_A3_T2.js 8 built-ins/Array/S15.4.5.1_A2.1_T1.js 9 built-ins/Array/S15.4.2.1_A2.1_T1.js 10 built-ins/Array/prop-desc.js [all …]
|
| D | skip_tests.json | 5 "built-ins/Promise/all/species-get-error.js", 6 "built-ins/Promise/race/species-get-error.js", 7 "language/global-code/decl-lex.js" 16 "language/expressions/template-literal/tv-utf16-escape-sequence.js" 22 "language/identifiers/part-digits-via-escape-hex.js", 23 "language/identifiers/val-dollar-sign-via-escape-hex.js", 24 "language/identifiers/vals-eng-alpha-lower-via-escape-hex.js", 25 "language/identifiers/vals-eng-alpha-upper-via-escape-hex.js", 26 "language/identifiers/vals-rus-alpha-lower-via-escape-hex.js", 27 "language/identifiers/vals-rus-alpha-upper-via-escape-hex.js", [all …]
|
| D | CI_tests.txt | 1 built-ins/Error/length.js 2 built-ins/Error/message_property.js 3 built-ins/Error/prototype/S15.11.3.1_A1_T1.js 4 built-ins/Error/prototype/S15.11.3.1_A3_T1.js 5 built-ins/Error/prototype/S15.11.4_A3.js 6 built-ins/Error/prototype/constructor/S15.11.4.1_A1_T2.js 7 built-ins/Error/prototype/message/S15.11.4.3_A2.js 8 built-ins/Error/prototype/name/S15.11.4.2_A1.js 9 built-ins/Error/prototype/toString/15.11.4.4-10-1.js 10 built-ins/Error/prototype/toString/15.11.4.4-6-1.js [all …]
|
| /ark/runtime_core/assembler/ |
| D | assembly-ins.h | 7 * http://www.apache.org/licenses/LICENSE-2.0 26 #include "assembly-debug.h" 61 constexpr int INVALID_REG_IDX = -1; 91 constexpr static uint16_t ACCUMULATOR = -1; 98 std::vector<uint16_t> regs; /* list of arguments - registers */ 99 std::vector<std::string> ids; /* list of arguments - identifiers */ 100 std::vector<IType> imms; /* list of arguments - immediates */ 145 { // Non-range call in IsCall()
|
| /ark/runtime_core/runtime/mem/ |
| D | allocator.cpp | 7 * http://www.apache.org/licenses/LICENSE-2.0 18 #include "runtime/include/mem/allocator-inl.h" 24 #include "runtime/mem/bump-allocator-inl.h" 25 #include "runtime/mem/freelist_allocator-inl.h" 26 #include "runtime/mem/internal_allocator-inl.h" 27 #include "runtime/mem/runslots_allocator-inl.h" 28 #include "runtime/mem/pygote_space_allocator-inl.h" 47 // NOLINTNEXTLINE(readability-delete-null-pointer) in ~ObjectAllocatorBase() 93 // Before pygote fork, allocate small non-movable objects in pygote space in AllocateNonMovable() 94 …if (UNLIKELY(IsPygoteAllocEnabled() && pygote_space_allocator_->CanAllocNonMovable(size, align))) { in AllocateNonMovable() [all …]
|
| D | heap_manager.cpp | 7 * http://www.apache.org/licenses/LICENSE-2.0 24 #include "libpandabase/mem/mmap_mem_pool-inl.h" 28 #include "mem/mmap_mem_pool-inl.h" 29 #include "mem/internal_allocator-inl.h" 30 #include "mem/gc/hybrid-gc/hybrid_object_allocator.h" 36 #include "runtime/mem/internal_allocator-inl.h" 37 #include "runtime/handle_base-inl.h" 39 #include "runtime/mem/gc/g1/g1-gc.h" 50 // NOLINTNEXTLINE(cppcoreguidelines-macro-usage) in Initialize() 71 if (!objectAllocator_.AsObjectAllocator()->IsTLABSupported() || single_threaded) { in Initialize() [all …]
|