| /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 95 A classical illustration is the notion of a list that represents the 132 The overall design keeps the |LANG|’ syntax style similar to that of those 146 that the language provides no access to low-level machine representations. 148 means that dynamically created objects are deallocated automatically soon 153 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/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/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/libpandabase/taskmanager/task_statistics/ |
| D | task_statistics.h | 31 /// Status of tasks that were added in TaskQueue 34 /// Status of tasks that were executed on WorkerThread 37 …/// Status of tasks that were popped from TaskQueue by calling method TaskScheduler::GetTaskFromQu… 44 * TaskStatistics is a structure that counts the number of tasks that have received a certain 45 * status. All statuses that are taken into account are listed in the TaskStatus enum. 71 …* @brief Method returns count of tasks that are in system. Task in system means that task was adde… 78 …* @brief Method returns count of tasks that are in system for specified TaskProperties. Task in sy… 79 * that task was added but wasn't executed or popped. 87 * if there is a guarantee that other threads do not change states of all counters 93 … * there is a guarantee that other threads do not change state of counters that you want to reset.
|
| /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/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/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/plugins/ets/stdlib/std/core/ |
| D | StdExceptions.ets | 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 provided collection index is out of bounds 88 …* Represents exception that is thrown when a method has been invoked at an illegal or inappropriat… 105 * Represents exception that is thrown when provided array index is out of bounds 122 * Represents exception that is thrown when provided string index is out of bounds 139 …* Represents exception that is thrown when illegal arithmetic operation is occured (e.g. division … 156 * Represents exception that is thrown in case of illegal class casting 174 * Represents exception that is thrown when class is not found ? [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/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 | 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/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/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/ |
| 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/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/ |
| 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/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/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/plugins/ets/doc/cookbook/ |
| D | summary.rst | 18 This chapter provides an informal summary of |TS| features that |LANG| either 37 One of the most important features of |LANG| that helps achieving both goals 40 structures are used in the code. That all types are known before the program 79 Our research and experiments let us conclude that ``any`` is already not welcome 82 of rules that prohibit the usage of ``any``. 102 It is noteworthy that many such operations are already prohibited by the |TS| 103 compiler. However, it still can be "tricked", e.g., by ``as any`` casts that 122 from the object. It is guaranteed that 137 /* It is guaranteed that all Point objects 147 /* It is guaranteed that all Point objects [all …]
|
| /arkcompiler/runtime_core/static_core/plugins/ets/stdlib/escompat/ |
| D | Errors.ets | 19 * @class Represents an error that occurs when assertion fails. 46 * @class Represents an error that occurs when division by zero is performed. 66 * @class Represents an error that occurs when null pointer is dereferenced. 86 * @class Represents an error that occurs when exception is thrown and not catched 106 * @class Represents an error that occurs when provided collection index is out of range 126 * @class Represents an error that occurs when memory allocation fails 146 * @class Represents an error that occurs when no such method is found in the class 166 …* @class Represents an error that occurs when the available memory is not sufficient to create the… 180 …* @class Represents an error that occurs when attempting to instantiate abstract class or an inter… 200 * @class Represents an error that occurs when an internal error occured [all …]
|