зеркало из https://github.com/mozilla/gecko-dev.git
28 строки
818 B
HTML
28 строки
818 B
HTML
<!DOCTYPE html>
|
|
<meta charset=utf-8>
|
|
<title>Test that we don't DCE functions that can throw</title>
|
|
<script src="/resources/testharness.js"></script>
|
|
<script src="/resources/testharnessreport.js"></script>
|
|
<div id="log"></div>
|
|
<script>
|
|
test(function() {
|
|
function test(root) {
|
|
var threw = false;
|
|
try {
|
|
root.querySelectorAll("");
|
|
} catch(e){ threw = true; };
|
|
// Hot loop to make sure the JIT heuristics ion-compile this function even
|
|
// though it's throwing exceptions (which would normally make us back off
|
|
// of ion compilation).
|
|
for (var i=0; i<1500; i++) {}
|
|
return threw;
|
|
}
|
|
|
|
var threw = false;
|
|
var el = document.createElement("div");
|
|
for (var i=0; i<200; i++)
|
|
threw = test(el);
|
|
assert_true(threw);
|
|
}, "Shouldn't optimize away throwing functions");
|
|
</script>
|