diff options
Diffstat (limited to 'deps/v8/test/mjsunit/regress/regress-crbug-633999.js')
-rw-r--r-- | deps/v8/test/mjsunit/regress/regress-crbug-633999.js | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/deps/v8/test/mjsunit/regress/regress-crbug-633999.js b/deps/v8/test/mjsunit/regress/regress-crbug-633999.js new file mode 100644 index 0000000000..3f16908610 --- /dev/null +++ b/deps/v8/test/mjsunit/regress/regress-crbug-633999.js @@ -0,0 +1,40 @@ +// Copyright 2016 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Flags: --expose-debug-as debug --allow-natives-syntax --noturbo + +var Debug = debug.Debug +var exception = null; +var step = 0; + +function listener(event, exec_state, event_data, data) { + if (event != Debug.DebugEvent.Exception) return; + try { + step++; + } catch (e) { + exception = e; + } +} + +Debug.setBreakOnException(); +Debug.setListener(listener); + +(function () { + "use asm"; + function f() { + try { + throw 666; + } catch (e) { + } + } + f(); + f(); + %OptimizeFunctionOnNextCall(f); + f(); + assertOptimized(f); +})(); + +Debug.setListener(null); +assertNull(exception); +assertEquals(3, step); |