Home
last modified time | relevance | path

Searched +full:32 +full:- +full:bit (Results 1 – 25 of 116) sorted by relevance

12345

/arkcompiler/runtime_core/compiler/docs/
Dinterface_inline_cache.md11 * There is a 90% - 95% chance that the same method will be used in real-world application test.
20 * must be 64bit system
27 Cache structure:(offset addr)/(class addr) 32bit/32bit
28 -----------------------------------------------
31 cache:offset/class ---------->| <-|
35 --> call runtime irtoc function | |
36 read cache <-----------------------| |
41 save method‘s offset to cache >------|
42 <-- return to (.text)
44 -----------------------------------------------
[all …]
/arkcompiler/runtime_core/libpandabase/utils/
Dregmask.h2 * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
44 size_t res = (1ULL << width) - 1; in MakeMaskByExcluding()
50 * Base struct for registers mask, template-parametrized by number of registers.
51 * Currently we don't support registers number greater than 32.
59 // We don't support architectures with CPU registers number, greater than 32.
67 // NOLINTNEXTLINE(google-explicit-constructor)
90 constexpr bool Test(size_t bit) const in Test() argument
92 ASSERT(bit < Size()); in Test()
93 return ((value_ >> static_cast<ValueType>(bit)) & 1U) != 0; in Test()
[all …]
Dmath_helpers.h2 * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
30 * @param X - should be power of 2
35 ASSERT((X > 0) && !(X & (X - 1U))); in GetIntLog2()
41 * @param X - of type uint64_t, should be power of 2
46 ASSERT((X > 0) && !(X & (X - 1U))); in GetIntLog2()
57 return (value & (value - 1)) == 0; in IsPowerOfTwo()
67 --value; in GetPowerOfTwoValue32()
72 constexpr uint32_t BIT = 32UL; in GetPowerOfTwoValue32() local
73 return 1UL << (BIT - Clz(static_cast<uint32_t>(value))); in GetPowerOfTwoValue32()
[all …]
/arkcompiler/ets_runtime/ecmascript/jspandafile/
Dconstpool_value.h7 * http://www.apache.org/licenses/LICENSE-2.0
64 // NOLINTNEXTLINE(readability-magic-numbers)
65 using ConstPoolIndexField = BitField<uint32_t, 0, 32>; // 32: 32 bit
66 // NOLINTNEXTLINE(readability-magic-numbers)
67 using ConstPoolTypeField = BitField<ConstPoolType, 32, 4>; // 32: offset, 4: 4bit
/arkcompiler/runtime_core/docs/
Dcode_metainfo.md5 Metainfo is an information that aims to provide reg-to-stack mapping for virtual registers. It is n…
14 +-------------+
16 | +-------------------+
20 +-------------+-------------------+
21 | | <-- Method::CompiledCodeEntrypoint
24 +-------------+-----------------+
26 | |-----------------+----------------------+
31 | | Bit Tables | Method indexes |
37 |-------------+-----------------+----------------------+
40 ## Bit table
[all …]
D2022-08-18-isa-changelog.md1 # 2022-08-18-isa-changelog
15 3. We add prefix "deprecated" and keep the many old isa as "deprecated"-prefixed opcodes (for compa…
20 8. We add 8-bit or 16-bit imm as inline cache slot for some specific opcodes.
23 As we merge some "define-function" opcodes as one opcode, in function we add one field which record…
24 such that runtime can distinguish the "define-function" operations of different kinds.
26 We reuse the field 32-bit field `access_flags_` to encode Function Kind and Header index.
27 This will not introduce compatibility issue because the later 24-bit of `access_flags_` is unused i…
30 |<- 16-bit header index ->|<- 8-bit function kind ->|<- 8-bit original access flag ->|
39 As we use 16-bit to encode methodId, stringId and literalarrayId, the number of these Ids in one me…
45 3. In bytecode, we still use 16-bit literalarrayId rather than offset.
[all …]
/arkcompiler/runtime_core/libpandabase/tests/
Dregmask_test.cpp2 * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
29 …ASSERT_EQ(mask.GetMaxRegister(), base.size() - Clz(static_cast<RegMask::ValueType>(base.to_ulong()… in CompareWithBitset()
61 void TestDistance(RegMask mask, size_t bit, size_t bits_before, size_t bits_after) in TestDistance() argument
63 ASSERT_EQ(mask.GetDistanceFromTail(bit), bits_before); in TestDistance()
64 ASSERT_EQ(mask.GetDistanceFromHead(bit), bits_after); in TestDistance()
71 TestRegMask(MakeMaskByExcluding(32, 0));
72 TestRegMask(MakeMaskByExcluding(32, 31));
73 TestRegMask(MakeMaskByExcluding(32, 0, 31));
74 TestRegMask(MakeMaskByExcluding(32, 0, 15, 31));
Dhash_test.cpp2 * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
69 std::cout << "Failed 32bit key hash on seed = 0x" << std::hex << seed_ << std::endl; in OneObject32bitsHashTest()
77 std::cout << "Failed 32bit key hash on seed = 0x" << std::hex << seed_ << std::endl; in OneObject32bitsHashTest()
86 std::cout << "Failed 32bit key hash on seed = 0x" << std::hex << seed_ << std::endl; in OneObject32bitsHashTest()
126 …reinterpret_cast<char *>((reinterpret_cast<uintptr_t>(mem) + PAGE_SIZE) - sizeof(char) * string_si… in EndOfPageStringHashTest()
131 uint32_t second_hash = T::GetHash32(mutf8_string, string_size - 1); in EndOfPageStringHashTest()
139 // Do it for 8 bits key, 32 bits and 40 bits key.
/arkcompiler/runtime_core/runtime/bridge/arch/arm/
Dcompiled_code_to_interpreter_bridge_arm.S2 * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
36 // store r0-r3 before the frame to make arg array continuos with stack args
37 push {r0-r3}
49 CFI_ADJUST_CFA_OFFSET(-4)
57 push {r4 - r10}
58 CFI_REL_OFFSET(r10, -(2 * 4))
59 CFI_REL_OFFSET(r9, -(3 * 4))
60 CFI_REL_OFFSET(r8, -(4 * 4))
61 CFI_REL_OFFSET(r7, -(5 * 4))
[all …]
Dinterpreter_to_compiled_code_bridge_arm.S2 * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
28 cmp r2, #(SHORTY_NUM_64BIT_TYPES - 1)
30 // it is a 32bit value
34 1: // it is a 64bit value
72 // r0 - SHORTY_PTR_REG
73 // r1 - SHORTY_REG
74 // r2 - shorty value (no initialization needed)
75 // r7 - method
99 cmp r2, #(SHORTY_NUM_64BIT_TYPES - 1)
[all …]
Dinterpreter_to_compiled_code_bridge_armhf.S2 * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
24 // load arguments into r0-r4 while begin_ptr != end_ptr
25 ldr r0, [\begin_ptr, #-4]!
28 ldr r1, [\begin_ptr, #-4]!
31 ldr r2, [\begin_ptr, #-4]!
34 ldr r3, [\begin_ptr, #-4]!
39 // load arguments into d0-d7 while \begin_ptr != \end_ptr
80 // it is a 32bit int or reference
85 strlt \tmp1, [\gpr_ptr, #-4]!
[all …]
Dcompiled_code_to_interpreter_bridge_armhf.S2 * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
53 push {r4 - r10}
54 CFI_REL_OFFSET(r10, -(2 * 4))
55 CFI_REL_OFFSET(r9, -(3 * 4))
56 CFI_REL_OFFSET(r8, -(4 * 4))
57 CFI_REL_OFFSET(r7, -(5 * 4))
58 CFI_REL_OFFSET(r6, -(6 * 4))
59 CFI_REL_OFFSET(r5, -(7 * 4))
60 CFI_REL_OFFSET(r4, -(8 * 4))
[all …]
/arkcompiler/ets_runtime/ecmascript/base/
Dbit_helper.h7 * http://www.apache.org/licenses/LICENSE-2.0
50 *buffer = reinterpret_cast<void *>(reinterpret_cast<uintptr_t>(*buffer) + result->Size()); in ReadBufferInSize()
68 // 32 : 32 mean the bits of type T is less than 32 in CountLeadingZeros()
69 return __builtin_clz(static_cast<uint32_t>(value)) - (32 - std::numeric_limits<T>::digits); in CountLeadingZeros()
129 /// isMask_64 - This function returns true if the argument is a non-empty
130 /// sequence of ones starting at the least significant bit with the remainder
131 /// zero (64 bit version).
137 /// isShiftedMask_64 - This function returns true if the argument contains a
138 /// non-empty sequence of ones with the remainder zero (64 bit version.)
141 return Value && IsMask_64((Value - 1) | Value); in IsShiftedMask_64()
[all …]
/arkcompiler/runtime_core/runtime/bridge/arch/x86/
Dinterpreter_to_compiled_code_bridge_x86.S2 * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
27 cmpl $(SHORTY_NUM_64BIT_TYPES - 1), %ecx
30 // it is a 32bit value
36 // it is a 64bit value
62 // %eax - SHORTY_PTR_REG
63 // %edx - SHORTY_REG
64 // %ecx - shorty value (no initialization needed)
65 // %ebx - method
95 cmpl $(SHORTY_NUM_64BIT_TYPES - 1), %ecx
[all …]
Dcompiled_code_to_interpreter_bridge_x86.S2 * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
32 // %esp % 16 == 12 here (-4 == 12 (mod 16))
65 leal -8(%ebp), %ecx // prev*
69 // %esp should be 16-byte aligned here
76 …// %eax - SHORTY_PTR_REG, %edx - SHORTY_REG, %ecx - shorty value, %edi - iframe.vregs_ + num_vregs…
77 // %esi - args, (%esp) - iframe*
116 cmpl $(SHORTY_NUM_64BIT_TYPES - 1), %ecx
119 // it is a 32bit value or reference
121 cmpl $(SHORTY_REFERENCE - SHORTY_FIRST_64), %ecx
[all …]
/arkcompiler/ets_runtime/ecmascript/mem/
Dgc_bitset.h7 * http://www.apache.org/licenses/LICENSE-2.0
24 // |----word(32 bit)----|----word(32 bit)----|----...----|----word(32 bit)----|----word(32 bit)----|
25 // |---------------------------------------GCBitset(4 kb)------------------------------------------|
39 static constexpr uint32_t BIT_PER_WORD_MASK = BIT_PER_WORD - 1;
101 uint32_t endIndex = Index(offsetEnd - 1); in ClearBitRange()
102 uint32_t endIndexMask = Mask(IndexInWord(offsetEnd - 1)); in ClearBitRange()
105 ClearWord<mode>(startIndex, ~(startIndexMask - 1)); in ClearBitRange()
106 ClearWord<mode>(endIndex, endIndexMask | (endIndexMask - 1)); in ClearBitRange()
111 ClearWord<mode>(endIndex, endIndexMask | (endIndexMask - startIndexMask)); in ClearBitRange()
163 words[i] |= bitset->Words()[i]; in Merge()
[all …]
/arkcompiler/runtime_core/tests/verifier-tests/
Dbug_2107_2.pa1 # Copyright (c) 2021-2022 Huawei Device Co., Ltd.
6 # http://www.apache.org/licenses/LICENSE-2.0
16 #---
17 #- title: Integer truncations and extensions.
19 # Truncations discard all but N lowest-order bits, where N is the bit size of destination
24 # - x_none
26 # - sig: i64toi32
27 # acc: inout:i64->i32
29 # - op_none
31 # - acc_type
[all …]
Dbug_2107_1.pa1 # Copyright (c) 2021-2022 Huawei Device Co., Ltd.
6 # http://www.apache.org/licenses/LICENSE-2.0
16 #---
17 #- title: Type conversions
22 # - x_none
24 # - sig: i64tof64
25 # acc: inout:i64->f64
27 # - op_none
29 # - acc_type
31 ## runner-option: verifier-failure
[all …]
/arkcompiler/runtime_core/tests/cts-generator/cts-template/
Di32tof32.yaml1 # Copyright (c) 2021-2022 Huawei Device Co., Ltd.
6 # http://www.apache.org/licenses/LICENSE-2.0
16 - file-name: "i32tof32"
22 - x_none
24 - file-name: "op_none"
27 - sig: i32tof32
28 acc: inout:i32->f32
31 code-template: |
40 - values:
41 - "0"
[all …]
Di64toi32.yaml1 # Copyright (c) 2021-2022 Huawei Device Co., Ltd.
6 # http://www.apache.org/licenses/LICENSE-2.0
16 - file-name: "i64toi32"
21 … Truncations discard all but N lowest-order bits, where N is the bit size of destination type.
23 - x_none
25 - file-name: "op_none"
28 - sig: i64toi32
29 acc: inout:i64->i32
32 code-template: |
46 - values:
[all …]
/arkcompiler/runtime_core/tests/checked/
Dldarray_obj.pa1 # Copyright (c) 2021-2022 Huawei Device Co., Ltd.
6 # http://www.apache.org/licenses/LICENSE-2.0
15 #! RUN force_jit: true, options: "--compiler-regex=_GLOBAL::test", entry: "_GLOBAL::main",…
28 # v1 <- array
38 # Second parameter is 32-bit, but here we call it with 64-bit
/arkcompiler/ets_runtime/ecmascript/compiler/assembler/aarch64/
Dassembler_aarch64.cpp7 * http://www.apache.org/licenses/LICENSE-2.0
31 … ((width != RegXSize) && (((imm >> width) != 0) || (imm == (~0ULL >> (RegXSize - width)))))) { in Create()
39 uint64_t mask = (1ULL << size) - 1; in Create()
50 uint64_t mask = ((uint64_t)-1LL) >> (RegXSize - size); in Create()
64 i = static_cast<uint32_t>(RegXSize) - clo; in Create()
65 cto = clo + CountTrailingOnes64(imm) - (static_cast<uint32_t>(RegXSize) - size); in Create()
72 unsigned immr = (size - i) & (size - 1); in Create()
74 // If size has a 1 in the n'th bit, create a value that has zeroes in in Create()
76 uint64_t nImms = ~(size - 1) << 1; in Create()
78 // Or the CTO value into the low bits, which must be below the Nth bit in Create()
[all …]
/arkcompiler/ets_frontend/es2panda/util/
Dbase64.cpp7 * http://www.apache.org/licenses/LICENSE-2.0
28 …for (size_t i = 0, j = 0; i < encodedRes.length() - 2; i += TRANSFORMED_CHAR_NUM, j += TO_TRANSFOR… in Base64Encode()
29 // convert three 8bit into four 6bit; then add two 0 bit in each 6 bit in Base64Encode()
41 encodedRes[encodedRes.length() - 2] = '='; in Base64Encode()
42 encodedRes[encodedRes.length() - 1] = '='; in Base64Encode()
45 encodedRes[encodedRes.length() - 1] = '='; in Base64Encode()
56 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, in Base64Decode()
57 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, in Base64Decode()
58 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, in Base64Decode()
59 -1, -1, -1, -1, -1, -1, -1, in Base64Decode()
[all …]
/arkcompiler/runtime_core/runtime/include/coretypes/
Dtagged_value.h2 * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
31 // Every double with all of its exponent bits set and its highest mantissa bit set is a quiet NaN.
33 // “QNaN Floating-Point Indefinite” value, leaving us 50 bits. Those remaining bits can be anythin…
35 // to the value will begin with a 16-bit pattern within the range 0x0001..0xFFFE.
37 // Nan-boxing pointer is used and the first four bytes are used as tag:
38 // Object: [0x0000] [48 bit direct pointer]
39 // WeakRef: [0x0000] [47 bits direct pointer] | 1 bit 1
40 // / [0x0001] [48 bit any value]
42 // \ [0xFFFE] [48 bit any value]
[all …]
/arkcompiler/ets_frontend/merge_abc/
DHowToWriteProtoForAssemblyStuff.md56 |:-----------|:---------------|:------------|
58 |float |float | 32位浮点数
59 |int32 |int32 | 32位整数
61 |uint32 |uint32 | 32位无符号整数
63 |sint32 |int32 | 32位整数,处理负数效率比int32更高
70 |string | string | 一个字符串必须是UTF-8编码或者7-bit ASCII编码的文本

12345