text: load("1d8ada728956c1a3d52d68d1d4d6dd52.js");
  // Copyright 2014 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: --allow-natives-syntax
  
  function foo(x) {
    var k = "value";
    return x[k] = 1;
  }
  var obj = {};
  Object.defineProperty(obj, "value", {set: function(x) { throw "nope"; }});
  try { foo(obj); } catch(e) {}
  try { foo(obj); } catch(e) {}
  %OptimizeFunctionOnNextCall(foo);
  try { foo(obj); } catch(e) {}
  
  function bar(x) {
    var k = "value";
    return (x[k] = 1) ? "ok" : "nope";
  }
  var obj2 = {};
  Object.defineProperty(obj2, "value",
      {set: function(x) { throw "nope"; return true; } });
  
  try { bar(obj2); } catch(e) {}
  try { bar(obj2); } catch(e) {}
  %OptimizeFunctionOnNextCall(bar);
  try { bar(obj2); } catch(e) {}
  