| /ark/runtime_core/verification/util/tests/ |
| D | bit_vector_test.cpp | 37 BitVector Bits; member 52 os << ".Bits = {"; in showValue() 53 for (size_t idx = 0; idx < bitset.Bits.size(); ++idx) { in showValue() 54 os << (static_cast<int>(bitset.Bits[idx]) ? '1' : '0'); in showValue() 79 BitVector bits {size}; in arbitrary() local 81 bits[idx] = 1; in arbitrary() 83 return BSet {set, bits}; in arbitrary() 121 ClassifySize("Bits.size() in", bitset.Bits.size(), stat_intervals); in stat() 138 RC_ASSERT(bit_set.Bits.SetBitsCount() == bit_set.Indices.size()); in __anon823681b80302() 142 auto bits = bit_set.Bits; in __anon823681b80402() local [all …]
|
| /ark/js_runtime/ecmascript/compiler/ |
| D | interpreter_stub-inl.h | 109 /* 2 : skip 8 bits of opcode and 8 bits of low bits */ in ReadInstSigned16_0() 113 GateRef currentInst2 = Int32LSL(currentInst1, GetInt32Constant(8)); // 8 : set as high 8 bits in ReadInstSigned16_0() 119 /* 4 : skip 8 bits of opcode and 24 bits of low bits */ in ReadInstSigned32_0() 132 /* 2 : skip 8 bits of opcode and 8 bits of low bits */ in ReadInst16_0() 134 GateRef currentInst2 = Int16LSL(currentInst1, GetInt16Constant(8)); // 8 : set as high 8 bits in ReadInst16_0() 140 /* 3 : skip 8 bits of opcode, 8 bits of prefix and 8 bits of low bits */ in ReadInst16_1() 142 GateRef currentInst2 = Int16LSL(currentInst1, GetInt16Constant(8)); // 8 : set as high 8 bits in ReadInst16_1() 143 /* 2: skip 8 bits of opcode and 8 bits of prefix */ in ReadInst16_1() 149 /* 4 : skip 8 bits of opcode, first parameter of 16 bits and 8 bits of low bits */ in ReadInst16_2() 151 GateRef currentInst2 = Int16LSL(currentInst1, GetInt16Constant(8)); // 8 : set as high 8 bits in ReadInst16_2() [all …]
|
| /ark/runtime_core/libpandabase/utils/ |
| D | hash_base.h | 31 * \brief Create 32 bits Hash from \param key via \param seed. 35 * @return 32 bits hash 43 * \brief Create 32 bits Hash from \param key. 46 * @return 32 bits hash 54 * \brief Create 32 bits Hash from MUTF8 \param string. 56 * @return 32 bits hash 64 * \brief Create 32 bits Hash from MUTF8 \param string. 67 * @return 32 bits hash
|
| D | hash.h | 36 * \brief Create 32 bits Hash from \param key via \param seed. 40 * @return 32 bits Hash 48 * \brief Create 32 bits Hash from \param key. 51 * @return 32 bits Hash 59 * \brief Create 32 bits Hash from MUTF8 \param string. 61 * @return 32 bits Hash 69 * \brief Create 32 bits Hash from MUTF8 \param string. 72 * @return 32 bits Hash
|
| D | bit_vector.h | 265 * - set/clear bits with automatic resizing (SetBit/ClearBit) 293 BitVectorBase(void *data, size_t bits) in BitVectorBase() argument 294 : size_(bits), in BitVectorBase() 295 …storage_(reinterpret_cast<WordType *>(data), GetWordIndex(bits) + (((bits % WORD_BITS) != 0) ? 1 :… in BitVectorBase() 381 void resize(size_t bits) in resize() argument 385 if (bits > initial_size) { in resize() 386 EnsureSpace(bits); in resize() 387 std::fill(begin() + initial_size, begin() + bits, false); in resize() 389 size_ = bits; in resize() 574 void EnsureSpace(size_t bits) in EnsureSpace() argument [all …]
|
| D | murmur3_hash.h | 33 // Firstly, we proceed each 32 bits block from key; 34 // Secondly, we proceed last 8 bits block which were not covered in previous step. 96 // Iterate for each 32bits in MurmurHash3() 117 // blocks is a pointer to the end of 32bits section in MurmurHash3() 147 // Iterate for each 32bits in MurmurHash3String()
|
| /ark/runtime_core/runtime/ |
| D | object_header_config.h | 45 // Config for High-end devices with hash stored inside object header and 32 bits pointer 50 static constexpr Size BITS = 32U; variable 55 // Config for High-end devices with hash stored inside object header and 64 bits pointer 60 static constexpr Size BITS = 64UL; variable 65 // Config for Low-end devices with hash stored inside object header and 32 bits pointer 70 static constexpr Size BITS = 16U; variable
|
| D | mark_word.h | 17 // 64 bits object header for high-end devices: (64 bits pointer) 19 // | Object Header (128 bits) | … 21 // | Mark Word (64 bits) | Class Word (64 bits) | … 34 // 64 bits object header for high-end devices: (32 bits pointer) 36 // | Object Header (64 bits) | … 38 // | Mark Word (32 bits) | Class Word (32 bits) | … 53 // | Object Header (64 bits) | … 55 // | Mark Word (32 bits) | Class Word (32 bits) | … 66 // 32 bits object header for low-end devices: 68 // | Object Header (32 bits) | … [all …]
|
| /ark/runtime_core/runtime/include/coretypes/ |
| D | tagged_value.h | 27 // Every double with all of its exponent bits set and its highest mantissa bit set is a quiet NaN. 28 // That leaves 51 bits unaccounted for. We’ll avoid one of those so that we don’t step on Intel’s 29 // “QNaN Floating-Point Indefinite” value, leaving us 50 bits. Those remaining bits can be anythin… 30 // so we use a special quietNaN as TaggedInt tag(highest 16bits as 0xFFFF), and need to encode dou… 35 // WeakRef: [0x0000] [47 bits direct pointer] | 1 bit 1 42 // False: [56 bits 0] | 0x06 // 0110 43 // True: [56 bits 0] | 0x07 // 0111 44 // Undefined: [56 bits 0] | 0x0a // 1010 45 // Null: [56 bits 0] | 0x02 // 0010 46 // Hole: [56 bits 0] | 0x00 // 0000 [all …]
|
| /ark/js_runtime/ecmascript/builtins/ |
| D | builtins_bigint.cpp | 50 JSHandle<JSTaggedValue> bits = GetCallArg(argv, 0); in AsUintN() local 52 // 1. Let bits be ? ToIndex(bits). in AsUintN() 53 JSTaggedNumber index = JSTaggedValue::ToIndex(thread, bits); in AsUintN() 58 // 3. Return a BigInt representing bigint modulo 2bits. in AsUintN() 68 JSHandle<JSTaggedValue> bits = GetCallArg(argv, 0); in AsIntN() local 70 // 1. Let bits be ? ToIndex(bits). in AsIntN() 71 JSTaggedNumber index = JSTaggedValue::ToIndex(thread, bits); in AsIntN() 76 // 3. Let mod be ℝ(bigint) modulo 2bits. in AsIntN() 77 // 4. If mod ≥ 2bits - 1, return ℤ(mod - 2bits); otherwise, return ℤ(mod). in AsIntN()
|
| /ark/runtime_core/verification/util/ |
| D | bit_vector.h | 71 class Bits : public ConstBits<GetFunc> { 73 … Bits(GetFunc &&get, SetFunc &&set) : ConstBits<GetFunc>(std::move(get)), SetF_ {std::move(set)} {} in Bits() function 74 ~Bits() = default; 75 Bits() = delete; 76 Bits(const Bits &) = delete; 77 Bits(Bits &&) = default; 78 Bits &operator=(const Bits &rhs) 83 Bits &operator=(Bits &&) = default; 85 Bits &operator=(Word val) 198 auto bits(size_t from, size_t to) const in bits() function [all …]
|
| /ark/js_runtime/ecmascript/ |
| D | js_hclass.h | 286 uint32_t bits = GetBitField(); in GetObjectType() local 287 return ObjectTypeBits::Decode(bits); in GetObjectType() 292 uint32_t bits = GetBitField(); in SetObjectType() local 293 uint32_t newVal = ObjectTypeBits::Update(bits, type); in SetObjectType() 745 uint32_t bits = GetBitField(); in IsCallable() local 746 return CallableBit::Decode(bits); in IsCallable() 751 uint32_t bits = GetBitField(); in IsConstructor() local 752 return ConstrutorBit::Decode(bits); in IsConstructor() 757 uint32_t bits = GetBitField(); in IsBuiltinsCtor() local 758 return BuiltinsCtorBit::Decode(bits); in IsBuiltinsCtor() [all …]
|
| D | property_attributes.h | 63 …using PropertyMetaDataField = BitField<int, 0, 4>; // 4: property metaData field occupies 4 bits 64 using AttributesField = BitField<int, 0, 4>; // 4: attributes field occupies 4 bits 65 …using DefaultAttributesField = BitField<int, 0, 3>; // 3: default attributes field occupies 3 bits 66 using WritableField = BitField<bool, 0, 1>; // 1: writable field occupies 1 bits 73 …ing RepresentationField = IsInlinedPropsField::NextField<Representation, 3>; // 3: 3 bits, 6-8 81 …BoxTypeField = PropertyMetaDataField::NextField<PropertyBoxType, 2>; // 2: 2 bits, 5-6
|
| D | js_bigint.cpp | 516 uint64_t bits = 0; in NumberToBigInt() local 517 if (memcpy_s(&bits, sizeof(bits), &num, sizeof(num)) != EOK) { in NumberToBigInt() 521 // Take out bits 62-52 (11 bits in total) and subtract 1023 in NumberToBigInt() 522 uint64_t integerDigits = ((bits >> 52) & 0x7FF) - 0x3FF; // 52 : mantissa size in NumberToBigInt() 527 uint64_t mantissa = (bits & 0x000FFFFFFFFFFFFF) | 0x0010000000000000; in NumberToBigInt() 538 mantissa = mantissa << (64 - leftover); // 64 : double bits size in NumberToBigInt() 1172 JSTaggedValue BigInt::AsUintN(JSThread *thread, JSTaggedNumber &bits, JSHandle<BigInt> bigint) in AsUintN() argument 1174 uint32_t bit = bits.ToUint32(); in AsUintN() 1187 JSTaggedValue BigInt::AsintN(JSThread *thread, JSTaggedNumber &bits, JSHandle<BigInt> bigint) in AsintN() argument 1189 uint32_t bit = bits.ToUint32(); in AsintN() [all …]
|
| D | ecma_macros.h | 142 return name##Bits::Decode(Get##bitFieldName()); \ 146 Set##bitFieldName(name##Bits::Update(Get##bitFieldName(), t)); \ 150 #define FIRST_BIT_FIELD(bitFieldName, name, type, bits) \ argument 151 using name##Bits = BitField<type, 0, bits>; \ 155 #define NEXT_BIT_FIELD(bitFieldName, name, type, bits, lastName) \ argument 156 using name##Bits = lastName##Bits::NextField<type, bits>; \
|
| /ark/runtime_core/docs/ |
| D | rationale-for-bytecode.md | 141 To address virtual registers 4 and 5, we need only 3 bits. The instruction can be encoded as follow… 144 |<- 8 bits ->|<- 4 bits ->|<- 4 bits ->| 150 into 4 bits, we have to use a wider encoding: 153 |<- 8 bits ->|<- 8 bits ->|<- 8 bits ->|
|
| D | memory-management.md | 69 | Object Header (128 bits) | Sta… 71 | Mark Word (64 bits) | Class Word (64 bits) | … 87 | Object Header (64 bits) | Sta… 89 | Mark Word (32 bits) | Class Word (32 bits) | … 106 | Object Header (64 bits) | Sta… 108 | Mark Word (32 bits) | Class Word (32 bits) | … 126 | Object Header (32 bits) | Sta… 128 | Mark Word (16 bits) | Class Word (16 bits) | … 159 | Object Header (64 bits) | 161 | Length (32 bits) | [all …]
|
| /ark/runtime_core/libpandabase/tests/ |
| D | hash_test.cpp | 81 // Set 64 bits value and use only 40 bits from it in OneObject32bitsHashTest() 138 // Do it for 8 bits, 32 bits and 40 bits key.
|
| /ark/runtime_core/runtime/mem/gc/ |
| D | bitmap.h | 118 * \brief Iterate over marked bits of bitmap sequentially. 130 * \brief Iterate over all bits of bitmap sequentially. 141 * \brief Iterate over marked bits in range [begin, end) sequentially. 156 // first word, clear bits before begin in IterateOverSetBitsInRange() 166 // last partial word, clear bits after right boundary in IterateOverSetBitsInRange() 170 // loop over bits of bitmap_word in IterateOverSetBitsInRange() 191 * \brief Iterate over all bits in range [begin, end) sequentially. 207 * \brief Clear all bits in range [begin, end). 214 * \brief Set all bits in range [begin, end). [begin, end) must be within a BitmapWord. 226 * \brief Clear all bits in range [begin, end). [begin, end) must be within a BitmapWord. [all …]
|
| /ark/js_runtime/ecmascript/base/ |
| D | number_helper.cpp | 638 int32_t NumberHelper::DoubleToInt(double d, size_t bits) in DoubleToInt() argument 643 if (exp < static_cast<int>(bits - 1)) { in DoubleToInt() 644 // smaller than INT<bits>_MAX, fast conversion in DoubleToInt() 646 } else if (exp < static_cast<int>(bits + DOUBLE_SIGNIFICAND_SIZE)) { in DoubleToInt() 647 // Still has significand bits after mod 2^<bits> in DoubleToInt() 648 // Get low <bits> bits by shift left <64 - bits> and shift right <64 - bits> in DoubleToInt() 650 << (exp - DOUBLE_SIGNIFICAND_SIZE + INT64_BITS - bits)) >> in DoubleToInt() 651 (INT64_BITS - bits); in DoubleToInt() 657 // No significand bits after mod 2^<bits>, contains NaN and INF in DoubleToInt()
|
| /ark/runtime_core/runtime/arch/x86/ |
| D | shorty.S | 33 orl $0xFFFFF000, \shorty_reg // fill the high 20 bits by 0xFFFFF 43 orl $0xFFFFF000, \shorty_reg // fill the high 20 bits by 0xFFFFF
|
| /ark/runtime_core/runtime/arch/arm/ |
| D | shorty.S | 32 orr \shorty_reg, \shorty_reg, #0xF0000000 // fill the high 20 bits by 0xFFFFF 40 orr \shorty_reg, \shorty_reg, #0xF0000000 // fill the high 20 bits by 0xFFFFF
|
| /ark/runtime_core/runtime/arch/aarch64/ |
| D | shorty.S | 32 orr \shorty_reg, \shorty_reg, #0xFFFFF000 // fill the high 20 bits by 0xFFFFF 41 orr \shorty_reg, \shorty_reg, #0xFFFFF000 // fill the high 20 bits by 0xFFFFF
|
| /ark/runtime_core/runtime/arch/amd64/ |
| D | shorty.S | 33 orl $0xFFFFF000, \shorty_reg // fill the high 20 bits by 0xFFFFF 43 orl $0xFFFFF000, \shorty_reg // fill the high 20 bits by 0xFFFFF
|
| /ark/runtime_core/tests/benchmarks/ |
| D | CMakeLists.txt | 80 panda_add_benchmark("bitops-3bit-bits-in-byte" "Bitops3BitBitsInByte" 0 TRUE def… 81 panda_add_benchmark("bitops-bits-in-byte" "BitopsBitsInByte" 0 TRUE def… 83 panda_add_benchmark("bitops-nsieve-bits" "BitopsNSieveBits" 0 TRUE def…
|