code: function PromiseReject(r) {
    if (!IS_RECEIVER(this)) {
      throw MakeTypeError(kCalledOnNonObject, PromiseResolve);
    }
    if (this === GlobalPromise) {
      // Optimized case, avoid extra closure.
      var promise = PromiseCreateAndSet(kRejected, r);
      // The debug event for this would always be an uncaught promise reject,
      // which is usually simply noise. Do not trigger that debug event.
      %PromiseRejectEvent(promise, r, false);
      return promise;
    } else {
      var promiseCapability = NewPromiseCapability(this);
      %_Call(promiseCapability.reject, UNDEFINED, r);
      return promiseCapability.promise;
    }
  }
docs: ES#sec-promise.reject Promise.reject ( x )