• mbrandy's avatar
    [test] Protect against infinite loops in LiveRange logic. · 4ddc9f1c
    mbrandy authored
    A subset of the LiveRangeUnitTests (SplitInvalidPreStart,
    InvalidSplitEnd, SplitInvalidPostEnd) fail or hang on AIX in release
    mode.
    
    These tests fork a child which is expected to crash in
    register-allocator code after feeding in bad inputs.
    
    In debug mode, they behave as expected due to hitting a debug assert.
    
    In release mode, however, the tests rely only on the fact that
    dereferencing a null pointer will cause a SEGFAULT.  This is true on
    most platforms, but not AIX.  An AIX process has valid low memory
    pages mapped for reading and will not fault.  Thus, these tests fail
    or hang because the child process survives the load from address zero
    and either completes (with undefined results) or goes into an infinite
    loop.
    
    R=bmeurer@chromium.org, danno@chromium.org, michael_dawson@ca.ibm.com
    BUG=
    
    Review URL: https://codereview.chromium.org/1384733002
    
    Cr-Commit-Position: refs/heads/master@{#31090}
    4ddc9f1c
Name
Last commit
Last update
..
base Loading commit data...
compiler Loading commit data...
heap Loading commit data...
interpreter Loading commit data...
libplatform Loading commit data...
runtime Loading commit data...
DEPS Loading commit data...
atomic-utils-unittest.cc Loading commit data...
char-predicates-unittest.cc Loading commit data...
counters-unittest.cc Loading commit data...
run-all-unittests.cc Loading commit data...
test-utils.cc Loading commit data...
test-utils.h Loading commit data...
unittests.gyp Loading commit data...
unittests.status Loading commit data...