1
0
mirror of https://github.com/google/cpu_features.git synced 2025-07-03 06:03:17 +02:00

powerpc: Add AT_PLATFORM and AT_BASE_PLATFORM

Some PowerPC machines can operate in a mode that appears different
to a process than the actual hardware. AT_PLATFORM indicates the
supported instruction set and AT_BASE_PLATFORM indicates the
actual microarchitecture of the hardware.

Signed-off-by: Rashmica Gupta <rashmica.gupta@au1.ibm.com>
This commit is contained in:
Rashmica Gupta
2018-05-02 14:30:25 +10:00
committed by Rashmica Gupta
parent 1c8bf0ecd8
commit c45e32f812
8 changed files with 52 additions and 1 deletions

View File

@ -12,12 +12,16 @@
// See the License for the specific language governing permissions and
// limitations under the License.
#include <string.h>
#include "hwcaps_for_testing.h"
#include "internal/string_view.h"
namespace cpu_features {
namespace {
static auto* const g_hardware_capabilities = new HardwareCapabilities();
static auto* const g_platform_types = new PlatformType();
} // namespace
void SetHardwareCapabilities(uint32_t hwcaps, uint32_t hwcaps2) {
@ -29,4 +33,13 @@ HardwareCapabilities CpuFeatures_GetHardwareCapabilities(void) {
return *g_hardware_capabilities;
}
void SetPlatformTypes(const char* platform, const char* base_platform) {
CpuFeatures_StringView_CopyString(str(platform), g_platform_types->platform,
sizeof(g_platform_types->platform));
CpuFeatures_StringView_CopyString(str(base_platform),
g_platform_types->base_platform,
sizeof(g_platform_types->base_platform));
}
PlatformType CpuFeatures_GetPlatformType(void) { return *g_platform_types; }
} // namespace cpu_features