LCOV - code coverage report
Current view: top level - src - deoptimize-reason.cc (source / functions) Hit Total Coverage
Test: app.info Lines: 3 9 33.3 %
Date: 2017-04-26 Functions: 1 3 33.3 %

          Line data    Source code
       1             : // Copyright 2016 the V8 project authors. All rights reserved.
       2             : // Use of this source code is governed by a BSD-style license that can be
       3             : // found in the LICENSE file.
       4             : 
       5             : #include "src/deoptimize-reason.h"
       6             : 
       7             : namespace v8 {
       8             : namespace internal {
       9             : 
      10           0 : std::ostream& operator<<(std::ostream& os, DeoptimizeReason reason) {
      11           0 :   switch (reason) {
      12             : #define DEOPTIMIZE_REASON(Name, message) \
      13             :   case DeoptimizeReason::k##Name:        \
      14             :     return os << #Name;
      15           0 :     DEOPTIMIZE_REASON_LIST(DEOPTIMIZE_REASON)
      16             : #undef DEOPTIMIZE_REASON
      17             :   }
      18           0 :   UNREACHABLE();
      19             :   return os;
      20             : }
      21             : 
      22           0 : size_t hash_value(DeoptimizeReason reason) {
      23           0 :   return static_cast<uint8_t>(reason);
      24             : }
      25             : 
      26          64 : char const* DeoptimizeReasonToString(DeoptimizeReason reason) {
      27             :   static char const* kDeoptimizeReasonStrings[] = {
      28             : #define DEOPTIMIZE_REASON(Name, message) message,
      29             :       DEOPTIMIZE_REASON_LIST(DEOPTIMIZE_REASON)
      30             : #undef DEOPTIMIZE_REASON
      31             :   };
      32          64 :   size_t const index = static_cast<size_t>(reason);
      33             :   DCHECK_LT(index, arraysize(kDeoptimizeReasonStrings));
      34          64 :   return kDeoptimizeReasonStrings[index];
      35             : }
      36             : 
      37             : }  // namespace internal
      38             : }  // namespace v8

Generated by: LCOV version 1.10