| /arkcompiler/runtime_core/static_core/plugins/ets/doc/spec/ |
| D | 1_intro.rst | 28 The |LANG| language combines and supports features that are in use in many 35 At the same time, |LANG| does not support features that allow software 70 presumes that software is designed and implemented as a composition 74 A module in |LANG| is a standalone, independently compiled unit that 91 Some program entities in |LANG| can be *type-parameterized*. This means that 96 A classical illustration is the notion of a list that represents the 131 syntax style similar to that of those languages, and some of its important 144 that the language provides no access to low-level machine representations. 146 means that dynamically created objects are deallocated automatically soon 151 development ecosystem that facilitates the creation of software solutions [all …]
|
| /arkcompiler/ets_runtime/ecmascript/compiler/base/ |
| D | depend_chain_helper.cpp | 20 void DependChains::Merge(DependChains* that) in Merge() argument 23 while (size_ > that->size_) { in Merge() 29 auto rhs = that->head_; in Merge() 30 size_t rhsSize = that->size_; in Merge() 44 bool DependChains::Equals(DependChains* that) in Equals() argument 46 if (that == nullptr) { in Equals() 49 if (size_ != that->size_) { in Equals() 53 auto rhs = that->head_; in Equals() 68 DependChains* that = new (chunk_) DependChains(chunk_); in UpdateNode() local 70 that->head_ = node; in UpdateNode() [all …]
|
| /arkcompiler/runtime_core/static_core/plugins/ets/stdlib/std/core/ |
| D | Errors.sts | 19 * @class Represents an error that occurs when assertion fails. 37 * @class Represents an error that occurs when division by zero is performed. 46 * @class Represents an error that occurs when null pointer is dereferenced. 55 * @class Represents an error that occurs when exception is thrown and not catched 64 * @class Represents an error that occurs when trying to interpret syntactically invalid code 81 * @class Represents an error that occurs when JSONValue can not be assigned to a type 90 * @class Represents an error that occurs when provided collection index is out of range 107 * @class Represents an error that occurs when array is oging to be indexed out of its bounds 116 …* @class Represents exception that is thrown when illegal arithmetic operation is occured (e.g. di… 125 * @class Represents an error that occurs when memory allocation fails [all …]
|
| D | Exceptions.sts | 19 * Represents exception that is thrown in case of null pointer dereference 37 * Represents exception that is thrown in case of ? 54 * Represents exception that is thrown when provided argument have value outside the allowable range 71 …* Represents exception that is thrown when a method has been invoked at an illegal or inappropriat… 88 * Represents exception that is thrown when class is not found 105 * Represents exception that is thrown when verifier detects errors in class 122 * Represents exception that is thrown when linker detects errors in class 139 * Represents exception that is thrown when runtime detects incompatible changes in class 156 * Represents exception that is thrown when the requested operation is not supported. 173 …* @class Represents exception that is thrown when attempting to wait, notify or notifyAll on objec… [all …]
|
| /arkcompiler/runtime_core/docs/ |
| D | doxygen.config | 14 # Values that contain spaces should be placed between quotes (\" \"). 21 # that follow. The default is UTF-8 which is also the encoding used for all text 30 # double-quotes, unless you are using Doxywizard) that should identify the 44 # for a project that appears at the top of each page and should give viewer a 49 # With the PROJECT_LOGO tag one can specify a logo or an icon that is included 97 # descriptions after the members that are listed in the file and class 112 # This tag implements a quasi-intelligent brief description abbreviator that is 141 # inherited members of a class in the documentation of that class as if those 150 # shortest path that makes the file name unique will be used 161 # Note that you can specify absolute paths here, but also relative paths, which [all …]
|
| D | rationale-for-bytecode.md | 13 There is a central processing unit (CPU) that reads commands (or _instructions_) from 17 operands are _stack operands_ that reside in a special data structure called _stack_. The program 23 that the number and purpose of registers differs, too. Some nuances of working with stack may also 79 more _dispatch overhead_. Which means that the stack-based bytecode is slower by nature. 86 interpreter is very important, that's why 117 * Sometimes you might want to write directly into virtual register. e.g. for register moves (that 133 Let's take a closer look at `adda arg1, arg2`. Assume that arguments map to virtual registers on 148 It easy to see that to address virtual registers 4 and 5 we need just 3 bits which allows to encode 157 to the stack-based approach. Of course, if virtual registers have large numbers that do no fit 165 How to make sure that we benefit from the shorter encoding most of the time? An observation shows [all …]
|
| /arkcompiler/runtime_core/static_core/docs/ |
| D | doxygen.config | 14 # Values that contain spaces should be placed between quotes (\" \"). 21 # that follow. The default is UTF-8 which is also the encoding used for all text 30 # double-quotes, unless you are using Doxywizard) that should identify the 44 # for a project that appears at the top of each page and should give viewer a 49 # With the PROJECT_LOGO tag one can specify a logo or an icon that is included 97 # descriptions after the members that are listed in the file and class 112 # This tag implements a quasi-intelligent brief description abbreviator that is 141 # inherited members of a class in the documentation of that class as if those 150 # shortest path that makes the file name unique will be used 161 # Note that you can specify absolute paths here, but also relative paths, which [all …]
|
| D | rationale-for-bytecode.md | 13 There is a central processing unit (CPU) that reads commands (or _instructions_) from 17 operands are _stack operands_ that reside in a special data structure called _stack_. The program 23 that the number and purpose of registers differs, too. Some nuances of working with stack may also 79 more _dispatch overhead_. Which means that the stack-based bytecode is slower by nature. 86 interpreter is very important, that's why 117 * Sometimes you might want to write directly into virtual register. e.g. for register moves (that 133 Let's take a closer look at `adda arg1, arg2`. Assume that arguments map to virtual registers on 148 It easy to see that to address virtual registers 4 and 5 we need just 3 bits which allows to encode 157 to the stack-based approach. Of course, if virtual registers have large numbers that do no fit 165 How to make sure that we benefit from the shorter encoding most of the time? An observation shows [all …]
|
| /arkcompiler/toolchain/ |
| D | LICENSE | 14 the copyright owner that is granting the License. 17 other entities that control, are controlled by, or are under common 18 control with that entity. For the purposes of this definition, 38 copyright notice that is included in or attached to the work 42 form, that is based on (or derived from) the Work and for which the 45 of this License, Derivative Works shall not include works that remain 51 to that Work or Derivative Works thereof, that is intentionally 58 and issue tracking systems that are managed by, or on behalf of, the 60 excluding communication that is conspicuously marked or otherwise 80 by such Contributor that are necessarily infringed by their [all …]
|
| /arkcompiler/runtime_core/static_core/ |
| D | LICENSE | 14 the copyright owner that is granting the License. 17 other entities that control, are controlled by, or are under common 18 control with that entity. For the purposes of this definition, 38 copyright notice that is included in or attached to the work 42 form, that is based on (or derived from) the Work and for which the 45 of this License, Derivative Works shall not include works that remain 51 to that Work or Derivative Works thereof, that is intentionally 58 and issue tracking systems that are managed by, or on behalf of, the 60 excluding communication that is conspicuously marked or otherwise 80 by such Contributor that are necessarily infringed by their [all …]
|
| /arkcompiler/ets_runtime/ |
| D | LICENSE | 14 the copyright owner that is granting the License. 17 other entities that control, are controlled by, or are under common 18 control with that entity. For the purposes of this definition, 38 copyright notice that is included in or attached to the work 42 form, that is based on (or derived from) the Work and for which the 45 of this License, Derivative Works shall not include works that remain 51 to that Work or Derivative Works thereof, that is intentionally 58 and issue tracking systems that are managed by, or on behalf of, the 60 excluding communication that is conspicuously marked or otherwise 80 by such Contributor that are necessarily infringed by their [all …]
|
| /arkcompiler/runtime_core/static_core/compiler/docs/ |
| D | reg_alloc_graph_coloring_doc.md | 17 This paper describes register allocation algorithm that is based on ideas of Chordal-graph coloring… 18 …sed on observation that programs in a strict SSA form produce a Chordal interference graphs. Main … 19 …ementation was used alternative algorithm that is LexBFS. It uses little bit more compact data str… 20 …call-site crossing will interfere with fixed-intervals (special intervals that are placeholders of… 23 …ally for nodes is collected number or fixed-intervals intersections that tell us that this interva… 27 Here additionally to the built graph with regular edges that represent interference, it is built af… 31 …s by MCS or LexBFS (that is reverse PEO), one by one is colored by a Greedy coloring algorithm. Gr… 32 …ve situations when different cliques are colored in parallel that at the end collides, that may ca… 36 There are two classes of approaches for coalescing, that is: 37 …that happens before or after coloring respectively. Pre-coalescing is known to potentially can inc… [all …]
|
| D | inlining.md | 18 …ual instruction also contains method ID, that should be called, but it also contains input object(… 19 is instance of some class, that, in turn, determines which implementation of the method should be c… 28 Receiver is determined via ObjectTypePropagation analysis, that propagates statically known types d… 40 Class Hierarchy Analysis(CHA) is a runtime analysis that is invoked every time when a new class is … 41 the analysis is a flag in Method class, that indicates that method has a single implementation. 67 Since Panda VM allows instantiating a classes with abstract methods, we can't rely on the fact that… 71 … protect all devirtualized call sites with CHA by special guards. In short, these guards check that 74 CHA has dependency map, where key is a devirtualized method and value is a list of methods that emp… 78 But dependent methods (methods that inline devirtualized method) may already being executed and res… 81 exactly that CHA guards check. When method execution reaches this guard, it reads flag and see that… [all …]
|
| D | aot_resolve_string.md | 4 mode such runtime calls could be replaced with load from a special PLT-slot in AOT file. In that ca… 5 loads a value from a slot associated with a string and checks if that value is valid pointer. If it… 6 application have to perform `ResolveStringAot` runtime call that will return a pointer. That runtim… 20 emits load from that slot, followed by the check that the loaded value is a valid pointer and the s… 22 The slow path performs `ResolveStringAot` runtime call that returns resolved string. 36 …or it reaches `PANDA_32BITS_HEAP_START_ADDRESS - 1` (after that invocations will not increment slo… 51 PLT-slot is referencing to an object in young space. That information allow to significantly reduce…
|
| D | lse_doc.md | 4 …nstructions that store a value to memory that has been already written as well as delete load inst… 8 …duces the number of long latency memory instructions. It should be stated that the optimization in… 18 Algorithm needs to know that two memory instructions access the same memory address. This can be d… 27 …that works with memory operates with a particular memory address. E.g. store instructions write va… 31 A dependence on predecessors needs us to traverse basic blocks in reverse post order so that for ea… 36 …. The values of memory instructions that `MUST_ALIAS` this store are updated as well. All values… 38 … heap value for this load with the result of this load. All instructions that `MUST_ALIAS` this l… 39 - If the instruction can invoke GC then all references on the heap that aren't mentioned in corresp… 43 All instructions that can be eliminated are recorded in a separate list for eliminated instructions… 45 …hen we can use collected heap of loop preheader (e.g. if we can guarantee that memory access is re… [all …]
|
| /arkcompiler/runtime_core/compiler/docs/ |
| D | reg_alloc_graph_coloring_doc.md | 17 This paper describes register allocation algorithm that is based on ideas of Chordal-graph coloring… 18 …sed on observation that programs in a strict SSA form produce a Chordal interference graphs. Main … 19 …ementation was used alternative algorithm that is LexBFS. It uses little bit more compact data str… 20 …call-site crossing will interfere with fixed-intervals (special intervals that are placeholders of… 23 …ally for nodes is collected number or fixed-intervals intersections that tell us that this interva… 27 Here additionally to the built graph with regular edges that represent interference, it is built af… 31 …s by MCS or LexBFS (that is reverse PEO), one by one is colored by a Greedy coloring algorithm. Gr… 32 …ve situations when different cliques are colored in parallel that at the end collides, that may ca… 36 There are two classes of approaches for coalescing, that is: 37 …that happens before or after coloring respectively. Pre-coalescing is known to potentially can inc… [all …]
|
| D | aot_resolve_string.md | 4 mode such runtime calls could be replaced with load from a special PLT-slot in AOT file. In that ca… 5 loads a value from a slot associated with a string and checks if that value is valid pointer. If it… 6 application have to perform `ResolveStringAot` runtime call that will return a pointer. That runtim… 20 emits load from that slot, followed by the check that the loaded value is a valid pointer and the s… 22 The slow path performs `ResolveStringAot` runtime call that returns resolved string. 36 …or it reaches `PANDA_32BITS_HEAP_START_ADDRESS - 1` (after that invocations will not increment slo… 51 PLT-slot is referencing to an object in young space. That information allow to significantly reduce…
|
| /arkcompiler/runtime_core/tests/cts-generator/cts-template/ |
| D | checkcast.yaml | 58 description: Check that null object reference can be cast to any type 71 jnez.obj set_failure # check that acc == null 100 description: Check that null object reference can be cast to any type 116 jnez.obj set_failure # check that acc == null 150 description: Check that null object reference can be cast to any array type 164 jnez.obj set_failure # check that acc == null 193 description: Check that null object reference can be cast to any array type 209 jnez.obj set_failure # check that acc == null 243 description: Check that any object can be cast to the base type 257 jne.obj v1, set_failure # check that acc isn't changed [all …]
|
| /arkcompiler/runtime_core/ |
| D | LICENSE | 14 the copyright owner that is granting the License. 17 other entities that control, are controlled by, or are under common 18 control with that entity. For the purposes of this definition, 38 copyright notice that is included in or attached to the work 42 form, that is based on (or derived from) the Work and for which the 45 of this License, Derivative Works shall not include works that remain 51 to that Work or Derivative Works thereof, that is intentionally 58 and issue tracking systems that are managed by, or on behalf of, the 60 excluding communication that is conspicuously marked or otherwise 80 by such Contributor that are necessarily infringed by their [all …]
|
| /arkcompiler/ets_frontend/ets2panda/ |
| D | LICENSE.txt | 14 the copyright owner that is granting the License. 17 other entities that control, are controlled by, or are under common 18 control with that entity. For the purposes of this definition, 38 copyright notice that is included in or attached to the work 42 form, that is based on (or derived from) the Work and for which the 45 of this License, Derivative Works shall not include works that remain 51 to that Work or Derivative Works thereof, that is intentionally 58 and issue tracking systems that are managed by, or on behalf of, the 60 excluding communication that is conspicuously marked or otherwise 80 by such Contributor that are necessarily infringed by their [all …]
|
| /arkcompiler/runtime_core/static_core/tests/cts-generator/cts-template/ |
| D | checkcast.yaml | 36 description: Check that null object reference can be cast to any type 48 jnez.obj set_failure # check that acc == null 76 description: Check that null object reference can be cast to any array type 89 jnez.obj set_failure # check that acc == null 117 description: Check that any object can be cast to the base type 130 jne.obj v1, set_failure # check that acc isn't changed 159 description: Check that any object can be cast to its type 171 jne.obj v1, set_failure # check that acc hasn't been changed 201 description: Check that any array can be cast to base type 205 …to T if T is a root type in type hierarchy or T is such array that O array elements are the same o… [all …]
|
| /arkcompiler/ets_frontend/arkguard/ |
| D | LICENSE | 14 the copyright owner that is granting the License. 17 other entities that control, are controlled by, or are under common 18 control with that entity. For the purposes of this definition, 38 copyright notice that is included in or attached to the work 42 form, that is based on (or derived from) the Work and for which the 45 of this License, Derivative Works shall not include works that remain 51 to that Work or Derivative Works thereof, that is intentionally 58 and issue tracking systems that are managed by, or on behalf of, the 60 excluding communication that is conspicuously marked or otherwise 80 by such Contributor that are necessarily infringed by their [all …]
|
| /arkcompiler/ets_frontend/ |
| D | LICENSE | 14 the copyright owner that is granting the License. 17 other entities that control, are controlled by, or are under common 18 control with that entity. For the purposes of this definition, 38 copyright notice that is included in or attached to the work 42 form, that is based on (or derived from) the Work and for which the 45 of this License, Derivative Works shall not include works that remain 51 to that Work or Derivative Works thereof, that is intentionally 58 and issue tracking systems that are managed by, or on behalf of, the 60 excluding communication that is conspicuously marked or otherwise 80 by such Contributor that are necessarily infringed by their [all …]
|
| /arkcompiler/runtime_core/static_core/plugins/ets/tests/stdlib-templates/ |
| D | readme.md | 25 - common level with code that can be reused in different cases 26 …- specific level that usually is constructed from common level templates via **include** command o… 47 … level template (see example below) and `test_verifier_lib.j2` - the file that contains function f… 109 ### Main keywords that are used in the configuration YAML file 110 - object_type - type of object that contains the tested method 111 - init_object_type - type of data that will be used for object initialization 112 - init_object_data_type - type of container that contains test data, usually this is an array 113 - init_object_data - dictionary with data that used for object initialization 115 - method_return_type - type that returned by the tested method 116 - param_list - dictionary that contains test data for each parameter [all …]
|
| /arkcompiler/runtime_core/static_core/libpandabase/taskmanager/ |
| D | schedulable_task_queue_interface.h | 50 * used with tasks that have already triggered this callback. 65 * @param mode - execution mode of task that we want to pop. 71 * @param addTaskFunc - Functor that will be used to add popped tasks to worker 72 …* @param size - Count of tasks you want to pop. If it is greater then count of tasks that are stor… 74 * @return count of task that was added to worker 79 … Method pops several tasks to helper thread. Helper thread in TaskScheduler is the thread that uses 81 * @param addTaskFunc - Functor that will be used to add popped tasks to helper 82 …* @param size - Count of tasks you want to pop. If it is greater then count of tasks that are stor… 85 * @return count of task that was added to helper 92 … * @param newTaskCallback - function that get count of inputted tasks and uses in AddTask method. [all …]
|