Backed out changeset 21db86504db5 (bug 1449518) for xpcshell failures on toolkit/crashreporter/test/unit/test_crash_win64cfi_invalid_exception_rva.js
authorCosmin Sabou <csabou@mozilla.com>
Wed, 28 Mar 2018 19:23:51 +0300
changeset 410496 10f662b4d0b30f53d12618f4c82a07127ec83e89
parent 410495 c0537ee24668d06c56c6df5e2dbf3766ff744acf
child 410497 de19108477c77bbc07575825ecdf8fbe4609fce3
push id101504
push userrgurzau@mozilla.com
push dateWed, 28 Mar 2018 22:01:17 +0000
treeherdermozilla-inbound@e51ae123ece9 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
bugs1449518
milestone61.0a1
backs out21db86504db5454c5c3f7052c651ca3c565076c2
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Backed out changeset 21db86504db5 (bug 1449518) for xpcshell failures on toolkit/crashreporter/test/unit/test_crash_win64cfi_invalid_exception_rva.js
toolkit/crashreporter/test/unit/xpcshell.ini
toolkit/crashreporter/test/win64UnwindInfoTests.asm
--- a/toolkit/crashreporter/test/unit/xpcshell.ini
+++ b/toolkit/crashreporter/test/unit/xpcshell.ini
@@ -44,16 +44,17 @@ skip-if = os != 'win' || bits != 64
 
 [test_crash_win64cfi_push_nonvol.js]
 head = head_crashreporter.js head_win64cfi.js
 skip-if = os != 'win' || bits != 64
 
 [test_crash_win64cfi_alloc_small.js]
 head = head_crashreporter.js head_win64cfi.js
 skip-if = os != 'win' || bits != 64
+fail-if = os == 'win' && ccov
 
 [test_crash_win64cfi_alloc_large.js]
 head = head_crashreporter.js head_win64cfi.js
 skip-if = os != 'win' || bits != 64
 
 [test_crash_win64cfi_save_nonvol.js]
 head = head_crashreporter.js head_win64cfi.js
 skip-if = os != 'win' || bits != 64
@@ -72,30 +73,34 @@ skip-if = os != 'win' || bits != 64
 
 [test_crash_win64cfi_epilog.js]
 head = head_crashreporter.js head_win64cfi.js
 skip-if = os != 'win' || bits != 64
 
 [test_crash_win64cfi_infinite_entry_chain.js]
 head = head_crashreporter.js head_win64cfi.js
 skip-if = os != 'win' || bits != 64
+fail-if = os == 'win' && ccov
 support-files = test_crash_win64cfi_infinite_entry_chain.exe
 
 [test_crash_win64cfi_infinite_code_chain.js]
 head = head_crashreporter.js head_win64cfi.js
 skip-if = os != 'win' || bits != 64
+fail-if = os == 'win' && ccov
 support-files = test_crash_win64cfi_infinite_code_chain.exe
 
 [test_crash_win64cfi_invalid_exception_rva.js]
 head = head_crashreporter.js head_win64cfi.js
 skip-if = os != 'win' || bits != 64
+fail-if = os == 'win' && ccov
 support-files = test_crash_win64cfi_invalid_exception_rva.exe
 
 [test_crash_win64cfi_not_a_pe.js]
 head = head_crashreporter.js head_win64cfi.js
 skip-if = os != 'win' || bits != 64
+fail-if = os == 'win' && ccov
 support-files = test_crash_win64cfi_not_a_pe.exe
 
 
 
 
 
 
--- a/toolkit/crashreporter/test/win64UnwindInfoTests.asm
+++ b/toolkit/crashreporter/test/win64UnwindInfoTests.asm
@@ -169,16 +169,20 @@ PaddingBetweenFunctions
 
 ; void* x64CrashCFITest_ALLOC_SMALL(uint64_t mode);
 ;
 ; Small allocations are between 8bytes and 512kb-8bytes
 ;
 x64CrashCFITest_ALLOC_SMALL proc frame
   TestHeader
 
+  ; Trash rbp to force stack scan. This will force
+  ; correct behavior for test_crash_win64cfi_not_a_pe, et al.
+  xor rbp, rbp
+
   push rax
   push rax
   push rax
   push rax
   .allocstack 20h
   ; rsp = [pfn][pfn][pfn][pfn][ra]
 
   .endprolog