Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(437)

Unified Diff: runtime/vm/object.cc

Issue 11938023: Use new |= operator in object.cc . (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 7 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/object.cc
===================================================================
--- runtime/vm/object.cc (revision 17293)
+++ runtime/vm/object.cc (working copy)
@@ -1466,7 +1466,7 @@
Function& func = Function::Handle();
intptr_t len = value.Length();
for (intptr_t i = 0; i < len; i++) {
- func ^= value.At(i);
+ func |= value.At(i);
ASSERT(func.Owner() == raw());
}
#endif
@@ -1517,7 +1517,7 @@
}
closure = Function::null();
if (best_fit_index >= 0) {
- closure ^= closures.At(best_fit_index);
+ closure |= closures.At(best_fit_index);
}
return closure.raw();
}
@@ -1791,7 +1791,7 @@
Field& field = Field::Handle();
intptr_t len = value.Length();
for (intptr_t i = 0; i < len; i++) {
- field ^= value.At(i);
+ field |= value.At(i);
ASSERT(field.owner() == raw());
}
#endif
@@ -2283,6 +2283,7 @@
}
+// Returns true if 'prefix' and 'accessor_name' match 'name'.
static bool MatchesAccessorName(const String& name,
const char* prefix,
intptr_t prefix_length,
@@ -3007,7 +3008,7 @@
// Last element of the array is the number of used elements.
intptr_t table_size = table.Length() - 1;
Smi& used = Smi::Handle(isolate);
- used ^= table.At(table_size);
+ used |= table.At(table_size);
intptr_t used_elements = used.Value() + 1;
used = Smi::New(used_elements);
table.SetAt(table_size, used);
@@ -3510,7 +3511,7 @@
RawString* Function::ParameterNameAt(intptr_t index) const {
const Array& parameter_names = Array::Handle(raw_ptr()->parameter_names_);
String& parameter_name = String::Handle();
- parameter_name ^= parameter_names.At(index);
+ parameter_name |= parameter_names.At(index);
return parameter_name.raw();
}
@@ -3729,13 +3730,13 @@
String& argument_name = String::Handle();
String& parameter_name = String::Handle();
for (int i = 0; i < num_named_arguments; i++) {
- argument_name ^= argument_names.At(i);
+ argument_name |= argument_names.At(i);
ASSERT(argument_name.IsSymbol());
bool found = false;
const int num_positional_args = num_arguments - num_named_arguments;
const int num_parameters = NumParameters();
for (int j = num_positional_args; !found && (j < num_parameters); j++) {
- parameter_name ^= ParameterNameAt(j);
+ parameter_name |= ParameterNameAt(j);
ASSERT(argument_name.IsSymbol());
if (argument_name.Equals(parameter_name)) {
found = true;
@@ -4095,9 +4096,9 @@
// Set closure function's context scope.
ContextScope& context_scope = ContextScope::Handle();
if (is_static()) {
- context_scope ^= ContextScope::New(0);
+ context_scope |= ContextScope::New(0);
} else {
- context_scope ^= LocalScope::CreateImplicitClosureScope(*this);
+ context_scope |= LocalScope::CreateImplicitClosureScope(*this);
}
closure_function.set_context_scope(context_scope);
@@ -5211,7 +5212,7 @@
const Array& symbols = Array::Handle(isolate,
object_store->keyword_symbols());
ASSERT(!symbols.IsNull());
- str ^= symbols.At(kind - Token::kFirstKeyword);
+ str |= symbols.At(kind - Token::kFirstKeyword);
ASSERT(!str.IsNull());
return str.raw();
}
@@ -5594,7 +5595,7 @@
// Insert the object at the empty slot.
dict.SetAt(index, obj);
Smi& used = Smi::Handle();
- used ^= dict.At(dict_size);
+ used |= dict.At(dict_size);
intptr_t used_elements = used.Value() + 1; // One more element added.
used = Smi::New(used_elements);
dict.SetAt(dict_size, used); // Update used count.
@@ -5853,7 +5854,7 @@
}
if (!obj.IsNull()) {
if (obj.IsField()) {
- field ^= obj.raw();
+ field |= obj.raw();
return field.raw();
}
}
@@ -6007,7 +6008,7 @@
}
const Array& import_list = Array::Handle(imports());
Namespace& import = Namespace::Handle();
- import ^= import_list.At(index);
+ import |= import_list.At(index);
return import.raw();
}
@@ -6342,7 +6343,7 @@
ASSERT(IsPrivate(name));
// ASSERT(strchr(name, '@') == NULL);
String& str = String::Handle();
- str ^= name.raw();
+ str |= name.raw();
str = String::Concat(str, String::Handle(this->private_key()));
str = Symbols::New(str);
return str.raw();
@@ -6356,7 +6357,7 @@
ASSERT(!libs.IsNull());
if ((0 <= index) && (index < libs.Length())) {
Library& lib = Library::Handle();
- lib ^= libs.At(index);
+ lib |= libs.At(index);
return lib.raw();
}
return Library::null();
@@ -6433,7 +6434,7 @@
if ((index >= 0) || (index < num_imports())) {
const Array& imports = Array::Handle(this->imports());
Namespace& import = Namespace::Handle();
- import ^= imports.At(index);
+ import |= imports.At(index);
return import.library();
}
return Library::null();
@@ -6967,7 +6968,7 @@
const Array& names = Array::Handle(raw_ptr()->names_);
ASSERT(Length() == names.Length());
String& name = String::Handle();
- name ^= names.At(var_index);
+ name |= names.At(var_index);
return name.raw();
}
@@ -7300,7 +7301,7 @@
intptr_t Code::Comments::PCOffsetAt(intptr_t idx) const {
Smi& result = Smi::Handle();
- result ^= comments_.At(idx * kNumberOfEntries + kPCOffsetEntry);
+ result |= comments_.At(idx * kNumberOfEntries + kPCOffsetEntry);
return result.Value();
}
@@ -7313,7 +7314,7 @@
RawString* Code::Comments::CommentAt(intptr_t idx) const {
String& result = String::Handle();
- result ^= comments_.At(idx * kNumberOfEntries + kCommentEntry);
+ result |= comments_.At(idx * kNumberOfEntries + kCommentEntry);
return result.raw();
}
@@ -7665,7 +7666,7 @@
*maps = stackmaps();
*map = Stackmap::null();
for (intptr_t i = 0; i < maps->Length(); i++) {
- *map ^= maps->At(i);
+ *map |= maps->At(i);
ASSERT(!map->IsNull());
if (map->PC() == pc) {
return map->raw(); // We found a stack map for this frame.
@@ -7980,10 +7981,10 @@
intptr_t data_pos = index * TestEntryLength();
Smi& smi = Smi::Handle();
for (intptr_t i = 0; i < num_args_tested(); i++) {
- smi ^= data.At(data_pos++);
+ smi |= data.At(data_pos++);
class_ids->Add(smi.Value());
}
- (*target) ^= data.At(data_pos++);
+ (*target) |= data.At(data_pos++);
}
@@ -7996,9 +7997,9 @@
const Array& data = Array::Handle(ic_data());
intptr_t data_pos = index * TestEntryLength();
Smi& smi = Smi::Handle();
- smi ^= data.At(data_pos);
+ smi |= data.At(data_pos);
*class_id = smi.Value();
- *target ^= data.At(data_pos + 1);
+ *target |= data.At(data_pos + 1);
}
@@ -8015,7 +8016,7 @@
const Array& data = Array::Handle(ic_data());
const intptr_t data_pos = index * TestEntryLength();
Smi& smi = Smi::Handle();
- smi ^= data.At(data_pos);
+ smi |= data.At(data_pos);
return smi.Value();
}
@@ -8033,7 +8034,7 @@
const intptr_t data_pos = index * TestEntryLength() +
CountIndexFor(num_args_tested());
Smi& smi = Smi::Handle();
- smi ^= data.At(data_pos);
+ smi |= data.At(data_pos);
return smi.Value();
}
@@ -8265,9 +8266,9 @@
// Rehash the valid entries.
for (intptr_t i = 0; i < old_capacity; ++i) {
- class_id ^= GetClassId(old_buckets, i);
+ class_id |= GetClassId(old_buckets, i);
if (class_id.Value() != kIllegalCid) {
- target ^= GetTargetFunction(old_buckets, i);
+ target |= GetTargetFunction(old_buckets, i);
Insert(class_id, target);
}
}
@@ -8285,7 +8286,7 @@
Smi& probe = Smi::Handle();
intptr_t i = index;
do {
- probe ^= GetClassId(backing_array, i);
+ probe |= GetClassId(backing_array, i);
if (probe.Value() == kIllegalCid) {
SetEntry(backing_array, i, class_id, target);
set_filled_entry_count(filled_entry_count() + 1);
@@ -8360,12 +8361,12 @@
Array& data = Array::Handle(cache());
intptr_t data_pos = ix * kTestEntryLength;
Smi& instance_class_id_handle = Smi::Handle();
- instance_class_id_handle ^= data.At(data_pos + kInstanceClassId);
+ instance_class_id_handle |= data.At(data_pos + kInstanceClassId);
*instance_class_id = instance_class_id_handle.Value();
*instance_type_arguments ^= data.At(data_pos + kInstanceTypeArguments);
*instantiator_type_arguments ^=
data.At(data_pos + kInstantiatorTypeArguments);
- *test_result ^= data.At(data_pos + kTestResult);
+ *test_result |= data.At(data_pos + kTestResult);
}
@@ -9681,7 +9682,7 @@
if (IsSmi()) return raw();
if (IsMint()) {
Mint& mint = Mint::Handle();
- mint ^= raw();
+ mint |= raw();
if (Smi::IsValid64(mint.value())) {
return Smi::New(mint.value());
} else {
@@ -9690,7 +9691,7 @@
}
ASSERT(IsBigint());
Bigint& big_value = Bigint::Handle();
- big_value ^= raw();
+ big_value |= raw();
if (BigintOperations::FitsIntoSmi(big_value)) {
return BigintOperations::ToSmi(big_value);
} else if (BigintOperations::FitsIntoMint(big_value)) {
@@ -9711,8 +9712,8 @@
if (IsSmi() && other.IsSmi()) {
Smi& left_smi = Smi::Handle();
Smi& right_smi = Smi::Handle();
- left_smi ^= raw();
- right_smi ^= other.raw();
+ left_smi |= raw();
+ right_smi |= other.raw();
const intptr_t left_value = left_smi.Value();
const intptr_t right_value = right_smi.Value();
switch (operation) {
@@ -9809,8 +9810,8 @@
if (IsSmi() && other.IsSmi()) {
Smi& op1 = Smi::Handle();
Smi& op2 = Smi::Handle();
- op1 ^= raw();
- op2 ^= other.raw();
+ op1 |= raw();
+ op2 |= other.raw();
intptr_t result = 0;
switch (kind) {
case Token::kBIT_AND:
@@ -10004,7 +10005,7 @@
Mint& canonical_value = Mint::Handle();
intptr_t index = 0;
while (index < constants_len) {
- canonical_value ^= constants.At(index);
+ canonical_value |= constants.At(index);
if (canonical_value.IsNull()) {
break;
}
@@ -10158,7 +10159,7 @@
Double& canonical_value = Double::Handle();
intptr_t index = 0;
while (index < constants_len) {
- canonical_value ^= constants.At(index);
+ canonical_value |= constants.At(index);
if (canonical_value.IsNull()) {
break;
}
@@ -10204,16 +10205,16 @@
ASSERT(!IsNull());
if (IsSmi()) {
Smi& smi = Smi::Handle();
- smi ^= raw();
+ smi |= raw();
return BigintOperations::NewFromSmi(smi);
} else if (IsMint()) {
Mint& mint = Mint::Handle();
- mint ^= raw();
+ mint |= raw();
return BigintOperations::NewFromInt64(mint.value());
} else {
ASSERT(IsBigint());
Bigint& big = Bigint::Handle();
- big ^= raw();
+ big |= raw();
ASSERT(!BigintOperations::FitsIntoSmi(big));
return big.raw();
}
@@ -10291,7 +10292,7 @@
Bigint& canonical_value = Bigint::Handle();
intptr_t index = 0;
while (index < constants_len) {
- canonical_value ^= constants.At(index);
+ canonical_value |= constants.At(index);
if (canonical_value.IsNull()) {
break;
}
@@ -10687,10 +10688,10 @@
String& result = String::Handle();
intptr_t char_size = str.CharSize();
if (char_size == kOneByteChar) {
- result ^= OneByteString::New(len, space);
+ result |= OneByteString::New(len, space);
} else {
ASSERT(char_size == kTwoByteChar);
- result ^= TwoByteString::New(len, space);
+ result |= TwoByteString::New(len, space);
}
String::Copy(result, 0, str, 0, len);
return result.raw();
@@ -10859,7 +10860,7 @@
String& str = String::Handle();
intptr_t char_size = kOneByteChar;
for (intptr_t i = 0; i < strings_len; i++) {
- str ^= strings.At(i);
+ str |= strings.At(i);
result_len += str.Length();
char_size = Utils::Maximum(char_size, str.CharSize());
}
@@ -10907,9 +10908,9 @@
}
}
if (is_one_byte_string) {
- result ^= OneByteString::New(length, space);
+ result |= OneByteString::New(length, space);
} else {
- result ^= TwoByteString::New(length, space);
+ result |= TwoByteString::New(length, space);
}
String::Copy(result, 0, str, begin_index, length);
return result.raw();
@@ -11271,7 +11272,7 @@
intptr_t strings_len = strings.Length();
intptr_t pos = 0;
for (intptr_t i = 0; i < strings_len; i++) {
- str ^= strings.At(i);
+ str |= strings.At(i);
intptr_t str_len = str.Length();
String::Copy(result, pos, str, 0, str_len);
pos += str_len;
@@ -11440,7 +11441,7 @@
intptr_t strings_len = strings.Length();
intptr_t pos = 0;
for (intptr_t i = 0; i < strings_len; i++) {
- str ^= strings.At(i);
+ str |= strings.At(i);
intptr_t str_len = str.Length();
String::Copy(result, pos, str, 0, str_len);
pos += str_len;
@@ -12624,7 +12625,7 @@
RawJSRegExp* JSRegExp::FromDataStartAddress(void* data) {
JSRegExp& regexp = JSRegExp::Handle();
intptr_t addr = reinterpret_cast<intptr_t>(data) - sizeof(RawJSRegExp);
- regexp ^= RawObject::FromAddr(addr);
+ regexp |= RawObject::FromAddr(addr);
return regexp.raw();
}
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698