• Tobias Tebbi's avatar
    Reland^4 "[flags] warn about contradictory flags" · 2000aea5
    Tobias Tebbi authored
    This is a reland of 0ba115e6
    Changes compared to last reland:
    - Fix Python code trying to write to expected_outcomes, which is now a
      computed property.
    - Fix remaining place in d8.cc that ignored the --fuzzing flag.
    - Expect flag contradictions for --cache in code_serializer variant.
    
    Original change's description:
    > Reland^3 "[flags] warn about contradictory flags"
    >
    > Changes:
    > - Also allow second parameter influenced by --cache to be reassigned.
    > - Fix --stress-opt to only --always-opt in the last iteration as before.
    >
    > Original change's description:
    > > Reland^2 "[flags] warn about contradictory flags"
    > >
    > > This is a reland of d8f8a7e2
    > > Change compared to last reland:
    > > - Do not check for d8 flag contradictions in the presence of --fuzzing
    > > - Allow identical re-declaration of --cache=*
    > >
    > > Original change's description:
    > > > Reland "[flags] warn about contradictory flags"
    > > >
    > > > This is a reland of b8f91666
    > > > Difference to previous CL: Additional functionality to specify
    > > > incompatible flags based on GN variables and extra-flags, used
    > > > to fix the issues that came up on the waterfall.
    > > >
    > > > This also changes the rules regarding repeated flags: While
    > > > explicitly repeated flags are allowed for boolean values as long
    > > > as they are identical, repeated flags or explicit flags in the
    > > > presence of an active implication are disallowed for non-boolean
    > > > flags. The latter simplifies specifying conflict rules in
    > > > variants.py. Otherwise a rule like
    > > >
    > > > INCOMPATIBLE_FLAGS_PER_EXTRA_FLAG = {
    > > >   "--gc-interval=*": ["--gc-interval=*"],
    > > > }
    > > >
    > > > wouldn't work because specifying the same GC interval twice
    > > > wouldn't actually count as a conflict. This was an issue with
    > > > test/mjsunit/wasm/gc-buffer.js, which specifies
    > > > --gc-interval=500 exactly like the extra flag by the stress bot.
    > > >
    > > > Also, this now expands contradictory flags checking to d8 flags
    > > > for consistency.
    > > >
    > > > Original change's description:
    > > > > [flags] warn about contradictory flags
    > > > >
    > > > > Design Doc: https://docs.google.com/document/d/1lkvu8crkK7Ei39qjkPCFijpNyxWXsOktG9GB-7K34jM/
    > > > >
    > > > > Bug: v8:10577
    > > > > Change-Id: Ib9cfdffa401c48c895bf31caed5ee03545beddab
    > > > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2154792
    > > > > Reviewed-by: Clemens Backes <clemensb@chromium.org>
    > > > > Reviewed-by: Michael Achenbach <machenbach@chromium.org>
    > > > > Reviewed-by: Georg Neis <neis@chromium.org>
    > > > > Reviewed-by: Tamer Tas <tmrts@chromium.org>
    > > > > Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
    > > > > Cr-Commit-Position: refs/heads/master@{#68168}
    > > >
    > > > Bug: v8:10577
    > > > Change-Id: I268e590ee18a535b13dee14eeb15ddd0a9ee8341
    > > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2235115
    > > > Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
    > > > Reviewed-by: Tamer Tas <tmrts@chromium.org>
    > > > Reviewed-by: Clemens Backes <clemensb@chromium.org>
    > > > Reviewed-by: Georg Neis <neis@chromium.org>
    > > > Cr-Commit-Position: refs/heads/master@{#68989}
    > >
    > > Bug: v8:10577
    > > Change-Id: I31d2794d4f9ff630f3444210100c64d67d881276
    > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2339464
    > > Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
    > > Reviewed-by: Clemens Backes <clemensb@chromium.org>
    > > Cr-Commit-Position: refs/heads/master@{#69339}
    >
    > Bug: v8:10577
    > Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel_ng
    > Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_isolates_rel_ng
    > Change-Id: I4a69dc57a102782cb453144323e3752ac8278624
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2352770
    > Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
    > Reviewed-by: Tobias Tebbi <tebbi@chromium.org>
    > Reviewed-by: Clemens Backes <clemensb@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#69433}
    
    Change-Id: Ib6d2aeb495210f581ac671221c265df58e8e5e70
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2398640
    Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
    Reviewed-by: 's avatarClemens Backes <clemensb@chromium.org>
    Reviewed-by: 's avatarTamer Tas <tmrts@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#69954}
    2000aea5
Name
Last commit
Last update
..
fail Loading commit data...
mjsunit Loading commit data...
regress/fail Loading commit data...
BUILD.gn Loading commit data...
README.md Loading commit data...
asm-assignment-undeclared.js Loading commit data...
asm-assignment-undeclared.out Loading commit data...
asm-function-mismatch-def.js Loading commit data...
asm-function-mismatch-def.out Loading commit data...
asm-function-mismatch-use.js Loading commit data...
asm-function-mismatch-use.out Loading commit data...
asm-function-redefined.js Loading commit data...
asm-function-redefined.out Loading commit data...
asm-function-undefined.js Loading commit data...
asm-function-undefined.out Loading commit data...
asm-function-variable-collision.js Loading commit data...
asm-function-variable-collision.out Loading commit data...
asm-import-wrong-annotation.js Loading commit data...
asm-import-wrong-annotation.out Loading commit data...
asm-import-wrong-object.js Loading commit data...
asm-import-wrong-object.out Loading commit data...
asm-linking-bogus-heap.js Loading commit data...
asm-linking-bogus-heap.out Loading commit data...
asm-linking-bogus-stdlib.js Loading commit data...
asm-linking-bogus-stdlib.out Loading commit data...
asm-linking-missing-heap.js Loading commit data...
asm-linking-missing-heap.out Loading commit data...
asm-missing-parameter-annotation.js Loading commit data...
asm-missing-parameter-annotation.out Loading commit data...
asm-missing-return-annotation.js Loading commit data...
asm-missing-return-annotation.out Loading commit data...
asm-table-mismatch-def.js Loading commit data...
asm-table-mismatch-def.out Loading commit data...
asm-table-mismatch-use.js Loading commit data...
asm-table-mismatch-use.out Loading commit data...
asm-table-redefined.js Loading commit data...
asm-table-redefined.out Loading commit data...
asm-table-undefined.js Loading commit data...
asm-table-undefined.out Loading commit data...
asm-table-variable-collision.js Loading commit data...
asm-table-variable-collision.out Loading commit data...
empty.js Loading commit data...
empty.out Loading commit data...
message.status Loading commit data...
non-use-strict-hex-escape.js Loading commit data...
non-use-strict-hex-escape.out Loading commit data...
non-use-strict-octal-escape.js Loading commit data...
non-use-strict-octal-escape.out Loading commit data...
non-use-strict-uhex-escape.js Loading commit data...
non-use-strict-uhex-escape.out Loading commit data...
nonstrict-arguments.js Loading commit data...
nonstrict-arguments.out Loading commit data...
nonstrict-eval.js Loading commit data...
nonstrict-eval.out Loading commit data...
nonstrict-with.js Loading commit data...
nonstrict-with.out Loading commit data...
object-binding-pattern-await-computed-name.js Loading commit data...
object-binding-pattern-await-computed-name.out Loading commit data...
strict-octal-indirect-regexp.js Loading commit data...
strict-octal-indirect-regexp.out Loading commit data...
strict-octal-regexp.js Loading commit data...
strict-octal-regexp.out Loading commit data...
testcfg.py Loading commit data...
try-catch-finally-no-message.js Loading commit data...
try-catch-finally-no-message.out Loading commit data...
try-catch-finally-return-in-finally.js Loading commit data...
try-catch-finally-return-in-finally.out Loading commit data...
try-finally-return-in-finally.js Loading commit data...
try-finally-return-in-finally.out Loading commit data...
wasm-finish-compilation.js Loading commit data...
wasm-finish-compilation.out Loading commit data...
wasm-function-name-async.js Loading commit data...
wasm-function-name-async.out Loading commit data...
wasm-function-name-streaming.js Loading commit data...
wasm-function-name-streaming.out Loading commit data...
wasm-module-and-function-name-async.js Loading commit data...
wasm-module-and-function-name-async.out Loading commit data...
wasm-module-and-function-name-streaming.js Loading commit data...
wasm-module-and-function-name-streaming.out Loading commit data...
wasm-module-name-async.js Loading commit data...
wasm-module-name-async.out Loading commit data...
wasm-module-name-streaming.js Loading commit data...
wasm-module-name-streaming.out Loading commit data...
wasm-no-name-async.js Loading commit data...
wasm-no-name-async.out Loading commit data...
wasm-no-name-streaming.js Loading commit data...
wasm-no-name-streaming.out Loading commit data...
wasm-trace-liftoff.js Loading commit data...
wasm-trace-liftoff.out Loading commit data...
wasm-trace-memory-liftoff.js Loading commit data...
wasm-trace-memory-liftoff.out Loading commit data...
wasm-trace-memory.js Loading commit data...
wasm-trace-memory.out Loading commit data...
wasm-trace-turbofan.js Loading commit data...
wasm-trace-turbofan.out Loading commit data...
weakref-finalizationregistry-error.js Loading commit data...
weakref-finalizationregistry-error.out Loading commit data...