[Compiler] Fix flaky tsan error for bytecode flushing.
The SFI's flags can be changed by the mutator while the concurrent marker is checking the flags for bytecode flushing. None of the flag bits checked for bytecode flushing are changed, however since they are in an int32 field TSAN will complain if any of the other flags are changed while reading from another flag. Fix this by making the flags use the RELAXED_INT32_ACCESSORS. BUG=v8:8592,v8:8395 Change-Id: I5fbb4fd381c2b288abf0cd36eb0b8256e1929af6 Reviewed-on: https://chromium-review.googlesource.com/c/1382458 Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#58325}
This commit is contained in:
parent
5308f83d6b
commit
1a5d6a5384
@ -106,7 +106,7 @@ UINT8_ACCESSORS(SharedFunctionInfo, expected_nof_properties,
|
||||
UINT8_ACCESSORS(SharedFunctionInfo, raw_builtin_function_id, kBuiltinFunctionId)
|
||||
UINT16_ACCESSORS(SharedFunctionInfo, raw_function_token_offset,
|
||||
kFunctionTokenOffsetOffset)
|
||||
INT_ACCESSORS(SharedFunctionInfo, flags, kFlagsOffset)
|
||||
RELAXED_INT32_ACCESSORS(SharedFunctionInfo, flags, kFlagsOffset)
|
||||
|
||||
bool SharedFunctionInfo::HasSharedName() const {
|
||||
Object* value = name_or_scope_info();
|
||||
|
@ -420,7 +420,7 @@ class SharedFunctionInfo : public HeapObjectPtr {
|
||||
inline bool HasSharedName() const;
|
||||
|
||||
// [flags] Bit field containing various flags about the function.
|
||||
DECL_INT_ACCESSORS(flags)
|
||||
DECL_INT32_ACCESSORS(flags)
|
||||
|
||||
// Is this function a named function expression in the source code.
|
||||
DECL_BOOLEAN_ACCESSORS(is_named_expression)
|
||||
|
@ -32,9 +32,6 @@
|
||||
|
||||
# forcing weak callback in asan build change break order
|
||||
'debug/debug-stepin-builtin-callback': [['asan == True or msan == True', SKIP]],
|
||||
|
||||
# BUG(v8:8592)
|
||||
'debug/lazy-deopt-then-flush-bytecode': [SKIP],
|
||||
}], # ALWAYS
|
||||
|
||||
##############################################################################
|
||||
|
Loading…
Reference in New Issue
Block a user