root/components/nacl/renderer/sandbox_arch.cc

/* [<][>][^][v][top][bottom][index][help] */

DEFINITIONS

This source file includes following definitions.
  1. GetSandboxArch

// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "base/logging.h"
#if defined(OS_WIN)
#include "base/win/windows_version.h"
#endif

namespace nacl {

const char* GetSandboxArch() {
#if defined(ARCH_CPU_ARM_FAMILY)
  return "arm";
#elif defined(ARCH_CPU_MIPS_FAMILY)
  return "mips32";
#elif defined(ARCH_CPU_X86_FAMILY)

#if defined(OS_WIN)
  // We have to check the host architecture on Windows.
  // See sandbox_isa.h for an explanation why.
  if (base::win::OSInfo::GetInstance()->architecture() ==
      base::win::OSInfo::X64_ARCHITECTURE)
    return "x86-64";
  else
    return "x86-32";
#elif ARCH_CPU_64_BITS
  return "x86-64";
#else
  return "x86-32";
#endif  // defined(OS_WIN)

#else
#error Architecture not supported.
#endif
}

}  // namespace nacl

/* [<][>][^][v][top][bottom][index][help] */